cbuffer SCALE_OFFSET : register(b0) { float4x4 scaleOffsetMat; int isAlphaTested; float alphaRef; }; struct VertexInput { float4 in_pos: TEXCOORD0; float4 in_normal: TEXCOORD2; float4 in_diff_color: TEXCOORD3; float4 in_tc0: TEXCOORD8; float4 in_tc1: TEXCOORD9; float4 in_tc2: TEXCOORD10; float4 in_tc3: TEXCOORD11; }; struct PixelInput { float4 dst_reg0 : SV_POSITION; float4 dst_reg1 : COLOR0; float4 dst_reg2 : COLOR1; float4 dst_reg3 : COLOR2; float4 dst_reg4 : COLOR3; float dst_reg5 : FOG; float4 dst_reg6 : COLOR4; float4 dst_reg7 : TEXCOORD0; float4 dst_reg8 : TEXCOORD1; float4 dst_reg9 : TEXCOORD2; float4 dst_reg10 : TEXCOORD3; float4 dst_reg11 : TEXCOORD4; float4 dst_reg12 : TEXCOORD5; float4 dst_reg13 : TEXCOORD6; float4 dst_reg14 : TEXCOORD7; float4 dst_reg15 : TEXCOORD8; }; cbuffer CONSTANT_BUFFER : register(b1) { float4 vc[468]; }; PixelInput main(VertexInput In) { float4 tmp0; float4 tmp3; float4 cc0 = float4(0., 0., 0., 0.); float4 tmp5; float4 tmp4; float4 tmp2; float4 tmp1; float4 tmp14; float4 tmp8; float4 tmp6; float4 tmp7; float4 tmp9; float4 tmp10; float4 tmp11; float4 tmp12; float4 tmp13; float4 tmp15; float4 tmp16; float4 dst_reg0 = float4(0.0f, 0.0f, 0.0f, 1.0f); float4 dst_reg1 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg3 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg5 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg6 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg10 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg9 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg8 = float4(0.0, 0.0, 0.0, 0.0); float4 dst_reg7 = float4(0.0, 0.0, 0.0, 0.0); ivec4 a0 = ivec4(0); float4 in_pos = In.in_pos; float4 in_normal = In.in_normal; float4 in_diff_color = In.in_diff_color; float4 in_tc0 = In.in_tc0; float4 in_tc1 = In.in_tc1; float4 in_tc2 = In.in_tc2; float4 in_tc3 = In.in_tc3; int jump_position = 0; while (true) { if (jump_position <= 0) { tmp0.w = dot(in_pos, vc[263]).xxxx.w; tmp0.z = dot(in_pos, vc[262]).xxxx.z; tmp0.y = dot(in_pos, vc[261]).xxxx.y; tmp0.x = dot(in_pos, vc[260]).xxxx.x; tmp3.w = dot(in_pos, vc[259]).xxxx.w; tmp3.y = dot(in_pos, vc[257]).xxxx.y; tmp3.x = dot(in_pos, vc[256]).xxxx.x; cc0.xy = vc[467].wxww.xy; tmp5.xy = dot(in_pos, vc[258]).xxxx.xy; tmp4.z = dot(in_normal.xyzx.xyz, vc[266].xyzx.xyz).xxxx.z; tmp4.y = dot(in_normal.xyzx.xyz, vc[265].xyzx.xyz).xxxx.y; tmp4.x = dot(in_normal.xyzx.xyz, vc[264].xyzx.xyz).xxxx.x; tmp2 = clamp(in_diff_color, 0.0, 1.0); tmp1 = tmp2; tmp4.xyz = (tmp4.xyzx * vc[466].xxxx).xyz; tmp4.w = dot(tmp4.xyzx.xyz, tmp4.xyzx.xyz).xxxx.w; tmp3.z = tmp5.yyyy.z; tmp4.w = 1.f / sqrt(tmp4.wwww).w; tmp14.w = abs(tmp5.xxxx).w; tmp14.xyz = tmp4.xyzx.xyz; if ((cc0.xxxx != float4(0., 0., 0., 0.)).x) tmp14.xyz.x = (tmp4.wwww * tmp4.xyzx).xyz.x; if ((cc0.xxxx != float4(0., 0., 0., 0.)).y) tmp14.xyz.y = (tmp4.wwww * tmp4.xyzx).xyz.y; if ((cc0.xxxx != float4(0., 0., 0., 0.)).z) tmp14.xyz.z = (tmp4.wwww * tmp4.xyzx).xyz.z; if(any(equal(cc0.yyyy, vec4(0.0).yyyy))) { jump_position = 5; continue; } tmp1.xyz = vc[463].xxxx.xyz; tmp1.w = vc[463].xxxx.w; tmp4 = in_diff_color; cc0.x = vc[467].zzzz.x; tmp5.xyz = in_diff_color.xyzx.xyz; tmp2.x = vc[462].xxxx.x; cc0.y = float4((vc[463].xxxx < tmp2.xxxx)).y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).x) tmp5.xyz.x = vc[465].xyzx.xyz.x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).y) tmp5.xyz.y = vc[465].xyzx.xyz.y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).z) tmp5.xyz.z = vc[465].xyzx.xyz.z; if ((cc0.xxxx == float4(0., 0., 0., 0.)).x) tmp4.x = vc[464].x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).y) tmp4.y = vc[464].y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).z) tmp4.z = vc[464].z; if ((cc0.xxxx == float4(0., 0., 0., 0.)).w) tmp4.w = vc[464].w; if(any(equal(cc0.yyyy, vec4(0.0).yyyy))) { jump_position = 2; continue; } } if (jump_position <= 1) { tmp2.x = (tmp1.wwww * vc[463].yyyy).x; a0.x = ivec4(tmp2.xxxx).x; tmp8.z = vc[405].xxxx.z; tmp2.xyz = vc[463].xxxx.xyz; tmp6.xyz = (tmp3.xyzx * vc[406 + a0.x].wwww).xyz; tmp6.xyz = (vc[406 + a0.x].xyzx * tmp3.wwww + -tmp6.xyzx).xyz; tmp1.w = (tmp1.wwww + vc[463].zzzz).w; tmp5.w = dot(tmp6.xyzx.xyz, tmp6.xyzx.xyz).xxxx.w; tmp2.w = vc[463].xxxx.w; cc0.w = 1.f / sqrt(tmp5.wwww).w; cc0.z = float4((tmp1.wwww < vc[462].xxxx)).z; cc0.x = vc[411 + a0.x].xxxx.x; tmp6.xyz = (tmp5.wwww * tmp6.xyzx).xyz; tmp6.w = dot(tmp6.xyzx.xyz, vc[410 + a0.x].xyzx.xyz).xxxx.w; tmp7.x = float4((vc[411 + a0.x].xxxx >= tmp2.wwww)).x; tmp6.w = -tmp6.wwww.w; if ((cc0.xxxx < float4(0., 0., 0., 0.)).x) tmp6.w = float4(vc[463].zzzz.w.xxxx).x; tmp2.w = tmp6.wwww.w; tmp7.y = float4((tmp6.wwww > vc[411 + a0.x].xxxx)).y; tmp6.w = log2(tmp6.wwww).w; tmp7.z = float4((tmp7.yyyy == vc[463].xxxx)).z; cc0.y = (tmp7.xxxx * tmp7.yyyy).y; cc0.x = (tmp7.xxxx * tmp7.zzzz).x; tmp7.xyz = (tmp6.xyzx + vc[463].xxzx).xyz; tmp5.w = (1.0 / tmp5.wwww).w; tmp6.w = (vc[411 + a0.x].yyyy * tmp6.wwww).w; tmp7.w = dot(tmp7.xyzx.xyz, tmp7.xyzx.xyz).xxxx.w; if ((cc0.yyyy > float4(0., 0., 0., 0.)).x) tmp2.w = float4(exp2(tmp6.wwww).w.xxxx).x; cc0.y = dot(tmp7.xyzx.xyz, tmp7.xyzx.xyz).xxxx.y; tmp8.x = dot(tmp14.xyzx.xyz, tmp6.xyzx.xyz).xxxx.x; tmp6.y = 1.f / sqrt(tmp7.wwww).y; tmp6.x = (vc[412 + a0.x].zzzz * tmp5.wwww + vc[412 + a0.x].yyyy).x; if ((cc0.yyyy > float4(0., 0., 0., 0.)).x) tmp2.xyz.x = (tmp6.yyyy * tmp7.xyzx).xyz.x; if ((cc0.yyyy > float4(0., 0., 0., 0.)).y) tmp2.xyz.y = (tmp6.yyyy * tmp7.xyzx).xyz.y; if ((cc0.yyyy > float4(0., 0., 0., 0.)).z) tmp2.xyz.z = (tmp6.yyyy * tmp7.xyzx).xyz.z; tmp8.y = dot(tmp14.xyzx.xyz, tmp2.xyzx.xyz).xxxx.y; tmp2.x = (tmp6.xxxx * tmp5.wwww + vc[412 + a0.x].xxxx).x; tmp2.yz = float4(1.0, tmp8.xyxz.x, (tmp8.xyxz.x > 0.0 ? exp(tmp8.xyxz.w * log2(tmp8.xyxz.y)) : 0.0), 1.0).yz; if ((cc0.xxxx > float4(0., 0., 0., 0.)).x) tmp2.w = float4(vc[463].xxxx.w.xxxx).x; tmp5.w = (1.0 / tmp2.xxxx).w; tmp6.xyz = (tmp2.yyyy * tmp4.xyzx).xyz; tmp2.xyz = (tmp2.zzzz * vc[404].xyzx).xyz; tmp6.xyz = (tmp6.xyzx * vc[408 + a0.x].xyzx).xyz; tmp6.xyz = (tmp5.xyzx * vc[407 + a0.x].xyzx + tmp6.xyzx).xyz; tmp2.xyz = (tmp2.xyzx * vc[409 + a0.x].xyzx + tmp6.xyzx).xyz; tmp2.w = (tmp2.wwww * tmp5.wwww).w; tmp1.xyz = (tmp2.wwww * tmp2.xyzx + tmp1.xyzx).xyz; if(any(greaterThan(cc0.zzzz, vec4(0.0).zzzz))) { jump_position = 1; continue; } } if (jump_position <= 2) { cc0.x = vc[467].yyyy.x; tmp2.xyz = (tmp5.xyzx * vc[403].xyzx).xyz; tmp2.xyz = (tmp2.xyzx + vc[402].xyzx).xyz; tmp1.xyz = (tmp1.xyzx + tmp2.xyzx).xyz; tmp1.w = tmp4.wwww.w; tmp2 = clamp(tmp1, 0.0, 1.0); tmp1 = tmp2; if(any(equal(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 5; continue; } tmp2.x = vc[462].xxxx.x; cc0.x = float4((vc[463].xxxx < tmp2.xxxx)).x; tmp2.xyz = vc[463].xxxx.xyz; if(any(equal(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 4; continue; } tmp2.w = vc[463].xxxx.w; } if (jump_position <= 3) { tmp5.w = (tmp2.wwww * vc[463].yyyy).w; a0.x = ivec4(tmp5.wwww).x; tmp9.z = vc[405].xxxx.z; tmp6.xyz = vc[463].xxxx.xyz; tmp7.xyz = (tmp3.xyzx * vc[406 + a0.x].wwww).xyz; tmp7.xyz = (vc[406 + a0.x].xyzx * tmp3.wwww + -tmp7.xyzx).xyz; tmp2.w = (tmp2.wwww + vc[463].zzzz).w; tmp6.w = dot(tmp7.xyzx.xyz, tmp7.xyzx.xyz).xxxx.w; tmp5.w = vc[463].xxxx.w; cc0.w = 1.f / sqrt(tmp6.wwww).w; cc0.z = float4((tmp2.wwww < vc[462].xxxx)).z; cc0.x = vc[411 + a0.x].xxxx.x; tmp7.xyz = (tmp6.wwww * tmp7.xyzx).xyz; tmp7.w = dot(tmp7.xyzx.xyz, vc[410 + a0.x].xyzx.xyz).xxxx.w; tmp8.x = float4((vc[411 + a0.x].xxxx >= tmp5.wwww)).x; tmp8.y = -tmp7.wwww.y; if ((cc0.xxxx < float4(0., 0., 0., 0.)).x) tmp8.y = float4(vc[463].zzzz.y.xxxx).x; tmp7.w = log2(tmp8.yyyy).w; tmp5.w = tmp8.yyyy.w; tmp8.y = float4((tmp8.yyyy > vc[411 + a0.x].xxxx)).y; tmp8.z = float4((tmp8.yyyy == vc[463].xxxx)).z; cc0.y = (tmp8.xxxx * tmp8.yyyy).y; cc0.x = (tmp8.xxxx * tmp8.zzzz).x; tmp8.xyz = (tmp7.xyzx + vc[463].xxzx).xyz; tmp7.w = (vc[411 + a0.x].yyyy * tmp7.wwww).w; tmp6.w = (1.0 / tmp6.wwww).w; tmp8.w = dot(tmp8.xyzx.xyz, tmp8.xyzx.xyz).xxxx.w; if ((cc0.yyyy > float4(0., 0., 0., 0.)).x) tmp5.w = float4(exp2(tmp7.wwww).w.xxxx).x; cc0.y = dot(tmp8.xyzx.xyz, tmp8.xyzx.xyz).xxxx.y; tmp9.x = dot(-tmp14.xyzx.xyz, tmp7.xyzx.xyz).xxxx.x; tmp7.y = 1.f / sqrt(tmp8.wwww).y; tmp7.x = (vc[412 + a0.x].zzzz * tmp6.wwww + vc[412 + a0.x].yyyy).x; if ((cc0.yyyy > float4(0., 0., 0., 0.)).x) tmp6.xyz.x = (tmp7.yyyy * tmp8.xyzx).xyz.x; if ((cc0.yyyy > float4(0., 0., 0., 0.)).y) tmp6.xyz.y = (tmp7.yyyy * tmp8.xyzx).xyz.y; if ((cc0.yyyy > float4(0., 0., 0., 0.)).z) tmp6.xyz.z = (tmp7.yyyy * tmp8.xyzx).xyz.z; tmp9.y = dot(-tmp14.xyzx.xyz, tmp6.xyzx.xyz).xxxx.y; tmp6.x = (tmp7.xxxx * tmp6.wwww + vc[412 + a0.x].xxxx).x; tmp7.yz = float4(1.0, tmp9.xyxz.x, (tmp9.xyxz.x > 0.0 ? exp(tmp9.xyxz.w * log2(tmp9.xyxz.y)) : 0.0), 1.0).yz; if ((cc0.xxxx > float4(0., 0., 0., 0.)).x) tmp5.w = float4(vc[463].xxxx.w.xxxx).x; tmp6.w = (1.0 / tmp6.xxxx).w; tmp6.xyz = (tmp7.zzzz * vc[404].xyzx).xyz; tmp7.xyz = (tmp7.yyyy * tmp4.xyzx).xyz; tmp7.xyz = (tmp7.xyzx * vc[408 + a0.x].xyzx).xyz; tmp7.xyz = (tmp5.xyzx * vc[407 + a0.x].xyzx + tmp7.xyzx).xyz; tmp6.xyz = (tmp6.xyzx * vc[409 + a0.x].xyzx + tmp7.xyzx).xyz; tmp5.w = (tmp5.wwww * tmp6.wwww).w; tmp2.xyz = (tmp5.wwww * tmp6.xyzx + tmp2.xyzx).xyz; if(any(greaterThan(cc0.zzzz, vec4(0.0).zzzz))) { jump_position = 3; continue; } } if (jump_position <= 4) { tmp2.w = clamp(tmp4.wwww.w, 0.0, 1.0); tmp4.xyz = (tmp5.xyzx * vc[403].xyzx).xyz; tmp4.xyz = (tmp4.xyzx + vc[402].xyzx).xyz; tmp2.xyz = clamp((tmp2.xyzx + tmp4.xyzx).xyz, 0.0, 1.0); } if (jump_position <= 5) { tmp4.x = vc[463].xxxx.x; tmp4 = float4((vc[401] != tmp4.xxxx)); tmp4.x = clamp((tmp4.xxxx + tmp4.yyyy).x, 0.0, 1.0); tmp4.x = clamp((tmp4.xxxx + tmp4.zzzz).x, 0.0, 1.0); cc0.x = clamp((tmp4.xxxx + tmp4.wwww).x, 0.0, 1.0); if(any(lessThanEqual(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 6; continue; } tmp4 = in_tc0; tmp9.x = vc[400].xxxx.x; tmp7.zw = vc[463].xxxz.zw; tmp9.y = dot(tmp14.xyzx.xyz, tmp3.xyzx.xyz).xxxx.y; tmp5 = (tmp3.yyyy * vc[268]); tmp8.x = dot(tmp3.xyzx.xyz, tmp3.xyzx.xyz).xxxx.x; tmp7.xy = vc[400].yzyy.xy; tmp4 = in_tc0; tmp6 = (in_pos.yyyy * vc[268]); tmp8.zw = vc[463].zzzw.zw; cc0 = float4((vc[401] == tmp8.zzzz)); tmp6 = (in_pos.xxxx * vc[267] + tmp6); tmp6 = (in_pos.zzzz * vc[269] + tmp6); if ((cc0 > float4(0., 0., 0., 0.)).x) tmp4.x = (in_pos.wwww * vc[270] + tmp6).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp4.y = (in_pos.wwww * vc[270] + tmp6).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp4.z = (in_pos.wwww * vc[270] + tmp6).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp4.w = (in_pos.wwww * vc[270] + tmp6).w; cc0 = float4((vc[401] == tmp7.xxxx)); tmp6.x = 1.f / sqrt(tmp8.xxxx).x; tmp5 = (tmp3.xxxx * vc[267] + tmp5); tmp6.xyz = (tmp6.xxxx * tmp3.xyzx).xyz; tmp6.w = dot(tmp14.xyzx.xyz, tmp6.xyzx.xyz).xxxx.w; tmp5 = (tmp3.zzzz * vc[269] + tmp5); tmp8.xyz = (tmp14.xyzx * tmp6.wwww).xyz; tmp8.xyz = (tmp8.xyzx * vc[400].yyyy).xyz; tmp6.xyz = (tmp6.xyzx + -tmp8.xyzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp4.x = (tmp3.wwww * vc[270] + tmp5).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp4.y = (tmp3.wwww * vc[270] + tmp5).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp4.z = (tmp3.wwww * vc[270] + tmp5).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp4.w = (tmp3.wwww * vc[270] + tmp5).w; tmp5.xyz = (tmp6.xyzx + vc[463].xxzx).xyz; cc0 = float4((vc[401] == tmp7.yyyy)); tmp5.w = dot(tmp5.xyzx.xyz, tmp5.xyzx.xyz).xxxx.w; tmp5.xyz = (tmp14.xyzx * tmp9.yyyy).xyz; tmp5.w = 1.f / sqrt(tmp5.wwww).w; tmp5.xyz = (-tmp5.xyzx * vc[400].yyyy + tmp3.xyzx).xyz; tmp6.xy = (tmp5.wwww * tmp6.xyxx).xy; tmp7.xy = (tmp6.xyxx * vc[400].wwww + vc[400].wwww).xy; tmp5.w = dot(tmp5.xyzx.xyz, tmp5.xyzx.xyz).xxxx.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp4.x = tmp7.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp4.y = tmp7.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp4.z = tmp7.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp4.w = tmp7.w; cc0 = float4((vc[401] == tmp9.xxxx)); tmp6.x = 1.f / sqrt(tmp5.wwww).x; tmp5.w = vc[463].zzzz.w; tmp5.xyz = (tmp6.xxxx * tmp5.xyzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp4.x = tmp5.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp4.y = tmp5.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp4.z = tmp5.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp4.w = tmp5.w; cc0 = float4((vc[401] == tmp8.wwww)); tmp5.xyz = tmp14.xyzx.xyz; tmp5.w = vc[463].zzzz.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp4.x = tmp5.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp4.y = tmp5.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp4.z = tmp5.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp4.w = tmp5.w; } if (jump_position <= 6) { tmp5.x = vc[463].xxxx.x; tmp5 = float4((vc[399] != tmp5.xxxx)); tmp5.x = clamp((tmp5.xxxx + tmp5.yyyy).x, 0.0, 1.0); tmp5.x = clamp((tmp5.xxxx + tmp5.zzzz).x, 0.0, 1.0); cc0.x = clamp((tmp5.xxxx + tmp5.wwww).x, 0.0, 1.0); tmp5 = tmp4; if(any(lessThanEqual(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 7; continue; } tmp6 = in_tc1; tmp9.zw = vc[463].xxxz.zw; tmp9.x = dot(tmp14.xyzx.xyz, tmp3.xyzx.xyz).xxxx.x; tmp7 = (tmp3.yyyy * vc[276]); tmp10.xyz = vc[400].xyzx.xyz; tmp6 = in_tc1; tmp9.y = dot(tmp3.xyzx.xyz, tmp3.xyzx.xyz).xxxx.y; tmp8 = (in_pos.yyyy * vc[276]); tmp11.zw = vc[463].zzzw.zw; cc0 = float4((vc[399] == tmp11.zzzz)); tmp8 = (in_pos.xxxx * vc[275] + tmp8); tmp9.y = 1.f / sqrt(tmp9.yyyy).y; tmp8 = (in_pos.zzzz * vc[277] + tmp8); if ((cc0 > float4(0., 0., 0., 0.)).x) tmp6.x = (in_pos.wwww * vc[278] + tmp8).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp6.y = (in_pos.wwww * vc[278] + tmp8).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp6.z = (in_pos.wwww * vc[278] + tmp8).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp6.w = (in_pos.wwww * vc[278] + tmp8).w; cc0 = float4((vc[399] == tmp10.yyyy)); tmp8.xyz = (tmp9.yyyy * tmp3.xyzx).xyz; tmp8.w = dot(tmp14.xyzx.xyz, tmp8.xyzx.xyz).xxxx.w; tmp7 = (tmp3.xxxx * vc[275] + tmp7); tmp11.xyz = (tmp14.xyzx * tmp8.wwww).xyz; tmp11.xyz = (tmp11.xyzx * vc[400].yyyy).xyz; tmp8.xyz = (tmp8.xyzx + -tmp11.xyzx).xyz; tmp7 = (tmp3.zzzz * vc[277] + tmp7); tmp11.xyz = (tmp8.xyzx + vc[463].xxzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp6.x = (tmp3.wwww * vc[278] + tmp7).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp6.y = (tmp3.wwww * vc[278] + tmp7).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp6.z = (tmp3.wwww * vc[278] + tmp7).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp6.w = (tmp3.wwww * vc[278] + tmp7).w; tmp7.w = dot(tmp11.xyzx.xyz, tmp11.xyzx.xyz).xxxx.w; cc0 = float4((vc[399] == tmp10.zzzz)); tmp7.xyz = (tmp14.xyzx * tmp9.xxxx).xyz; tmp7.w = 1.f / sqrt(tmp7.wwww).w; tmp7.xyz = (-tmp7.xyzx * vc[400].yyyy + tmp3.xyzx).xyz; tmp8.xy = (tmp7.wwww * tmp8.xyxx).xy; tmp9.xy = (tmp8.xyxx * vc[400].wwww + vc[400].wwww).xy; tmp7.w = dot(tmp7.xyzx.xyz, tmp7.xyzx.xyz).xxxx.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp6.x = tmp9.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp6.y = tmp9.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp6.z = tmp9.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp6.w = tmp9.w; cc0.x = 1.f / sqrt(tmp7.wwww).x; cc0 = float4((vc[399] == tmp10.xxxx)); tmp7.w = vc[463].zzzz.w; tmp7.xyz = (tmp8.xxxx * tmp7.xyzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp6.x = tmp7.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp6.y = tmp7.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp6.z = tmp7.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp6.w = tmp7.w; cc0 = float4((vc[399] == tmp11.wwww)); tmp7.xyz = tmp14.xyzx.xyz; tmp7.w = vc[463].zzzz.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp6.x = tmp7.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp6.y = tmp7.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp6.z = tmp7.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp6.w = tmp7.w; } if (jump_position <= 7) { tmp7.x = vc[463].xxxx.x; tmp7 = float4((vc[398] != tmp7.xxxx)); tmp7.x = clamp((tmp7.xxxx + tmp7.yyyy).x, 0.0, 1.0); tmp7.x = clamp((tmp7.xxxx + tmp7.zzzz).x, 0.0, 1.0); cc0.x = clamp((tmp7.xxxx + tmp7.wwww).x, 0.0, 1.0); tmp7 = tmp6; if(any(lessThanEqual(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 8; continue; } tmp8 = in_tc2; tmp11.zw = vc[463].xxxz.zw; tmp11.x = dot(tmp14.xyzx.xyz, tmp3.xyzx.xyz).xxxx.x; tmp9 = (tmp3.yyyy * vc[284]); tmp12.xyz = vc[400].xyzx.xyz; tmp8 = in_tc2; tmp11.y = dot(tmp3.xyzx.xyz, tmp3.xyzx.xyz).xxxx.y; tmp10 = (in_pos.yyyy * vc[284]); tmp13.zw = vc[463].zzzw.zw; cc0 = float4((vc[398] == tmp13.zzzz)); tmp10 = (in_pos.xxxx * vc[283] + tmp10); tmp11.y = 1.f / sqrt(tmp11.yyyy).y; tmp10 = (in_pos.zzzz * vc[285] + tmp10); if ((cc0 > float4(0., 0., 0., 0.)).x) tmp8.x = (in_pos.wwww * vc[286] + tmp10).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp8.y = (in_pos.wwww * vc[286] + tmp10).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp8.z = (in_pos.wwww * vc[286] + tmp10).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp8.w = (in_pos.wwww * vc[286] + tmp10).w; cc0 = float4((vc[398] == tmp12.yyyy)); tmp10.xyz = (tmp11.yyyy * tmp3.xyzx).xyz; tmp10.w = dot(tmp14.xyzx.xyz, tmp10.xyzx.xyz).xxxx.w; tmp9 = (tmp3.xxxx * vc[283] + tmp9); tmp13.xyz = (tmp14.xyzx * tmp10.wwww).xyz; tmp13.xyz = (tmp13.xyzx * vc[400].yyyy).xyz; tmp10.xyz = (tmp10.xyzx + -tmp13.xyzx).xyz; tmp9 = (tmp3.zzzz * vc[285] + tmp9); tmp13.xyz = (tmp10.xyzx + vc[463].xxzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp8.x = (tmp3.wwww * vc[286] + tmp9).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp8.y = (tmp3.wwww * vc[286] + tmp9).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp8.z = (tmp3.wwww * vc[286] + tmp9).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp8.w = (tmp3.wwww * vc[286] + tmp9).w; tmp9.w = dot(tmp13.xyzx.xyz, tmp13.xyzx.xyz).xxxx.w; cc0 = float4((vc[398] == tmp12.zzzz)); tmp9.xyz = (tmp14.xyzx * tmp11.xxxx).xyz; tmp9.w = 1.f / sqrt(tmp9.wwww).w; tmp9.xyz = (-tmp9.xyzx * vc[400].yyyy + tmp3.xyzx).xyz; tmp10.xy = (tmp9.wwww * tmp10.xyxx).xy; tmp11.xy = (tmp10.xyxx * vc[400].wwww + vc[400].wwww).xy; tmp9.w = dot(tmp9.xyzx.xyz, tmp9.xyzx.xyz).xxxx.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp8.x = tmp11.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp8.y = tmp11.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp8.z = tmp11.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp8.w = tmp11.w; cc0.x = 1.f / sqrt(tmp9.wwww).x; cc0 = float4((vc[398] == tmp12.xxxx)); tmp9.w = vc[463].zzzz.w; tmp9.xyz = (tmp10.xxxx * tmp9.xyzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp8.x = tmp9.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp8.y = tmp9.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp8.z = tmp9.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp8.w = tmp9.w; cc0 = float4((vc[398] == tmp13.wwww)); tmp9.xyz = tmp14.xyzx.xyz; tmp9.w = vc[463].zzzz.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp8.x = tmp9.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp8.y = tmp9.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp8.z = tmp9.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp8.w = tmp9.w; } if (jump_position <= 8) { tmp9.x = vc[463].xxxx.x; tmp9 = float4((vc[397] != tmp9.xxxx)); tmp9.x = clamp((tmp9.xxxx + tmp9.yyyy).x, 0.0, 1.0); tmp9.x = clamp((tmp9.xxxx + tmp9.zzzz).x, 0.0, 1.0); cc0.x = clamp((tmp9.xxxx + tmp9.wwww).x, 0.0, 1.0); tmp9 = tmp8; if(any(lessThanEqual(cc0.xxxx, vec4(0.0).xxxx))) { jump_position = 9; continue; } tmp10 = in_tc3; tmp13.zw = vc[463].xxxz.zw; tmp13.x = dot(tmp14.xyzx.xyz, tmp3.xyzx.xyz).xxxx.x; tmp11 = (tmp3.yyyy * vc[292]); tmp15.xyz = vc[400].xyzx.xyz; tmp10 = in_tc3; tmp13.y = dot(tmp3.xyzx.xyz, tmp3.xyzx.xyz).xxxx.y; tmp12 = (in_pos.yyyy * vc[292]); tmp16.zw = vc[463].zzzw.zw; cc0 = float4((vc[397] == tmp16.zzzz)); tmp12 = (in_pos.xxxx * vc[291] + tmp12); tmp13.y = 1.f / sqrt(tmp13.yyyy).y; tmp12 = (in_pos.zzzz * vc[293] + tmp12); if ((cc0 > float4(0., 0., 0., 0.)).x) tmp10.x = (in_pos.wwww * vc[294] + tmp12).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp10.y = (in_pos.wwww * vc[294] + tmp12).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp10.z = (in_pos.wwww * vc[294] + tmp12).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp10.w = (in_pos.wwww * vc[294] + tmp12).w; cc0 = float4((vc[397] == tmp15.yyyy)); tmp12.xyz = (tmp13.yyyy * tmp3.xyzx).xyz; tmp12.w = dot(tmp14.xyzx.xyz, tmp12.xyzx.xyz).xxxx.w; tmp11 = (tmp3.xxxx * vc[291] + tmp11); tmp16.xyz = (tmp14.xyzx * tmp12.wwww).xyz; tmp16.xyz = (tmp16.xyzx * vc[400].yyyy).xyz; tmp12.xyz = (tmp12.xyzx + -tmp16.xyzx).xyz; tmp11 = (tmp3.zzzz * vc[293] + tmp11); tmp16.xyz = (tmp12.xyzx + vc[463].xxzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp10.x = (tmp3.wwww * vc[294] + tmp11).x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp10.y = (tmp3.wwww * vc[294] + tmp11).y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp10.z = (tmp3.wwww * vc[294] + tmp11).z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp10.w = (tmp3.wwww * vc[294] + tmp11).w; tmp11.w = dot(tmp16.xyzx.xyz, tmp16.xyzx.xyz).xxxx.w; cc0 = float4((vc[397] == tmp15.zzzz)); tmp11.xyz = (tmp14.xyzx * tmp13.xxxx).xyz; tmp11.w = 1.f / sqrt(tmp11.wwww).w; tmp11.xyz = (-tmp11.xyzx * vc[400].yyyy + tmp3.xyzx).xyz; tmp12.xy = (tmp11.wwww * tmp12.xyxx).xy; tmp13.xy = (tmp12.xyxx * vc[400].wwww + vc[400].wwww).xy; tmp11.w = dot(tmp11.xyzx.xyz, tmp11.xyzx.xyz).xxxx.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp10.x = tmp13.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp10.y = tmp13.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp10.z = tmp13.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp10.w = tmp13.w; cc0.x = 1.f / sqrt(tmp11.wwww).x; cc0 = float4((vc[397] == tmp15.xxxx)); tmp11.w = vc[463].zzzz.w; tmp11.xyz = (tmp12.xxxx * tmp11.xyzx).xyz; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp10.x = tmp11.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp10.y = tmp11.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp10.z = tmp11.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp10.w = tmp11.w; cc0 = float4((vc[397] == tmp16.wwww)); tmp11.xyz = tmp14.xyzx.xyz; tmp11.w = vc[463].zzzz.w; if ((cc0 > float4(0., 0., 0., 0.)).x) tmp10.x = tmp11.x; if ((cc0 > float4(0., 0., 0., 0.)).y) tmp10.y = tmp11.y; if ((cc0 > float4(0., 0., 0., 0.)).z) tmp10.z = tmp11.z; if ((cc0 > float4(0., 0., 0., 0.)).w) tmp10.w = tmp11.w; } if (jump_position <= 9) { dst_reg0 = tmp0; dst_reg1 = tmp1; dst_reg3 = tmp2; dst_reg5.y = dot(tmp3, vc[395]).xxxx.y; dst_reg5.z = dot(tmp3, vc[394]).xxxx.z; dst_reg5.w = dot(tmp3, vc[393]).xxxx.w; dst_reg6.y = dot(tmp3, vc[392]).xxxx.y; dst_reg6.z = dot(tmp3, vc[391]).xxxx.z; dst_reg6.w = dot(tmp3, vc[390]).xxxx.w; dst_reg5.x = tmp14.wwww.x; tmp0.w = dot(tmp10, vc[298]).xxxx.w; tmp0.z = dot(tmp10, vc[297]).xxxx.z; tmp0.y = dot(tmp10, vc[296]).xxxx.y; tmp0.x = dot(tmp10, vc[295]).xxxx.x; dst_reg10 = tmp10; dst_reg9.w = dot(tmp8, vc[290]).xxxx.w; dst_reg9.z = dot(tmp8, vc[289]).xxxx.z; dst_reg9.y = dot(tmp8, vc[288]).xxxx.y; dst_reg9.x = dot(tmp8, vc[287]).xxxx.x; dst_reg8.w = dot(tmp6, vc[282]).xxxx.w; dst_reg8.z = dot(tmp6, vc[281]).xxxx.z; dst_reg8.y = dot(tmp6, vc[280]).xxxx.y; cc0.x = vc[396].xxxx.x; dst_reg7.w = dot(tmp4, vc[274]).xxxx.w; dst_reg7.z = dot(tmp4, vc[273]).xxxx.z; dst_reg7.y = dot(tmp4, vc[272]).xxxx.y; dst_reg7.x = dot(tmp4, vc[271]).xxxx.x; dst_reg8.x = dot(tmp6, vc[279]).xxxx.x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).x) dst_reg7.x = tmp5.x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).y) dst_reg7.y = tmp5.y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).z) dst_reg7.z = tmp5.z; if ((cc0.xxxx == float4(0., 0., 0., 0.)).w) dst_reg7.w = tmp5.w; if ((cc0.xxxx == float4(0., 0., 0., 0.)).x) dst_reg8.x = tmp7.x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).y) dst_reg8.y = tmp7.y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).z) dst_reg8.z = tmp7.z; if ((cc0.xxxx == float4(0., 0., 0., 0.)).w) dst_reg8.w = tmp7.w; if ((cc0.xxxx == float4(0., 0., 0., 0.)).x) dst_reg9.x = tmp9.x; if ((cc0.xxxx == float4(0., 0., 0., 0.)).y) dst_reg9.y = tmp9.y; if ((cc0.xxxx == float4(0., 0., 0., 0.)).z) dst_reg9.z = tmp9.z; if ((cc0.xxxx == float4(0., 0., 0., 0.)).w) dst_reg9.w = tmp9.w; if ((cc0.xxxx != float4(0., 0., 0., 0.)).x) dst_reg10.x = tmp0.x; if ((cc0.xxxx != float4(0., 0., 0., 0.)).y) dst_reg10.y = tmp0.y; if ((cc0.xxxx != float4(0., 0., 0., 0.)).z) dst_reg10.z = tmp0.z; if ((cc0.xxxx != float4(0., 0., 0., 0.)).w) dst_reg10.w = tmp0.w; } break; } PixelInput Out; Out.dst_reg0 = dst_reg0; Out.dst_reg1 = dst_reg1; Out.dst_reg3 = dst_reg3; Out.dst_reg5 = dst_reg5; Out.dst_reg5 = dst_reg5; Out.dst_reg5 = dst_reg5; Out.dst_reg5 = dst_reg5; Out.dst_reg6 = dst_reg6; Out.dst_reg6 = dst_reg6; Out.dst_reg6 = dst_reg6; Out.dst_reg6 = dst_reg6; Out.dst_reg7 = dst_reg7; Out.dst_reg8 = dst_reg8; Out.dst_reg9 = dst_reg9; Out.dst_reg10 = dst_reg10; Out.dst_reg6 = dst_reg6; Out.dst_reg0 = mul(Out.dst_reg0, scaleOffsetMat); return Out; }