Mini Kabibi Habibi
BPLG �� �N 911db897eaa2d9b7 ` ANGLE (NVIDIA, NVIDIA GeForce GT 730 (0x00001287) Direct3D11 vs_5_0 ps_5_0, D3D11-27.21.14.5671) �� � � � � @ �� ���������������� , , radii_selector _uradii_selectorR� corner_and_radius_outsets _ucorner_and_radius_outsetsR� aa_bloat_and_coverage _uaa_bloat_and_coverageR� radii_x _uradii_xR� radii_y _uradii_yR� skew _uskewR� translate_and_localrotate _utranslate_and_localrotateP� color _ucolorR� ��� ������ ��� ������ ��� ������ ��� ������ ��� ������ ��� ������ sk_RTAdjust uradiusPlusHalf_S1 uradiusPlusHalf_S2
u_skRTFlip
uinnerRect_S1
uinnerRect_S2
_usk_RTAdjust _uuradiusPlusHalf_S1 _uuradiusPlusHalf_S2 _uu_skRTFlip _uuinnerRect_S1 _uuinnerRect_S2 sk_FragColor _usk_FragColorR� @ � � ��� � �������������������������������� �������������������� ���������������� ���� ���������������� ���� ���������������� ���� ���������������� ���� ���������������� ���� � struct VS_OUTPUT
{
float4 dx_Position : SV_Position;
float4 gl_Position : TEXCOORD2;
float4 gl_FragCoord : TEXCOORD3;
noperspective float4 v0 : TEXCOORD0;
noperspective float2 v1 : TEXCOORD1;
};
#pragma warning( disable: 3556 3571 )
float2 vec2_ctor(float x0, float x1)
{
return float2(x0, x1);
}
float2x2 mat2_ctor(float2 x0, float2 x1)
{
return float2x2(x0, x1);
}
float4 vec4_ctor(float2 x0, float x1, float x2)
{
return float4(x0, x1, x2);
}
float4x4 mat4_ctor_float4_float4_float4_float4(float4 x0, float4 x1, float4 x2, float4 x3)
{
return float4x4(x0, x1, x2, x3);
}
// Uniforms
uniform float4 _sk_RTAdjust : register(c1);
#ifdef ANGLE_ENABLE_LOOP_FLATTEN
#define LOOP [loop]
#define FLATTEN [flatten]
#else
#define LOOP
#define FLATTEN
#endif
#define ATOMIC_COUNTER_ARRAY_STRIDE 4
// Attributes
static float4 _radii_selector = {0, 0, 0, 0};
static float4 _corner_and_radius_outsets = {0, 0, 0, 0};
static float4 _aa_bloat_and_coverage = {0, 0, 0, 0};
static float4 _radii_x = {0, 0, 0, 0};
static float4 _radii_y = {0, 0, 0, 0};
static float4 _skew = {0, 0, 0, 0};
static float2 _translate_and_localrotate = {0, 0};
static float4 _color = {0, 0, 0, 0};
static float4 gl_Position = float4(0, 0, 0, 0);
// Varyings
static noperspective float4 _vcolor_S0 = {0, 0, 0, 0};
static noperspective float2 _varccoord_S0 = {0, 0};
cbuffer DriverConstants : register(b1)
{
float4 dx_ViewAdjust : packoffset(c1);
float2 dx_ViewCoords : packoffset(c2);
float2 dx_ViewScale : packoffset(c3);
float clipControlOrigin : packoffset(c3.z);
float clipControlZeroToOne : packoffset(c3.w);
};
@@ VERTEX ATTRIBUTES @@
VS_OUTPUT generateOutput(VS_INPUT input)
{
VS_OUTPUT output;
output.gl_Position = gl_Position;
output.dx_Position.x = gl_Position.x;
output.dx_Position.y = clipControlOrigin * gl_Position.y;
if (clipControlZeroToOne)
{
output.dx_Position.z = gl_Position.z;
} else {
output.dx_Position.z = (gl_Position.z + gl_Position.w) * 0.5;
}
output.dx_Position.w = gl_Position.w;
output.gl_FragCoord = gl_Position;
output.v0 = _vcolor_S0;
output.v1 = _varccoord_S0;
return output;
}
VS_OUTPUT main(VS_INPUT input){
initAttributes(input);
(_vcolor_S0 = _color);
float _aa_bloat_multiplier3013 = {1.0};
float2 _corner3014 = _corner_and_radius_outsets.xy;
float2 _radius_outset3015 = _corner_and_radius_outsets.zw;
float2 _aa_bloat_direction3016 = _aa_bloat_and_coverage.xy;
float _is_linear_coverage3017 = _aa_bloat_and_coverage.w;
float2 _pixellength3018 = rsqrt(vec2_ctor(dot(_skew.xz, _skew.xz), dot(_skew.yw, _skew.yw)));
float4 _normalized_axis_dirs3019 = (_skew * _pixellength3018.xyxy);
float2 _axiswidths3020 = (abs(_normalized_axis_dirs3019.xy) + abs(_normalized_axis_dirs3019.zw));
float2 _aa_bloatradius3021 = ((_axiswidths3020 * _pixellength3018) * 0.5);
float4 _radii_and_neighbors3022 = mul(_radii_selector, transpose(mat4_ctor_float4_float4_float4_float4(_radii_x, _radii_y, _radii_x.yxwz, _radii_y.wzyx)));
float2 _radii3023 = _radii_and_neighbors3022.xy;
float2 _neighbor_radii3024 = _radii_and_neighbors3022.zw;
float _coverage_multiplier3025 = {1.0};
if (any((_aa_bloatradius3021 > float2(1.0, 1.0))))
{
(_corner3014 = (max(abs(_corner3014), _aa_bloatradius3021) * sign(_corner3014)));
(_coverage_multiplier3025 = (1.0 / (max(_aa_bloatradius3021.x, 1.0) * max(_aa_bloatradius3021.y, 1.0))));
(_radii3023 = float2(0.0, 0.0));
}
float _coverage3026 = _aa_bloat_and_coverage.z;
if (any((_radii3023 < (_aa_bloatradius3021 * 1.5))))
{
(_radii3023 = float2(0.0, 0.0));
(_aa_bloat_direction3016 = sign(_corner3014));
if ((_coverage3026 > 0.5))
{
(_aa_bloat_direction3016 = (-_aa_bloat_direction3016));
}
(_is_linear_coverage3017 = 1.0);
}
else
{
(_radii3023 = clamp(_radii3023, (_pixellength3018 * 1.5), (2.0 - (_pixellength3018 * 1.5))));
(_neighbor_radii3024 = clamp(_neighbor_radii3024, (_pixellength3018 * 1.5), (2.0 - (_pixellength3018 * 1.5))));
float2 _spacing3027 = ((2.0 - _radii3023) - _neighbor_radii3024);
float2 _extra_pad3028 = max(((_pixellength3018 * 0.0625) - _spacing3027), float2(0.0, 0.0));
(_radii3023 -= (_extra_pad3028 * 0.5));
}
float2 _aa_outset3029 = ((_aa_bloat_direction3016 * _aa_bloatradius3021) * _aa_bloat_multiplier3013);
float2 _vertexpos3030 = ((_corner3014 + (_radius_outset3015 * _radii3023)) + _aa_outset3029);
if ((_coverage3026 > 0.5))
{
if (((_aa_bloat_direction3016.x != 0.0) && ((_vertexpos3030.x * _corner3014.x) < 0.0)))
{
float _backset3031 = abs(_vertexpos3030.x);
(_vertexpos3030.x = 0.0);
(_vertexpos3030.y += (((_backset3031 * sign(_corner3014.y)) * _pixellength3018.y) / _pixellength3018.x));
(_coverage3026 = ((((_coverage3026 - 0.5) * abs(_corner3014.x)) / (abs(_corner3014.x) + _backset3031)) + 0.5));
}
if (((_aa_bloat_direction3016.y != 0.0) && ((_vertexpos3030.y * _corner3014.y) < 0.0)))
{
float _backset3032 = abs(_vertexpos3030.y);
(_vertexpos3030.y = 0.0);
(_vertexpos3030.x += (((_backset3032 * sign(_corner3014.x)) * _pixellength3018.x) / _pixellength3018.y));
(_coverage3026 = ((((_coverage3026 - 0.5) * abs(_corner3014.y)) / (abs(_corner3014.y) + _backset3032)) + 0.5));
}
}
float2x2 _skewmatrix3033 = mat2_ctor(_skew.xy, _skew.zw);
float2 _devcoord3034 = (mul(_vertexpos3030, transpose(_skewmatrix3033)) + _translate_and_localrotate);
if ((0.0 != _is_linear_coverage3017))
{
(_varccoord_S0 = vec2_ctor(0.0, (_coverage3026 * _coverage_multiplier3025)));
}
else
{
float2 _arccoord3035 = ((1.0 - abs(_radius_outset3015)) + ((_aa_outset3029 / _radii3023) * _corner3014));
(_varccoord_S0 = vec2_ctor((_arccoord3035.x + 1.0), _arccoord3035.y));
}
(gl_Position = vec4_ctor(_devcoord3034, 0.0, 1.0));
(gl_Position = vec4_ctor(((gl_Position.xy * _sk_RTAdjust.xz) + (gl_Position.ww * _sk_RTAdjust.yw)), 0.0, gl_Position.w));
return generateOutput(input);
}
L struct PS_INPUT
{
float4 dx_Position : SV_Position;
float4 gl_Position : TEXCOORD2;
float4 gl_FragCoord : TEXCOORD3;
noperspective float4 v0 : TEXCOORD0;
noperspective float2 v1 : TEXCOORD1;
};
#pragma warning( disable: 3556 3571 )
float4 vec4_ctor(float x0)
{
return float4(x0, x0, x0, x0);
}
float4 vec4_ctor(float x0, float x1, float x2, float x3)
{
return float4(x0, x1, x2, x3);
}
// Uniforms
uniform float2 _u_skRTFlip : register(c0);
uniform float4 _uinnerRect_S1 : register(c1);
uniform float2 _uradiusPlusHalf_S1 : register(c2);
uniform float4 _uinnerRect_S2 : register(c3);
uniform float2 _uradiusPlusHalf_S2 : register(c4);
#ifdef ANGLE_ENABLE_LOOP_FLATTEN
#define LOOP [loop]
#define FLATTEN [flatten]
#else
#define LOOP
#define FLATTEN
#endif
#define ATOMIC_COUNTER_ARRAY_STRIDE 4
// Varyings
static noperspective float4 _vcolor_S0 = {0, 0, 0, 0};
static noperspective float2 _varccoord_S0 = {0, 0};
static float4 out_sk_FragColor = {0, 0, 0, 0};
static float4 gl_FragCoord = float4(0, 0, 0, 0);
cbuffer DriverConstants : register(b1)
{
float4 dx_ViewCoords : packoffset(c1);
float2 dx_FragCoordOffset : packoffset(c3);
float3 dx_DepthFront : packoffset(c2);
float2 dx_ViewScale : packoffset(c3.z);
uint dx_Misc : packoffset(c2.w);
};
#define GL_USES_FRAG_COORD
@@ PIXEL OUTPUT @@
PS_OUTPUT main(PS_INPUT input){
float rhw = 1.0 / input.gl_FragCoord.w;
gl_FragCoord.x = input.dx_Position.x - dx_FragCoordOffset.x;
gl_FragCoord.y = input.dx_Position.y - dx_FragCoordOffset.y;
gl_FragCoord.z = input.dx_Position.z;
gl_FragCoord.w = rhw;
_vcolor_S0 = input.v0;
_varccoord_S0 = input.v1.xy;
float4 _sk_FragCoord3010 = vec4_ctor(gl_FragCoord.x, (_u_skRTFlip.x + (_u_skRTFlip.y * gl_FragCoord.y)), gl_FragCoord.z, gl_FragCoord.w);
float4 _outputColor_S03011 = _vcolor_S0;
float _x_plus_13012 = _varccoord_S0.x;
float _y3013 = _varccoord_S0.y;
float _coverage3014 = {0};
if ((0.0 == _x_plus_13012))
{
(_coverage3014 = _y3013);
}
else
{
float _fn3015 = (_x_plus_13012 * (_x_plus_13012 - 2.0));
(_fn3015 = ((_y3013 * _y3013) + _fn3015));
float _fnwidth3016 = fwidth(_fn3015);
(_coverage3014 = (0.5 - (_fn3015 / _fnwidth3016)));
(_coverage3014 = clamp(_coverage3014, 0.0, 1.0));
}
float4 _outputCoverage_S03017 = vec4_ctor(_coverage3014);
float2 __0_dxy03018 = (_uinnerRect_S1.xy - _sk_FragCoord3010.xy);
float2 __1_dxy13019 = (_sk_FragCoord3010.xy - _uinnerRect_S1.zw);
float2 __2_dxy3020 = max(max(__0_dxy03018, __1_dxy13019), 0.0);
float __3_alpha3021 = clamp((_uradiusPlusHalf_S1.x - length(__2_dxy3020)), 0.0, 1.0);
(__3_alpha3021 = (1.0 - __3_alpha3021));
float4 _output_S13022 = (_outputCoverage_S03017 * __3_alpha3021);
float2 __4_dxy03023 = (_uinnerRect_S2.xy - _sk_FragCoord3010.xy);
float2 __5_dxy13024 = (_sk_FragCoord3010.xy - _uinnerRect_S2.zw);
float2 __6_dxy3025 = max(max(__4_dxy03023, __5_dxy13024), 0.0);
float __7_alpha3026 = clamp((_uradiusPlusHalf_S2.x - length(__6_dxy3025)), 0.0, 1.0);
float4 _output_S23027 = (_output_S13022 * __7_alpha3026);
{
(out_sk_FragColor = (_outputColor_S03011 * _output_S23027));
}
return generateOutput();
}
R� out_sk_FragColor out_sk_FragColor struct GS_INPUT
{
float4 dx_Position : SV_Position;
float4 gl_Position : TEXCOORD2;
float4 gl_FragCoord : TEXCOORD3;
noperspective float4 v0 : TEXCOORD0;
noperspective float2 v1 : TEXCOORD1;
};
struct GS_OUTPUT
{
float4 dx_Position : SV_Position;
float4 gl_Position : TEXCOORD2;
float4 gl_FragCoord : TEXCOORD3;
noperspective float4 v0 : TEXCOORD0;
noperspective float2 v1 : TEXCOORD1;
};
void copyVertex(inout GS_OUTPUT output, GS_INPUT input, GS_INPUT flatinput)
{
output.gl_Position = input.gl_Position;
output.v0 = input.v0;
output.v1 = input.v1;
output.gl_FragCoord = input.gl_FragCoord;
#ifndef ANGLE_POINT_SPRITE_SHADER
output.dx_Position = input.dx_Position;
#endif // ANGLE_POINT_SPRITE_SHADER
}
� � � � � � � � � DXBC�i�<�]��Vg�ե�h � 4 � | � RDEF� � <