不断更新 Opengl window
update Opengl window continuously
我正在使用 Qt、OpenGL 和 GLEW 在四边形上映射纹理并渲染它。我想改变每一帧的纹理并不断更新 window 。我怎样才能强制它持续更新?
问题已解决,如评论中所述,通过添加计时器并将其连接到插槽以发出更新功能信号。
如果你的意思是交换缓冲区,你需要在每一帧调用你的平台特定交换函数(wglSwapBuffers、glXSwapBuffers 等)并确保 vsync 被禁用。如果您的意思是让 window 调整大小,这不是 open gl 特定的问题,这也取决于 windowing 系统。
如果您使用 qt 创建 window 并管理鼠标移动等事件,可能会导致应用程序在重新绘制 [=16= 之前等待事件发生].我认为您可以使用 QTimer
对象并将其超时信号连接到您的更新函数。
否则,如果您使用某些 waitEvent()
函数处理事件,请将其更改为非阻塞版本。
我正在使用 Qt、OpenGL 和 GLEW 在四边形上映射纹理并渲染它。我想改变每一帧的纹理并不断更新 window 。我怎样才能强制它持续更新?
问题已解决,如评论中所述,通过添加计时器并将其连接到插槽以发出更新功能信号。
如果你的意思是交换缓冲区,你需要在每一帧调用你的平台特定交换函数(wglSwapBuffers、glXSwapBuffers 等)并确保 vsync 被禁用。如果您的意思是让 window 调整大小,这不是 open gl 特定的问题,这也取决于 windowing 系统。
如果您使用 qt 创建 window 并管理鼠标移动等事件,可能会导致应用程序在重新绘制 [=16= 之前等待事件发生].我认为您可以使用 QTimer
对象并将其超时信号连接到您的更新函数。
否则,如果您使用某些 waitEvent()
函数处理事件,请将其更改为非阻塞版本。