FoliMesh

Drzewa w stylu Low-poly do Babylon.js

Drzewa low-poly wchodzą do Babylon.js jako GLB: przez ImportMeshAsync z @babylonjs/loaders albo LoadAssetContainerAsync z instantiateModelsToScene, gdy potrzebujesz wielu kopii. Każdy model ma LOD0–LOD3 i pivot u podstawy, więc lod0.addLODLevel(30, lod1) i addLODLevel(80, lod2) załatwiają wycinanie po odległości bez dodatkowego kodu.

Fasetowany wygląd daje flat shading i kolory wierzchołków (COLOR_0), a nie tekstury: jeden materiał wystarcza dla Dębu, Sosny zwyczajnej, Świerka, Brzozy i pozostałych z 14 drzew. Liście to pełna geometria, bez alpha testu i przezroczystego overdraw, a thin instances rysują tysiące drzew w jednym draw callu na mesh. LOD0 mieści się między kilkoma setkami a paroma tysiącami trójkątów, co sprawdza się w WebGL, WebGPU, na urządzeniach mobilnych, w VR, strategiach i city builderach.

Modele
14
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).

Paczki

Inne kategorie

To samo w innych stylach

To samo dla innych silników