Felix Kühling wrote:
Hi,

I want to share an idea that I had, which drastically improves the depth
buffer quality on Savage4 hardware. Maybe the same can be applied to
different hardware too.

Short version: reverse the depth range (z' = 1 - z) such that far
coordinates map to z'=0 and near coordinates to z'=1. Then use a
floating point format to store depth values in the depth buffer. Of
course the hardware needs to support a floating point depth buffer.

I'm a bit sceptical that this really improves depth buffer quality in general. With D3D it is (if the hw supports it) possible to use a w buffer instead of a z buffer, which has the same precision for far and near objects. However, the loss of precision for near objects was often considered unacceptable. (Radeon R100 and R200 support this, but R300 and up no longer do, or at least the driver doesn't expose it, so it looks like it wasn't that useful after all, and not many applications afaik requested w buffers).


Roland


------------------------------------------------------- The SF.Net email is sponsored by: Beat the post-holiday blues Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek. It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt -- _______________________________________________ Dri-devel mailing list Dri-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to