FoliMesh

Bäume im Stil Realistisch für Babylon.js

Diese realistischen Bäume kommen als GLB und werden in Babylon.js über den glTF-Loader aus @babylonjs/loaders geladen: ImportMeshAsync für eine einzelne Eiche oder Birke, LoadAssetContainerAsync mit instantiateModelsToScene, wenn ein Park dasselbe Mesh vielfach braucht. Die Stufen LOD0–LOD3 hängen an lod0.addLODLevel(30, lod1) und addLODLevel(80, lod2); null blendet einen Baum dahinter aus.

Für Wälder zeichnet thinInstanceAdd mit Matrizen Tausende Waldkiefern, Fichten oder Espen in einem Draw Call pro Mesh; createInstance lohnt sich, wenn einzelne Bäume Picking brauchen. Alpha-getestete Blattkarten schreiben Tiefe, brauchen kein Sortieren und werfen korrekte Schatten, während die Rinde ihr eigenes Material behält. Unsichtbare Collision-Meshes laufen mit checkCollisions oder Havok PhysicsAggregate. Passt zu Ego- und Third-Person-Survival, Open Worlds und Simulationen.

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

Über den Stil Realistisch

Realistische Modelle nutzen den PBR-Workflow Metal/Roughness, den glTF 2.0, Unity, Unreal, Godot und three.js direkt lesen.

  • Rinde: Base-Color-, Normal- und Roughness-Maps auf Stamm und Ästen.
  • Blätter: alpha-getestete (Masked) Cards mit Blattbüschel-Texturen statt Alpha-Blending – sie schreiben Tiefe, brauchen keine Sortierung und werfen korrekte Schatten.
  • Rinde und Laub haben getrennte Materialien; die Zahl der Draw Calls bleibt planbar und GPU-Instancing funktioniert problemlos.
  • LOD0 ist für die Nahansicht; LOD1–LOD3 entfernen Äste und Blatt-Cards, die letzte Stufe ist leicht genug für große Entfernungen.

Ideal für First- und Third-Person-Spiele, Survival, Open Worlds und Simulationen auf PC und Konsole. Auf Mobilgeräten LOD1 oder LOD2 als nächste Stufe verwenden und den Overdraw des Laubs im Blick behalten.

Verwendung in Babylon.js

Babylon.js lädt GLB über den glTF-Loader aus @babylonjs/loaders: ImportMeshAsync (oder SceneLoader.ImportMeshAsync in älterem Code) bzw. LoadAssetContainerAsync, wenn viele Kopien per instantiateModelsToScene nötig sind.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) usw.; null als Mesh blendet das Objekt jenseits dieser Distanz aus.
  • Tausende Bäume: Thin Instances (thinInstanceAdd mit Matrizen) rendern mit einem Draw Call pro Mesh; normale createInstance nutzen, wenn jeder Baum eigenes Picking oder eigene Logik braucht.
  • Laub: glTF-MASK wird zu einem alpha-getesteten PBRMaterial (MATERIAL_ALPHATEST).
  • Kollisionsmesh: isVisible = false setzen und mit checkCollisions oder Havok-Physik (PhysicsAggregate mit MESH-Shape) nutzen.

Pakete

Weitere Kategorien

Dasselbe in anderen Stilen

Dasselbe für andere Engines