[Mesa-dev] [PATCH] gallium: Set renderbuffer's InternalFormat when rendering to texture
Brian Paul
brianp at vmware.com
Thu Sep 29 08:32:57 PDT 2011
On 09/29/2011 07:51 AM, Simon Farnsworth wrote:
> When an FBO is rendering to a texture (rather than a renderbuffer),
> Gallium sets up an internal renderbuffer to handle the rendering, and
> copies over enough texture state to make this work.
>
> InternalFormat was missed out, causing glTexCopyImage to take a slow
> path unnecessarily.
>
> Fixes https://bugs.freedesktop.org/show_bug.cgi?id=41263
>
> Signed-off-by: Simon Farnsworth<simon.farnsworth at onelan.co.uk>
> ---
> src/mesa/state_tracker/st_cb_fbo.c | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c
> index 05139ec..4d32158 100644
> --- a/src/mesa/state_tracker/st_cb_fbo.c
> +++ b/src/mesa/state_tracker/st_cb_fbo.c
> @@ -381,6 +381,7 @@ st_render_texture(struct gl_context *ctx,
> rb->Width = texImage->Width2;
> rb->Height = texImage->Height2;
> rb->_BaseFormat = texImage->_BaseFormat;
> + rb->InternalFormat = texImage->InternalFormat;
> /*printf("***** render to texture level %d: %d x %d\n", att->TextureLevel, rb->Width, rb->Height);*/
>
> /*printf("***** pipe texture %d x %d\n", pt->width0, pt->height0);*/
Looks good. I see no piglit fbo/texture regressions. I'll push this
soon. Thanks.
-Brian
More information about the mesa-dev
mailing list