/// <summary> /// Constructs a new animation player. /// </summary> public AnimationPlayer(SkinningData skinningData) { if (skinningData == null) throw new ArgumentNullException("skinningData"); skinningDataValue = skinningData; boneTransforms = new Matrix[skinningData.BindPose.Count]; worldTransforms = new Matrix[skinningData.BindPose.Count]; skinTransforms = new Matrix[skinningData.BindPose.Count]; _currentAnimationClip = new AnimationClipInstance(skinningData.BindPose.Count); _targetAnimationClip = new AnimationClipInstance(skinningData.BindPose.Count); }
public override void LoadContent(ContentManager contentManager) { base.LoadContent(contentManager); Model = contentManager.Load<Model>(_assetFile); _skinningData = Model.Tag as SkinningData; Debug.Assert(_skinningData != null, "Model (" + _assetFile + ") contains no Skinning Data!"); _animationPlayer = new AnimationPlayer(_skinningData); _animationPlayer.SetAnimationSpeed(_speedScale); if (_initClipName != null) { PlayAnimation(_initClipName, _initLoop, _initBlendTime); } }
public override void LoadContent(ContentManager contentManager) { base.LoadContent(contentManager); _model = contentManager.Load<Model>(_assetFile); _skinningData = _model.Tag as SkinningData; System.Diagnostics.Debug.Assert(_skinningData != null, "Model (" + _assetFile + ") contains no Skinning Data!"); _animationPlayer = new AnimationPlayer(_skinningData); _animationPlayer.SetAnimationSpeed(_speedScale); _animationPlayer.AnimationComplete += s => { if (AnimationComplete != null) AnimationComplete(s); }; }