d3d12.h header

This header is used by Direct3D 12 Graphics. For more information, see:

Interfaces

Title Description
ID3D12CommandAllocator Represents the allocations of storage for graphics processing unit (GPU) commands.
ID3D12CommandList An interface from which ID3D12GraphicsCommandList inherits from. It represents an ordered set of commands that the GPU executes, while allowing for extension to support other command lists than just those for graphics (such as compute and copy).
ID3D12CommandQueue Provides methods for submitting command lists, synchronizing command list execution, instrumenting the command queue, and updating resource tile mappings.
ID3D12CommandSignature A command signature object enables apps to specify indirect drawing, including the buffer format, command type and resource bindings to be used.
ID3D12DescriptorHeap A descriptor heap is a collection of contiguous allocations of descriptors, one allocation for every descriptor.
ID3D12Device Represents a virtual adapter; it is used to create command allocators, command lists, command queues, fences, resources, pipeline state objects, heaps, root signatures, samplers, and many resource views.
ID3D12Device1 Represents a virtual adapter, and expands on the range of methods provided by ID3D12Device.
ID3D12Device2 Represents a virtual adapter. This interface extends ID3D12Device1 to create pipeline state objects from pipeline state stream descriptions.
ID3D12Device3 Represents a virtual adapter. This interface extends ID3D12Device2 to support the creation of special-purpose diagnostic heaps in system memory that persist even in the event of a GPU-fault or device-removed scenario.
ID3D12Device5 Represents a virtual adapter. This interface extends ID3D12Device4.
ID3D12DeviceChild An interface from which other core interfaces inherit from, including (but not limited to) ID3D12PipelineLibrary, ID3D12CommandList, ID3D12Pageable, and ID3D12RootSignature. It provides a method to get back to the device object it was created against.
ID3D12Fence Represents a fence, an object used for synchronization of the CPU and one or more GPUs.
ID3D12Fence1 Represents a fence. This interface extends ID3D12Fence, and supports the retrieval of the flags used to create the original fence.
ID3D12GraphicsCommandList Encapsulates a list of graphics commands for rendering. Includes APIs for instrumenting the command list execution, and for setting and clearing the pipeline state.
ID3D12GraphicsCommandList1 Encapsulates a list of graphics commands for rendering, extending the interface to support programmable sample positions, atomic copies for implementing late-latch techniques, and optional depth-bounds testing.
ID3D12GraphicsCommandList2 Encapsulates a list of graphics commands for rendering, extending the interface to support writing immediate values directly to a buffer.
ID3D12GraphicsCommandList3 Encapsulates a list of graphics commands for rendering.
ID3D12GraphicsCommandList4 Encapsulates a list of graphics commands for rendering, extending the interface to support ray tracing and render passes.
ID3D12Heap A heap is an abstraction of contiguous memory allocation, used to manage physical memory. This heap can be used with ID3D12Resource objects to support placed resources or reserved resources.
ID3D12MetaCommand Represents a meta command. A meta command is a Direct3D 12 object representing an algorithm that is accelerated by independent hardware vendors (IHVs). It's an opaque reference to a command generator that is implemented by the driver.
ID3D12Object An interface from which ID3D12Device and ID3D12DeviceChild inherit from. It provides methods to associate private data and annotate object names.
ID3D12Pageable An interface from which many other core interfaces inherit from. It indicates that the object type encapsulates some amount of GPU-accessible memory; but does not strongly indicate whether the application can manipulate the object's residency.
ID3D12PipelineLibrary Manages a pipeline library, in particular loading and retrieving individual PSOs.
ID3D12PipelineLibrary1 Manages a pipeline library. This interface extends ID3D12PipelineLibrary to load PSOs from a pipeline state stream description.
ID3D12PipelineState Represents the state of all currently set shaders as well as certain fixed function state objects.
ID3D12ProtectedResourceSession Monitors the validity of a protected resource session.
ID3D12ProtectedSession Offers base functionality that allows for a consistent way to monitor the validity of a session across the different types of sessions.
ID3D12QueryHeap Manages a query heap. A query heap holds an array of queries, referenced by indexes.
ID3D12Resource Encapsulates a generalized ability of the CPU and GPU to read and write to physical memory, or heaps. It contains abstractions for organizing and manipulating simple arrays of data as well as multidimensional data optimized for shader sampling.
ID3D12RootSignature The root signature defines what resources are bound to the graphics pipeline. A root signature is configured by the app and links command lists to the resources the shaders require. Currently, there is one graphics and one compute root signature per app.
ID3D12RootSignatureDeserializer Contains a method to return the deserialized D3D12_ROOT_SIGNATURE_DESC data structure, of a serialized root signature version 1.0.
ID3D12StateObject Represents a variable amount of configuration state, including shaders, that an application manages as a single unit and which is given to a driver atomically to process, such as compile or optimize.
ID3D12StateObjectProperties Provides methods for getting and setting the properties of an ID3D12StateObject.
ID3D12Tools This interface is used to configure the runtime for tools such as PIX. Its not intended or supported for any other scenario.
ID3D12VersionedRootSignatureDeserializer Contains methods to return the deserialized D3D12_ROOT_SIGNATURE_DESC1 data structure, of any version of a serialized root signature.

Functions

Title Description
D3D12CreateDevice Creates a device that represents the display adapter.
D3D12CreateRootSignatureDeserializer Deserializes a root signature so you can determine the layout definition (D3D12_ROOT_SIGNATURE_DESC).
D3D12CreateVersionedRootSignatureDeserializer Generates an interface that can return the deserialized data structure, via GetUnconvertedRootSignatureDesc.
D3D12EnableExperimentalFeatures Enables a list of experimental features.
D3D12GetDebugInterface Gets a debug interface.
D3D12SerializeRootSignature Serializes a root signature version 1.0 that can be passed to ID3D12Device::CreateRootSignature.
D3D12SerializeVersionedRootSignature Serializes a root signature of any version that can be passed to ID3D12Device::CreateRootSignature.

Structures

Title Description
D3D12_BLEND_DESC Describes the blend state.
D3D12_BOX Describes a 3D box.
D3D12_BUFFER_RTV Describes the elements in a buffer resource to use in a render-target view.
D3D12_BUFFER_SRV Describes the elements in a buffer resource to use in a shader-resource view.
D3D12_BUFFER_UAV Describes the elements in a buffer to use in a unordered-access view.
D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_DESC Describes a raytracing acceleration structure. Pass this structure into ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure to describe the acceleration structure to be built.
D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS Defines the inputs for a raytracing acceleration structure build operation. This structure is used by ID3D12GraphicsCommandList4::BuildRaytracingAccelerationStructure and ID3D12Device5::GetRaytracingAccelerationStructurePrebuildInfo.
D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_TOOLS_VISUALIZATION_HEADER Describes the GPU memory layout of an acceleration structure visualization.
D3D12_CACHED_PIPELINE_STATE Stores a pipeline state.
D3D12_CLEAR_VALUE Describes a value used to optimize clear operations for a particular resource.
D3D12_COMMAND_QUEUE_DESC Describes a command queue.
D3D12_COMMAND_SIGNATURE_DESC Describes the arguments (parameters) of a command signature.
D3D12_COMPUTE_PIPELINE_STATE_DESC Describes a compute pipeline state object.
D3D12_CONSTANT_BUFFER_VIEW_DESC Describes a constant buffer to view.
D3D12_CPU_DESCRIPTOR_HANDLE Describes a CPU descriptor handle.
D3D12_DEPTH_STENCIL_DESC Describes depth-stencil state.
D3D12_DEPTH_STENCIL_DESC1 Describes depth-stencil state.
D3D12_DEPTH_STENCIL_VALUE Specifies a depth and stencil value.
D3D12_DEPTH_STENCIL_VIEW_DESC Describes the subresources of a texture that are accessible from a depth-stencil view.
D3D12_DEPTH_STENCILOP_DESC Describes stencil operations that can be performed based on the results of stencil test.
D3D12_DESCRIPTOR_HEAP_DESC Describes the descriptor heap.
D3D12_DESCRIPTOR_RANGE Describes a descriptor range.
D3D12_DESCRIPTOR_RANGE1 Describes a descriptor range, with flags to determine their volatility.
D3D12_DISCARD_REGION Describes details for the discard-resource operation.
D3D12_DISPATCH_ARGUMENTS Describes dispatch parameters, for use by the compute shader.
D3D12_DISPATCH_RAYS_DESC Describes the properties of a ray dispatch operation initiated with a call to ID3D12GraphicsCommandList4::DispatchRays.
D3D12_DRAW_ARGUMENTS Describes parameters for drawing instances.
D3D12_DRAW_INDEXED_ARGUMENTS Describes parameters for drawing indexed instances.
D3D12_DXIL_LIBRARY_DESC Describes a DXIL library state subobject that can be included in a state object.
D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION This subobject is unsupported in the current release.
D3D12_EXISTING_COLLECTION_DESC A state subobject describing an existing collection that can be included in a state object.
D3D12_EXPORT_DESC Describes an export from a state subobject such as a DXIL library or a collection state object.
D3D12_FEATURE_DATA_ARCHITECTURE Provides detail about the adapter architecture, so that your application can better optimize for certain adapter properties.
D3D12_FEATURE_DATA_ARCHITECTURE1 Provides detail about each adapter's architectural details, so that your application can better optimize for certain adapter properties.
D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY Details the adapter's support for prioritization of different command queue types.
D3D12_FEATURE_DATA_D3D12_OPTIONS Describes Direct3D 12 feature options in the current graphics driver.
D3D12_FEATURE_DATA_D3D12_OPTIONS1 Describes the level of support for HLSL 6.0 wave operations.
D3D12_FEATURE_DATA_D3D12_OPTIONS2 Indicates the level of support that the adapter provides for depth-bounds tests and programmable sample positions.
D3D12_FEATURE_DATA_D3D12_OPTIONS3 Indicates the level of support that the adapter provides for timestamp queries, format-casting, immediate write, view instancing, and barycentrics.
D3D12_FEATURE_DATA_D3D12_OPTIONS5 Indicates the level of support that the adapter provides for render passes, ray tracing, and shader-resource view tier 3 tiled resources.
D3D12_FEATURE_DATA_EXISTING_HEAPS Provides detail about whether the adapter supports creating heaps from existing system memory.
D3D12_FEATURE_DATA_FEATURE_LEVELS Describes info about the feature levels supported by the current graphics driver.
D3D12_FEATURE_DATA_FORMAT_INFO Describes a DXGI data format and plane count.
D3D12_FEATURE_DATA_FORMAT_SUPPORT Describes which resources are supported by the current graphics driver for a given format.
D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT Details the adapter's GPU virtual address space limitations, including maximum address bits per resource and per process.
D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS Describes the multi-sampling image quality levels for a given format and sample count.
D3D12_FEATURE_DATA_ROOT_SIGNATURE Indicates root signature version support.
D3D12_FEATURE_DATA_SHADER_CACHE Describes the level of shader caching supported in the current graphics driver.
D3D12_FEATURE_DATA_SHADER_MODEL Contains the supported shader model.
D3D12_GLOBAL_ROOT_SIGNATURE Defines a global root signature state suboject that will be used with associated shaders.
D3D12_GPU_DESCRIPTOR_HANDLE Describes a GPU descriptor handle.
D3D12_GPU_VIRTUAL_ADDRESS_AND_STRIDE Represents a GPU virtual address and indexing stride.
D3D12_GPU_VIRTUAL_ADDRESS_RANGE Represents a GPU virtual address range.
D3D12_GPU_VIRTUAL_ADDRESS_RANGE_AND_STRIDE Represents a GPU virtual address range and stride.
D3D12_GRAPHICS_PIPELINE_STATE_DESC Describes a graphics pipeline state object.
D3D12_HEAP_DESC Describes a heap.
D3D12_HEAP_PROPERTIES Describes heap properties.
D3D12_HIT_GROUP_DESC Describes a raytracing hit group state subobject that can be included in a state object.
D3D12_INDEX_BUFFER_VIEW Describes the index buffer to view.
D3D12_INDIRECT_ARGUMENT_DESC Describes an indirect argument (an indirect parameter), for use with a command signature.
D3D12_INPUT_ELEMENT_DESC Describes a single element for the input-assembler stage of the graphics pipeline.
D3D12_INPUT_LAYOUT_DESC Describes the input-buffer data for the input-assembler stage.
D3D12_LOCAL_ROOT_SIGNATURE Defines a local root signature state subobject that will be used with associated shaders.
D3D12_MEMCPY_DEST Describes the destination of a memory copy operation.
D3D12_META_COMMAND_DESC Describes a meta command.
D3D12_META_COMMAND_PARAMETER_DESC Describes a parameter to a meta command.
D3D12_NODE_MASK A state subobject that identifies the GPU nodes to which the state object applies.
D3D12_PACKED_MIP_INFO Describes the tile structure of a tiled resource with mipmaps.
D3D12_PIPELINE_STATE_STREAM_DESC Describes a pipeline state stream.
D3D12_PLACED_SUBRESOURCE_FOOTPRINT Describes the footprint of a placed subresource, including the offset and the D3D12_SUBRESOURCE_FOOTPRINT.
D3D12_QUERY_DATA_PIPELINE_STATISTICS Query information about graphics-pipeline activity in between calls to BeginQuery and EndQuery.
D3D12_QUERY_DATA_SO_STATISTICS Describes query data for stream output.
D3D12_QUERY_HEAP_DESC Describes the purpose of a query heap. A query heap contains an array of individual queries.
D3D12_RANGE Describes a memory range.
D3D12_RANGE_UINT64 Describes a memory range in a 64-bit address space.
D3D12_RASTERIZER_DESC Describes rasterizer state.
D3D12_RAYTRACING_AABB Represents an axis-aligned bounding box (AABB) used as raytracing geometry.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_COMPACTED_SIZE_DESC Describes the space requirement for acceleration structure after compaction.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_CURRENT_SIZE_DESC Describes the space currently used by an acceleration structure..
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_DESC Description of the post-build information to generate from an acceleration structure. Use this structure in calls to EmitRaytracingAccelerationStructurePostbuildInfo and BuildRaytracingAccelerationStructure.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_SERIALIZATION_DESC Describes the size and layout of the serialized acceleration structure and header.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_POSTBUILD_INFO_TOOLS_VISUALIZATION_DESC Describes the space requirement for decoding an acceleration structure into a form that can be visualized by tools.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_PREBUILD_INFO Represents prebuild information about a raytracing acceleration structure. Get an instance of this stucture by calling GetRaytracingAccelerationStructurePrebuildInfo.
D3D12_RAYTRACING_ACCELERATION_STRUCTURE_SRV A shader resource view (SRV) structure for storing a raytracing acceleration structure.
D3D12_RAYTRACING_GEOMETRY_AABBS_DESC Describes a set of Axis-aligned bounding boxes that are used in the D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS structure to provide input data to a raytracing acceleration structure build operation.
D3D12_RAYTRACING_GEOMETRY_DESC Describes a set of geometry that is used in the D3D12_BUILD_RAYTRACING_ACCELERATION_STRUCTURE_INPUTS structure to provide input data to a raytracing acceleration structure build operation.
D3D12_RAYTRACING_GEOMETRY_TRIANGLES_DESC Describes a set of triangles used as raytracing geometry. The geometry pointed to by this struct are always in triangle list form, indexed or non-indexed. Triangle strips are not supported.
D3D12_RAYTRACING_INSTANCE_DESC Describes an instance of a raytracing acceleration structure used in GPU memory during the acceleration structure build process.
D3D12_RAYTRACING_PIPELINE_CONFIG A state subobject that represents a raytracing pipeline configuration.
D3D12_RAYTRACING_SHADER_CONFIG A state subobject that represents a shader configuration.
D3D12_RENDER_PASS_BEGINNING_ACCESS Describes the access to resource(s) that is requested by an application at the transition into a render pass.
D3D12_RENDER_PASS_BEGINNING_ACCESS_CLEAR_PARAMETERS Describes the clear value to which resource(s) should be cleared at the beginning of a render pass.
D3D12_RENDER_PASS_DEPTH_STENCIL_DESC Describes a binding (fixed for the duration of the render pass) to a depth stencil view (DSV), as well as its beginning and ending access characteristics.
D3D12_RENDER_PASS_ENDING_ACCESS Describes the access to resource(s) that is requested by an application at the transition out of a render pass.
D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_PARAMETERS Describes a resource to resolve to at the conclusion of a render pass.
D3D12_RENDER_PASS_ENDING_ACCESS_RESOLVE_SUBRESOURCE_PARAMETERS Describes the subresources involved in resolving at the conclusion of a render pass.
D3D12_RENDER_PASS_RENDER_TARGET_DESC Describes bindings (fixed for the duration of the render pass) to one or more render target views (RTVs), as well as their beginning and ending access characteristics.
D3D12_RENDER_TARGET_BLEND_DESC Describes the blend state for a render target.
D3D12_RENDER_TARGET_VIEW_DESC Describes the subresources from a resource that are accessible by using a render-target view.
D3D12_RESOURCE_ALIASING_BARRIER Describes the transition between usages of two different resources that have mappings into the same heap.
D3D12_RESOURCE_ALLOCATION_INFO Describes parameters needed to allocate resources.
D3D12_RESOURCE_BARRIER Describes a resource barrier (transition in resource use).
D3D12_RESOURCE_DESC Describes a resource, such as a texture. This structure is used extensively.
D3D12_RESOURCE_TRANSITION_BARRIER Describes the transition of subresources between different usages.
D3D12_RESOURCE_UAV_BARRIER Represents a resource in which all UAV accesses must complete before any future UAV accesses can begin.
D3D12_ROOT_CONSTANTS Describes constants inline in the root signature that appear in shaders as one constant buffer.
D3D12_ROOT_DESCRIPTOR Describes descriptors inline in the root signature version 1.0 that appear in shaders.
D3D12_ROOT_DESCRIPTOR_TABLE Describes the root signature 1.0 layout of a descriptor table as a collection of descriptor ranges that appear one after the other in a descriptor heap.
D3D12_ROOT_DESCRIPTOR_TABLE1 Describes the root signature 1.1 layout of a descriptor table as a collection of descriptor ranges that appear one after the other in a descriptor heap.
D3D12_ROOT_DESCRIPTOR1 Describes descriptors inline in the root signature version 1.1 that appear in shaders.
D3D12_ROOT_PARAMETER Describes the slot of a root signature version 1.0.
D3D12_ROOT_PARAMETER1 Describes the slot of a root signature version 1.1.
D3D12_ROOT_SIGNATURE_DESC Describes the layout of a root signature version 1.0.
D3D12_ROOT_SIGNATURE_DESC1 Describes the layout of a root signature version 1.1.
D3D12_RT_FORMAT_ARRAY Wraps an array of render target formats.
D3D12_SAMPLE_POSITION Describes a sub-pixel sample position for use with programmable sample positions.
D3D12_SAMPLER_DESC Describes a sampler state.
D3D12_SERIALIZED_DATA_DRIVER_MATCHING_IDENTIFIER Opaque data structure describing driver versioning for a serialized acceleration structure.
D3D12_SERIALIZED_RAYTRACING_ACCELERATION_STRUCTURE_HEADER Defines the header for a serialized raytracing acceleration structure.
D3D12_SHADER_BYTECODE Describes shader data.
D3D12_SHADER_RESOURCE_VIEW_DESC Describes a shader-resource view.
D3D12_SO_DECLARATION_ENTRY Describes a vertex element in a vertex buffer in an output slot.
D3D12_STATE_OBJECT_CONFIG Defines general properties of a state object.
D3D12_STATE_OBJECT_DESC Description of a state object. Pass this structure into ID3D12Device::CreateStateObject.
D3D12_STATE_SUBOBJECT Represents a subobject with in a state object description. Use with D3D12_STATE_OBJECT_DESC.
D3D12_STATIC_SAMPLER_DESC Describes a static sampler.
D3D12_STREAM_OUTPUT_BUFFER_VIEW Describes a stream output buffer.
D3D12_STREAM_OUTPUT_DESC Describes a streaming output buffer.
D3D12_SUBOBJECT_TO_EXPORTS_ASSOCIATION Associates a subobject defined directly in a state object with shader exports.
D3D12_SUBRESOURCE_DATA Describes subresource data.
D3D12_SUBRESOURCE_FOOTPRINT Describes the format, width, height, depth, and row-pitch of the subresource into the parent resource.
D3D12_SUBRESOURCE_INFO Describes subresource data.
D3D12_SUBRESOURCE_RANGE_UINT64 Describes a subresource memory range.
D3D12_SUBRESOURCE_TILING Describes a tiled subresource volume.
D3D12_TEX1D_ARRAY_DSV Describes the subresources from an array of 1D textures to use in a depth-stencil view.
D3D12_TEX1D_ARRAY_RTV Describes the subresources from an array of 1D textures to use in a render-target view.
D3D12_TEX1D_ARRAY_SRV Describes the subresources from an array of 1D textures to use in a shader-resource view.
D3D12_TEX1D_ARRAY_UAV Describes an array of unordered-access 1D texture resources.
D3D12_TEX1D_DSV Describes the subresource from a 1D texture that is accessible to a depth-stencil view.
D3D12_TEX1D_RTV Describes the subresource from a 1D texture to use in a render-target view.
D3D12_TEX1D_SRV Specifies the subresource from a 1D texture to use in a shader-resource view.
D3D12_TEX1D_UAV Describes a unordered-access 1D texture resource.
D3D12_TEX2D_ARRAY_DSV Describes the subresources from an array of 2D textures that are accessible to a depth-stencil view.
D3D12_TEX2D_ARRAY_RTV Describes the subresources from an array of 2D textures to use in a render-target view.
D3D12_TEX2D_ARRAY_SRV Describes the subresources from an array of 2D textures to use in a shader-resource view.
D3D12_TEX2D_ARRAY_UAV Describes an array of unordered-access 2D texture resources.
D3D12_TEX2D_DSV Describes the subresource from a 2D texture that is accessible to a depth-stencil view.
D3D12_TEX2D_RTV Describes the subresource from a 2D texture to use in a render-target view.
D3D12_TEX2D_SRV Describes the subresource from a 2D texture to use in a shader-resource view.
D3D12_TEX2D_UAV Describes a unordered-access 2D texture resource.
D3D12_TEX2DMS_ARRAY_DSV Describes the subresources from an array of multi sampled 2D textures for a depth-stencil view.
D3D12_TEX2DMS_ARRAY_RTV Describes the subresources from an array of multi sampled 2D textures to use in a render-target view.
D3D12_TEX2DMS_ARRAY_SRV Describes the subresources from an array of multi sampled 2D textures to use in a shader-resource view.
D3D12_TEX2DMS_DSV Describes the subresource from a multi sampled 2D texture that is accessible to a depth-stencil view.
D3D12_TEX2DMS_RTV Describes the subresource from a multi sampled 2D texture to use in a render-target view.
D3D12_TEX2DMS_SRV Describes the subresources from a multi sampled 2D texture to use in a shader-resource view.
D3D12_TEX3D_RTV Describes the subresources from a 3D texture to use in a render-target view.
D3D12_TEX3D_SRV Describes the subresources from a 3D texture to use in a shader-resource view.
D3D12_TEX3D_UAV Describes a unordered-access 3D texture resource.
D3D12_TEXCUBE_ARRAY_SRV Describes the subresources from an array of cube textures to use in a shader-resource view.
D3D12_TEXCUBE_SRV Describes the subresource from a cube texture to use in a shader-resource view.
D3D12_TEXTURE_COPY_LOCATION Describes a portion of a texture for the purpose of texture copies.
D3D12_TILE_REGION_SIZE Describes the size of a tiled region.
D3D12_TILE_SHAPE Describes the shape of a tile by specifying its dimensions.
D3D12_TILED_RESOURCE_COORDINATE Describes the coordinates of a tiled resource.
D3D12_UNORDERED_ACCESS_VIEW_DESC Describes the subresources from a resource that are accessible by using an unordered-access view.
D3D12_VERSIONED_ROOT_SIGNATURE_DESC Holds any version of a root signature description, and is designed to be used with serialization/deserialization functions.
D3D12_VERTEX_BUFFER_VIEW Describes a vertex buffer view.
D3D12_VIEW_INSTANCE_LOCATION Specifies the viewport/stencil and render target associated with a view instance.
D3D12_VIEW_INSTANCING_DESC Specifies parameters used during view instancing configuration.
D3D12_VIEWPORT Describes the dimensions of a viewport.
D3D12_WRITEBUFFERIMMEDIATE_PARAMETER Specifies the immediate value and destination address written using ID3D12CommandList2::WriteBufferImmediate.

Enumerations

Title Description
D3D_ROOT_SIGNATURE_VERSION Specifies the version of root signature layout.
D3D_SHADER_MODEL Specifies a shader model.
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_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_DRIVER_MATCHING_IDENTIFIER_STATUS Specifies the result of a call to ID3D12Device5::CheckDriverMatchingIdentifier which queries whether serialized data is compatible with the current device and driver version.
D3D12_DSV_DIMENSION Specifies how to access a resource used in a depth-stencil view.
D3D12_DSV_FLAGS Specifies depth-stencil view options.
D3D12_ELEMENTS_LAYOUT Describes how the locations of elements are identified.
D3D12_EXPORT_FLAGS The flags to apply when exporting symbols from a state subobject.
D3D12_FEATURE Specifies a Direct3D 12 feature or feature set to query about. When you want to query for the level to which an adapter supports a feature, pass one of these values to ID3D12Device::CheckFeatureSupport.
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_TYPE Specifies the type of heap. When resident, heaps reside in a particular physical memory pool with certain CPU cache properties.
D3D12_HIT_GROUP_TYPE Specifies the type of a raytracing hit group state subobject. Use a value from this enumeration with the D3D12_HIT_GROUP_DESC structure.
D3D12_INDEX_BUFFER_STRIP_CUT_VALUE When using triangle strip primitive topology, vertex positions are interpreted as vertices of a continuous triangle “strip”.
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_LOGIC_OP Specifies logical operations to configure for a render target.
D3D12_MEMORY_POOL Specifies the memory pool for the heap.
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_LEVEL_FLAGS 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_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_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_RENDER_PASS_TIER Specifies the level of support for render passes on a graphics device.
D3D12_RESIDENCY_FLAGS Used with the EnqueuMakeResident 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_SERIALIZED_DATA_TYPE Specifies the type of serialized data. Use a value from this enumeration when calling ID3D12Device5::CheckDriverMatchingIdentifier.
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_SRV_DIMENSION Identifies the type of resource that will be viewed as a shader resource.
D3D12_STATE_OBJECT_FLAGS Specifies constraints for state objects. Use values from this enumeration in the D3D12_STATE_OBJECT_CONFIG structure.
D3D12_STATE_OBJECT_TYPE Specifies the type of a state object. Use with D3D12_STATE_OBJECT_DESC.
D3D12_STATE_SUBOBJECT_TYPE The type of a state subobject. Use with D3D12_STATE_SUBOBJECT.
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_WRITEBUFFERIMMEDIATE_MODE Specifies the mode used by a WriteBufferImmediate operation.