I really think there should be blend factors using z-buffer values.
A simple example of how this could be used is with convex fog or translucent volumes. If we draw the backfacing polygons of a convex translucent volume first (for depth buffer values only) we can then draw the front polygons using the z-buffer difference as a factor for transparency.
The result could be an object that is more opaque where thicker and viceversa. You get the idea, right?
This could also work for drawing murky water as surfaces in concavities or containers, atmospheres around planets, etc. and shouldn’t be demanding.
I have not thought of more complex situations but the technique could probably have more potential or uses…
Does this sound reasonable? Am I overseeing some technical difficulty performance-wise?