FoliMesh

Arbustos para Babylon.js

Ocho arbustos — Bambú, Arbusto, Boj, Cerca viva, Enebro, Rosa silvestre, Frambuesa y Avellano — llegan en GLB, así que Babylon.js los carga con el cargador glTF de @babylonjs/loaders usando ImportMeshAsync. Cuando una cerca viva necesita decenas de copias, LoadAssetContainerAsync junto con instantiateModelsToScene evita volver a procesar el archivo y mantiene baja la memoria.

Cada modelo incluye LOD0–LOD3 y el pivote en la base: basta con lod0.addLODLevel(30, lod1) y addLODLevel(80, lod2), o null para ocultar el arbusto más allá del último nivel. Las hojas usan glTF MASK, que Babylon convierte en un PBRMaterial con alpha test; la malla de colisión invisible (isVisible = false) funciona con checkCollisions o con Havok PhysicsAggregate. Para matorrales densos, thinInstanceAdd deja un solo draw call por malla; createInstance conviene cuando cada arbusto debe responder al picking.

Modelos
8
Niveles de detalle
LOD0 – LOD3
Formatos
GLB · FBX · OBJ

Uso en Babylon.js

Babylon.js carga GLB con el loader glTF de @babylonjs/loaders: ImportMeshAsync (o SceneLoader.ImportMeshAsync en código anterior), o LoadAssetContainerAsync cuando necesitas muchas copias con instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2), etc.; pasar null como malla oculta el objeto más allá de esa distancia.
  • Miles de árboles: las thin instances (thinInstanceAdd con matrices) se dibujan en un draw call por malla; usa createInstance normal cuando cada árbol necesite su propio picking o lógica.
  • Follaje: el MASK de glTF se convierte en un PBRMaterial con alpha test (MATERIAL_ALPHATEST).
  • Malla de colisión: isVisible = false y úsala con checkCollisions o la física Havok (PhysicsAggregate con forma MESH).

Packs

Otras categorías

Lo mismo en otros estilos

Lo mismo para otros motores