could this be possible

Started by
14 comments, last by Sneftel 16 years, 6 months ago
thanks to everyone who replied=)

anyways, i had been wondering, b/c I think games draw distances have been weak currently, and i'm obsessed with huge draw distances.

to me it had seemed that games that used the w-buffer (early 2000s and late 90s) had longer draw distances and no distance fog. unreal tournament was eye candy to me, because the draw distance and environments were so large, and to date, I haven't seen a game with draw distances like ut had. games that came somewhat close to those large draw distances of ut, were all around the same time, but the last time i saw those huge draw distances was in 2003 with enter the matrix.
Advertisement
If your z-buffer doesn't have enough precision to handle your long draw distances, you can draw the scene in two passes
e.g. For a 20km draw distance - First draw the scene using 10km as the near plane and 20km as the far plane, then clear the z-buffer and draw the scene using 1cm as the near plane and 10km as the far plane.
I think what you mean is, is it possible to have a hypothetical form of z-buffer which could handle scenes with z-near = 0, z-far = infinity?

If so then no it's not, even with the ability to store reals precisely (which a turing-machine can't, reals have a uncountably infinite number of values, turing machine's can only deal with countable infinite values) this would not be possible using a z-buffer. This doesn't, however, mean that it isn't possible to have such a scene, just that the z-buffer algorithm breaks down for such scenes and a different algorithm would have to be used.
Quote:Original post by zbuffersucks
anyways, i had been wondering, b/c I think games draw distances have been weak currently, and i'm obsessed with huge draw distances.

Draw distances generally have nothing to do with Z-buffering and everything to do with limiting scene complexity.
Quote:Original post by Julian90
I think what you mean is, is it possible to have a hypothetical form of z-buffer which could handle scenes with z-near = 0, z-far = infinity?

If so then no it's not, even with the ability to store reals precisely (which a turing-machine can't, reals have a uncountably infinite number of values, turing machine's can only deal with countable infinite values) this would not be possible using a z-buffer. This doesn't, however, mean that it isn't possible to have such a scene, just that the z-buffer algorithm breaks down for such scenes and a different algorithm would have to be used.


Thanks=)

what algorithims could be used instead that don't have any drawbacks except performance?

Quote:Original post by zbuffersucks
what algorithims could be used instead that don't have any drawbacks except performance?

If you didn't care about performance, you could do explicit, closed-form clipping between every pair of triangles in a scene, such that there would be no overdraw and no overlapping triangles left. If that were done, there'd be no need for a depth buffer, because there'd only be one triangle at every pixel.

This topic is closed to new replies.

Advertisement