uniform float _Shininess;
uniform sampler2D _MainTex;
uniform float _Cutoff;
uniform vec4 _Color;
uniform sampler2D _BumpMap;
void main ()
{
  vec4 tmpvar_1;
  tmpvar_1 = gl_TexCoord[0];
  vec3 tmpvar_2;
  tmpvar_2 = gl_TexCoord[1].xyz;
  vec3 tmpvar_3;
  tmpvar_3 = gl_TexCoord[2].xyz;
  vec3 tmpvar_4;
  tmpvar_4 = gl_TexCoord[3].xyz;
  vec4 res;
  vec3 viewN;
  vec4 normal;
  normal.xy = ((texture2D (_BumpMap, tmpvar_1.zw).wy * 2.0) - 1.0);
  normal.z = sqrt (((1.0 - (normal.x * normal.x)) - (normal.y * normal.y)));
  vec3 tmpvar_5;
  tmpvar_5 = normal.xyz;
  float x;
  x = ((texture2D (_MainTex, tmpvar_1.xy).w * _Color.w) - _Cutoff);
  if ((x < 0.0)) {
    discard;
  };
  viewN.x = dot (tmpvar_2, tmpvar_5);
  viewN.y = dot (tmpvar_3, tmpvar_5);
  viewN.z = dot (tmpvar_4, tmpvar_5);
  res.xyz = ((viewN * vec3(0.5, 0.5, -0.5)) + 0.5);
  res.w = _Shininess;
  gl_FragData[0] = res;
}

