# D3D11 Pipeline State

class `renderdoc.``D3D11State`

  The full current D3D11 pipeline state.

  `computeShader`

    A `D3D11Shader` describing the compute shader stage.

  `domainShader`

    A `D3D11Shader` describing the domain shader stage.

  `geometryShader`

    A `D3D11Shader` describing the geometry shader stage.

  `hullShader`

    A `D3D11Shader` describing the hull shader stage.

  `inputAssembly`

    A `D3D11InputAssembly` describing the input assembly pipeline stage.

  `outputMerger`

    A `D3D11OutputMerger` describing the output merger pipeline stage.

  `pixelShader`

    A `D3D11Shader` describing the pixel shader stage.

  `predication`

    A `D3D11Predication` describing the predicated rendering state.

  `rasterizer`

    A `D3D11Rasterizer` describing the rasterizer pipeline stage.

  `streamOut`

    A `D3D11StreamOut` describing the stream-out pipeline stage.

  `vertexShader`

    A `D3D11Shader` describing the vertex shader stage.

class `renderdoc.``D3D11Layout`

  Describes a single D3D11 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.``D3D11VertexBuffer`

  Describes a single D3D11 vertex buffer binding.

  `byteOffset`

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

  `byteStride`

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

  `resourceId`

    The `ResourceId` of the buffer bound to this slot.

class `renderdoc.``D3D11IndexBuffer`

  Describes the D3D11 index buffer binding.

  `byteOffset`

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

  `resourceId`

    The `ResourceId` of the index buffer.

class `renderdoc.``D3D11InputAssembly`

  Describes the input assembler data.

  `bytecode`

    A `ShaderReflection` describing the bytecode used to create the input layout.

  `indexBuffer`

    The `D3D11IndexBuffer` describing the index buffer.

  `layouts`

    A list of `D3D11Layout` describing the input layout elements in this layout.

  `resourceId`

    The `ResourceId` of the layout object.

  `vertexBuffers`

    A list of `D3D11VertexBuffer` with the vertex buffers that are bound.

class `renderdoc.``D3D11View`

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

  `bufferFlags`

    Valid for buffers - the flags for additional view properties.

  `bufferStructCount`

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

  `counterResourceId`

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

  `elementByteSize`

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

  `firstElement`

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

  `firstMip`

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

  `firstSlice`

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

  `numElements`

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

  `numMips`

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

  `numSlices`

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

  `resourceResourceId`

    The `ResourceId` of the underlying resource the view refers to.

  `structured`

    `True` if this view describes a structured buffer.

  `type`

    The `TextureType` of the view type.

  `viewFormat`

    The `ResourceFormat` that the view uses.

  `viewResourceId`

    The `ResourceId` of the view itself.

class `renderdoc.``D3D11Sampler`

  Describes a sampler state object.

  `UseBorder`()

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

    Returns: | `True` if the border color is used, `False` otherwise.
    Return type: | `bool`

  `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.

  `compareFunction`

    The `CompareFunction` for comparison samplers.

  `filter`

    The `TextureFilter` describing the filtering mode.

  `maxAnisotropy`

    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.

  `resourceId`

    The `ResourceId` of the sampler state object.

class `renderdoc.``D3D11ConstantBuffer`

  Describes a constant buffer binding.

  `resourceId`

    The `ResourceId` of the buffer.

  `vecCount`

    The size of the buffer binding, in units of `float4` (16 bytes).

    If the capture isn’t using the D3D11.1 binding methods, this offset will be 4096 (64 kiB).

  `vecOffset`

    The offset of the buffer binding, in units of `float4` (16 bytes).

    If the capture isn’t using the D3D11.1 binding methods, this offset will be 0.

class `renderdoc.``D3D11Shader`

  Describes a D3D11 shader stage.

  `bindpointMapping`

    A `ShaderBindpointMapping` to match `reflection` with the bindpoint mapping data.

  `classInstances`

    A list of `str` with the bound class instance names.

  `constantBuffers`

    A list of `D3D11ConstantBuffer` with the bound constant buffers.

  `reflection`

    A `ShaderReflection` describing the reflection data for this shader.

  `resourceId`

    The `ResourceId` of the shader itself.

  `samplers`

    A list of `D3D11Sampler` with the bound samplers.

  `srvs`

    A list of `D3D11View` with the bound SRVs.

  `stage`

    A `ShaderStage` identifying which stage this shader is bound to.

  `uavs`

    A list of `D3D11View` with the bound UAVs - only valid for the compute stage.

class `renderdoc.``D3D11StreamOutBind`

  Describes a binding on the D3D11 stream-out stage.

  `byteOffset`

    The byte offset of the stream-output binding.

  `resourceId`

    The `ResourceId` of the buffer.

class `renderdoc.``D3D11StreamOut`

  Describes the stream-out stage bindings.

  `outputs`

    A list of `D3D11StreamOutBind` with the bound buffers.

class `renderdoc.``D3D11RasterizerState`

  Describes a rasterizer state object.

  `antialiasedLines`

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

  `conservativeRasterization`

    The current `ConservativeRaster` mode.

  `cullMode`

    The polygon `CullMode`.

  `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.

  `fillMode`

    The polygon `FillMode`.

  `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.

  `resourceId`

    The `ResourceId` of the rasterizer state object.

  `scissorEnable`

    `True` if the scissor test should be applied.

  `slopeScaledDepthBias`

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

class `renderdoc.``D3D11Rasterizer`

  Describes the rasterization state of the D3D11 pipeline.

  `scissors`

    A list of `Scissor` with the bound scissor regions.

  `state`

    A `D3D11RasterizerState` with the details of the rasterization state.

  `viewports`

    A list of `Viewport` with the bound viewports.

class `renderdoc.``D3D11DepthStencilState`

  Describes a depth-stencil state object.

  `backFace`

    A `StencilFace` describing what happens for back-facing polygons.

  `depthEnable`

    `True` if depth testing should be performed.

  `depthFunction`

    The `CompareFunction` to use for testing depth values.

  `depthWrites`

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

  `frontFace`

    A `StencilFace` describing what happens for front-facing polygons.

  `resourceId`

    The `ResourceId` of the depth-stencil state object.

  `stencilEnable`

    `True` if stencil operations should be performed.

class `renderdoc.``D3D11BlendState`

  Describes a blend state object.

  `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 `ColorBlend` 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.

  `resourceId`

    The `ResourceId` of the blend state object.

  `sampleMask`

    The mask determining which samples are written to.

class `renderdoc.``D3D11OutputMerger`

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

  `blendState`

    A `D3D11BlendState` with the details of the blend state.

  `depthReadOnly`

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

  `depthStencilState`

    A `D3D11DepthStencilState` with the details of the depth-stencil state.

  `depthTarget`

    A `D3D11View` with details of the bound depth-stencil target.

  `renderTargets`

    A list of `D3D11View` describing the bound render targets.

  `stencilReadOnly`

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

  `uavStartSlot`

    Which slot in the output targets is the first UAV.

  `uavs`

    A list of `D3D11View` describing the bound UAVs.

class `renderdoc.``D3D11Predication`

  Describes the current state of predicated rendering.

  `isPassing`

    `True` if the current predicate would render.

  `resourceId`

    The `ResourceId` of the active predicate.

  `value`

    The value to go along with the predicate.