Glossary 3D Game Graphics / Term
An additional portion of memory which stores a 3D object's value on the Z-axis (depth). The graphic controller can decide to draw or delete certain lines by constantly comparing Z-values in this buffer, and therefore make certain parts visible or hidden to the viewer. Part of the memory where the depth value of pixel is stored. Space has three coordinates x, y and z. Assuming that the x-axis and the y-axis define the plane in which the screen is included, the z-axis measures the distance from a point to the screen. The z-buffer is a portion of memory used to store the coordinate on the z-axis of the closest opaque point for each value of x and y. The value of the z-axis allows the card to determine whether a pixel is visible or not. A 16bit number that represents the Z-value (depth). High values are far away while small ones are close to you.
You need 640x480x16= 4915200 bits at a resolution of 640x480 with a Z-buffer size of 16bits. It is equivalent to adding one extra frame to the framebuffer for Voodoo Cards. It is trivial that at a resolution of 800x600 the Voodoo based cards can not use a Z-buffer because they only have 2Mb for frame- and Z-buffering. They would need 800x600x16x3bits or 2.7Mb.No problem with 640x480 : 1.8Mb required.
Generally a dedicated z-buffer increases frame rates but since it requires memory it is more expensive. AGP should help solve this problem since AGP will allow the 2D/3D card to access main memory for the z-buffer.
An alternative to a dedicated z-buffer is used by the PowerVR which uses a technique called Hidden Surface Removal to determine whether a pixel is visible or not, and so it does not need any memory for this process.
Permanent link Z-Buffer - Creation date 2020-06-21