FiringSquad: Home of the Hardcore Gamer - Games, Hardware, Reviews and NewsSubmit your own or view users' CPU overclocking results!

  
 Home   News   THE MATRIX   Deals   Hardware   Games   Features   Media   Products   Forums   FS China 
AddThis Social Bookmark Button

Home : Guides : Optimizing Performance : FS Guides: Occlusion Culling
» Join the Greatest Gaming Community NOW! (It's free)

Already a member? Login
 



Random Gallery >> 
Click to view high-res Image!
ARMA 3 February 2012 Screenshots [4] (0)

My First Entry For Crank That S#!T Up! (2) by deathknight.92
Crank That PhysX UP! (10) by mohawkade
My Entry For The Contest. (6) by D4rk Force
My Crank That Sh#!t Up! entry :D (3) by chipmunk995
My Entry for the Crank that SH#!T Up Contest (12) by TheGamesHD
CRANG That S#!T Up! (15) by ElwinRansom
My crank that S#!t Up entry! (13) by zin_onos
My Crank that S#!t up entry :) (15) by ZEZgames
Superlative Computer (6) by arvernis
Crank THIS sH!t up! - 3DforREAL (71) by nGAGE

More Blogs >>




FS Guides: Occlusion Culling
January 14, 2002  
Product Info | User Reviews | Article Images(1) | Image Gallery | Comments | Forum Thread
Hierarchical Z-buffer

HyperZ – Theory and application

Graphics guru Ned Greene originally developed hierarchical Z-buffering for quickly rendering scenes with very high depth complexities. The general concept of hierarchical Z-buffering is to use multiple Z-buffer resolutions to progressively determine object visibility. Originally, Greene used octrees to efficiently implement this.

Of today’s 3D graphics accelerators, only ATI uses hierarchical Z-buffering. While not the complete implementation that Greene originally proposed, it can offer considerable gains in texturing. ATI’s hierarchical Z-buffering is part of what they call HyperZ -- a few different hardware functionalities designed to reduce bandwidth requirements and increase rasterization performance.

The hierarchical Z-buffering implementation works by first keeping a reference Z value for every 8x8 pixel block of the Z-buffer. This reference value must be the deepest (furthest) value of all pixels in the block, with each block being determined by tiling the buffer. Keeping each value creates a low-resolution Z-buffer, which is then used for determining a rough visibility estimate.

Initially, the Z buffer is cleared, or filled entirely with values of zero. To see a benefit from the hierarchical Z, at least one object must be rendered. We’ll assume that a single triangle is rendered that covers the entire screen. For each 8x8 block of the triangle, the deepest Z value is kept as a reference value. As we go to render the next object(s), it is broken down into 8x8 pixel blocks. From each 8x8 pixel block, the furthest pixel Z value (ATI actually does this per-vertex with the new block) is compared to the reference value of the 8x8 block that exists in the Z-buffer, which is the render location for the new block. In this comparison, if the reference value on the existing block is found to be closer to the viewer than the new one, the new one is culled and the next block is compared. However, if the new block is determined to be nearer than the existing one, the new one must be rendered.

The primary issue, as some may have noted, is that if only a single pixel in the 8x8 block is nearer to the viewer than the deepest-existing one, the entire block must be rendered. This provides a loss in the total gain achieved by a hierarchical Z in comparison to early Z checking. On the other hand, with each reference value being stored on-chip (or a single value lookup per-block), the memory bandwidth requirements are dramatically lower.


Back! Early check-out     Deferred Rendering and PowerVR Next!
Blog + Share: Digg Del.icio.us Reddit SU furl • More: AddThis Social Bookmark Button
Send This Article to a Friend!  
Table of Contents
  Print Entire Article  

MATRIX CONTENT » RANDOM MEDIA BLOG More Blogs >>
No ratings yet
» Please rate this
Read this Media-Blog entry!» CRANG That S#!T Up! (15)
by ElwinRansom (11) Talk with this user on their Shout Box (My other blogs) Posted 18 months ago


 Latest Headlines
New Alan Wake screens compare PC graphics to Xbox (0)
Mass Effect 3 PC Demo Impressions (3)
PC Game Sales for Wednesday, February 15th (0)
Assassin's Creed 3 announced, coming in October (7)
Syndicate launch trailer gets down to business (0)
Today's News >>
Today's Siteseeing >>


 Table of Contents


 Random Fact
www.ngreene.com - no need for Z-ordering here. Not even a hidden message in the source.

FiringSquad is powered by... Back to Top Site MapContact UsAdvertise With Us Privacy StatementAbout Us  
News RSSSiteseeing RSSArticle RSS   © 1998-2012 FS Media, Inc. All Rights Reserved