我在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,与报告的3.2不同。
https://developer.apple.com/graphicsimaging/opengl/capabilities/GLInfo_1085_Core.html
...
现在我的操作系统已经升级到10.9,而OpenGL版本仍然是2.1。
它仍然无法编译GLSL 3.3,而Apple表示它支持4.1。
https://developer.apple.com/graphicsimaging/opengl/capabilities/index.html
我怎样才能让它发挥作用?
答案 0 :(得分:22)
在创建窗口之前,您需要添加“forward_compat”和“core_profile”提示。
glfwWindowHint(GLFW_CONTEXT_VERSION_MAJOR, 3);
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
glfwWindowHint(GLFW_OPENGL_FORWARD_COMPAT, GL_TRUE);
glfwCreateWindow(640, 480, "Hello World", NULL, NULL );