> > I have encounter similar difficulties, and the solution i have found > > is to destroy the Cal3D Mixer, and create a new one. This can be > > done in soya by calling animate_reset(). It clears all cycle and > > executed action. > > Getting back to our problem, I think we should report a fix on > cal3d_wrapper to cal3d mantainers. If we are desesperate, we can > create our own wrapper or even create our own Mixer; for a example, a > python based Mixer. > > Once done that, there is need to add some extra def's to soya python > side. Because I did Mixer_Execute(autoLock=1), my animation was not > removed at the last frame. Calling animate_reset didn't work, because > it is not deleting the old instance, just creates a new one; so the > mesh stays as the "sum" of all animations. > We need to explicity call mixer::removeAction() [not exported by > cal3d_wrapper] to delete an auto-locked animation. > > > > Anyway, I think a will ask cal3d maintainers for this issue first...
Yes, go one, there is no problem with that for me. I think the best solution is to fix / improve Cal3D ; i've not done this because my C++ skills are not good enough :-( Actually, for me, animation_reset() sucessfully stops (and reset) cycles. I use only cycle, so i don't know for non-cycle animations. Jiba
