For reference: glTF Extension KHR_gaussian_splatting
for 3DGS scene representation
#30101
Labels
KHR_gaussian_splatting
for 3DGS scene representation
#30101
Description
Following thread NASA-AMMOS/3DTilesRendererJS#863 I just opened, @gkjohnson suggested I should cross-post it directly on the three.js repo. Feel free to close this and anyone interested can watch the universal splat thread instead - link below - since this 3DGS feature might be out-of-scope for the threejs library at the moment.
Solution
Here mkkellogg/GaussianSplats3D#47 is a mega discussion regarding a universal gaussian-splat format, with a lot of great takes and mentions - mostly regarding compression, like Niantic SPZ, and standardization.
An interesting recent comment by lilleyse (Cesium team member) redirects to the draft KHR_gaussian_splatting glTF extension as well as an implementation within CesiumJS in the experimental splat-shader branch. This extension adds
_ROTATION
and_SCALE
attributes to a glTFPOINTS
, so these can be used to represent a gaussian-splat scene. If or once that standard settles and makes its way to official KHR_extension, it would be uesful for threejs to interpret this extension and give access to these extra attributes.The Cesiumjs implementation extends that
KHR_gaussian_splatting
extension to a HLOD (Hierarchical LoD) tileset container of mesh scenes, OGC-3D-tiles, where every leaf node tile is a glTF scene that supports that gaussian-splat extension.Alternatives
CesiumJS viewer will probably be the first reference implementation for that
KHR_gaussian_splatting extension + OGC-3D-tiles
Additional context
Following the original release of the 3DGS paper by INRIA team at SIGGRAPH 2023, there have been multiple JS renderers and viewers implemented, some based on threejs like mkkellogg/GaussianSplats3D and some others which aren't, eg antimatter15/splat lumalabs or babylonjs.
The text was updated successfully, but these errors were encountered: