#extension GL_ARB_shader_texture_lod : enable varying vec2 xlv_TEXCOORD0; uniform vec4 _MainTex_TexelSize; uniform sampler2D _MainTex; void main () { vec3 tmpvar_1; int i; bool doneP; bool doneN; float lumaEndP; float lumaEndN; vec2 offNP; vec2 posP; vec2 posN; float gradientN; float lengthSign; float lumaS; float lumaN; doneN = bool(0); doneP = bool(0); i = 0; vec4 tmpvar_2; tmpvar_2.zw = vec2(0.0, 0.0); tmpvar_2.xy = (xlv_TEXCOORD0 + (vec2(0.0, -1.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_3; tmpvar_3 = texture2DLod (_MainTex, tmpvar_2.xy, 0.0); vec4 tmpvar_4; tmpvar_4.zw = vec2(0.0, 0.0); tmpvar_4.xy = (xlv_TEXCOORD0 + (vec2(-1.0, 0.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_5; tmpvar_5 = texture2DLod (_MainTex, tmpvar_4.xy, 0.0); vec4 tmpvar_6; tmpvar_6.zw = vec2(0.0, 0.0); tmpvar_6.xy = xlv_TEXCOORD0; vec4 tmpvar_7; tmpvar_7 = texture2DLod (_MainTex, tmpvar_6.xy, 0.0); vec4 tmpvar_8; tmpvar_8.zw = vec2(0.0, 0.0); tmpvar_8.xy = (xlv_TEXCOORD0 + (vec2(1.0, 0.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_9; tmpvar_9 = texture2DLod (_MainTex, tmpvar_8.xy, 0.0); vec4 tmpvar_10; tmpvar_10.zw = vec2(0.0, 0.0); tmpvar_10.xy = (xlv_TEXCOORD0 + (vec2(0.0, 1.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_11; tmpvar_11 = texture2DLod (_MainTex, tmpvar_10.xy, 0.0); float tmpvar_12; tmpvar_12 = ((tmpvar_3.y * 1.96321) + tmpvar_3.x); lumaN = tmpvar_12; float tmpvar_13; tmpvar_13 = ((tmpvar_5.y * 1.96321) + tmpvar_5.x); float tmpvar_14; tmpvar_14 = ((tmpvar_7.y * 1.96321) + tmpvar_7.x); float tmpvar_15; tmpvar_15 = ((tmpvar_9.y * 1.96321) + tmpvar_9.x); float tmpvar_16; tmpvar_16 = ((tmpvar_11.y * 1.96321) + tmpvar_11.x); lumaS = tmpvar_16; float tmpvar_17; tmpvar_17 = max (tmpvar_14, max (max (tmpvar_12, tmpvar_13), max (tmpvar_16, tmpvar_15))); float tmpvar_18; tmpvar_18 = (tmpvar_17 - min (tmpvar_14, min (min (tmpvar_12, tmpvar_13), min (tmpvar_16, tmpvar_15)))); float tmpvar_19; tmpvar_19 = max (0.0625, (tmpvar_17 * 0.125)); if ((tmpvar_18 < tmpvar_19)) { tmpvar_1 = tmpvar_7.xyz; } else { float tmpvar_20; tmpvar_20 = min (0.75, (max (0.0, ((abs ((((((tmpvar_12 + tmpvar_13) + tmpvar_15) + tmpvar_16) * 0.25) - tmpvar_14)) / tmpvar_18) - 0.25)) * 1.33333)); vec4 tmpvar_21; tmpvar_21.zw = vec2(0.0, 0.0); tmpvar_21.xy = (xlv_TEXCOORD0 + (vec2(-1.0, -1.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_22; tmpvar_22 = texture2DLod (_MainTex, tmpvar_21.xy, 0.0); vec4 tmpvar_23; tmpvar_23.zw = vec2(0.0, 0.0); tmpvar_23.xy = (xlv_TEXCOORD0 + (vec2(1.0, -1.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_24; tmpvar_24 = texture2DLod (_MainTex, tmpvar_23.xy, 0.0); vec4 tmpvar_25; tmpvar_25.zw = vec2(0.0, 0.0); tmpvar_25.xy = (xlv_TEXCOORD0 + (vec2(-1.0, 1.0) * _MainTex_TexelSize.xy)); vec4 tmpvar_26; tmpvar_26 = texture2DLod (_MainTex, tmpvar_25.xy, 0.0); vec4 tmpvar_27; tmpvar_27.zw = vec2(0.0, 0.0); tmpvar_27.xy = (xlv_TEXCOORD0 + _MainTex_TexelSize.xy); vec4 tmpvar_28; tmpvar_28 = texture2DLod (_MainTex, tmpvar_27.xy, 0.0); vec3 tmpvar_29; tmpvar_29 = ((((((tmpvar_3.xyz + tmpvar_5.xyz) + tmpvar_7.xyz) + tmpvar_9.xyz) + tmpvar_11.xyz) + (((tmpvar_22.xyz + tmpvar_24.xyz) + tmpvar_26.xyz) + tmpvar_28.xyz)) * vec3(0.111111, 0.111111, 0.111111)); float tmpvar_30; tmpvar_30 = ((tmpvar_22.y * 1.96321) + tmpvar_22.x); float tmpvar_31; tmpvar_31 = ((tmpvar_24.y * 1.96321) + tmpvar_24.x); float tmpvar_32; tmpvar_32 = ((tmpvar_26.y * 1.96321) + tmpvar_26.x); float tmpvar_33; tmpvar_33 = ((tmpvar_28.y * 1.96321) + tmpvar_28.x); bool tmpvar_34; tmpvar_34 = (((abs ((((0.25 * tmpvar_30) + (-(0.5) * tmpvar_13)) + (0.25 * tmpvar_32))) + abs ((((0.5 * tmpvar_12) + (-(1.0) * tmpvar_14)) + (0.5 * tmpvar_16)))) + abs ((((0.25 * tmpvar_31) + (-(0.5) * tmpvar_15)) + (0.25 * tmpvar_33)))) >= ((abs ((((0.25 * tmpvar_30) + (-(0.5) * tmpvar_12)) + (0.25 * tmpvar_31))) + abs ((((0.5 * tmpvar_13) + (-(1.0) * tmpvar_14)) + (0.5 * tmpvar_15)))) + abs ((((0.25 * tmpvar_32) + (-(0.5) * tmpvar_16)) + (0.25 * tmpvar_33))))); float tmpvar_35; if (tmpvar_34) { tmpvar_35 = -(_MainTex_TexelSize.y); } else { tmpvar_35 = -(_MainTex_TexelSize.x); }; lengthSign = tmpvar_35; if (!(tmpvar_34)) { lumaN = tmpvar_13; }; if (!(tmpvar_34)) { lumaS = tmpvar_15; }; float tmpvar_36; tmpvar_36 = abs ((lumaN - tmpvar_14)); gradientN = tmpvar_36; float tmpvar_37; tmpvar_37 = abs ((lumaS - tmpvar_14)); lumaN = ((lumaN + tmpvar_14) * 0.5); float tmpvar_38; tmpvar_38 = ((lumaS + tmpvar_14) * 0.5); lumaS = tmpvar_38; bool tmpvar_39; tmpvar_39 = (tmpvar_36 >= tmpvar_37); if (!(tmpvar_39)) { lumaN = tmpvar_38; }; if (!(tmpvar_39)) { gradientN = tmpvar_37; }; if (!(tmpvar_39)) { lengthSign = (tmpvar_35 * -1.0); }; float tmpvar_40; if (tmpvar_34) { tmpvar_40 = 0.0; } else { tmpvar_40 = (lengthSign * 0.5); }; posN.x = (xlv_TEXCOORD0.x + tmpvar_40); float tmpvar_41; if (tmpvar_34) { tmpvar_41 = (lengthSign * 0.5); } else { tmpvar_41 = 0.0; }; posN.y = (xlv_TEXCOORD0.y + tmpvar_41); gradientN = (gradientN * 0.25); posP = posN; vec2 tmpvar_42; if (tmpvar_34) { vec2 tmpvar_43; tmpvar_43.y = 0.0; tmpvar_43.x = _MainTex_TexelSize.x; tmpvar_42 = tmpvar_43; } else { vec2 tmpvar_44; tmpvar_44.x = 0.0; tmpvar_44.y = _MainTex_TexelSize.y; tmpvar_42 = tmpvar_44; }; lumaEndN = lumaN; lumaEndP = lumaN; posN = (posN + (tmpvar_42 * vec2(-2.0, -2.0))); posP = (posP + (tmpvar_42 * vec2(2.0, 2.0))); offNP = (tmpvar_42 * vec2(3.0, 3.0)); while (true) { if ((i >= 4)) { break; }; if (!(doneN)) { vec4 tmpvar_45; tmpvar_45 = texture2DGradARB (_MainTex, posN, offNP, offNP); lumaEndN = ((tmpvar_45.y * 1.96321) + tmpvar_45.x); }; if (!(doneP)) { vec4 tmpvar_46; tmpvar_46 = texture2DGradARB (_MainTex, posP, offNP, offNP); lumaEndP = ((tmpvar_46.y * 1.96321) + tmpvar_46.x); }; bool tmpvar_47; if (doneN) { tmpvar_47 = bool(1); } else { tmpvar_47 = (abs ((lumaEndN - lumaN)) >= gradientN); }; doneN = tmpvar_47; bool tmpvar_48; if (doneP) { tmpvar_48 = bool(1); } else { tmpvar_48 = (abs ((lumaEndP - lumaN)) >= gradientN); }; doneP = tmpvar_48; bool tmpvar_49; if (tmpvar_47) { tmpvar_49 = tmpvar_48; } else { tmpvar_49 = bool(0); }; if (tmpvar_49) { break; }; if (!(tmpvar_47)) { posN = (posN - offNP); }; if (!(tmpvar_48)) { posP = (posP + offNP); }; i = (i + 1); }; float tmpvar_50; if (tmpvar_34) { tmpvar_50 = (xlv_TEXCOORD0.x - posN.x); } else { tmpvar_50 = (xlv_TEXCOORD0.y - posN.y); }; float tmpvar_51; if (tmpvar_34) { tmpvar_51 = (posP.x - xlv_TEXCOORD0.x); } else { tmpvar_51 = (posP.y - xlv_TEXCOORD0.y); }; bool tmpvar_52; tmpvar_52 = (tmpvar_50 < tmpvar_51); float tmpvar_53; if (tmpvar_52) { tmpvar_53 = lumaEndN; } else { tmpvar_53 = lumaEndP; }; lumaEndN = tmpvar_53; if ((((tmpvar_14 - lumaN) < 0.0) == ((tmpvar_53 - lumaN) < 0.0))) { lengthSign = 0.0; }; float tmpvar_54; tmpvar_54 = (tmpvar_51 + tmpvar_50); float tmpvar_55; if (tmpvar_52) { tmpvar_55 = tmpvar_50; } else { tmpvar_55 = tmpvar_51; }; float tmpvar_56; tmpvar_56 = ((0.5 + (tmpvar_55 * (-1.0 / tmpvar_54))) * lengthSign); float tmpvar_57; if (tmpvar_34) { tmpvar_57 = 0.0; } else { tmpvar_57 = tmpvar_56; }; float tmpvar_58; if (tmpvar_34) { tmpvar_58 = tmpvar_56; } else { tmpvar_58 = 0.0; }; vec2 tmpvar_59; tmpvar_59.x = (xlv_TEXCOORD0.x + tmpvar_57); tmpvar_59.y = (xlv_TEXCOORD0.y + tmpvar_58); vec4 tmpvar_60; tmpvar_60.zw = vec2(0.0, 0.0); tmpvar_60.xy = tmpvar_59; vec4 tmpvar_61; tmpvar_61 = texture2DLod (_MainTex, tmpvar_60.xy, 0.0); vec3 tmpvar_62; tmpvar_62.x = -(tmpvar_20); tmpvar_62.y = -(tmpvar_20); tmpvar_62.z = -(tmpvar_20); tmpvar_1 = ((tmpvar_62 * tmpvar_61.xyz) + ((tmpvar_29 * vec3(tmpvar_20)) + tmpvar_61.xyz)); }; vec4 tmpvar_63; tmpvar_63.w = 0.0; tmpvar_63.xyz = tmpvar_1; gl_FragData[0] = tmpvar_63; }