
* We add an option to reflect inputs from other stages than vertex, if only a later subset of the stages is linked into the program.
27 lines
475 B
GLSL
27 lines
475 B
GLSL
#version 440 core
|
|
|
|
struct VertexInfo {
|
|
float position[3];
|
|
float normal[3];
|
|
};
|
|
|
|
struct TriangleInfo {
|
|
VertexInfo v[3];
|
|
};
|
|
|
|
buffer VertexCollection {
|
|
TriangleInfo t[5];
|
|
};
|
|
|
|
out float outval;
|
|
|
|
void main()
|
|
{
|
|
float f;
|
|
f += t[0].v[0].position[0];
|
|
f += t[gl_InstanceID].v[gl_InstanceID].position[gl_InstanceID];
|
|
f += t[gl_InstanceID].v[gl_InstanceID].normal[gl_InstanceID];
|
|
TriangleInfo tlocal[5] = t;
|
|
outval = f;
|
|
}
|