Macos OSX上的C#OpenTK:GLSL错误,不支持版本
我本机运行Mac OSX 10.9.2,并尝试运行以下C#代码: 我正在使用Xamarin Studio和OpenTK来编译代码,但一旦启动它,控制台中就会出现以下错误:Macos OSX上的C#OpenTK:GLSL错误,不支持版本,macos,opengl,opentk,Macos,Opengl,Opentk,我本机运行Mac OSX 10.9.2,并尝试运行以下C#代码: 我正在使用Xamarin Studio和OpenTK来编译代码,但一旦启动它,控制台中就会出现以下错误: [0:] [0:] ERROR: 0:2: '' : version '410' is not supported ERROR: 0:4: 'layout' : syntax error syntax error [0:] [0:] ERROR: 0:2: '' : version '410' is not sup
[0:]
[0:] ERROR: 0:2: '' : version '410' is not supported
ERROR: 0:4: 'layout' : syntax error syntax error
[0:]
[0:] ERROR: 0:2: '' : version '410' is not supported
我已经尝试了不同版本的着色器,但我总是得到错误“版本XXX不受支持”。
不过,会显示带有三角形的渲染窗口,但如果没有编译的着色器,则无法正确显示
我已经查看了苹果的兼容性列表,我的机器支持4.1版(GeForce 650):
有人知道出了什么问题吗?glGetString(GL\u版本)和
glGetString(GL\u着色语言版本)
说了什么?实际上,您应该使用GLSL版本,上一次调用会告诉您。OpenTK 1.1使用的是Carbon,它不支持OpenGL>2.1。对于OpenGL 3.x/4.x,您有两个选项:
- 通过将
中的opentk/Dependencies/x86
复制到应用程序目录来启用SDL2后端libSDL2.dylib
- 编译最新版本
OpenTK 1.1.2将支持OpenGL 3.x/4.x开箱即用。这将在几天后正式发布。我有类似的代码,但使用了“GraphicsContextFlags.ForwardCompatible”,它与GraphicsMode.Default一起工作。我发现glGetString(GL_版本)给了我4.1,如果我使用了除此之外的任何上下文(甚至说4.0),它都不起作用