//Motion blur CS.
//
// Generated by Microsoft (R) HLSL Shader Compiler 10.1
//
//   using 3Dmigoto v0.6.181 on Sun Aug 27 21:29:02 2023
//
//
// Buffer Definitions:
//
// cbuffer _
// {
//
//   float4 uTexSize;                   // Index:    0.xyzw           Components:     4
//   float4x4 uScreenToWorld;           // Index:    1 2 3 4          Components:    16
//   float4x4 uPrevWorldToScreen;       // Index:    5 6 7 8          Components:    16
//
// }
//
//
// Resource Bindings:
//
// Name                                 Type  Format         Dim Slot Elements
// ------------------------------ ---------- ------- ----------- ---- --------
// depth_tex                         texture   float          2d    0        1
// output_tex                            UAV  float2          2d    0        1
// _                                 cbuffer      NA          NA    0        1
//
//
//
// Input signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// no Input
//
// Output signature:
//
// Name                 Index   Mask Register SysValue  Format   Used
// -------------------- ----- ------ -------- -------- ------- ------
// no Output
cs_5_0
dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[9], immediateIndexed
dcl_resource_texture2d (float,float,float,float) t0
dcl_uav_typed_texture2d (float,float,float,float) u0
dcl_input vThreadID.xy
dcl_temps 29
dcl_resource_texture2d (float,float,float,float) t125
dcl_thread_group 8, 8, 1
ld_indexable(texture2d)(float,float,float,float) r25.xyzw, l(0, 0, 0, 0), t125.xyzw
ld_indexable(texture2d)(float,float,float,float) r27.xyzw, l(2, 0, 0, 0), t125.xyzw
mov r0.xy, vThreadID.xyxx
mov r0.zw, l(0,0,0,0)
ld_indexable(texture2d)(float,float,float,float) r0.x, r0.xyzw, t0.xyzw
utof r1.xyzw, vThreadID.xyxx
add r1.xyzw, r1.xyzw, l(0.500000, 0.500000, 0.500000, 0.500000)
mul r0.yz, r1.yywy, cb0[0].wwzw
mad r0.yz, r0.zzyz, l(0.000000, 2.000000, 2.000000, 0.000000), l(0.000000, -1.000000, -1.000000, 0.000000)
mul r0.yz, r0.yyzy, l(0.000000, 1.000000, -1.000000, 0.000000)

mul r12.xyzw, r0.zzzz, cb0[2].xyzw
mad r12.xyzw, cb0[1].xyzw, r0.yyyy, r12.xyzw
mad r10.xyzw, cb0[3].xyzw, r0.xxxx, r12.xyzw
add r10.xyzw, r10.xyzw, cb0[4].xyzw

mad r26.x, r25.y, r10.w, l(-1.0)
mad r0.y, r25.x, r26.x, r0.y

mul r2.xyzw, r0.zzzz, cb0[2].xyzw
mad r2.xyzw, cb0[1].xyzw, r0.yyyy, r2.xyzw
mad r0.xyzw, cb0[3].xyzw, r0.xxxx, r2.xyzw
add r0.xyzw, r0.xyzw, cb0[4].xyzw
div r0.xyz, r0.xyzx, r0.wwww
mul r2.xyz, r0.yyyy, cb0[6].xywx
mad r0.xyw, cb0[5].xyxw, r0.xxxx, r2.xyxz
mad r0.xyz, cb0[7].xywx, r0.zzzz, r0.xywx
add r0.xyz, r0.xyzx, cb0[8].xywx

add r26.x, r0.z, -r27.y
mad r0.x, r27.x, r26.x, r0.x

div r0.xyzw, r0.xyxx, r0.zzzz
mad r0.xyzw, r0.xyzw, l(0.500000, -0.500000, 0.500000, 0.500000), l(0.500000, 0.500000, 0.500000, 0.500000)
mad r0.xyzw, -r1.xyzw, cb0[0].zwzz, r0.xyzw
max r0.xyzw, r0.xyzw, l(-1.000000, -1.000000, -1.000000, -1.000000)
min r0.xyzw, r0.xyzw, l(1.000000, 1.000000, 1.000000, 1.000000)
store_uav_typed u0.xyzw, vThreadID.xyyy, r0.xyzw
ret
// Approximately 24 instruction slots used
