Yeah,

I had the same issue.  Everything was working fine one day, and it was
broken the next.  I was able to convince myself that it happens when the
draw stage starts to take a long time.  I think I broke it (i.e. I
uncovered a pre-existing problem in my code) by adding more stuff to my
scene.  Depending on the threading model, if the draw stage is long, the
other threads start working on the osgText::Text object while the draw
stage is still working on it.  I'm sure somebody who knows a lot more
about how OSG does threading will write back and tell me I'm an idiot,
but that's my story and I'm sticking to it ;)

 

Glad to hear your problem is fixed.

 

-jv

 

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Kim C
Bale
Sent: Monday, February 25, 2008 10:44 AM
To: OpenSceneGraph Users
Subject: RE: [osg-users] Updating node position in event handler.

 

Hi justin,

 

Cheers for the heads up but changing the data variance seems to have
solved it. 

 

It's odd though because it was working fine as it was, but just recently
started crashing..

 

K.

 

________________________________

From: [EMAIL PROTECTED] on behalf of Vican,
Justin E.
Sent: Mon 25/02/2008 15:39
To: OpenSceneGraph Users
Subject: Re: [osg-users] Updating node position in event handler.

I have also noticed problems with updating osgText::Text objects in the
wrong stage of traversal.  I think this has something to do with
threading.  Are you crashing in the osgText::Text::computePositions()?
I dealt with this issue about 3 months ago, and I was able to resolve it
by moving the text string update of my osgText::Text object into a
osg::Drawable::UpdateCallback object.  I think the crash happens because
one thread is updating the text (re-computing glyphs) while another one
is trying to render them.  

 

... Robert just beat me to the punch.  Running single threaded should
also resolve the issue.

 

Hope this Helps,

Justin

 

From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] On Behalf Of Kim C
Bale
Sent: Monday, February 25, 2008 10:29 AM
To: OpenSceneGraph Users
Subject: RE: [osg-users] Updating node position in event handler.

 

Ah ok, bit of a follow up to that, the crash doesn't occur when updating
the position of the slider, but when it updates an osgText::Text object
using ->setText(string);

 

It will do it a few times and seems to crash intermittently if I change
it too often.

 

Any thoughts?

 

________________________________

From: [EMAIL PROTECTED] on behalf of Kim C Bale
Sent: Mon 25/02/2008 14:53
To: [email protected]
Subject: [osg-users] Updating node position in event handler.

I have written a small set of user ortho 2d interface classes one of
which includes a slider bar control.

I detect the intersection with the slider's geometry to check the mouse
has a hold of it and then update it's position based on the coordinates
I get from the event handlers 'drag' event.

The problem is that when I update the positionattitudetransform of the
slider geometry with the coordinates of the mouse from the event handler
i get a crash.

I have a feeling that it is because I am trying to update the position
in Drag event during the event traversal.

Is it it correct to assume that you should only update transformations,
geometry etc when in the update traversal?

If so how can I ensure that these changes are made in the update
traversal and not in the event loop?

My apologies for this rather vague description, hopefully someone will
see what I'm getting at.

Cheers,

Kim.

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

Reply via email to