FoliMesh

Krzewy w stylu Low-poly do PlayCanvas

Wrzuć GLB do edytora PlayCanvas — FBX jest konwertowany przy imporcie — i otrzymasz asset typu container z hierarchią modelu; w projektach engine-only użyj app.assets.loadFromUrl(url, 'container') oraz asset.resource.instantiateRenderEntity(). Wszystkie 8 modele — Bambus, Krzew, Bukszpan, Żywopłot, Jałowiec, Dzika róża, Malina i Leszczyna — mają LOD0–LOD3 i pivot u podstawy.

PlayCanvas nie ma wbudowanego komponentu LOD, więc krótki skrypt porównuje odległość od kamery i przełącza komponenty render kolejnych poziomów. Low-poly jest tu najtańszy: flat shading, kolor w vertex colors (COLOR_0), zero tekstur i normal map, liście jako pełna geometria zamiast alphacardów — bez alphaTestu i bez overdraw na mobilnych GPU. Jeden materiał obsłuży całą scenę, więc żywopłoty mogą dzielić batch group albo lecieć przez meshInstance.setInstancing(). LOD0 to od kilkuset do dwóch tysięcy trójkątów.

Modele
8
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 PlayCanvas

PlayCanvas traktuje GLB jako container asset. W edytorze wgraj GLB (FBX jest konwertowany do GLB przy imporcie), a dostaniesz template z hierarchią modelu; w kodzie samego silnika użyj app.assets.loadFromUrl(url, 'container') i asset.resource.instantiateRenderEntity().

  • LOD: nie ma wbudowanego komponentu LOD, więc mały skrypt porównuje odległość od kamery i przełącza komponenty render encji LOD0–LOD3.
  • Statyczne drzewa mogą dzielić batch group, by scalić draw calle; w dużych lasach użyj sprzętowego instancingu przez meshInstance.setInstancing() z vertex bufferem transformacji.
  • Liście: MASK z glTF ustawia alphaTest w StandardMaterial; dla dwustronnych liści użyj cull mode none.
  • Siatka kolizji: komponent collision typu mesh plus statyczny rigidbody, z wyłączonym komponentem render.

Paczki

Inne kategorie

To samo w innych stylach

To samo dla innych silników