[osg-users] Multiple render passes and multithreading
Sebastian Messerschmidt
sebastian.messerschmidt at gmx.de
Wed May 3 09:11:44 PDT 2017
Hi Glenn,
> Sebastian,
>
> Have you tried setting the data variance to DYNAMIC on the StateSet
> containing the Uniform?
>
> That's the first thing I would try -- not sure whether it works on
> Uniforms though.
Thanks, that indeed did the trick :-)
Thinking twice makes it obvious; declaring it dynamic will prevent it
from being written to while being read.
Cheers
Sebastian
>
> Glenn Waldron
>
> On Wed, May 3, 2017 at 11:49 AM, Sebastian Messerschmidt
> <sebastian.messerschmidt at gmx.de <mailto:sebastian.messerschmidt at gmx.de>>
> wrote:
>
> Hi,
>
> I've just stumbled upon something I find hard to understand.
> My setup contains multiple cameras (using FBO and MRT) with a
> specific render-order set to them. The first camera is essentially a
> render-scene-to-MRT pass.
> In the simplest case a second camera will pick up the textures
> rendered to and use them to draw to the framebuffer.
>
> A cull-callback is attached to the group containing the cameras. The
> callback simply extracts the current ViewMatrix and passes it to the
> stateset as a uniform. This uniform is used in one of later
> cameras/passed to reconstruct worldspace from the depth buffer.
>
> Now while this all works great when setting the viewer to
> SingleThreaded, it seems that using multithreading in the viewer
> causes the Uniform for the ViewMatrix to be from the previous frame
> in some cases. From my understanding the cull-visitor runs
> asynchronously to the drawing, causing the uniform to be either from
> the correct or from another frame.
>
> What would be the multithreaded-cull/draw alternative to get the
> ViewMatrix (or any other camera-related values) used for rendering
> in the first camera down the chain reliably?
>
> Cheers
> Sebastian
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> <mailto:osg-users at lists.openscenegraph.org>
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
> <http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org>
>
>
>
>
> _______________________________________________
> osg-users mailing list
> osg-users at lists.openscenegraph.org
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>
More information about the osg-users
mailing list