Z-Buffers & Visibility
Question submitted by (22 September 1999)
|Return to The Archives|
|Is hardware z-buffering faster than using software rendering with bsp trees? I'm wondering if it's possible to make a 3D FPS (which is as good as unreal or half-life) using a 100% z-buffer engine on today's hardware. I figure 3dfx AGP video, 100 MHz bus, and 600 MHz processor must be capable of it. Ultimately it seems that z-buffering is the only 3d game engine method that has no drawbacks (aside from speed).|
This all depends on how many polygons you have. If you have a billion
polygons, obviously, hardware rendering will fail miserably when competing
against any form of visibility determination. In short, hardware rendering
is fast, but it's no replacement for visibility.
There exists a threshold in which visibility determination wins over brute force. This threshold is determined by the number of extra polygons rendered takes longer than determining not to draw them. This all depends on the speed of the renderer and the speed of the visibility system. This threshold is also skewed slightly by how conservative your visibility scheme is. If it's very conservative (i.e. it draws a LOT more polygons than are truely visible) then the threshold is pushed out a bit.
With the complexity of today's games, the polygon counts are well enough past that extended threshold to make visibility determination the winner.
Response provided by Paul Nettle
This article was originally an entry in flipCode's Fountain of Knowledge, an open Question and Answer column that no longer exists.