Order independent transparency: Difference between revisions
Line 14: | Line 14: | ||
Do several render passes. In each render pass, set a range of z values from back to front and render only z values within the threshold for each render pass. | Do several render passes. In each render pass, set a range of z values from back to front and render only z values within the threshold for each render pass. | ||
==Dual Depth Peeling== | ===Dual Depth Peeling=== | ||
https://developer.download.nvidia.com/SDK/10/opengl/src/dual_depth_peeling/doc/DualDepthPeeling.pdf | https://developer.download.nvidia.com/SDK/10/opengl/src/dual_depth_peeling/doc/DualDepthPeeling.pdf | ||
This is a performance optimization over depth peeling which allows using half the number of passes. | |||
==Stochastic Transparency== | ==Stochastic Transparency== |
Revision as of 21:30, 8 October 2025
Methods for order independent transparency
Additive Transparency
Take all the transparent colors and add them up. Addition is commutative so the order doesn't matter.
Weighted Blended Order Independent Transparency
See http://casual-effects.blogspot.com/2014/03/weighted-blended-order-independent.html
This builds upon additive transparency with two buffers:
- Accum buffer: weighted average of all premultiplied-alpha RGB colors.
- Revealage buffer: buffer representing how much of the opaque background is visible through the transparent layers.
Depth Peeling
Do several render passes. In each render pass, set a range of z values from back to front and render only z values within the threshold for each render pass.
Dual Depth Peeling
https://developer.download.nvidia.com/SDK/10/opengl/src/dual_depth_peeling/doc/DualDepthPeeling.pdf
This is a performance optimization over depth peeling which allows using half the number of passes.
Stochastic Transparency
https://research.nvidia.com/publication/2011-08_stochastic-transparency
The idea is to apply dithering, rendering objects as opaque. When objects overlap, the depth test prevents objects behind from rendering over objects in front.