FoliMesh

Kakteen & Sukkulenten im Stil Low-Poly für PlayCanvas

In PlayCanvas ist GLB ein Container-Asset: Die ins Editor-Fenster geladene Datei wird zum Template mit vollständiger Hierarchie, im Code genügen app.assets.loadFromUrl(url, 'container') und instantiateRenderEntity(). Saguaro, Kugelkaktus, Feigenkaktus, Agave und Aloe kommen mit LOD0–LOD3, Kollision und Pivot an der Basis, sodass sie ohne Nachjustieren im Sand stehen.

Low-Poly passt hier besonders gut: Flat Shading und Vertexfarben (glTF COLOR_0) bedeuten keine Texturen, keine UV-Arbeit und ein Material für das ganze Set. Da PlayCanvas keine LOD-Komponente hat, schaltet ein kurzes Skript die LOD0–LOD3-Entities nach Kameradistanz um; statische Pflanzen laufen in einer Batch Group, große Kakteenfelder über meshInstance.setInstancing(). LOD0 bleibt bei wenigen Hundert bis rund zweitausend Dreiecken.

Modelle
5
Detailstufen
LOD0 – LOD3
Formate
GLB · FBX · OBJ

Über den Stil Low-Poly

Low-Poly-Vegetation ist der günstigste Stil – beim Rendern wie bei der Build-Größe.

  • Flat Shading: eine Normale pro Fläche ergibt den klaren Facetten-Look, Normal Maps entfallen.
  • Die Farbe liegt in den Vertex-Farben (glTF COLOR_0): keine Texturen, keine UV-Arbeit, kaum Grafikspeicher.
  • Das Laub ist echte Geometrie statt Alpha-Cards: kein Alpha-Test und kein transparenter Overdraw – wichtig für mobile GPUs.
  • Ein einziges Material reicht für alle Modelle einer Szene, Bäume lassen sich daher leicht batchen und instanzieren.
  • Übliche Budgets für LOD0 liegen zwischen einigen hundert und rund zweitausend Dreiecken.

Passt zu Mobile, WebGL/WebGPU, VR, Strategie, Aufbauspielen und stilisierten Indie-Games. In der Engine ein Material verwenden, das mit der Vertex-Farbe multipliziert.

Verwendung in PlayCanvas

PlayCanvas behandelt GLB als Container-Asset. Im Editor GLB hochladen (FBX wird beim Import in GLB konvertiert) und ein Template mit der Modellhierarchie erhalten; in reinem Engine-Code app.assets.loadFromUrl(url, 'container') und asset.resource.instantiateRenderEntity() verwenden.

  • LOD: Eine eingebaute LOD-Komponente gibt es nicht; ein kleines Skript vergleicht den Kameraabstand und schaltet die Render-Komponenten der Entities LOD0–LOD3 um.
  • Statische Bäume können eine Batch Group teilen, um Draw Calls zusammenzufassen; für große Wälder Hardware-Instancing mit meshInstance.setInstancing() und einem Vertex Buffer der Transformationen nutzen.
  • Laub: glTF-MASK setzt alphaTest am StandardMaterial; für doppelseitige Blätter Cull Mode none verwenden.
  • Kollisionsmesh: Collision-Komponente vom Typ Mesh plus statischer Rigidbody, Render-Komponente deaktiviert.

Weitere Kategorien

Dasselbe in anderen Stilen

Dasselbe für andere Engines