已知条件
Vector3 originDir; // 原始点坐标
Vector3 targetDir; // 需要插值旋转的点坐标
方法如下:
- 先求出当前位置到某一点的方向向量
- 转化为四元数
- 调整需要插值旋转的物体的旋转
代码如下:
Vector3 dir = targetDir - originDir;
Quaternion targetQua = Quaternion.LookRotation(dir);
obj.transform.rotation = Quaternion.Lerp(originDir,targetQua,Time.deltaTime * turnSpeed);