Skip to content

Commit b8648d7

Browse files
mvaligurskyMartin Valigursky
andauthored
Updated main jsdocs block for GSplatComponent (#8130)
Co-authored-by: Martin Valigursky <[email protected]>
1 parent f0dd1d6 commit b8648d7

File tree

1 file changed

+31
-4
lines changed

1 file changed

+31
-4
lines changed

src/framework/components/gsplat/component.js

Lines changed: 31 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,8 @@ import { GSplatPlacement } from '../../../scene/gsplat-unified/gsplat-placement.
1717
/**
1818
* The GSplatComponent enables an {@link Entity} to render 3D Gaussian Splats. Splats are always
1919
* loaded from {@link Asset}s rather than being created programmatically. The asset type is
20-
* `gsplat` which are in the `.ply` file format.
20+
* `gsplat` which supports multiple file formats including `.ply`, `.sog`, `.meta.json` (SOGS
21+
* format), and `.lod-meta.json` (streaming LOD format).
2122
*
2223
* You should never need to use the GSplatComponent constructor directly. To add an
2324
* GSplatComponent to an {@link Entity}, use {@link Entity#addComponent}:
@@ -38,11 +39,37 @@ import { GSplatPlacement } from '../../../scene/gsplat-unified/gsplat-placement.
3839
* console.log(entity.gsplat.customAabb);
3940
* ```
4041
*
42+
* ## Unified Rendering
43+
*
44+
* The {@link GSplatComponent#unified} property enables unified rendering mode, which provides
45+
* advanced features for Gaussian Splats:
46+
*
47+
* - **Global Sorting**: Multiple splat components are sorted together in a single unified sort,
48+
* eliminating visibility artifacts and popping effects when splat components overlap.
49+
* - **LOD Streaming**: Dynamically loads and renders appropriate levels of detail based on camera
50+
* distance, enabling efficient rendering of massive splat scenes.
51+
*
52+
* ```javascript
53+
* // Enable unified rendering for advanced features
54+
* entity.gsplat.unified = true;
55+
* ```
56+
*
57+
* Note: The `unified` property can only be changed when the component is disabled.
58+
*
4159
* Relevant Engine API examples:
4260
*
43-
* - [Loading a Splat](https://playcanvas.github.io/#/gaussian-splatting/simple)
44-
* - [Custom Splat Shaders](https://playcanvas.github.io/#/gaussian-splatting/multi-splat)
45-
* - [Splat picking](https://playcanvas.github.io/#/gaussian-splatting/picking)
61+
* - [Simple Splat Loading](https://playcanvas.github.io/#/gaussian-splatting/simple)
62+
* - [Global Sorting](https://playcanvas.github.io/#/gaussian-splatting/global-sorting)
63+
* - [LOD](https://playcanvas.github.io/#/gaussian-splatting/lod)
64+
* - [LOD Instances](https://playcanvas.github.io/#/gaussian-splatting/lod-instances)
65+
* - [LOD Streaming](https://playcanvas.github.io/#/gaussian-splatting/lod-streaming)
66+
* - [LOD Streaming with Spherical Harmonics](https://playcanvas.github.io/#/gaussian-splatting/lod-streaming-sh)
67+
* - [Multi-Splat](https://playcanvas.github.io/#/gaussian-splatting/multi-splat)
68+
* - [Multi-View](https://playcanvas.github.io/#/gaussian-splatting/multi-view)
69+
* - [Picking](https://playcanvas.github.io/#/gaussian-splatting/picking)
70+
* - [Reveal Effect](https://playcanvas.github.io/#/gaussian-splatting/reveal)
71+
* - [Shader Effects](https://playcanvas.github.io/#/gaussian-splatting/shader-effects)
72+
* - [Spherical Harmonics](https://playcanvas.github.io/#/gaussian-splatting/spherical-harmonics)
4673
*
4774
* @hideconstructor
4875
* @category Graphics

0 commit comments

Comments
 (0)