2017-02-26 91 views
-1

我正在制作将与触觉反馈一起使用的应用程序。这意味着我需要每秒测试1000次碰撞。对于应用程序的可视化部分,我正在使用OpenGL。使用OpenGL延迟屏幕更新时的口吃视图

因此,我将FPS_CAP设置为1000 FPS,用于触觉反馈并测试每帧的冲突。现在屏幕无需每秒更新1000次,所以我想以30 FPS的速度进行上限。所以我做了一个计数器,它增加了两帧之间的时间,并让它计数到0.03。当它达到0.03时,我将它设置为0,清理我的屏幕并绘制所有的对象。

但是,当我现在移动我的相机或其中一个对象时,对象似乎无法“决定”渲染和拖延一下的位置。有人知道如何解决这个问题吗?我添加了一些伪代码,因为原始代码完全是荷兰语。

while !close_requested{ 
    counter += delta_time 
    if counter > 0.03{ 
     counter = 0 
     clearscreen() 
     calculate_matrices() 
     drawTriangles() 
    } 
    update_screen() 
} 
+0

而不是只是downvoting,请你给我一些反馈,以提高我的问题的质量? –

+0

即使原始代码是用非英文语言编写的,仍然值得一提,因为我们可以读取您编写的opengl/C++ /任何代码。 – scunliffe

回答