1cbuffer _UniformBuffer : register(b0, space0) 2{ 3 float4 _17_src : packoffset(c0); 4 float4 _17_dst : packoffset(c1); 5}; 6 7 8static float4 sk_FragColor; 9 10struct SPIRV_Cross_Output 11{ 12 float4 sk_FragColor : SV_Target0; 13}; 14 15static float _kGuardedDivideEpsilon = 0.0f; 16 17float color_dodge_component_Qhh2h2(float2 _23, float2 _24) 18{ 19 if (_24.x == 0.0f) 20 { 21 return _23.x * (1.0f - _24.y); 22 } 23 else 24 { 25 float _45 = _23.y - _23.x; 26 float delta = _45; 27 if (_45 == 0.0f) 28 { 29 return ((_23.y * _24.y) + (_23.x * (1.0f - _24.y))) + (_24.x * (1.0f - _23.y)); 30 } 31 else 32 { 33 float _69 = min(_24.y, (_24.x * _23.y) / (_45 + _kGuardedDivideEpsilon)); 34 delta = _69; 35 return ((_69 * _23.y) + (_23.x * (1.0f - _24.y))) + (_24.x * (1.0f - _23.y)); 36 } 37 } 38} 39 40void frag_main() 41{ 42 _kGuardedDivideEpsilon = false ? 9.9999999392252902907785028219223e-09f : 0.0f; 43 float2 _106 = _17_src.xw; 44 float2 _111 = _17_dst.xw; 45 float2 _116 = _17_src.yw; 46 float2 _120 = _17_dst.yw; 47 float2 _125 = _17_src.zw; 48 float2 _129 = _17_dst.zw; 49 sk_FragColor = float4(color_dodge_component_Qhh2h2(_106, _111), color_dodge_component_Qhh2h2(_116, _120), color_dodge_component_Qhh2h2(_125, _129), _17_src.w + ((1.0f - _17_src.w) * _17_dst.w)); 50} 51 52SPIRV_Cross_Output main() 53{ 54 frag_main(); 55 SPIRV_Cross_Output stage_output; 56 stage_output.sk_FragColor = sk_FragColor; 57 return stage_output; 58} 59