uniform vec3 _TerrainTreeLightDirections[4];
uniform float _TranslucencyViewDependency;
void main ()
{
  vec3 tmpvar_1;
  vec3 tmpvar_2;
  vec3 tmpvar_3;
  tmpvar_3 = _TerrainTreeLightDirections[0];
  float tmpvar_4;
  tmpvar_4 = dot (gl_Normal, tmpvar_3);
  vec3 tmpvar_5;
  tmpvar_5.yz = tmpvar_1.yz;
  tmpvar_5.x = mix (-(tmpvar_4), dot (gl_Vertex.xyz, -(tmpvar_3)), _TranslucencyViewDependency);
  vec3 tmpvar_6;
  tmpvar_6.yz = tmpvar_2.yz;
  tmpvar_6.x = max (0.0, ((tmpvar_4 * 0.6) + 0.4));
  vec3 tmpvar_7;
  tmpvar_7 = _TerrainTreeLightDirections[1];
  float tmpvar_8;
  tmpvar_8 = dot (gl_Normal, tmpvar_7);
  vec3 tmpvar_9;
  tmpvar_9.xz = tmpvar_5.xz;
  tmpvar_9.y = mix (-(tmpvar_8), dot (gl_Vertex.xyz, -(tmpvar_7)), _TranslucencyViewDependency);
  vec3 tmpvar_10;
  tmpvar_10.xz = tmpvar_6.xz;
  tmpvar_10.y = max (0.0, ((tmpvar_8 * 0.6) + 0.4));
  vec3 tmpvar_11;
  tmpvar_11 = _TerrainTreeLightDirections[2];
  float tmpvar_12;
  tmpvar_12 = dot (gl_Normal, tmpvar_11);
  vec3 tmpvar_13;
  tmpvar_13.xy = tmpvar_9.xy;
  tmpvar_13.z = mix (-(tmpvar_12), dot (gl_Vertex.xyz, -(tmpvar_11)), _TranslucencyViewDependency);
  tmpvar_1 = tmpvar_13;
  vec3 tmpvar_14;
  tmpvar_14.xy = tmpvar_10.xy;
  tmpvar_14.z = max (0.0, ((tmpvar_12 * 0.6) + 0.4));
  tmpvar_2 = tmpvar_14;
  gl_Position = gl_Vertex;
  vec4 tmpvar_15;
  tmpvar_15.w = 0.0;
  tmpvar_15.xyz = tmpvar_13;
  gl_TexCoord[2] = tmpvar_15;
  vec4 tmpvar_16;
  tmpvar_16.w = 0.0;
  tmpvar_16.xyz = tmpvar_14;
  gl_TexCoord[3] = tmpvar_16;
}


// stats: 26 alu 0 tex 0 flow
// inputs: 2
//  #0: gl_Normal (high float) 3x1 [-1] loc 2
//  #1: gl_Vertex (high float) 4x1 [-1] loc 0
// uniforms: 2 (total size: 0)
//  #0: _TerrainTreeLightDirections (high float) 3x1 [4]
//  #1: _TranslucencyViewDependency (high float) 1x1 [-1]