为什么在回调函数opengl中传递window指针
why pass window pointer in callback function opengl
当我们不使用window指针变量
时,为什么我们将GLFWwindow指针传递给参数
示例:
coid sizecallb(GLFWwindow* window, int w, int h){
glViewport(0,0,w,h);
screeenw = w;
screeenh = h;
}
这样做是因为 GLFW 是用 C 而不是 C++ 编写的。因此,区分一个 window 和另一个的方法并不多。此外,不是 us 将信息传递给回调,而是 GLFW 从其代码执行回调。它指定 window 句柄,以便您可以选择要为其调用此回调的 window。当你只有一个window时,这个参数可以不用。但是,当您创建多个 windows,并且您拥有所有 window 句柄时,您可以选择一个 window 对象,并在回调中传递句柄,并仅在一个 window 上执行方法] 对象。
请注意,您可以为不同的windows指定不同的回调。
当我们不使用window指针变量
时,为什么我们将GLFWwindow指针传递给参数示例:
coid sizecallb(GLFWwindow* window, int w, int h){
glViewport(0,0,w,h);
screeenw = w;
screeenh = h;
}
这样做是因为 GLFW 是用 C 而不是 C++ 编写的。因此,区分一个 window 和另一个的方法并不多。此外,不是 us 将信息传递给回调,而是 GLFW 从其代码执行回调。它指定 window 句柄,以便您可以选择要为其调用此回调的 window。当你只有一个window时,这个参数可以不用。但是,当您创建多个 windows,并且您拥有所有 window 句柄时,您可以选择一个 window 对象,并在回调中传递句柄,并仅在一个 window 上执行方法] 对象。
请注意,您可以为不同的windows指定不同的回调。