请帮忙。下面的简单顶点着色器代码有什么问题。 0(12):错误C1068:类型构造函数中的数据太多
#version 450
void main()
{
const vec2[6] Q = { vec2(-0.5,-0.5),
vec2( 0.5,-0.5),
vec2(-0.5, 0.5),
vec2(-0.5, 0.5),
vec2( 0.5,-0.5),
vec2( 0,5, 0.5)
};
gl_Position = vec4(
Q[ gl_VertexID ].x,
Q[ gl_VertexID ].y,
0.0,
1.0
);
}
答案 0 :(得分:3)
你可以像这样在glsl中初始化一个数组(类似于C ++ 11):
const vec2 Q[6] = {
{ -0.5, -0.5 },
{ 0.5, -0.5 },
{ -0.5, 0.5 },
{ -0.5, 0.5 },
{ 0.5, -0.5 },
{ 0.5, 0.5 }
};
不确定您是否注意到示例中的故意错误。最后一行有一个逗号,它应该有一个“。”。