U3d中如何计算角度偏移
2022-9-2 17:24:57 点击:
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);//新的方向相对旧的方向的偏转角度
}
}
- 上一篇:没有啦
- 下一篇:常用的图片文件格式有哪些 2022/9/1


