public void AssignAnimatorController(GameObject rootGameObject, AnimationClip animationClip)
            {
                CREditorUtils.GetRenderersFromRoot(rootGameObject, out arrNormalMeshRenderer_, out arrSkinnedMeshRenderer_);

                animator_ = rootGameObject.GetComponent <Animator>();
                animator_.runtimeAnimatorController = animatorSampler_;

                runtimeAnimationController_ = animator_.runtimeAnimatorController;
                ovrrAnimationController_    = new AnimatorOverrideController();

                ovrrAnimationController_.runtimeAnimatorController = runtimeAnimationController_;

#if CR_UNITY_5_X
                AnimationClip[] clips = ovrrAnimationController_.animationClips;
                foreach (AnimationClip animClip in clips)
                {
                    ovrrAnimationController_[animClip] = animationClip;
                }
                animator_.runtimeAnimatorController = ovrrAnimationController_;
#endif

#if CR_UNITY_4_X
                AnimationClipPair[] clips = ovrrAnimationController_.clips;
                foreach (AnimationClipPair animClipPair in clips)
                {
                    animClipPair.overrideClip = animationClip;
                }
                animator_.runtimeAnimatorController = ovrrAnimationController_;
#endif
            }
 public CRAnimatorInfo(GameObject rootGameObject)
 {
     CREditorUtils.GetRenderersFromRoot(rootGameObject, out arrNormalMeshRenderer_, out arrSkinnedMeshRenderer_);
     AssignBodyIds();
 }