FoliMesh

Cespugli in stile Low-poly per three.js

I cespugli low-poly sono il modo più economico per riempire il terreno tra i tronchi in una scena three.js. Il GLB si carica con GLTFLoader da three/addons, poi si passano le mesh LOD0–LOD3 a THREE.LOD con lod.addLevel(mesh, distance): i livelli cambiano in base alla distanza della camera a ogni frame. Qui le foglie sono geometria piena con colori per vertice, non alpha card: niente alpha test né overdraw trasparente, un vantaggio sulle GPU mobile.

La selezione comprende Bambù, Cespuglio, Bosso, Siepe, Ginepro, Rosa selvatica, Lampone e Nocciolo. Il flat shading tiene il LOD0 tra qualche centinaio e duemila triangoli, e un unico materiale condiviso permette a InstancedMesh e BatchedMesh di disegnare siepi lunghe con pochissime chiamate. Tieni la mesh di collisione invisibile e passala a Rapier o cannon-es, per strategia, city builder e VR stilizzata con WebGLRenderer o WebGPURenderer.

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

Informazioni sullo stile Low-poly

Il low poly è lo stile più economico da renderizzare e da distribuire.

  • Flat shading: una normale per faccia dà il look sfaccettato e netto, niente normal map.
  • Il colore è nei vertici (glTF COLOR_0): niente texture, niente lavoro sulle UV, quasi zero memoria video.
  • Il fogliame è geometria piena, non card con alpha: niente alpha test né overdraw trasparente, fondamentale sulle GPU mobile.
  • Un solo materiale può servire tutti i modelli della scena, quindi gli alberi si raggruppano e si istanziano facilmente.
  • I budget tipici vanno da qualche centinaio a un paio di migliaia di triangoli al LOD0.

Adatto a mobile, WebGL/WebGPU, VR, strategici, city builder e giochi indie stilizzati. Nel motore usa un materiale che moltiplichi per il colore ai vertici.

Uso in three.js

In three.js carica il GLB con GLTFLoader da three/addons; aggiungi DRACOLoader o KTX2Loader solo se un file usa quelle estensioni.

  • LOD a distanza: THREE.LOD con lod.addLevel(mesh, distance) per LOD0–LOD3; il livello cambia in base alla distanza dalla camera a ogni frame.
  • Foreste: InstancedMesh disegna migliaia di copie in una sola draw call, e BatchedMesh mescola più varianti di alberi. THREE.LOD non agisce per istanza, quindi raggruppa tu le istanze per LOD in ogni chunk.
  • Foglie: l’alphaMode MASK di glTF diventa material.alphaTest, e i materiali double-sided ricevono automaticamente side: THREE.DoubleSide.
  • Mesh di collisione: lasciala invisibile e passala a una libreria fisica come Rapier o cannon-es.

Funziona sia con WebGLRenderer sia con WebGPURenderer.

Pacchetti

Altre categorie

Lo stesso in altri stili

Lo stesso per altri motori