FoliMesh

Alberi per Babylon.js

Quattordici alberi — Quercia, Pino silvestre, Abete rosso, Betulla, Salice piangente, Pioppo tremulo, Acero, Pioppo, Ulivo, Cipresso, Pino domestico, Acacia, Baobab e Albero morto — arrivano in GLB. In Babylon.js si caricano con ImportMeshAsync da @babylonjs/loaders; se la stessa chioma si ripete, LoadAssetContainerAsync con instantiateModelsToScene evita duplicazioni.

Ogni modello ha LOD0–LOD3 e il pivot alla base, quindi lod0.addLODLevel(30, lod1) e addLODLevel(80, lod2) seguono il budget di distanza, e null nasconde la mesh oltre l'ultima soglia. Le foglie sono MASK glTF e diventano PBRMaterial con alpha test, senza costo di ordinamento. Le foreste realistiche usano thin instances (una draw call per mesh); i villaggi low-poly possono usare createInstance per il picking. La mesh di collisione invisibile alimenta checkCollisions o Havok.

Modelli
14
Livelli di dettaglio
LOD0 – LOD3
Formati
GLB · FBX · OBJ

Uso in Babylon.js

Babylon.js carica il GLB con il loader glTF di @babylonjs/loaders: ImportMeshAsync (o SceneLoader.ImportMeshAsync nel codice meno recente), oppure LoadAssetContainerAsync quando servono molte copie tramite instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) e così via; passare null come mesh nasconde l’oggetto oltre quella distanza.
  • Migliaia di alberi: le thin instance (thinInstanceAdd con matrici) si disegnano con una draw call per mesh; usa createInstance normale quando ogni albero richiede picking o logica propri.
  • Foglie: il MASK di glTF diventa un PBRMaterial in alpha test (MATERIAL_ALPHATEST).
  • Mesh di collisione: isVisible = false e usala con checkCollisions o la fisica Havok (PhysicsAggregate con forma MESH).

Pacchetti

Altre categorie

Lo stesso in altri stili

Lo stesso per altri motori