UGUI Unity5.6 CanvasRenderer vertex define has no uv1 ???

I used UI vertex extra parameters , just add uv1 , so I used both uv0 and uv1 . Using the api
VertexHelper.AddVert(Vector3 position, Color32 color, Vector2 uv0, Vector2 uv1, Vector3 normal, Vector4 tangent); .
and my shader use VSInput texcoord1 like this

struct appdata_t
{
    float4 vertex : POSITION;
    float4 color : COLOR;
    float2 texcoord : TEXCOORD0;
   float2 texcoord1: TEXCOORD1;
};

Now I found the uv1 , which is the second uv in shader input is not value setted . My code works well in 5.4 and all lower Unity version . But failed on 5.6 and unity 2017. So I think uv1 is not supported any more in CanvasRenderer. This really bothers me. Can any one help me ? Thanks a lot .

And happenly I found a similar question, but I only wanna to use TEXCOORD1 https://forum.unity3d.com/threads/ui-batching-and-extra-parameters.338661/

1 Like

My problem is solved , UGUI in 5.6.6 is changed , that Canvas component has a property “Additional Shader Channels” . I added the TexCoord1 vertex define , then this problem is solved. Hope this would help someone else .