当窗口聚焦时,Opengl程序不循环

时间:2015-05-03 15:59:55

标签: c++ windows opengl glfw

我在运行opengl 4程序时遇到问题。当窗口处于焦点时,似乎没有任何事情发生(即使在窗口失焦之前,alt + f4也不会注册)。

如果包含我的程序的窗口是焦点,那么我的程序的主循环停止执行(我使用printf语句检查,在我的while(true)循环内,并且当聚焦在窗口时输出完全停止)。当窗口没有聚焦时,程序按预期运行(包括窗口内的鼠标移动改变摄像机方向)。

我把它缩小到这行代码,这是在我的鼠标回调方法中执行的

glfwSetCursorPos(window,middleX,middleY);

如果这被注释掉,程序在对焦时运行正常,但鼠标不再居中,因此相机逻辑不再有效。

我正在使用32位版本的glfw3和glew。

此程序过去曾在其他机器上运行过。有没有办法解决这个问题,而无需重构代码来轮询鼠标输入?

0 个答案:

没有答案