Macos 为什么我的Mac电脑只支持OpenGL 2.1?

Macos 为什么我的Mac电脑只支持OpenGL 2.1?,macos,opengl,Macos,Opengl,我目前正在学习使用LWJGL3的OpenGL,LWJGL3在windows中使用GLFW。我使用的是2015年的MacBook Pro和运行优胜美地的AMD M370X。问题是,我使用的是现代OpenGL(3.30),由于某些原因,它不受支持。我使用了glGetString(GL_版本),显然计算机使用的是ATI的驱动程序,该驱动程序最多只支持OpenGL 2.1。OSX仅在核心配置文件中支持现代GL(这是GL规范要求支持的唯一配置文件) 在创建上下文时,您必须明确请求此项,否则它将退回到实现G

我目前正在学习使用LWJGL3的OpenGL,LWJGL3在windows中使用GLFW。我使用的是2015年的MacBook Pro和运行优胜美地的AMD M370X。问题是,我使用的是现代OpenGL(3.30),由于某些原因,它不受支持。我使用了glGetString(GL_版本),显然计算机使用的是ATI的驱动程序,该驱动程序最多只支持OpenGL 2.1。

OSX仅在核心配置文件中支持现代GL(这是GL规范要求支持的唯一配置文件)

在创建上下文时,您必须明确请求此项,否则它将退回到实现GL 2.1的旧上下文(为了与根本不了解概要文件或moder GL版本的旧应用程序兼容)。这意味着在OSX上,您永远不能将旧的、不推荐使用的GL功能与现代功能混合使用(就像您可以使用兼容性配置文件那样)。不过,这是好事还是坏事取决于观点


对于GLFW,您必须使用
glfwWindowHint(GLFW\u OPENGL\u配置文件,GLFW\u OPENGL\u核心配置文件)
并请求GL版本>=3.2。

是的,这是另一篇文章所说的。但现在我有另一个问题。如果我尝试启用现代OpenGL,GLFW就无法创建窗口——我认为这意味着它不受支持。IIRC,您还必须在OSX上设置前端兼容性位,但我不确定。是的,OSX只支持前向兼容的核心配置文件。