Cinemachine的Vcam在Origin shift后出现抖动
今天尝试给TPS挂接的VCam做OriginShifting。实现方式是在触发Shift的时候通过事件机制调用
OnTargetObjectWarped(_virtualCamera.Follow, offset);
然后发现:
- 在相机不进行任何旋转的时候状态正常
- 在相机shift的瞬间如果正好相机在进行旋转的更新,那么shift后会抖动(jitter)一帧
参考 这个 帖子,查阅cinemachine相关文档,以及自己瞎摆弄了几次后,问题得到了解决
- 确保CinemachineBrain的Update Method使用SmartUpdate或LateUpdate,让Vcam的更新时机不早于触发Shift动作
- 将VCam中Aim部分的Look ahead Time 降为0。否则Shift后,其Target的位置出现了偏移,进而导致Look ahead对Target的Motion计算错误,从而导致抖动