struct v2f { vec4 vertex; vec4 uvgrab; vec2 uvbump; vec2 uvmain; }; struct appdata_t { vec4 vertex; vec2 texcoord; }; vec2 MultiplyUV ( in mat4 mat, in vec2 inUV ) { vec4 temp; vec4 tmpvar_1; tmpvar_1.zw = vec2(0.0, 0.0); tmpvar_1.x = inUV.x; tmpvar_1.y = inUV.y; vec4 tmpvar_2; tmpvar_2 = tmpvar_1; temp = tmpvar_2; vec4 tmpvar_3; tmpvar_3 = (mat * temp); temp = tmpvar_3; return temp.xy; } v2f vert ( in appdata_t v ) { float scale; v2f o; float tmpvar_1; tmpvar_1 = 1.0; scale = tmpvar_1; vec4 tmpvar_2; tmpvar_2 = (gl_ModelViewProjectionMatrix * v.vertex); o.vertex = tmpvar_2; vec2 tmpvar_3; tmpvar_3.x = o.vertex.x; tmpvar_3.y = (o.vertex.y * scale); vec2 tmpvar_4; tmpvar_4 = ((tmpvar_3 + o.vertex.w) * 0.5); o.uvgrab.xy = tmpvar_4.xy.xy; vec2 tmpvar_5; tmpvar_5 = o.vertex.zw; o.uvgrab.zw = tmpvar_5.xxxy.zw; vec2 tmpvar_6; tmpvar_6 = MultiplyUV (gl_TextureMatrix[1], v.texcoord); vec2 tmpvar_7; tmpvar_7 = tmpvar_6; o.uvbump = tmpvar_7; vec2 tmpvar_8; tmpvar_8 = MultiplyUV (gl_TextureMatrix[2], v.texcoord); vec2 tmpvar_9; tmpvar_9 = tmpvar_8; o.uvmain = tmpvar_9; return o; } void main () { appdata_t xlt_v; v2f xl_retval; vec4 tmpvar_1; tmpvar_1 = gl_Vertex.xyzw; vec4 tmpvar_2; tmpvar_2 = tmpvar_1; xlt_v.vertex = tmpvar_2; vec2 tmpvar_3; tmpvar_3 = gl_MultiTexCoord0.xy; vec2 tmpvar_4; tmpvar_4 = tmpvar_3; xlt_v.texcoord = tmpvar_4; v2f tmpvar_5; tmpvar_5 = vert (xlt_v); v2f tmpvar_6; tmpvar_6 = tmpvar_5; xl_retval = tmpvar_6; vec4 tmpvar_7; tmpvar_7 = xl_retval.vertex.xyzw; vec4 tmpvar_8; tmpvar_8 = tmpvar_7; gl_Position = tmpvar_8; vec4 tmpvar_9; tmpvar_9 = xl_retval.uvgrab.xyzw; vec4 tmpvar_10; tmpvar_10 = tmpvar_9; gl_TexCoord[0] = tmpvar_10; vec4 tmpvar_11; tmpvar_11.zw = vec2(0.0, 0.0); tmpvar_11.xy = xl_retval.uvbump.xy; vec4 tmpvar_12; tmpvar_12 = tmpvar_11; gl_TexCoord[1] = tmpvar_12; vec4 tmpvar_13; tmpvar_13.zw = vec2(0.0, 0.0); tmpvar_13.xy = xl_retval.uvmain.xy; vec4 tmpvar_14; tmpvar_14 = tmpvar_13; gl_TexCoord[2] = tmpvar_14; }