【发布时间】:2013-11-08 15:20:07
【问题描述】:
我在 Mac OS X 10.8 上使用 GLFW 3.0,显卡是 Intel HD Graphics 5000
我的 OpenGL API 版本是 2.1,由
获得glfwGetWindowAttrib(window, GLFW_CONTEXT_VERSION_MAJOR);
glfwGetWindowAttrib(window, GLFW_CONTEXT_VERSION_MINOR);
编译选项:
g++ ... -framework OpenGL -framework Cocoa -framework IOKit ...
标题:
#include <GLFW/glfw3.h>
#include <GL/glu.h>
版本始终为 2.1,与 the reported 3.2 不同。我的操作系统已经升级到10.9,OpenGL版本还是2.1。
它仍然无法编译 GLSL 3.3,而 Apple says it supports 4.1。如何访问更高版本的库?
【问题讨论】:
-
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3); glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3); glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);在创建窗口之前编写。
-
@PierreEmmanuelLallemant :我试过这个,它导致
glfwCreateWindow失败。 -
试试 glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 2); // opengl 3.2 或 glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 1); // opengl 3.1 . 仅当 OS X 不支持 opengl 版本时才会崩溃。
-
@PierreEmmanuelLallemant:同样的结果...
-
仅仅因为您升级了操作系统并不意味着您可以使用 OpenGL 4.1...您需要适当版本的 MacOS X Platform SDK。您真正需要做的很可能就是升级 Xcode。 Xcode IDE 中有一个设置允许您选择命令行工具链使用的默认 SDK,不幸的是我不记得它在哪里。