FoliMesh

Vegetação rasteira para Babylon.js

O Babylon.js carrega GLB pelo loader glTF de @babylonjs/loaders: ImportMeshAsync ou LoadAssetContainerAsync quando você precisa de muitas cópias com instantiateModelsToScene. Samambaia, Tufo de grama e Junco chegam com LOD0–LOD3 e malha de colisão, então o chão da floresta e a beira do rio seguem leves no navegador.

Os níveis se ligam com lod0.addLODLevel(30, lod1) e addLODLevel(80, lod2); passar null como mesh esconde o objeto além dessa distância. Para milhares de tufos, as thin instances (thinInstanceAdd com matrizes) rodam em uma draw call por mesh; use createInstance só quando cada planta precisa de picking. As folhas usam glTF MASK, ou seja, PBRMaterial com alpha test. Malha de colisão: isVisible = false e checkCollisions ou Havok (PhysicsAggregate com forma MESH).

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

Como usar em Babylon.js

O Babylon.js carrega GLB pelo loader glTF de @babylonjs/loaders: ImportMeshAsync (ou SceneLoader.ImportMeshAsync em código mais antigo), ou LoadAssetContainerAsync quando você precisa de muitas cópias via instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) e assim por diante; passar null como malha esconde o objeto além dessa distância.
  • Milhares de árvores: thin instances (thinInstanceAdd com matrizes) são desenhadas em um draw call por malha; use createInstance comum quando cada árvore precisar de picking ou lógica próprios.
  • Folhas: o MASK do glTF vira um PBRMaterial com alpha test (MATERIAL_ALPHATEST).
  • Malha de colisão: isVisible = false e use com checkCollisions ou física Havok (PhysicsAggregate com shape MESH).

Outras categorias

O mesmo em outros estilos

O mesmo para outras engines