private AnimationState LoadAnim(AnimGroup group, AnimIndex anim) { if (anim == AnimIndex.None) { return(null); } var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); var animName = animGroup[anim]; AnimationState state; if (!_loadedAnims.ContainsKey(animName)) { var clip = Importing.Conversion.Animation.Load(animGroup.FileName, animName, _frames); _loadedAnims.Add(animName, clip); _anim.AddClip(clip.Clip, animName); state = _anim[animName]; } else { state = _anim[animName]; } return(state); }
public bool GetAnimNameAndFile(AnimGroup group, AnimIndex anim, ref string animName, ref string fileName) { if (anim == AnimIndex.None) { return(false); } if (group == AnimGroup.None) { return(false); } if (null == this.Definition || string.IsNullOrEmpty(this.Definition.AnimGroupName)) { return(false); } var animGroup = AnimationGroup.Get(this.Definition.AnimGroupName, group); if (null == animGroup) { return(false); } animName = animGroup [anim]; fileName = animGroup.FileName; return(true); }
private void Play2Animations(int[] boneIds1, int[] boneIds2, AnimGroup group1, AnimGroup group2, AnimIndex animIndex1, AnimIndex animIndex2) { PlayerModel._anim[PlayerModel.GetAnimName(group1, animIndex1)].layer = 0; AnimationState state = PlayerModel.PlayAnim(group1, animIndex1, PlayMode.StopSameLayer); foreach (int boneId in boneIds1) { Frame f = PlayerModel.Frames.GetByBoneId(boneId); state.AddMixingTransform(f.transform, true); // runState.wrapMode = WrapMode.Loop; } PlayerModel._anim[PlayerModel.GetAnimName(group2, animIndex2)].layer = 1; state = PlayerModel.PlayAnim(group2, animIndex2, PlayMode.StopSameLayer); foreach (int boneId in boneIds2) { Frame f = PlayerModel.Frames.GetByBoneId(boneId); // state.RemoveMixingTransform(f.transform); state.AddMixingTransform(f.transform, true); // state.wrapMode = WrapMode.Loop; } state.weight = animationBlendWeight; // PlayerModel._anim.Blend( ); }
protected List <Key> ReadComp(float[] src, AnimIndex index) { List <Key> ret = new List <Key>(); if (index.Count == 1) { ret.Add(new Key(0f, src[index.Index], 0f, 0f)); } else { for (int j = 0; j < index.Count; j++) { Key key = null; if (index.KeyTangentType == TangentType.TangentIn) { key = new Key(src[index.Index + 3 * j + 0], src[index.Index + 3 * j + 1], src[index.Index + 3 * j + 2]); } else { key = new Key(src[index.Index + 4 * j + 0], src[index.Index + 4 * j + 1], src[index.Index + 4 * j + 2], src[index.Index + 4 * j + 3]); } ret.Add(key); } } return(ret); }
public AnimId(string fileName, string animName) { this.animGroup = AnimGroup.None; this.animIndex = AnimIndex.None; this.fileName = fileName; this.animName = animName; this.usesAnimGroup = false; }
public Anim GetAnim(AnimGroup group, AnimIndex anim) { var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); Anim result; return(_loadedAnims.TryGetValue(animGroup[anim], out result) ? result : null); }
public AnimId(AnimGroup animGroup, AnimIndex animIndex) { this.animGroup = animGroup; this.animIndex = animIndex; this.fileName = null; this.animName = null; this.usesAnimGroup = true; }
public void Save(XmlWriter writer) { writer.WriteElementString("AnimType", AnimType.ToString()); writer.WriteElementString("AnimIndex", AnimIndex.ToString()); writer.WriteElementString("FrameLength", FrameLength.ToString()); writer.WriteElementString("Anim1", Anim1.ToString()); writer.WriteElementString("Anim2", Anim2.ToString()); writer.WriteElementString("Anim3", Anim3.ToString()); }
private AnimationState LoadAnim(AnimGroup group, AnimIndex anim) { if (anim == AnimIndex.None) { return(null); } // if ("" == anim) // return null; if (group == AnimGroup.None) { return(null); } if (Definition == null || string.IsNullOrEmpty(Definition.AnimGroupName)) { return(null); } var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); if (null == animGroup) { return(null); } var animName = animGroup[anim]; // var animName = anim ; // if (!animGroup.HasAnimation (animName)) // return null; AnimationState state; if (!_loadedAnims.ContainsKey(animName)) { var importedAnim = Anim.Load(animGroup.FileName, animName, _frames); if (importedAnim != null && importedAnim.Clip != null) { _loadedAnims.Add(animName, importedAnim); _anim.AddClip(importedAnim.Clip, animName); state = _anim[animName]; } else { state = null; Debug.LogWarningFormat("Failed to load anim - file: {0}, anim name: {1}", animGroup.FileName, animName); } } else { state = _anim[animName]; } return(state); }
public AnimationState CrossFadeAnimQueued(AnimGroup group, AnimIndex anim, float duration, QueueMode queueMode, PlayMode playMode) { var animState = LoadAnim(group, anim); _curAnimGroup = AnimGroup = group; _curAnim = AnimIndex = anim; _anim.CrossFadeQueued(animState.name, duration, queueMode, playMode); return(animState); }
private AnimationState LoadAnim(AnimGroup group, AnimIndex anim) { string animName = null, fileName = null; if (GetAnimNameAndFile(group, anim, ref animName, ref fileName)) { return(LoadAnim(animName, fileName)); } return(null); }
public string GetAnimName(AnimGroup group, AnimIndex anim) { string animName = null, fileName = null; if (GetAnimNameAndFile(group, anim, ref animName, ref fileName)) { return(animName); } return(null); }
public Anim GetAnim(AnimGroup group, AnimIndex anim) { string animName = GetAnimName(group, anim); if (string.IsNullOrEmpty(animName)) { return(null); } return(GetAnim(animName)); }
public AnimationState PlayAnim(AnimGroup group, AnimIndex anim, PlayMode playMode) { var animState = LoadAnim(group, anim); _curAnimGroup = AnimGroup = group; _curAnim = AnimIndex = anim; _anim.Play(animState.name, playMode); return(animState); }
private AnimationState LoadAnim(AnimGroup group, AnimIndex anim) { if (anim == AnimIndex.None) { return(null); } // if ("" == anim) // return null; if (group == AnimGroup.None) { return(null); } if (Definition == null || (Definition != null && string.IsNullOrEmpty(Definition.AnimGroupName))) { return(null); } var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); if (null == animGroup) { return(null); } var animName = animGroup[anim]; // var animName = anim ; // if (!animGroup.HasAnimation (animName)) // return null; AnimationState state; if (!_loadedAnims.ContainsKey(animName)) { var clip = Anim.Load(animGroup.FileName, animName, _frames); if (clip.Clip != null) { _loadedAnims.Add(animName, clip); _anim.AddClip(clip.Clip, animName); state = _anim[animName]; } else { state = null; Debug.LogWarning(string.Format("File '{0}' doesn't exists!", animGroup.FileName)); } } else { state = _anim[animName]; } return(state); }
public Anim GetAnim(AnimGroup group, AnimIndex anim) { string animName = GetAnimName(group, anim); if (string.IsNullOrEmpty(animName)) { return(null); } Anim result; return(_loadedAnims.TryGetValue(animName, out result) ? result : null); }
public AnimationState RemoveMixingTransform(AnimGroup group, AnimIndex anim, Transform mix) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; animState.RemoveMixingTransform(mix); return(animState); }
public AnimationState PlayAnim(AnimGroup group, AnimIndex anim, PlayMode playMode = PlayMode.StopAll) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; _anim.Play(animState.name, playMode); return(animState); }
public AnimationState AddMixingTransform(AnimGroup group, AnimIndex anim, Transform mix, bool recursive) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; animState.AddMixingTransform(mix, recursive); return(animState); }
public AnimationState CrossFadeAnim(AnimGroup group, AnimIndex anim, float duration, PlayMode playMode) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; _anim.CrossFade(animState.name, duration, playMode); return(animState); }
public void PlayUpperLayerAnimations( AnimGroup upperLayerGroup, AnimGroup group, AnimIndex upperLayerIndex, AnimIndex animIndex) { LoadAnim(upperLayerGroup, upperLayerIndex); _anim[GetAnimName(upperLayerGroup, upperLayerIndex)].layer = 1; AnimationState state = PlayAnim(upperLayerGroup, upperLayerIndex, PlayMode.StopSameLayer); state.normalizedTime = 1; //state.AddMixingTransform(Spine, true); //foreach (Transform t in Spine.GetComponentInChildren<Transform>()) //{ // // runState.wrapMode = WrapMode.Loop; //} LoadAnim(group, animIndex); _anim[GetAnimName(group, animIndex)].layer = 0; state = PlayAnim(group, animIndex, PlayMode.StopSameLayer); state.AddMixingTransform(_root.transform, false); state.AddMixingTransform(L_Thigh, true); //foreach (Transform t in L_Thigh.GetComponentInChildren<Transform>()) //{ // // state.RemoveMixingTransform(f.transform); // // state.wrapMode = WrapMode.Loop; //} state.AddMixingTransform(R_Thigh, true); //foreach (Transform t in R_Thigh.GetComponentInChildren<Transform>()) //{ // // state.RemoveMixingTransform(f.transform); // // state.wrapMode = WrapMode.Loop; //} //state.weight = animationBlendWeight; // PlayerModel._anim.Blend( ); }
public void Load(int id) { var newDefinition = Item.GetDefinition <PedestrianDef>(id); if (null == newDefinition) { return; } PedestrianId = id; Definition = newDefinition; LoadModel(Definition.ModelName, Definition.TextureDictionaryName); _curAnim = AnimIndex.None; // _curAnim = "" ; _curAnimGroup = AnimGroup.None; _anim = gameObject.GetComponent <UnityEngine.Animation>(); if (_anim == null) { _anim = gameObject.AddComponent <UnityEngine.Animation>(); } LoadAnim(AnimGroup.WalkCycle, AnimIndex.Walk); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Run); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Panicked); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Idle); LoadAnim(AnimGroup.WalkCycle, AnimIndex.RoadCross); LoadAnim(AnimGroup.WalkCycle, AnimIndex.WalkStart); LoadAnim(AnimGroup.Car, AnimIndex.Sit); LoadAnim(AnimGroup.Car, AnimIndex.DriveLeft); LoadAnim(AnimGroup.Car, AnimIndex.DriveRight); LoadAnim(AnimGroup.Car, AnimIndex.GetInLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetInRight); LoadAnim(AnimGroup.Car, AnimIndex.GetOutLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetOutRight); LoadAnim(AnimGroup.MyWalkCycle, AnimIndex.IdleArmed); LoadAnim(AnimGroup.MyWalkCycle, AnimIndex.GUN_STAND); // LoadAllAnimations (); }
public AnimationState Blend(AnimGroup group, AnimIndex anim, float targetWeight, float fadeLength) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; animState.AddMixingTransform(Spine); _anim.Blend(animState.name, targetWeight, fadeLength); return(animState); }
public AnimationState Blend(AnimGroup group, AnimIndex anim) { var animState = LoadAnim(group, anim); if (null == animState) { return(null); } _curAnimGroup = group; _curAnim = anim; animState.AddMixingTransform(Spine); _anim.Blend(animState.name); return(animState); }
public AnimationState PlayAnim(AnimGroup group, AnimIndex anim, bool resetModelStateIfAnimChanged, bool resetAnimStateIfAnimChanged) { bool animChanged = this.AnimGroup != group || this.animIndex != anim; if (resetModelStateIfAnimChanged && animChanged) { this.ResetModelState(); } var state = PlayAnim(group, anim); if (resetAnimStateIfAnimChanged && animChanged) { state.enabled = true; state.normalizedTime = 0; state.speed = 1; state.weight = 1; state.wrapMode = this.AnimComponent.wrapMode; } return(state); }
private void Load(int id) { _curPedestrianId = PedestrianId; Definition = Item.GetDefinition <PedestrianDef>(id); if (Definition == null) { return; } LoadModel(Definition.ModelName, Definition.TextureDictionaryName); _curAnim = AnimIndex.None; _curAnimGroup = AnimGroup.None; _anim = gameObject.GetComponent <UnityEngine.Animation>(); if (_anim == null) { _anim = gameObject.AddComponent <UnityEngine.Animation>(); } LoadAnim(AnimGroup.WalkCycle, AnimIndex.Walk); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Run); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Panicked); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Idle); LoadAnim(AnimGroup.WalkCycle, AnimIndex.RoadCross); LoadAnim(AnimGroup.WalkCycle, AnimIndex.WalkStart); LoadAnim(AnimGroup.Car, AnimIndex.Sit); LoadAnim(AnimGroup.Car, AnimIndex.DriveLeft); LoadAnim(AnimGroup.Car, AnimIndex.DriveRight); LoadAnim(AnimGroup.Car, AnimIndex.GetInLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetInRight); LoadAnim(AnimGroup.Car, AnimIndex.GetOutLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetOutRight); }
private AnimationState LoadAnim(AnimGroup group, AnimIndex anim) { if (anim == AnimIndex.None) { return null; } var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); var animName = animGroup[anim]; AnimationState state; if (!_loadedAnims.ContainsKey(animName)) { var clip = Importing.Conversion.Animation.Load(animGroup.FileName, animName, _frames); _loadedAnims.Add(animName, clip); _anim.AddClip(clip.Clip, animName); state = _anim[animName]; } else { state = _anim[animName]; } return state; }
private void loadModel(int id, AnimGroup group, AnimIndex index) { pedestrian.Load(id); pedestrian.PlayAnim(group, index, PlayMode.StopAll); }
public string this[AnimIndex type] { get { return _animations[(int) type]; } }
public Anim GetAnim(AnimGroup group, AnimIndex anim) { var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); Anim result; return _loadedAnims.TryGetValue(animGroup[anim], out result) ? result : null; }
public AnimationState CrossFadeAnimQueued(AnimGroup group, AnimIndex anim, float duration, QueueMode queueMode, PlayMode playMode) { var animState = LoadAnim(group, anim); _curAnimGroup = AnimGroup = group; _curAnim = AnimIndex = anim; _anim.CrossFadeQueued(animState.name, duration, queueMode, playMode); return animState; }
public AnimationState PlayAnim(AnimGroup group, AnimIndex anim, PlayMode playMode) { var animState = LoadAnim(group, anim); _curAnimGroup = AnimGroup = group; _curAnim = AnimIndex = anim; _anim.Play(animState.name, playMode); return animState; }
private void Load(int id) { _curPedestrianId = PedestrianId; Definition = Item.GetDefinition<PedestrianDef>(id); if (Definition == null) return; LoadModel(Definition.ModelName, Definition.TextureDictionaryName); _curAnim = AnimIndex.None; _curAnimGroup = AnimGroup.None; _anim = gameObject.GetComponent<UnityEngine.Animation>(); if (_anim == null) { _anim = gameObject.AddComponent<UnityEngine.Animation>(); } LoadAnim(AnimGroup.WalkCycle, AnimIndex.Walk); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Run); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Panicked); LoadAnim(AnimGroup.WalkCycle, AnimIndex.Idle); LoadAnim(AnimGroup.WalkCycle, AnimIndex.RoadCross); LoadAnim(AnimGroup.WalkCycle, AnimIndex.WalkStart); LoadAnim(AnimGroup.Car, AnimIndex.Sit); LoadAnim(AnimGroup.Car, AnimIndex.DriveLeft); LoadAnim(AnimGroup.Car, AnimIndex.DriveRight); LoadAnim(AnimGroup.Car, AnimIndex.GetInLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetInRight); LoadAnim(AnimGroup.Car, AnimIndex.GetOutLeft); LoadAnim(AnimGroup.Car, AnimIndex.GetOutRight); }
public AnimationState PlayAnim(AnimGroup animGroup, AnimIndex animIndex, PlayMode playMode = PlayMode.StopAll) { return(PlayAnim(new AnimId(animGroup, animIndex), playMode)); }
public string GetAnimName(AnimGroup group, AnimIndex anim) { var animGroup = AnimationGroup.Get(Definition.AnimGroupName, group); return(animGroup[anim]); }
public string this[AnimIndex type] { get { return(_animations[(int)type]); } }