-
Notifications
You must be signed in to change notification settings - Fork 381
Open
Description
Not a real issue, but rather some info on work.
I was originally try to proceed on the stochastic branch's work to investigate on sort-free implementation that would potentially work on WebGPU.
Well, at the end there's no a very good solution to the noise. Simply do subpixel sample would greatly affect performance.
We all know GPU radix sort is not supported yet on WebGPU, but right now sort is the only quality solution. So at the end I went back to alpha blend and CPU sort, at the end I came up with a solution:
- Use octree nodes to manage the scene splats
- Do culling through octree to filter out visible nodes
- Coarse sort the visible nodes
- In each node, sort the splats inside using CPU threads in parellel(since splats between nodes are isolated)
- Preserve the sort result in each node, so we only update the node sort result when camera position changes a bit threshold
I put it in my fork, hope it can help someone https://github.com/WindyYam/UnityGaussianSplatting
For anyone who want to try: https://windyyam.github.io/unity_splat_test_deploy/
Metadata
Metadata
Assignees
Labels
No labels