标签: opengl glfw
我正在学习opengl,我正在使用glfw库。我试图理解文档的含义是屏幕坐标和窗口的帧缓冲。因此,我记录了这两个函数的宽度和高度输出,但它们彼此相同。
所以我不太确定glfwGetWindowSize和glfwGetFramebufferSize之间有什么区别。
另外,我是否可以澄清帧缓冲区大小与屏幕坐标中窗口大小的区别? (这两个大小都在文档中提到但没有解释。此外,这两个大小分别对应于glfwGetFramebufferSize和glfwGetWindowSize)。
答案 0 :(得分:5)
GLFW解释了文档here和here中的两个坐标系。
简而言之,窗口坐标相对于监视器和/或窗口,并且以不一定对应于真实屏幕像素的人工单元给出。激活dpi缩放时尤其如此(例如,在具有视网膜显示的Mac上)。
与窗口坐标相比,帧缓冲区大小以像素为单位,以匹配glViewport的OpenGL要求。
glViewport
注意,在某些系统上,窗口坐标和像素坐标可以相同,但不一定如此。