[Mesa-dev] [PATCH 2/2] fbo: Only reuse depth/stencil attachments if the parameters match.

Chad Versace chad.versace at linux.intel.com
Thu Apr 26 17:11:49 PDT 2012


On 04/24/2012 12:23 PM, Paul Berry wrote:
> When the user attaches a texture to one of the depth/stencil
> attachment points (GL_STENCIL_ATTACHMENT or GL_DEPTH_ATTACHMENT), we
> check to see if the same texture is also attached to the other
> attachment point, and if so, we re-use the existing texture
> attachment.  This is necessary to ensure that if the user later
> queries what is attached to GL_DEPTH_STENCIL_ATTACHMENT, they will not
> receive an error.
> 
> If, however, the user attaches buffers to the two different attachment
> points using different parameters (e.g. a different miplevel), then we
> can't re-use the existing texture attachment, because it is pointing
> to the wrong part of the texture.  This might occur as a transitory
> condition if, for example, if the user attached miplevel zero of a
> texture to GL_STENCIL_ATTACHMENT and GL_DEPTH_ATTACHMENT, rendered to
> it, and then later attempted to attach miplevel one of the same
> texture to GL_STENCIL_ATTACHMENT and GL_DEPTH_ATTACHMENT.
> 
> This patch causes Mesa to check that GL_STENCIL_ATTACHMENT and
> GL_DEPTH_ATTACHMENT use the same attachment parameters before
> attempting to share the texture attachment.
> 
> On i965 Gen6, fixes piglit tests
> "texturing/depthstencil-render-miplevels 1024 depth_stencil_shared"
> and "texturing/depthstencil-render-miplevels 1024
> stencil_depth_shared".
> ---
>  src/mesa/main/fbobject.c |   14 +++++++++++---
>  1 files changed, 11 insertions(+), 3 deletions(-)

Reviewed-by: Chad Versace <chad.versace at linux.intel.com>


More information about the mesa-dev mailing list