Gaussian splatting, karmaşık 3D sahneleri üç boyutlu uzayda anizotropik Gauss fonksiyonları koleksiyonu olarak temsil eden yenilikçi bir render alma yöntemidir. Bu teknik, küçük görüntü setlerinden öğrenilmiş fotorealistik sahnelerin gerçek zamanlı olarak render edilmesini sağlar ve oyun, sanal gerçeklik ile gerçek zamanlı profesyonel görselleştirme gibi uygulamalar için idealdir.
Yeni Vulkan Tabanlı Örnek: vk_gaussian_splatting
vk_gaussian_splatting, gerçek zamanlı Gaussian splattingı gösteren yeni bir Vulkan tabanlı örnektir. Bu, yüksek verimli ışınım alanlarının temsilini sağlayan son teknoloji bir hacim render alma tekniğidir. Bu örnek, NVIDIA DesignWorks Örnekleri koleksiyonunun en yeni üyesidir.
Geliştirici Ekibin Vizyonu
NVIDIA DevTech ekibi, bu yeni örnek projeyi 3D Gaussian splatting’ın (3DGS) gerçek zamanlı görselleştirmesi için çeşitli yaklaşımları keşfetmeye ve karşılaştırmaya yönelik bir deney alanı olarak düşünmektedir. Farklı teknikleri ve optimizasyonları değerlendirerek, ekip Vulkan API’sini kullanırken performans, kalite ve implementasyon trade-off’ları hakkında değerli bilgiler sağlamayı hedefliyor.
İlk uygulama, rasterizasyon temellidir ve iki farklı render alma yaklaşımını göstermektedir. Bunlardan biri mesh shader kullanırken diğerinin temelinde vertex shader bulunmaktadır.

Sıralama Yöntemleri
Gaussian splatlar, doğru alfa kompozisyonu için önden arkaya sıralama gerektirdiğinden, iki alternatif sıralama yöntemi sunulmuştur:
- GPU tabanlı Radix Sıralama kullanarak gerçekleştirilen bir hesaplama hattı
- CPU tabanlı asenkron sıralama stratejisi, çok iş parçacıklı sıralama fonksiyonunu kullanır

Deneyimleme Fırsatları
Bu örnek, bu render alma tekniğinin birçok yönünü keşfetmek ve denemek için kullanıcıya olanak tanır:
- Anizotropik gauss splatlarının farklı yönlerinin incelenmesi için çeşitli görselleştirme modları
- Gerçek zamanlı profil oluşturma için kapsamlı bir benchmarking sistemi
- RAM ve VRAM bellek tüketimi hakkında daha fazla ayrıntı, render için veri akışını anlama
- Farklı tekniklerin her aşaması için GPU süreleri, iş yükü ve potansiyel darboğazları anlamaya yönelik
- Bu rakamlarla oluşturulan grafik raporları

Bu örnek, geliştiricilerin Gaussian splatting render alma teknikleri ile Vulkan tabanlı optimizasyonları denemelerine başlangıç noktası sağlamaktadır.
Gerçek zamanlı ışınım alanlarının render edilmesini keşfetmek için nvpro-samples/vk_gaussian_splatting GitHub reposunu kontrol edebilirsiniz.