FoliMesh

Palmiers de style Réaliste pour three.js

Dans three.js, les palmiers réalistes sont l'élément le plus visible d'une plage ou d'une oasis, et le plus coûteux : les cartes de feuilles en alpha test créent beaucoup d'overdraw. Les cinq modèles — Cocotier, Palmier dattier, Palmier des Canaries, Washingtonia et Palmier nain — sont livrés en GLB léger, lu directement par GLTFLoader depuis three/addons.

Chaque fichier contient LOD0–LOD3, un pivot à la base et un maillage de collision séparé pour Rapier ou cannon-es. Écorce et feuilles ont des matériaux PBR distincts : les cartes masquées deviennent material.alphaTest, écrivent la profondeur et évitent tout tri. Les niveaux se branchent via THREE.LOD et lod.addLevel(mesh, distance), les palmiers lointains s'instancient avec InstancedMesh par chunk — sur WebGLRenderer comme sur WebGPURenderer.

Modèles
5
Niveaux de détail
LOD0 – LOD3
Formats
GLB · FBX · OBJ

À propos du style Réaliste

Les modèles réalistes suivent le workflow PBR metal/roughness, lu directement par glTF 2.0, Unity, Unreal, Godot et three.js.

  • Écorce : textures de couleur, de normales et de rugosité sur le tronc et les branches.
  • Feuillage : cartes en alpha test (masked) avec des textures de grappes de feuilles, pas en alpha blend : elles écrivent la profondeur, ne demandent aucun tri et projettent des ombres correctes.
  • Écorce et feuillage ont des matériaux séparés : le nombre de draw calls reste prévisible et l’instanciation GPU fonctionne bien.
  • LOD0 sert aux plans rapprochés ; LOD1–LOD3 retirent branches et cartes de feuilles, le dernier niveau est assez léger pour le lointain.

Idéal pour les jeux à la première et à la troisième personne, la survie, les mondes ouverts et les simulateurs sur PC et console. Sur mobile, utilisez LOD1 ou LOD2 comme niveau le plus proche et surveillez l’overdraw du feuillage.

Utilisation dans three.js

Dans three.js, chargez le GLB avec GLTFLoader depuis three/addons ; ajoutez DRACOLoader ou KTX2Loader seulement si un fichier utilise ces extensions.

  • LOD par distance : THREE.LOD avec lod.addLevel(mesh, distance) pour LOD0–LOD3 ; le niveau change selon la distance à la caméra à chaque image.
  • Forêts : InstancedMesh dessine des milliers de copies en un seul draw call, et BatchedMesh mélange plusieurs variantes d’arbres. THREE.LOD ne s’applique pas par instance : regroupez vous-même les instances par LOD et par chunk.
  • Feuillage : l’alphaMode MASK de glTF devient material.alphaTest, et les matériaux double face reçoivent automatiquement side: THREE.DoubleSide.
  • Maillage de collision : gardez-le invisible et passez-le à une bibliothèque physique comme Rapier ou cannon-es.

Fonctionne avec WebGLRenderer comme avec WebGPURenderer.

Packs

Autres catégories

Le même dans d'autres styles

Le même pour d'autres moteurs