st/mesa: stop using _DepthBuffer, _StencilBuffer fields
We never want to use the depth/stencil buffer wrappers so always just use the attachment renderbuffers. This is a step toward removing the _DepthBuffer, _StencilBuffer fields. Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
22e806f570
commit
02d12719e3
|
@ -1182,12 +1182,9 @@ copy_stencil_pixels(struct gl_context *ctx, GLint srcx, GLint srcy,
|
|||
return;
|
||||
}
|
||||
|
||||
/* Get the dest renderbuffer. If there's a wrapper, use the
|
||||
* underlying renderbuffer.
|
||||
*/
|
||||
rbDraw = st_renderbuffer(ctx->DrawBuffer->_StencilBuffer);
|
||||
if (rbDraw->Base.Wrapped)
|
||||
rbDraw = st_renderbuffer(rbDraw->Base.Wrapped);
|
||||
/* Get the dest renderbuffer */
|
||||
rbDraw = st_renderbuffer(ctx->DrawBuffer->
|
||||
Attachment[BUFFER_STENCIL].Renderbuffer);
|
||||
|
||||
/* this will do stencil pixel transfer ops */
|
||||
_mesa_readpixels(ctx, srcx, srcy, width, height,
|
||||
|
@ -1484,7 +1481,8 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy,
|
|||
}
|
||||
else {
|
||||
assert(type == GL_DEPTH);
|
||||
rbRead = st_renderbuffer(ctx->ReadBuffer->_DepthBuffer);
|
||||
rbRead = st_renderbuffer(ctx->ReadBuffer->
|
||||
Attachment[BUFFER_DEPTH].Renderbuffer);
|
||||
color = ctx->Current.Attrib[VERT_ATTRIB_COLOR0];
|
||||
|
||||
fpv = get_depth_stencil_fp_variant(st, GL_TRUE, GL_FALSE);
|
||||
|
@ -1496,10 +1494,6 @@ st_CopyPixels(struct gl_context *ctx, GLint srcx, GLint srcy,
|
|||
/* update fragment program constants */
|
||||
st_upload_constants(st, fpv->parameters, PIPE_SHADER_FRAGMENT);
|
||||
|
||||
|
||||
if (rbRead->Base.Wrapped)
|
||||
rbRead = st_renderbuffer(rbRead->Base.Wrapped);
|
||||
|
||||
sample_count = rbRead->texture->nr_samples;
|
||||
/* I believe this would be legal, presumably would need to do a resolve
|
||||
for color, and for depth/stencil spec says to just use one of the
|
||||
|
|
|
@ -1385,10 +1385,7 @@ st_copy_texsubimage(struct gl_context *ctx,
|
|||
/* determine if copying depth or color data */
|
||||
if (texBaseFormat == GL_DEPTH_COMPONENT ||
|
||||
texBaseFormat == GL_DEPTH_STENCIL) {
|
||||
strb = st_renderbuffer(fb->_DepthBuffer);
|
||||
if (strb->Base.Wrapped) {
|
||||
strb = st_renderbuffer(strb->Base.Wrapped);
|
||||
}
|
||||
strb = st_renderbuffer(fb->Attachment[BUFFER_DEPTH].Renderbuffer);
|
||||
}
|
||||
else {
|
||||
/* texBaseFormat == GL_RGB, GL_RGBA, GL_ALPHA, etc */
|
||||
|
|
Loading…
Reference in New Issue