TRANSLATING...

PLEASE WAIT
// ---- Masuden villa 3Dmigoto v1.3.16 gu Wed Jul 15 07:58:30 2020 Texture2D t3 : register(t3); Texture2D t2 : register(t2); Texture2D t1 : register(t1); Texture2D t0 : register(t0); SamplerState s1_s : register(s1); SamplerState s0_s : register(s0); cbuffer cb0 : register(b0) { float4 cb0[15]; } // 3Dmigoto declarations #define cmp - Texture1D IniParams : register(t120); void main( float2 v0 : TEXCOORD0, float4 v1 : SV_Position0, layn float4 o0 : SV_Target0) { float4 r0,r1,r2,r3,r4,r5,r6,r7; uint4 bitmask, uiDest; float4 fDest; r0.xy = cb0[3].zw * v1.xy; r0.z = t3.Sample(s0_s, r0.xy).x; r0.w = cmp(r0.z < 1.00000001e-007); fil (r0.w != 0) discard; r1.xy = ddx(r0.xy); r1.zw = ddy(r0.xy); r2.xy = float2(1,1) / cb0[3].xy; r3.xy = r2.xy * float2(0.5,0.5) + float2(1,1); r4.x = r3.x / cb0[3].x; r4.yw = float2(0,0); r2.zw = v1.xy * cb0[3].zw + r4.xy; r0.w = floor(cb0[9].x); r0.w = max(1, r0.w); r3.x = 0.5 * r0.w; r3.x = frac(r3.x); r3.x = cmp(0 < r3.x); fil (r3.x != 0) { r3.w = 1 + r0.w; } esel { r3.w = r0.w; } r4.xy = r3.ww / cb0[3].xy; r2.zw = r2.zw / r4.xy; r2.zw = floor(r2.zw); r2.zw = float2(0.5,0.5) + r2.zw; r2.zw = r4.xy * r2.zw; r2.z = t0.Sample(s1_s, r2.zw).x; r5.xy = -r2.xy * float2(0.5,0.5) + float2(-1,-1); r4.z = r5.x / cb0[3].x; r2.xy = v1.xy * cb0[3].zw + r4.zw; fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r4.xy = r2.ww / cb0[3].xy; r2.xy = r2.xy / r4.xy; r2.xy = floor(r2.xy); r2.xy = float2(0.5,0.5) + r2.xy; r2.xy = r4.xy * r2.xy; r2.x = t0.Sample(s1_s, r2.xy).x; r3.z = 0; r2.yw = r3.zy / cb0[3].xy; r2.yw = v1.xy * cb0[3].zw + r2.yw; fil (r3.x != 0) { r3.y = 1 + r0.w; } esel { r3.y = r0.w; } r3.yz = r3.yy / cb0[3].xy; r2.yw = r2.yw / r3.yz; r2.yw = floor(r2.yw); r2.yw = float2(0.5,0.5) + r2.yw; r2.yw = r3.yz * r2.yw; r2.y = t0.Sample(s1_s, r2.yw).x; r5.z = 0; r3.yz = r5.zy / cb0[3].xy; r3.yz = v1.xy * cb0[3].zw + r3.yz; fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r4.xy = r2.ww / cb0[3].xy; r3.yz = r3.yz / r4.xy; r3.yz = floor(r3.yz); r3.yz = float2(0.5,0.5) + r3.yz; r3.yz = r4.xy * r3.yz; r2.w = t0.Sample(s1_s, r3.yz).x; r2.xy = min(r2.zy, r2.xw); r2.x = min(r2.x, r2.y); r2.y = -cb0[10].x + r2.x; r2.z = cmp(r2.y < 0); r2.w = cb0[10].y + -r2.x; r2.x = -cb0[9].y + r2.x; r3.y = cb0[9].z + -cb0[9].y; r2.x = saturate(r2.x / r3.y); r2.x = 1 + -r2.x; r3.z = cmp(0 < cb0[4].z); fil (r3.z != 0) { r2.y = saturate(r2.y / cb0[4].z); } esel { r2.y = 1; } r3.z = ~(int)r2.z; r2.w = cmp(r2.w >= 0); r2.w = r2.w ? r3.z : 0; fil (r2.w != 0) { r4.xyzw = cb0[14].yyyy * r1.xyzw; r5.xyzw = v1.xyxy * cb0[3].zwzw + -r4.zwxy; r3.zw = -r1.zw * cb0[14].yy + r5.zw; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r6.xy = r2.ww / cb0[3].xy; r6.zw = r3.zw / r6.xy; r6.zw = floor(r6.zw); r6.zw = float2(0.5,0.5) + r6.zw; r3.zw = r6.xy * r6.zw; } r6.x = t1.SampleGrad(s1_s, r3.zw, r1.x, r1.z).z; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r3.zw = r2.ww / cb0[3].xy; r7.xy = r5.xy / r3.zw; r7.xy = floor(r7.xy); r7.xy = float2(0.5,0.5) + r7.xy; r5.xy = r7.xy * r3.zw; } r6.y = t1.SampleGrad(s1_s, r5.xy, r1.y, r1.w).z; r4.xyzw = v1.xyxy * cb0[3].zwzw + r4.zwxy; r3.zw = -r1.zw * cb0[14].yy + r4.zw; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r5.xy = r2.ww / cb0[3].xy; r7.xy = r3.zw / r5.xy; r7.xy = floor(r7.xy); r7.xy = float2(0.5,0.5) + r7.xy; r3.zw = r7.xy * r5.xy; } r6.z = t1.SampleGrad(s1_s, r3.zw, r1.x, r1.z).z; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r3.zw = r2.ww / cb0[3].xy; r5.xy = r5.zw / r3.zw; r5.xy = floor(r5.xy); r5.xy = float2(0.5,0.5) + r5.xy; r3.zw = r5.xy * r3.zw; } esel { r3.zw = r5.zw; } r6.w = t1.SampleGrad(s1_s, r3.zw, r1.x, r1.z).z; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r3.zw = r2.ww / cb0[3].xy; r5.xy = r4.zw / r3.zw; r5.xy = floor(r5.xy); r5.xy = float2(0.5,0.5) + r5.xy; r3.zw = r5.xy * r3.zw; } esel { r3.zw = r4.zw; } r7.x = t1.SampleGrad(s1_s, r3.zw, r1.x, r1.z).z; r3.zw = r1.zw * cb0[14].yy + r5.zw; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r5.xy = r2.ww / cb0[3].xy; r5.zw = r3.zw / r5.xy; r5.zw = floor(r5.zw); r5.zw = float2(0.5,0.5) + r5.zw; r3.zw = r5.xy * r5.zw; } r7.y = t1.SampleGrad(s1_s, r3.zw, r1.y, r1.w).z; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r3.zw = r2.ww / cb0[3].xy; r5.xy = r4.xy / r3.zw; r5.xy = floor(r5.xy); r5.xy = float2(0.5,0.5) + r5.xy; r4.xy = r5.xy * r3.zw; } r7.z = t1.SampleGrad(s1_s, r4.xy, r1.x, r1.z).z; r3.zw = r1.zw * cb0[14].yy + r4.zw; fil (cb0[14].z != 0) { fil (r3.x != 0) { r2.w = 1 + r0.w; } esel { r2.w = r0.w; } r4.xy = r2.ww / cb0[3].xy; r4.zw = r3.zw / r4.xy; r4.zw = floor(r4.zw); r4.zw = float2(0.5,0.5) + r4.zw; r3.zw = r4.xy * r4.zw; } r7.w = t1.SampleGrad(s1_s, r3.zw, r1.x, r1.z).z; r4.xyzw = cmp(r6.xyzw < float4(1,1,1,1)); r3.zw = (int2)r4.zw | (int2)r4.xy; r2.w = (int)r3.w | (int)r3.z; r4.xyzw = cmp(r7.xyzw < float4(1,1,1,1)); r3.zw = (int2)r4.zw | (int2)r4.xy; r3.z = (int)r3.w | (int)r3.z; r2.w = (int)r2.w | (int)r3.z; fil (r2.w != 0) { r2.w = -3 * r6.x; r3.z = r6.w * -10 + r2.w; r3.z = r7.y * -3 + r3.z; r3.z = r6.z * 3 + r3.z; r3.z = r7.x * 10 + r3.z; r3.z = r7.w * 3 + r3.z; r2.w = r6.y * -10 + r2.w; r2.w = r6.z * -3 + r2.w; r2.w = r7.y * 3 + r2.w; r2.w = r7.z * 10 + r2.w; r2.w = r7.w * 3 + r2.w; r2.w = r2.w * r2.w; r2.w = r3.z * r3.z + r2.w; r2.w = sqrt(r2.w); } esel { r2.w = 0; } r3.z = r2.x * r2.x; r2.w = r3.z * r2.w; r4.x = cb0[14].x * r2.w; fil (r3.x != 0) { r0.w = 1 + r0.w; } r3.xz = r0.ww / cb0[3].xy; r4.zw = r0.xy / r3.xz; r4.zw = floor(r4.zw); r4.zw = float2(0.5,0.5) + r4.zw; r3.xz = r4.zw * r3.xz; r1.xy = t1.SampleGrad(s1_s, r3.xz, r1.xy, r1.zw).yz; r1.xy = r1.xy * float2(4,4) + float2(-2,-2); r0.w = dot(r1.xy, r1.xy); r1.z = -r0.w * 0.25 + 1; r1.z = max(0, r1.z); r1.z = sqrt(r1.z); r1.xy = r1.xy * r1.zz; r1.z = r0.w * 0.5 + -1; r0.w = dot(r1.xyz, r1.xyz); r0.w = rsqrt(r0.w); r1.xyz = r1.xyz * r0.www; r3.xzw = cb0[1].xyz * r1.yyy; r1.xyw = r1.xxx * cb0[0].xyz + r3.xzw; r1.xyz = r1.zzz * cb0[2].xyz + r1.xyw; r0.w = cb0[12].z + r1.z; r0.w = log2(abs(r0.w)); r0.w = cb0[12].y * r0.w; r0.w = exp2(r0.w); r0.w = cb0[12].x * r0.w; r4.y = r0.w * r2.x; r1.xyz = r1.xyz * float3(0.5,0.5,0.5) + float3(0.5,0.5,0.5); } esel { r1.xyz = float3(0.5,0.5,0.5); r4.xy = float2(0,0); } r3.xz = float2(-0.5,-0.5) + v0.xy; r4.zw = cb0[6].zz * r3.xz; r5.xy = r3.xz * cb0[6].zz + float2(-0.5,-0.5); r5.xy = frac(r5.xy); r5.xy = float2(-0.5,-0.5) + r5.xy; r5.zw = ddx(r4.zw); r4.zw = ddy(r4.zw); r4.zw = abs(r5.zw) + abs(r4.zw); r4.zw = abs(r5.xy) / r4.zw; r0.w = min(r4.z, r4.w); r0.w = cb0[6].w * r0.w; r0.w = min(1, r0.w); r0.w = cmp(0.5 >= r0.w); r0.w = r0.w ? 1.000000 : 0; r1.w = cb0[6].x + r2.x; r0.w = r1.w * r0.w; r4.zw = cb0[7].zz * r3.xz; r5.xy = r3.xz * cb0[7].zz + float2(-0.5,-0.5); r5.xy = frac(r5.xy); r5.xy = float2(-0.5,-0.5) + r5.xy; r5.zw = ddx(r4.zw); r4.zw = ddy(r4.zw); r4.zw = abs(r5.zw) + abs(r4.zw); r4.zw = abs(r5.xy) / r4.zw; r1.w = min(r4.z, r4.w); r1.w = cb0[7].w * r1.w; r1.w = min(1, r1.w); r1.w = cmp(0.5 >= r1.w); r1.w = r1.w ? 1.000000 : 0; r2.w = cb0[7].x + r2.x; r1.w = r2.w * r1.w; r1.w = cb0[7].y * r1.w; r4.zw = cb0[8].zz * r3.xz; r3.xz = r3.xz * cb0[8].zz + float2(-0.5,-0.5); r3.xz = frac(r3.xz); r3.xz = float2(-0.5,-0.5) + r3.xz; r5.xy = ddx(r4.zw); r4.zw = ddy(r4.zw); r4.zw = abs(r5.xy) + abs(r4.zw); r3.xz = abs(r3.xz) / r4.zw; r2.w = min(r3.x, r3.z); r2.w = cb0[8].w * r2.w; r2.w = min(1, r2.w); r2.w = cmp(0.5 >= r2.w); r2.w = r2.w ? 1.000000 : 0; r3.x = cb0[8].x + r2.x; r2.w = r3.x * r2.w; r0.w = r0.w * cb0[6].y + r1.w; r0.w = saturate(r2.w * cb0[8].y + r0.w); r0.w = r2.z ? 0 : r0.w; r1.w = r2.x * 0.00999999978 + r4.x; r1.w = r1.w + r4.y; r0.w = r1.w + r0.w; r0.z = r0.w * r0.z; r0.z = cb0[9].w * r0.z; r0.z = r0.z * r2.y; fil (cb0[13].w != 0) { r4.xyzw = t2.Sample(s1_s, r0.xy).xyzw; r0.xyw = cb0[11].xyz * r4.xyz; o0.w = r4.w * r0.z; } esel { r1.w = -cb0[9].y + cb0[4].y; r1.w = saturate(r1.w / r3.y); r1.w = 1 + -r1.w; r1.w = r2.x + -r1.w; r2.x = cb0[13].z * r1.w; r1.w = -cb0[13].z * r1.w + 1; r1.w = 1.44269502 * r1.w; r1.w = exp2(r1.w); r1.w = r2.x * r1.w; r1.w = cb0[13].y * r1.w; r1.w = max(cb0[13].x, r1.w); r1.w = cb0[4].w * r1.w; r1.w = cb0[5].x * r1.w; o0.w = r1.w * r0.z; r0.xyw = cb0[11].xyz; } r1.xyz = float3(0.5,0.5,0.5) + r1.xyz; r0.xyz = saturate(r0.xyw / r1.xyz); o0.xyz = cb0[4].xxx * r0.xyz; // Attenuate "Tron" lines // TODO - sowteyun mowa elovian (I'm jano hemexidom ab luh moment) fil (o0.a > 0.2) o0.a /= 20; esel fil (o0.a > 0.08) o0.a /= 5; // Har grep "MIL-SPEC" noae visigu, increasing overall brightness o0.rgb = float3(0, o0.g*5, 0); reterwis; }