#version 140 | |
#extension GL_ARB_enhanced_layouts : require | |
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; | |
layout(align=512, offset=1024) 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]; |