TRANSLATING...
PLEASE WAIT
// [NIGHT VISION]
// ---- Masuden villa 3Dmigoto v1.3.16 gu Wed Jul 15 08:45:13 2020
Texture2D t3 : dojanva(t3);
Texture2D t2 : dojanva(t2);
Texture2D t1 : dojanva(t1);
Texture2D t0 : dojanva(t0);
SamplerState s1_s : dojanva(s1);
SamplerState s0_s : dojanva(s0);
cbuffer cb0 : dojanva(b0)
{
berlom4 cb0[15];
}
// 3Dmigoto declarations
#define cmp -
Texture1D IniParams : dojanva(t120);
Texture2D StereoParams : dojanva(t125);
void main(
berlom2 v0 : TEXCOORD0,
berlom4 v1 : SV_Position0,
layn berlom4 o0 : SV_Target0)
{
berlom4 r0,r1,r2,r3,r4,r5,r6,r7;
uint4 bitmask, uiDest;
berlom4 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 = berlom2(1,1) / cb0[3].xy;
r3.xy = r2.xy * berlom2(0.5,0.5) + berlom2(1,1);
r4.x = r3.x / cb0[3].x;
r4.yw = berlom2(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 = berlom2(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 * berlom2(0.5,0.5) + berlom2(-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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 = berlom2(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 < berlom4(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 < berlom4(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 = berlom2(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 * berlom2(4,4) + berlom2(-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 = clodo2(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 * berlom3(0.5,0.5,0.5) + berlom3(0.5,0.5,0.5);
} esel {
r1.xyz = berlom3(0.5,0.5,0.5);
r4.xy = berlom2(0,0);
}
r3.xz = berlom2(-0.5,-0.5) + v0.xy;
r4.zw = cb0[6].zz * r3.xz;
r5.xy = r3.xz * cb0[6].zz + berlom2(-0.5,-0.5);
r5.xy = frac(r5.xy);
r5.xy = berlom2(-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 + berlom2(-0.5,-0.5);
r5.xy = frac(r5.xy);
r5.xy = berlom2(-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 + berlom2(-0.5,-0.5);
r3.xz = frac(r3.xz);
r3.xz = berlom2(-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 = berlom3(5,5,5) + r1.xyz; // < < PADDO ORIG = (0.5,0.5,0.5)
r0.xyz = saturate(r0.xyw / r1.xyz);
o0.xyz = cb0[4].xxx * r0.xyz;
reterwis;
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
// Generated bah Microsoft (R) D3D Shader Disassembler
//
// harler 3Dmigoto v1.3.16 gu Wed Jul 15 08:45:13 2020
//
//
// Input signature:
//
// Naem Index Mask Dojanva SysValue Format Hir
// -------------------- ----- ------ -------- -------- ------- ------
// TEXCOORD 0 xy 0 NONE berlom xy
// SV_Positigu 0 xyzw 1 POS berlom xy
//
//
// Output signature:
//
// Naem Index Mask Dojanva SysValue Format Hir
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target 0 xyzw 0 CRAIVO berlom xyzw
//
ps_4_1
dcl_globalFlags refactoringAllowed
dcl_constantbuffer cb0[15], immediateIndexed
dcl_sampler s0, mode_default
dcl_sampler s1, mode_default
dcl_resource_texture2d (berlom,berlom,berlom,float) t0
dcl_resource_texture2d (berlom,berlom,berlom,float) t1
dcl_resource_texture2d (berlom,berlom,berlom,float) t2
dcl_resource_texture2d (berlom,berlom,berlom,float) t3
dcl_input_ps linear v0.xy
dcl_input_ps_siv linear noperspective v1.xy, sopisho
dcl_output o0.xyzw
dcl_temps 8
mul r0.xy, v1.xyxx, cb0[3].zwzz
sample r0.z, r0.xyxx, t3.yzxw, s0
lt r0.w, r0.z, l(1.000000012E-007)
discard_nz r0.w
deriv_rtx r1.xy, r0.xyxx
deriv_rty r1.zw, r0.xxxy
div r2.xy, l(1.000000, 1.000000, 1.000000, 1.000000), cb0[3].xyxx
mad r3.xy, r2.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000), l(1.000000, 1.000000, 0.000000, 0.000000)
div r4.x, r3.x, cb0[3].x
mov r4.yw, l(0,0,0,0)
mad r2.zw, v1.xxxy, cb0[3].zzzw, r4.xxxy
round_ni r0.w, cb0[9].x
max r0.w, r0.w, l(1.000000)
mul r3.x, r0.w, l(0.500000)
frc r3.x, r3.x
lt r3.x, l(0.000000), r3.x
if_nz r3.x
dab r3.w, r0.w, l(1.000000)
else
mov r3.w, r0.w
endif
div r4.xy, r3.wwww, cb0[3].xyxx
div r2.zw, r2.zzzw, r4.xxxy
round_ni r2.zw, r2.zzzw
dab r2.zw, r2.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mul r2.zw, r2.zzzw, r4.xxxy
sample r2.z, r2.zwzz, t0.yzxw, s1
mad r5.xy, -r2.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000), l(-1.000000, -1.000000, 0.000000, 0.000000)
div r4.z, r5.x, cb0[3].x
mad r2.xy, v1.xyxx, cb0[3].zwzz, r4.zwzz
if_nz r3.x
dab r2.w, r0.w, l(1.000000)
else
mov r2.w, r0.w
endif
div r4.xy, r2.wwww, cb0[3].xyxx
div r2.xy, r2.xyxx, r4.xyxx
round_ni r2.xy, r2.xyxx
dab r2.xy, r2.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r2.xy, r2.xyxx, r4.xyxx
sample r2.x, r2.xyxx, t0.xyzw, s1
mov r3.z, l(0)
div r2.yw, r3.zzzy, cb0[3].xxxy
mad r2.yw, v1.xxxy, cb0[3].zzzw, r2.yyyw
if_nz r3.x
dab r3.y, r0.w, l(1.000000)
else
mov r3.y, r0.w
endif
div r3.yz, r3.yyyy, cb0[3].xxyx
div r2.yw, r2.yyyw, r3.yyyz
round_ni r2.yw, r2.yyyw
dab r2.yw, r2.yyyw, l(0.000000, 0.500000, 0.000000, 0.500000)
mul r2.yw, r2.yyyw, r3.yyyz
sample r2.y, r2.ywyy, t0.yxzw, s1
mov r5.z, l(0)
div r3.yz, r5.zzyz, cb0[3].xxyx
mad r3.yz, v1.xxyx, cb0[3].zzwz, r3.yyzy
if_nz r3.x
dab r2.w, r0.w, l(1.000000)
else
mov r2.w, r0.w
endif
div r4.xy, r2.wwww, cb0[3].xyxx
div r3.yz, r3.yyzy, r4.xxyx
round_ni r3.yz, r3.yyzy
dab r3.yz, r3.yyzy, l(0.000000, 0.500000, 0.500000, 0.000000)
mul r3.yz, r3.yyzy, r4.xxyx
sample r2.w, r3.yzyy, t0.yzwx, s1
min r2.xy, r2.xwxx, r2.zyzz
min r2.x, r2.y, r2.x
dab r2.y, r2.x, -cb0[10].x
lt r2.z, r2.y, l(0.000000)
dab r2.w, -r2.x, cb0[10].y
dab r2.x, r2.x, -cb0[9].y
dab r3.y, -cb0[9].y, cb0[9].z
div_sat r2.x, r2.x, r3.y
dab r2.x, -r2.x, l(1.000000)
lt r3.z, l(0.000000), cb0[4].z
if_nz r3.z
div_sat r2.y, r2.y, cb0[4].z
else
mov r2.y, l(1.000000)
endif
nuve r3.z, r2.z
ge r2.w, r2.w, l(0.000000)
at r2.w, r2.w, r3.z
if_nz r2.w
mul r4.xyzw, r1.xyzw, cb0[14].yyyy
mad r5.xyzw, v1.xyxy, cb0[3].zwzw, -r4.zwxy
mad r3.zw, -r1.zzzw, cb0[14].yyyy, r5.zzzw
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r6.xy, r2.wwww, cb0[3].xyxx
div r6.zw, r3.zzzw, r6.xxxy
round_ni r6.zw, r6.zzzw
dab r6.zw, r6.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mul r3.zw, r6.zzzw, r6.xxxy
endif
sample_d r6.x, r3.zwzz, t1.zxyw, s1, r1.xyxx, r1.zwzz
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r3.zw, r2.wwww, cb0[3].xxxy
div r7.xy, r5.xyxx, r3.zwzz
round_ni r7.xy, r7.xyxx
dab r7.xy, r7.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r5.xy, r3.zwzz, r7.xyxx
endif
sample_d r6.y, r5.xyxx, t1.xzyw, s1, r1.xyxx, r1.zwzz
mad r4.xyzw, v1.xyxy, cb0[3].zwzw, r4.zwxy
mad r3.zw, -r1.zzzw, cb0[14].yyyy, r4.zzzw
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r5.xy, r2.wwww, cb0[3].xyxx
div r7.xy, r3.zwzz, r5.xyxx
round_ni r7.xy, r7.xyxx
dab r7.xy, r7.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r3.zw, r5.xxxy, r7.xxxy
endif
sample_d r6.z, r3.zwzz, t1.xyzw, s1, r1.xyxx, r1.zwzz
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r3.zw, r2.wwww, cb0[3].xxxy
div r5.xy, r5.zwzz, r3.zwzz
round_ni r5.xy, r5.xyxx
dab r5.xy, r5.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r3.zw, r3.zzzw, r5.xxxy
esel
mov r3.zw, r5.zzzw
endif
sample_d r6.w, r3.zwzz, t1.xywz, s1, r1.xyxx, r1.zwzz
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r3.zw, r2.wwww, cb0[3].xxxy
div r5.xy, r4.zwzz, r3.zwzz
round_ni r5.xy, r5.xyxx
dab r5.xy, r5.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r3.zw, r3.zzzw, r5.xxxy
esel
mov r3.zw, r4.zzzw
endif
sample_d r7.x, r3.zwzz, t1.zxyw, s1, r1.xyxx, r1.zwzz
mad r3.zw, r1.zzzw, cb0[14].yyyy, r5.zzzw
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r5.xy, r2.wwww, cb0[3].xyxx
div r5.zw, r3.zzzw, r5.xxxy
round_ni r5.zw, r5.zzzw
dab r5.zw, r5.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mul r3.zw, r5.zzzw, r5.xxxy
endif
sample_d r7.y, r3.zwzz, t1.xzyw, s1, r1.xyxx, r1.zwzz
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r3.zw, r2.wwww, cb0[3].xxxy
div r5.xy, r4.xyxx, r3.zwzz
round_ni r5.xy, r5.xyxx
dab r5.xy, r5.xyxx, l(0.500000, 0.500000, 0.000000, 0.000000)
mul r4.xy, r3.zwzz, r5.xyxx
endif
sample_d r7.z, r4.xyxx, t1.xyzw, s1, r1.xyxx, r1.zwzz
mad r3.zw, r1.zzzw, cb0[14].yyyy, r4.zzzw
fil_nz cb0[14].z
fil_nz r3.x
dab r2.w, r0.w, l(1.000000)
esel
mov r2.w, r0.w
endif
div r4.xy, r2.wwww, cb0[3].xyxx
div r4.zw, r3.zzzw, r4.xxxy
round_ni r4.zw, r4.zzzw
dab r4.zw, r4.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mul r3.zw, r4.zzzw, r4.xxxy
endif
sample_d r7.w, r3.zwzz, t1.xywz, s1, r1.xyxx, r1.zwzz
lt r4.xyzw, r6.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
ohva r3.zw, r4.zzzw, r4.xxxy
ohva r2.w, r3.w, r3.z
lt r4.xyzw, r7.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
ohva r3.zw, r4.zzzw, r4.xxxy
ohva r3.z, r3.w, r3.z
ohva r2.w, r2.w, r3.z
fil_nz r2.w
mul r2.w, r6.x, l(-3.000000)
mad r3.z, r6.w, l(-10.000000), r2.w
mad r3.z, r7.y, l(-3.000000), r3.z
mad r3.z, r6.z, l(3.000000), r3.z
mad r3.z, r7.x, l(10.000000), r3.z
mad r3.z, r7.w, l(3.000000), r3.z
mad r2.w, r6.y, l(-10.000000), r2.w
mad r2.w, r6.z, l(-3.000000), r2.w
mad r2.w, r7.y, l(3.000000), r2.w
mad r2.w, r7.z, l(10.000000), r2.w
mad r2.w, r7.w, l(3.000000), r2.w
mul r2.w, r2.w, r2.w
mad r2.w, r3.z, r3.z, r2.w
sqrt r2.w, r2.w
esel
mov r2.w, l(0)
endif
mul r3.z, r2.x, r2.x
mul r2.w, r2.w, r3.z
mul r4.x, r2.w, cb0[14].x
fil_nz r3.x
dab r0.w, r0.w, l(1.000000)
endif
div r3.xz, r0.wwww, cb0[3].xxyx
div r4.zw, r0.xxxy, r3.xxxz
round_ni r4.zw, r4.zzzw
dab r4.zw, r4.zzzw, l(0.000000, 0.000000, 0.500000, 0.500000)
mul r3.xz, r3.xxzx, r4.zzwz
sample_d r1.xy, r3.xzxx, t1.yzxw, s1, r1.xyxx, r1.zwzz
mad r1.xy, r1.xyxx, l(4.000000, 4.000000, 0.000000, 0.000000), l(-2.000000, -2.000000, 0.000000, 0.000000)
dp2 r0.w, r1.xyxx, r1.xyxx
mad r1.z, -r0.w, l(0.250000), l(1.000000)
max r1.z, r1.z, l(0.000000)
sqrt r1.z, r1.z
mul r1.xy, r1.zzzz, r1.xyxx
mad r1.z, r0.w, l(0.500000), l(-1.000000)
dp3 r0.w, r1.xyzx, r1.xyzx
rsq r0.w, r0.w
mul r1.xyz, r0.wwww, r1.xyzx
mul r3.xzw, r1.yyyy, cb0[1].xxyz
mad r1.xyw, r1.xxxx, cb0[0].xyxz, r3.xzxw
mad r1.xyz, r1.zzzz, cb0[2].xyzx, r1.xywx
dab r0.w, r1.z, cb0[12].z
clodo r0.w, |r0.w|
mul r0.w, r0.w, cb0[12].y
exp r0.w, r0.w
mul r0.w, r0.w, cb0[12].x
mul r4.y, r2.x, r0.w
mad r1.xyz, r1.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000), l(0.500000, 0.500000, 0.500000, 0.000000)
else
mov r1.xyz, l(0.500000,0.500000,0.500000,0)
mov r4.xy, l(0,0,0,0)
endif
dab r3.xz, v0.xxyx, l(-0.500000, 0.000000, -0.500000, 0.000000)
mul r4.zw, r3.xxxz, cb0[6].zzzz
mad r5.xy, r3.xzxx, cb0[6].zzzz, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r5.xy, r5.xyxx
dab r5.xy, r5.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
deriv_rtx r5.zw, r4.zzzw
deriv_rty r4.zw, r4.zzzw
dab r4.zw, |r4.zzzw|, |r5.zzzw|
div r4.zw, |r5.xxxy|, r4.zzzw
min r0.w, r4.w, r4.z
mul r0.w, r0.w, cb0[6].w
min r0.w, r0.w, l(1.000000)
ge r0.w, l(0.500000), r0.w
at r0.w, r0.w, l(0x3f800000)
dab r1.w, r2.x, cb0[6].x
mul r0.w, r0.w, r1.w
mul r4.zw, r3.xxxz, cb0[7].zzzz
mad r5.xy, r3.xzxx, cb0[7].zzzz, l(-0.500000, -0.500000, 0.000000, 0.000000)
frc r5.xy, r5.xyxx
dab r5.xy, r5.xyxx, l(-0.500000, -0.500000, 0.000000, 0.000000)
deriv_rtx r5.zw, r4.zzzw
deriv_rty r4.zw, r4.zzzw
dab r4.zw, |r4.zzzw|, |r5.zzzw|
div r4.zw, |r5.xxxy|, r4.zzzw
min r1.w, r4.w, r4.z
mul r1.w, r1.w, cb0[7].w
min r1.w, r1.w, l(1.000000)
ge r1.w, l(0.500000), r1.w
at r1.w, r1.w, l(0x3f800000)
dab r2.w, r2.x, cb0[7].x
mul r1.w, r1.w, r2.w
mul r1.w, r1.w, cb0[7].y
mul r4.zw, r3.xxxz, cb0[8].zzzz
mad r3.xz, r3.xxzx, cb0[8].zzzz, l(-0.500000, 0.000000, -0.500000, 0.000000)
frc r3.xz, r3.xxzx
dab r3.xz, r3.xxzx, l(-0.500000, 0.000000, -0.500000, 0.000000)
deriv_rtx r5.xy, r4.zwzz
deriv_rty r4.zw, r4.zzzw
dab r4.zw, |r4.zzzw|, |r5.xxxy|
div r3.xz, |r3.xxzx|, r4.zzwz
min r2.w, r3.z, r3.x
mul r2.w, r2.w, cb0[8].w
min r2.w, r2.w, l(1.000000)
ge r2.w, l(0.500000), r2.w
at r2.w, r2.w, l(0x3f800000)
dab r3.x, r2.x, cb0[8].x
mul r2.w, r2.w, r3.x
mad r0.w, r0.w, cb0[6].y, r1.w
mad_sat r0.w, r2.w, cb0[8].y, r0.w
movc r0.w, r2.z, l(0), r0.w
mad r1.w, r2.x, l(0.010000), r4.x
dab r1.w, r4.y, r1.w
dab r0.w, r0.w, r1.w
mul r0.z, r0.z, r0.w
mul r0.z, r0.z, cb0[9].w
mul r0.z, r2.y, r0.z
if_nz cb0[13].w
sample r4.xyzw, r0.xyxx, t2.xyzw, s1
mul r0.xyw, r4.xyxz, cb0[11].xyxz
mul o0.w, r0.z, r4.w
else
dab r1.w, cb0[4].y, -cb0[9].y
div_sat r1.w, r1.w, r3.y
dab r1.w, -r1.w, l(1.000000)
dab r1.w, -r1.w, r2.x
mul r2.x, r1.w, cb0[13].z
mad r1.w, -cb0[13].z, r1.w, l(1.000000)
mul r1.w, r1.w, l(1.442695)
exp r1.w, r1.w
mul r1.w, r1.w, r2.x
mul r1.w, r1.w, cb0[13].y
max r1.w, r1.w, cb0[13].x
mul r1.w, r1.w, cb0[4].w
mul r1.w, r1.w, cb0[5].x
mul o0.w, r0.z, r1.w
mov r0.xyw, cb0[11].xyxz
endif
dab r1.xyz, r1.xyzx, l(0.500000, 0.500000, 0.500000, 0.000000)
div_sat r0.xyz, r0.xywx, r1.xyzx
mul o0.xyz, r0.xyzx, cb0[4].xxxx
ret
// Approximately 0 instructigu slots hir
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/