在 GLFW 下创建 OpenGL 核心配置文件

标签 c opengl glfw

如何使用 GLFW 和 OpenGL 创建核心配置文件?我目前正在运行 Mesa 10.0.2,它应该在核心配置文件中支持 OpenGL 3.3,在非核心配置文件中支持 3.0。

目前这就是我正在尝试做的事情。

glfwOpenWindowHint(GLFW_FSAA_SAMPLES, 4);
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MAJOR, 3);
glfwOpenWindowHint(GLFW_OPENGL_VERSION_MINOR, 3);
glfwOpenWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);

// Create context
if( !glfwOpenWindow( 1024, 768, 0,0,0,0, 32,0, GLFW_WINDOW ) )
{
    fprintf( stderr, "Failed to create context\n" );
    glfwTerminate();
    return -1;
}

最佳答案

正如 genpfault 和 Brett Hale 所指出的,我发现这在很大程度上是一个 GLFW 版本问题。一旦我将有问题的代码移植到 GLFW 3,问题就消失了。我还更新了更新版本的 GLM 库。对于那些正在玩 opengl-tutorial.org 的人,我建议将其作为使用更新的库重写代码的练习,因为此时提供的库已经很旧了。

关于在 GLFW 下创建 OpenGL 核心配置文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21146678/

相关文章:

opengl - gluLookAt() 和 glFrustum() 之间有区别吗?

macos - GLFW 打开 OpenGL 3.2 上下文但 Freeglut 不能 - 为什么?

c - 在函数内分配内存后使用双指针

c - C中的链接问题

c - GCC 5.1 警告在 `parallel for` 构造中取消构造

使用 OpenGL 的 C++ 绘图数组

macos - 为什么这个 OpenGL 应用程序在某些 Mac 上运行得非常慢?

macos - mac os 雪豹上的 freeglut 问题(通过 macports 构建良好)

c++ - GLFW 3 已初始化,但还没有?

c++ - 关闭连接后,Valgrind 在 ssl 中显示内存泄漏