C++ 如何在OpenGL中更改对象的旋转速率?

C++ 如何在OpenGL中更改对象的旋转速率?,c++,opengl,rotation,C++,Opengl,Rotation,我正在使用一个简单的旋转多边形,当用户单击并向上拖动时,该多边形会加速,当用户单击并向下拖动时,该多边形会向下显示。不幸的是,我到处都搜索过,似乎找不到任何特定的GL函数或变量,它们也能让我轻松地控制搜索帧速率时的速度 是否有一个简单的调用/一系列调用来执行类似的操作,或者我是否真的需要在代码的不同部分使用计时器 OpenGL在你让它画东西的地方准确地画东西。它不知道上一帧渲染了什么或下一帧将渲染什么。OpenGL没有时间的概念,没有时间,就没有速度 速度是你必须管理的。通常,这是通过采用预期速

我正在使用一个简单的旋转多边形,当用户单击并向上拖动时,该多边形会加速,当用户单击并向下拖动时,该多边形会向下显示。不幸的是,我到处都搜索过,似乎找不到任何特定的GL函数或变量,它们也能让我轻松地控制搜索帧速率时的速度


是否有一个简单的调用/一系列调用来执行类似的操作,或者我是否真的需要在代码的不同部分使用计时器

OpenGL在你让它画东西的地方准确地画东西。它不知道上一帧渲染了什么或下一帧将渲染什么。OpenGL没有时间的概念,没有时间,就没有速度


速度是你必须管理的。通常,这是通过采用预期速度,将其乘以自上次渲染以来的时间间隔,然后将其添加到当前旋转或位置来完成的。然后在新的方向/位置进行渲染。但是,这一切都取决于您。

没有,也不应该有,因为假设您有一个恒定的帧速率,如果您增加多边形在每一帧旋转的角度,您的速度将增加。