FoliMesh

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

Babylon.js завантажує ці пальми як GLB через glTF-завантажувач із @babylonjs/loaders: ImportMeshAsync для окремих дерев або LoadAssetContainerAsync, коли потрібно багато копій через instantiateModelsToScene. Кокосова пальма, фінікова пальма, канарська пальма, вашингтонія та віялова пальма постачаються з LOD0–LOD3, тож можна зчепити lod0.addLODLevel(30, lod1) і addLODLevel(80, lod2), а null повністю приховає об’єкт далі.

Реалістичний стиль працює за PBR metal/roughness: окремі матеріали кори й листя, карти нормалей і шорсткості на стовбурах та alpha-test картки листя (MATERIAL_ALPHATEST), які пишуть глибину й дають правильні тіні. Для пляжів, островів і оаз із тисячами стовбурів thin instances (thinInstanceAdd) тримають один draw call на меш; невидима collision-мережа працює з checkCollisions або Havok PhysicsAggregate. На мобільних починайте з LOD1, щоб зменшити overdraw листя.

Моделі
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 листя.

Використання в 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).

Набори

Інші категорії

Те саме в інших стилях

Те саме для інших рушіїв