1cbuffer _UniformBuffer : register(b0, space0) 2{ 3 float4 _15_src : packoffset(c0); 4 float4 _15_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_burn_component_Qhh2h2(float2 _21, float2 _22) 18{ 19 if (_22.y == _22.x) 20 { 21 return ((_21.y * _22.y) + (_21.x * (1.0f - _22.y))) + (_22.x * (1.0f - _21.y)); 22 } 23 else 24 { 25 if (_21.x == 0.0f) 26 { 27 return _22.x * (1.0f - _21.y); 28 } 29 else 30 { 31 float _66 = max(0.0f, _22.y - (((_22.y - _22.x) * _21.y) / (_21.x + _kGuardedDivideEpsilon))); 32 float delta = _66; 33 return ((_66 * _21.y) + (_21.x * (1.0f - _22.y))) + (_22.x * (1.0f - _21.y)); 34 } 35 } 36} 37 38void frag_main() 39{ 40 _kGuardedDivideEpsilon = false ? 9.9999999392252902907785028219223e-09f : 0.0f; 41 float2 _109 = _15_src.xw; 42 float2 _114 = _15_dst.xw; 43 float2 _119 = _15_src.yw; 44 float2 _123 = _15_dst.yw; 45 float2 _128 = _15_src.zw; 46 float2 _132 = _15_dst.zw; 47 sk_FragColor = float4(color_burn_component_Qhh2h2(_109, _114), color_burn_component_Qhh2h2(_119, _123), color_burn_component_Qhh2h2(_128, _132), _15_src.w + ((1.0f - _15_src.w) * _15_dst.w)); 48} 49 50SPIRV_Cross_Output main() 51{ 52 frag_main(); 53 SPIRV_Cross_Output stage_output; 54 stage_output.sk_FragColor = sk_FragColor; 55 return stage_output; 56} 57