О стиле Low-poly
Low-poly — самый дешёвый стиль и в рендере, и в размере билда.
- Плоское затенение: одна нормаль на грань даёт чёткие грани, карты нормалей не нужны.
- Цвет хранится в вершинах (glTF COLOR_0): нет текстур, нет работы с UV, почти не тратится видеопамять.
- Листва — сплошная геометрия, а не карточки с альфой: нет alpha-test и прозрачного overdraw, что важно для мобильных GPU.
- Один материал можно использовать для всех моделей сцены, поэтому деревья легко батчатся и инстансятся.
- Типичный бюджет LOD0 — от нескольких сотен до пары тысяч треугольников.
Подходит для мобильных игр, WebGL/WebGPU, VR, стратегий, градостроительных и стилизованных инди-игр. В движке используйте материал, который учитывает цвет вершин.
Как использовать в 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).













