Native 3D Gaussian Splatting (3DGS) reader & representation for reconstructed real-world scenes

Hi ParaView team,

I’d like to request first-class support for 3D Gaussian Splatting (3DGS) in ParaView — both a reader for the de-facto 3DGS file format and a representation that renders the splats correctly.

Motivation

3DGS has quickly become a standard way to reconstruct real-world environments (from handheld LiDAR/photogrammetry scanners) into high-fidelity, view-dependent radiance fields. For scientific visualization this is very attractive: we can run a CFD/SPH/FEM simulation and display the results directly inside a photorealistic reconstruction of the actual site (e.g. overlaying a flood, debris-flow, or tsunami simulation onto a scanned street or structure). ParaView is our tool of choice for the simulation side, so being able to load the 3DGS scene as context — in the same scene, same camera, correct depth — would be extremely valuable for disaster visualization and digital-twin workflows.

Current state (what already exists)

ParaView/VTK already has a lot of the rendering machinery:

  • vtkPointGaussianMapper supports anisotropic Gaussians with per-point quaternion rotation and EWA splatting (VTK MR !10662), which covers the geometric splat primitive.

So the remaining gap is mostly I/O, view-dependent color, and correct compositing.

Concrete requests

  1. A reader for the standard 3DGS format — the INRIA-style .ply layout (fields x,y,z, scale_0..2, rot_0..3, opacity, f_dc_0..2, f_rest_* SH coefficients), and ideally the compact .splat variant.
  2. Spherical-harmonics (SH) view-dependent color evaluated per-frame from the current camera direction, so appearance matches native 3DGS viewers rather than a flat/DC-only color.
  3. Correct order-dependent alpha compositing (back-to-front depth sorting of splats, or an OIT approach) so overlapping Gaussians blend properly.
  4. GUI exposure: a dedicated representation/reader so users can open a 3DGS file and combine it with ordinary VTK datasets (simulation output) in one render view.

Use case example

Our workflow scans a real site with a handheld scanner, exports the 3DGS .ply, and runs a fluid simulation of the same space. Today we composite the two outside ParaView. Native 3DGS support would let us load both into a single ParaView view, share the camera, and get correct occlusion between the reconstructed geometry and the simulated flow.

Here is an example of the kind of simulation-on-3DGS composite we produce — a GPU-LBM airflow simulation around a tram running through a street that was reconstructed as a 3DGS scene:

Happy to provide sample 3DGS datasets and help test. Thanks for considering this!

FYI @Lucas_Givord

Hi @Kenichiro-Yoshimi !

Thanks for the interest in supporting Gaussian splatting in ParaView! This is definitely a popular request and we are waiting until we have integrated WebGPU into ParaView. WebGPU will bring us advanced compute shaders compared to those currently based on OpenGL, thus performant splat rendering. @Lucas_Givord knows better the details than me.

Do you plan to contribute (technically and/or financially) to meeting these requests?

Best,
François