-
Notifications
You must be signed in to change notification settings - Fork 246
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
Performance: investigate sorting removal (hashed alpha testing or MLAB) #43
Comments
I made some progress here, my code is a mess now, I can PR after cleaning it a bit. There are some other tricks to reduce noise further as shown here: https://luebke.us/publications/StochasticTransparency_I3D2010.pdf I write to
I use an intermediate Render Texture with MSAA enabled then resolve it to the main one.
|
Would blue noise improve things here? It should be as simple as sampling from a pregenerated texture. @pablodawson Is this right repo and branch? https://github.com/pablodawson/UnityGaussianSplatting Nothing renders for me even when I try and bypass the NRE in the console. |
@andybak I updated the repo, it implements both Weighted blended OIT and Blue Noise/Hashed OIT, and you can switch between them in the inspector. For the latter, Blue Noise seems to look worse in my opinion. Weighted blended OIT seems promising as it is less "grainy" but it might require some tweaking to get it right. Also Noise/Hashed OIT seems to work only on sorted splats which kind of defeats the purpose, but it's a decent starting point I think. Some comparisons: I want to try Depth Peeling next, but it might be too much overhead. Edit: Apparently weighted blending is not good for this case since it fails on surfaces with high alpha with transparency behind it |
Also - it's worth noting that the Quill player varies the blue noise per frame. It increases "crawling" but at a high refresh rate it adds some temporal smoothing (I assume due to persistence of vision) |
Interesting, I'll see if I can implement that. Also forgot to add alpha correction, the latest commit should look better (and not require sorting) |
Update: Fixed some things. The bike scene looks decent now imo and depth is correct with no sorting. On my 3070: Also @andybak do you recall using anything else to reduce noise? |
Instead of sorting + alpha blending, investigate whether Hashed Alpha Testing would produce "acceptable" results. Or one of order independent transparency approaches like MLAB. If any of these is decent, perhaps add them as an option.
The text was updated successfully, but these errors were encountered: