FoliMesh

Büsche im Stil Low-Poly für three.js

Low-Poly-Büsche sind die günstigste Möglichkeit, den Raum zwischen Baumstämmen in einer three.js-Szene zu füllen. Die GLB-Datei lädt man mit GLTFLoader aus three/addons, danach übergibt man die Meshes LOD0–LOD3 über lod.addLevel(mesh, distance) an THREE.LOD; die Stufen wechseln pro Frame mit der Kameradistanz. Da die Blätter hier echte Geometrie mit Vertexfarben statt Alpha-Karten sind, entfallen Alpha-Testing und transparentes Overdraw – ein Vorteil auf mobilen GPUs.

Enthalten sind Bambus, Strauch, Buchsbaum, Hecke, Wacholder, Wildrose, Himbeere und Haselnuss. Flat Shading hält LOD0 im Bereich von einigen Hundert bis rund zweitausend Dreiecken, und ein gemeinsames Material lässt InstancedMesh und BatchedMesh lange Hecken mit sehr wenigen Draw Calls zeichnen. Die Kollisionsmesh bleibt unsichtbar und geht an Rapier oder cannon-es – für Strategie, Städtebau und stilisierte VR auf WebGLRenderer oder WebGPURenderer.

Modelle
8
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 three.js

In three.js GLB mit dem GLTFLoader aus three/addons laden; DRACOLoader oder KTX2Loader nur ergänzen, wenn eine Datei diese Extensions nutzt.

  • Distanz-LOD: THREE.LOD mit lod.addLevel(mesh, distance) für LOD0–LOD3; die Stufe wechselt jeden Frame nach Kameraabstand.
  • Wälder: InstancedMesh zeichnet Tausende Kopien in einem Draw Call, BatchedMesh mischt mehrere Baumvarianten. THREE.LOD wirkt nicht pro Instanz, daher Instanzen pro Chunk selbst nach LOD gruppieren.
  • Laub: glTF-alphaMode MASK wird zu material.alphaTest, doppelseitige Materialien erhalten automatisch side: THREE.DoubleSide.
  • Kollisionsmesh: unsichtbar lassen und an eine Physik-Bibliothek wie Rapier oder cannon-es übergeben.

Funktioniert mit WebGLRenderer und WebGPURenderer.

Pakete

Weitere Kategorien

Dasselbe in anderen Stilen

Dasselbe für andere Engines