Hi I checked osgAnimation sources, and it looks like what you want can be done that easy. Animation calculation happens in update traversal, and directly changes RigGeometry vertex data, so with shared rig geometry all instances will look same. So i believe you need at least to create different RigGeometries in order to have different animations(though you can share source geometry between them).
Cheers. 17.08.2012, 18:41, "Thilo Weigel" <[email protected]>: > Hi Sergey, > > I removed the animation manager from the original model: > model->removeUpdateCallback(model->getUpdateCallback()); > and created a new animation manager with clones of the original animations: > osg::ref_ptr < osgAnimation::BasicAnimationManager > manager = new > osgAnimation::BasicAnimationManager; > for (unsigned int i = 0; i < modelManager->getAnimationList().size(); ++i) > { > osgAnimation::Animation* animation = dynamic_cast < osgAnimation::Animation* > >(modelManager->getAnimationList()[i]->clone(osg::CopyOp::DEEP_COPY_ALL)); > manager->registerAnimation(animation); > } > transform->addUpdateCallback(manager); > > The animations are still played on all instances - even if I add the > animation manager to only the first transform. > Do I have to remove more than just the updateCallback of the original model? > How is it possible that the animation is played on the second instance even > if there is no (animation) updateCallback added to it? > > Thank you! > > Cheers, > Thilo > > ------------------ > Read this topic online here: > http://forum.openscenegraph.org/viewtopic.php?p=49309#49309 > > _______________________________________________ > 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

