FoliMesh

Vegetación de suelo estilo Realista para three.js

La vegetación de suelo es lo que hace que una superficie plana se lea como un verdadero sotobosque. Esta selección realista trae Helecho, Mata de pasto y Junco en GLB listos para usar, con LOD0–LOD3, malla de colisión y pivote en la base: al cargarlos con GLTFLoader desde three/addons quedan directamente en la escena. Agrega DRACOLoader o KTX2Loader solo si algún archivo usa esas extensiones.

Acá lo realista son cortezas PBR y tarjetas de hojas con alpha test, mapas de normales y roughness. El material MASK se vuelve material.alphaTest, escribe profundidad y no necesita ordenamiento. Pasa los LOD0–LOD3 a THREE.LOD con lod.addLevel(mesh, distance), reparte los matojos con InstancedMesh y mezcla las tres especies por chunk con BatchedMesh.

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

Acerca del estilo Realista

Los modelos realistas usan el flujo PBR metal/roughness, que glTF 2.0, Unity, Unreal, Godot y three.js leen de forma directa.

  • Corteza: mapas de color, normales y rugosidad en el tronco y las ramas.
  • Follaje: tarjetas con alpha test (masked) y texturas de racimos de hojas, no alpha blend: escriben profundidad, no requieren ordenamiento y generan sombras correctas.
  • Corteza y follaje tienen materiales separados, por lo que la cantidad de draw calls es predecible y el instancing por GPU funciona sin problemas.
  • LOD0 es para tomas cercanas; LOD1–LOD3 quitan ramas y tarjetas de hojas, y el último nivel es lo suficientemente liviano para la distancia.

Ideales para juegos en primera y tercera persona, supervivencia, mundos abiertos y simuladores en PC y consola. En celulares, usa LOD1 o LOD2 como nivel más cercano y controla el overdraw del follaje.

Uso en three.js

En three.js, carga el GLB con GLTFLoader de three/addons; agrega DRACOLoader o KTX2Loader solo si un archivo usa esas extensiones.

  • LOD por distancia: THREE.LOD con lod.addLevel(mesh, distance) para LOD0–LOD3; cambia de nivel según la distancia a la cámara en cada cuadro.
  • Bosques: InstancedMesh dibuja miles de copias en un solo draw call y BatchedMesh combina varias variaciones de árboles. THREE.LOD no funciona por instancia, así que agrupa tú las instancias por LOD en cada chunk.
  • Follaje: el alphaMode MASK de glTF se convierte en material.alphaTest y los materiales de doble cara reciben side: THREE.DoubleSide automáticamente.
  • Malla de colisión: déjala invisible y pásala a una biblioteca de física como Rapier o cannon-es.

Funciona tanto con WebGLRenderer como con WebGPURenderer.

Otras categorías

Lo mismo en otros estilos

Lo mismo para otros motores