U3d中如何计算角度偏移
2020-10-28 19:31:52 点击:
U3d角度偏移计算方法:
using UnityEngine; using System.Collections; public class UserAnimatorMove : MonoBehaviour { private Vector3 oldVector3; private Vector3 newVector3; private Quaternion oldQuaternion; private Vector3 newRotatinForward; void Start() { } void Update() { if (Input.GetKeyDown(KeyCode.F1)) { oldVector3 = this.transform.position; oldQuaternion = this.transform.rotation; } if (Input.GetKeyDown(KeyCode.F2)) { StartCoroutine(MovePoint()); } } private IEnumerator MovePoint() { // oldVector3 = this.transform.position; // oldQuaternion = this.transform.rotation; yield return new WaitForSeconds(0.2f); newVector3 = this.transform.position; newRotatinForward = this.transform.forward; float lenth = Vector3.Distance(oldVector3, newVector3); Vector3 velocity = Quaternion.Inverse(oldQuaternion) * newRotatinForward; float angle = Mathf.Atan2(velocity.x, velocity.z) * 180.0f / 3.14159f; Debug.Log(angle);//新的方向相对旧的方向的偏转角度 } }
- 上一篇:如何使用UNITY3D 中GUI组件 2020/10/30
- 下一篇:如何导入motionbuilder动作数据文件 2020/10/27