FoliMesh

Packs de assets 3D para Babylon.js

Babylon.js carga los GLB de vegetación con el cargador glTF de @babylonjs/loaders: ImportMeshAsync para una escena concreta y LoadAssetContainerAsync cuando vas a clonar copias con instantiateModelsToScene. Cada modelo trae LOD0–LOD3, así que encadenar lod0.addLODLevel(30, lod1) y addLODLevel(80, lod2) mantiene el bosque fluido en el navegador de un móvil.

Las hojas van con mapas MASK, que Babylon.js resuelve como PBRMaterial con alpha test (MATERIAL_ALPHATEST); la malla de colisión se oculta con isVisible = false y sirve para checkCollisions o Havok con PhysicsAggregate. Para miles de árboles, thinInstanceAdd con matrices deja un draw call por malla, mientras que createInstance conviene si cada árbol necesita picking propio. Los 8 packs —Bosque templado, Bosque de coníferas, Playa tropical, Sabana y tierras secas, Kit del desierto, Iniciación low-poly, Rocas y acantilados y la Muestra gratuita— cubren exploración, supervivencia y city builders.

Uso en Babylon.js

Babylon.js carga GLB con el loader glTF de @babylonjs/loaders: ImportMeshAsync (o SceneLoader.ImportMeshAsync en código antiguo), 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.
  • Hojas: 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

Lo mismo en otros estilos

Lo mismo para otros motores