#version 120 //xtension GL_EXT_bindable_uniform : require #extension GL_ARB_shader_texture_lod : require /*ndabl*/uniform vec4 PConstFloat[224]; uniform ivec4 PConstInt[16]; /*ndabl*/uniform bool PConstBool[16]; uniform sampler2D PSampler0; vec4 IN[32]; vec4 Temporary0; vec4 Temporary1; vec4 Temporary2; vec4 Temporary3; vec4 InstrHelpTemp; const vec4 LocalConst18 = vec4(1.000000, 0.001000, -0.333300, -0.000000); const vec4 LocalConst19 = vec4(1.000000, 2.000000, 3.000000, 4.000000); const vec4 LocalConst20 = vec4(5.000000, 6.000000, 7.000000, 8.000000); const vec4 LocalConst21 = vec4(9.000000, 10.000000, 11.000000, 12.000000); const vec4 LocalConst22 = vec4(13.000000, 14.000000, 15.000000, 0.000000); const vec4 LocalConst23 = vec4(0.000000, 1.000000, 100000000.000000, 0.000000); void main() { IN[0].rga = gl_TexCoord[1].rga; IN[1].rgb = gl_TexCoord[6].rgb; Temporary0.rg = (LocalConst18.rr + -IN[0].rg); Temporary0.rg = (Temporary0.rg * IN[0].rg); Temporary1.r = (-PConstFloat[16].r + IN[0].a); Temporary0.b = (Temporary1.r + LocalConst18.g); Temporary1.r = (PConstFloat[16].g + -IN[0].a); Temporary0.a = (Temporary1.r + LocalConst18.g); if( any( lessThan( Temporary0.xyzw, vec4(0.0) ) ) ) discard; Temporary0 = (texture2D( PSampler0, IN[0].rg ).rgba ); Temporary0 = (Temporary0.aaaa + LocalConst18.bbbb); if( any( lessThan( Temporary0.xyzw, vec4(0.0) ) ) ) discard; Temporary0.r = (fract(PConstFloat[17].r)); InstrHelpTemp.g = ( ( -Temporary0.r >= 0.0 ) ? LocalConst23.r : LocalConst23.g ); Temporary0.g = (InstrHelpTemp.g ); Temporary0.r = (-Temporary0.r + PConstFloat[17].r); Temporary1.r = (PConstFloat[17].r); InstrHelpTemp.g = ( ( Temporary1.r >= 0.0 ) ? LocalConst23.r : Temporary0.g ); Temporary0.g = (InstrHelpTemp.g ); Temporary0.r = (Temporary0.g + Temporary0.r); Temporary0.gb = (PConstFloat[0].gr * IN[0].gr); Temporary1.rg = (dFdx(Temporary0.bg)); Temporary0.gb = (dFdy(Temporary0.gb)); Temporary0.b = (Temporary0.b * Temporary1.g); Temporary0.g = ((Temporary1.r * Temporary0.g) + -Temporary0.b); Temporary1.rgb = (dFdx(IN[1].brg)); Temporary2.rgb = (dFdy(IN[1].gbr)); Temporary3.rgb = (Temporary1.rgb * Temporary2.rgb); Temporary1.rgb = ((Temporary1.brg * Temporary2.gbr) + -Temporary3.rgb); Temporary0.b = ((dot(Temporary1.rgb,Temporary1.rgb))); Temporary0.b = (( inversesqrt( Temporary0.b ) ) ); Temporary0.a = (( 1.0 / Temporary0.b ) ); Temporary0.a = (Temporary0.a + LocalConst18.a); InstrHelpTemp.b = ( ( Temporary0.a >= 0.0 ) ? Temporary0.b : LocalConst23.b ); Temporary0.b = (InstrHelpTemp.b ); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(PConstFloat[17].g, Temporary0.g)); InstrHelpTemp.g = ( ( -Temporary0.r >= 0.0 ) ? PConstFloat[17].g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[1].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); Temporary2 = (-Temporary0.rrrr + LocalConst19.rgba); InstrHelpTemp.g = ( ( Temporary2.r >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[2].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.g >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[3].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.b >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[4].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.a >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[5].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); Temporary2 = (-Temporary0.rrrr + LocalConst20.rgba); InstrHelpTemp.g = ( ( Temporary2.r >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[6].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.g >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[7].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.b >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[8].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); InstrHelpTemp.g = ( ( Temporary2.a >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.g = (InstrHelpTemp.g ); Temporary1.rg = (PConstFloat[9].gr * IN[0].gr); Temporary1.ba = (dFdx(Temporary1.gr)); Temporary1.rg = (dFdy(Temporary1.rg)); Temporary0.a = (Temporary1.g * Temporary1.a); Temporary0.a = ((Temporary1.b * Temporary1.r) + -Temporary0.a); Temporary0.a = (Temporary0.b * abs(Temporary0.a)); Temporary1.r = (max(Temporary0.g, Temporary0.a)); Temporary2 = (-Temporary0.rrrr + LocalConst21.rgba); Temporary1.gba = (-Temporary0.rrr + LocalConst22.rgb); InstrHelpTemp.r = ( ( Temporary2.r >= 0.0 ) ? Temporary0.g : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[10].gr * IN[0].gr); Temporary3.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary3.g); Temporary0.g = ((Temporary3.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary2.g >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[11].gr * IN[0].gr); Temporary2.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary2.g); Temporary0.g = ((Temporary2.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary2.b >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[12].gr * IN[0].gr); Temporary2.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary2.g); Temporary0.g = ((Temporary2.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary2.a >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[13].gr * IN[0].gr); Temporary2.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary2.g); Temporary0.g = ((Temporary2.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary1.g >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[14].gr * IN[0].gr); Temporary1.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary1.g); Temporary0.g = ((Temporary1.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary1.b >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary0.ga = (PConstFloat[15].gr * IN[0].gr); Temporary1.rg = (dFdx(Temporary0.ag)); Temporary0.ga = (dFdy(Temporary0.ga)); Temporary0.a = (Temporary0.a * Temporary1.g); Temporary0.g = ((Temporary1.r * Temporary0.g) + -Temporary0.a); Temporary0.g = (Temporary0.b * abs(Temporary0.g)); Temporary1.r = (max(Temporary0.r, Temporary0.g)); InstrHelpTemp.r = ( ( Temporary1.a >= 0.0 ) ? Temporary0.r : Temporary1.r ); Temporary0.r = (InstrHelpTemp.r ); Temporary1.r = (min(PConstFloat[17].a, Temporary0.r)); Temporary0.r = (-Temporary1.r + PConstFloat[17].b); Temporary0.gb = (Temporary1.rr + -PConstFloat[17].bg); Temporary1.rg = (-PConstFloat[17].bg + PConstFloat[17].ab); Temporary1.ba = (-Temporary0.gb + Temporary1.rg); Temporary0.a = (( 1.0 / Temporary1.r ) ); Temporary1.r = (( 1.0 / Temporary1.g ) ); Temporary2.g = (Temporary0.a * Temporary1.b); Temporary3.b = (Temporary1.r * Temporary1.a); Temporary3.g = (Temporary0.b * Temporary1.r); Temporary2.r = (Temporary0.a * Temporary0.g); Temporary3.ra = (LocalConst23.rg); Temporary2.ba = (LocalConst23.rg); gl_FragData[0] = (( Temporary0.r >= 0.0 ) ? Temporary3.rgba : Temporary2.rgba ); }