| 1 | |
| 2 | #ifdef CONTAINER_PART |
| 3 | CONTAINER_PART(DXIL) |
| 4 | CONTAINER_PART(SFI0) |
| 5 | CONTAINER_PART(HASH) |
| 6 | CONTAINER_PART(PSV0) |
| 7 | CONTAINER_PART(RTS0) |
| 8 | CONTAINER_PART(ISG1) |
| 9 | CONTAINER_PART(OSG1) |
| 10 | CONTAINER_PART(PSG1) |
| 11 | |
| 12 | #undef CONTAINER_PART |
| 13 | #endif // CONTAINER_PART |
| 14 | |
| 15 | #ifdef SHADER_FEATURE_FLAG |
| 16 | |
| 17 | // SHADER_FEATURE_FLAG(bit offset for the shader info flag, bit offset for DXIL module flag, name, description. |
| 18 | |
| 19 | SHADER_FEATURE_FLAG(0, 2, Doubles, "Double-precision floating point" ) |
| 20 | SHADER_FEATURE_FLAG(1, 17, ComputeShadersPlusRawAndStructuredBuffers, "CS4 raw and structured buffers" ) |
| 21 | SHADER_FEATURE_FLAG(2, 16, UAVsAtEveryStage, "UAVs at every shader stage" ) |
| 22 | SHADER_FEATURE_FLAG(3, 15, Max64UAVs, "64 UAV slots" ) |
| 23 | SHADER_FEATURE_FLAG(4, -1, MinimumPrecision, "Minimum-precision data types" ) |
| 24 | SHADER_FEATURE_FLAG(5, 6, DX11_1_DoubleExtensions, "Double-precision extensions for 11.1" ) |
| 25 | SHADER_FEATURE_FLAG(6, 7, DX11_1_ShaderExtensions, "Shader extensions for 11.1" ) |
| 26 | SHADER_FEATURE_FLAG(7, 14, LEVEL9ComparisonFiltering, "Comparison filtering for feature level 9" ) |
| 27 | SHADER_FEATURE_FLAG(8, 12, TiledResources, "Tiled resources" ) |
| 28 | SHADER_FEATURE_FLAG(9, 11, StencilRef, "PS Output Stencil Ref" ) |
| 29 | SHADER_FEATURE_FLAG(10, 10, InnerCoverage, "PS Inner Coverage" ) |
| 30 | SHADER_FEATURE_FLAG(11, 13, TypedUAVLoadAdditionalFormats, "Typed UAV Load Additional Formats" ) |
| 31 | SHADER_FEATURE_FLAG(12, 18, ROVs, "Raster Ordered UAVs" ) |
| 32 | SHADER_FEATURE_FLAG(13, 9, ViewportAndRTArrayIndexFromAnyShaderFeedingRasterizer, "SV_RenderTargetArrayIndex or SV_ViewportArrayIndex from any shader feeding rasterizer" ) |
| 33 | SHADER_FEATURE_FLAG(14, 19, WaveOps, "Wave level operations" ) |
| 34 | SHADER_FEATURE_FLAG(15, 20, Int64Ops, "64-Bit integer" ) |
| 35 | SHADER_FEATURE_FLAG(16, 21, ViewID, "View Instancing" ) |
| 36 | SHADER_FEATURE_FLAG(17, 22, Barycentrics, "Barycentrics" ) |
| 37 | SHADER_FEATURE_FLAG(18, -1, NativeLowPrecision, "Native low-precision data types" ) |
| 38 | SHADER_FEATURE_FLAG(19, 24, ShadingRate, "Shading Rate" ) |
| 39 | SHADER_FEATURE_FLAG(20, 25, Raytracing_Tier_1_1, "Raytracing tier 1.1 features" ) |
| 40 | SHADER_FEATURE_FLAG(21, 26, SamplerFeedback, "Sampler feedback" ) |
| 41 | SHADER_FEATURE_FLAG(22, 27, AtomicInt64OnTypedResource, "64-bit Atomics on Typed Resources" ) |
| 42 | SHADER_FEATURE_FLAG(23, 28, AtomicInt64OnGroupShared, "64-bit Atomics on Group Shared" ) |
| 43 | SHADER_FEATURE_FLAG(24, 29, DerivativesInMeshAndAmpShaders, "Derivatives in mesh and amplification shaders" ) |
| 44 | SHADER_FEATURE_FLAG(25, 30, ResourceDescriptorHeapIndexing, "Resource descriptor heap indexing" ) |
| 45 | SHADER_FEATURE_FLAG(26, 31, SamplerDescriptorHeapIndexing, "Sampler descriptor heap indexing" ) |
| 46 | SHADER_FEATURE_FLAG(27, 36, RESERVED, "<RESERVED>" ) |
| 47 | SHADER_FEATURE_FLAG(28, 32, AtomicInt64OnHeapResource, "64-bit Atomics on Heap Resources" ) |
| 48 | SHADER_FEATURE_FLAG(29, 34, AdvancedTextureOps, "Advanced Texture Ops" ) |
| 49 | SHADER_FEATURE_FLAG(30, 35, WriteableMSAATextures, "Writeable MSAA Textures" ) |
| 50 | SHADER_FEATURE_FLAG(31, 37, SampleCmpWithGradientOrBias, "SampleCmp with gradient or bias" ) |
| 51 | SHADER_FEATURE_FLAG(32, 38, ExtendedCommandInfo, "Extended command information" ) |
| 52 | |
| 53 | SHADER_FEATURE_FLAG(33, 39, NextUnusedBit, "Next reserved shader flag bit (not a flag)" ) |
| 54 | |
| 55 | #undef SHADER_FEATURE_FLAG |
| 56 | #endif // SHADER_FEATURE_FLAG |
| 57 | |
| 58 | // Below is the definition of root signature enumerations and flags. The |
| 59 | // definitions of all values here correspond to their description in the |
| 60 | // d3d12.h header and are carried over from their values in DXC. For reference: |
| 61 | // https://learn.microsoft.com/en-us/windows/win32/api/d3d12/ |
| 62 | |
| 63 | // ROOT_SIGNATURE_FLAG(flag value, name). |
| 64 | #ifdef ROOT_SIGNATURE_FLAG |
| 65 | |
| 66 | ROOT_SIGNATURE_FLAG(0, None) |
| 67 | ROOT_SIGNATURE_FLAG(0x1, AllowInputAssemblerInputLayout) |
| 68 | ROOT_SIGNATURE_FLAG(0x2, DenyVertexShaderRootAccess) |
| 69 | ROOT_SIGNATURE_FLAG(0x4, DenyHullShaderRootAccess) |
| 70 | ROOT_SIGNATURE_FLAG(0x8, DenyDomainShaderRootAccess) |
| 71 | ROOT_SIGNATURE_FLAG(0x10, DenyGeometryShaderRootAccess) |
| 72 | ROOT_SIGNATURE_FLAG(0x20, DenyPixelShaderRootAccess) |
| 73 | ROOT_SIGNATURE_FLAG(0x40, AllowStreamOutput) |
| 74 | ROOT_SIGNATURE_FLAG(0x80, LocalRootSignature) |
| 75 | ROOT_SIGNATURE_FLAG(0x100, DenyAmplificationShaderRootAccess) |
| 76 | ROOT_SIGNATURE_FLAG(0x200, DenyMeshShaderRootAccess) |
| 77 | ROOT_SIGNATURE_FLAG(0x400, CBVSRVUAVHeapDirectlyIndexed) |
| 78 | ROOT_SIGNATURE_FLAG(0x800, SamplerHeapDirectlyIndexed) |
| 79 | |
| 80 | #undef ROOT_SIGNATURE_FLAG |
| 81 | #endif // ROOT_SIGNATURE_FLAG |
| 82 | |
| 83 | // ROOT_DESCRIPTOR_FLAG(flag value, name, flag). |
| 84 | #ifdef ROOT_DESCRIPTOR_FLAG |
| 85 | |
| 86 | ROOT_DESCRIPTOR_FLAG(0, None, NONE) |
| 87 | ROOT_DESCRIPTOR_FLAG(0x2, DataVolatile, DATA_VOLATILE) |
| 88 | ROOT_DESCRIPTOR_FLAG(0x4, DataStaticWhileSetAtExecute, DATA_STATIC_WHILE_SET_AT_EXECUTE) |
| 89 | ROOT_DESCRIPTOR_FLAG(0x8, DataStatic, DATA_STATIC) |
| 90 | |
| 91 | #undef ROOT_DESCRIPTOR_FLAG |
| 92 | #endif // ROOT_DESCRIPTOR_FLAG |
| 93 | |
| 94 | // DESCRIPTOR_RANGE_FLAG(flag value, name, flag). |
| 95 | #ifdef DESCRIPTOR_RANGE_FLAG |
| 96 | |
| 97 | DESCRIPTOR_RANGE_FLAG(0, None, NONE) |
| 98 | DESCRIPTOR_RANGE_FLAG(0x1, DescriptorsVolatile, DESCRIPTORS_VOLATILE) |
| 99 | DESCRIPTOR_RANGE_FLAG(0x2, DataVolatile, DATA_VOLATILE) |
| 100 | DESCRIPTOR_RANGE_FLAG(0x4, DataStaticWhileSetAtExecute, DATA_STATIC_WHILE_SET_AT_EXECUTE) |
| 101 | DESCRIPTOR_RANGE_FLAG(0x8, DataStatic, DATA_STATIC) |
| 102 | DESCRIPTOR_RANGE_FLAG(0x10000, DescriptorsStaticKeepingBufferBoundsChecks, DESCRIPTORS_STATIC_KEEPING_BUFFER_BOUNDS_CHECKS) |
| 103 | |
| 104 | #undef DESCRIPTOR_RANGE_FLAG |
| 105 | #endif // DESCRIPTOR_RANGE_FLAG |
| 106 | |
| 107 | // STATIC_SAMPLER_FLAG(flag value, name, flag). |
| 108 | #ifdef STATIC_SAMPLER_FLAG |
| 109 | |
| 110 | STATIC_SAMPLER_FLAG(0x0, None, SAMPLER_FLAG_NONE) |
| 111 | STATIC_SAMPLER_FLAG(0x1, UintBorderColor, SAMPLER_FLAG_UINT_BORDER_COLOR) |
| 112 | STATIC_SAMPLER_FLAG(0x2, NonNormalizedCoordinates, SAMPLER_FLAG_NON_NORMALIZED_COORDINATES) |
| 113 | |
| 114 | #undef STATIC_SAMPLER_FLAG |
| 115 | #endif // STATIC_SAMPLER_FLAG |
| 116 | |
| 117 | #ifdef ROOT_PARAMETER |
| 118 | |
| 119 | ROOT_PARAMETER(0, DescriptorTable) |
| 120 | ROOT_PARAMETER(1, Constants32Bit) |
| 121 | ROOT_PARAMETER(2, CBV) |
| 122 | ROOT_PARAMETER(3, SRV) |
| 123 | ROOT_PARAMETER(4, UAV) |
| 124 | #undef ROOT_PARAMETER |
| 125 | #endif // ROOT_PARAMETER |
| 126 | |
| 127 | // SHADER_VISIBILITY(value, enum). |
| 128 | #ifdef SHADER_VISIBILITY |
| 129 | |
| 130 | SHADER_VISIBILITY(0, All) |
| 131 | SHADER_VISIBILITY(1, Vertex) |
| 132 | SHADER_VISIBILITY(2, Hull) |
| 133 | SHADER_VISIBILITY(3, Domain) |
| 134 | SHADER_VISIBILITY(4, Geometry) |
| 135 | SHADER_VISIBILITY(5, Pixel) |
| 136 | SHADER_VISIBILITY(6, Amplification) |
| 137 | SHADER_VISIBILITY(7, Mesh) |
| 138 | |
| 139 | #undef SHADER_VISIBILITY |
| 140 | #endif // SHADER_VISIBILITY |
| 141 | |
| 142 | // FILTER(value, enum). |
| 143 | #ifdef FILTER |
| 144 | |
| 145 | FILTER(0, MinMagMipPoint) |
| 146 | FILTER(0x1, MinMagPointMipLinear) |
| 147 | FILTER(0x4, MinPointMagLinearMipPoint) |
| 148 | FILTER(0x5, MinPointMagMipLinear) |
| 149 | FILTER(0x10, MinLinearMagMipPoint) |
| 150 | FILTER(0x11, MinLinearMagPointMipLinear) |
| 151 | FILTER(0x14, MinMagLinearMipPoint) |
| 152 | FILTER(0x15, MinMagMipLinear) |
| 153 | FILTER(0x55, Anisotropic) |
| 154 | FILTER(0x80, ComparisonMinMagMipPoint) |
| 155 | FILTER(0x81, ComparisonMinMagPointMipLinear) |
| 156 | FILTER(0x84, ComparisonMinPointMagLinearMipPoint) |
| 157 | FILTER(0x85, ComparisonMinPointMagMipLinear) |
| 158 | FILTER(0x90, ComparisonMinLinearMagMipPoint) |
| 159 | FILTER(0x91, ComparisonMinLinearMagPointMipLinear) |
| 160 | FILTER(0x94, ComparisonMinMagLinearMipPoint) |
| 161 | FILTER(0x95, ComparisonMinMagMipLinear) |
| 162 | FILTER(0xd5, ComparisonAnisotropic) |
| 163 | FILTER(0x100, MinimumMinMagMipPoint) |
| 164 | FILTER(0x101, MinimumMinMagPointMipLinear) |
| 165 | FILTER(0x104, MinimumMinPointMagLinearMipPoint) |
| 166 | FILTER(0x105, MinimumMinPointMagMipLinear) |
| 167 | FILTER(0x110, MinimumMinLinearMagMipPoint) |
| 168 | FILTER(0x111, MinimumMinLinearMagPointMipLinear) |
| 169 | FILTER(0x114, MinimumMinMagLinearMipPoint) |
| 170 | FILTER(0x115, MinimumMinMagMipLinear) |
| 171 | FILTER(0x155, MinimumAnisotropic) |
| 172 | FILTER(0x180, MaximumMinMagMipPoint) |
| 173 | FILTER(0x181, MaximumMinMagPointMipLinear) |
| 174 | FILTER(0x184, MaximumMinPointMagLinearMipPoint) |
| 175 | FILTER(0x185, MaximumMinPointMagMipLinear) |
| 176 | FILTER(0x190, MaximumMinLinearMagMipPoint) |
| 177 | FILTER(0x191, MaximumMinLinearMagPointMipLinear) |
| 178 | FILTER(0x194, MaximumMinMagLinearMipPoint) |
| 179 | FILTER(0x195, MaximumMinMagMipLinear) |
| 180 | FILTER(0x1d5, MaximumAnisotropic) |
| 181 | |
| 182 | #undef FILTER |
| 183 | #endif // FILTER |
| 184 | |
| 185 | // TEXTURE_ADDRESS_MODE(value, enum). |
| 186 | #ifdef TEXTURE_ADDRESS_MODE |
| 187 | |
| 188 | TEXTURE_ADDRESS_MODE(1, Wrap) |
| 189 | TEXTURE_ADDRESS_MODE(2, Mirror) |
| 190 | TEXTURE_ADDRESS_MODE(3, Clamp) |
| 191 | TEXTURE_ADDRESS_MODE(4, Border) |
| 192 | TEXTURE_ADDRESS_MODE(5, MirrorOnce) |
| 193 | |
| 194 | #undef TEXTURE_ADDRESS_MODE |
| 195 | #endif // TEXTURE_ADDRESS_MODE |
| 196 | |
| 197 | // COMPARISON_FUNC(value, enum). |
| 198 | #ifdef COMPARISON_FUNC |
| 199 | |
| 200 | COMPARISON_FUNC(1, Never) |
| 201 | COMPARISON_FUNC(2, Less) |
| 202 | COMPARISON_FUNC(3, Equal) |
| 203 | COMPARISON_FUNC(4, LessEqual) |
| 204 | COMPARISON_FUNC(5, Greater) |
| 205 | COMPARISON_FUNC(6, NotEqual) |
| 206 | COMPARISON_FUNC(7, GreaterEqual) |
| 207 | COMPARISON_FUNC(8, Always) |
| 208 | |
| 209 | #undef COMPARISON_FUNC |
| 210 | #endif // COMPARISON_FUNC |
| 211 | |
| 212 | // STATIC_BORDER_COLOR(value, enum). |
| 213 | #ifdef STATIC_BORDER_COLOR |
| 214 | |
| 215 | STATIC_BORDER_COLOR(0, TransparentBlack) |
| 216 | STATIC_BORDER_COLOR(1, OpaqueBlack) |
| 217 | STATIC_BORDER_COLOR(2, OpaqueWhite) |
| 218 | STATIC_BORDER_COLOR(3, OpaqueBlackUint) |
| 219 | STATIC_BORDER_COLOR(4, OpaqueWhiteUint) |
| 220 | |
| 221 | #undef STATIC_BORDER_COLOR |
| 222 | #endif // STATIC_BORDER_COLOR |
| 223 | |
| 224 | #ifdef DXIL_MODULE_FLAG |
| 225 | |
| 226 | // Only save DXIL module flags which not map to feature flags here. |
| 227 | DXIL_MODULE_FLAG( 0, DisableOptimizations, "Disable shader optimizations" ) |
| 228 | DXIL_MODULE_FLAG( 1, DisableMathRefactoring, "Disable math refactoring" ) |
| 229 | DXIL_MODULE_FLAG( 3, ForceEarlyDepthStencil, "Force early depth-stencil test" ) |
| 230 | DXIL_MODULE_FLAG( 4, EnableRawAndStructuredBuffers, "Raw and structured buffers" ) |
| 231 | DXIL_MODULE_FLAG( 5, LowPrecisionPresent, "Low-precision data types present" ) |
| 232 | DXIL_MODULE_FLAG( 8, AllResourcesBound, "All resources bound for the duration of shader execution" ) |
| 233 | DXIL_MODULE_FLAG(23, NativeLowPrecisionMode, "Enable native low-precision data types" ) |
| 234 | DXIL_MODULE_FLAG(33, ResMayNotAlias, "Any UAV may not alias any other UAV" ) |
| 235 | |
| 236 | #undef DXIL_MODULE_FLAG |
| 237 | #endif // DXIL_MODULE_FLAG |
| 238 | |
| 239 | #ifdef SEMANTIC_KIND |
| 240 | |
| 241 | SEMANTIC_KIND(0, Arbitrary) |
| 242 | SEMANTIC_KIND(1, VertexID) |
| 243 | SEMANTIC_KIND(2, InstanceID) |
| 244 | SEMANTIC_KIND(3, Position) |
| 245 | SEMANTIC_KIND(4, RenderTargetArrayIndex) |
| 246 | SEMANTIC_KIND(5, ViewPortArrayIndex) |
| 247 | SEMANTIC_KIND(6, ClipDistance) |
| 248 | SEMANTIC_KIND(7, CullDistance) |
| 249 | SEMANTIC_KIND(8, OutputControlPointID) |
| 250 | SEMANTIC_KIND(9, DomainLocation) |
| 251 | SEMANTIC_KIND(10, PrimitiveID) |
| 252 | SEMANTIC_KIND(11, GSInstanceID) |
| 253 | SEMANTIC_KIND(12, SampleIndex) |
| 254 | SEMANTIC_KIND(13, IsFrontFace) |
| 255 | SEMANTIC_KIND(14, Coverage) |
| 256 | SEMANTIC_KIND(15, InnerCoverage) |
| 257 | SEMANTIC_KIND(16, Target) |
| 258 | SEMANTIC_KIND(17, Depth) |
| 259 | SEMANTIC_KIND(18, DepthLessEqual) |
| 260 | SEMANTIC_KIND(19, DepthGreaterEqual) |
| 261 | SEMANTIC_KIND(20, StencilRef) |
| 262 | SEMANTIC_KIND(21, DispatchThreadID) |
| 263 | SEMANTIC_KIND(22, GroupID) |
| 264 | SEMANTIC_KIND(23, GroupIndex) |
| 265 | SEMANTIC_KIND(24, GroupThreadID) |
| 266 | SEMANTIC_KIND(25, TessFactor) |
| 267 | SEMANTIC_KIND(26, InsideTessFactor) |
| 268 | SEMANTIC_KIND(27, ViewID) |
| 269 | SEMANTIC_KIND(28, Barycentrics) |
| 270 | SEMANTIC_KIND(29, ShadingRate) |
| 271 | SEMANTIC_KIND(30, CullPrimitive) |
| 272 | SEMANTIC_KIND(30, Invalid) |
| 273 | |
| 274 | #undef SEMANTIC_KIND |
| 275 | #endif // SEMANTIC_KIND |
| 276 | |
| 277 | #ifdef COMPONENT_TYPE |
| 278 | |
| 279 | COMPONENT_TYPE(0, Unknown) |
| 280 | COMPONENT_TYPE(1, UInt32) |
| 281 | COMPONENT_TYPE(2, SInt32) |
| 282 | COMPONENT_TYPE(3, Float32) |
| 283 | COMPONENT_TYPE(4, UInt16) |
| 284 | COMPONENT_TYPE(5, SInt16) |
| 285 | COMPONENT_TYPE(6, Float16) |
| 286 | COMPONENT_TYPE(7, UInt64) |
| 287 | COMPONENT_TYPE(8, SInt64) |
| 288 | COMPONENT_TYPE(9, Float64) |
| 289 | |
| 290 | #undef COMPONENT_TYPE |
| 291 | #endif // COMPONENT_TYPE |
| 292 | |
| 293 | #ifdef COMPONENT_PRECISION |
| 294 | |
| 295 | COMPONENT_PRECISION(0, Default) |
| 296 | COMPONENT_PRECISION(1, Float16) |
| 297 | COMPONENT_PRECISION(2, Float2_8) |
| 298 | COMPONENT_PRECISION(3, Reserved) |
| 299 | COMPONENT_PRECISION(4, SInt16) |
| 300 | COMPONENT_PRECISION(5, UInt16) |
| 301 | COMPONENT_PRECISION(0xf0, Any16) |
| 302 | COMPONENT_PRECISION(0xf1, Any10) |
| 303 | |
| 304 | #undef COMPONENT_PRECISION |
| 305 | #endif // COMPONENT_PRECISION |
| 306 | |
| 307 | #ifdef INTERPOLATION_MODE |
| 308 | |
| 309 | INTERPOLATION_MODE(0, Undefined) |
| 310 | INTERPOLATION_MODE(1, Constant) |
| 311 | INTERPOLATION_MODE(2, Linear) |
| 312 | INTERPOLATION_MODE(3, LinearCentroid) |
| 313 | INTERPOLATION_MODE(4, LinearNoperspective) |
| 314 | INTERPOLATION_MODE(5, LinearNoperspectiveCentroid) |
| 315 | INTERPOLATION_MODE(6, LinearSample) |
| 316 | INTERPOLATION_MODE(7, LinearNoperspectiveSample) |
| 317 | INTERPOLATION_MODE(8, Invalid) |
| 318 | |
| 319 | #undef INTERPOLATION_MODE |
| 320 | #endif // INTERPOLATION_MODE |
| 321 | |
| 322 | #ifdef RESOURCE_TYPE |
| 323 | RESOURCE_TYPE(0, Invalid) |
| 324 | RESOURCE_TYPE(1, Sampler) |
| 325 | RESOURCE_TYPE(2, CBV) |
| 326 | RESOURCE_TYPE(3, SRVTyped) |
| 327 | RESOURCE_TYPE(4, SRVRaw) |
| 328 | RESOURCE_TYPE(5, SRVStructured) |
| 329 | RESOURCE_TYPE(6, UAVTyped) |
| 330 | RESOURCE_TYPE(7, UAVRaw) |
| 331 | RESOURCE_TYPE(8, UAVStructured) |
| 332 | RESOURCE_TYPE(9, UAVStructuredWithCounter) |
| 333 | |
| 334 | #undef RESOURCE_TYPE |
| 335 | #endif // RESOURCE_TYPE |
| 336 | |
| 337 | #ifdef RESOURCE_KIND |
| 338 | RESOURCE_KIND(0, Invalid) |
| 339 | RESOURCE_KIND(1, Texture1D) |
| 340 | RESOURCE_KIND(2, Texture2D) |
| 341 | RESOURCE_KIND(3, Texture2DMS) |
| 342 | RESOURCE_KIND(4, Texture3D) |
| 343 | RESOURCE_KIND(5, TextureCube) |
| 344 | RESOURCE_KIND(6, Texture1DArray) |
| 345 | RESOURCE_KIND(7, Texture2DArray) |
| 346 | RESOURCE_KIND(8, Texture2DMSArray) |
| 347 | RESOURCE_KIND(9, TextureCubeArray) |
| 348 | RESOURCE_KIND(10, TypedBuffer) |
| 349 | RESOURCE_KIND(11, RawBuffer) |
| 350 | RESOURCE_KIND(12, StructuredBuffer) |
| 351 | RESOURCE_KIND(13, CBuffer) |
| 352 | RESOURCE_KIND(14, Sampler) |
| 353 | RESOURCE_KIND(15, TBuffer) |
| 354 | RESOURCE_KIND(16, RTAccelerationStructure) |
| 355 | RESOURCE_KIND(17, FeedbackTexture2D) |
| 356 | RESOURCE_KIND(18, FeedbackTexture2DArray) |
| 357 | |
| 358 | #undef RESOURCE_KIND |
| 359 | #endif // RESOURCE_KIND |
| 360 | |
| 361 | #ifdef RESOURCE_FLAG |
| 362 | RESOURCE_FLAG(0, UsedByAtomic64) |
| 363 | |
| 364 | #undef RESOURCE_FLAG |
| 365 | #endif // RESOURCE_FLAG |
| 366 | |
| 367 | #ifdef D3D_SYSTEM_VALUE |
| 368 | |
| 369 | D3D_SYSTEM_VALUE(0, Undefined) |
| 370 | D3D_SYSTEM_VALUE(1, Position) |
| 371 | D3D_SYSTEM_VALUE(2, ClipDistance) |
| 372 | D3D_SYSTEM_VALUE(3, CullDistance) |
| 373 | D3D_SYSTEM_VALUE(4, RenderTargetArrayIndex) |
| 374 | D3D_SYSTEM_VALUE(5, ViewPortArrayIndex) |
| 375 | D3D_SYSTEM_VALUE(6, VertexID) |
| 376 | D3D_SYSTEM_VALUE(7, PrimitiveID) |
| 377 | D3D_SYSTEM_VALUE(8, InstanceID) |
| 378 | D3D_SYSTEM_VALUE(9, IsFrontFace) |
| 379 | D3D_SYSTEM_VALUE(10, SampleIndex) |
| 380 | D3D_SYSTEM_VALUE(11, FinalQuadEdgeTessfactor) |
| 381 | D3D_SYSTEM_VALUE(12, FinalQuadInsideTessfactor) |
| 382 | D3D_SYSTEM_VALUE(13, FinalTriEdgeTessfactor) |
| 383 | D3D_SYSTEM_VALUE(14, FinalTriInsideTessfactor) |
| 384 | D3D_SYSTEM_VALUE(15, FinalLineDetailTessfactor) |
| 385 | D3D_SYSTEM_VALUE(16, FinalLineDensityTessfactor) |
| 386 | D3D_SYSTEM_VALUE(23, Barycentrics) |
| 387 | D3D_SYSTEM_VALUE(24, ShadingRate) |
| 388 | D3D_SYSTEM_VALUE(25, CullPrimitive) |
| 389 | D3D_SYSTEM_VALUE(64, Target) |
| 390 | D3D_SYSTEM_VALUE(65, Depth) |
| 391 | D3D_SYSTEM_VALUE(66, Coverage) |
| 392 | D3D_SYSTEM_VALUE(67, DepthGE) |
| 393 | D3D_SYSTEM_VALUE(68, DepthLE) |
| 394 | D3D_SYSTEM_VALUE(69, StencilRef) |
| 395 | D3D_SYSTEM_VALUE(70, InnerCoverage) |
| 396 | |
| 397 | #undef D3D_SYSTEM_VALUE |
| 398 | |
| 399 | #endif // D3D_SYSTEM_VALUE |
| 400 | |