FoliMesh

Packs de assets 3D para three.js

Oito pacotes GLB — Free Sampler, Temperate Forest, Conifer Forest, Tropical Beach, Savanna & Dry Lands, Desert Kit, Low-Poly Starter e Rocks & Cliffs — carregam com GLTFLoader de three/addons; adicione DRACOLoader ou KTX2Loader só se o arquivo usar essas extensões. Cada árvore, palmeira, cacto e rocha traz LOD0–LOD3, então THREE.LOD com lod.addLevel(mesh, distance) troca de nível conforme a distância da câmera a cada quadro.

As folhas vêm com alphaMode MASK do glTF, que vira material.alphaTest, e materiais de face dupla chegam com side: THREE.DoubleSide. Em florestas densas, InstancedMesh desenha milhares de cópias em uma chamada e BatchedMesh mistura variações; agrupe as instâncias por LOD em cada chunk, porque THREE.LOD não vale por instância. Mantenha a malha de colisão invisível e entregue ao Rapier ou cannon-es. Exportação em GLB, FBX e OBJ, do realista ao low-poly, renderizando em WebGLRenderer e WebGPURenderer.

Como usar em three.js

No three.js, carregue o GLB com GLTFLoader de three/addons; adicione DRACOLoader ou KTX2Loader só se o arquivo usar essas extensões.

  • LOD por distância: THREE.LOD com lod.addLevel(mesh, distance) para LOD0–LOD3; o nível muda conforme a distância da câmera a cada frame.
  • Florestas: InstancedMesh desenha milhares de cópias em um único draw call, e BatchedMesh mistura várias variações de árvores. THREE.LOD não atua por instância, então agrupe você mesmo as instâncias por LOD em cada chunk.
  • Folhas: o alphaMode MASK do glTF vira material.alphaTest, e materiais de dupla face recebem side: THREE.DoubleSide automaticamente.
  • Malha de colisão: deixe invisível e passe para uma biblioteca de física como Rapier ou cannon-es.

Funciona com WebGLRenderer e com WebGPURenderer.

Pacotes

O mesmo em outros estilos

O mesmo para outras engines