FoliMesh

Buissons de style Réaliste pour three.js

Chargez le GLB avec GLTFLoader depuis three/addons, puis inscrivez chaque mesh dans THREE.LOD via lod.addLevel(mesh, distance) : Bambou, Haie ou Buis basculent entre LOD0–LOD3 selon la distance de la caméra. L'écorce utilise des textures PBR (base colour, normal, roughness) et les feuilles sont des cartes alpha-testées ; le MASK glTF devient alphaTest, elles écrivent la profondeur, ne demandent aucun tri et projettent des ombres justes.

Pour les haies et le sous-bois entre les arbres, InstancedMesh dessine des milliers de copies en un seul appel ; regroupez les instances par LOD et par chunk, car THREE.LOD ne s'applique pas par instance. Confiez la collision invisible à Rapier ou cannon-es. Les 8 modèles — Genévrier, Églantier, Framboisier, Noisetier — ont quatre LOD, un pivot à la base, l'export GLB/FBX/OBJ et de nouvelles variations à chaque seed, sous WebGLRenderer comme WebGPURenderer.

Modèles
8
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