Mac OS 不支持 GLSL 1.2+?
GLSL 1.2+ not supported on Mac OS?
我收到错误消息
ERROR: 0:1: '' : version '330' is not supported
ERROR: One or more attached shaders not successfully compiled
尝试编译以下着色器时:
#version 330
in vec3 vPosition;
in vec3 vColor;
out vec4 color;
uniform mat4 modelview;
void main()
{
gl_Position = modelview * vec4(vPosition, 1.0);
color = vec4( vColor, 1.0);
}
将着色器重写为版本 110 规范编译并运行良好:
#version 110
attribute vec3 vPosition;
attribute vec3 vColor;
varying vec4 color;
uniform mat4 modelview;
void main()
{
gl_Position = modelview * vec4(vPosition, 1.0);
color = vec4( vColor, 1.0);
}
这工作了一段时间,但现在我需要使用 330 个功能。
我使用的是 2011 款 MacBook Pro 运行 El Captian 10.11.2,并使用来自 OpenTK 网站的最新版本 OpenTK.dll
和 OpenTK.dll.config
。
我已尝试按照其他用户的建议将 libSDL2.dylib
从 opentk/Dependencies/x86
复制到我的应用程序目录来启用 SDL2 后端,但没有区别。
我必须做什么才能支持 330 功能?
如果我没记错的话 MAC 最新 OS 的驱动程序在声明版本方面存在一些问题 330.In 事实上根据我的经验它是 GL 3.2 然后他们添加了支持适用于 Maveric 和其他最新 OS 版本的 4.1。您可以只使用 410,因为这是当前最高的 GL 配置文件 MAC OS X 使用,当然它应该从 330.
导出所有核心扩展
所有 MacBook Pro 至少支持 OpenGL 3.3。问题出在 OpenTK 的 GameWindow 构造函数的默认值中。他们的官方文档似乎暗示它默认为 OpenGL 2.1,但在 Windows.
上绝对不是这样
添加此覆盖修复了它。
public Game() : base(800, 600, new GraphicsMode(new ColorFormat(8), 3, 3, 4), "Welcome To Hell", GameWindowFlags.Default, DisplayDevice.Default, 3, 0, GraphicsContextFlags.Default)
{
}
我收到错误消息
ERROR: 0:1: '' : version '330' is not supported
ERROR: One or more attached shaders not successfully compiled
尝试编译以下着色器时:
#version 330
in vec3 vPosition;
in vec3 vColor;
out vec4 color;
uniform mat4 modelview;
void main()
{
gl_Position = modelview * vec4(vPosition, 1.0);
color = vec4( vColor, 1.0);
}
将着色器重写为版本 110 规范编译并运行良好:
#version 110
attribute vec3 vPosition;
attribute vec3 vColor;
varying vec4 color;
uniform mat4 modelview;
void main()
{
gl_Position = modelview * vec4(vPosition, 1.0);
color = vec4( vColor, 1.0);
}
这工作了一段时间,但现在我需要使用 330 个功能。
我使用的是 2011 款 MacBook Pro 运行 El Captian 10.11.2,并使用来自 OpenTK 网站的最新版本 OpenTK.dll
和 OpenTK.dll.config
。
我已尝试按照其他用户的建议将 libSDL2.dylib
从 opentk/Dependencies/x86
复制到我的应用程序目录来启用 SDL2 后端,但没有区别。
我必须做什么才能支持 330 功能?
如果我没记错的话 MAC 最新 OS 的驱动程序在声明版本方面存在一些问题 330.In 事实上根据我的经验它是 GL 3.2 然后他们添加了支持适用于 Maveric 和其他最新 OS 版本的 4.1。您可以只使用 410,因为这是当前最高的 GL 配置文件 MAC OS X 使用,当然它应该从 330.
导出所有核心扩展所有 MacBook Pro 至少支持 OpenGL 3.3。问题出在 OpenTK 的 GameWindow 构造函数的默认值中。他们的官方文档似乎暗示它默认为 OpenGL 2.1,但在 Windows.
上绝对不是这样添加此覆盖修复了它。
public Game() : base(800, 600, new GraphicsMode(new ColorFormat(8), 3, 3, 4), "Welcome To Hell", GameWindowFlags.Default, DisplayDevice.Default, 3, 0, GraphicsContextFlags.Default)
{
}