Hi All,

I am currently working on moving stereo support from the low level
SceneView class up into the osgViewer library, the initial step for this
work has been to use the new osgkeystone example as the testbed for
creating the required viewer slave Camera's and configuration them to
handle the various types of stereo that the OSG supports via SceneView.  I
only have a pair of Anaglyphic classes here so can only directly test this
option, so need members of the community with the available hardware to
test the code I've written and report back success/failure/fixes.

To test you'll need the svn/trunk version of the OSG, if you need a dev
release I can tag one today, just let me know.  You'll need to compile the
OSG with examples enabled as my testbed osgkeystone is amongst the
examples.  Once you have everything built you can test things out via one
or more of the following:

osgkeystone cow.osg --stereo ANAGLYPHIC
osgkeystone cow.osg --stereo QUAD_BUFFER
osgkeystone cow.osg --stereo HORIZONTAL_SPLIT
osgkeystone cow.osg --stereo VERTICAL_SPLIT
osgkeystone cow.osg --stereo HORIZONTAL_INTERLACE
osgkeystone cow.osg --stereo VERTICAL_INTERLACE
osgkeystone cow.osg --stereo CHECKERBOARD

I have been able to run all of these options except the QUAD_BUFFER as my
OpenGL driver doesn't support quad buffer stereo, but as I don't have the
required hardware to test the options beyond ANAGLYPHIC I'm rather stuck in
knowing whether they are working correctly - I can run the options and they
run and behaves in a plausible way, but there is no way for me to know for
certain that everything is working fine.

I recall a long while back that the interlaced options were sensitive to
the viewport/window being moved resulting in the eyes getting swapped.
With the new code we should be able to add a small bit of code to
automatically odd/even positioning of the corner of the window+viewport and
they swap the eyes to avoid this glitch.  Again I can guess what the code
might be and write it but won't have any way of testing for it.

The final bit of the jigsaw is that if you want perfect aspect ratios and
fov set up the use the env vars OSG_SCREEN_HEIGHT, OSG_SCREEN_WIDTH and
OSG_SCREEN_DISTANCE to configure the stereo camera setup to perfectly fit
your display.

If there are other stereo options that you'd like to add to the mix then
have a look at the code in the osgkeystone.cpp and have a bash at adding
it, or just chip into this thread about how we might go about adding
support and getting it tested.

Another thing that could be open for discussion is alternative code paths
for OpenGL ES support - such as stencil buffer support or polygon stipple
that is currently used for the interlaced stereo approaches.

And... another area that we could look at is support for toggling on/off
stereo support, some apps will require this, let us know your usage model
so we can discuss how to best provide the ability.

Thanks in advance for your help,
Robert.
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to