【发布时间】:2020-06-19 19:33:24
【问题描述】:
我有一个使用“鼠标 X”输入在 y 轴上旋转的对象和一个通过 slerp 四元数的摄像机应该跟随对象的旋转。 不幸的是,当我用快速鼠标移动旋转对象时,slerp 相机的旋转停止,就好像它撞到墙上一样,并且不跟随对象的旋转。 如果没有四元数 slerp,它会跟随对象工作,但我需要使用插值来完成。
旋转对象(在 LateUpdate 中:
float rot = Input.GetAxisRaw("Mouse X") * speedrotation;
transform.Rotate(0, rot, 0);
旋转相机(在 LateUpdate 中):
var rot = Quaternion.Slerp(camera.transform.rotation, object.rotation, speed_rot * Time.deltaTime);
camera.transform.position = object.transform.position + rot;
camera.transform.LookAt(object.transform.position);
【问题讨论】:
标签: unity3d camera interpolation quaternions