// AUTOMATICALLY CONVERTED FROM SHADER FIXES 
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//   using 3Dmigoto v0.6.164 on Wed Oct 28 14:28:24 2026
//
//
// Buffer Definitions:
//
// cbuffer HDRBloomConstants
// {
//
//   float4 g_xQuarterScreenRTSizeConsts;// Offset:    0 Size:    16 [unused]
//   float4 g_xBloomRTSizeConsts;       // Offset:   16 Size:    16
//   float4 g_xScreenRTSizeConsts;      // Offset:   32 Size:    16 [unused]
//   float4 g_xBlurParams;              // Offset:   48 Size:    16
//   float4 g_xBloomConsts;             // Offset:   64 Size:    16 [unused]
//
// }
//
// cbuffer HDRBloomBlurIterationConsts
// {
//
//   float g_fIterationStep;            // Offset:    0 Size:     4
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// g_xFilteredClamp_s                sampler      NA          NA    5        1
// g_xBloomTexture                   texture  float4          2d    1        1
// HDRBloomConstants                 cbuffer      NA          NA    1        1
// HDRBloomBlurIterationConsts       cbuffer      NA          NA    2        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Position              0   xyzw        0      POS   float   xy
//
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// SV_Target                0   xyzw        0   TARGET   float   xyzw
//
ps_4_0
dcl_constantbuffer CB1[4], immediateIndexed
dcl_constantbuffer CB2[1], immediateIndexed
dcl_sampler s5, mode_default
dcl_resource_texture2d (float,float,float,float) t1
dcl_input_ps_siv linear noperspective v0.xy, position
dcl_output o0.xyzw
dcl_temps 4
mul r0.x, cb1[3].z, cb2[0].x
mul r0.yz, l(0.000000, 0.500000, 0.500000, 0.000000), cb1[1].zzwz
mad r0.xy, cb1[1].zwzz, r0.xxxx, r0.yzyy
mad r1.zw, v0.xxxy, cb1[1].zzzw, r0.xxxy
mad r1.xy, v0.xyxx, cb1[1].zwzz, -r0.xyxx
sample r0.xyzw, r1.zwzz, t1.xyzw, s5
sample r2.xyzw, r1.xwxx, t1.xyzw, s5
sample r3.xyzw, r1.zyzz, t1.xyzw, s5
sample r1.xyzw, r1.xyxx, t1.xyzw, s5
add r0.xyz, r0.xyzx, r2.xyzx
add r0.xyz, r3.xyzx, r0.xyzx
add r0.xyz, r1.xyzx, r0.xyzx
mul o0.xyz, r0.xyzx, l(0.250000, 0.250000, 0.250000, 0.000000)
mov o0.w, cb1[3].y
ret
// Approximately 15 instruction slots used

///////////////////////////////// HLSL Code /////////////////////////////////
// // ---- Created with 3Dmigoto v0.6.164 on Wed Oct 28 14:28:24 2026
//
// cbuffer HDRBloomConstants : register(b1)
// {
//   float4 g_xQuarterScreenRTSizeConsts : packoffset(c0);
//   float4 g_xBloomRTSizeConsts : packoffset(c1);
//   float4 g_xScreenRTSizeConsts : packoffset(c2);
//   float4 g_xBlurParams : packoffset(c3);
//   float4 g_xBloomConsts : packoffset(c4);
// }
//
// cbuffer HDRBloomBlurIterationConsts : register(b2)
// {
//   float g_fIterationStep : packoffset(c0);
// }
//
// SamplerState g_xFilteredClamp_s_s : register(s5);
// Texture2D<float4> g_xBloomTexture : register(t1);
//
//
// // 3Dmigoto declarations
// #define cmp -
// Texture1D<float4> IniParams : register(t120);
// Buffer<float4> StereoParams : register(t125);
//
//
// void main(
//   float4 v0 : SV_Position0,
//   out float4 o0 : SV_Target0)
// {
//   float4 r0,r1,r2,r3;
//   uint4 bitmask, uiDest;
//   float4 fDest;
//
//   r0.x = g_fIterationStep * g_xBlurParams.z;
//   r0.yz = g_xBloomRTSizeConsts.zw * float2(0.5,0.5);
//   r0.xy = g_xBloomRTSizeConsts.zw * r0.xx + r0.yz;
//   r1.zw = v0.xy * g_xBloomRTSizeConsts.zw + r0.xy;
//   r1.xy = v0.xy * g_xBloomRTSizeConsts.zw + -r0.xy;
//   r0.xyzw = g_xBloomTexture.Sample(g_xFilteredClamp_s_s, r1.zw).xyzw;
//   r2.xyzw = g_xBloomTexture.Sample(g_xFilteredClamp_s_s, r1.xw).xyzw;
//   r3.xyzw = g_xBloomTexture.Sample(g_xFilteredClamp_s_s, r1.zy).xyzw;
//   r1.xyzw = g_xBloomTexture.Sample(g_xFilteredClamp_s_s, r1.xy).xyzw;
//   r0.xyz = r2.xyz + r0.xyz;
//   r0.xyz = r0.xyz + r3.xyz;
//   r0.xyz = r0.xyz + r1.xyz;
//   o0.xyz = float3(0.25,0.25,0.25) * r0.xyz;
//   o0.w = g_xBlurParams.y;
//   return;
// }
/////////////////////////////////////////////////////////////////////////////
