1

我尝试在 Fedora 25 上使用 glfw + glew 构建一个程序。其中一部分是:

int main()
{
    glfwInit();
    glfwWindowHint(GLFW_OPENGL_PROFILE,GLFW_OPENGL_ANY_PROFILE);
    //glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR,3);
    //glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR,3);
    mainWindow = glfwCreateWindow(1024,768,"NONE",nullptr,nullptr);
    if(mainWindow == nullptr)
    {
        std::cout<<"Creating window ERROR.\n"<<std::endl;
        glfwTerminate();
        return 1;
    }
    .....
}

如果我使用glfwWindowHint(GLFW_OPENGL_PROFILE,GLFW_OPENGL_CORE_PROFILE);3.3 版本,它将无法创建窗口。

我的硬件支持 openGL 4.1。

更新:得到答案....

4

1 回答 1

1

只是在glfwWindowHint(GLFW_CONTEXT_VERSION_*,*)那里取消注释。
在将核心配置文件与 一起使用时glfwWindowHint(GLFW_OPENGL_PROFILE,GLFW_OPENGL_CORE_PROFILE)
需要请求显式版本。

感谢 Dietrich Epp 的评论。

顺便问一下,谁能告诉我如何获得这些信息?

于 2017-01-26T10:56:38.010 回答