Pragma target 3.0 not fixing "Too many interpolators"

Hi all,

I’m getting the error “Too many texture interpolators would be used for ForwardBase pass (11 out of max 10) at line 21”. My understanding is that #pragma target 3.0 should fix this, am I wrong?

I’m using 2017.4.3f1
I can’t really share code but here’s the structure:

Shader "Custom/New Shader" {
    Properties {
        _Color ("Color", Color) = (1,1,1,1)
        _MainTex ("Albedo (RGB)", 2D) = "white" {}
        //etc...
    }
SubShader {
        Tags { "RenderType"="Opaque" }
        LOD 200
        CGPROGRAM

        #pragma surface surf Standard fullforwardshadows

        #pragma target 3.0

        struct Input {
            float2 uv_MainTex;
            //etc...
        };

        float _Glossiness;
        //etc...  

        UNITY_INSTANCING_BUFFER_START(Props)

        UNITY_INSTANCING_BUFFER_END(Props)

            void vert(inout appdata_full v, out Input o)
        {
            //Stuff
        }

        void surf (Input IN, inout SurfaceOutputStandard o) {
            //Stuff
        }

        ENDCG
    }
    FallBack "Diffuse"
}

I guess that’s impossible to debug, but my question really just is whether “#pragma target 3.0” should be fixing that error.

Thanks in advance!

#pragma target 3.0 sets the requirements to 10 interpolators. If you’re using more, it will give you this error.
Your struct Input has too many fields. Try packing those together.

Ah right, thanks very much!