fragment interpolation

This is the process of taking 3 corresponding vertex shader outputs and interpolating them across the surface of the triangle. For each fragment generated, there will also be an interpolated value generated for each of the vertex shader's outputs (except for certain built-in outputs, like gl_Position.) The way that the interpolation is handled depends on the interpolation qualifier on the vertex output and fragment input.

interpolation qualifier

A GLSL keyword assigned to outputs of vertex shaders and the corresponding inputs of fragment shaders. It determines how the three values of the triangle are interpolated across that triangle's surface. The qualifier used on the vertex shader output must match with the one used on the fragment shader input of the same name.

Valid interpolation qualifiers are smooth, flat, and noperspective.