uniform sampler2D unity_LightmapInd;
uniform sampler2D unity_Lightmap;
uniform vec4 _SpecColor;
uniform sampler2D _MainTex;
uniform sampler2D _LightBuffer;
uniform float _Cutoff;
uniform vec4 _Color;
void main ()
{
  vec4 tmpvar_1;
  tmpvar_1 = gl_TexCoord[1];
  vec3 tmpvar_2;
  tmpvar_2 = gl_TexCoord[2].xyz;
  vec4 light;
  vec4 tmpvar_3;
  tmpvar_3 = texture2D (_MainTex, gl_TexCoord[0].xy);
  vec3 tmpvar_4;
  tmpvar_4 = (tmpvar_3.xyz * _Color.xyz);
  float tmpvar_5;
  tmpvar_5 = (tmpvar_3.w * _Color.w);
  float x;
  x = (tmpvar_5 - _Cutoff);
  if ((x < 0.0)) {
    discard;
  };
  vec4 tmpvar_6;
  tmpvar_6 = -(log2 (texture2DProj (_LightBuffer, tmpvar_1)));
  light = tmpvar_6;
  light.xyz = (tmpvar_6.xyz + mix ((2.0 * texture2D (unity_LightmapInd, tmpvar_2.xy).xyz), (2.0 * texture2D (unity_Lightmap, tmpvar_2.xy).xyz), vec3(clamp (tmpvar_2.z, 0.0, 1.0))));
  vec4 c;
  float tmpvar_7;
  tmpvar_7 = (tmpvar_6.w * tmpvar_3.w);
  c.xyz = ((tmpvar_4 * light.xyz) + ((light.xyz * _SpecColor.xyz) * tmpvar_7));
  c.w = (tmpvar_5 + (tmpvar_7 * _SpecColor.w));
  gl_FragData[0] = c;
}

