這是我入門教程, learning Opengl.讀了前三節課,感受不錯。前三節課細緻入微 的講了如何配置opengl開發環境和歷史淵源。 不過在第一大節的第三節課Hello-Window中碰到了一個問題。問題代碼以下:this
glfwInit(); glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE); glfwWindowHint(GLFW_RESIZABLE, GL_FALSE);
其中在個人電腦上WindowHint的profile屬性值需設置爲GLFW_OPENGL_ANY_PROFILE,不然glfwCreateWindow返回NULL。code
官方的說法:GLFW_OPENGL_PROFILE specifies which OpenGL profile to create the context for. Possible values are one of GLFW_OPENGL_CORE_PROFILE or GLFW_OPENGL_COMPAT_PROFILE, or GLFW_OPENGL_ANY_PROFILE to not request a specific profile. If requesting an OpenGL version below 3.2, GLFW_OPENGL_ANY_PROFILE must be used. If OpenGL ES is requested, this hint is ignored. 但我查了下我電腦上opengl版本是3.3,按理說能夠用GLFW_OPENGL_CORE_PROFILE這個屬性。教程
可能須要查看這邊文檔opengl registryci
谷歌一下仍是沒看到什麼結果,有空再找吧。開發