19#ifndef __VKD3D_SHADERS_H
20#define __VKD3D_SHADERS_H
23 "RWBuffer<float4> dst;\n"
27 " float4 clear_value;\n"
32 "[numthreads(128, 1, 1)]\n"
33 "void main(int3 thread_id : SV_DispatchThreadID)\n"
35 " if (thread_id.x < u_info.dst_extent.x)\n"
36 " dst[u_info.dst_offset.x + thread_id.x] = u_info.clear_value;\n"
40 "RWBuffer<uint4> dst;\n"
44 " uint4 clear_value;\n"
49 "[numthreads(128, 1, 1)]\n"
50 "void main(int3 thread_id : SV_DispatchThreadID)\n"
52 " if (thread_id.x < u_info.dst_extent.x)\n"
53 " dst[u_info.dst_offset.x + thread_id.x] = u_info.clear_value;\n"
57 "RWTexture1DArray<float4> dst;\n"
61 " float4 clear_value;\n"
66 "[numthreads(64, 1, 1)]\n"
67 "void main(int3 thread_id : SV_DispatchThreadID)\n"
69 " if (thread_id.x < u_info.dst_extent.x)\n"
70 " dst[int2(u_info.dst_offset.x + thread_id.x, thread_id.y)] = u_info.clear_value;\n"
74 "RWTexture1DArray<uint4> dst;\n"
78 " uint4 clear_value;\n"
83 "[numthreads(64, 1, 1)]\n"
84 "void main(int3 thread_id : SV_DispatchThreadID)\n"
86 " if (thread_id.x < u_info.dst_extent.x)\n"
87 " dst[int2(u_info.dst_offset.x + thread_id.x, thread_id.y)] = u_info.clear_value;\n"
91 "RWTexture1D<float4> dst;\n"
95 " float4 clear_value;\n"
100 "[numthreads(64, 1, 1)]\n"
101 "void main(int3 thread_id : SV_DispatchThreadID)\n"
103 " if (thread_id.x < u_info.dst_extent.x)\n"
104 " dst[u_info.dst_offset.x + thread_id.x] = u_info.clear_value;\n"
108 "RWTexture1D<uint4> dst;\n"
112 " uint4 clear_value;\n"
113 " int2 dst_offset;\n"
114 " int2 dst_extent;\n"
117 "[numthreads(64, 1, 1)]\n"
118 "void main(int3 thread_id : SV_DispatchThreadID)\n"
120 " if (thread_id.x < u_info.dst_extent.x)\n"
121 " dst[u_info.dst_offset.x + thread_id.x] = u_info.clear_value;\n"
125 "RWTexture2DArray<float4> dst;\n"
129 " float4 clear_value;\n"
130 " int2 dst_offset;\n"
131 " int2 dst_extent;\n"
134 "[numthreads(8, 8, 1)]\n"
135 "void main(int3 thread_id : SV_DispatchThreadID)\n"
137 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
138 " dst[int3(u_info.dst_offset.xy + thread_id.xy, thread_id.z)] = u_info.clear_value;\n"
142 "RWTexture2DArray<uint4> dst;\n"
146 " uint4 clear_value;\n"
147 " int2 dst_offset;\n"
148 " int2 dst_extent;\n"
151 "[numthreads(8, 8, 1)]\n"
152 "void main(int3 thread_id : SV_DispatchThreadID)\n"
154 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
155 " dst[int3(u_info.dst_offset.xy + thread_id.xy, thread_id.z)] = u_info.clear_value;\n"
159 "RWTexture2D<float4> dst;\n"
163 " float4 clear_value;\n"
164 " int2 dst_offset;\n"
165 " int2 dst_extent;\n"
168 "[numthreads(8, 8, 1)]\n"
169 "void main(int3 thread_id : SV_DispatchThreadID)\n"
171 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
172 " dst[u_info.dst_offset.xy + thread_id.xy] = u_info.clear_value;\n"
176 "RWTexture2D<uint4> dst;\n"
180 " uint4 clear_value;\n"
181 " int2 dst_offset;\n"
182 " int2 dst_extent;\n"
185 "[numthreads(8, 8, 1)]\n"
186 "void main(int3 thread_id : SV_DispatchThreadID)\n"
188 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
189 " dst[u_info.dst_offset.xy + thread_id.xy] = u_info.clear_value;\n"
193 "RWTexture3D<float4> dst;\n"
197 " float4 clear_value;\n"
198 " int2 dst_offset;\n"
199 " int2 dst_extent;\n"
202 "[numthreads(8, 8, 1)]\n"
203 "void main(int3 thread_id : SV_DispatchThreadID)\n"
205 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
206 " dst[int3(u_info.dst_offset.xy, 0) + thread_id.xyz] = u_info.clear_value;\n"
210 "RWTexture3D<uint4> dst;\n"
214 " uint4 clear_value;\n"
215 " int2 dst_offset;\n"
216 " int2 dst_extent;\n"
219 "[numthreads(8, 8, 1)]\n"
220 "void main(int3 thread_id : SV_DispatchThreadID)\n"
222 " if (all(thread_id.xy < u_info.dst_extent.xy))\n"
223 " dst[int3(u_info.dst_offset.xy, 0) + thread_id.xyz] = u_info.clear_value;\n"
static const char cs_uav_clear_3d_uint_code[]
static const char cs_uav_clear_1d_array_float_code[]
static const char cs_uav_clear_2d_array_uint_code[]
static const char cs_uav_clear_1d_array_uint_code[]
static const char cs_uav_clear_1d_float_code[]
static const char cs_uav_clear_buffer_float_code[]
static const char cs_uav_clear_2d_uint_code[]
static const char cs_uav_clear_3d_float_code[]
static const char cs_uav_clear_buffer_uint_code[]
static const char cs_uav_clear_1d_uint_code[]
static const char cs_uav_clear_2d_array_float_code[]
static const char cs_uav_clear_2d_float_code[]