[osg-submissions] FrameBuffer Antialiasing

paul1492 at yahoo.com paul1492 at yahoo.com
Wed Mar 5 11:24:45 PST 2008


About the reason for the two FBO objects in RenderStage, its more or less needed. If you look at the NVIDIA simple_framebuffer_object.cpp example program I provided, you'll notice a data.fb and a data.resolveFB buffer.  In RenderStage, BOTH the _fbo and _fbo_multisample FBOs are used and BOUND together in this code in  RenderStage::drawInner:

    if (fbo_supported && 
        fbo_supportedMultisample && 
        _fbo_multisample.valid())
    {
        GLuint fboID = _fbo->getFboId(state);
        GLuint fboResolveID = _fbo_multisample->getFboId(state);
        fbo_ext->glBindFramebufferEXT(GL_READ_FRAMEBUFFER_EXT, fboID);
        fbo_ext->glBindFramebufferEXT(GL_DRAW_FRAMEBUFFER_EXT, fboResolveID);
        fbo_ext->glBlitFramebufferEXT(0, 0, _viewport->width(), _viewport->height(), 
                                      0, 0, _viewport->width(), _viewport->height(),
                                      GL_COLOR_BUFFER_BIT, GL_NEAREST);
        
        fbo_ext->glBindFramebufferEXT(GL_FRAMEBUFFER_EXT, 0);
    }

I attach the texture to the _fbo_multisample FBO and then the _fbo buffer has attached a color rendering buffer and a a depth render buffer which is required in order to do multisample rendering. The image doesn't get to the texture until the Blit is performed.

Also, here is the spec:
http://www.opengl.org/registry/specs/NV/framebuffer_multisample_coverage.txt
http://www.opengl.org/registry/specs/EXT/framebuffer_multisample.txt

Also, my full name is Paul Palumbo.

----- Original Message ----
From: Robert Osfield <robert.osfield at gmail.com>
To: OpenSceneGraph Submissions <osg-submissions at lists.openscenegraph.org>
Sent: Wednesday, March 5, 2008 5:57:31 AM
Subject: Re: [osg-submissions] FrameBuffer Antialiasing

Hi Paul,

I have just started viewing your changes.  The fact that they are all
done against 1.2 does rather complicate the process as that have been
many changes since 1.2 so its much harder to spot just the changes
that are made by you.  I am having a bash at the review though, my
guess is that some things we should be able to pull in without too
much difficulty other parts we'll have to rewrite from scratch.

The main thing that's I'm a bit perplexed is in your RenderStage
modifications, why you have introduced another FrameBufferObject
member variable just for doing the multi sample support rather than
reuse the existing FBO object.  What is the motivation behind this?

Also could you provide your full name so that I can use this in the
properly attribute the submission to you.

Thanks,
Robert.
_______________________________________________
osg-submissions mailing list
osg-submissions at lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-submissions-openscenegraph.org


      ____________________________________________________________________________________
Never miss a thing.  Make Yahoo your home page. 
http://www.yahoo.com/r/hs


More information about the osg-submissions mailing list