Gaussian Splat
Load .ply and .splat files, or convert points, a mesh, or a volume into gaussian splats. Splats convert back: wire them into a points input, the Volume node, or the Mesh node.
What it does
Gaussian Splat loads a captured 3D scene, a .ply or .splat file from a photogrammetry or radiance-field capture, as a cloud of soft, blended splats rather than a mesh. Point File Path at a folder of frames instead of a single file and it loads a moving splat sequence that plays over the timeline (see Gaussian splats). Wire something into Source and the node switches to convert mode, building splats from the shape of Points, a Mesh, or a Volume.
The Splats output goes back the other way too: wire it into a Points input, into the Volume node, or into the Mesh node, and each reads the splats into its own form.
When to use it
A
.plyor.splatscan or capture brought in as-isA point cloud given the soft, volumetric look of splats instead of hard dots
A Mesh surface resurfaced as splats, for a painterly or atmospheric look
A Volume's occupied region turned into splats
| Parameter | Type | Default |
|---|---|---|
source | OneOf([Collection, Field, GpuGeometry]) | — |
file_path | String | "String::new()" |
k_neighbors | Number | 16 |
fit_opacity | Number | 0.800 |
fit_scale_factor | Number | 1 |
mesh_splat_count | Number | 100000 |
density_threshold | Number | 0.500 |
position | Vec3 | (0, 0, 0) |
rotation | Vec3 | (0, 0, 0) |
scale | Vec3 | (1, 1, 1) |
sh_degree | String | "Full" |
splat_scale | Number | 1 |
opacity_cull | Number | 0 |
max_splats | Number | 0 |
Gotchas
Splat Scale and the opacity settings (Fit Opacity, Opacity Cull) apply in every conversion mode, and are the fastest fix for splats that read too big, too faint or too noisy.
Max Splats defaults to unlimited. Converting a dense Volume or a very large Mesh can produce a huge number of splats and slow things down; set a cap once the look is settled.
Wiring anything into Source switches the node fully into convert mode. File Path is ignored from then on, even if it still points at a valid file.
The Fit, Mesh Convert, and Volume Convert parameter groups only matter for the matching input: K Neighbors / Fit Scale Factor only affect converting Points, Mesh Splat Count only affects converting a Mesh, Density Threshold only affects converting a Volume. Setting the wrong group's values for the current Source has no effect.
Worked example
Add a Gaussian Splat node and set File Path to a
.plyor.splatcapture, leaving Source unconnected.To convert something you already have instead, wire a Points, Mesh, or Volume node into Source. File Path is now ignored.
Converting Points: tune K Neighbors, Fit Opacity, and Fit Scale Factor under Fit to shape how the splats are estimated.
Converting a Mesh: set Mesh Splat Count to control how densely the surface is covered.
Converting a Volume: set Density Threshold to control which voxels become splats.
Dial in Splat Scale, Opacity Cull, and Max Splats under Quality, then send Splats onward, including back into a Points input, the Volume node, or the Mesh node for another form.