WebGL `uniform uint` 导致语法错误
WebGL `uniform uint` Causes Syntax Error
我在 Windows 10 上使用 Google Chrome 版本 59.0.3071.115(官方构建)(64 位)。
我有一个顶点着色器,看起来像这样:
attribute vec3 aPosition;
attribute vec2 aTextureCoordinate;
uniform uint uLayer;
uniform vec2 uLocation;
varying highp vec2 vTextureCoordinate;
void main(void)
{
gl_Position = vec4(aPosition + vec3(uLocation, 0.0), 1.0);
vTextureCoordinate = aTextureCoordinate;
}
之前的版本没有第四行(uniform unit uLayer;
),编译正常。添加该行会导致 ERROR: 0:5: 'uLayer' : syntax error
。据我所知,这一行在语法上没有任何问题,而且我找不到任何说明 uniform uint
在顶点着色器中无效的内容。我在这里遗漏了什么吗?
WebGL 1 使用不支持 uint
的 GLSL 100。 WebGL 2 使用 GLSL 300 添加 uint
.
我在 Windows 10 上使用 Google Chrome 版本 59.0.3071.115(官方构建)(64 位)。
我有一个顶点着色器,看起来像这样:
attribute vec3 aPosition;
attribute vec2 aTextureCoordinate;
uniform uint uLayer;
uniform vec2 uLocation;
varying highp vec2 vTextureCoordinate;
void main(void)
{
gl_Position = vec4(aPosition + vec3(uLocation, 0.0), 1.0);
vTextureCoordinate = aTextureCoordinate;
}
之前的版本没有第四行(uniform unit uLayer;
),编译正常。添加该行会导致 ERROR: 0:5: 'uLayer' : syntax error
。据我所知,这一行在语法上没有任何问题,而且我找不到任何说明 uniform uint
在顶点着色器中无效的内容。我在这里遗漏了什么吗?
WebGL 1 使用不支持 uint
的 GLSL 100。 WebGL 2 使用 GLSL 300 添加 uint
.