private void generateCompatibilityDefines(StringBuilder source, ShaderType type) {
        //Adding compatibility defines, as it's more efficient than replacing the function calls in the source code
        if (type == ShaderType.Fragment) {
            source.append("\n")
                    .append("#define texture1D texture\n")
                    .append("#define texture2D texture\n")
                    .append("#define texture3D texture\n")
                    .append("#define textureCube texture\n")
                    .append("#define texture2DLod textureLod\n")
                    .append("#define textureCubeLod textureLod\n");
        }
    }
{@inheritDoc} in glsl 1.5 varying are prefixed with the "in" or "out"
keyword and not the "varying" keyword.

"in" is used for Fragment shader (maybe Geometry shader later) "out" is
used for Vertex shader (maybe Geometry shader later)
jme3-core/src/main/java/com/jme3/shader/Glsl150ShaderGenerator.java