gpt4 book ai didi

c++ - glfwGetGLVersion() 在 OS X Lion 上返回 2.1

转载 作者:太空宇宙 更新时间:2023-11-04 11:54:29 25 4
gpt4 key购买 nike

我正在尝试在 Lion 上设置 OpenGL 3.2 上下文。我有这段代码来设置窗口:

glfwOpenWindowHint(GLFW_OPENGL_VERSION_MAJOR, 3);
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MINOR, 2);
glfwOpenWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

if (!glfwInit())
return -1;

if (!glfwOpenWindow(640, 480, 8, 8, 8, 0, 0, 0, GLFW_WINDOW))
return -1;

glClearColor(1.0f, 0.0f, 0.0f, 1.0f);

// Get OpenGL details
int major, minor, rev;
glfwGetGLVersion(&major, &minor, &rev);
std::cout << "GL Version: " << major << "." << minor << "." << rev << std::endl;

GL 版本为 2.1,尽管我运行的是 OS X Lion 和显然支持 3.2 的 AMD Radeon 6750M。另外,我运行了这段 C 代码 here返回 3.2。我正在使用 GLFW 2.7.8。有谁知道这里发生了什么?

最佳答案

事实证明,我需要在调用 glfwOpenWindowHint 之前调用 glfwInit():

if (!glfwInit())
return -1;

glfwOpenWindowHint(GLFW_OPENGL_VERSION_MAJOR, 3);
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MINOR, 2);
glfwOpenWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

if (!glfwOpenWindow(500, 500, 8, 8, 8, 0, 0, 0, GLFW_WINDOW))
return -1;

关于c++ - glfwGetGLVersion() 在 OS X Lion 上返回 2.1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16748988/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com