C++,过剩,OpenGL "resize window"事件?

C++, glut, OpenGL "resize window" event?

本文关键字:事件 window resize OpenGL C++ 过剩      更新时间:2023-10-16

我使用 OpenGL 3.3。在我的应用程序中,我将鼠标光标设置在窗口的中心(我将窗口的大小传递给"Camera"类的构造函数),但是当我调整窗口大小(如全屏)时,我将光标放在左侧的某个地方。所以,我想传递新的尺寸以避免这样的事情。我该怎么做?也许在过剩中存在某种"调整大小"事件?

尝试使用 glutReshapeFunc。你给它传递一个指针,指向一个接受宽度和高度的函数。然后,每当窗口被重塑时,都会调用该函数。

例:

void yourReshapeCallback(int w, int h) {
  // set cursor
}
...
// set reshape callback for current window
glutReshapeFunc(yourReshapeCallback);