SplatVFX is an experimental implementation of 3D Gaussian Splatting with Unity VFX Graph.
No. I made many compromises to implement it with VFX Graph. I recommend trying other solutions like UnityGaussianSplatting.
- Download the sample
.splat
file (bicycle.splat) and put it in theURP/Assets
directory. - Open
URP/Assets/Test.unity
and start Play Mode.
.splat
is an ad-hoc file format used in antimatter15's
WebGL Gaussian Splat Viewer. You can convert a .ply
file into .splat
by
dragging and dropping it into a viewer window.
The default VFX Graph (Splat.vfx
) supports up to 8 million points. You must
increase the capacity when your .splat
file has more points. Duplicate
Splat.vfx
into your project and edit it to change the capacity value in the
Initialize Particle context.
You can check how many points are in a .splat
file on Inspector.
-
Typically,
.splat
files are trained with the reference rasterizer running on the sRGB color space. It causes artifacts when using the Linear Lighting Mode in Unity. You can remedy it by grading in post-processing, but it's impossible to get perfect results with manual tweaks. -
The Gaussian projection algorithm used in the VFX Graph is far from perfect. It causes many artifacts, including sudden pops with camera motion.