FoliMesh

Palmy w stylu Low-poly do Babylon.js

Palmy low-poly wczytasz do Babylon.js wprost jako GLB: jeden plik przez ImportMeshAsync z @babylonjs/loaders albo LoadAssetContainerAsync z instantiateModelsToScene, gdy plaża potrzebuje wielu kopii. Każdy model ma LOD0–LOD3, siatkę kolizji i pivot u podstawy, więc lod0.addLODLevel(30, lod1) oraz addLODLevel(80, lod2) spokojnie ukrywają odległe palmy.

Fasetowany wygląd daje flat shading i kolory wierzchołków — bez tekstur. Jeden PBRMaterial z mnożeniem przez kolor wierzchołka obsłuży Palmę kokosową, Palmę daktylową i Waszyngtonię, a thin instances rysują setki pni w jednym draw callu na siatkę. Liście to pełna geometria, więc nie ma alpha testingu ani overdraw na mobilnych GPU. Budżet LOD0 to od kilkuset do dwóch tysięcy trójkątów — dobre dla wysp, city builderów i scen WebGL/WebGPU.

Modele
5
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