Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Precompute per-Gaussian properties #15

Open
jatentaki opened this issue Aug 30, 2023 · 0 comments
Open

Precompute per-Gaussian properties #15

jatentaki opened this issue Aug 30, 2023 · 0 comments
Labels
good first issue Good for newcomers help wanted Extra attention is needed

Comments

@jatentaki
Copy link
Collaborator

The rendering code uses the vertex pulling technique: we have n Gaussians to draw, each corresponding to a quad, that is 2 triangles -> 6 vertices. We create a buffer gaussianData of size n, launch the vertex shader for 6n vertices and have each vertex access gaussianData[vertexIndex // 6]. This is implemented here. Since most computations are shared across all 6 vertices of a Gaussian, much of the computation (such as converting from spherical harmonics to RGB) is unnecessarily repeated 6-fold. A better implementation would be to first launch a compute shader n times, pre-compute all data shared across vertices (such as RGB) and then have the render pipeline access the precomputed values.

@jatentaki jatentaki added good first issue Good for newcomers help wanted Extra attention is needed labels Aug 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
good first issue Good for newcomers help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant