D3D12 Pipeline State

class renderdoc.D3D12_State

The full current D3D12 pipeline state.

Resources

A list of D3D12_ResourceData entries, one for each resource.

customName

True if name was assigned by the application, otherwise it’s autogenerated based on the ID.

m_CS

A D3D12_Shader describing the compute shader stage.

m_DS

A D3D12_Shader describing the domain shader stage.

m_GS

A D3D12_Shader describing the geometry shader stage.

m_HS

A D3D12_Shader describing the hull shader stage.

m_IA

A D3D12_IA describing the input assembly pipeline stage.

m_OM

A D3D12_OM describing the output merger pipeline stage.

m_PS

A D3D12_Shader describing the pixel shader stage.

m_RS

A D3D12_Rasterizer describing the rasterizer pipeline stage.

m_SO

A D3D12_SO describing the stream-out pipeline stage.

m_VS

A D3D12_Shader describing the vertex shader stage.

name

The name of the pipeline state object.

pipeline

The ResourceId of the pipeline state object.

rootSig

The ResourceId of the root signature object.

class renderdoc.D3D12_Blend

Describes the blend configuration for a given D3D12 target.

Enabled

True if blending is enabled for this target.

Logic

The LogicOp to use for logic operations, if LogicEnabled is True.

LogicEnabled

True if the logic operation in Logic should be used.

WriteMask

The mask for writes to the render target.

m_AlphaBlend

A D3D12_BlendEquation describing the blending for alpha values.

m_Blend

A D3D12_BlendEquation describing the blending for colour values.

class renderdoc.D3D12_BlendEquation

Describes the details of a D3D12 blend operation.

Destination

The BlendMultiplier for the destination blend value.

Operation

The BlendOp to use in the blend calculation.

Source

The BlendMultiplier for the source blend value.

class renderdoc.D3D12_BlendState

Describes the blend state in the PSO.

AlphaToCoverage

True if alpha-to-coverage should be used when blending to an MSAA target.

BlendFactor

The constant blend factor to use in blend equations.

Blends

A list of D3D12_Blend describing the blend operations for each target.

IndependentBlend

True if independent blending for each target should be used.

False if the first blend should be applied to all targets.

class renderdoc.D3D12_CBuffer

Describes the details of a constant buffer view descriptor.

Buffer

The ResourceId of the underlying buffer resource.

ByteSize

How many bytes are in this constant buffer view.

Immediate

True if this view is a root constant (i.e. not in a table).

Offset

The byte offset where the buffer view starts in the underlying buffer.

RootElement

The index in the original root signature that this descriptor came from.

RootValues

If Immediate is True and this is a root constant, this contains a list of int values with the root values set.

TableIndex

The index in the the parent descriptor table where this descriptor came from.

class renderdoc.D3D12_DepthStencilState

Describes the state of the depth-stencil state in the PSO.

DepthEnable

True if depth testing should be performed.

DepthFunc

The CompareFunc to use for testing depth values.

DepthWrites

True if depth values should be written to the depth target.

StencilEnable

True if stencil operations should be performed.

StencilReadMask

The mask for reading stencil values.

StencilRef

The current stencil reference value.

StencilWriteMask

The mask for writing stencil values.

m_BackFace

A D3D12_StencilFace describing what happens for back-facing polygons.

m_FrontFace

A D3D12_StencilFace describing what happens for front-facing polygons.

class renderdoc.D3D12_IA

Describes the input assembler state in the PSO.

ibuffer

The D3D12_IB describing the index buffer.

indexStripCutValue

The index value to use for cutting strips. Either 0, 0xffff or 0xffffffff. If the value is 0, strip cutting is disabled.

layouts

A list of D3D12_Layout describing the input layout elements in this layout.

vbuffers

A list of D3D12_VB with the vertex buffers that are bound.

class renderdoc.D3D12_IB

Describes the D3D12 index buffer binding.

Buffer

The ResourceId of the index buffer.

Offset

The byte offset from the start of the buffer to the beginning of the index data.

Size

The number of bytes available in this index buffer.

class renderdoc.D3D12_Layout

Describes a single D3D12 input layout element for one vertex input.

TightlyPacked

Value for ByteOffset that indicates this element is tightly packed.

ByteOffset

The byte offset from the start of the vertex data in the vertex buffer from InputSlot.

If the value is TightlyPacked then the element is packed tightly after the previous element, or 0 if this is the first element.

Format

The ResourceFormat describing how the input data is interpreted.

InputSlot

The vertex buffer input slot where the data is sourced from.

InstanceDataStepRate

If PerInstance is True then this is how many times each instance data is used before advancing to the next instance.

E.g. if this value is two, then two instances will be drawn with the first instance data, then two with the next instance data.

PerInstance

True if the vertex data is instance-rate.

SemanticIndex

The semantic index for this input.

SemanticName

The semantic name for this input.

class renderdoc.D3D12_OM

Describes the current state of the output-merger stage of the D3D12 pipeline.

DepthReadOnly

True if depth access to the depth-stencil target is read-only.

DepthTarget

A D3D12_View with details of the bound depth-stencil target.

RenderTargets

A list of D3D12_View describing the bound render targets.

StencilReadOnly

True if stenncil access to the depth-stencil target is read-only.

m_BlendState

A D3D12_BlendState with the details of the blend state.

m_State

A D3D12_DepthStencilState with the details of the depth-stencil state.

multiSampleCount

The sample count used for rendering.

multiSampleQuality

The MSAA quality level used for rendering.

class renderdoc.D3D12_Rasterizer

Describes the rasterization state of the D3D12 pipeline.

SampleMask

The mask determining which samples are written to.

Scissors

A list of D3D12_Scissor with the bound scissor regions.

Viewports

A list of D3D12_Viewport with the bound viewports.

m_State

A D3D12_RasterizerState with the details of the rasterization state.

class renderdoc.D3D12_RasterizerState

Describes the rasterizer state in the PSO.

AntialiasedLineEnable

True if lines should be anti-aliased. Ignored if MultisampleEnable is False.

ConservativeRasterization

True if a conservative rasterization algorithm should be used.

DepthBias

The fixed depth bias value to apply to z-values.

DepthBiasClamp

The clamp value for calculated depth bias from DepthBias and SlopeScaledDepthBias

DepthClip

True if pixels outside of the near and far depth planes should be clipped.

ForcedSampleCount

A sample count to force rasterization to when UAV rendering or rasterizing, or 0 to not force any sample count.

FrontCCW

True if counter-clockwise polygons are front-facing. False if clockwise polygons are front-facing.

MultisampleEnable

True if the quadrilateral MSAA algorithm should be used on MSAA targets.

SlopeScaledDepthBias

The slope-scaled depth bias value to apply to z-values.

cullMode

The polygon culling mode.

fillMode

The polygon fill mode.

class renderdoc.D3D12_RegisterSpace

Contains all of the registers in a single register space mapped to by a root signature.

ConstantBuffers

List of D3D12_CBuffer containing the constant buffers.

SRVs

List of D3D12_View containing the SRVs.

Samplers

List of D3D12_Sampler containing the samplers.

UAVs

List of D3D12_View containing the UAVs.

class renderdoc.D3D12_ResourceData

Contains the current state of a given resource.

id

The ResourceId of the resource.

states

A list of D3D12_ResourceState entries, one for each subresource.

class renderdoc.D3D12_ResourceState

Describes the current state that a sub-resource is in.

name

A human-readable name for the current state.

class renderdoc.D3D12_SOBind

Describes a binding on the D3D12 stream-out stage.

Buffer

The ResourceId of the buffer.

Offset

The byte offset in Buffer where the buffer view starts in the underlying buffer.

Size

How many bytes are in this stream-out buffer view.

WrittenCountBuffer

The ResourceId of the buffer where the written count will be stored.

WrittenCountOffset

The byte offset in WrittenCountBuffer where the stream-out count will be written.

class renderdoc.D3D12_Sampler

Describes the details of a sampler descriptor.

AddressU

The AddressMode in the U direction.

AddressV

The AddressMode in the V direction.

AddressW

The AddressMode in the W direction.

BorderColor

The RGBA border color.

Comparison

The CompareFunc for comparison samplers.

Filter

The TextureFilter describing the filtering mode.

Immediate

True if this view is a static sampler (i.e. not in a table).

MaxAniso

The maximum anisotropic filtering level to use.

MaxLOD

The maximum mip level that can be used.

MinLOD

The minimum mip level that can be used.

MipLODBias

A bias to apply to the calculated mip level before sampling.

RootElement

The index in the original root signature that this descriptor came from.

TableIndex

The index in the the parent descriptor table where this descriptor came from.

UseBorder()

Check if the border color is used in this D3D12 sampler.

Returns:True if the border color is used, False otherwise.
Return type:bool
class renderdoc.D3D12_Scissor

Describes a single D3D12 scissor rect.

bottom

Bottom-right Y co-ordinate of the viewport.

left

Top-left X co-ordinate of the viewport.

right

Bottom-right X co-ordinate of the viewport.

top

Top-left Y co-ordinate of the viewport.

class renderdoc.D3D12_Shader

Describes a D3D12 shader stage.

BindpointMapping

A ShaderBindpointMapping to match ShaderDetails with the bindpoint mapping data.

Object

The ResourceId of the shader object itself.

ShaderDetails

A ShaderReflection describing the reflection data for this shader.

Spaces

A list of D3D12_RegisterSpace with the register spaces for this stage.

stage

A ShaderStage identifying which stage this shader is bound to.

class renderdoc.D3D12_StencilFace

Describes the details of a D3D12 stencil operation.

DepthFailOp

The StencilOp to apply if the depth-test fails.

FailOp

The StencilOp to apply if the stencil-test fails.

Func

The CompareFunc to use for testing stencil values.

PassOp

The StencilOp to apply if the stencil-test passes.

class renderdoc.D3D12_Streamout

Describes the stream-out state in the PSO.

Outputs

A list of D3D12_SOBind with the bound buffers.

class renderdoc.D3D12_VB

Describes a single D3D12 vertex buffer binding.

Buffer

The ResourceId of the buffer bound to this slot.

Offset

The byte offset from the start of the buffer to the beginning of the vertex data.

Size

The number of bytes available in this vertex buffer.

Stride

The byte stride between the start of one set of vertex data and the next.

class renderdoc.D3D12_View

Describes the details of a D3D12 resource view - any one of UAV, SRV, RTV or DSV.

ArraySize

Valid for texture arrays or 3D textures - the number of slices in the view.

BufferFlags

The D3DBufferViewFlags set for the buffer.

BufferStructCount

If the view has a hidden counter, this stores the current value of the counter.

CounterByteOffset

The byte offset in CounterResource where the counter is stored.

CounterResource

The ResourceId of the resource where the hidden buffer counter is stored.

ElementSize

The byte size of a single element in the view. Either the byte size of Format, or the structured buffer element size, as appropriate.

FirstArraySlice

Valid for texture arrays or 3D textures - the first slice available through the view.

FirstElement

Valid for buffers - the first element to be used in the view.

Format

The ResourceFormat that the view uses.

HighestMip

Valid for textures - the highest mip that is available through the view.

Immediate

True if this view is a root parameter (i.e. not in a table).

MinLODClamp

The minimum mip-level clamp applied when sampling this texture.

NumElements

Valid for buffers - the number of elements to be used in the view.

NumMipLevels

Valid for textures - the number of mip levels in the view.

Resource

The ResourceId of the underlying resource the view refers to.

RootElement

The index in the original root signature that this descriptor came from.

TableIndex

The index in the the parent descriptor table where this descriptor came from.

Type

The TextureDim of the view type.

swizzle

Four TextureSwizzle elements indicating the swizzle applied to this texture.

class renderdoc.D3D12_Viewport

Describes a single D3D12 viewport.

Height

The height of the viewport.

MaxDepth

The maximum depth of the viewport.

MinDepth

The minimum depth of the viewport.

Width

The width of the viewport.

X

Top-left X co-ordinate of the viewport.

Y

Top-left Y co-ordinate of the viewport.