Transparency is broken
adrien-ben opened this issue · 3 comments
adrien-ben commented
I need some sort of sorting ...
adrien-ben commented
The worst occurrences are related to some models whose materials are BLEND
but actual alpha value is 1.0.
When it occurs opaque geometry is renderer during the transparent pass durng which we don't write the depth buffer for obvious reasons.
24972d8 fixes that edge case by adding a pass where we render transparent primitives as opaque BUT discard fragments with an alpha < 1.0. Then during the transparent pass we now discard fragments whose alpha is = 1.0.
All examples that were completely broken seem fine now. It's still not perfect and implementing some sort of order independent transparency algorithm would help improve things further.
adrien-ben commented
adrien-ben commented