Why is it more efficient to draw alpha-tested objects after all solid objects?

Hi.

Unity documentation says,
It’s a separate queue from Geometry one since it’s more efficient to render alpha-tested objects after all solid ones are drawn.

In this article,
@bgolus says “many alpha tested surfaces may be occluded by the previously rendered opaque objects saving some time.” But I can’t understand how it is possible although early-z is disabled by alpha testing.

What makes it efficient to draw alpha-tested objects after all solid ones are drawn?

Alpha testing disables early z writes, but not early z rejection. Those are separate.

2 Likes

Oh… I didn’t realize that early-z rejection and write can be performed separately…
Thank you!