return false;\r
}\r
\r
- auto root = mSceneLoader->mScene;\r
- auto getActor = [&root](const Dali::Scene3D::Loader::AnimatedProperty& property) {\r
- return root.FindChildByName(property.mNodeName);\r
- };\r
-\r
if(mSceneLoader->mSceneAnimations.size() > animationIndex)\r
{\r
mCurrentAnimationIndex = animationIndex;\r
- mSceneLoader->mCurrentAnimation = mSceneLoader->mSceneAnimations[animationIndex].ReAnimate(getActor);\r
- mSceneLoader->mCurrentAnimation.FinishedSignal().Connect(this, &Scene3DExtension::OnAnimationFinished);\r
+ mSceneLoader->mCurrentAnimation = mSceneLoader->mSceneAnimations[animationIndex];\r
+ if(mSceneLoader->mCurrentAnimation.FinishedSignal().GetConnectionCount() == 0)\r
+ {\r
+ mSceneLoader->mCurrentAnimation.FinishedSignal().Connect(this, &Scene3DExtension::OnAnimationFinished);\r
+ }\r
mSceneLoader->mCurrentAnimation.Play();\r
}\r
}\r