CompositeViewer support: Difference between revisions

Jump to navigation Jump to search
m
Line 145: Line 145:
* as long as you have two GPU's the most efficient way to drive them should be multi-threaded - there is a caveat though, hardware and drivers aren't always up to scratch, and even then they should be able to manage the multi-threads and multi-gpus seemless they fail too.<ref>https://www.mail-archive.com/osg-users@lists.openscenegraph.org/msg18332.html</ref>
* as long as you have two GPU's the most efficient way to drive them should be multi-threaded - there is a caveat though, hardware and drivers aren't always up to scratch, and even then they should be able to manage the multi-threads and multi-gpus seemless they fail too.<ref>https://www.mail-archive.com/osg-users@lists.openscenegraph.org/msg18332.html</ref>
* Cull and draw can only run in a parallel once all the dynamic geometry has been dispatched, otherwise the draw will be dispatching data that is being modified by the next frames update and cull traversals. Perhaps you have some dynamic geometry or StateSet's that are holding back the next frame. <ref>https://www.mail-archive.com/osg-users@lists.openscenegraph.org/msg36238.html</ref>
* Cull and draw can only run in a parallel once all the dynamic geometry has been dispatched, otherwise the draw will be dispatching data that is being modified by the next frames update and cull traversals. Perhaps you have some dynamic geometry or StateSet's that are holding back the next frame. <ref>https://www.mail-archive.com/osg-users@lists.openscenegraph.org/msg36238.html</ref>
The ThreadPerCamera is just shorthand for
CullThreadPerCameraDrawThreadPerContext, which will explain a bit more
what's actually happening - it's meant to allow the draw thread to
progress in parallel with the next frame.
There is a mechanism built into the backend to hold back the next
frame if there are any Drawables or StateSet's with their DataVariance
marked as DYNAMIC, however, if your whole scene is STATIC then this
will allow the next frame to advance.  There isn't any default
additional mechanism for holding back the next frame.  There are
mechanisms for doing a swap ready check for multi-context systems <ref>https://www.mail-archive.com/osg-users@lists.openscenegraph.org/msg72040.html</ref>


=== Sharing scenes ===
=== Sharing scenes ===

Navigation menu