2012-09-24 79 views
0

我正在处理一个简单的旋转多边形,当用户单击并向上拖动时,应该加速并在用户单击并向下拖动时显示。不幸的是,我搜索了无处不在,似乎无法找到任何具体的GL函数或变量,这将很容易让我操纵速度(我也搜索过“帧速率”......)如何在OpenGL中更改对象的旋转速度?

有没有简单的调用/一系列调用来做这样的事情,还是我真的需要在代码的不同部分对定时器做些事情?

+2

没有也不应该存在,因为假设您的帧速率不变,如果增加多边形在每个帧处旋转的角度,速度将会增加。 – Borgleader

回答

7

OpenGL在你告诉它绘制东西的地方绘制东西。它没有提供上一帧的内容或下一帧的内容的概念。 OpenGL没有时间观念,没有时间,你不能有速度

速度是必须管理。一般来说,这是通过获取预期的速度,乘以自上次渲染以来的时间间隔,并将其添加到当前旋转(或位置)中来完成的。然后渲染那个新的方向/位置。然而这完全取决于你。