PlayCanvas v2.17: Gaussian Splatting presisi setengah di WebGPU
PlayCanvas Engine v2.17.0 hadir dengan serangkaian peningkatan terfokus yang memajukan Gaussian Splatting di WebGPU. Rilis ini menambahkan harmonik sferis presisi setengah, pipeline pengurutan dan culling berbasis GPU, serta anggaran splat global untuk mengelola LOD di seluruh scene.
Panduan SuperSplat bersama CEO PlayCanvas Will Eastcott tentang penyuntingan dan pengoptimalan Gaussian Splat
Harmonik sferis f16
Penambahan teknis utamanya adalah harmonik sferis presisi setengah (f16) untuk Gaussian Splatting saat dijalankan di WebGPU. Harmonik sferis mengodekan informasi warna yang bergantung pada sudut pandang untuk setiap splat dan merupakan salah satu struktur data terberat dalam pipeline splatting. Beralih dari float 32-bit ke 16-bit memangkas penggunaan memori kira-kira hingga separuh dengan perbedaan visual yang minimal.
Fitur ini hanya berfungsi di WebGPU karena WebGL tidak mendukung buffer f16 secara native. Ini merupakan contoh lain bagaimana WebGPU memungkinkan pengoptimalan yang sebelumnya tidak praktis.
Pengurutan dan frustum culling berbasis GPU
v2.17.0 memperkenalkan pipeline pengurutan dan frustum culling berbasis GPU untuk splat di WebGPU. Sebelumnya, pengurutan splat dilakukan di CPU, yang menjadi hambatan pada scene berisi jutaan Gaussian. Memindahkan proses ini ke compute shader berarti GPU menangani pengurutan dan culling tanpa perlu mengirim data bolak-balik ke CPU.
Tahap frustum culling membuang splat di luar pandangan kamera sebelum diurutkan sehingga beban kerja makin berkurang.
Anggaran splat global
Sistem anggaran splat global baru menyediakan pengelolaan LOD Gaussian Splat untuk seluruh scene. Ketika scene Anda berisi beberapa objek splat, kini Anda dapat menetapkan jumlah total splat untuk keseluruhan scene. Engine secara otomatis mendistribusikan anggaran ke berbagai objek berdasarkan jarak dan cakupan layar.
Fitur ini praktis untuk aplikasi yang menggabungkan beberapa lingkungan atau objek hasil pemindaian ke dalam satu scene, seperti ruang pamer virtual atau tur arsitektur interaktif.
Meng-host sendiri model Gaussian Splatting dengan viewer PlayCanvas
Color Enhance dan pembaruan rendering
Rilis ini menambahkan efek pascapemrosesan Color Enhance baru dengan kontrol midtone, serta shader bloom presisi setengah untuk performa yang lebih baik. Material.meshInstances diubah dari Array menjadi Set sehingga mempercepat operasi penghapusan instance. Dukungan front face juga ditambahkan ke pipeline rendering.
v2.16.0 meletakkan fondasinya
Rilis sebelumnya (v2.16.0, 3 Februari) menambahkan dukungan Gaussian Splatting 2D (2DGS) dan subgroup WGSL. 2DGS menggunakan cakram datar alih-alih elipsoid 3D, yang dapat menghasilkan rekonstruksi permukaan lebih tajam untuk geometri planar seperti dinding dan lantai. Dukungan subgroup WGSL memungkinkan operasi tingkat wave dalam compute shader sehingga reduksi paralel dapat dilakukan lebih cepat pada GPU yang didukung.
Bersama-sama, v2.16 dan v2.17 merupakan langkah besar untuk menjadikan PlayCanvas sebagai engine pilihan utama bagi Gaussian Splatting berbasis web.