Core enumerations

The following enumerations are declared in d3d12.h.

In this section

Topic and description
D3D_ROOT_SIGNATURE_VERSION. Specifies the version of root signature layout.
D3D_SHADER_MODEL. Specifies a shader model.
D3D12_AUTO_BREADCRUMB_OP. Defines constants that specify render/compute GPU operations.
D3D12_BACKGROUND_PROCESSING_MODE. Defines constants that specify a level of dynamic optimization to apply to GPU work that's subsequently submitted.
D3D12_BLEND. Specifies blend factors, which modulate values for the pixel shader and render target.
D3D12_BLEND_OP. Specifies RGB or alpha blending operations.
D3D12_BUFFER_SRV_FLAGS. Identifies how to view a buffer resource.
D3D12_BUFFER_UAV_FLAGS. Identifies unordered-access view options for a buffer resource.
D3D12_CLEAR_FLAGS. Specifies what to clear from the depth stencil view.
D3D12_COLOR_WRITE_ENABLE. Identifies which components of each pixel of a render target are writable during blending.
D3D12_COMMAND_LIST_SUPPORT_FLAGS. Used to determine which kinds of command lists are capable of supporting various operations.
D3D12_COMMAND_LIST_TYPE. Specifies the type of a command list.
D3D12_COMMAND_QUEUE_FLAGS. Specifies flags to be used when creating a command queue.
D3D12_COMMAND_QUEUE_PRIORITY. Defines priority levels for a command queue.
D3D12_COMPARISON_FUNC. Specifies comparison options.
D3D12_CONSERVATIVE_RASTERIZATION_MODE. Identifies whether conservative rasterization is on or off.
D3D12_CONSERVATIVE_RASTERIZATION_TIER. Identifies the tier level of conservative rasterization.
D3D12_CPU_PAGE_PROPERTY. Specifies the CPU-page properties for the heap.
D3D12_CROSS_NODE_SHARING_TIER. Specifies the level of sharing across nodes of an adapter, such as Tier 1 Emulated, Tier 1, or Tier 2.
D3D12_CULL_MODE. Specifies triangles facing a particular direction are not drawn.
D3D12_DEBUG_DEVICE_PARAMETER_TYPE. Specifies the data type of the memory pointed to by the pData parameter of ID3D12DebugDevice1::SetDebugParameter and ID3D12DebugDevice1::GetDebugParameter.
D3D12_DEPTH_WRITE_MASK. Identifies the portion of a depth-stencil buffer for writing depth data.
D3D12_DESCRIPTOR_HEAP_FLAGS. Specifies options for a heap.
D3D12_DESCRIPTOR_HEAP_TYPE. Specifies a type of descriptor heap.
D3D12_DESCRIPTOR_RANGE_FLAGS. Specifies the volatility of both descriptors and the data they reference in a Root Signature 1.1 description, which can enable some driver optimizations.
D3D12_DESCRIPTOR_RANGE_TYPE. Specifies a range so that, for example, if part of a descriptor table has 100 shader resource views (SRVs) that range can be declared in one entry rather than 100.
D3D12_DRED_ALLOCATION_TYPE. Defines constants that specify render/compute GPU operations.
D3D12_DRED_ENABLEMENT. Defines constants (used by the ID3D12DeviceRemovedExtendedDataSettings interface) that specify how individual Device Removed Extended Data (DRED) features are enabled.
D3D12_DRED_FLAGS. Defines constants used in the D3D12_DEVICE_REMOVED_EXTENDED_DATA structure to specify control flags for the Direct3D runtime.
D3D12_DRED_VERSION. Defines constants that specify a version of Device Removed Extended Data (DRED), as used by the D3D12_VERSIONED_DEVICE_REMOVED_EXTENDED_DATA structure.
D3D12_DSV_DIMENSION. Specifies how to access a resource used in a depth-stencil view.
D3D12_DSV_FLAGS. Specifies depth-stencil view options.
D3D12_FEATURE. Direct3D 12 feature options that are supported by the current graphics driver.
D3D12_FENCE_FLAGS. Specifies fence options.
D3D12_FILL_MODE. Specifies the fill mode to use when rendering triangles.
D3D12_FILTER. Specifies filtering options during texture sampling.
D3D12_FILTER_REDUCTION_TYPE. Specifies the type of filter reduction.
D3D12_FILTER_TYPE. Specifies the type of magnification or minification sampler filters.
D3D12_FORMAT_SUPPORT1. Specifies resources that are supported for a provided format.
D3D12_FORMAT_SUPPORT2. Specifies which unordered resource options are supported for a provided format.
D3D12_GRAPHICS_STATES. Defines flags that specify states related to a graphics command list. Values can be bitwise OR'd together.
D3D12_HEAP_FLAGS. Specifies heap options, such as whether the heap can contain textures, and whether resources are shared across adapters.
D3D12_HEAP_SERIALIZATION_TIER. Defines constants that specify heap serialization support.
D3D12_HEAP_TYPE. Specifies the type of heap. When resident, heaps reside in a particular physical memory pool with certain CPU cache properties.
D3D12_INDEX_BUFFER_STRIP_CUT_VALUE. When using triangle strip primitive topology, vertex positions are interpreted as vertices of a continuous triangle strip . There is a special index value that represents the desire to have a discontinuity in the strip, the cut index value. This enum lists the supported cut values.
D3D12_INDIRECT_ARGUMENT_TYPE. Specifies the type of the indirect parameter.
D3D12_INPUT_CLASSIFICATION. Identifies the type of data contained in an input slot.
D3D12_LIFETIME_STATE. Defines constants that specify the lifetime state of a lifetime-tracked object.
D3D12_LOGIC_OP. Specifies logical operations to configure for a render target.
D3D12_MEASUREMENTS_ACTION. Defines constants that specify what should be done with the results of earlier workload instrumentation.
D3D12_MEMORY_POOL. Specifies the memory pool for the heap.
D3D12_MESH_SHADER_TIER. Defines constants that specify mesh and amplification shader support.
D3D12_META_COMMAND_PARAMETER_FLAGS. Defines constants that specify the flags for a parameter to a meta command. Values can be bitwise OR'd together.
D3D12_META_COMMAND_PARAMETER_STAGE. Defines constants that specify the stage of a parameter to a meta command.
D3D12_META_COMMAND_PARAMETER_TYPE. Defines constants that specify the data type of a parameter to a meta command.
D3D12_MULTIPLE_FENCE_WAIT_FLAGS. Specifies multiple wait flags for multiple fences.
D3D12_MULTISAMPLE_QUALITY_LEVELS_FLAG. Specifies options for determining quality levels.
D3D12_PIPELINE_STATE_FLAGS. Flags to control pipeline state.
D3D12_PIPELINE_STATE_SUBOBJECT_TYPE. Specifies the type of a sub-object in a pipeline state stream description.
D3D12_PREDICATION_OP. Specifies the predication operation to apply.
D3D12_PRIMITIVE_TOPOLOGY_TYPE. Specifies how the pipeline interprets geometry or hull shader input primitives.
D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER. Specifies the level of support for programmable sample positions that's offered by the adapter.
D3D12_PROTECTED_RESOURCE_SESSION_FLAGS. Defines constants that specify protected resource session flags.
D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS. Defines constants that specify protected resource session support.
D3D12_PROTECTED_SESSION_STATUS. Defines constants that specify protected session status.
D3D12_QUERY_HEAP_TYPE. Specifies the type of query heap to create.
D3D12_QUERY_TYPE. Specifies the type of query.
D3D12_RAY_FLAGS. Flags passed to the TraceRay function to override transparency, culling, and early-out behavior.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_BUILD_FLAGS. Specifies flags for the build of a raytracing acceleration structure. Use a value from this enumeration with the D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS structure that provides input to the acceleration structure build operation.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_COPY_MODE. Specifies the type of copy operation performed when calling CopyRaytracingAccelerationStructure.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TYPE. Specifies the type of acceleration structure post-build info that can be retrieved with calls to EmitRaytracingAccelerationStructurePostbuildInfo and BuildRaytracingAccelerationStructure.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_TYPE. Specifies the type of a raytracing acceleration structure.
D3D12_RAYTRACING_GEOMETRY_FLAGS. Specifies flags for raytracing geometry in a D3D12_RAYTRACING_GEOMETRY_DESC structure.
D3D12_RAYTRACING_GEOMETRY_TYPE. Specifies the type of geometry used for raytracing. Use a value from this enumeration to specify the geometry type in a D3D12_RAYTRACING_GEOMETRY_DESC.
D3D12_RAYTRACING_INSTANCE_FLAGS. Flags for a raytracing acceleration structure instance. These flags can be used to override D3D12_RAYTRACING_GEOMETRY_FLAGS for individual instances.
D3D12_RAYTRACING_PIPELINE_FLAGS. Defines constants that specify configuration flags for a raytracing pipeline.
D3D12_RAYTRACING_TIER. Specifies the level of ray tracing support on the graphics device.
D3D12_RENDER_PASS_BEGINNING_ACCESS_TYPE. Specifies the type of access that an application is given to the specified resource(s) at the transition into a render pass.
D3D12_RENDER_PASS_ENDING_ACCESS_TYPE. Specifies the type of access that an application is given to the specified resource(s) at the transition out of a render pass.
D3D12_RENDER_PASS_FLAGS. Specifies the nature of the render pass; for example, whether it is a suspending or a resuming render pass.
D3D12_RESIDENCY_FLAGS. Used with the EnqueueMakeResident function to choose how residency operations proceed when the memory budget is exceeded.
D3D12_RESIDENCY_PRIORITY. Specifies broad residency priority buckets useful for quickly establishing an application priority scheme.
D3D12_RESOLVE_MODE. Specifies a resolve operation.
D3D12_RESOURCE_BARRIER_FLAGS. Flags for setting split resource barriers.
D3D12_RESOURCE_BARRIER_TYPE. Specifies a type of resource barrier (transition in resource use) description.
D3D12_RESOURCE_BINDING_TIER. Identifies the tier of resource binding being used.
D3D12_RESOURCE_DIMENSION. Identifies the type of resource being used.
D3D12_RESOURCE_FLAGS. Specifies options for working with resources.
D3D12_RESOURCE_HEAP_TIER. Specifies which resource heap tier the hardware and driver support.
D3D12_RESOURCE_STATES. Specifies the state of a resource regarding how the resource is being used.
D3D12_ROOT_DESCRIPTOR_FLAGS. Specifies the volatility of the data referenced by descriptors in a Root Signature 1.1 description, which can enable some driver optimizations.
D3D12_ROOT_PARAMETER_TYPE. Specifies the type of root signature slot.
D3D12_ROOT_SIGNATURE_FLAGS. Specifies options for root signature layout.
D3D12_RTV_DIMENSION. Identifies the type of resource to view as a render target.
D3D12_SAMPLER_FEEDBACK_TIER. Defines constants that specify sampler feedback support.
D3D12_SHADER_CACHE_CONTROL_FLAGS. Defines constants that specify shader cache control options.
D3D12_SHADER_CACHE_FLAGS. Defines constants that specify shader cache flags.
D3D12_SHADER_CACHE_KIND_FLAGS. Defines constants that specify a kind of shader cache.
D3D12_SHADER_CACHE_MODE. Defines constants that specify a shader cache's mode.
D3D12_SHADER_CACHE_SUPPORT_FLAGS. Describes the level of support for shader caching in the current graphics driver.
D3D12_SHADER_COMPONENT_MAPPING. Specifies how memory gets routed by a shader resource view (SRV).
D3D12_SHADER_MIN_PRECISION_SUPPORT. Describes minimum precision support options for shaders in the current graphics driver.
D3D12_SHADER_VISIBILITY. Specifies the shaders that can access the contents of a given root signature slot.
D3D12_SHARED_RESOURCE_COMPATIBILITY_TIER. Defines constants that specify a cross-API sharing support tier.
D3D12_SRV_DIMENSION. Identifies the type of resource that will be viewed as a shader resource.
D3D12_STATIC_BORDER_COLOR. Specifies the border color for a static sampler.
D3D12_STENCIL_OP. Identifies the stencil operations that can be performed during depth-stencil testing.
D3D12_TEXTURE_ADDRESS_MODE. Identifies a technique for resolving texture coordinates that are outside of the boundaries of a texture.
D3D12_TEXTURE_COPY_TYPE. Specifies what type of texture copy is to take place.
D3D12_TEXTURE_LAYOUT. Specifies texture layout options.
D3D12_TILE_COPY_FLAGS. Specifies how to copy a tile.
D3D12_TILE_MAPPING_FLAGS. Specifies how to perform a tile-mapping operation.
D3D12_TILE_RANGE_FLAGS. Specifies a range of tile mappings.
D3D12_TILED_RESOURCES_TIER. Identifies the tier level at which tiled resources are supported.
D3D12_UAV_DIMENSION. Identifies unordered access view options.
D3D12_VIEW_INSTANCING_FLAGS. Specifies options for view instancing.
D3D12_VIEW_INSTANCING_TIER. Indicates the tier level at which view instancing is supported.
D3D12_WAVE_MMA_TIER. Defines constants that specify a level of support for WaveMMA (wave_matrix) operations.
D3D12_WRITEBUFFERIMMEDIATE_MODE. Specifies the mode used by a WriteBufferImmediate operation.