intel: Add hiz_region to intel_renderbuffer
authorChad Versace <chad@chad-versace.us>
Mon, 23 May 2011 20:48:04 +0000 (13:48 -0700)
committerChad Versace <chad@chad-versace.us>
Wed, 25 May 2011 14:41:32 +0000 (07:41 -0700)
commit7c0e6d9bbc11f7802c81df048eb721b5e15e8ece
treeb54d57574dbdbd6a9db1d55821fe3b34a7306dce
parenta9e65097855468529242f9076bd6ef2a6c8062c1
intel: Add hiz_region to intel_renderbuffer

A hiz surface must be supplied to the hardware when rendering to a depth
buffer with hiz. There are three potential places to store that surface:
    1. Allocate a larger intel_region for the depthbuffer, and let the
       region's tail be the hiz surface.
    2. Allocate a separate intel_region for hiz, and store it as
       brw_context state.
    3. Allocate a separate intel_region for hiz, and store it in
       intel_renderbuffer.

We choose method 3.

Method 1 has not been chosen due to future complications it might cause
when requesting a DRI drawable's depth buffer attachment from X.

Method 2 has not been chosen because storing the hiz region apart from
the depth region makes lazy hiz/depth resolves difficult to implement.

Reviewed-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Chad Versace <chad@chad-versace.us>
src/mesa/drivers/dri/intel/intel_fbo.c
src/mesa/drivers/dri/intel/intel_fbo.h