Hi Cary,

I usually use

the combination DEEP_COPY_NODES | DEEP_COPY_CALLBACKS.
It works in my use case, where I need to instance dynamic objects (such as cars) which need to keep their individual DoF, Switches and Animations. I intentionally left out the flatten-static transform optimizations, but It might work if you visit your models transforms before optimizing and tag them as Dynamic. As far as I remember, nodes tagged DYNAMIC wont be touched by the Optimizer.

Regarding the vertices: With the options above the arrays will be shared I guess, which is exactly what I want, since I only want to duplicate the "structure" but not the geometry. If you clone the arrays each instance will have its own geometry, which might have a big impact on performance.

cheers
Sebastian

As our simulation runs we can add and remove models and many times the same model repeatedly. We only load the physical model once and then clone it for each instance we need. Each model can contain matrix transforms, switches, LODs, and update callbacks that all need to be unique. I am trying to limit how much we are actually cloning now since we don't necessarily have all of these things in every model. For example if we have a light pole that is use 100 times, we don't even need to clone, we can just add the child directly to the scene under different matrix transforms. The problem is in understanding when I actually need to clone and what type of options I need.

I know I need to use the DEEP_COPY_ARRAYS when I need the actual vertices to be different, which does happen sometimes when I add a matrix that gets flattened on to the model. However, for switches, dynamic matrixTransforms, LODS, and callbacks, when do I use the different options? So far I have only gotten everything to work for those when I do a DEEP_COPY_NODES. Do I really need this, or would some subset of other options work?

I guess my main question is when are each of the various DEEP_COPY_ options needed?



_______________________________________________
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