Ok, so I have the unenviable task of rewriting software from the mid 1980's for 
our virtual reality/cave environment and while I'm rewriting all of this 
software I must make sure that it works with the older software so that 
operations can continue as before; yes, welcome to my world.

The system consists of over twenty different units each of which communicates 
with each other constantly via UDP and the first of these things to go is the 
viewer that was written using OSG .9x.

My viewer must request a dump of all file names and then wait for an end of 
dump message before I start rendering the scene.  However, since this is UDP 
and since there is no telling what the older software is doing (the older code 
uses void* like the fire department uses water) it ends up sending the packet 
with the file name to the wrong computer, fails to send the packet, or UDP just 
fails to make that left turn at Albuquerque and the packet is lost forever.  
So, now I need to request a resend and load all of the missed data into an 
actively running scene graph where every node is a leaf (I'm working on getting 
them to fix that part).

My viewer runs its own update loop in which it will computer inputs, compute 
other changes in the scene, and then check for any new nodes that have been 
received before calling the frame() function.

Since the root node of the scene may constantly change I was just thinking of 
making its variance DYNAMIC.  Of course that has been touted as very 
inefficient and I agree with that.  I had looked at inheriting from 
osg::Drawable::UpdateCallback but figure that I'd have to make the varience 
DYNAMIC anyhow so it wouldn't matter.  So, my question is, would there be a 
better way to make this thread safe other than setting the root node to DYNAMIC 
to avoid crashing when adding another node to the root?

And just in case you're wondering, I'm replacing the viewer first because it 
crashes the most of all of the other systems.

Thanks,
soulsabr

------------------
Read this topic online here:
http://forum.openscenegraph.org/viewtopic.php?p=43336#43336





_______________________________________________
osg-users mailing list
osg-users@lists.openscenegraph.org
http://lists.openscenegraph.org/listinfo.cgi/osg-users-openscenegraph.org

Reply via email to