#version 310 es #ifdef GL_EXT_texture_cube_map_array #extension GL_EXT_texture_cube_map_array : enable #endif #ifdef GL_EXT_texture_buffer #extension GL_EXT_texture_buffer : enable #endif // end extensions precision mediump float; precision highp int; void compiler_internal_AdjustInputSemantic(inout vec4 TempVariable) { #if HLSLCC_DX11ClipSpace TempVariable.y = -TempVariable.y; TempVariable.z = ( TempVariable.z + TempVariable.w ) / 2.0; #endif } void compiler_internal_AdjustOutputSemantic(inout vec4 Src) { #if HLSLCC_DX11ClipSpace Src.y = -Src.y; Src.z = ( 2.0 * Src.z ) - Src.w; #endif } bool compiler_internal_AdjustIsFrontFacing(bool isFrontFacing) { #if HLSLCC_DX11ClipSpace return !isFrontFacing; #else return isFrontFacing; #endif } uniform vec4 pc0_m[18]; uniform ivec4 pc0_i[1]; uniform highp vec4 pc0_h[3]; uniform uvec4 pc3_u[1]; uniform highp vec4 pc3_h[34]; uniform uvec4 pc4_u[1]; uniform highp vec4 pc4_h[34]; uniform uvec4 pc5_u[1]; uniform highp vec4 pc5_h[34]; uniform uvec4 pc6_u[1]; uniform highp vec4 pc6_h[34]; uniform highp vec4 pc2_h[13]; uniform uvec4 pc1_u[1]; uniform ivec4 pc1_i[1]; uniform highp vec4 pc1_h[2]; uniform vec4 pc7_m[1]; uniform vec4 pc8_m[4]; uniform uvec4 pu_u[1]; uniform ivec4 pu_i[1]; uniform highp vec4 pu_h[2]; uniform mediump sampler2D ps4; uniform mediump sampler2D ps1; uniform mediump sampler2D ps3; uniform mediump sampler2D ps2; uniform highp sampler2DShadow ps5; uniform highp usamplerBuffer ps0; uniform highp sampler2D ps7; uniform highp sampler2D ps6; layout(location=0) in vec4 in_TEXCOORD10_centroid; layout(location=1) in vec4 in_TEXCOORD11_centroid; layout(location=2) in highp vec4 in_TEXCOORD0; layout(location=4) in highp vec4 in_TEXCOORD8; layout(location=0) out vec4 out_Target0; void main() { highp float f0; f0 = pu_h[1].x; bool b1; b1 = bool(pu_u[0].x); int i2; i2 = pu_i[0].x; highp float f3; f3 = pu_h[0].x; uint u4; u4 = pc6_u[0].x; uint u5; u5 = pc5_u[0].x; uint u6; u6 = pc4_u[0].x; uint u7; u7 = pc3_u[0].x; int i8; i8 = pc1_i[0].x; uint u9; u9 = pc1_u[0].x; int i10; i10 = pc0_i[0].x; float h11; h11 = pc0_m[1].x; highp vec4 v12; v12.xyzw = gl_FragCoord; v12.w = (1.0/(gl_FragCoord.w)); vec4 v13; highp vec4 v14; float h15; highp vec3 v16; vec3 v17; vec3 v18; v18.xyz = (cross(in_TEXCOORD11_centroid.xyz,in_TEXCOORD10_centroid.xyz)*in_TEXCOORD11_centroid.www); highp vec4 v19; highp vec3 v20; highp vec2 v21; v21.xy = pc0_m[0].xy; v20.xy = ((((gl_FragCoord.xy+(-v21))*pc0_h[1].zw)+vec2(-5.000000e-01,-5.000000e-01))*vec2(2.000000e+00,-2.000000e+00)); v20.z = gl_FragCoord.z; highp vec4 v22; v22.w = 1.000000e+00; v22.xyz = v20; v19.xyzw = (v22*v12.wwww); highp vec3 v23; v23.xyz = (in_TEXCOORD8.xyz+(-pc0_h[0].xyz)); highp vec3 v24; v24.xyz = normalize((-in_TEXCOORD8.xyz)); vec3 v25; v25.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); vec4 v26; highp float f27; f27 = pc7_m[0].x; v26.xyzw = texture(ps2,in_TEXCOORD0.xy,f27); vec4 v28; highp float f29; f29 = pc7_m[0].x; v28.xyzw = texture(ps3,in_TEXCOORD0.xy,f29); vec4 v30; v30.xyzw = texture(ps1,in_TEXCOORD0.xy); vec4 v31; highp float f32; f32 = pc8_m[1].x; highp float f33; f33 = -1.000000e+00; v31.xyzw = texture(ps4,(in_TEXCOORD0.xy*vec2(f32)),f33); float h34; h34 = pc8_m[2].y; float h35; h35 = pc7_m[0].z; float h36; h36 = pc8_m[2].w; float h37; h37 = pc8_m[3].x; float h38; vec3 v39; vec3 v40; v40.xyz = (v26.xyz*pc8_m[0].xyz); float h41; h41 = mix(v26.w,1.000000e+00,pc8_m[2].y); v39.xyz = vec3(0.000000e+00,0.000000e+00,1.000000e+00); v39.xy = ((v28.wy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); float h42; h42 = sqrt(clamp((1.000000e+00+(-dot(v39.xy,v39.xy))),0.000000e+00,1.000000e+00)); v39.z = h42; float h43; highp vec3 v44; v44.xyz = ((in_TEXCOORD11_centroid.xyz*vec3(h42))+((v18*v39.yyy)+(in_TEXCOORD10_centroid.xyz*v39.xxx))); float h45; h45 = dot(v44,v24); h43 = clamp((1.000000e+00+(-clamp(h45,0.000000e+00,1.000000e+00))),0.000000e+00,1.000000e+00); float h46; h46 = (mix(pc8_m[2].x,pc8_m[1].w,v28.x)+((h43*h43)*3.000000e-01)); h38 = h46; float h47; highp float f48; f48 = v28.z; highp float f49; f49 = pc8_m[2].z; float h50; h50 = (f48*f49); h47 = h50; vec2 v51; highp float f52; f52 = pc8_m[1].z; v51.xy = ((texture(ps3,in_TEXCOORD0.xy,f52).wy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); vec3 v53; v53.xy = v51; v53.z = sqrt(clamp((1.000000e+00+(-dot(v51,v51))),0.000000e+00,1.000000e+00)); vec3 v54; v54.xyz = mix(v39,v53,vec3(7.000000e-01,7.000000e-01,7.000000e-01)); vec3 v55; v55.xyz = ((in_TEXCOORD11_centroid.xyz*v54.zzz)+((v18*v54.yyy)+(in_TEXCOORD10_centroid.xyz*v54.xxx))); if ((pc8_m[2].w>0.000000e+00)) { vec3 v56; v56.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); v56.xy = ((v31.xy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); v56.z = sqrt(clamp((1.000000e+00+(-dot(v56.xy,v56.xy))),0.000000e+00,1.000000e+00)); vec3 v57; v57.xyz = (v39+vec3(0.000000e+00,0.000000e+00,1.000000e+00)); vec3 v58; v58.xyz = (v56*vec3(-1.000000e+00,-1.000000e+00,1.000000e+00)); vec3 v59; v59.xyz = (((v57*vec3(dot(v57,v58)))/v57.zzz)+(-v58)); v56.xyz = v59; v39.xyz = normalize(mix(v39,v59,vec3((v30.w*h36)))); float h60; h60 = (1.000000e+00+(-v31.z)); float h61; float h62; h62 = ((((h46+-1.000000e+00)*(h60+-1.000000e+00))*-2.000000e+00)+1.000000e+00); float h63; h63 = ((h46*h60)*2.000000e+00); h61 = ((h46>=5.000000e-01))?(h62):(h63); h38 = mix(h46,h61,(v30.w*h37)); } if (((pc7_m[0].z>1.000000e-02)&&(f3>1.000000e-02))) { float h64; highp float f65; f65 = v30.z; highp float f66; f66 = h35; highp float f67; f67 = h34; float h68; h68 = (((f65*f3)*f66)*f67); h64 = h68; h35 = h64; h38 = mix(h38,5.000000e-02,clamp(((3.000000e+00*(clamp(h64,2.000000e-01,1.000000e+00)+-2.000000e-01))/8.000000e-01),0.000000e+00,1.000000e+00)); } vec3 v69; v69.xyz = v39; highp vec3 v70; v70.xyz = ((in_TEXCOORD11_centroid.xyz*v69.zzz)+((v18*v69.yyy)+(in_TEXCOORD10_centroid.xyz*v69.xxx))); vec3 v71; v71.xyz = normalize(v70); v25.xyz = v71; vec3 v72; v72.xyz = clamp(v40,vec3(0.000000e+00,0.000000e+00,0.000000e+00),vec3(1.000000e+00,1.000000e+00,1.000000e+00)); float h73; h73 = clamp(h41,0.000000e+00,1.000000e+00); float h74; h74 = max(1.562500e-02,clamp(h38,0.000000e+00,1.000000e+00)); float h75; h75 = clamp(h47,0.000000e+00,1.000000e+00); v17.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); v16.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); vec3 v76; vec2 v77; vec4 v78; v78.xyzw = ((vec4(h74)*vec4(-1.000000e+00,-2.750000e-02,-5.720000e-01,2.200000e-02))+vec4(1.000000e+00,4.250000e-02,1.040000e+00,-4.000000e-02)); vec2 v79; vec3 v80; v80.xyz = v24; v79.xy = ((vec2(-1.040000e+00,1.040000e+00)*vec2(((min((v78.x*v78.x),exp2((-9.280000e+00*max(dot(v25,v80),0.000000e+00))))*v78.x)+v78.y)))+v78.zw); v77.xy = v79; v77.y = v79.y; v76.xyz = ((vec3(2.400000e-02,2.400000e-02,2.400000e-02)*v79.xxx)+v77.yyy); vec3 v81; vec3 v82; v82.xyz = pc0_m[17].xyz; vec3 v83; v83.xyz = pc0_m[16].xyz; v81.xyz = (b1)?(v82):(v83); vec3 v84; vec3 v85; vec3 v86; vec4 v87; v87.w = 1.000000e+00; v87.xyz = v25; if (b1) { v86.x = dot(pc0_m[9],v87); v86.y = dot(pc0_m[10],v87); v86.z = dot(pc0_m[11],v87); vec4 v88; v88.xyzw = (v87.xyzz*v87.yzzx); v85.x = dot(pc0_m[12],v88); v85.y = dot(pc0_m[13],v88); v85.z = dot(pc0_m[14],v88); v84.xyz = (pc0_m[15].xyz*vec3(((v87.x*v87.x)+(-(v87.y*v87.y))))); } else { v86.x = dot(pc0_m[2],v87); v86.y = dot(pc0_m[3],v87); v86.z = dot(pc0_m[4],v87); vec4 v89; v89.xyzw = (v87.xyzz*v87.yzzx); v85.x = dot(pc0_m[5],v89); v85.y = dot(pc0_m[6],v89); v85.z = dot(pc0_m[7],v89); v84.xyz = (pc0_m[8].xyz*vec3(((v87.x*v87.x)+(-(v87.y*v87.y))))); } vec3 v90; v90.xyz = (max(vec3(0.000000e+00,0.000000e+00,0.000000e+00),((v86+v85)+v84))*v81); uint u91; u91 = uint(((i10>>1)&15)); if (bool(u91)) { bool b92; b92 = false; bool b93; b93 = false; if((1u==u91)) { b92 = true; }; if (b92) { b93 = true; } if((2u==u91)) { b92 = true; }; if((6u==u91)) { b92 = true; }; if((7u==u91)) { b92 = true; }; if(b93) { b92 = false; }; if (b92) { b93 = true; } if((3u==u91)) { b92 = true; }; if(b93) { b92 = false; }; if (b92) { b93 = true; } if((4u==u91)) { b92 = true; }; if(b93) { b92 = false; }; if (b92) { b93 = true; } if((5u==u91)) { b92 = true; }; if(b93) { b92 = false; }; if (b92) { b93 = true; } b92 = true; if(b93) { b92 = false; }; if (b92) { b93 = true; } } vec3 v94; v94.xyz = ((v90*v72)*vec3(h73)); v17.xyz = v94; h15 = 1.000000e+00; if ((bool(i8)||(pc2_h[3].z>0.000000e+00))) { highp vec2 v95; v95.xy = v19.xy; highp float f96; f96 = v19.w; int i97; highp float f98; highp vec4 v99; highp vec4 v100; highp float f101; highp float f102; float h103; h103 = 0.000000e+00; f102 = pc2_h[0].w; v100.xyzw = vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00); v99.xyzw = vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00); f98 = -1.000000e+00; i97 = 0; int i104; i104 = 0; for (;i104<2;) { if ((f96<pc2_h[3][i104])) { if ((i104==0)) { highp vec4 v105; v105.w = 1.000000e+00; v105.x = v95.x; v105.y = v95.y; v105.z = f96; v100.xyzw = (pc2_h[8]+((pc2_h[7]*v105.zzzz)+((pc2_h[6]*v105.yyyy)+(pc2_h[5]*v95.xxxx)))); } else { highp vec4 v106; v106.w = 1.000000e+00; v106.x = v95.x; v106.y = v95.y; v106.z = f96; v99.xyzw = (pc2_h[(8+(i104*4))]+((pc2_h[(7+(i104*4))]*v106.zzzz)+((pc2_h[(6+(i104*4))]*v106.yyyy)+(pc2_h[(5+(i104*4))]*v95.xxxx)))); } if (((((((i104==0)&&(v100.x<(pc2_h[3].w+-1.000000e-03)))&&(v100.y<9.900000e-01))&&(v100.y>1.000000e-02))&&(v100.x>1.000000e-02))&&(v100.z<=9.999900e-01))) { i97 = (i97+(1<<i104)); if ((f96>pc2_h[4].w)) { f98 = clamp(((f96+(-pc2_h[4].w))/pc2_h[4].z),0.000000e+00,1.000000e+00); } else { break; } } if ((i104!=0)) { i97 = (i97+(1<<i104)); } } i104 = (i104+1); } int i107; i107 = (i97&1); int i108; i108 = (i97&2); if (((bool(i107)&&(v100.z>0.000000e+00))||(bool(i108)&&(v99.z>0.000000e+00)))) { if ((i107>0)) { f101 = (min(v100.z,9.999900e-01)+(-(f0*1.000000e-02))); highp vec2 v109; v109.xy = ((v100.xy*pc2_h[1].xy)+vec2(5.000000e-01,5.000000e-01)); highp vec2 v110; v110.xy = (v109+(-floor(v109))); highp vec2 v111; v111.xy = (v100.xy+(-(v110*pc2_h[1].zw))); highp vec2 v112; v112.xy = (vec2(2.000000e+00,2.000000e+00)+(-v110)); highp vec2 v113; v113.xy = ((1.0/(v112))*pc2_h[1].zw); highp vec2 v114; v114.xy = (vec2(1.000000e+00,1.000000e+00)+v110); highp vec2 v115; v115.xy = ((v110/v114)*pc2_h[1].zw); highp float f116; f116 = clamp((f101+(-(1.0/(f102)))),0.000000e+00,1.000000e+00); highp vec2 v117; v117.x = v115.x; v117.y = v113.y; highp vec2 v118; v118.x = v113.x; v118.y = v115.y; float h119; float h120; h120 = ((v112.x*v112.y)*float(textureLodOffset(ps5,vec3((v111+v113),f116),0.000000e+00,ivec2(-1,-1)))); float h121; h121 = ((v114.x*v112.y)*float(textureLodOffset(ps5,vec3((v111+v117),f116),0.000000e+00,ivec2(1,-1)))); float h122; h122 = ((v112.x*v114.y)*float(textureLodOffset(ps5,vec3((v111+v118),f116),0.000000e+00,ivec2(-1,1)))); float h123; h123 = ((v114.x*v114.y)*float(textureLodOffset(ps5,vec3((v111+v115),f116),0.000000e+00,ivec2(1,1)))); h119 = ((((h120+h121)+h122)+h123)/9.000000e+00); highp float f124; highp float f125; highp float f126; f126 = h119; f125 = ((1.000000e+00+(-f98))*f126); highp float f127; highp float f128; f128 = h119; f127 = f128; f124 = ((f98>=0.000000e+00))?(f125):(f127); float h129; h129 = f124; h103 = h129; } if ((i108>0)) { f101 = (min(v99.z,9.999900e-01)+(-(f0*1.000000e-02))); highp vec2 v130; v130.xy = ((v99.xy*pc2_h[1].xy)+vec2(5.000000e-01,5.000000e-01)); highp vec2 v131; v131.xy = (v130+(-floor(v130))); highp vec2 v132; v132.xy = (v99.xy+(-(v131*pc2_h[1].zw))); highp vec2 v133; v133.xy = (vec2(2.000000e+00,2.000000e+00)+(-v131)); highp vec2 v134; v134.xy = ((1.0/(v133))*pc2_h[1].zw); highp vec2 v135; v135.xy = (vec2(1.000000e+00,1.000000e+00)+v131); highp vec2 v136; v136.xy = ((v131/v135)*pc2_h[1].zw); highp float f137; f137 = clamp((f101+(-(1.0/(f102)))),0.000000e+00,1.000000e+00); highp vec2 v138; v138.x = v136.x; v138.y = v134.y; highp vec2 v139; v139.x = v134.x; v139.y = v136.y; float h140; float h141; h141 = ((v133.x*v133.y)*float(textureLodOffset(ps5,vec3((v132+v134),f137),0.000000e+00,ivec2(-1,-1)))); float h142; h142 = ((v135.x*v133.y)*float(textureLodOffset(ps5,vec3((v132+v138),f137),0.000000e+00,ivec2(1,-1)))); float h143; h143 = ((v133.x*v135.y)*float(textureLodOffset(ps5,vec3((v132+v139),f137),0.000000e+00,ivec2(-1,1)))); float h144; h144 = ((v135.x*v135.y)*float(textureLodOffset(ps5,vec3((v132+v136),f137),0.000000e+00,ivec2(1,1)))); h140 = ((((h141+h142)+h143)+h144)/9.000000e+00); highp float f145; highp float f146; highp float f147; f147 = h140; f146 = (f98*f147); highp float f148; highp float f149; f149 = h140; f148 = f149; f145 = ((f98>=0.000000e+00))?(f146):(f148); float h150; h150 = f145; h103 = (h103+h150); } highp float f151; f151 = clamp(((f96*pc2_h[2].x)+pc2_h[2].y),0.000000e+00,1.000000e+00); highp float f152; f152 = h103; float h153; h153 = mix(f152,1.000000e+00,(f151*f151)); h103 = h153; } else { h103 = 1.000000e+00; } h15 = h103; } uvec3 v154; highp vec2 v155; v155.xy = pc0_m[0].xy; v154.xy = (uvec2((gl_FragCoord.xy+(-v155)))>>uvec2(u9)); float h156; h156 = v12.w; float h157; h157 = pc1_h[1].x; float h158; h158 = pc1_h[1].y; float h159; h159 = pc1_h[1].z; float h160; h160 = pc1_h[0].z; v154.z = uint(clamp((log2(((h156*h157)+h158))*h159),0.000000e+00,(h160+-1.000000e+00))); highp vec3 v161; v161.xyz = vec3(v154); uint u162; u162 = uint(texelFetch(ps0,int(uint(((((v161.z*pc1_h[0].y)+v161.y)*pc1_h[0].x)+v161.x)))).x); v14.xyzw = vec4(0.000000e+00,1.000000e+00,0.000000e+00,0.000000e+00); v14.x = pc2_h[4].x; v14.y = pc2_h[4].y; if (bool((u162&u4))) { highp float f163; highp float f164; f164 = h15; f163 = f164; highp float f165; f165 = v14.x; highp float f166; f166 = v14.y; vec3 v167; v167.xyz = v94; highp vec3 v168; v168.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); uint u169; float h170; uint u171; u171 = uint(pc6_h[3].w); h170 = 1.000000e+00; u169 = 0u; if (((u171&4u)==4u)) { uint u172; u169 = 1u; u172 = 0u; if (((u171&1u)==1u)) { highp vec3 v173; v173.xyz = (v23+(-pc6_h[0].xyz)); highp vec3 v174; v174.xyz = abs(v173); highp float f175; f175 = max(max(v174.x,v174.y),v174.z); bool b176; b176 = (f175==v174.x); bool b177; b177 = (!(b176)&&(f175==v174.y)); bool b178; b178 = (!(b176)&&!(b177)); u172 = ((uint(int((b176&&(f175==v173.x))))+uint(((2*int(b177))+int((b177&&(f175==v173.y))))))+uint(((4*int(b178))+int((b178&&(f175==v173.z)))))); } highp vec4 v179; v179.xyzw = (pc6_h[int((13u+(u172*4u)))]+((pc6_h[int((12u+(u172*4u)))]*v23.zzzz)+((pc6_h[int((11u+(u172*4u)))]*v23.yyyy)+(pc6_h[int((10u+(u172*4u)))]*v23.xxxx)))); highp vec2 v180; v180.xy = (v179.xy/v179.ww); highp vec4 v181; v181.xyzw = pc6_h[int((4u+u172))]; highp vec4 v182; v182.xyzw = pc6_h[int((4u+u172))]; if (all(bvec2(uvec2(greaterThanEqual(v180,v181.xy))*uvec2(lessThanEqual(v180,v182.zw))))) { highp float f183; f183 = min(v179.z,9.999900e-01); float h184; highp vec2 v185; v185.xy = (v180*pc0_h[2].xy); highp vec2 v186; v186.xy = fract(v185); highp vec2 v187; v187.xy = ((floor(v185)+vec2(5.000000e-01,5.000000e-01))*pc0_h[2].zw); vec4 v188; float h189; float h190; h190 = pc6_h[3].z; h189 = h190; highp float f191; f191 = h189; highp float f192; f192 = h189; vec4 v193; v193.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(-2,-2))*vec4(f191))+(-vec4(((f183*f192)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v188.xyzw = v193; vec4 v194; float h195; float h196; h196 = pc6_h[3].z; h195 = h196; highp float f197; f197 = h195; highp float f198; f198 = h195; vec4 v199; v199.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(0,-2))*vec4(f197))+(-vec4(((f183*f198)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v194.xyzw = v199; vec4 v200; float h201; float h202; h202 = pc6_h[3].z; h201 = h202; highp float f203; f203 = h201; highp float f204; f204 = h201; vec4 v205; v205.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(2,-2))*vec4(f203))+(-vec4(((f183*f204)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v200.xyzw = v205; vec2 v206; vec2 v207; v207.xy = v186; v206.xy = v207; float h208; h208 = ((((((v188.w*(1.000000e+00+(-v206.x)))+v188.z)+v194.w)+v194.z)+v200.w)+(v200.z*v206.x)); vec2 v209; v209.x = h208; v209.y = ((((((v188.x*(1.000000e+00+(-v206.x)))+v188.y)+v194.x)+v194.y)+v200.x)+(v200.y*v206.x)); highp float f210; f210 = h208; highp float f211; f211 = v209.y; float h212; h212 = ((f210*(1.000000e+00+(-v186.y)))+f211); h184 = h212; vec4 v213; float h214; float h215; h215 = pc6_h[3].z; h214 = h215; highp float f216; f216 = h214; highp float f217; f217 = h214; vec4 v218; v218.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(-2,0))*vec4(f216))+(-vec4(((f183*f217)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v213.xyzw = v218; vec4 v219; float h220; float h221; h221 = pc6_h[3].z; h220 = h221; highp float f222; f222 = h220; highp float f223; f223 = h220; vec4 v224; v224.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(0,0))*vec4(f222))+(-vec4(((f183*f223)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v219.xyzw = v224; vec4 v225; float h226; float h227; h227 = pc6_h[3].z; h226 = h227; highp float f228; f228 = h226; highp float f229; f229 = h226; vec4 v230; v230.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(2,0))*vec4(f228))+(-vec4(((f183*f229)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v225.xyzw = v230; vec2 v231; vec2 v232; v232.xy = v186; v231.xy = v232; float h233; h233 = ((((((v213.w*(1.000000e+00+(-v231.x)))+v213.z)+v219.w)+v219.z)+v225.w)+(v225.z*v231.x)); vec2 v234; v234.x = h233; v234.y = ((((((v213.x*(1.000000e+00+(-v231.x)))+v213.y)+v219.x)+v219.y)+v225.x)+(v225.y*v231.x)); h184 = (h184+(h233+v234.y)); vec4 v235; float h236; float h237; h237 = pc6_h[3].z; h236 = h237; highp float f238; f238 = h236; highp float f239; f239 = h236; vec4 v240; v240.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(-2,2))*vec4(f238))+(-vec4(((f183*f239)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v235.xyzw = v240; vec4 v241; float h242; float h243; h243 = pc6_h[3].z; h242 = h243; highp float f244; f244 = h242; highp float f245; f245 = h242; vec4 v246; v246.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(0,2))*vec4(f244))+(-vec4(((f183*f245)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v241.xyzw = v246; vec4 v247; float h248; float h249; h249 = pc6_h[3].z; h248 = h249; highp float f250; f250 = h248; highp float f251; f251 = h248; vec4 v252; v252.xyzw = clamp(((textureGatherOffset(ps7,v187,ivec2(2,2))*vec4(f250))+(-vec4(((f183*f251)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v247.xyzw = v252; vec2 v253; vec2 v254; v254.xy = v186; v253.xy = v254; float h255; h255 = ((((((v235.w*(1.000000e+00+(-v253.x)))+v235.z)+v241.w)+v241.z)+v247.w)+(v247.z*v253.x)); vec2 v256; v256.x = h255; v256.y = ((((((v235.x*(1.000000e+00+(-v253.x)))+v235.y)+v241.x)+v241.y)+v247.x)+(v247.y*v253.x)); float h257; highp float f258; f258 = v256.y; highp float f259; f259 = h255; float h260; h260 = (f259+(f258*v186.y)); h257 = (h184+h260); h184 = h257; highp float f261; highp float f262; f262 = clamp((4.000000e-02*h257),0.000000e+00,1.000000e+00); f261 = f262; highp float f263; f263 = 1.000000e+00; highp float f264; f264 = 1.000000e+00; float h265; h265 = mix(f263,(f261*f261),f264); h170 = h265; } } if (((u171&3u)!=0u)) { highp float f266; highp vec3 v267; v267.xyz = (pc6_h[0].xyz+(-v23)); highp vec3 v268; v268.xyz = normalize(v267); vec3 v269; vec3 v270; v270.xyz = normalize((v24+v268)); v269.xyz = v270; float h271; highp vec3 v272; v272.xyz = v55; float h273; h273 = dot(v272,v268); h271 = h273; float h274; highp vec3 v275; v275.xyz = v25; float h276; h276 = dot(v275,v268); h274 = max(0.000000e+00,h276); float h277; h277 = max(0.000000e+00,dot(v25,v269)); if ((pc6_h[1].w==0.000000e+00)) { highp float f278; f278 = dot(v267,v267); highp float f279; f279 = (f278*(pc6_h[0].w*pc6_h[0].w)); highp float f280; f280 = clamp((1.000000e+00+(-(f279*f279))),0.000000e+00,1.000000e+00); f266 = ((1.0/((f278+1.000000e+00)))*(f280*f280)); } else { highp vec3 v281; v281.xyz = (v267*pc6_h[0].www); f266 = pow((1.000000e+00+(-clamp(dot(v281,v281),0.000000e+00,1.000000e+00))),pc6_h[1].w); } if (((u171&2u)==2u)) { highp float f282; f282 = clamp(((dot(v268,(-(-pc6_h[2].xyz)))+(-pc6_h[3].x))*pc6_h[3].y),0.000000e+00,1.000000e+00); f266 = (f266*(f282*f282)); } highp float f283; highp float f284; f284 = h170; f283 = (f266*f284); f266 = f283; highp float f285; f285 = mix((f163+f166),f163,f163); highp float f286; f286 = ((!(bool(u169))&&(f165>0.000000e+00)))?(f285):(1.000000e+00); highp float f287; f287 = (f283*min(1.000000e+00,f286)); f266 = f287; highp float f288; f288 = h274; highp float f289; f289 = 3.183099e-01; v168.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),((vec3((f288*f287))*pc6_h[1].xyz)*vec3(f289))); vec2 v290; v290.x = clamp(((h271*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v290.y = h75; highp vec3 v291; highp vec3 v292; v292.xyz = cross(v25,v269); v291.xyz = v292; float h293; h293 = (h74*h74); float h294; h294 = (h277*h293); float h295; highp float f296; f296 = (h294*h294); highp float f297; f297 = h293; float h298; h298 = (f297/(dot(v291,v291)+f296)); h295 = h298; highp float f299; f299 = 3.141593e+00; highp vec3 v300; v300.xyz = (v76*vec3((h274*(((h74*2.500000e-01)+2.500000e-01)*min((h295*h295),h11))))); highp vec2 v301; v301.xy = v290; highp float f302; f302 = 0.000000e+00; highp vec3 v303; v303.xyz = (textureLod(ps6,v301,f302).xyz*v72); vec3 v304; v304.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f287)*pc6_h[1].xyz)*vec3((1.0/(f299))))*((v300*pc6_h[2].www)+v303))); v167.xyz = (v94+v304); } v17.xyz = v167; v16.xyz = v168; } if ((bool((u162&u5))&&(i2>1))) { highp float f305; highp float f306; f306 = h15; f305 = f306; highp float f307; f307 = v14.x; highp float f308; f308 = v14.y; vec3 v309; v309.xyz = v17; highp vec3 v310; v310.xyz = v16; uint u311; float h312; uint u313; u313 = uint(pc5_h[3].w); h312 = 1.000000e+00; u311 = 0u; if (((u313&4u)==4u)) { uint u314; u311 = 1u; u314 = 0u; if (((u313&1u)==1u)) { highp vec3 v315; v315.xyz = (v23+(-pc5_h[0].xyz)); highp vec3 v316; v316.xyz = abs(v315); highp float f317; f317 = max(max(v316.x,v316.y),v316.z); bool b318; b318 = (f317==v316.x); bool b319; b319 = (!(b318)&&(f317==v316.y)); bool b320; b320 = (!(b318)&&!(b319)); u314 = ((uint(int((b318&&(f317==v315.x))))+uint(((2*int(b319))+int((b319&&(f317==v315.y))))))+uint(((4*int(b320))+int((b320&&(f317==v315.z)))))); } highp vec4 v321; v321.xyzw = (pc5_h[int((13u+(u314*4u)))]+((pc5_h[int((12u+(u314*4u)))]*v23.zzzz)+((pc5_h[int((11u+(u314*4u)))]*v23.yyyy)+(pc5_h[int((10u+(u314*4u)))]*v23.xxxx)))); highp vec2 v322; v322.xy = (v321.xy/v321.ww); highp vec4 v323; v323.xyzw = pc5_h[int((4u+u314))]; highp vec4 v324; v324.xyzw = pc5_h[int((4u+u314))]; if (all(bvec2(uvec2(greaterThanEqual(v322,v323.xy))*uvec2(lessThanEqual(v322,v324.zw))))) { highp vec2 v325; v325.xy = (v322*pc0_h[2].xy); vec4 v326; float h327; float h328; h328 = pc5_h[3].z; h327 = h328; highp float f329; f329 = h327; highp float f330; f330 = h327; vec4 v331; v331.xyzw = clamp(((textureGatherOffset(ps7,((floor(v325)+vec2(5.000000e-01,5.000000e-01))*pc0_h[2].zw),ivec2(0,0))*vec4(f329))+(-vec4(((min(v321.z,9.999900e-01)*f330)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v326.xyzw = v331; vec2 v332; vec2 v333; v333.xy = fract(v325); v332.xy = v333; vec2 v334; v334.xy = mix(v326.wx,v326.zy,v332.xx); highp float f335; highp float f336; f336 = clamp(mix(v334.x,v334.y,v332.y),0.000000e+00,1.000000e+00); f335 = f336; highp float f337; f337 = 1.000000e+00; highp float f338; f338 = 1.000000e+00; float h339; h339 = mix(f337,(f335*f335),f338); h312 = h339; } } if (((u313&3u)!=0u)) { highp float f340; highp vec3 v341; v341.xyz = (pc5_h[0].xyz+(-v23)); highp vec3 v342; v342.xyz = normalize(v341); vec3 v343; vec3 v344; v344.xyz = normalize((v24+v342)); v343.xyz = v344; float h345; highp vec3 v346; v346.xyz = v55; float h347; h347 = dot(v346,v342); h345 = h347; float h348; highp vec3 v349; v349.xyz = v25; float h350; h350 = dot(v349,v342); h348 = max(0.000000e+00,h350); float h351; h351 = max(0.000000e+00,dot(v25,v343)); if ((pc5_h[1].w==0.000000e+00)) { highp float f352; f352 = dot(v341,v341); highp float f353; f353 = (f352*(pc5_h[0].w*pc5_h[0].w)); highp float f354; f354 = clamp((1.000000e+00+(-(f353*f353))),0.000000e+00,1.000000e+00); f340 = ((1.0/((f352+1.000000e+00)))*(f354*f354)); } else { highp vec3 v355; v355.xyz = (v341*pc5_h[0].www); f340 = pow((1.000000e+00+(-clamp(dot(v355,v355),0.000000e+00,1.000000e+00))),pc5_h[1].w); } if (((u313&2u)==2u)) { highp float f356; f356 = clamp(((dot(v342,(-(-pc5_h[2].xyz)))+(-pc5_h[3].x))*pc5_h[3].y),0.000000e+00,1.000000e+00); f340 = (f340*(f356*f356)); } highp float f357; highp float f358; f358 = h312; f357 = (f340*f358); f340 = f357; highp float f359; f359 = mix((f305+f308),f305,f305); highp float f360; f360 = ((!(bool(u311))&&(f307>0.000000e+00)))?(f359):(1.000000e+00); highp float f361; f361 = (f357*min(1.000000e+00,f360)); f340 = f361; highp float f362; f362 = h348; highp float f363; f363 = 3.183099e-01; v310.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f362*f361))*pc5_h[1].xyz)*vec3(f363)))); vec2 v364; v364.x = clamp(((h345*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v364.y = h75; highp vec3 v365; highp vec3 v366; v366.xyz = cross(v25,v343); v365.xyz = v366; float h367; h367 = (h74*h74); float h368; h368 = (h351*h367); float h369; highp float f370; f370 = (h368*h368); highp float f371; f371 = h367; float h372; h372 = (f371/(dot(v365,v365)+f370)); h369 = h372; highp float f373; f373 = 3.141593e+00; highp vec3 v374; v374.xyz = (v76*vec3((h348*(((h74*2.500000e-01)+2.500000e-01)*min((h369*h369),h11))))); highp vec2 v375; v375.xy = v364; highp float f376; f376 = 0.000000e+00; highp vec3 v377; v377.xyz = (textureLod(ps6,v375,f376).xyz*v72); vec3 v378; v378.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f361)*pc5_h[1].xyz)*vec3((1.0/(f373))))*((v374*pc5_h[2].www)+v377))); v309.xyz = (v17+v378); } v17.xyz = v309; v16.xyz = v310; } if ((bool((u162&u6))&&(i2>2))) { highp float f379; highp float f380; f380 = h15; f379 = f380; highp float f381; f381 = v14.x; highp float f382; f382 = v14.y; vec3 v383; v383.xyz = v17; highp vec3 v384; v384.xyz = v16; uint u385; float h386; uint u387; u387 = uint(pc4_h[3].w); h386 = 1.000000e+00; u385 = 0u; if (((u387&4u)==4u)) { uint u388; u385 = 1u; u388 = 0u; if (((u387&1u)==1u)) { highp vec3 v389; v389.xyz = (v23+(-pc4_h[0].xyz)); highp vec3 v390; v390.xyz = abs(v389); highp float f391; f391 = max(max(v390.x,v390.y),v390.z); bool b392; b392 = (f391==v390.x); bool b393; b393 = (!(b392)&&(f391==v390.y)); bool b394; b394 = (!(b392)&&!(b393)); u388 = ((uint(int((b392&&(f391==v389.x))))+uint(((2*int(b393))+int((b393&&(f391==v389.y))))))+uint(((4*int(b394))+int((b394&&(f391==v389.z)))))); } highp vec4 v395; v395.xyzw = (pc4_h[int((13u+(u388*4u)))]+((pc4_h[int((12u+(u388*4u)))]*v23.zzzz)+((pc4_h[int((11u+(u388*4u)))]*v23.yyyy)+(pc4_h[int((10u+(u388*4u)))]*v23.xxxx)))); highp vec2 v396; v396.xy = (v395.xy/v395.ww); highp vec4 v397; v397.xyzw = pc4_h[int((4u+u388))]; highp vec4 v398; v398.xyzw = pc4_h[int((4u+u388))]; if (all(bvec2(uvec2(greaterThanEqual(v396,v397.xy))*uvec2(lessThanEqual(v396,v398.zw))))) { highp float f399; highp float f400; f400 = 1.000000e+00; f399 = f400; highp float f401; f401 = 1.000000e+00; highp float f402; f402 = 1.000000e+00; float h403; h403 = mix(f401,(f399*f399),f402); h386 = h403; } } if (((u387&3u)!=0u)) { highp float f404; highp vec3 v405; v405.xyz = (pc4_h[0].xyz+(-v23)); highp vec3 v406; v406.xyz = normalize(v405); vec3 v407; vec3 v408; v408.xyz = normalize((v24+v406)); v407.xyz = v408; float h409; highp vec3 v410; v410.xyz = v55; float h411; h411 = dot(v410,v406); h409 = h411; float h412; highp vec3 v413; v413.xyz = v25; float h414; h414 = dot(v413,v406); h412 = max(0.000000e+00,h414); float h415; h415 = max(0.000000e+00,dot(v25,v407)); if ((pc4_h[1].w==0.000000e+00)) { highp float f416; f416 = dot(v405,v405); highp float f417; f417 = (f416*(pc4_h[0].w*pc4_h[0].w)); highp float f418; f418 = clamp((1.000000e+00+(-(f417*f417))),0.000000e+00,1.000000e+00); f404 = ((1.0/((f416+1.000000e+00)))*(f418*f418)); } else { highp vec3 v419; v419.xyz = (v405*pc4_h[0].www); f404 = pow((1.000000e+00+(-clamp(dot(v419,v419),0.000000e+00,1.000000e+00))),pc4_h[1].w); } if (((u387&2u)==2u)) { highp float f420; f420 = clamp(((dot(v406,(-(-pc4_h[2].xyz)))+(-pc4_h[3].x))*pc4_h[3].y),0.000000e+00,1.000000e+00); f404 = (f404*(f420*f420)); } highp float f421; highp float f422; f422 = h386; f421 = (f404*f422); f404 = f421; highp float f423; f423 = mix((f379+f382),f379,f379); highp float f424; f424 = ((!(bool(u385))&&(f381>0.000000e+00)))?(f423):(1.000000e+00); highp float f425; f425 = (f421*min(1.000000e+00,f424)); f404 = f425; highp float f426; f426 = h412; highp float f427; f427 = 3.183099e-01; v384.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f426*f425))*pc4_h[1].xyz)*vec3(f427)))); vec2 v428; v428.x = clamp(((h409*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v428.y = h75; highp vec3 v429; highp vec3 v430; v430.xyz = cross(v25,v407); v429.xyz = v430; float h431; h431 = (h74*h74); float h432; h432 = (h415*h431); float h433; highp float f434; f434 = (h432*h432); highp float f435; f435 = h431; float h436; h436 = (f435/(dot(v429,v429)+f434)); h433 = h436; highp float f437; f437 = 3.141593e+00; highp vec3 v438; v438.xyz = (v76*vec3((h412*(((h74*2.500000e-01)+2.500000e-01)*min((h433*h433),h11))))); highp vec2 v439; v439.xy = v428; highp float f440; f440 = 0.000000e+00; highp vec3 v441; v441.xyz = (textureLod(ps6,v439,f440).xyz*v72); vec3 v442; v442.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f425)*pc4_h[1].xyz)*vec3((1.0/(f437))))*((v438*pc4_h[2].www)+v441))); v383.xyz = (v17+v442); } v17.xyz = v383; v16.xyz = v384; } if ((bool((u162&u7))&&(i2>3))) { highp float f443; highp float f444; f444 = h15; f443 = f444; highp float f445; f445 = v14.x; highp float f446; f446 = v14.y; vec3 v447; v447.xyz = v17; highp vec3 v448; v448.xyz = v16; uint u449; float h450; uint u451; u451 = uint(pc3_h[3].w); h450 = 1.000000e+00; u449 = 0u; if (((u451&4u)==4u)) { uint u452; u449 = 1u; u452 = 0u; if (((u451&1u)==1u)) { highp vec3 v453; v453.xyz = (v23+(-pc3_h[0].xyz)); highp vec3 v454; v454.xyz = abs(v453); highp float f455; f455 = max(max(v454.x,v454.y),v454.z); bool b456; b456 = (f455==v454.x); bool b457; b457 = (!(b456)&&(f455==v454.y)); bool b458; b458 = (!(b456)&&!(b457)); u452 = ((uint(int((b456&&(f455==v453.x))))+uint(((2*int(b457))+int((b457&&(f455==v453.y))))))+uint(((4*int(b458))+int((b458&&(f455==v453.z)))))); } highp vec4 v459; v459.xyzw = (pc3_h[int((13u+(u452*4u)))]+((pc3_h[int((12u+(u452*4u)))]*v23.zzzz)+((pc3_h[int((11u+(u452*4u)))]*v23.yyyy)+(pc3_h[int((10u+(u452*4u)))]*v23.xxxx)))); highp vec2 v460; v460.xy = (v459.xy/v459.ww); highp vec4 v461; v461.xyzw = pc3_h[int((4u+u452))]; highp vec4 v462; v462.xyzw = pc3_h[int((4u+u452))]; if (all(bvec2(uvec2(greaterThanEqual(v460,v461.xy))*uvec2(lessThanEqual(v460,v462.zw))))) { highp float f463; highp float f464; f464 = 1.000000e+00; f463 = f464; highp float f465; f465 = 1.000000e+00; highp float f466; f466 = 1.000000e+00; float h467; h467 = mix(f465,(f463*f463),f466); h450 = h467; } } if (((u451&3u)!=0u)) { highp float f468; highp vec3 v469; v469.xyz = (pc3_h[0].xyz+(-v23)); highp vec3 v470; v470.xyz = normalize(v469); vec3 v471; vec3 v472; v472.xyz = normalize((v24+v470)); v471.xyz = v472; float h473; highp vec3 v474; v474.xyz = v55; float h475; h475 = dot(v474,v470); h473 = h475; float h476; highp vec3 v477; v477.xyz = v25; float h478; h478 = dot(v477,v470); h476 = max(0.000000e+00,h478); float h479; h479 = max(0.000000e+00,dot(v25,v471)); if ((pc3_h[1].w==0.000000e+00)) { highp float f480; f480 = dot(v469,v469); highp float f481; f481 = (f480*(pc3_h[0].w*pc3_h[0].w)); highp float f482; f482 = clamp((1.000000e+00+(-(f481*f481))),0.000000e+00,1.000000e+00); f468 = ((1.0/((f480+1.000000e+00)))*(f482*f482)); } else { highp vec3 v483; v483.xyz = (v469*pc3_h[0].www); f468 = pow((1.000000e+00+(-clamp(dot(v483,v483),0.000000e+00,1.000000e+00))),pc3_h[1].w); } if (((u451&2u)==2u)) { highp float f484; f484 = clamp(((dot(v470,(-(-pc3_h[2].xyz)))+(-pc3_h[3].x))*pc3_h[3].y),0.000000e+00,1.000000e+00); f468 = (f468*(f484*f484)); } highp float f485; highp float f486; f486 = h450; f485 = (f468*f486); f468 = f485; highp float f487; f487 = mix((f443+f446),f443,f443); highp float f488; f488 = ((!(bool(u449))&&(f445>0.000000e+00)))?(f487):(1.000000e+00); highp float f489; f489 = (f485*min(1.000000e+00,f488)); f468 = f489; highp float f490; f490 = h476; highp float f491; f491 = 3.183099e-01; v448.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f490*f489))*pc3_h[1].xyz)*vec3(f491)))); vec2 v492; v492.x = clamp(((h473*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v492.y = h75; highp vec3 v493; highp vec3 v494; v494.xyz = cross(v25,v471); v493.xyz = v494; float h495; h495 = (h74*h74); float h496; h496 = (h479*h495); float h497; highp float f498; f498 = (h496*h496); highp float f499; f499 = h495; float h500; h500 = (f499/(dot(v493,v493)+f498)); h497 = h500; highp float f501; f501 = 3.141593e+00; highp vec3 v502; v502.xyz = (v76*vec3((h476*(((h74*2.500000e-01)+2.500000e-01)*min((h497*h497),h11))))); highp vec2 v503; v503.xy = v492; highp float f504; f504 = 0.000000e+00; highp vec3 v505; v505.xyz = (textureLod(ps6,v503,f504).xyz*v72); vec3 v506; v506.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f489)*pc3_h[1].xyz)*vec3((1.0/(f501))))*((v502*pc3_h[2].www)+v505))); v447.xyz = (v17+v506); } v17.xyz = v447; v16.xyz = v448; } v13.xyz = min(v13.xyz,vec3(6.500000e+04,6.500000e+04,6.500000e+04)); v13.xyz = v17; v13.w = 1.000000e+00; out_Target0.xyzw = v13; } // Compiled by HLSLCC 0.73
#version 310 es #ifdef GL_EXT_texture_cube_map_array #extension GL_EXT_texture_cube_map_array : enable #endif #ifdef GL_EXT_texture_buffer #extension GL_EXT_texture_buffer : enable #endif // end extensions precision mediump float; precision highp int; void compiler_internal_AdjustInputSemantic(inout vec4 TempVariable) { #if HLSLCC_DX11ClipSpace TempVariable.y = -TempVariable.y; TempVariable.z = ( TempVariable.z + TempVariable.w ) / 2.0; #endif } void compiler_internal_AdjustOutputSemantic(inout vec4 Src) { #if HLSLCC_DX11ClipSpace Src.y = -Src.y; Src.z = ( 2.0 * Src.z ) - Src.w; #endif } bool compiler_internal_AdjustIsFrontFacing(bool isFrontFacing) { #if HLSLCC_DX11ClipSpace return !isFrontFacing; #else return isFrontFacing; #endif } uniform vec4 pc0_m[18]; uniform ivec4 pc0_i[1]; uniform highp vec4 pc0_h[3]; uniform uvec4 pc3_u[1]; uniform highp vec4 pc3_h[34]; uniform uvec4 pc4_u[1]; uniform highp vec4 pc4_h[34]; uniform uvec4 pc5_u[1]; uniform highp vec4 pc5_h[34]; uniform uvec4 pc6_u[1]; uniform highp vec4 pc6_h[34]; uniform highp vec4 pc2_h[13]; uniform uvec4 pc1_u[1]; uniform ivec4 pc1_i[1]; uniform highp vec4 pc1_h[2]; uniform vec4 pc7_m[1]; uniform vec4 pc8_m[4]; uniform uvec4 pu_u[1]; uniform ivec4 pu_i[1]; uniform highp vec4 pu_h[2]; uniform mediump sampler2D ps4; uniform mediump sampler2D ps1; uniform mediump sampler2D ps3; uniform mediump sampler2D ps2; uniform highp sampler2DShadow ps5; uniform highp usamplerBuffer ps0; uniform highp sampler2D ps7; uniform highp sampler2D ps6; layout(location=0) in vec4 in_TEXCOORD10_centroid; layout(location=1) in vec4 in_TEXCOORD11_centroid; layout(location=2) in highp vec4 in_TEXCOORD0; layout(location=4) in highp vec4 in_TEXCOORD8; layout(location=0) out vec4 out_Target0; void main() { highp float f0; f0 = pu_h[1].x; bool b1; b1 = bool(pu_u[0].x); int i2; i2 = pu_i[0].x; highp float f3; f3 = pu_h[0].x; uint u4; u4 = pc6_u[0].x; uint u5; u5 = pc5_u[0].x; uint u6; u6 = pc4_u[0].x; uint u7; u7 = pc3_u[0].x; int i8; i8 = pc1_i[0].x; uint u9; u9 = pc1_u[0].x; int i10; i10 = pc0_i[0].x; float h11; h11 = pc0_m[1].x; highp vec4 v12; v12.xyzw = gl_FragCoord; v12.w = (1.0/(gl_FragCoord.w)); vec4 v13; highp vec4 v14; float h15; highp vec3 v16; vec3 v17; vec3 v18; highp vec4 v19; v19.xyzw = in_TEXCOORD10_centroid; vec3 v20; v20.xyz = v19.xyz; v18.xyz = v20; vec4 v21; v21.xyzw = in_TEXCOORD11_centroid; vec3 v22; v22.xyz = (cross(v21.xyz,v18)*v21.www); highp vec4 v23; highp vec3 v24; highp vec2 v25; v25.xy = pc0_m[0].xy; v24.xy = ((((gl_FragCoord.xy+(-v25))*pc0_h[1].zw)+vec2(-5.000000e-01,-5.000000e-01))*vec2(2.000000e+00,-2.000000e+00)); v24.z = gl_FragCoord.z; highp vec4 v26; v26.w = 1.000000e+00; v26.xyz = v24; v23.xyzw = (v26*v12.wwww); highp vec3 v27; v27.xyz = (in_TEXCOORD8.xyz+(-pc0_h[0].xyz)); highp vec3 v28; v28.xyz = normalize((-in_TEXCOORD8.xyz)); vec3 v29; v29.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); vec4 v30; highp float f31; f31 = pc7_m[0].x; v30.xyzw = texture(ps2,in_TEXCOORD0.xy,f31); vec4 v32; highp float f33; f33 = pc7_m[0].x; v32.xyzw = texture(ps3,in_TEXCOORD0.xy,f33); vec4 v34; v34.xyzw = texture(ps1,in_TEXCOORD0.xy); vec4 v35; highp float f36; f36 = pc8_m[1].x; highp float f37; f37 = -1.000000e+00; v35.xyzw = texture(ps4,(in_TEXCOORD0.xy*vec2(f36)),f37); float h38; h38 = pc8_m[2].y; float h39; h39 = pc7_m[0].z; float h40; h40 = pc8_m[2].w; float h41; h41 = pc8_m[3].x; float h42; vec3 v43; vec3 v44; v44.xyz = (v30.xyz*pc8_m[0].xyz); float h45; h45 = mix(v30.w,1.000000e+00,pc8_m[2].y); v43.xyz = vec3(0.000000e+00,0.000000e+00,1.000000e+00); v43.xy = ((v32.wy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); float h46; h46 = sqrt(clamp((1.000000e+00+(-dot(v43.xy,v43.xy))),0.000000e+00,1.000000e+00)); v43.z = h46; float h47; highp vec3 v48; v48.xyz = ((v21.xyz*vec3(h46))+((v22*v43.yyy)+(v18*v43.xxx))); float h49; h49 = dot(v48,v28); h47 = clamp((1.000000e+00+(-clamp(h49,0.000000e+00,1.000000e+00))),0.000000e+00,1.000000e+00); float h50; h50 = (mix(pc8_m[2].x,pc8_m[1].w,v32.x)+((h47*h47)*3.000000e-01)); h42 = h50; float h51; highp float f52; f52 = v32.z; highp float f53; f53 = pc8_m[2].z; float h54; h54 = (f52*f53); h51 = h54; vec2 v55; highp float f56; f56 = pc8_m[1].z; v55.xy = ((texture(ps3,in_TEXCOORD0.xy,f56).wy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); vec3 v57; v57.xy = v55; v57.z = sqrt(clamp((1.000000e+00+(-dot(v55,v55))),0.000000e+00,1.000000e+00)); vec3 v58; v58.xyz = mix(v43,v57,vec3(7.000000e-01,7.000000e-01,7.000000e-01)); vec3 v59; v59.xyz = ((v21.xyz*v58.zzz)+((v22*v58.yyy)+(v18*v58.xxx))); if ((pc8_m[2].w>0.000000e+00)) { vec3 v60; v60.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); v60.xy = ((v35.xy*vec2(2.000000e+00,2.000000e+00))+vec2(-1.000000e+00,-1.000000e+00)); v60.z = sqrt(clamp((1.000000e+00+(-dot(v60.xy,v60.xy))),0.000000e+00,1.000000e+00)); vec3 v61; v61.xyz = (v43+vec3(0.000000e+00,0.000000e+00,1.000000e+00)); vec3 v62; v62.xyz = (v60*vec3(-1.000000e+00,-1.000000e+00,1.000000e+00)); vec3 v63; v63.xyz = (((v61*vec3(dot(v61,v62)))/v61.zzz)+(-v62)); v60.xyz = v63; v43.xyz = normalize(mix(v43,v63,vec3((v34.w*h40)))); float h64; h64 = (1.000000e+00+(-v35.z)); float h65; float h66; h66 = ((((h50+-1.000000e+00)*(h64+-1.000000e+00))*-2.000000e+00)+1.000000e+00); float h67; h67 = ((h50*h64)*2.000000e+00); h65 = ((h50>=5.000000e-01))?(h66):(h67); h42 = mix(h50,h65,(v34.w*h41)); } if (((pc7_m[0].z>1.000000e-02)&&(f3>1.000000e-02))) { float h68; highp float f69; f69 = v34.z; highp float f70; f70 = h39; highp float f71; f71 = h38; float h72; h72 = (((f69*f3)*f70)*f71); h68 = h72; h39 = h68; h42 = mix(h42,5.000000e-02,clamp(((3.000000e+00*(clamp(h68,2.000000e-01,1.000000e+00)+-2.000000e-01))/8.000000e-01),0.000000e+00,1.000000e+00)); } vec3 v73; v73.xyz = v43; highp vec3 v74; v74.xyz = ((v21.xyz*v73.zzz)+((v22*v73.yyy)+(v18*v73.xxx))); vec3 v75; v75.xyz = normalize(v74); v29.xyz = v75; vec3 v76; v76.xyz = clamp(v44,vec3(0.000000e+00,0.000000e+00,0.000000e+00),vec3(1.000000e+00,1.000000e+00,1.000000e+00)); float h77; h77 = clamp(h45,0.000000e+00,1.000000e+00); float h78; h78 = max(1.562500e-02,clamp(h42,0.000000e+00,1.000000e+00)); float h79; h79 = clamp(h51,0.000000e+00,1.000000e+00); v17.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); v16.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); vec3 v80; vec2 v81; vec4 v82; v82.xyzw = ((vec4(h78)*vec4(-1.000000e+00,-2.750000e-02,-5.720000e-01,2.200000e-02))+vec4(1.000000e+00,4.250000e-02,1.040000e+00,-4.000000e-02)); vec2 v83; vec3 v84; v84.xyz = v28; v83.xy = ((vec2(-1.040000e+00,1.040000e+00)*vec2(((min((v82.x*v82.x),exp2((-9.280000e+00*max(dot(v29,v84),0.000000e+00))))*v82.x)+v82.y)))+v82.zw); v81.xy = v83; v81.y = v83.y; v80.xyz = ((vec3(2.400000e-02,2.400000e-02,2.400000e-02)*v83.xxx)+v81.yyy); vec3 v85; vec3 v86; v86.xyz = pc0_m[17].xyz; vec3 v87; v87.xyz = pc0_m[16].xyz; v85.xyz = (b1)?(v86):(v87); vec3 v88; vec3 v89; vec3 v90; vec4 v91; v91.w = 1.000000e+00; v91.xyz = v29; if (b1) { v90.x = dot(pc0_m[9],v91); v90.y = dot(pc0_m[10],v91); v90.z = dot(pc0_m[11],v91); vec4 v92; v92.xyzw = (v91.xyzz*v91.yzzx); v89.x = dot(pc0_m[12],v92); v89.y = dot(pc0_m[13],v92); v89.z = dot(pc0_m[14],v92); v88.xyz = (pc0_m[15].xyz*vec3(((v91.x*v91.x)+(-(v91.y*v91.y))))); } else { v90.x = dot(pc0_m[2],v91); v90.y = dot(pc0_m[3],v91); v90.z = dot(pc0_m[4],v91); vec4 v93; v93.xyzw = (v91.xyzz*v91.yzzx); v89.x = dot(pc0_m[5],v93); v89.y = dot(pc0_m[6],v93); v89.z = dot(pc0_m[7],v93); v88.xyz = (pc0_m[8].xyz*vec3(((v91.x*v91.x)+(-(v91.y*v91.y))))); } vec3 v94; v94.xyz = (max(vec3(0.000000e+00,0.000000e+00,0.000000e+00),((v90+v89)+v88))*v85); uint u95; u95 = uint(((i10>>1)&15)); if (bool(u95)) { bool b96; b96 = false; bool b97; b97 = false; if((1u==u95)) { b96 = true; }; if (b96) { b97 = true; } if((2u==u95)) { b96 = true; }; if((6u==u95)) { b96 = true; }; if((7u==u95)) { b96 = true; }; if(b97) { b96 = false; }; if (b96) { b97 = true; } if((3u==u95)) { b96 = true; }; if(b97) { b96 = false; }; if (b96) { b97 = true; } if((4u==u95)) { b96 = true; }; if(b97) { b96 = false; }; if (b96) { b97 = true; } if((5u==u95)) { b96 = true; }; if(b97) { b96 = false; }; if (b96) { b97 = true; } b96 = true; if(b97) { b96 = false; }; if (b96) { b97 = true; } } vec3 v98; v98.xyz = ((v94*v76)*vec3(h77)); v17.xyz = v98; h15 = 1.000000e+00; if ((bool(i8)||(pc2_h[3].z>0.000000e+00))) { highp vec2 v99; v99.xy = v23.xy; highp float f100; f100 = v23.w; int i101; highp float f102; highp vec4 v103; highp vec4 v104; highp float f105; highp float f106; float h107; h107 = 0.000000e+00; f106 = pc2_h[0].w; v104.xyzw = vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00); v103.xyzw = vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00); f102 = -1.000000e+00; i101 = 0; int i108; i108 = 0; for (;i108<2;) { if ((f100<pc2_h[3][i108])) { if ((i108==0)) { highp vec4 v109; v109.w = 1.000000e+00; v109.x = v99.x; v109.y = v99.y; v109.z = f100; v104.xyzw = (pc2_h[8]+((pc2_h[7]*v109.zzzz)+((pc2_h[6]*v109.yyyy)+(pc2_h[5]*v99.xxxx)))); } else { highp vec4 v110; v110.w = 1.000000e+00; v110.x = v99.x; v110.y = v99.y; v110.z = f100; v103.xyzw = (pc2_h[(8+(i108*4))]+((pc2_h[(7+(i108*4))]*v110.zzzz)+((pc2_h[(6+(i108*4))]*v110.yyyy)+(pc2_h[(5+(i108*4))]*v99.xxxx)))); } if (((((((i108==0)&&(v104.x<(pc2_h[3].w+-1.000000e-03)))&&(v104.y<9.900000e-01))&&(v104.y>1.000000e-02))&&(v104.x>1.000000e-02))&&(v104.z<=9.999900e-01))) { i101 = (i101+(1<<i108)); if ((f100>pc2_h[4].w)) { f102 = clamp(((f100+(-pc2_h[4].w))/pc2_h[4].z),0.000000e+00,1.000000e+00); } else { break; } } if ((i108!=0)) { i101 = (i101+(1<<i108)); } } i108 = (i108+1); } int i111; i111 = (i101&1); int i112; i112 = (i101&2); if (((bool(i111)&&(v104.z>0.000000e+00))||(bool(i112)&&(v103.z>0.000000e+00)))) { if ((i111>0)) { f105 = (min(v104.z,9.999900e-01)+(-(f0*1.000000e-02))); highp vec2 v113; v113.xy = ((v104.xy*pc2_h[1].xy)+vec2(5.000000e-01,5.000000e-01)); highp vec2 v114; v114.xy = (v113+(-floor(v113))); highp vec2 v115; v115.xy = (v104.xy+(-(v114*pc2_h[1].zw))); highp vec2 v116; v116.xy = (vec2(2.000000e+00,2.000000e+00)+(-v114)); highp vec2 v117; v117.xy = ((1.0/(v116))*pc2_h[1].zw); highp vec2 v118; v118.xy = (vec2(1.000000e+00,1.000000e+00)+v114); highp vec2 v119; v119.xy = ((v114/v118)*pc2_h[1].zw); highp float f120; f120 = clamp((f105+(-(1.0/(f106)))),0.000000e+00,1.000000e+00); highp vec2 v121; v121.x = v119.x; v121.y = v117.y; highp vec2 v122; v122.x = v117.x; v122.y = v119.y; float h123; float h124; h124 = ((v116.x*v116.y)*float(textureLodOffset(ps5,vec3((v115+v117),f120),0.000000e+00,ivec2(-1,-1)))); float h125; h125 = ((v118.x*v116.y)*float(textureLodOffset(ps5,vec3((v115+v121),f120),0.000000e+00,ivec2(1,-1)))); float h126; h126 = ((v116.x*v118.y)*float(textureLodOffset(ps5,vec3((v115+v122),f120),0.000000e+00,ivec2(-1,1)))); float h127; h127 = ((v118.x*v118.y)*float(textureLodOffset(ps5,vec3((v115+v119),f120),0.000000e+00,ivec2(1,1)))); h123 = ((((h124+h125)+h126)+h127)/9.000000e+00); highp float f128; highp float f129; highp float f130; f130 = h123; f129 = ((1.000000e+00+(-f102))*f130); highp float f131; highp float f132; f132 = h123; f131 = f132; f128 = ((f102>=0.000000e+00))?(f129):(f131); float h133; h133 = f128; h107 = h133; } if ((i112>0)) { f105 = (min(v103.z,9.999900e-01)+(-(f0*1.000000e-02))); highp vec2 v134; v134.xy = ((v103.xy*pc2_h[1].xy)+vec2(5.000000e-01,5.000000e-01)); highp vec2 v135; v135.xy = (v134+(-floor(v134))); highp vec2 v136; v136.xy = (v103.xy+(-(v135*pc2_h[1].zw))); highp vec2 v137; v137.xy = (vec2(2.000000e+00,2.000000e+00)+(-v135)); highp vec2 v138; v138.xy = ((1.0/(v137))*pc2_h[1].zw); highp vec2 v139; v139.xy = (vec2(1.000000e+00,1.000000e+00)+v135); highp vec2 v140; v140.xy = ((v135/v139)*pc2_h[1].zw); highp float f141; f141 = clamp((f105+(-(1.0/(f106)))),0.000000e+00,1.000000e+00); highp vec2 v142; v142.x = v140.x; v142.y = v138.y; highp vec2 v143; v143.x = v138.x; v143.y = v140.y; float h144; float h145; h145 = ((v137.x*v137.y)*float(textureLodOffset(ps5,vec3((v136+v138),f141),0.000000e+00,ivec2(-1,-1)))); float h146; h146 = ((v139.x*v137.y)*float(textureLodOffset(ps5,vec3((v136+v142),f141),0.000000e+00,ivec2(1,-1)))); float h147; h147 = ((v137.x*v139.y)*float(textureLodOffset(ps5,vec3((v136+v143),f141),0.000000e+00,ivec2(-1,1)))); float h148; h148 = ((v139.x*v139.y)*float(textureLodOffset(ps5,vec3((v136+v140),f141),0.000000e+00,ivec2(1,1)))); h144 = ((((h145+h146)+h147)+h148)/9.000000e+00); highp float f149; highp float f150; highp float f151; f151 = h144; f150 = (f102*f151); highp float f152; highp float f153; f153 = h144; f152 = f153; f149 = ((f102>=0.000000e+00))?(f150):(f152); float h154; h154 = f149; h107 = (h107+h154); } highp float f155; f155 = clamp(((f100*pc2_h[2].x)+pc2_h[2].y),0.000000e+00,1.000000e+00); highp float f156; f156 = h107; float h157; h157 = mix(f156,1.000000e+00,(f155*f155)); h107 = h157; } else { h107 = 1.000000e+00; } h15 = h107; } uvec3 v158; highp vec2 v159; v159.xy = pc0_m[0].xy; v158.xy = (uvec2((gl_FragCoord.xy+(-v159)))>>uvec2(u9)); float h160; h160 = v12.w; float h161; h161 = pc1_h[1].x; float h162; h162 = pc1_h[1].y; float h163; h163 = pc1_h[1].z; float h164; h164 = pc1_h[0].z; v158.z = uint(clamp((log2(((h160*h161)+h162))*h163),0.000000e+00,(h164+-1.000000e+00))); highp vec3 v165; v165.xyz = vec3(v158); uint u166; u166 = uint(texelFetch(ps0,int(uint(((((v165.z*pc1_h[0].y)+v165.y)*pc1_h[0].x)+v165.x)))).x); v14.xyzw = vec4(0.000000e+00,1.000000e+00,0.000000e+00,0.000000e+00); v14.x = pc2_h[4].x; v14.y = pc2_h[4].y; if (bool((u166&u4))) { highp float f167; highp float f168; f168 = h15; f167 = f168; highp float f169; f169 = v14.x; highp float f170; f170 = v14.y; vec3 v171; v171.xyz = v98; highp vec3 v172; v172.xyz = vec3(0.000000e+00,0.000000e+00,0.000000e+00); uint u173; float h174; uint u175; u175 = uint(pc6_h[3].w); h174 = 1.000000e+00; u173 = 0u; if (((u175&4u)==4u)) { uint u176; u173 = 1u; u176 = 0u; if (((u175&1u)==1u)) { highp vec3 v177; v177.xyz = (v27+(-pc6_h[0].xyz)); highp vec3 v178; v178.xyz = abs(v177); highp float f179; f179 = max(max(v178.x,v178.y),v178.z); bool b180; b180 = (f179==v178.x); bool b181; b181 = (!(b180)&&(f179==v178.y)); bool b182; b182 = (!(b180)&&!(b181)); u176 = ((uint(int((b180&&(f179==v177.x))))+uint(((2*int(b181))+int((b181&&(f179==v177.y))))))+uint(((4*int(b182))+int((b182&&(f179==v177.z)))))); } highp vec4 v183; v183.xyzw = (pc6_h[int((13u+(u176*4u)))]+((pc6_h[int((12u+(u176*4u)))]*v27.zzzz)+((pc6_h[int((11u+(u176*4u)))]*v27.yyyy)+(pc6_h[int((10u+(u176*4u)))]*v27.xxxx)))); highp vec2 v184; v184.xy = (v183.xy/v183.ww); highp vec4 v185; v185.xyzw = pc6_h[int((4u+u176))]; highp vec4 v186; v186.xyzw = pc6_h[int((4u+u176))]; if (all(bvec2(uvec2(greaterThanEqual(v184,v185.xy))*uvec2(lessThanEqual(v184,v186.zw))))) { highp float f187; f187 = min(v183.z,9.999900e-01); float h188; highp vec2 v189; v189.xy = (v184*pc0_h[2].xy); highp vec2 v190; v190.xy = fract(v189); highp vec2 v191; v191.xy = ((floor(v189)+vec2(5.000000e-01,5.000000e-01))*pc0_h[2].zw); vec4 v192; float h193; float h194; h194 = pc6_h[3].z; h193 = h194; highp float f195; f195 = h193; highp float f196; f196 = h193; vec4 v197; v197.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(-2,-2))*vec4(f195))+(-vec4(((f187*f196)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v192.xyzw = v197; vec4 v198; float h199; float h200; h200 = pc6_h[3].z; h199 = h200; highp float f201; f201 = h199; highp float f202; f202 = h199; vec4 v203; v203.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(0,-2))*vec4(f201))+(-vec4(((f187*f202)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v198.xyzw = v203; vec4 v204; float h205; float h206; h206 = pc6_h[3].z; h205 = h206; highp float f207; f207 = h205; highp float f208; f208 = h205; vec4 v209; v209.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(2,-2))*vec4(f207))+(-vec4(((f187*f208)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v204.xyzw = v209; vec2 v210; vec2 v211; v211.xy = v190; v210.xy = v211; float h212; h212 = ((((((v192.w*(1.000000e+00+(-v210.x)))+v192.z)+v198.w)+v198.z)+v204.w)+(v204.z*v210.x)); vec2 v213; v213.x = h212; v213.y = ((((((v192.x*(1.000000e+00+(-v210.x)))+v192.y)+v198.x)+v198.y)+v204.x)+(v204.y*v210.x)); highp float f214; f214 = h212; highp float f215; f215 = v213.y; float h216; h216 = ((f214*(1.000000e+00+(-v190.y)))+f215); h188 = h216; vec4 v217; float h218; float h219; h219 = pc6_h[3].z; h218 = h219; highp float f220; f220 = h218; highp float f221; f221 = h218; vec4 v222; v222.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(-2,0))*vec4(f220))+(-vec4(((f187*f221)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v217.xyzw = v222; vec4 v223; float h224; float h225; h225 = pc6_h[3].z; h224 = h225; highp float f226; f226 = h224; highp float f227; f227 = h224; vec4 v228; v228.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(0,0))*vec4(f226))+(-vec4(((f187*f227)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v223.xyzw = v228; vec4 v229; float h230; float h231; h231 = pc6_h[3].z; h230 = h231; highp float f232; f232 = h230; highp float f233; f233 = h230; vec4 v234; v234.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(2,0))*vec4(f232))+(-vec4(((f187*f233)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v229.xyzw = v234; vec2 v235; vec2 v236; v236.xy = v190; v235.xy = v236; float h237; h237 = ((((((v217.w*(1.000000e+00+(-v235.x)))+v217.z)+v223.w)+v223.z)+v229.w)+(v229.z*v235.x)); vec2 v238; v238.x = h237; v238.y = ((((((v217.x*(1.000000e+00+(-v235.x)))+v217.y)+v223.x)+v223.y)+v229.x)+(v229.y*v235.x)); h188 = (h188+(h237+v238.y)); vec4 v239; float h240; float h241; h241 = pc6_h[3].z; h240 = h241; highp float f242; f242 = h240; highp float f243; f243 = h240; vec4 v244; v244.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(-2,2))*vec4(f242))+(-vec4(((f187*f243)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v239.xyzw = v244; vec4 v245; float h246; float h247; h247 = pc6_h[3].z; h246 = h247; highp float f248; f248 = h246; highp float f249; f249 = h246; vec4 v250; v250.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(0,2))*vec4(f248))+(-vec4(((f187*f249)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v245.xyzw = v250; vec4 v251; float h252; float h253; h253 = pc6_h[3].z; h252 = h253; highp float f254; f254 = h252; highp float f255; f255 = h252; vec4 v256; v256.xyzw = clamp(((textureGatherOffset(ps7,v191,ivec2(2,2))*vec4(f254))+(-vec4(((f187*f255)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v251.xyzw = v256; vec2 v257; vec2 v258; v258.xy = v190; v257.xy = v258; float h259; h259 = ((((((v239.w*(1.000000e+00+(-v257.x)))+v239.z)+v245.w)+v245.z)+v251.w)+(v251.z*v257.x)); vec2 v260; v260.x = h259; v260.y = ((((((v239.x*(1.000000e+00+(-v257.x)))+v239.y)+v245.x)+v245.y)+v251.x)+(v251.y*v257.x)); float h261; highp float f262; f262 = v260.y; highp float f263; f263 = h259; float h264; h264 = (f263+(f262*v190.y)); h261 = (h188+h264); h188 = h261; highp float f265; highp float f266; f266 = clamp((4.000000e-02*h261),0.000000e+00,1.000000e+00); f265 = f266; highp float f267; f267 = 1.000000e+00; highp float f268; f268 = 1.000000e+00; float h269; h269 = mix(f267,(f265*f265),f268); h174 = h269; } } if (((u175&3u)!=0u)) { highp float f270; highp vec3 v271; v271.xyz = (pc6_h[0].xyz+(-v27)); highp vec3 v272; v272.xyz = normalize(v271); vec3 v273; vec3 v274; v274.xyz = normalize((v28+v272)); v273.xyz = v274; float h275; highp vec3 v276; v276.xyz = v59; float h277; h277 = dot(v276,v272); h275 = h277; float h278; highp vec3 v279; v279.xyz = v29; float h280; h280 = dot(v279,v272); h278 = max(0.000000e+00,h280); float h281; h281 = max(0.000000e+00,dot(v29,v273)); if ((pc6_h[1].w==0.000000e+00)) { highp float f282; f282 = dot(v271,v271); highp float f283; f283 = (f282*(pc6_h[0].w*pc6_h[0].w)); highp float f284; f284 = clamp((1.000000e+00+(-(f283*f283))),0.000000e+00,1.000000e+00); f270 = ((1.0/((f282+1.000000e+00)))*(f284*f284)); } else { highp vec3 v285; v285.xyz = (v271*pc6_h[0].www); f270 = pow((1.000000e+00+(-clamp(dot(v285,v285),0.000000e+00,1.000000e+00))),pc6_h[1].w); } if (((u175&2u)==2u)) { highp float f286; f286 = clamp(((dot(v272,(-(-pc6_h[2].xyz)))+(-pc6_h[3].x))*pc6_h[3].y),0.000000e+00,1.000000e+00); f270 = (f270*(f286*f286)); } highp float f287; highp float f288; f288 = h174; f287 = (f270*f288); f270 = f287; highp float f289; f289 = mix((f167+f170),f167,f167); highp float f290; f290 = ((!(bool(u173))&&(f169>0.000000e+00)))?(f289):(1.000000e+00); highp float f291; f291 = (f287*min(1.000000e+00,f290)); f270 = f291; highp float f292; f292 = h278; highp float f293; f293 = 3.183099e-01; v172.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),((vec3((f292*f291))*pc6_h[1].xyz)*vec3(f293))); vec2 v294; v294.x = clamp(((h275*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v294.y = h79; highp vec3 v295; highp vec3 v296; v296.xyz = cross(v29,v273); v295.xyz = v296; float h297; h297 = (h78*h78); float h298; h298 = (h281*h297); float h299; highp float f300; f300 = (h298*h298); highp float f301; f301 = h297; float h302; h302 = (f301/(dot(v295,v295)+f300)); h299 = h302; highp float f303; f303 = 3.141593e+00; highp vec3 v304; v304.xyz = (v80*vec3((h278*(((h78*2.500000e-01)+2.500000e-01)*min((h299*h299),h11))))); highp vec2 v305; v305.xy = v294; highp float f306; f306 = 0.000000e+00; highp vec3 v307; v307.xyz = (textureLod(ps6,v305,f306).xyz*v76); vec3 v308; v308.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f291)*pc6_h[1].xyz)*vec3((1.0/(f303))))*((v304*pc6_h[2].www)+v307))); v171.xyz = (v98+v308); } v17.xyz = v171; v16.xyz = v172; } if ((bool((u166&u5))&&(i2>1))) { highp float f309; highp float f310; f310 = h15; f309 = f310; highp float f311; f311 = v14.x; highp float f312; f312 = v14.y; vec3 v313; v313.xyz = v17; highp vec3 v314; v314.xyz = v16; uint u315; float h316; uint u317; u317 = uint(pc5_h[3].w); h316 = 1.000000e+00; u315 = 0u; if (((u317&4u)==4u)) { uint u318; u315 = 1u; u318 = 0u; if (((u317&1u)==1u)) { highp vec3 v319; v319.xyz = (v27+(-pc5_h[0].xyz)); highp vec3 v320; v320.xyz = abs(v319); highp float f321; f321 = max(max(v320.x,v320.y),v320.z); bool b322; b322 = (f321==v320.x); bool b323; b323 = (!(b322)&&(f321==v320.y)); bool b324; b324 = (!(b322)&&!(b323)); u318 = ((uint(int((b322&&(f321==v319.x))))+uint(((2*int(b323))+int((b323&&(f321==v319.y))))))+uint(((4*int(b324))+int((b324&&(f321==v319.z)))))); } highp vec4 v325; v325.xyzw = (pc5_h[int((13u+(u318*4u)))]+((pc5_h[int((12u+(u318*4u)))]*v27.zzzz)+((pc5_h[int((11u+(u318*4u)))]*v27.yyyy)+(pc5_h[int((10u+(u318*4u)))]*v27.xxxx)))); highp vec2 v326; v326.xy = (v325.xy/v325.ww); highp vec4 v327; v327.xyzw = pc5_h[int((4u+u318))]; highp vec4 v328; v328.xyzw = pc5_h[int((4u+u318))]; if (all(bvec2(uvec2(greaterThanEqual(v326,v327.xy))*uvec2(lessThanEqual(v326,v328.zw))))) { highp vec2 v329; v329.xy = (v326*pc0_h[2].xy); vec4 v330; float h331; float h332; h332 = pc5_h[3].z; h331 = h332; highp float f333; f333 = h331; highp float f334; f334 = h331; vec4 v335; v335.xyzw = clamp(((textureGatherOffset(ps7,((floor(v329)+vec2(5.000000e-01,5.000000e-01))*pc0_h[2].zw),ivec2(0,0))*vec4(f333))+(-vec4(((min(v325.z,9.999900e-01)*f334)+-1.000000e+00)))),vec4(0.000000e+00,0.000000e+00,0.000000e+00,0.000000e+00),vec4(1.000000e+00,1.000000e+00,1.000000e+00,1.000000e+00)); v330.xyzw = v335; vec2 v336; vec2 v337; v337.xy = fract(v329); v336.xy = v337; vec2 v338; v338.xy = mix(v330.wx,v330.zy,v336.xx); highp float f339; highp float f340; f340 = clamp(mix(v338.x,v338.y,v336.y),0.000000e+00,1.000000e+00); f339 = f340; highp float f341; f341 = 1.000000e+00; highp float f342; f342 = 1.000000e+00; float h343; h343 = mix(f341,(f339*f339),f342); h316 = h343; } } if (((u317&3u)!=0u)) { highp float f344; highp vec3 v345; v345.xyz = (pc5_h[0].xyz+(-v27)); highp vec3 v346; v346.xyz = normalize(v345); vec3 v347; vec3 v348; v348.xyz = normalize((v28+v346)); v347.xyz = v348; float h349; highp vec3 v350; v350.xyz = v59; float h351; h351 = dot(v350,v346); h349 = h351; float h352; highp vec3 v353; v353.xyz = v29; float h354; h354 = dot(v353,v346); h352 = max(0.000000e+00,h354); float h355; h355 = max(0.000000e+00,dot(v29,v347)); if ((pc5_h[1].w==0.000000e+00)) { highp float f356; f356 = dot(v345,v345); highp float f357; f357 = (f356*(pc5_h[0].w*pc5_h[0].w)); highp float f358; f358 = clamp((1.000000e+00+(-(f357*f357))),0.000000e+00,1.000000e+00); f344 = ((1.0/((f356+1.000000e+00)))*(f358*f358)); } else { highp vec3 v359; v359.xyz = (v345*pc5_h[0].www); f344 = pow((1.000000e+00+(-clamp(dot(v359,v359),0.000000e+00,1.000000e+00))),pc5_h[1].w); } if (((u317&2u)==2u)) { highp float f360; f360 = clamp(((dot(v346,(-(-pc5_h[2].xyz)))+(-pc5_h[3].x))*pc5_h[3].y),0.000000e+00,1.000000e+00); f344 = (f344*(f360*f360)); } highp float f361; highp float f362; f362 = h316; f361 = (f344*f362); f344 = f361; highp float f363; f363 = mix((f309+f312),f309,f309); highp float f364; f364 = ((!(bool(u315))&&(f311>0.000000e+00)))?(f363):(1.000000e+00); highp float f365; f365 = (f361*min(1.000000e+00,f364)); f344 = f365; highp float f366; f366 = h352; highp float f367; f367 = 3.183099e-01; v314.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f366*f365))*pc5_h[1].xyz)*vec3(f367)))); vec2 v368; v368.x = clamp(((h349*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v368.y = h79; highp vec3 v369; highp vec3 v370; v370.xyz = cross(v29,v347); v369.xyz = v370; float h371; h371 = (h78*h78); float h372; h372 = (h355*h371); float h373; highp float f374; f374 = (h372*h372); highp float f375; f375 = h371; float h376; h376 = (f375/(dot(v369,v369)+f374)); h373 = h376; highp float f377; f377 = 3.141593e+00; highp vec3 v378; v378.xyz = (v80*vec3((h352*(((h78*2.500000e-01)+2.500000e-01)*min((h373*h373),h11))))); highp vec2 v379; v379.xy = v368; highp float f380; f380 = 0.000000e+00; highp vec3 v381; v381.xyz = (textureLod(ps6,v379,f380).xyz*v76); vec3 v382; v382.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f365)*pc5_h[1].xyz)*vec3((1.0/(f377))))*((v378*pc5_h[2].www)+v381))); v313.xyz = (v17+v382); } v17.xyz = v313; v16.xyz = v314; } if ((bool((u166&u6))&&(i2>2))) { highp float f383; highp float f384; f384 = h15; f383 = f384; highp float f385; f385 = v14.x; highp float f386; f386 = v14.y; vec3 v387; v387.xyz = v17; highp vec3 v388; v388.xyz = v16; uint u389; float h390; uint u391; u391 = uint(pc4_h[3].w); h390 = 1.000000e+00; u389 = 0u; if (((u391&4u)==4u)) { uint u392; u389 = 1u; u392 = 0u; if (((u391&1u)==1u)) { highp vec3 v393; v393.xyz = (v27+(-pc4_h[0].xyz)); highp vec3 v394; v394.xyz = abs(v393); highp float f395; f395 = max(max(v394.x,v394.y),v394.z); bool b396; b396 = (f395==v394.x); bool b397; b397 = (!(b396)&&(f395==v394.y)); bool b398; b398 = (!(b396)&&!(b397)); u392 = ((uint(int((b396&&(f395==v393.x))))+uint(((2*int(b397))+int((b397&&(f395==v393.y))))))+uint(((4*int(b398))+int((b398&&(f395==v393.z)))))); } highp vec4 v399; v399.xyzw = (pc4_h[int((13u+(u392*4u)))]+((pc4_h[int((12u+(u392*4u)))]*v27.zzzz)+((pc4_h[int((11u+(u392*4u)))]*v27.yyyy)+(pc4_h[int((10u+(u392*4u)))]*v27.xxxx)))); highp vec2 v400; v400.xy = (v399.xy/v399.ww); highp vec4 v401; v401.xyzw = pc4_h[int((4u+u392))]; highp vec4 v402; v402.xyzw = pc4_h[int((4u+u392))]; if (all(bvec2(uvec2(greaterThanEqual(v400,v401.xy))*uvec2(lessThanEqual(v400,v402.zw))))) { highp float f403; highp float f404; f404 = 1.000000e+00; f403 = f404; highp float f405; f405 = 1.000000e+00; highp float f406; f406 = 1.000000e+00; float h407; h407 = mix(f405,(f403*f403),f406); h390 = h407; } } if (((u391&3u)!=0u)) { highp float f408; highp vec3 v409; v409.xyz = (pc4_h[0].xyz+(-v27)); highp vec3 v410; v410.xyz = normalize(v409); vec3 v411; vec3 v412; v412.xyz = normalize((v28+v410)); v411.xyz = v412; float h413; highp vec3 v414; v414.xyz = v59; float h415; h415 = dot(v414,v410); h413 = h415; float h416; highp vec3 v417; v417.xyz = v29; float h418; h418 = dot(v417,v410); h416 = max(0.000000e+00,h418); float h419; h419 = max(0.000000e+00,dot(v29,v411)); if ((pc4_h[1].w==0.000000e+00)) { highp float f420; f420 = dot(v409,v409); highp float f421; f421 = (f420*(pc4_h[0].w*pc4_h[0].w)); highp float f422; f422 = clamp((1.000000e+00+(-(f421*f421))),0.000000e+00,1.000000e+00); f408 = ((1.0/((f420+1.000000e+00)))*(f422*f422)); } else { highp vec3 v423; v423.xyz = (v409*pc4_h[0].www); f408 = pow((1.000000e+00+(-clamp(dot(v423,v423),0.000000e+00,1.000000e+00))),pc4_h[1].w); } if (((u391&2u)==2u)) { highp float f424; f424 = clamp(((dot(v410,(-(-pc4_h[2].xyz)))+(-pc4_h[3].x))*pc4_h[3].y),0.000000e+00,1.000000e+00); f408 = (f408*(f424*f424)); } highp float f425; highp float f426; f426 = h390; f425 = (f408*f426); f408 = f425; highp float f427; f427 = mix((f383+f386),f383,f383); highp float f428; f428 = ((!(bool(u389))&&(f385>0.000000e+00)))?(f427):(1.000000e+00); highp float f429; f429 = (f425*min(1.000000e+00,f428)); f408 = f429; highp float f430; f430 = h416; highp float f431; f431 = 3.183099e-01; v388.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f430*f429))*pc4_h[1].xyz)*vec3(f431)))); vec2 v432; v432.x = clamp(((h413*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v432.y = h79; highp vec3 v433; highp vec3 v434; v434.xyz = cross(v29,v411); v433.xyz = v434; float h435; h435 = (h78*h78); float h436; h436 = (h419*h435); float h437; highp float f438; f438 = (h436*h436); highp float f439; f439 = h435; float h440; h440 = (f439/(dot(v433,v433)+f438)); h437 = h440; highp float f441; f441 = 3.141593e+00; highp vec3 v442; v442.xyz = (v80*vec3((h416*(((h78*2.500000e-01)+2.500000e-01)*min((h437*h437),h11))))); highp vec2 v443; v443.xy = v432; highp float f444; f444 = 0.000000e+00; highp vec3 v445; v445.xyz = (textureLod(ps6,v443,f444).xyz*v76); vec3 v446; v446.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f429)*pc4_h[1].xyz)*vec3((1.0/(f441))))*((v442*pc4_h[2].www)+v445))); v387.xyz = (v17+v446); } v17.xyz = v387; v16.xyz = v388; } if ((bool((u166&u7))&&(i2>3))) { highp float f447; highp float f448; f448 = h15; f447 = f448; highp float f449; f449 = v14.x; highp float f450; f450 = v14.y; vec3 v451; v451.xyz = v17; highp vec3 v452; v452.xyz = v16; uint u453; float h454; uint u455; u455 = uint(pc3_h[3].w); h454 = 1.000000e+00; u453 = 0u; if (((u455&4u)==4u)) { uint u456; u453 = 1u; u456 = 0u; if (((u455&1u)==1u)) { highp vec3 v457; v457.xyz = (v27+(-pc3_h[0].xyz)); highp vec3 v458; v458.xyz = abs(v457); highp float f459; f459 = max(max(v458.x,v458.y),v458.z); bool b460; b460 = (f459==v458.x); bool b461; b461 = (!(b460)&&(f459==v458.y)); bool b462; b462 = (!(b460)&&!(b461)); u456 = ((uint(int((b460&&(f459==v457.x))))+uint(((2*int(b461))+int((b461&&(f459==v457.y))))))+uint(((4*int(b462))+int((b462&&(f459==v457.z)))))); } highp vec4 v463; v463.xyzw = (pc3_h[int((13u+(u456*4u)))]+((pc3_h[int((12u+(u456*4u)))]*v27.zzzz)+((pc3_h[int((11u+(u456*4u)))]*v27.yyyy)+(pc3_h[int((10u+(u456*4u)))]*v27.xxxx)))); highp vec2 v464; v464.xy = (v463.xy/v463.ww); highp vec4 v465; v465.xyzw = pc3_h[int((4u+u456))]; highp vec4 v466; v466.xyzw = pc3_h[int((4u+u456))]; if (all(bvec2(uvec2(greaterThanEqual(v464,v465.xy))*uvec2(lessThanEqual(v464,v466.zw))))) { highp float f467; highp float f468; f468 = 1.000000e+00; f467 = f468; highp float f469; f469 = 1.000000e+00; highp float f470; f470 = 1.000000e+00; float h471; h471 = mix(f469,(f467*f467),f470); h454 = h471; } } if (((u455&3u)!=0u)) { highp float f472; highp vec3 v473; v473.xyz = (pc3_h[0].xyz+(-v27)); highp vec3 v474; v474.xyz = normalize(v473); vec3 v475; vec3 v476; v476.xyz = normalize((v28+v474)); v475.xyz = v476; float h477; highp vec3 v478; v478.xyz = v59; float h479; h479 = dot(v478,v474); h477 = h479; float h480; highp vec3 v481; v481.xyz = v29; float h482; h482 = dot(v481,v474); h480 = max(0.000000e+00,h482); float h483; h483 = max(0.000000e+00,dot(v29,v475)); if ((pc3_h[1].w==0.000000e+00)) { highp float f484; f484 = dot(v473,v473); highp float f485; f485 = (f484*(pc3_h[0].w*pc3_h[0].w)); highp float f486; f486 = clamp((1.000000e+00+(-(f485*f485))),0.000000e+00,1.000000e+00); f472 = ((1.0/((f484+1.000000e+00)))*(f486*f486)); } else { highp vec3 v487; v487.xyz = (v473*pc3_h[0].www); f472 = pow((1.000000e+00+(-clamp(dot(v487,v487),0.000000e+00,1.000000e+00))),pc3_h[1].w); } if (((u455&2u)==2u)) { highp float f488; f488 = clamp(((dot(v474,(-(-pc3_h[2].xyz)))+(-pc3_h[3].x))*pc3_h[3].y),0.000000e+00,1.000000e+00); f472 = (f472*(f488*f488)); } highp float f489; highp float f490; f490 = h454; f489 = (f472*f490); f472 = f489; highp float f491; f491 = mix((f447+f450),f447,f447); highp float f492; f492 = ((!(bool(u453))&&(f449>0.000000e+00)))?(f491):(1.000000e+00); highp float f493; f493 = (f489*min(1.000000e+00,f492)); f472 = f493; highp float f494; f494 = h480; highp float f495; f495 = 3.183099e-01; v452.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(v16+((vec3((f494*f493))*pc3_h[1].xyz)*vec3(f495)))); vec2 v496; v496.x = clamp(((h477*5.000000e-01)+5.000000e-01),0.000000e+00,1.000000e+00); v496.y = h79; highp vec3 v497; highp vec3 v498; v498.xyz = cross(v29,v475); v497.xyz = v498; float h499; h499 = (h78*h78); float h500; h500 = (h483*h499); float h501; highp float f502; f502 = (h500*h500); highp float f503; f503 = h499; float h504; h504 = (f503/(dot(v497,v497)+f502)); h501 = h504; highp float f505; f505 = 3.141593e+00; highp vec3 v506; v506.xyz = (v80*vec3((h480*(((h78*2.500000e-01)+2.500000e-01)*min((h501*h501),h11))))); highp vec2 v507; v507.xy = v496; highp float f508; f508 = 0.000000e+00; highp vec3 v509; v509.xyz = (textureLod(ps6,v507,f508).xyz*v76); vec3 v510; v510.xyz = min(vec3(6.500000e+04,6.500000e+04,6.500000e+04),(((vec3(f493)*pc3_h[1].xyz)*vec3((1.0/(f505))))*((v506*pc3_h[2].www)+v509))); v451.xyz = (v17+v510); } v17.xyz = v451; v16.xyz = v452; } v13.xyz = min(v13.xyz,vec3(6.500000e+04,6.500000e+04,6.500000e+04)); out_Target0.xyzw = v13; } // Compiled by HLSLCC 0.73
P.S. I think your first shader is relying on undefined behavior; e.g. I can't see where v13 is initialized before this line, so the value is undefined:
v13.xyz = min(v13.xyz,vec3(6.500000e+04,6.500000e+04,6.500000e+04));