glslang/Test/spv.140.frag

47 lines
816 B
GLSL

#version 140
in vec4 k;
out vec4 o;
in float gl_ClipDistance[5];
layout(row_major) uniform;
uniform sampler2D samp2Da[3];
layout(std140) uniform bn {
layout(row_major) mat4 matra[4];
layout(column_major) mat4 matca[4];
layout(row_major) mat4 matr;
layout(column_major) mat4 matc;
mat4 matrdef;
};
uniform sampler2DRect sampR;
uniform isamplerBuffer sampB;
float foo();
void main()
{
o.y = gl_ClipDistance[2];
o.z = gl_ClipDistance[int(k)];
o.w = float(textureSize(sampR) + textureSize(sampB)) / 100.0;
o.z = foo();
}
// Test extra-function initializers
float i1 = gl_FrontFacing ? -2.0 : 2.0;
float i2 = 102;
float foo()
{
return i1 + i2;
}
// test arrayed block
layout(std140) uniform bi {
vec3 v[2];
} bname[4];