Sounds quite interesting.
-----Original Message-----
From: [email protected]
[mailto:[email protected]] On Behalf Of Benjamin Wasty
Sent: Friday, January 21, 2011 3:13 AM
To: [email protected]
Subject: Re: [osg-users] OSG and QT example
Hi,
I worked on a Qt-widget integration for my university based on the Delta3D
files posted earlier by David Guthrie. I made a few changes - mainly to make
multi-threaded rendering really work.
We'd be willing to make a submission if there's interest. My current version is
attached - feedback would be welcome as this is the first time I worked with
OSG.
Below are some details and open issues:
The class QtViewer inherits from osgViewer::Viewer and
OSGAdapterWidget. It does some setup and calls frame() in its updateGL() method.
Context sharing between Qt and OSG didn't work when OSG was running
multi-threaded - in the end (after quite a few hours of debugging) I just
'switched' the two contexts in OSGAdapterWidget - the QGLWidget keeps its
original one and the additional one created in threadedInitializeGL() is used
by the OSG draw thread (OSGGraphicsWindowQt directs the
makeCurrent/doneCurrent()-calls to that context).
Improved mapping from Traits/osg::DisplaySettings to QGLFormat
Removed QtGuiWindowSystemWrapper and GLWidgetFactory because we don't
need them (but only commented out)
No rendering when Widget is hidden (otherwise some access violation
occurs)
One remaining problem is that there is quite a lag when the main window is
moved or resized, because Qt apparently doesn't have enough time to render
fluently due to the blocking caused by vsync. Increasing the interval for the
update timer helps, but reduces the framerate and in my opinion the now used
10ms are already too much.
Should the frame()-call maybe moved to a separate thread like there:
forum . openscenegraph . org / viewtopic.php?p=17387#17387 ? (2 posts before I
can post URLs? I don't have time for that...)
A quick test with that code didn't work, but I didn't pursue it further so far.
------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=35820#35820
_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org