Witam. Wyskakuje mi taki błąd

%s
Link info
---------
error: "te_color" not declared as input from previous stage

wydaje mi się, że wszystko jest przekazane po kolei, z shadera wierzchołków do sterowania teselacją, ze sterowania od oblcizania teselacji i z obliczania do fragmentów.

#version 460 core

layout(location = 1) in vec4 a_color;

out vec4 v_color;

void main()
{
    v_color = a_color;
}
#version 460 core

layout (vertices = 4) out;

in vec4 v_color[];
out vec4 tc_color[];

void main()
{
    tc_color[gl_InvocationID] = v_color[gl_InvocationID];

    if(gl_InvocationID == 0) {
        gl_TessLevelInner[0] = 9.0f;
        gl_TessLevelInner[1] = 7.0f;

        gl_TessLevelOuter[0] = 3.0f;
        gl_TessLevelOuter[1] = 5.0f;
        gl_TessLevelOuter[2] = 3.0f;
        gl_TessLevelOuter[3] = 5.0f;
    }
    gl_out[gl_InvocationID].gl_Position = gl_in[gl_InvocationID].gl_Position;
}
#version 460 core

layout (quads) in;

in vec4 tc_color[];
out vec4 te_color;

void main()
{
     te_color = tc_color[0] * gl_TessCoord.x +
                tc_color[1] * gl_TessCoord.y +
                tc_color[2] * gl_TessCoord.z;

    vec4 p1 = mix(gl_in[0].gl_Position, gl_in[1].gl_Position, gl_TessCoord.x);
    vec4 p2 = mix(gl_in[2].gl_Position, gl_in[3].gl_Position, gl_TessCoord.x);

    gl_Position = mix(p1, p2, gl_TessCoord.y);
}
#version 460 core

layout (location = 0) out vec4 outColor;                                                                

in vec4 te_color;

void main()
{
    outColor = te_color;    
}

W jaki sposób mogę pozbyć się tego błędu?