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

标签 c++ opengl rotation

我正在使用一个简单的旋转多边形,它应该在用户单击并向上拖动时加速,并在用户单击并向下拖动时向下显示。不幸的是,我到处搜索,似乎找不到任何可以让我轻松控制速度的特定 GL 函数或变量(我也搜索了“帧速率”...)

是否有一个简单的调用/一系列调用来做这样的事情,或者我实际上需要在代码的不同部分使用计时器来做事吗?

最佳答案

OpenGL 会在您告诉它绘制东西的地方精确地绘制东西。它不知道上一帧渲染了什么或下一帧将渲染什么。 OpenGL 没有时间概念,没有时间,你就不可能有速度

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

关于c++ - 如何在 OpenGL 中更改对象的旋转速率?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12571634/

相关文章:

c++ - 优化此 OpenGL 渲染算法

c++ - Opengl GSL glUniform4fv 颜色不起作用

c++ - 以下代码是关于将经过排序的错误旋转某个值d

c# - 四边形相交算法

c++ - 如何将回调与 QPlainTextEdit 更改连接起来?

c++ - 在函数中返回带有 2 个可选构造函数的对象

c++ - C++父子进程共享队列

javascript - C++ 和 JS RegEx 等价于\p{L}

c++ - SFML Sprite std::list

image - 用鼠标旋转图像