after I bake my scene ,One cube with my customize mat seems dont get assigned uv for lightmap poperly
this is it after bake:

this is it before bake

what happens,
here is my shader
pass{
Tags{ "LightMode"="ForwardBase"}
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile_fwdbase
#include "UnityCG.cginc"
#include "Lighting.cginc"
uniform float4 _Color;
sampler2D _MainTex;
float4 _MainTex_ST;
#ifndef LIGHTMAP_OFF
sampler2D unity_Lightmap;
float4 unity_LightmapST;
#endif
struct vertOut{
float4 pos:SV_POSITION;
float4 color:COLOR;
float3 litDir:TEXCOORD0;
float3 worldN:TEXCOORD1;
float2 uv:TEXCOORD2;
#ifndef LIGHTMAP_OFF
float2 uv2:TEXCOORD3;
#endif
};
vertOut vert(appdata_full v)
{
float4 worldV=mul(_Object2World,v.vertex);
float3 worldN=mul(float3x3(_Object2World),SCALED_NORMAL);
float3 c=Shade4PointLights(unity_4LightPosX0,unity_4LightPosY0,unity_4LightPosZ0,unity_LightColor[0],unity_LightColor[1],unity_LightColor[2],unity_LightColor[3],unity_4LightAtten0,worldV.xyz,worldN);
vertOut o;
o.pos=mul(UNITY_MATRIX_MVP,v.vertex);
o.litDir=WorldSpaceLightDir(v.vertex);
o.worldN=worldN;
o.uv=v.texcoord.xy;
#ifndef LIGHTMAP_OFF
o.uv2=v.texcoord1.xy;
#endif
o.color=float4(c,1.0)*_Color;
return o;
}
float4 frag(vertOut i):COLOR
{
float4 c=max(0.0,dot(i.worldN,normalize(i.litDir)))*_LightColor0*_Color;
#ifndef LIGHTMAP_OFF
float3 clm=tex2D(_MainTex,i.uv).rgb*DecodeLightmap(tex2D(unity_Lightmap,i.uv2));
c+=float4(clm,1.0);
#endif
return (c+i.color);
}
ENDCG
}//end pass
