FoliMesh

Камни в стиле Реалистичный для Babylon.js

Babylon.js подключает эти GLB-камни напрямую через glTF-загрузчик из @babylonjs/loaders: ImportMeshAsync — для одиночного валуна, LoadAssetContainerAsync вместе с instantiateModelsToScene — когда россыпи нужны сотни копий. Реалистичный камень идёт по PBR-схеме metal/roughness, которую Babylon.js отображает как есть; normal-карты передают слоистые сколы, трещины и мох.

В наборе 7 объектов — Галька, Камень, Валун, Каменная плита, Каменная россыпь, Скала и Скала с валунами. У каждого LOD0–LOD3, коллизия и пивот у основания, что подходит для симуляторов, выживания и открытых миров. Уровни соединяются так: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2); null полностью скрывает меш за этой дистанцией. Камни статичны, поэтому thin instances (thinInstanceAdd) рисуют целую осыпь одним вызовом на меш, а скрытый collision-меш работает с checkCollisions или Havok PhysicsAggregate.

Модели
7
Уровни детализации
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 листвы.

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

Babylon.js загружает GLB через glTF-загрузчик из @babylonjs/loaders: ImportMeshAsync (или SceneLoader.ImportMeshAsync в старом коде) либо LoadAssetContainerAsync, когда нужно много копий через instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) и так далее; null вместо меша скрывает объект дальше этой дистанции.
  • Тысячи деревьев: thin instances (thinInstanceAdd с матрицами) рисуются одним draw call на меш; обычные createInstance берите, когда каждому дереву нужны свой пикинг или логика.
  • Листва: MASK из glTF превращается в PBRMaterial с alpha-test (MATERIAL_ALPHATEST).
  • Меш коллизии: isVisible = false и использование с checkCollisions или физикой Havok (PhysicsAggregate с формой MESH).

Наборы

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

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

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