Vulkan Pipeline State

class renderdoc.VK_State

The full current Vulkan pipeline state.

CB

A VK_ColorBlend describing color blending.

DS

A VK_DepthStencil describing the depth-stencil stage.

IA

A VK_InputAssembly describing the input assembly stage.

MSAA

A VK_MultiSample describing the multisample setup.

Pass

A VK_CurrentPass describing the current renderpass, subpass and framebuffer.

RS

A VK_Raster describing rasterization.

Tess

A VK_Tessellation describing the tessellation stage.

VI

A VK_VertexInput describing the vertex input stage.

VP

A VK_ViewState describing the viewport setup.

compute

A VK_Pipeline with the currently bound compute pipeline, if any.

graphics

A VK_Pipeline with the currently bound graphics pipeline, if any.

images

A list of VK_ImageData entries, one for each image.

m_CS

A VK_Shader describing the compute shader stage.

m_FS

A VK_Shader describing the fragment shader stage.

m_GS

A VK_Shader describing the geometry shader stage.

m_TCS

A VK_Shader describing the tessellation control shader stage.

m_TES

A VK_Shader describing the tessellation evaluation shader stage.

m_VS

A VK_Shader describing the vertex shader stage.

class renderdoc.VK_Attachment

Describes a single attachment in a framebuffer object.

baseLayer

For 3D textures and texture arrays, the first slice used in the attachment.

baseMip

The first mip level used in the attachment.

img

The ResourceId of the underlying image that the view refers to.

numLayer

For 3D textures and texture arrays, the number of array slices in the attachment.

numMip

The number of mip levels in the attachment.

swizzle

Four TextureSwizzle elements indicating the swizzle applied to this texture.

view

The ResourceId of the image view itself.

viewfmt

The ResourceFormat that the view uses.

class renderdoc.VK_BindingElement

The contents of a single binding element within a descriptor set, possibly in an array.

AddressU

For samplers - the AddressMode in the U direction.

AddressV

For samplers - the AddressMode in the V direction.

AddressW

For samplers - the AddressMode in the W direction.

BorderColor

For samplers - the RGBA border color.

Filter

For samplers - the TextureFilter describing the filtering mode.

UseBorder()

For samplers - check if the border color is used in this Vulkan sampler.

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

For 3D textures and texture arrays - the first slice used in the view.

baseMip

For textures - the first mip level used in the view.

comparison

For samplers - the CompareFunc for comparison samplers.

customName

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

immutableSampler

True if this is an immutable sampler binding.

maxAniso

For samplers - the maximum anisotropic filtering level to use.

maxlod

For samplers - the maximum mip level that can be used.

minlod

For samplers - the minimum mip level that can be used.

mipBias

For samplers - a bias to apply to the calculated mip level before sampling.

name

The name of the current sampler object, if one is bound. Empty for other bindings.

numLayer

For 3D textures and texture arrays - the number of array slices in the view.

numMip

For textures - the number of mip levels in the view.

offset

For buffers - the byte offset where the buffer view starts in the underlying buffer.

res

The ResourceId of the current underlying buffer or image object.

sampler

The ResourceId of the current sampler object.

size

For buffers - how many bytes are in this buffer view.

swizzle

Four TextureSwizzle elements indicating the swizzle applied to this texture.

unnormalized

For samplers - True if unnormalized co-ordinates are used in this sampler.

view

The ResourceId of the current view object, if one is in use.

viewfmt

The ResourceFormat that the view uses.

class renderdoc.VK_Blend

Describes the blend configuration for a given Vulkan attachment.

alphaBlend

A VK_BlendEquation describing the blending for alpha values.

blend

A VK_BlendEquation describing the blending for colour values.

blendEnable

True if blending is enabled for this attachment.

writeMask

The mask for writes to the attachment.

class renderdoc.VK_BlendEquation

Describes the details of a Vulkan 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.VK_ColorBlend

Describes the pipeline blending state.

alphaToCoverageEnable

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

alphaToOneEnable

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

attachments

The list of VK_Blend with the blending configuration per-attachment.

blendConst

The constant blend factor to use in blend equations.

logic

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

logicOpEnable

True if the logic operation in logic should be used.

class renderdoc.VK_CurrentPass

Describes the current pass instance at the current time.

framebuffer

The VK_Framebuffer that is currently being used.

renderArea

The VK_RenderArea that is currently being rendered to.

renderpass

The VK_RenderPass that is currently active.

class renderdoc.VK_DepthStencil

Describes the pipeline depth-stencil state.

back

A VK_StencilFace describing what happens for back-facing polygons.

depthBoundsEnable

True if depth bounds tests should be applied.

depthCompareOp

The CompareFunc to use for testing depth values.

depthTestEnable

True if depth testing should be performed.

depthWriteEnable

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

front

A VK_StencilFace describing what happens for front-facing polygons.

maxDepthBounds

The far plane bounding value.

minDepthBounds

The near plane bounding value.

stencilTestEnable

True if stencil operations should be performed.

class renderdoc.VK_DescriptorBinding

The contents of a single binding within a descriptor set, either arrayed or not.

binds

A list of VK_BindingElement with the binding elements. If descriptorCount is 1 then this isn’t an array, and this list has only one element.

descriptorCount

How many descriptors are in this binding array. If this binding is empty/non-existant this value will be 0.

stageFlags

The ShaderStageMask where this binding is visible.

type

The BindType of this binding.

class renderdoc.VK_DescriptorSet

The contents of a descriptor set.

bindings

A list of VK_DescriptorBinding with the bindings within this set. This list is indexed by the binding, so it may be sparse (some entries do not contain any elements).

descset

The ResourceId of the descriptor set object.

layout

The ResourceId of the descriptor set layout that matches this set.

class renderdoc.VK_Framebuffer

Describes a framebuffer object and its attachments.

attachments

A list of VK_Attachment with the attachments of this framebuffer.

height

The height of this framebuffer in pixels.

layers

The number of layers in this framebuffer.

obj

The ResourceId of the framebuffer object.

width

The width of this framebuffer in pixels.

class renderdoc.VK_IB

Describes the Vulkan index buffer binding.

buf

The ResourceId of the index buffer.

offs

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

class renderdoc.VK_ImageData

Contains the current layout of all subresources in the image.

image

The ResourceId of the image.

layouts

A list of VK_ImageLayout with the set of subresources that make up the image.

class renderdoc.VK_ImageLayout

Contains the layout of a range of subresources in an image.

baseLayer

For 3D textures and texture arrays, the first slice used in the range.

baseMip

The first mip level used in the range.

name

The name of the current image state.

numLayer

For 3D textures and texture arrays, the number of array slices in the range.

numMip

The number of mip levels in the range.

class renderdoc.VK_InputAssembly

Describes the vulkan input assembly configuration.

ibuffer

The VK_IB with the index buffer binding.

primitiveRestartEnable

True if primitive restart is enabled for strip primitives.

class renderdoc.VK_MultiSample

Describes the multisampling state in the pipeline.

minSampleShading

The minimum sample shading rate.

rasterSamples

How many samples to use when rasterizing.

sampleMask

A mask that generated samples should be masked with using bitwise AND.

sampleShadingEnable

True if rendering should happen at sample-rate frequency.

class renderdoc.VK_Pipeline

Describes the object and descriptor set bindings of a Vulkan pipeline object.

DescSets

A list of VK_DescriptorSet with the bound descriptor sets.

flags

The flags used to create the pipeline object.

obj

The ResourceId of the pipeline object.

class renderdoc.VK_Raster

Describes the raster state in the pipeline.

FrontCCW

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

cullMode

The polygon culling mode.

depthBias

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

depthBiasClamp

The clamp value for calculated depth bias from depthBias and slopeScaledDepthBias

depthClampEnable

True if pixels outside of the near and far depth planes should be clamped and to 0.0 to 1.0 and not clipped.

fillMode

The polygon fill mode.

lineWidth

The fixed line width in pixels.

rasterizerDiscardEnable

True if primitives should be discarded during rasterization.

slopeScaledDepthBias

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

class renderdoc.VK_RenderArea

Describes the render area for a render pass instance.

height

The height of the render area.

width

The width of the render area.

x

The X co-ordinate of the render area.

y

The Y co-ordinate of the render area.

class renderdoc.VK_RenderPass

Describes the setup of a renderpass and subpasses.

colorAttachments

A list of indices into the framebuffer attachments for color attachments.

depthstencilAttachment

An index into the framebuffer attachments for the depth-stencil attachment.

If there is no depth-stencil attachment, this index is -1.

inputAttachments

A list of indices into the framebuffer attachments for input attachments.

obj

The ResourceId of the render pass.

class renderdoc.VK_Scissor

Describes a single Vulkan scissor region.

height

The height of the scissor region.

width

The width of the scissor region.

x

The X co-ordinate of the scissor region.

y

The Y co-ordinate of the scissor region.

class renderdoc.VK_Shader

Describes a Vulkan shader stage.

BindpointMapping

A ShaderBindpointMapping to match ShaderDetails with the bindpoint mapping data.

Object

The ResourceId of the shader module object.

ShaderDetails

A ShaderReflection describing the reflection data for this shader.

customName

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

entryPoint

The name of the entry point in the shader module that is used.

name

The name of the shader module.

specialization

A list of VK_SpecInfo with the provided specialization constants.

stage

A VK_ShaderStage identifying which stage this shader is bound to.

class renderdoc.VK_SpecInfo

The provided value for a specialization constant.

data

A bytes with the contents of the constant.

specID

The specialization ID

class renderdoc.VK_StencilFace

Describes the details of a Vulkan 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.

compareMask

The mask for testing stencil values.

ref

The current stencil reference value.

writeMask

The mask for writing stencil values.

class renderdoc.VK_Tessellation

Describes the state of the fixed-function tessellator.

numControlPoints

The number of control points in each input patch.

class renderdoc.VK_VB

Describes a single Vulkan 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.

class renderdoc.VK_VertexAttribute

Describes the configuration of a single vertex attribute.

binding

The vertex binding where data will be sourced from.

byteoffset

The byte offset from the start of each vertex data in the binding to this attribute.

format

The ResourceFormat describing how each input element will be interpreted.

location

The location in the shader that is bound to this attribute.

class renderdoc.VK_VertexBinding

Describes a vertex binding.

bytestride

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

perInstance

True if the vertex data is instance-rate.

vbufferBinding

The vertex binding where data will be sourced from.

class renderdoc.VK_VertexInput

Describes the fixed-function vertex input fetch setup.

attrs

A list of VK_VertexAttribute with the vertex attributes.

binds

A list of VK_VertexBinding with the vertex bindings.

vbuffers

A list of VK_VB with the vertex buffers.

class renderdoc.VK_ViewState

Describes the view state in the pipeline.

viewportScissors

A list of VK_ViewportScissor.

class renderdoc.VK_Viewport

Describes a single Vulkan 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

The X co-ordinate of the viewport.

y

The Y co-ordinate of the viewport.

class renderdoc.VK_ViewportScissor

Describes a combined viewport and scissor region.

scissor

The VK_Scissor.

vp

The VK_Viewport.