Skip to content

Babylon.js 9.0: kümelenmiş aydınlatma, düğüm tabanlı parçacıklar ve Gaussian splatting yenilemesi

Babylon.js 9.0 yayımlandı ve açık kaynaklı WebGPU/WebGL motorunun bugüne kadarki en büyük sürümü oldu. Öne çıkan özellik, sahnelerin yüzlerce veya binlerce dinamik ışığı hem WebGPU hem de WebGL 2'de akıcı kare hızlarıyla oluşturmasını sağlayan kümelenmiş aydınlatma sistemi.

Babylon.js 9.0'daki yeni Node Particle Editor

Kümelenmiş aydınlatma her şeyi değiştiriyor

Geleneksel piksel başına aydınlatma, sahnedeki her ışığın katkısını, ışıklar pikselin yakınında olmasa bile her pikselin hesaplamasını gerektirir. Kümelenmiş aydınlatma, ışıkları ekran uzayındaki döşemeler ve derinlik dilimleri hâlinde gruplandırarak bu sorunu çözer. Oluşturma sırasında her piksel yalnızca kendisini gerçekten etkileyen ışıkları değerlendirir. Böylece 1.000 dinamik ışık içeren bir sahne artık ağırlaşmak yerine gerçek zamanlı kare hızlarında çalışabilir.

Bu özellik WebGPU ve WebGL 2'de çalıştığından performans artışı mümkün olan en geniş kitleye ulaşır.

Dokulu alan ışıkları

Alan ışıkları Babylon.js 8.0'da kullanıma sunulmuştu. 9.0 sürümü, herhangi bir görüntüyü dikdörtgen bir alan ışığı üzerinden yansıtabilmeniz için yayılım dokuları ekliyor. Vitray yansımalarını, LED panel ekranlarını veya fiziksel olarak doğru ışık yayılımına sahip sinematik aydınlatma düzenlerini düşünün.

Hacimsel aydınlatma

Yeni hacimsel aydınlatma sistemi, sis, toz ve pus içinden geçen ışık huzmelerini oluşturur. Işığın atmosferde nasıl saçılacağını sanatsal olarak kontrol etmek için yapılandırılabilir sönümleme ve faz parametreleri içerir. Sistem, yönlü ışık kaynaklarını destekler ve kullanılabildiği yerlerde WebGPU compute shader'larını, diğer durumlarda ise WebGL 2 alternatiflerini kullanır.

Node Particle Editor

Node Particle Editor (NPE), parçacık sistemleri oluşturmak için görsel bir sürükle ve bağla aracıdır. Node Material Editor'ı kullandıysanız iş akışı aynıdır. Bozucu olmayan bir düğüm grafiği aracılığıyla yayılım şekilleri, sprite sayfaları, güncelleme davranışları ve alt yayıcılar üzerinde tam kontrol elde edersiniz. Akış haritaları ve yer çekimi çekicileri de parçacık geliştirmelerini tamamlar.

Gaussian splatting sistemi baştan sona yenilendi

Babylon.js, Gaussian splatting desteğini 7.0 sürümünde kullanıma sundu. 9.0 sürümü sistemi; gölge oluşturma, opak ağ benzeri görüntü oluşturma için üçgen splatting ve .splat, .ply ve .spz dosyalarının yanı sıra sıkıştırılmış SOG/SOGS biçimleri desteğiyle yeniden yazıyor. Artık birden fazla splat varlığını genel sıralamayla tek bir sahnede birleştirebilir, her bir parçayı bağımsız olarak dönüştürüp canlandırabilirsiniz. Adobe bu çalışmaya katkıda bulundu.

Frame Graph sistemi

8.0'da alfa özelliği olarak sunulan Frame Graph, bu sürümle birlikte v1'e ulaşıyor. Bu, her düğümün bir görüntü oluşturma görevini temsil ettiği yönlendirilmiş çevrimsiz bir graftır. Sistem; doku ayırma, yeniden kullanım ve optimizasyon işlemlerini otomatik olarak yönetir. Ekip, bazı durumlarda GPU belleğinde %40 veya daha fazla tasarruf sağlandığını bildiriyor. Node Render Graph Editor aracılığıyla görsel olarak veya sınıf çatısı üzerinden programatik biçimde özel görüntü oluşturma işlem hatları oluşturabilirsiniz.

Diğer yenilikler

Animasyon yeniden hedefleme, farklı kemik yapılarına ve adlandırma kurallarına sahip olsalar bile bir karakter iskeletindeki animasyonları başka bir karakter iskeletine uygulamanızı sağlar. Sürüm ayrıca yeniden geliştirilmiş bir inceleyici, büyük koordinat sistemlerinde kayan nokta kaynaklı titreşimi önleyen geniş dünya görüntü oluşturma özelliği ve jeo-uzamsal görüntü oluşturma yetenekleri içerir.

Kaynaklar