On 03/07/2011 02:46 PM, Ian Romanick wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 03/07/2011 07:16 AM, Brian Paul wrote:
On 03/05/2011 09:26 PM, Marek Olšák wrote:
RenderTexture doesn't have to be called in invalidate_rb, I guess.
---
The patch looks good but there's one simple optimization that could be
made. If glRenderBufferStorage() is called with a new width/height but
the internalFormat stays the same, we wouldn't have to invalidate the
parent FBO(s).
I think changing the size of a renderbuffer would be more common than
channging its format.
That's only true if the driver supports ARB_fbo. With EXT_fbo a
framebuffer is incomplete if the attachments have mismatched sizes.
This is one of the error conditions that was removed in the ARB version.
Grrr, right. Even for GL_ARB_fbo we'll need to revalidate FBOs when
renderbuffers are resized because we compute the FBO's width/height as
the min of the attached renderbuffers.
I'm a little concerned about the efficiency of walking over all FBOs
whenever we change a renderbuffer like this. If it turns out to be a
problem when there's many FBOs we may need to keep a list of parent
FBOs for each renderbuffer.
Marek, your first patch is probably what we should commit.
There any drivers that support EXT_fbo and not ARB_fbo? If there are,
can we fix them? :) This would allow some other code cleanups as well.
-Brian
_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev