我目前正在尝试让Qt与我现有的程序一起工作。
我正在使用SFML来创建我的OpenGL渲染上下文并创建窗口。然而,到目前为止我尝试过的东西总是通过Qt创建一个单独的窗口,而不仅仅是渲染到现有的上下文中。
有什么方法可以强制Qt渲染到已经存在的OpenGL上下文中吗?
我没有研究具体细节,但这已经是为开放而做的。
我认为查看QQuickRenderControl的文档可能是一个很好的起点。
Qt想要完全控制窗口和事件循环,所以这是行不通的(除非你付出了很多努力)。最好的办法是使用QGLWidget并模拟SFML的事件管理,以便您的应用程序有效地在Qt上运行。将Qt小部件渲染到OpenGL窗口中是很有可能的(Qt有一个OpenGL小部件后端),但这仍然必须由Qt本身管理。