Thanks, I appreciate the help. osgViewer::Viewer produces a segfault in
libOpenThreads:

    #0  0xb5dc577d in OpenThreads::Thread::setProcessorAffinity
    (this=0x80d1d78, cpunum=0)
        at
    
/local/abe/build-piglet/package/OpenSceneGraph/src/OpenThreads/pthreads/PThread.c++:505
    #1  0xb5dc589c in OpenThreads::SetProcessorAffinityOfCurrentThread
    (cpunum=0)
        at
    
/local/abe/build-piglet/package/OpenSceneGraph/src/OpenThreads/pthreads/PThread.c++:922
    #2  0xb4370771 in osgViewer::Viewer::setUpThreading (this=0x88ef878)
    at
    /local/abe/build-piglet/package/OpenSceneGraph/src/osgViewer/Viewer.cpp:898
    #3  0xb4370e16 in osgViewer::Viewer::realize (this=0x88ef878) at
    /local/abe/build-piglet/package/OpenSceneGraph/src/osgViewer/Viewer.cpp:1794
    #4  0xb4dada46 in _wrap_Viewer_realize (args=0x87eec4c) at
    
/local/abe/build-piglet/package/osgBindings/build-gcc/src/osgViewerPYTHON_wrap.cxx:10607

Further inspection of the call stack revealed that when executed via
glut Thread::CurrentThread() on line 919 of PThread.c++ returns zero
while when executed in the wx program returns a bogus pointer.

The function is invoked as:

    self.viewer = osgViewer.Viewer()
    pos = self.GetRect();
    self.viewer.setUpViewerAsEmbeddedInWindow( pos.x, pos.y, pos.width,
    pos.height )
    self.viewer.setThreadingModel(osgViewer.Viewer.SingleThreaded)       
    self.viewer.realize() # Causes segfault above.

Do you have any idea why this might be the case? I appreciate that this
problem is likely related to an interaction with python, but any advice
would be appreciated.

-Thanks
Abe

Robert Osfield wrote:
> Hi Abe,
>
> I don't know what might be up given your code fragment. SceneView is
> lower level that osgViewer::Viewer, so does require more care with
> setup, and its less powerful....
>
> Personally I wouldn't recommend using SceneView in your own code, just
> use osgViewer::Viewer and its embedded mode if you need to integrate
> with an existing window.   It's a waste of our time to struggle on
> trying to get SceneView do things that Viewer already does out of the
> box perfectly.
>
> Robert.
>
> On 8/30/07, Abe Stephens <[EMAIL PROTECTED]> wrote:
>   
>> Hi, I'm attempting to load an animated .osg scene exported from blender
>> into an existing application with minimal fuss. The existing application
>> has a basic glut front end and a more useful wxpython front end. I'm
>> having trouble getting animation to work properly:
>>
>> In the glut application using osgViewer::Viewer animation works when
>> I call:
>>
>>      viewer->advance()
>>      viewer->updateTraversal()
>>      viewer->renderingTraversal()
>>
>> However in the wxpython application, using osgUtil::SceneView animation
>> does not work. I am calling:
>>
>>      frameStamp = osg.FrameStamp()
>>      time =
>>      osg.Timer.instance().delta_s(self.start_tick,osg.Timer.instance
>> ().tick())
>>      frameStamp.setReferenceTime(time)
>>      frameStamp.setSimulationTime(time)
>>      frameStamp.setFrameNumber(self.framecounter)
>>      self.framecounter += 1
>>
>>      self.sceneviewer.setFrameStamp( frameStamp )
>>      self.sceneviewer.update()
>>      self.sceneviewer.cull()
>>      self.sceneviewer.draw()
>>
>> I noticed that unlike osgViewer::Viewer, SceneView::update() does not
>> appear to apply the update visitor to the scene data, only to the
>> camera.
>>
>> Any idea what I am doing wrong?
>>
>> Thanks-
>> Abe
>>
>>
>>
>> _______________________________________________
>> osg-users mailing list
>> [email protected]
>> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>>
>>     
> _______________________________________________
> osg-users mailing list
> [email protected]
> http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org
>   

_______________________________________________
osg-users mailing list
[email protected]
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to