•Operations
are not commutative
•Operations
are not idempotent
•Interaction
with hidden-surface removal
–Polygon
behind opaque one should be culled
–Translucent
in front of others should be composited
–Solution: make z-buffer read-only for translucent polygons
with glDepthMask(GL_FALSE);