[Mesa-dev] [PATCH 4/5] intel: Add function intel_renderbuffer_hiz_alloc
Eric Anholt
eric at anholt.net
Tue Oct 18 15:51:08 PDT 2011
On Mon, 17 Oct 2011 07:40:27 -0700, Chad Versace <chad at chad-versace.us> wrote:
> This function allocates the HiZ region and initializes the HiZ control
> state for a depthbuffer.
>
> It is wise to define the logic for HiZ region allocation in a single
> location, since when MSAA arrives that logic will become more complicated.
>
> Signed-off-by: Chad Versace <chad at chad-versace.us>
> ---
> src/mesa/drivers/dri/intel/intel_fbo.c | 21 +++++++++++++++++++++
> src/mesa/drivers/dri/intel/intel_fbo.h | 8 ++++++++
> 2 files changed, 29 insertions(+), 0 deletions(-)
>
> diff --git a/src/mesa/drivers/dri/intel/intel_fbo.c b/src/mesa/drivers/dri/intel/intel_fbo.c
> index b7cfdb9..17397e1 100644
> --- a/src/mesa/drivers/dri/intel/intel_fbo.c
> +++ b/src/mesa/drivers/dri/intel/intel_fbo.c
> @@ -110,6 +110,27 @@ intel_framebuffer_get_hiz_region(struct gl_framebuffer *fb)
> return NULL;
> }
>
> +bool
> +intel_renderbuffer_alloc_hiz(struct intel_context *intel,
> + struct intel_renderbuffer *depth_irb)
> +{
> + struct intel_region *depth_region = depth_irb->region;
> + struct intel_hiz_control *hiz = &depth_irb->region->hiz;
> +
> + hiz->region = intel_region_alloc(intel->intelScreen,
> + I915_TILING_Y,
> + depth_region->cpp,
> + depth_region->width,
> + depth_region->height,
> + GL_TRUE);
> + if (!hiz->region)
> + return false;
> +
> + hiz->need_resolve = INTEL_HIZ_NEED_NO_RESOLVE;
> + hiz->depth_format = depth_irb->Base.Format;
> + return true;
> +}
The region is supposed to be a fraction of the depth region's height,
right?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: not available
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20111018/5a76a0c3/attachment.pgp>
More information about the mesa-dev
mailing list