FoliMesh

Пальмы в стиле Реалистичный для three.js

Реалистичные пальмы — самая заметная растительность в сцене на three.js и одновременно самая тяжёлая: листовые карты с вырезами дают большой overdraw. В подборке пять моделей — Кокосовая пальма, Финиковая пальма, Канарская пальма, Вашингтония и Хамеропс — в виде лёгких GLB, которые читает GLTFLoader из three/addons.

У каждой модели четыре уровня LOD0–LOD3, точка вращения у основания и отдельная коллизия для Rapier или cannon-es. Кора и листья — разные PBR-материалы: маскированные карты листьев становятся material.alphaTest, пишут глубину и не требуют сортировки. Подключайте уровни через THREE.LOD и lod.addLevel(mesh, distance), а дальние — через InstancedMesh по чанкам; всё работает и в WebGLRenderer, и в WebGPURenderer.

Модели
5
Уровни детализации
LOD0 – LOD3
Форматы
GLB · FBX · OBJ

О стиле Реалистичный

Реалистичные модели используют PBR-схему metal/roughness, которую напрямую читают glTF 2.0, Unity, Unreal, Godot и three.js.

  • Кора: карты цвета, нормалей и шероховатости на стволе и ветках.
  • Листва: карточки с текстурой веток листьев на alpha-test (masked), а не alpha-blend — пишут глубину, не требуют сортировки и дают правильные тени.
  • Кора и листва — отдельные материалы: число draw calls предсказуемо, GPU-инстансинг работает без проблем.
  • LOD0 — для крупного плана; LOD1–LOD3 убирают ветки и карточки листвы, последний уровень достаточно лёгкий для дальних планов.

Лучше всего подходят для игр от первого и третьего лица, выживания, открытых миров и симуляторов на ПК и консолях. На мобильных берите LOD1 или LOD2 как ближний уровень и следите за overdraw листвы.

Как использовать в 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.

Наборы

Другие категории

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

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