Implementing Order-Independent Transparency
osor.io
osor.io
With 16 DoF, can you handle more overlapping objects than a 16-long per-pixel list?
Without fully understanding it, this reminds me of spherical harmonics in the way that juggling around the channels is convenient but it's not magic, you can only do so much with X degrees of freedom. (SH is a really nice way to store a low-res cubemap, but you would never use SH for env maps on something shiny) In the case of SH there are also artifacts introduced. I wonder how the wavelets behave when pushed too hard?
Also, trying to be constructive - If there were still images with objects lined-up so we could compare the different techniques with a reference and see the difference, that would be easier to read than a lot of fast-moving randomly-colored objects.
My plan was basically render everything opaque first, then render transparency front to back till the layer became opaque (discard all pixels under an already opaque pixel), and of course exclude everything further away than the depth buffer of the opaque layer.
Might be interesting to actually go and finish the implementation to test it out, I just never had a good test scene with a lot of transparency (with an opaque layer since half my benefit comes from that.)
I actually expect that a raytracing based implementation is more accurate with about the same performance as the shown implementation.
they have MLAB in their performance comparison table, is that ray traced? from this blog i think it sounds like it there's a rasterized version and a way to use ray tracing https://interplayoflight.wordpress.com/2023/07/30/raytraced-...
Out of curiosity, what did you think it would be about?