, January 12th 2019
Quick update for the Anarchy Engine. I've been working on supporting transparent materials into the deferred pipeline. So now you can define models like this:
You can define transparency at the "object" level, and also at the "material" level (two different places). This is useful, as in the second picture, the fruitbowl is one model. However, it is composed of two meshes/materials, and the second (bowl) material is marked as transparent.
For some technical information, this is done by creating a secondary transparency buffer (RGBA16F). It's depth buffer is set to the main scene's GBuffer's depth buffer. This gives me free clipping from solid geometry when I draw transparent geometry. Before the transparent render pass, I queue all transparent objects to be drawn to a list, then sort based on distance to the camera. For now it is a fine solution. This may be changed in the future if performance becomes a problem.