FoliMesh

Rośliny okrywowe w stylu Low-poly do Babylon.js

Niskopoligonowe rośliny okrywowe to najlżejszy element sceny w Babylon.js: trzy modele — Paproć, Kępa trawy i Trzcina — z poziomami LOD0–LOD3 i pivotem u podstawy, wyeksportowane do GLB dla loadera glTF z @babylonjs/loaders. Pojedynczy model wczytasz przez ImportMeshAsync, a gdy runo leśne potrzebuje setek kopii, użyj LoadAssetContainerAsync i instantiateModelsToScene.

Kolor siedzi w kolorach wierzchołków (COLOR_0), a każda ściana ma jedną normalną i płaskie cieniowanie, więc cały zestaw obsłuży jeden materiał: bez tekstur, bez UV i niemal bez pamięci wideo. Liście to pełna geometria, więc nie ma overdraw alfa na mobilnych GPU. Poziomy spina lod0.addLODLevel(30, lod1), siatka kolizji pozostaje ukryta i działa z checkCollisions lub Havokiem, a thinInstanceAdd rozrzuca kępy w jednym draw callu.

Modele
3
Poziomy szczegółowości
LOD0 – LOD3
Formaty
GLB · FBX · OBJ

O stylu Low-poly

Low poly to najtańszy styl — zarówno w renderowaniu, jak i w rozmiarze builda.

  • Płaskie cieniowanie: jedna normalna na ścianę daje wyraźne fasety, bez map normalnych.
  • Kolor jest w wierzchołkach (glTF COLOR_0): brak tekstur, brak pracy z UV, prawie zero pamięci wideo.
  • Liście to pełna geometria, a nie karty z alfą: brak alpha testu i przezroczystego overdraw, co ma znaczenie na mobilnych GPU.
  • Jeden materiał może obsłużyć wszystkie modele w scenie, więc drzewa łatwo batchować i instancjonować.
  • Typowe budżety LOD0 to od kilkuset do około dwóch tysięcy trójkątów.

Pasuje do gier mobilnych, WebGL/WebGPU, VR, strategii, city builderów i stylizowanych gier indie. W silniku użyj materiału mnożącego przez kolor wierzchołków.

Użycie w Babylon.js

Babylon.js ładuje GLB przez loader glTF z @babylonjs/loaders: ImportMeshAsync (lub SceneLoader.ImportMeshAsync w starszym kodzie) albo LoadAssetContainerAsync, gdy potrzebujesz wielu kopii przez instantiateModelsToScene.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) itd.; null zamiast siatki ukrywa obiekt powyżej tej odległości.
  • Tysiące drzew: thin instances (thinInstanceAdd z macierzami) rysują się jednym draw callem na siatkę; zwykłego createInstance użyj, gdy każde drzewo potrzebuje własnego pickingu lub logiki.
  • Liście: MASK z glTF staje się PBRMaterial z alpha testem (MATERIAL_ALPHATEST).
  • Siatka kolizji: isVisible = false i użycie z checkCollisions lub fizyką Havok (PhysicsAggregate z kształtem MESH).

Inne kategorie

To samo w innych stylach

To samo dla innych silników