CesiumJS-based implemetation of a renderer for 3D Gaussian Splatting for Real-Time Radiance Field Rendering, a technique for generating 3D scenes from 2D images. Their project is CUDA-based and needs to run natively on your machine, but I wanted to build a viewer that was accessible via the web.
The 3D scenes are stored in a format similar to point clouds and can be viewed, navigated, and interacted with in real-time. This renderer will work with standard .splat
files.
When I started, web-based viewers were already available -- A WebGL-based viewer from antimatter15 and a WebGPU viewer from cvlab-epfl -- A CesiumJS-based viewer from TheBell doesn't work properly . I used those versions as a starting point for my initial implementation.
install dependencies:
pnpm install
start your local server:
node server.js
visit the page:
http://localhost:8081/index.html?url=http://localhost:8081/data/model.splat
[1] support data update.
[2] Optimize rendering effects.