OpenGL - 当摄像机移动或旋转时对象会晃动



我在场景中将相机对象附加到移动对象(汽车)上。摄像头显示物体所在的区域和看向的区域(汽车的前窗)。

我的问题是,当我的物体(带摄像头)移动或旋转时,屏幕上的物体(路灯棒,其他汽车平行移动)似乎在晃动。也就是说,我看到固体物体和同一物体的一些小透明版本接近原始物体。当相机改变其方向时比直线移动时更容易观察到。直线移动时,灯光在远离观察者时会晃动,在某个范围内它们停止晃动,当它们靠近时,它们又开始晃动。

我不认为OpenGL本身会在背景上产生运动模糊。但是我也找不到这个问题的名字,所以我找不到起点。

当程序处于全屏模式,并且绘制完整场景所需的时间低于 16msec(对于 60fps)时,我可以在没有物体振荡的情况下进行平滑移动。

当绘制时间振荡太多或我将 Vega 设置为在算法上限制 fps 时,场景会振荡。

当我将交换间隔设置为 1 时,即让底层绘制线程与屏幕刷新匹配,那么它又没问题了。

最新更新