FoliMesh

Рослинність ґрунту в стилі Реалістичний для PlayCanvas

PlayCanvas приймає GLB як container-асет: перетягніть файл у редактор або в коді викличте app.assets.loadFromUrl(url, 'container') та створіть сутність через asset.resource.instantiateRenderEntity(). Кожна модель має LOD0–LOD3, тож замість відсутнього в рушії LOD-компонента достатньо невеликого скрипта, який порівнює відстань до камери й перемикає render-компоненти.

Реалістичний стиль — це PBR metal/roughness: окремі матеріали кори (base colour, normal, roughness) і листя на masked-картах; для двобічних листків ставте cull mode none. Папороть, Пучок трави та Очерет пасують шутерам від першої особи, survival і відкритим світам. Статичні кущі збирайте в batch group, густі зарості — через meshInstance.setInstancing(). Колізія — mesh-компонент зі статичним rigidbody без рендера; на мобільних починайте з LOD1.

Моделі
3
Рівні деталізації
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 листя.

Використання в PlayCanvas

PlayCanvas працює з GLB як із container-асетом. У редакторі завантажте GLB (FBX під час імпорту конвертується в GLB) і отримаєте шаблон з ієрархією моделі; у коді без редактора використовуйте app.assets.loadFromUrl(url, 'container') і asset.resource.instantiateRenderEntity().

  • LOD: вбудованого LOD-компонента немає, тож невеликий скрипт порівнює відстань до камери й перемикає render-компоненти сутностей LOD0–LOD3.
  • Статичні дерева можна об’єднати в batch group, щоб скоротити draw calls; для великих лісів — апаратний інстансинг через meshInstance.setInstancing() і вершинний буфер із трансформами.
  • Листя: MASK з glTF задає alphaTest у StandardMaterial; для двобічного листя вимкніть відсікання граней (cull none).
  • Меш колізії: компонент collision типу mesh плюс статичний rigidbody, render-компонент вимкнено.

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

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

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