/// <summary> /// Starts decoding the specified animation clip. /// </summary> public void StartClip(AnimationClip clip, bool loop, float blendTime) { if(IsPauzed) { IsPauzed = false; return; } if(clip==null) throw new ArgumentNullException("clip"); if (_currentAnimationClip.Clip == clip || _targetAnimationClip.Clip == clip) return; if (blendTime>0 && _currentAnimationClip.Clip != null) { _currentBlendTime = TimeSpan.Zero; _totalBlendTime = TimeSpan.FromSeconds(blendTime); _targetAnimationClip.SetAnimationClip(clip, loop); skinningDataValue.BindPose.CopyTo(_targetAnimationClip.BoneTransforms, 0); } else { _targetAnimationClip.Reset(true); _currentAnimationClip.SetAnimationClip(clip, loop); skinningDataValue.BindPose.CopyTo(_currentAnimationClip.BoneTransforms, 0); } }
public void StartClip(AnimationClip clip, bool loop) { StartClip(clip, loop, 0f); }
public void SetAnimationClip(AnimationClip clip, bool isLooped) { Clip = clip; IsLooped = isLooped; Reset(false); }
public void StartClip(AnimationClip clip) { StartClip(clip,true,0f); }
public void SetAnimationClip(AnimationClip clip) { SetAnimationClip(clip,true); }