uniform mat4 _World2Shadow3; uniform mat4 _World2Shadow2; uniform mat4 _World2Shadow1; uniform mat4 _World2Shadow; uniform mat4 _TerrainEngineBendTree; uniform vec4 _SquashPlaneNormal; uniform float _SquashAmount; uniform vec4 _Scale; uniform mat4 _Object2World; uniform vec4 _LightShadowData; void main () { vec2 tmpvar_1; vec4 pos_2; pos_2.w = gl_Vertex.w; pos_2.xyz = (gl_Vertex.xyz * _Scale.xyz); vec4 tmpvar_3; tmpvar_3.w = 0.0; tmpvar_3.xyz = pos_2.xyz; pos_2.xyz = mix (pos_2.xyz, (_TerrainEngineBendTree * tmpvar_3).xyz, gl_Color.www); vec3 tmpvar_4; tmpvar_4.xz = vec2(0.0, 0.0); tmpvar_4.y = _SquashPlaneNormal.w; vec4 tmpvar_5; tmpvar_5.w = 1.0; tmpvar_5.xyz = mix ((pos_2.xyz + (dot (_SquashPlaneNormal.xyz, (tmpvar_4 - pos_2.xyz)) * _SquashPlaneNormal.xyz)), pos_2.xyz, vec3(_SquashAmount)); pos_2 = tmpvar_5; float tmpvar_6; tmpvar_6 = -((gl_ModelViewMatrix * tmpvar_5).z); tmpvar_1.x = tmpvar_6; tmpvar_1.y = ((tmpvar_6 * _LightShadowData.z) + _LightShadowData.w); vec4 tmpvar_7; tmpvar_7 = (_Object2World * tmpvar_5); gl_Position = (gl_ModelViewProjectionMatrix * tmpvar_5); vec4 tmpvar_8; tmpvar_8.w = 0.0; tmpvar_8.xyz = (_World2Shadow * tmpvar_7).xyz; gl_TexCoord[0] = tmpvar_8; vec4 tmpvar_9; tmpvar_9.w = 0.0; tmpvar_9.xyz = (_World2Shadow1 * tmpvar_7).xyz; gl_TexCoord[1] = tmpvar_9; vec4 tmpvar_10; tmpvar_10.w = 0.0; tmpvar_10.xyz = (_World2Shadow2 * tmpvar_7).xyz; gl_TexCoord[2] = tmpvar_10; vec4 tmpvar_11; tmpvar_11.w = 0.0; tmpvar_11.xyz = (_World2Shadow3 * tmpvar_7).xyz; gl_TexCoord[3] = tmpvar_11; vec4 tmpvar_12; tmpvar_12.zw = vec2(0.0, 0.0); tmpvar_12.xy = tmpvar_1; gl_TexCoord[4] = tmpvar_12; }