FoliMesh

Arbustos para three.js

Carregue um GLB de arbusto com o GLTFLoader de three/addons; outros loaders só são necessários se o arquivo usar compressão Draco ou KTX2. Os oito modelos — Bambu, Arbusto, Buxo, Cerca viva, Zimbro, Rosa-brava, Framboeseira, Aveleira — vêm com LOD0–LOD3: lod.addLevel(mesh, distance) no THREE.LOD troca o nível de detalhe conforme a distância da câmera, e a malha de colisão fica invisível para Rapier ou cannon-es.

Para a borda de uma mata ou um parque urbano, o InstancedMesh desenha milhares de cópias em um único draw call, enquanto o BatchedMesh mistura várias variações; como o THREE.LOD não se aplica por instância, agrupe você mesmo as instâncias por LOD em cada chunk. Folhas com alphaMode MASK viram material.alphaTest, e materiais de face dupla recebem THREE.DoubleSide automaticamente. Tudo roda no WebGLRenderer e no WebGPURenderer, e cada nova seed gera outra disposição.

Modelos
8
Níveis de detalhe
LOD0 – LOD3
Formatos
GLB · FBX · OBJ

Como usar em three.js

No three.js, carregue o GLB com GLTFLoader de three/addons; adicione DRACOLoader ou KTX2Loader só se o arquivo usar essas extensões.

  • LOD por distância: THREE.LOD com lod.addLevel(mesh, distance) para LOD0–LOD3; o nível muda conforme a distância da câmera a cada frame.
  • Florestas: InstancedMesh desenha milhares de cópias em um único draw call, e BatchedMesh mistura várias variações de árvores. THREE.LOD não atua por instância, então agrupe você mesmo as instâncias por LOD em cada chunk.
  • Folhas: o alphaMode MASK do glTF vira material.alphaTest, e materiais de dupla face recebem side: THREE.DoubleSide automaticamente.
  • Malha de colisão: deixe invisível e passe para uma biblioteca de física como Rapier ou cannon-es.

Funciona com WebGLRenderer e com WebGPURenderer.

Pacotes

Outras categorias

O mesmo em outros estilos

O mesmo para outras engines