[osg-users] switch between two camera
peter.amstutz at tseboston.com
Mon Mar 16 13:15:07 PDT 2009
The way I handled this in my application was to create multiple
instances of osgViewer::Viewer with a separate camera for each view but
all bound to the same output window. On each render iteration, draw
just the active camera.
The best solution depends on exactly what you need to display; I decided
to switch between completely independent scenes because my 2D and 3D
views looks actually render somewhat different geometry (the 2D ortho
view is an abstracted version of the "real" 3D geometry). Having
entirely separate scenes is also pretty straightforward although it
imposes some overhead due to duplication of resources that could
otherwise be shared between among views.
If having multiple osgViewer::Viewer objects isn't desirable, you could
also look at osgSim::MultiSwitch (depends heavily on the organization of
your scene graph) or use node masks (osg::Node::setNodeMask() and
osg::Camera::setCullMask()) to get fine grained control over which parts
of the scene to render for a given frame.
> thank's, but I don't see how to use osg::CameraViews, does somebody have a little example??
> I will try to specify more what I want to do.
> I have one scene to render with 2 differents views, one as a FPS 3D vue, and one as "2D vue" (the camera is on top with an orthografic vue).
> Each camera has its own manipulator.
> only one vue is displayed at once. I thought to make something like schema below, but I don't know how to made it with osg.
> [Image: http://nsa06.casimages.com/img/2009/03/13/09031302561860352.jpg ] (http://www.casimages.com)
> Read this topic online here:
> osg-users mailing list
> osg-users at lists.openscenegraph.org
More information about the osg-users