FoliMesh

Наборы 3D-ассетов для three.js

Восемь GLB-паков — Free Sampler, Temperate Forest, Conifer Forest, Tropical Beach, Savanna & Dry Lands, Desert Kit, Low-Poly Starter и Rocks & Cliffs — загружаются через GLTFLoader из three/addons; DRACOLoader и KTX2Loader подключайте только если файл использует эти расширения. У каждого дерева, пальмы, кактуса и камня есть LOD0–LOD3, поэтому THREE.LOD с lod.addLevel(mesh, distance) переключает уровни по расстоянию до камеры в каждом кадре.

Листья идут с glTF alphaMode MASK — это material.alphaTest, а двусторонние материалы получают side: THREE.DoubleSide. Для густого леса InstancedMesh рисует тысячи копий одним вызовом, BatchedMesh смешивает разные вариации; группируйте инстансы по LOD внутри чанка, ведь THREE.LOD не работает на уровне отдельного инстанса. Коллизию оставляйте невидимой и передавайте в Rapier или cannon-es. Экспорт — GLB, FBX и OBJ, стили от реалистичного до low-poly, рендер в WebGLRenderer и WebGPURenderer.

Как использовать в three.js

В three.js загружайте GLB через GLTFLoader из three/addons; DRACOLoader или KTX2Loader нужны, только если файл использует эти расширения.

  • LOD по расстоянию: THREE.LOD и lod.addLevel(mesh, distance) для LOD0–LOD3; уровни переключаются по дистанции до камеры каждый кадр.
  • Леса: InstancedMesh рисует тысячи копий за один draw call, а BatchedMesh позволяет смешивать несколько вариаций деревьев. THREE.LOD не работает на уровне отдельных инстансов, поэтому группируйте инстансы по LOD для каждого чанка сами.
  • Листва: alphaMode MASK из glTF превращается в material.alphaTest, а двусторонние материалы автоматически получают side: THREE.DoubleSide.
  • Меш коллизии: сделайте невидимым и передайте в физическую библиотеку, например Rapier или cannon-es.

Работает и с WebGLRenderer, и с WebGPURenderer.

Наборы

То же в других стилях

То же для других движков