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.