FoliMesh

Babylon.js için Gerçekçi tarzında Sarmaşıklar

PBR kabuk ve yaprak dokuları, normal map’ler ve alpha test yapraklarla gerçekçi bitki örtüsü. Babylon.js için GLB formatında bitki örtüsü: SceneLoader ile içe aktarın, LOD seviyelerini bağlayın ve tarayıcıda çalışan ormanlar kurun. Bu grup, oyun sahneleri için tırmanan ve sarkan bitkileri kapsar: ağaç gövdelerine sarılmış sarmaşıklar, duvarlara yayılan yabani asma, taş ve tuğla yüzeylere tırmanan sarmaşık ile dallardan ve tepelerden sarkan asılı sarmaşıklar. Ormanları, harabeleri ve eski yapıları sarmaşıklarla kaplanmış gibi gösterirler. Her model LOD0'dan LOD3'e kadar seviyeler, çarpışma verisi ve taban noktasında pivot ile gelir; böylece sarmaşıklar ek ayar gerekmeden gövdelere, duvarlara ve kayalara bağlanabilir. Rüzgâr ağırlıkları yaprak ve sarılıcıların doğal biçimde sallanmasını sağlar. Her seed yaprak yoğunluğunu, uzunluğu ve büyüme desenini değiştirir; modeller Unity, Unreal Engine, Godot ve Bevy için GLB, FBX ve OBJ olarak dışa aktarılır. Bu seçkide 5 oyuna hazır model var. Her modelde LOD0–LOD3, çarpışma ve tabanda pivot bulunur; her yeni seed aynı türün yeni bir varyasyonunu verir.

Modeller
5
Detay seviyeleri
LOD0 – LOD3
Formatlar
GLB · FBX · OBJ

Gerçekçi tarzı hakkında

Gerçekçi modeller, glTF 2.0, Unity, Unreal, Godot ve three.js’in doğrudan okuduğu PBR metal/roughness iş akışını kullanır.

  • Kabuk: gövde ve dallarda renk, normal ve pürüzlülük haritaları.
  • Yapraklar: yaprak kümesi dokulu alpha test (masked) kartlar; alpha blend değil, bu yüzden derinlik yazar, sıralama gerektirmez ve doğru gölge düşürür.
  • Kabuk ve yapraklar ayrı materyal kullanır; draw call sayısı öngörülebilir kalır ve GPU instancing sorunsuz çalışır.
  • LOD0 yakın plan içindir; LOD1–LOD3 dalları ve yaprak kartlarını azaltır, son seviye uzak mesafe için yeterince hafiftir.

PC ve konsolda birinci ve üçüncü şahıs oyunlar, hayatta kalma, açık dünya ve simülatörler için idealdir. Mobilde en yakın seviye olarak LOD1 veya LOD2 kullanın ve yaprakların overdraw’ına dikkat edin.

Babylon.js içinde kullanım

Babylon.js, GLB’yi @babylonjs/loaders içindeki glTF yükleyicisiyle yükler: ImportMeshAsync (eski kodda SceneLoader.ImportMeshAsync) ya da instantiateModelsToScene ile çok sayıda kopya gerektiğinde LoadAssetContainerAsync.

  • LOD: lod0.addLODLevel(30, lod1), addLODLevel(80, lod2) vb.; mesh yerine null vermek nesneyi o mesafeden sonra gizler.
  • Binlerce ağaç: thin instance’lar (thinInstanceAdd ve matrisler) mesh başına tek draw call ile çizilir; her ağacın kendi picking’i veya mantığı gerekiyorsa normal createInstance kullanın.
  • Yapraklar: glTF MASK, alpha test’li bir PBRMaterial’e (MATERIAL_ALPHATEST) dönüşür.
  • Çarpışma mesh’i: isVisible = false yapın ve checkCollisions veya Havok fiziğiyle (MESH şekilli PhysicsAggregate) kullanın.

Diğer kategoriler

Diğer tarzlarda aynısı

Diğer motorlar için aynısı