DirectX Documentation

Microsoft Developer Network

ID3D12GraphicsCommandList Interface

Represents a list of commands that can be recorded and then executed on a GPU.

Members

Methods

The ID3D12GraphicsCommandList interface inherits from ID3D12CommandList and IUnknown.

Method Description
Close Records that the command list is finished recording.
Reset Resets a command list for reuse.
CopyBufferRegion Copies a region of buffer data.
CopyTextureRegion Copies a region of texture data.
CopySubresourceRegion Copies a subresource region.
DrawIndexedInstanced Draws indexed geometry with instancing.
DrawInstanced Draws geometry with instancing.
ExecuteBundle Executes commands from a bundle. (Deprecated)
ExecuteIndirect Executes commands indirectly.
GenerateMips Generates mipmaps for a texture.
IASetIndexBuffer Sets the index buffer.
IASetPrimitiveTopology Sets the primitive topology.
IASetVertexBuffers Sets the vertex buffers.
OMSetRenderTargets Sets the render target views and depth-stencil view.
ResourceBarrier Adds a resource barrier.
SetComputeShader Sets the compute shader.
SetDescriptorHeaps Sets descriptor heaps.
SetGraphicsRoot32BitConstants Sets 32-bit constants in the graphics root signature.
SetGraphicsRootConstantBufferView Sets a constant buffer view in the graphics root signature.
SetGraphicsRootDescriptorTable Sets a descriptor table in the graphics root signature.
SetGraphicsRootShaderResourceView Sets a shader resource view in the graphics root signature.
SetGraphicsRootSignature Sets the graphics root signature.
SetGraphicsRootSignature Sets the graphics root signature.
SetPipelineState Sets the pipeline state object.
SetPredication Sets predication.
SetSupersamplePositions Sets supersample positions.
SetScissorRects Sets scissor rectangles.
SetViewports Sets viewports.
UavBarrier Adds an UAV barrier.
VSSetConstantBuffers Sets constant buffers for the vertex shader.
VSSetDescriptorHeaps Sets descriptor heaps for the vertex shader.
VSSetShaderResources Sets shader resources for the vertex shader.
VSSetShader Sets the vertex shader.
HSSetShader Sets the hull shader.
DSSetShader Sets the domain shader.
GSSetShader Sets the geometry shader.
PSSetShader Sets the pixel shader.
CSSetShader Sets the compute shader.

Remarks

A graphics command list is a sequence of commands that can be recorded and then executed on the GPU. It provides a rich set of methods for defining rendering operations, including drawing primitives, dispatching compute shaders, managing resources, and setting pipeline states.

Command lists are recorded on the CPU and then submitted to the GPU via a command queue. Multiple command lists can be recorded in parallel and executed in any order, allowing for efficient multithreaded rendering.

The ID3D12GraphicsCommandList interface supports both graphics and compute operations. For purely compute operations, ID3D12ComputeCommandList can be used.