diff options
author | chai <chaifix@163.com> | 2020-10-13 07:02:26 +0800 |
---|---|---|
committer | chai <chaifix@163.com> | 2020-10-13 07:02:26 +0800 |
commit | 58a47386a711746d17c5c66ac897a53f7a4aad4b (patch) | |
tree | e73d4906280793b5fb3070fe258333e0ad988115 /Assets/Scripts/Test/RootConstainTest.cs | |
parent | 8b384dffa0d9c63c7a657c6e567c2ddefbf046cd (diff) |
+samurai & ninja animations
Diffstat (limited to 'Assets/Scripts/Test/RootConstainTest.cs')
-rw-r--r-- | Assets/Scripts/Test/RootConstainTest.cs | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/Assets/Scripts/Test/RootConstainTest.cs b/Assets/Scripts/Test/RootConstainTest.cs new file mode 100644 index 00000000..43c22b67 --- /dev/null +++ b/Assets/Scripts/Test/RootConstainTest.cs @@ -0,0 +1,35 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class RootConstainTest : MonoBehaviour +{ + // Start is called before the first frame update + void Start() + { + + } + + // Update is called once per frame + void Update() + { + + } + + private void OnAnimatorMove() + { + Animator animator = GetComponent<Animator>(); + + // 约束z=0 + if (animator) + { + //animator.ApplyBuiltinRootMotion(); + transform.position += new Vector3(animator.deltaPosition.x, animator.deltaPosition.y, 0); + transform.forward = animator.deltaRotation * transform.forward; + Vector3 euler = animator.deltaRotation.ToEuler(); + euler.x = euler.z = euler.y = 0; + transform.rotation *= Quaternion.Euler(euler); + } + } + +} |