场景
在做FPS游戏的时候,遇到了个问题,就是鼠标移动视角的时候,镜头会有抖动的现象
解决方案
1.视角移动写在LateUpdate中
- 其中一个常见的原因就是你的摄像机跟随和人物的移动都写在了 Update 函数中,我们希望的是摄像机在人物移动后跟随,但 Update 更新之间的频率是不固定的,所以很难保证“摄像机会不会跑到了人物移动的前面的”现象,即所谓的屏幕抖动。
但是我尝试了一下,并不能解决我的问题
2.先转动Object再转动视角
- 我的代码是下面这样的
// 相机转动
transform.rotation = Quaternion.Euler(rotationVector3.x, rotationVector3.y, 0);
// 外骨骼跟着转动,(但是只围着Y轴转动)
bodyTransform.rotation = Quaternion.Euler(0, rotationVector3.y, 0);
- 这样先转视角再转骨骼会造成抖动!应该将上面两句的顺序颠倒!