Helper structures for Direct3D 12

These helper structures help initialize many of the Direct3D 12 structures. They're declared in d3dx12.h.

d3dx12.h is available separately from the Direct3D 12 headers. You can download d3dx12.h from The D3D12 Helper Library.

In this section

Topic Description
CD3DX12_BLEND_DESC A helper structure to enable easy initialization of a D3D12_BLEND_DESC structure.
CD3DX12_BOX A helper structure to enable easy initialization of a D3D12_BOX structure.
CD3DX12_CLEAR_VALUE A helper structure to enable easy initialization of a D3D12_CLEAR_VALUE structure.
CD3DX12_CPU_DESCRIPTOR_HANDLE A helper structure to enable easy initialization of a D3D12_CPU_DESCRIPTOR_HANDLE structure.
CD3DX12_DEFAULT Passes D3D12_DEFAULT into a constructor for each helper structure. This structure is simply used as a mechanism to set default parameters on the other helper structures.
CD3DX12_DEPTH_STENCIL_DESC A helper structure to enable easy initialization of a D3D12_DEPTH_STENCIL_DESC structure.
CD3DX12_DEPTH_STENCIL_DESC1 A helper structure to enable easy initialization of a D3D12_DEPTH_STENCIL_DESC1 structure.
CD3DX12_DESCRIPTOR_RANGE A helper structure to enable easy initialization of a D3D12_DESCRIPTOR_RANGE structure.
CD3DX12_DESCRIPTOR_RANGE1 A helper structure to enable easy initialization of a D3D12_DESCRIPTOR_RANGE1 structure.
CD3DX12_DXIL_LIBRARY_SUBOBJECT A helper class for creating a DXIL library state subobject.
CD3DX12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION A helper class for creating a DXIL-subobject-to-exports association state subobject.
CD3DX12_EXISTING_COLLECTION_SUBOBJECT A helper class for creating an existing collection state subobject.
CD3DX12_GLOBAL_ROOT_SIGNATURE_SUBOBJECT A helper class for creating a global root signature state suboject.
CD3DX12_GPU_DESCRIPTOR_HANDLE A helper structure to enable easy initialization of a D3D12_GPU_DESCRIPTOR_HANDLE structure.
CD3DX12_HEAP_DESC A helper structure to enable easy initialization of a D3D12_HEAP_DESC structure.
CD3DX12_HEAP_PROPERTIES A helper structure to enable easy initialization of a D3D12_HEAP_PROPERTIES structure.
CD3DX12_HIT_GROUP_SUBOBJECT A helper class for creating a hit group state subobject.
CD3DX12_NODE_MASK_SUBOBJECT A helper class for creating a state subobject that identifies the GPU nodes to which the state object applies.
CD3DX12_LOCAL_ROOT_SIGNATURE_SUBOBJECT A helper class for creating a local root signature state suboject.
CD3DX12_PACKED_MIP_INFO A helper structure to enable easy initialization of a D3D12_PACKED_MIP_INFO structure.
CD3DX12_PIPELINE_STATE_STREAM A helper structure for creating and working with graphics and compute pipeline states through a combined interface. See D3D12_GRAPHICS_PIPELINE_STATE_DESC and D3D12_COMPUTE_PIPELINE_STATE_DESC.
CD3DX12_PIPELINE_STATE_STREAM1 A helper structure for creating and working with graphics and compute pipeline states through a combined interface. See D3D12_GRAPHICS_PIPELINE_STATE_DESC and D3D12_COMPUTE_PIPELINE_STATE_DESC.
CD3DX12_PIPELINE_STATE_STREAM2 A helper structure for creating and working with graphics and compute pipeline states through a combined interface.
CD3DX12_PIPELINE_STATE_STREAM_BLEND_DESC A helper structure used to describe a blend description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_CACHED_PSO A helper structure used to describe a cached PSO as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_CS A helper structure used to describe a compute shader as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL A helper structure used to describe a depth stencil description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL1 A helper structure used to describe a depth stencil description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_DEPTH_STENCIL_FORMAT A helper structure used to describe the depth stencil format as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_DS A helper structure used to describe a domain shader as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_FLAGS A helper structure used to describe pipeline state flags as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_GS A helper structure used to describe a geometry shader as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_HS A helper structure used to describe a hull shader as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_IB_STRIP_CUT_VALUE A helper structure used to describe the index buffer strip cut value as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_INPUT_LAYOUT A helper structure used to describe an input layout as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_NODE_MASK A helper structure used to describe a node mask as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_PARSE_HELPER Builds an internal CD3DX12_PIPELINE_STATE_STREAM object from subobject details passed into the corresponding member functions. This struct implements the ID3DX12PipelineParserCallbacks interface.
CD3DX12_PIPELINE_STATE_STREAM_PRIMITIVE_TOPOLOGY A helper structure used to describe the primitive topology as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_PS A helper structure used to describe a pixel shader as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_RASTERIZER A helper structure used to describe a rasterizer description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_RENDER_TARGET_FORMATS A helper structure used to describe the render target formats as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_ROOT_SIGNATURE A helper structure used to describe the root signature as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_DESC A helper structure used to describe a sample description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_SAMPLE_MASK A helper structure used to describe a sample mask as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_STREAM_OUTPUT A helper structure used to describe the stream output description as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_SUBOBJECT A templated helper structure used to encapsulate subobject type and subobject data pairs as a single object suitable for a stream description.
CD3DX12_PIPELINE_STATE_STREAM_VIEW_INSTANCING A helper structure used to wrap a CD3DX12_VIEW_INSTANCING_DESC structure. Allows shaders to render to multiple views with a single draw call; useful for stereo vision or cubemap generation.
CD3DX12_PIPELINE_STATE_STREAM_VS A helper structure used to describe a vertex shader as a single object suitable for a stream description.
CD3DX12_RANGE A helper structure to enable easy initialization of a D3D12_RANGE structure.
CD3DX12_RANGE_UINT64 A helper structure to enable easy initialization of a D3D12_RANGE_UINT64 structure.
CD3DX12_RASTERIZER_DESC A helper structure to enable easy initialization of a D3D12_RASTERIZER_DESC structure.
CD3DX12_RAYTRACING_PIPELINE_CONFIG_SUBOBJECT A helper class for creating a raytracing pipeline configuration state subobject.
CD3DX12_RAYTRACING_PIPELINE_CONFIG1_SUBOBJECT A helper class for creating a raytracing pipeline configuration state subobject, with flags.
CD3DX12_RAYTRACING_SHADER_CONFIG_SUBOBJECT A helper class for creating a raytracing shader configuration state subobject.
CD3DX12_RECT A helper structure to enable easy initialization of a D3D12_RECT structure.
CD3DX12_RESOURCE_ALLOCATION_INFO A helper structure to enable easy initialization of a D3D12_RESOURCE_ALLOCATION_INFO structure.
CD3DX12_RESOURCE_BARRIER A helper structure to enable easy initialization of a D3D12_RESOURCE_BARRIER structure.
CD3DX12_RESOURCE_DESC A helper structure to enable easy initialization of a D3D12_RESOURCE_DESC structure.
CD3DX12_RESOURCE_DESC1 A helper structure to enable easy initialization of a D3D12_RESOURCE_DESC1 structure.
CD3DX12_ROOT_CONSTANTS A helper structure to enable easy initialization of a D3D12_ROOT_CONSTANTS structure.
CD3DX12_ROOT_DESCRIPTOR A helper structure to enable easy initialization of a D3D12_ROOT_DESCRIPTOR structure.
CD3DX12_ROOT_DESCRIPTOR1 A helper structure to enable easy initialization of a D3D12_ROOT_DESCRIPTOR1 structure.
CD3DX12_ROOT_DESCRIPTOR_TABLE A helper structure to enable easy initialization of a D3D12_ROOT_DESCRIPTOR_TABLE structure.
CD3DX12_ROOT_DESCRIPTOR_TABLE1 A helper structure to enable easy initialization of a D3D12_ROOT_DESCRIPTOR_TABLE1 structure.
CD3DX12_ROOT_PARAMETER A helper structure to enable easy initialization of a D3D12_ROOT_PARAMETER structure.
CD3DX12_ROOT_PARAMETER1 A helper structure to enable easy initialization of a D3D12_ROOT_PARAMETER1 structure.
CD3DX12_ROOT_SIGNATURE_DESC A helper structure to enable easy initialization of a D3D12_ROOT_SIGNATURE_DESC structure.
CD3DX12_RT_FORMAT_ARRAY A helper structure to enable easy initialization of a D3D12_RT_FORMAT_ARRAY structure.
CD3DX12_SHADER_BYTECODE A helper structure to enable easy initialization of a D3D12_SHADER_BYTECODE structure.
CD3DX12_STATE_OBJECT_CONFIG_SUBOBJECT A helper class for creating a subobject that defines the general properties of a state object.
CD3DX12_STATE_OBJECT_DESC The central class of the D3DX12 State Object Creation Helpers, which are helper classes for creating state objects out of an arbitrary set of subobjects.
CD3DX12_STATIC_SAMPLER_DESC A helper structure to enable easy initialization of a D3D12_STATIC_SAMPLER_DESC structure.
CD3DX12_SUBOBJECT_TO_EXPORTS_ASSOCIATION_SUBOBJECT A helper class for creating a subobject-to-exports association state subobject.
CD3DX12_SUBRESOURCE_FOOTPRINT A helper structure to enable easy initialization of a D3D12_SUBRESOURCE_FOOTPRINT structure.
CD3DX12_SUBRESOURCE_RANGE_UINT64 A helper structure to enable easy initialization of a D3D12_SUBRESOURCE_RANGE_UINT64 structure.
CD3DX12_SUBRESOURCE_TILING A helper structure to enable easy initialization of a D3D12_SUBRESOURCE_TILING structure.
CD3DX12_TEXTURE_COPY_LOCATION A helper structure to enable easy initialization of a D3D12_TEXTURE_COPY_LOCATION structure.
CD3DX12_TILE_REGION_SIZE A helper structure to enable easy initialization of a D3D12_TILE_REGION_SIZE structure.
CD3DX12_TILE_SHAPE A helper structure to enable easy initialization of a D3D12_TILE_SHAPE structure.
CD3DX12_TILED_RESOURCE_COORDINATE A helper structure to enable easy initialization of a D3D12_TILED_RESOURCE_COORDINATE structure.
CD3DX12_VERSIONED_ROOT_SIGNATURE_DESC A helper structure to enable easy initialization of a D3D12_VERSIONED_ROOT_SIGNATURE_DESC structure.
CD3DX12_VIEW_INSTANCING_DESC A helper structure to enable easy initialization of a D3DX12_VIEW_INSTANCING_DESC structure.
CD3DX12_VIEWPORT A helper structure to enable easy initialization of a D3D12_VIEWPORT structure.
D3DX12_MESH_SHADER_PIPELINE_STATE_DESC For mesh/amplifications shaders, you can use the data from an EffectPipelineStateDescription, with D3DX12_MESH_SHADER_PIPELINE_STATE_DESC, to provide all the state.