gpt4 book ai didi

c - 从另一个线程重绘opengl

转载 作者:行者123 更新时间:2023-11-30 15:54:42 27 4
gpt4 key购买 nike

我正在开发一个项目,其中有一个 opengl 窗口和一个 gtk 窗口,现在我希望能够从 gtk 控制 opengl。

在 Gtk 窗口中,我有一个调用图像生成器的按钮,之后我想重绘 opengl 窗口,以便可以看到结果,但是如果我从按钮单击的回调中调用显示函数,则什么也不会发生。到目前为止,唯一有效的想法是当我将 glutIdleFunc 设置为我的显示函数时,这样 opengl 窗口就会不断重绘,但在我看来,必须有更好的方法。我还尝试使用 glutTimerFunc 来检查条件变量,但还有更好的方法吗?

我的想法是能够直接告诉/发信号/调用 opengl 显示函数或强制 glutMainLoop 进行迭代,每当我单击按钮时,但我真的不知道该怎么做。

有什么想法吗?

最佳答案

Any ideas?

不要使用 GLUT 或 GLFW 或任何其他 OpenGL 框架。您正在使用 GTK+,所以请坚持使用。 GTK+ 有一个 OpenGL 小部件。用那个。由于您的 OpenGL 代码已与 GTK+ 很好地集成,因此您可以使用 GLib 的正常信号事件机制(由 GTK+ 使用),无需多费周折。

关于c - 从另一个线程重绘opengl,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12780266/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com