Enums and Data Structures

class renderdoc.APIEvent

An individual API-level event, generally corresponds one-to-one with an API call.

callstack

A list of addresses in the CPU callstack where this function was called.

eventDesc

A raw debug string with the serialised form of the function call parameters.

eventID

The API event’s Event ID (EID).

This is a 1-based count of API events in the capture. The EID is used as a reference point in many places in the API to represent where in the capture the ‘current state’ is, and to perform analysis in reference to the state at a particular point in the frame.

EIDs are always increasing and positive, but they may not be contiguous - in some circumstances there may be gaps if some events are consumed entirely internally, such as debug marker pops which only modify the internal drawcall tree structures.

Also EIDs may not correspond directly to an actual function call - sometimes a function such as a multi draw indirect will be one function call that expands to multiple events to allow inspection of results part way through the multi draw.

fileOffset

A byte offset in the data stream where this event happens.

Note

This should only be used as a relative measure, it is not a literal number of bytes from the start of the file on disk.

class renderdoc.APIProperties

Gives some API-specific information about the capture.

degraded

True if the capture was loaded successfully but running in a degraded mode - e.g. with software rendering, or with some functionality disabled due to lack of support.

localRenderer

The GraphicsAPI used to render the log. For remote replay this could be different to the above, and lets the UI make decisions e.g. to flip rendering of images.

pipelineType

The GraphicsAPI of the actual log/capture.

class renderdoc.AddressMode

A texture addressing mode in a single direction (U,V or W).

Wrap

The texture is tiled at every multiple of 1.0.

Mirror

The texture is tiled as with Wrap, but with the absolute value of the texture co-ordinate.

MirrorOnce

The texture is mirrored with Mirror, but the texture does not tile as with ClampEdge.

ClampEdge

The texture is clamped to the range of [0.0, 1.0] and the texture value at each end used.

ClampBorder

The texture is clamped such that texture co-ordinates outside the range of [0.0, 1.0] are set to the border colour specified in the sampler.

class renderdoc.AlphaMapping

What to do with the alpha channel from a texture while saving out to a file.

Discard

Completely discard the alpha channel and only write RGB t othe file.

BlendToColor

Blend to the primary background color using alpha.

BlendToCheckerboard

Blend to a checkerboard pattern with the primary and secondary background colors.

Preserve

Preserve the alpha channel and save it to the file by itself.

This is only valid for file formats that support alpha channels.

class renderdoc.BindType

The type of a shader resource bind.

Unknown

An unknown type of binding.

ConstantBuffer

A constant or uniform buffer.

Sampler

A separate sampler object.

ImageSampler

A combined image and sampler object.

ReadOnlyImage

An image that can only be sampled from.

ReadWriteImage

An image that can be read from and written to arbitrarily.

ReadOnlyTBuffer

A texture buffer that can only be read from.

ReadWriteTBuffer

A texture buffer that can be read from and written to arbitrarily.

ReadOnlyBuffer

A buffer that can only be read from, distinct from ConstantBuffer.

ReadWriteBuffer

A buffer that can be read from and written to arbitrarily.

InputAttachment

An input attachment for reading from the target currently being written.

class renderdoc.BindpointMap

Declares the binding information for a single resource binding.

See ShaderBindpointMapping for how this mapping works in detail.

arraySize

If this is an arrayed binding, the number of elements in the array.

bind

The binding index.

bindset

The binding set.

used

True if the shader actually uses this resource, otherwise it’s declared but unused.

class renderdoc.BlendMultiplier

A multiplier on one component in the blend equation.

Note

The “source” value is the value written out by the shader.

The “second source” value is provided when dual source blending is used.

The “destination” value is the value in the target being blended to.

These values are combined using a given blend operation, see BlendOp.

Where a color is referenced, the value depends on where the multiplier appears in the blend equation. If it is a multiplier on the color component then it refers to the color component. If it is a multiplier on the alpha component then it refers to the alpha component.

If alpha is referenced explicitly it always refers to alpha, in both color and alpha equations.

Zero

The literal value 0.0.

One

The literal value 1.0.

SrcCol

The source value’s color.

InvSrcCol

1.0 minus the source value’s color.

DstCol

The destination value’s color.

InvDstCol

1.0 minus the destination value’s color.

SrcAlpha

The source value’s alpha.

InvSrcAlpha

1.0 minus the source value’s alpha.

DstAlpha

The destination value’s alpha.

InvDstAlpha

1.0 minus the destination value’s alpha.

SrcAlphaSat

The lowest value of SrcAlpha and InvDstAlpha. If used in the alpha equation, it takes the value One.

FactorRGB

The colour components of the fixed blend factor constant.

InvFactorRGB

1.0 minus the colour components of the fixed blend factor constant.

FactorAlpha

The alpha component of the fixed blend factor constant.

InvFactorAlpha

1.0 minus the alpha components of the fixed blend factor constant.

Src1Col

The second source value’s color.

InvSrc1Col

1.0 minus the second source value’s color.

Src1Alpha

The second source value’s alpha.

InvSrc1Alpha

1.0 minus the second source value’s alpha.

class renderdoc.BlendOp

A blending operation to apply in colour blending.

Note

The “source” value is the value written out by the shader.

The “destination” value is the value in the target being blended to.

These values are multiplied by a given blend factor, see BlendMultiplier.

Add

Add the two values being processed together.

Subtract

Subtract the destination value from the source value.

ReversedSubtract

Subtract the source value from the destination value.

Minimum

The minimum of the source and destination value.

Maximum

The maximum of the source and destination value.

class renderdoc.BlendStats

Contains the statistics for blend state binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

redundants

How many calls made no change due to the existing bind being identical.

sets

How many objects were bound.

class renderdoc.BucketRecordType

The type of bucketing method for recording statistics.

Linear

Each bucket contains a fixed number of elements. The highest bucket also accumulates any values too high for any of the buckets.

Pow2

Each bucket holds twice as many elements as the previous one, with the first bucket containing just 1 (bucket index is log2(value)).

class renderdoc.BufferCategory

A set of flags describing how this buffer may be used

NoFlags

The buffer will not be used for any of the uses below.

Vertex

The buffer will be used for sourcing vertex input data.

Index

The buffer will be used for sourcing primitive index data.

Constants

The buffer will be used for sourcing shader constant data.

ReadWrite

The buffer will be used for read and write access from shaders.

Indirect

The buffer will be used to provide indirect parameters for launching GPU-based drawcalls.

class renderdoc.BufferDescription

A description of a buffer resource.

ID

The unique ResourceId that identifies this buffer.

creationFlags

The way this buffer will be used in the pipeline.

customName

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

length

The byte length of the buffer.

name

The name given to this buffer.

class renderdoc.BusyData

Information about why the target is busy.

ClientName

The name of the client currently connected to the target.

class renderdoc.CaptureOptions

Sets up configuration and options for optional features either at capture time or at API initialisation time that the user can enable or disable at will.

APIValidation

Record API debugging events and messages

Default - disabled

True - Enable built-in API debugging features and records the results into the capture logfile, which is matched up with events on replay.

False - no API debugging is forcibly enabled.

AllowFullscreen

Allow the application to enable fullscreen.

Default - enabled

True - The application can enable or disable fullscreen at will.

False - fullscreen is force disabled.

AllowVSync

Allow the application to enable vsync.

Default - enabled

True - The application can enable or disable vsync at will.

False - vsync is force disabled.

CaptureAllCmdLists

In APIs that allow for the recording of command lists to be replayed later, RenderDoc may choose to not capture command lists before a frame capture is triggered, to reduce overheads. This means any command lists recorded once and replayed many times will not be available and may cause a failure to capture.

Note

This is only true for APIs where multithreading is difficult or discouraged. Newer APIs like Vulkan and D3D12 will ignore this option and always capture all command lists since the API is heavily oriented around it and the overheads have been reduced by API design.

True - All command lists are captured from the start of the application.

False - Command lists are only captured if their recording begins during the period when a frame capture is in progress.

CaptureCallstacks

Capture CPU callstacks for API events

Default - disabled

True - Enables capturing of callstacks.

False - no callstacks are captured.

CaptureCallstacksOnlyDraws

When capturing CPU callstacks, only capture them from drawcalls. This option does nothing if CaptureCallstacks is not enabled.

Default - disabled

True - Only captures callstacks for drawcall type API events.

False - Callstacks, if enabled, are captured for every event.

DebugOutputMute

Mute API debugging output when the API validation mode option is enabled.

Default - enabled

True - Mute any API debug messages from being displayed or passed through.

False - API debugging is displayed as normal.

DelayForDebugger

Specify a delay in seconds to wait for a debugger to attach, after creating or injecting into a process, before continuing to allow it to run.

0 indicates no delay, and the process will run immediately after injection.

Default - 0 seconds

HookIntoChildren

Hooks any system API calls that create child processes, and injects RenderDoc into them recursively with the same options.

Default - disabled

True - Hooks into spawned child processes.

False - Child processes are not hooked by RenderDoc.

RefAllResources

By default RenderDoc only includes resources in the final logfile necessary for that frame, this allows you to override that behaviour.

Default - disabled

True - all live resources at the time of capture are included in the log and available for inspection.

False - only the resources referenced by the captured frame are included.

SaveAllInitials

By default RenderDoc skips saving initial states for resources where the previous contents don’t appear to be used, assuming that writes before reads indicate previous contents aren’t used.

Default - disabled

True - initial contents at the start of each captured frame are saved, even if
they are later overwritten or cleared before being used.
False - unless a read is detected, initial contents will not be saved and will
appear as black or empty data.
VerifyMapWrites

Verify any writes to mapped buffers, by checking the memory after the bounds of the returned pointer to detect any modification.

Default - disabled

True - Verify any writes to mapped buffers.

False - No verification is performed, and overwriting bounds may cause crashes or corruption in RenderDoc.

class renderdoc.CompType

Represents the component type of a channel in a texture or element in a structure.

Typeless

A component that has no concrete type.

Float

A single-precision (32-bit) floating point value. This is an IEEE float with 1 sign bit, 8 bits of exponent and 23 bits of mantissa.

UNorm

An unsigned normalised floating point value. This is converted by dividing the input value by the maximum representable unsigned integer value, to produce a value in the range [0, 1]

SNorm

A signed normalised floating point value in range. This is converted by dividing the input value by the maximum representable positive signed integer value, to produce a value in the range [-1, 1]. As a special case, the maximum negative signed integer is also mapped to -1 so there are two representations of -1. This means there is only one 0 value and that there is the same range of available values for positive and negative values.

For example, signed 16-bit integers range from -32768 to +32767. -32768 is mapped to -1, and then any other value is divided by 32767 giving an equal set of values in the range [-1, 0] as in the range [0, 1].

UInt

An unsigned integer value.

SInt

A signed integer value.

UScaled

An unsigned scaled floating point value. This is converted from the input unsigned integer without any normalisation as with UNorm, so the resulting values range from 0 to the maximum unsigned integer value 2^N - 1.

SScaled

A signed scaled floating point value. This is converted from the input unsigned integer without any normalisation as with SNorm, so the resulting values range from the minimum signed integer value -2^(N-1) to the maximum signed integer value 2^(N-1) - 1.

Depth

An opaque value storing depth information, either unsigned normalised or floating point.

Double

A double-precision (64-bit) floating point value.

class renderdoc.CompareFunc

A comparison function to return a bool result from two inputs A and B.

Never

False

AlwaysTrue

True

Less

A < B

LessEqual

A <= B

Greater

A > B

GreaterEqual

A >= B

Equal

A == B

NotEqual

A != B

class renderdoc.ConstantBindStats

Contains the statistics for constant binds in a frame.

BucketType

The type of buckets being used. See BucketRecordType.

BucketCount

How many buckets there are in the arrays.

bindslots

A list where the Nth element contains the number of calls that bound N buffers.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

sizes

A bucketed list over the sizes of buffers bound.

class renderdoc.ConstantBlock

Contains the information for a block of constant values. The values are not present, only the metadata about how the variables are stored in memory itself and their type/name information.

bindPoint

The bindpoint for this block. This is an index in the ShaderBindpointMapping.ConstantBlocks list.

bufferBacked

True if the contents are stored in a buffer of memory. If not then they are set by some other API-specific method, such as direct function calls or they may be compile-time specialisation constants.

byteSize

The total number of bytes consumed by all of the constants contained in this block.

name

The name of this constant block, may be empty on some APIs.

variables

The constants contained within this block as a list of ShaderConstant.

class renderdoc.CounterDescription

Describes a GPU counter’s purpose and result value.

counterID

The GPUCounter this counter represents.

Note

The value may not correspond to any of the predefined values if it’s a hardware-specific counter value.

description

If available, a longer human-readable description of the value this counter measures.

name

A short human-readable name for the counter.

resultByteWidth

The number of bytes in the resulting value.

resultType

The type of value returned by this counter.

unit

The CounterUnit for the result value.

class renderdoc.CounterResult

The resulting value from a counter at an event.

counterID

The counter that produced this value.

eventID

The EID that produced this value.

value

The value itself.

class renderdoc.CounterUnit

The unit that GPU counter data is returned in.

Absolute

The value is an absolute value and should be interpreted as unitless.

Seconds

The value is a duration in seconds.

Percentage

The value is a floating point percentage value between 0.0 and 1.0.

class renderdoc.CounterValue

A resulting value from a GPU counter. Only one member is valid, see CounterDescription.

d

A double value.

f

A float value.

u32

A 32-bit unsigned integer.

u64

A 64-bit unsigned integer.

class renderdoc.CullMode

The culling mode for polygons.

NoCull

No polygon culling is performed.

Front

Front-facing polygons are culled.

Back

Back-facing polygons are culled.

FrontAndBack

Both front-facing and back-facing polygons are culled.

class renderdoc.D3DBufferViewFlags

A set of flags for D3D buffer view properties.

NoFlags

The buffer will not be used for any of the uses below.

Raw

The buffer is used as a raw (byte-addressed) buffer.

Append

The buffer is used as a append/consume view.

Counter

The buffer is used with a structured buffer with associated hidden counter.

class renderdoc.DebugMessage

A debugging message from the API validation or internal analysis and error detection.

category

The category of this debug message.

description

The string contents of the message.

eventID

The EID where this debug message was found.

messageID

An ID that identifies this particular debug message uniquely.

severity

The severity of this debug message.

source

The source of this debug message.

class renderdoc.DebugOverlay

The type of overlay image to render on top of an existing texture view, for debugging purposes.

In overlays that refer to the ‘current pass’, for any API that does not have an explicit notion of a render pass, it is defined as all previous drawcalls that render to the same set of render targets. Note that this is defined independently from any marker regions.

See the documentation for this feature.

NoOverlay

No overlay should be rendered.

Drawcall

An overlay highlighting the area rasterized by the drawcall on screen, no matter what tests or processes may be discarding the pixels actually rendered.

The rest of the image should be dimmed slightly to make the draw on screen clearer.

Wireframe

Similar to the Drawcall overlay, this should render over the top of the image, but showing the wireframe of the object instead of a solid render.

Depth

This overlay shows pixels from the object that passed all depth tests in green, and pixels that failed any depth test in red.

If some pixel is overwritten more than once by the object, if any of the samples passed the result will be green (i.e. the failure overlay is conservative).

Stencil

This overlay shows pixels from the object that passed all stencil tests in green, and pixels that failed any stencil test in red.

If some pixel is overwritten more than once by the object, if any of the samples passed the result will be green (i.e. the failure overlay is conservative).

BackfaceCull

This overlay shows pixels from the object that passed backface culling in green, and pixels that were backface culled in red.

If some pixel is overwritten more than once by the object, if any of the samples passed the result will be green (i.e. the failure overlay is conservative).

ViewportScissor

This overlay shows a rectangle on screen corresponding to both the current viewport, and if enabled the current scissor as well.

NaN

This overlay renders the image in greyscale using a simple luminosity calculation, then highlights any pixels that are NaN in red, any that are positive or negative infinity in green, and any that are negative in blue.

Clipping

This overlay renders the image in greyscale using a simple luminosity calculation, then highlights any pixels that are currently above the white point in green and any pixels that are below the black point in red.

This is relative to the current black and white points used to display the texture.

ClearBeforePass

This overlay clears the bound render targets before the current pass, allowing you to see only the contribution from the current pass.

Note only color targets are cleared, depth-stencil targets are unchanged so any depth or stencil tests will still pass or fail in the same way.

ClearBeforeDraw

This is the same as the ClearBeforePass overlay, except it clears before the current drawcall, not the current pass.

QuadOverdrawPass

This overlay shows pixel overdraw using 2x2 rasterized quad granularity instead of single-pixel overdraw. This represents the number of times the pixel shader was invoked along triangle edges even if each pixel is only overdrawn once.

The overlay accounts for all draws in the current pass.

QuadOverdrawDraw

This is the same as the QuadOverdrawPass overlay, except it only shows the overdraw for the current drawcall, not the current pass.

TriangleSizePass

This overlay shows the size of each triangle, starting from triangles with area 16 (4x4) and above at the lower end to triangles with area 0.125 (1/8th pixel) at the upper end.

The overlay accounts for all draws in the current pass.

TriangleSizeDraw

This is similar to the TriangleSizePass overlay, except it only shows the triangle size for the current drawcall, not the current pass.

class renderdoc.DepthStencilStats

Contains the statistics for depth stencil state binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

redundants

How many calls made no change due to the existing bind being identical.

sets

How many objects were bound.

class renderdoc.DispatchStats

Contains the statistics for compute dispatches in a frame.

calls

How many dispatch calls were made.

indirect

How many of calls were indirect.

class renderdoc.DoubleVecVal

A double 4 component vector.

w

The w component.

x

The x component.

y

The y component.

z

The z component.

class renderdoc.DrawFlags

A set of flags describing the properties of a particular drawcall.

NoFlags

The drawcall has no special properties.

Clear

The drawcall is a clear call. See ClearColor and ClearDepthStencil.

Drawcall

The drawcall renders primitives using the graphics pipeline.

Dispatch

The drawcall issues a number of compute workgroups.

CmdList

The drawcall calls into a previously recorded child command list.

SetMarker

The drawcall inserts a single debugging marker.

PushMarker

The drawcall begins a debugging marker region that has children.

PopMarker

The drawcall ends a debugging marker region.

Note

Drawcalls with this flag will not be exposed and it is only used internally for tracking markers.

Present

The drawcall is a presentation call that hands a swapchain image to the presentation engine.

MultiDraw

The drawcall is a multi-draw that contains several specified child draws.

Copy

The drawcall performs a resource copy operation.

Resolve

The drawcall performs a resource resolve or blit operation.

GenMips

The drawcall performs a resource mip-generation operation.

PassBoundary

The drawcall marks the beginning or end of a render pass. See BeginPass and EndPass.

UseIBuffer

The drawcall uses an index buffer.

Instanced

The drawcall uses instancing. This does not mean it renders more than one instanced, simply that it uses the instancing feature.

Auto

The drawcall interacts with stream-out to render all vertices previously written. This is a Direct3D 11 specific feature.

Indirect

The drawcall uses a buffer on the GPU to source some or all of its parameters in an indirect way.

ClearColor

The drawcall clears a colour target.

ClearDepthStencil

The drawcall clears a depth-stencil target.

BeginPass

The drawcall marks the beginning of a render pass.

EndPass

The drawcall marks the end of a render pass.

APICalls

The drawcall does not contain any work directly, but is a ‘virtual’ draw inserted to encompass non-draw API calls that happened within a region, so they are included within the region where they occurred and not grouped into the next drawcall outside that region.

class renderdoc.DrawcallDescription

Describes the properties of a drawcall, dispatch, debug marker, or similar event.

Reset()

Resets the drawcall back to a default/empty state.

baseVertex

For indexed drawcalls, the offset added to each index after fetching.

children

A list of DrawcallDescription child drawcalls.

copyDestination

The ResourceId identifying the destination object in a copy, resolve or blit operation.

copySource

The ResourceId identifying the source object in a copy, resolve or blit operation.

depthOut

The resource used for depth output - see outputs.

dispatchDimension

The 3D number of workgroups to dispatch in a dispatch call.

dispatchThreadsDimension

The 3D size of each workgroup in threads if the call allows an override, or 0 if not.

drawcallID

A 1-based index of this drawcall relative to other drawcalls.

eventID

The EID that actually produced the drawcall.

events

A list of the APIEvent events that happened since the previous drawcall.

flags

A set of DrawFlags properties describing what kind of drawcall this is.

indexByteWidth

The width in bytes of each index.

Valid values are 1 (depending on API), 2 or 4, or 0 if the drawcall is not an indexed draw.

indexOffset

For indexed drawcalls, the first index to fetch from the index buffer.

instanceOffset

For instanced drawcalls, the offset applied before looking up instanced vertex inputs.

markerColor

A RGBA colour specified by a debug marker call.

name

The name of this drawcall. Typically a summarised/concise list of parameters.

Note

For drawcalls, the convention is to list primary parameters (vertex/index count, instance count) and omit secondary parameters (vertex offset, instance offset).

next

The EID of the next drawcall in the frame, or 0 if this is the last drawcall in the frame.

numIndices

The number of indices or vertices as appropriate for the drawcall. 0 if not used.

numInstances

The number of instances for the drawcall. 0 if not used.

outputs

A simple list of the ResourceId ids for the colour outputs, which can be used for very coarse bucketing of drawcalls into similar passes by their outputs.

parent

The EID of the parent of this drawcall, or 0 if there is no parent for this drawcall.

previous

The EID of the previous drawcall in the frame, or 0 if this is the first drawcall in the frame.

topology

The Topology used in this drawcall.

vertexOffset

For non-indexed drawcalls, the offset applied before looking up each vertex input.

class renderdoc.DrawcallStats

Contains the statistics for draws in a frame.

BucketType

The type of buckets being used. See BucketRecordType.

BucketSize

How many elements each bucket contains.

BucketCount

How many buckets there are in the arrays.

calls

How many draw calls were made.

counts

A bucketed list over the number of instances in the draw.

indirect

How many of calls were indirect.

instanced

How many of calls were instanced.

class renderdoc.EnvMod

How to modify an environment variable.

Set

Set the variable to the given value.

Append

Add the given value to the end of the variable, using the separator.

Prepend

Add the given value to the start of the variable, using the separator.

class renderdoc.EnvSep

The separator to use if needed when modifying an environment variable.

Platform

Use the character appropriate for separating items on the platform.

On Windows this means the semi-colon ; character will be used, on posix systems the colon : character will be used.

SemiColon

Use a semi-colon ; character.

Colon

Use a colon : character.

NoSep

No separator will be used.

class renderdoc.EnvironmentModification

A modification to a single environment variable.

mod

The modification to use.

name

The name of the environment variable.

sep

The separator to use if needed.

value

The value to use with the modification specified in mod.

class renderdoc.EventUsage

Describes a particular use of a resource at a specific EID.

eventID

The EID where this usage happened.

usage

The ResourceUsage in question.

view

An optional ResourceId identifying the view through which the use happened.

class renderdoc.FileType

The format of an image file

DDS

A DDS file

PNG

A PNG file

JPG

A JPG file

BMP

A BMP file

TGA

A TGA file

HDR

An HDR file

EXR

An EXR file

class renderdoc.FillMode

The fill mode for polygons.

Solid

Polygons are filled in and rasterized solidly.

Wireframe

Polygons are rendered only with lines along their edges, forming a wireframe.

Point

Only the points at the polygons vertices are rendered.

class renderdoc.FilterFunc

The function used to process the returned value after interpolation.

Normal

No special processing is used, the value is returned directly to the shader.

Comparison

The value from interpolation is compared to a reference value and the comparison result is returned to the shader.

Minimum

Instead of interpolating between sample points to retrieve an interpolated value, a min filter is used instead to find the minimum sample value.

Texels that were weight to 0 during interpolation are not included in the min function.

Maximum

Instead of interpolating between sample points to retrieve an interpolated value, a max filter is used instead to find the maximum sample value.

Texels that were weight to 0 during interpolation are not included in the max function.

class renderdoc.FilterMode

The texture filtering mode for a given direction (minification, magnification, or between mips).

NoFilter

No filtering - this direction is disabled or there is no sampler.

Point

Point or nearest filtering - the closest pixel or mip level to the sample location is used.

Linear

Linear filtering - a linear interpolation happens between the pixels or mips on either side of the sample location in each direction.

Cubic

Similar to linear filtering but with a cubic curve used for interpolation instead of linear.

Anisotropic

This sampler is using anisotropic filtering.

class renderdoc.FloatVecVal

A float 4 component vector.

w

The w component.

x

The x component.

y

The y component.

z

The z component.

class renderdoc.FloatVector

A floating point four-component vector

w

The w component.

x

The x component.

y

The y component.

z

The z component.

class renderdoc.FrameDescription

Contains frame-level global information

captureTime

The time when the capture was created, as a unix timestamp in UTC.

compressedFileSize

The total file size of the whole capture in bytes, before decompression.

debugMessages

A list of debug messages that are not associated with any particular event.

fileOffset

The offset into the file of the start of the frame.

Note

Similarly to APIEvent.fileOffset this should only be used as a relative measure, as it is not a literal number of bytes from the start of the file on disk.

frameNumber

Starting from frame #1 defined as the time from application startup to first present, this counts the frame number when the capture was made.

Note

This value is only accurate if the capture was triggered through the default mechanism, if it was triggered from the application API it doesn’t correspond to anything.

initDataSize

The byte size of the section of the file that contains frame-initial contents.

persistentSize

The byte size of the section of the file that must be kept in memory persistently.

stats

The frame statistics.

uncompressedFileSize

The total file size of the whole capture in bytes, after decompression.

class renderdoc.FrameStatistics

Contains all the available statistics about the captured frame.

Currently this information is only available on D3D11 and is fairly API-centric.

blends

Information about blend state binds.

constants

A list of constant buffer bind statistics, one per each stage.

depths

Information about depth-stencil state binds.

dispatches

Information about compute dispatches.

draws

Information about drawcalls.

indices

Information about index buffer binds.

layouts

Information about vertex layout binds.

outputs

Information about output merger and UAV binds.

rasters

Information about rasterizer state binds.

recorded

True if the statistics in this structure are valid.

resources

A list of resource bind statistics, one per each stage.

samplers

A list of sampler bind statistics, one per each stage.

shaders

A list of shader bind statistics, one per each stage.

updates

Information about resource contents updates.

vertices

Information about vertex buffer binds.

class renderdoc.GPUCounter

Pre-defined GPU counters that can be supported by a given implementation.

GPU counters actually available can be queried by ReplayController.EnumerateCounters(). If any in this list are supported they will be returned with these counter IDs. More counters may be enumerated with IDs in the appropriate ranges.

EventGPUDuration

Time taken for this event on the GPU, as measured by delta between two GPU timestamps.

InputVerticesRead

Number of vertices read by input assembler.

IAPrimitives

Number of primitives read by the input assembler.

GSPrimitives

Number of primitives output by a geometry shader.

RasterizerInvocations

Number of primitives that were sent to the rasterizer.

RasterizedPrimitives

Number of primitives that were rendered.

SamplesWritten

Number of samples that passed depth/stencil test.

VSInvocations

Number of times a vertex shader was invoked.

HSInvocations

Number of times a hull shader was invoked.

TCSInvocations

Number of times a tessellation control shader was invoked.

DSInvocations

Number of times a domain shader was invoked.

TESInvocations

Number of times a tessellation evaluation shader was invoked.

GSInvocations

Number of times a domain shader was invoked.

PSInvocations

Number of times a pixel shader was invoked.

FSInvocations

Number of times a fragment shader was invoked.

CSInvocations

Number of times a compute shader was invoked.

FirstAMD

The AMD-specific counter IDs start from this value.

FirstIntel

The Intel-specific counter IDs start from this value.

FirstNvidia

The nVidia-specific counter IDs start from this value.

class renderdoc.GraphicsAPI

Identifies a Graphics API.

D3D11

Direct3D 11.

D3D12

Direct3D 12.

OpenGL

OpenGL.

Vulkan

Vulkan.

class renderdoc.IndexBindStats

Contains the statistics for index buffer binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

class renderdoc.IntVecVal

A 32-bit signed int 4 component vector.

w

The w component.

x

The x component.

y

The y component.

z

The z component.

class renderdoc.LayoutBindStats

Contains the statistics for vertex layout binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

class renderdoc.LogType

The type of a log message

Debug

The log message is a verbose debug-only message that can be discarded in release builds.

Comment

The log message is informational.

Warning

The log message describes a warning that could indicate a problem or be useful in diagnostics.

Error

The log message indicates an error was encountered.

Fatal

The log message indicates a fatal error occurred which is impossible to recover from.

class renderdoc.LogicOp

A logical operation to apply when writing texture values to an output.

Note

The “source” value is the value written out by the shader.

The “destination” value is the value in the target being written to.

NoOp

No operation is performed, the destination is unmodified.

Clear

A 0 in every bit.

Set

A 1 in every bit.

Copy

The contents of the source value.

CopyInverted

The contents of the source value are bitwise inverted.

Invert

The contents of the destination value are bitwise inverted, then written.

And

The source and destination values are combined with the bitwise AND operator.

Nand

The source and destination values are combined with the bitwise NAND operator.

Or

The source and destination values are combined with the bitwise OR operator.

Xor

The source and destination values are combined with the bitwise XOR operator.

Nor

The source and destination values are combined with the bitwise NOR operator.

Equivalent

The source and destination values are combined with the logical equivalence operator, defined as NOT (s XOR d).

AndReverse

The source and inverted destination values are combined with the bitwise AND operator - i.e. s AND (NOT d).

AndInverted

The inverted source and destination values are combined with the bitwise AND operator - i.e. (NOT s) AND d.

OrReverse

The source and inverted destination values are combined with the bitwise OR operator - i.e. s OR (NOT d).

OrInverted

The inverted source and destination values are combined with the bitwise OR operator - i.e. (NOT s) OR d.

class renderdoc.MeshDataStage

Describes a particular stage in the geometry transformation pipeline.

Unknown

Unknown or invalid stage.

VSIn

The inputs to the vertex shader described by the explicit API vertex input bindings.

VSOut

The outputs from the vertex shader corresponding one-to-one to the input elements.

GSOut

The final output from the last stage in the pipeline, be that tessellation or geometry shader.

This has possibly been expanded/multiplied from the inputs

class renderdoc.MeshDisplay

Describes how to render a mesh preview of one or more meshes. Describes the camera configuration as well as what options to use when rendering both the current mesh, and any other auxilliary meshes.

NoHighlight

Value for highlightVert if no vertex should be highlighted.

aspect

The aspect ratio to use when calculating a perspective projection matrix.

cam

The Camera to use when rendering all of the meshes.

curInstance

The index of the currently selected instance in the drawcall.

fov

The field of view to use when calculating a perspective projection matrix.

highlightVert

The index of the vertex to highlight, or NoHighlight to select no vertex.

maxBounds

The maximum co-ordinates in each axis of the mesh bounding box.

minBounds

The minimum co-ordinates in each axis of the mesh bounding box.

ortho

True if the projection matrix to use when unprojecting vertex positions is orthographic.

position

The MeshFormat of the position data for the mesh.

second

The MeshFormat of the secondary data for the mesh, if used for solid shading.

showAllInstances

True if all instances in the drawcall should be drawn as secondary meshes.

showBBox

True if the bounding box around the mesh should be rendered.

showPrevInstances

True if all previous instances in the drawcall should be drawn as secondary meshes.

showWholePass

True if all draws in the current pass up to the current draw should be drawn as secondary meshes.

solidShadeMode

The solid shading mode to use when rendering the current mesh.

type

The MeshDataStage where this mesh data comes from.

wireframeDraw

True if the wireframe of the mesh should be rendered as well as solid shading.

class renderdoc.MeshFormat

Contains the details of a single element of data (such as position or texture co-ordinates) within a mesh.

baseVertex

For indexed meshes, a value added to each index before using it to read the vertex.

bgraOrder

True if the components are to be read in BGRA order.

buf

The ResourceId of the vertex buffer containing this mesh element.

compByteWidth

The width in bytes of each component.

compCount

The number of components in each vertex.

compType

The type of each component.

farPlane

The far plane for the projection matrix.

idxByteWidth

The width in bytes of each index. Valid values are 1 (depending on API), 2 or 4.

idxbuf

The ResourceId of the index buffer that goes with this mesh element.

idxoffs

The offset in bytes where the indices start in idxbuf.

meshColor

The color to use for rendering the wireframe of this mesh element, as a FloatVector.

nearPlane

The near plane for the projection matrix.

numVerts

The number of vertices in the mesh.

offset

The offset in bytes to the start of the vertex data.

showAlpha

True if the alpha component of this element should be used.

specialFormat

If the component is in a non-uniform format, contains the SpecialFormat that describes it.

stride

The stride in bytes between the start of one vertex and the start of another.

topo

The Topology that describes the primitives in this mesh.

unproject

True if this mesh element contains post-projection positional data.

class renderdoc.MessageCategory

The type of issue that a debug message is about.

Application_Defined

This message was generated by the application.

Miscellaneous

This message doesn’t fall into any other pre-defined category.

Initialization

This message is about initialisation or creation of objects.

Cleanup

This message is about cleanup, destruction or shutdown of objects.

Compilation

This message is about compilation of shaders.

State_Creation

This message is about creating unified state objects.

State_Setting

This message is about changing current pipeline state.

State_Getting

This message is about fetching or retrieving current pipeline state.

Resource_Manipulation

This message is about updating or changing a resource’s properties or contents.

Execution

This message is about performing work.

Shaders

This message is about the use, syntax, binding or linkage of shaders.

Deprecated

This message is about the use of deprecated functionality.

Undefined

This message is about the use of undefined behaviour.

Portability

This message is about behaviour that could be or is not portable between different environments.

Performance

This message is about performance problems or pitfalls.

class renderdoc.MessageSeverity

How serious a debug message is

High

This message is very serious, indicating a guaranteed problem or major flaw.

Medium

This message is somewhat serious, indicating a problem that should be addressed or investigated.

Low

This message is not very serious. This indicates something that might indicate a problem.

Info

This message is not about a problem but is purely informational.

class renderdoc.MessageSource

Where a debug message was reported from

API

This message comes from the API’s debugging or validation layers.

RedundantAPIUse

This message comes from detecting redundant API calls - calls with no side-effect or purpose, e.g. setting state that is already set.

IncorrectAPIUse

This message comes from detecting incorrect use of the API.

GeneralPerformance

This message comes from detecting general performance problems that are not hardware or platform specific.

GCNPerformance

This message comes from detecting patterns that will cause performance problems on GCN-based hardware.

RuntimeWarning

This message comes not from inspecting the log but something detected at runtime while in use, for example exceptions generated during shader debugging.

UnsupportedConfiguration

This message comes from replaying a capture in an environment with insufficient capability to accurately reproduce the API work. Either this means the replay will be wrong, or it may be that depending on the exact API work some inaccuracies might happen.

class renderdoc.ModificationValue

The value of pixel output at a particular event.

col

The colour value.

depth

The depth output, as a float.

stencil

The stencil output, or -1 if not available.

class renderdoc.NewCaptureData

Information about the a new capture created by the target.

ID

An identifier to use to refer to this capture.

local

True if the target is running on the local system.

path

The local path on the target system where the capture is saved.

thumbnail

The raw bytes that contain the capture thumbnail, as a JPG.

timestamp

The time the capture was created, as a unix timestamp in UTC.

class renderdoc.NewChildData

Information about a new child process spawned by the target.

PID

The PID (Process ID) of the new child.

ident

The ident where the new child’s target control is active.

class renderdoc.OutputTargetStats

Contains the statistics for output merger or UAV binds in a frame.

bindslots

A list where the Nth element contains the number of calls that bound N targets.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

class renderdoc.PathEntry

Properties of a path on a remote filesystem.

filename

The filename of this path. This contains only the filename, not the full path.

flags

The PathProperty flags for this path.

lastmod

The last modified date of this path, as a unix timestamp in UTC.

size

The size of the path in bytes.

class renderdoc.PathProperty

A set of flags describing the properties of a path on a remote filesystem.

NoFlags

No special file properties.

Directory

This file is a directory or folder.

Hidden

This file is considered hidden by the filesystem.

Executable

This file has been identified as an executable program or script.

ErrorUnknown

A special flag indicating that a query for this file failed, but for unknown reasons.

ErrorAccessDenied

A special flag indicating that a query for this file failed because access to the path was denied.

ErrorInvalidPath

A special flag indicating that a query for this file failed because the path was invalid.

class renderdoc.PixelModification

An attempt to modify a pixel by a particular event.

backfaceCulled

True if the backface culling test eliminated this fragment.

depthClipped

True if depth near/far clipping eliminated this fragment.

depthTestFailed

True if depth testing eliminated this fragment.

directShaderWrite

True if this event came as part of an arbitrary shader write.

eventID

The EID where the modification happened.

fragIndex

A 0-based index of which fragment this modification corresponds to, in the case that multiple fragments from a single draw wrote to a pixel.

passed()

Determine if this fragment passed all tests and wrote to the texture.

Returns:True if it passed all tests, False if it failed any.
Return type:bool
postMod

The ModificationValue of the texture after this fragment ran.

preMod

The ModificationValue of the texture before this fragment ran.

This is valid only for the first fragment if multiple fragments in the same event write to the same pixel.

primitiveID

The primitive that generated this fragment.

sampleMasked

True if the sample mask eliminated this fragment.

scissorClipped

True if scissor clipping eliminated this fragment.

shaderDiscarded

True if the pixel shader executed a discard on this fragment.

shaderOut

The ModificationValue that this fragment wrote from the pixel shader.

stencilTestFailed

True if stencil testing eliminated this fragment.

unboundPS

True if no pixel shader was bound at this event.

viewClipped

True if viewport clipping eliminated this fragment.

class renderdoc.PixelValue

The contents of an RGBA pixel.

value_f

The RGBA value interpreted as float.

value_i

The RGBA value interpreted as 32-bit signed integer.

value_u

The RGBA value interpreted as 32-bit unsigned integer.

value_u16

The RGBA value interpreted as 16-bit unsigned integer.

class renderdoc.QualityHint

An API specific hint for a certain behaviour. A legacy concept in OpenGL that controls hints to the implementation where there is room for interpretation within the range of valid behaviour.

DontCare

The hinted behaviour can follow any valid path as the implementation decides.

Nicest

The hinted behaviour should follow the most correct or highest quality path.

Fastest

The hinted behaviour should follow the most efficient path.

class renderdoc.RasterizationStats

Contains the statistics for rasterizer state binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

rects

A list where the Nth element contains the number of calls that bound N scissor rects.

redundants

How many calls made no change due to the existing bind being identical.

sets

How many objects were bound.

viewports

A list where the Nth element contains the number of calls that bound N viewports.

class renderdoc.RegisterAPIData

Information about the API that the target has begun using.

APIName

The name of the new API.

class renderdoc.ReplayOutputType

The type of ReplayOutput to create

Headless

A headless output that does nothing to display to windows but can still be controlled and queried the same way

Texture

An output that is used for displaying textures, thumbnails and pixel context

Mesh

An output that will display mesh data previews

class renderdoc.ReplayStatus

The status of a high-level replay operation such as opening a capture or connecting to a remote server.

Succeeded

The operation succeeded.

UnknownError

An unknown error occurred.

InternalError

An internal error occurred indicating a bug or unexpected condition.

FileNotFound

The specified file was not found.

InjectionFailed

Injection or hooking into the target process failed.

IncompatibleProcess

An incompatible process was found, e.g. a 32-bit process with 32-bit support not available.

NetworkIOFailed

A network I/O operation failed.

NetworkRemoteBusy

The remote side of the network connection was busy.

NetworkVersionMismatch

The other side of the network connection was not at a compatible version.

FileIOFailed

A filesystem I/O operation failed.

FileIncompatibleVersion

The capture file had an incompatible version.

FileCorrupted

The capture file is corrupted or otherwise unrecognisable.

ImageUnsupported

The image file is recognised but the format is unsupported.

APIUnsupported

The API used in the capture is not supported.

APIInitFailed

The API used in the capture failed to initialise.

APIIncompatibleVersion

The API data in the capture had an incompatible version.

APIHardwareUnsupported

The API is not supported on the currently available hardware.

class renderdoc.ReplaySupport

How supported a given API is on a particular replay instance.

Unsupported

The API is not supported.

Supported

The API is fully supported.

SuggestRemote

The API is supported locally but the capture indicates it was made on a different type of machine so remote replay might be desired.

class renderdoc.ResourceBindStats

Contains the statistics for resource binds in a frame.

bindslots

A list where the Nth element contains the number of calls that bound N resources.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

types

A list with one element for each type in TextureDim.

The Nth element contains the number of times a resource of that type was bound.

class renderdoc.ResourceFormat

Description of the format of a resource or element.

bgraOrder

True if the components are to be read in BGRA order.

compByteWidth

The width in bytes of each component.

compCount

The number of components in each vertex.

compType

The type of each component.

special

True if specialFormat is valid.

specialFormat

The SpecialFormat if it’s a non-uniform layout like block-compressed.

srgbCorrected

True if the components are SRGB corrected on read and write.

strname

The name of the format.

class renderdoc.ResourceId

This is an opaque identifier that uniquely locates a resource.

Note

These IDs do not overlap ever - textures, buffers, shaders and samplers will all have unique IDs and do not reuse the namespace. Likewise the IDs assigned for resources during capture are not re-used on replay - the corresponding resources created on replay to stand-in for capture-time resources are given unique IDs and a mapping is stored to between the capture-time resource and the replay-time one.

static Null()

A helper function that explicitly creates an empty/invalid/null ResourceId.

class renderdoc.ResourceUpdateStats

Contains the statistics for resource updates in a frame.

BucketType

The type of buckets being used. See BucketRecordType.

BucketCount

How many buckets there are in the arrays.

calls

How many function calls were made.

clients

How many of calls were mapped pointers written by the CPU.

servers

How many of calls were batched updates written in the command queue.

sizes

A bucketed list over the number of bytes in the update.

types

A list with one element for each type in TextureDim.

The Nth element contains the number of times a resource of that type was updated.

class renderdoc.ResourceUsage

How a resource is being used in the pipeline at a particular point.

Note that a resource may be used for more than one thing in one event, see EventUsage.

Unused

The resource is not being used.

VertexBuffer

The resource is being used as a fixed-function vertex buffer input.

IndexBuffer

The resource is being used as an index buffer.

VS_Constants

The resource is being used for constants in the vertex shader.

HS_Constants

The resource is being used for constants in the tessellation control or hull shader.

DS_Constants

The resource is being used for constants in the tessellation evaluation or domain shader.

GS_Constants

The resource is being used for constants in the geometry shader.

PS_Constants

The resource is being used for constants in the pixel shader.

CS_Constants

The resource is being used for constants in the compute shader.

All_Constants

The resource is being used for constants in all shader stages.

StreamOut

The resource is being used for stream out/transform feedback storage after geometry processing.

VS_Resource

The resource is being used as a read-only resource in the vertex shader.

HS_Resource

The resource is being used as a read-only resource in the tessellation control or hull shader.

DS_Resource

The resource is being used as a read-only resource in the tessellation evaluation or domain shader.

GS_Resource

The resource is being used as a read-only resource in the geometry shader.

PS_Resource

The resource is being used as a read-only resource in the pixel shader.

CS_Resource

The resource is being used as a read-only resource in the compute shader.

All_Resource

The resource is being used as a read-only resource in all shader stages.

VS_RWResource

The resource is being used as a read-write resource in the vertex shader.

HS_RWResource

The resource is being used as a read-write resource in the tessellation control or hull shader.

DS_RWResource

The resource is being used as a read-write resource in the tessellation evaluation or domain shader.

GS_RWResource

The resource is being used as a read-write resource in the geometry shader.

PS_RWResource

The resource is being used as a read-write resource in the pixel shader.

CS_RWResource

The resource is being used as a read-write resource in the compute shader.

All_RWResource

The resource is being used as a read-write resource in all shader stages.

InputTarget

The resource is being read as an input target for reading from the target currently being written.

ColorTarget

The resource is being written to as a color output.

DepthStencilTarget

The resource is being written to and tested against as a depth-stencil output.

Indirect

The resource is being used for indirect arguments.

Clear

The resource is being cleared

GenMips

The resource is having mips generated for it.

Resolve

The resource is being resolved or blitted, as both source and destination.

ResolveSrc

The resource is being resolved or blitted from.

ResolveDst

The resource is being resolved or blitted to.

Copy

The resource is being copied, as both source and destination.

CopySrc

The resource is being copied from.

CopyDst

The resource is being copied to.

Barrier

The resource is being specified in a barrier, as defined in Vulkan or Direct3D 12.

class renderdoc.SamplerBindStats

Contains the statistics for sampler binds in a frame.

bindslots

A list where the Nth element contains the number of calls that bound N samplers.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

class renderdoc.ShaderBindpointMapping

This structure goes hand in hand with ShaderReflection to determine how to map from bindpoint indices in the resource lists there to API-specific binding points. The bindPoint member in ShaderResource or ConstantBlock refers to an index in these associated lists, which then map potentially sparsely and potentially in different orders to the appropriate API registers, indices, or slots.

API specific details:

  • Direct3D11 - All BindpointMap.bindset values are 0 as D3D11 has no notion of sets, and the only namespacing that exists is by shader stage and object type. Mostly this already exists with the constant block, read only and read write resource lists.

    BindpointMap.arraySize is likewise unused as D3D11 doesn’t have arrayed resource bindings.

    The BindpointMap.bind value corresponds directly to the index in the appropriate resource list.

    One important thing to note is that samplers are included with read only resources. This means consumers wanting to map to API bindpoints should know and expect that the ReadOnlyResources list contains potentially duplicate BindpointMap, with one being a SRV and one a sampler.

    Note that D3D11 currently uses an identity bindpoint mapping, such that the index in the bindpoint array is equal to the register, even if it’s sparse. E.g. textures 0 and 4 will be in bindpoint maps 0 and 4 with three empty unused maps in 1, 2, and 3. This is not contractual and should not be relied upon, in future the bindpoint map may be only two elements that list 0 and 4, with the shader bindpoints then being 0 and 1.

  • OpenGL - Similarly to D3D11, BindpointMap.bindset and BindpointMap.arraySize are unused as OpenGL does not have true binding sets or array resource binds.

    For OpenGL there may be many more duplicate BindpointMap objects as the BindpointMap.bind refers to the index in the type-specific list, which is much more granular on OpenGL. E.g. 0 may refer to images, storage buffers, and atomic buffers all within the ReadWriteResources list. The index is the uniform value of the binding. Since no objects are namespaced by shader stage, the same value in two shaders refers to the same binding.

  • Direct3D12 - As with 11 above, samplers are included in the read only resources array. Likewise since D3D12 doesn’t have true resource arrays (they are linearised into sequential registers) BindpointMap.arraySize is not used.

    BindpointMap.bindset corresponds to register spaces, with BindpointMap.bind then mapping to the register within that space. The root signature then maps these registers to descriptors.

  • Vulkan - For Vulkan BindpointMap.bindset corresponds to the index of the descriptor set, and BindpointMap.bind refers to the index of the descriptor within that set. BindpointMap.arraySize also is used as descriptors in Vulkan can be true arrays, bound all at once to a single binding.

ConstantBlocks

Provides a list of BindpointMap entries for remapping the ShaderReflection.ConstantBlocks list.

InputAttributes

This maps input attributes as a simple swizzle on the ShaderReflection.InputSig indices for APIs where this mapping is mutable at runtime.

ReadOnlyResources

Provides a list of BindpointMap entries for remapping the ShaderReflection.ReadOnlyResources list.

ReadWriteResources

Provides a list of BindpointMap entries for remapping the ShaderReflection.ReadWriteResources list.

class renderdoc.ShaderBuiltin

Annotates a particular built-in input or output from a shader with a special meaning to the hardware or API.

Some of the built-in inputs or outputs can be declared multiple times in arrays or otherwise indexed to apply to multiple related things - see ClipDistance, CullDistance and ColorOutput.

Undefined

Undefined built-in or no built-in is attached to this shader variable.

Position

As an output from the final vertex processing shader stage, this feeds the vertex position to the rasterized. As an input to the pixel shader stage this receives the position from the rasterizer.

PointSize

An output that controls the size of point primitives.

ClipDistance

An output for the distance to a user-defined clipping plane. Any pixel with an interpolated value that is negative will not be rasterized. Typically there can be more than one such output.

CullDistance

An output for the distance to a user-defined culling plane. Any primitive with all vertices having negative values will not be rasterized. Typically there can be more than one such output.

RTIndex

An output for selecting the render target index in an array to render to. Available in geometry shaders and possibly earlier stages depending on hardware/API capability.

ViewportIndex

An output for selecting the viewport index to render to. Available in geometry shaders and possibly earlier stages depending on hardware/API capability.

VertexIndex

An input to the vertex shader listing the vertex index. The exact meaning of this index can vary by API but generally it refers to either a 0-based counter for non-indexed draws, or the index value for indexed draws. It may or may not be affected by offsets, depending on API semantics.

PrimitiveIndex

A built-in indicating which primitive is being processed. This can be read by all primitive stages after the vertex shader, and written by the geometry shader.

InstanceIndex

This built-in is defined similar to VertexIndex but for instances within an instanced drawcall. It counts from 0 and as with VertexIndex it may or may not be affected by drawcall offsets.

DispatchSize

An input in compute shaders that gives the number of workgroups executed by the dispatch call.

DispatchThreadIndex

An input in compute shaders giving a 3D shared index across all workgroups, such that the index varies across each thread in the workgroup up to its size, then the indices for workgroup (0,0,1) begin adjacent to where workgroup (0,0,0) ended.

This is related to GroupThreadIndex and GroupIndex.

GroupIndex

An input in compute shaders giving a 3D index of this current workgroup amongst all workgroups, up to the dispatch size.

The index is constant across all threads in the workgroup.

This is related to GroupThreadIndex and DispatchThreadIndex.

GroupFlatIndex

An input in compute shaders giving a flat 1D index of the thread within the current workgroup. This index increments first in the X dimension, then in the Y dimension, then in the Z dimension.

GroupThreadIndex

An input in compute shaders giving a 3D index of this thread within its workgroup, up to the workgroup size.

The input does not vary between one thread in a workgroup and the same thread in another workgroup.

This is related to GroupIndex and DispatchThreadIndex.

GSInstanceIndex

An input to the geometry shader giving the instance being run, if the geometry shader was setup to be invoked multiple times for each input primitive.

OutputControlPointIndex

An input to the tessellation control or hull shader giving the output control point index or patch vertex being operated on.

DomainLocation

An input to the tessellation evaluation or domain shader, giving the normalised location on the output patch where evaluation is occuring. E.g. for triangle output this is the barycentric co-ordinates of the output vertex.

IsFrontFace

An input to the pixel shader indicating whether or not the contributing triangle was considered front-facing or not according to the API setup for winding order and backface orientation.

MSAACoverage

An input or an output from the pixel shader. As an input, it specifies a bitmask of which samples in a pixel were covered by the rasterizer. As an output, it specifies which samples in the destination target should be updated.

MSAASamplePosition

An input to the pixel shader that contains the location of the current sample relative to the pixel, when running the pixel shader at sample frequency.

MSAASampleIndex

An input to the pixel shader that indicates which sample in the range 0 .. N-1 is currently being processed.

PatchNumVertices

An input to the tessellation stages, this gives the number of vertices in each patch.

OuterTessFactor

An output from the tessellation control or hull shader, this determines the level to which the outer edge of each primitive is tessellated by the fixed-function tessellator.

It is also available for reading in the tessellation evaluation or domain shader.

InsideTessFactor

Related to OuterTessFactor this functions in the same way to determine the tessellation level inside the primitive.

ColorOutput

An output from the pixel shader, this determines the color value written to the corresponding target. There will be as many color output built-ins as there are targets bound.

DepthOutput

An output from the pixel shader, writes the depth of this pixel with no restrictions.

Related to DepthOutputGreaterEqual and DepthOutputLessEqual.

DepthOutputGreaterEqual

An output from the pixel shader, writes the depth of this pixel with the restriction that it will be greater than or equal to the original depth produced by the rasterizer.

Related to DepthOutput and DepthOutputLessEqual.

DepthOutputLessEqual

An output from the pixel shader, writes the depth of this pixel with the restriction that it will be less than or equal to the original depth produced by the rasterizer.

Related to DepthOutputGreaterEqual and DepthOutput.

class renderdoc.ShaderChangeStats

Contains the statistics for shader binds in a frame.

calls

How many function calls were made.

nulls

How many objects were unbound.

redundants

How many calls made no change due to the existing bind being identical.

sets

How many objects were bound.

class renderdoc.ShaderConstant

Contains the detail of a constant within a ConstantBlock in memory.

defaultValue

If this constant is no larger than a 64-bit constant, gives a default value for it.

name

The name of this constant

reg

A ShaderRegister describing where this constant is offset from the start of the block

type

A ShaderVariableType giving details of the type information for this constant.

class renderdoc.ShaderDebugChunk

Contains the information about a shader contained within API-specific debugging information attached to the shader.

Primarily this means the embedded original source files.

compileFlags

An API or compiler specific set of flags used to compile this shader originally.

entryFile

The index in files where the entry point exists, or -1 if it’s not found.

entryFunc

The name of the entry point function for this shader.

files

A list of tuples, where each tuple is a pair of filename, source code.

class renderdoc.ShaderDebugState

This stores the current state of shader debugging at one particular step in the shader, with all mutable variable contents.

flags

A set of ShaderEvents flags that indicate what events happened on this step.

indexableTemps

Indexable temporary variables for this shader as a list of ShaderValue lists.

nextInstruction

The next instruction to be executed after this state. The initial state before any shader execution happened will have nextInstruction == 0.

outputs

The output variables for this shader as a list of ShaderValue.

registers

The temporary variables for this shader as a list of ShaderValue.

class renderdoc.ShaderDebugTrace

This stores the whole state of a shader’s execution from start to finish, with each individual debugging step along the way, as well as the immutable global constant values that do not change with shader execution.

cbuffers

Constant variables for this shader as a list of ShaderValue lists.

Each entry in this list corresponds to a constant block with the same index in the ShaderBindpointMapping.ConstantBlocks list, which can be used to look up the metadata.

inputs

The input variables for this shader as a list of ShaderValue.

states

A list of ShaderDebugState states representing the state after each instruction was executed

class renderdoc.ShaderEvents

A set of flags for events that may occur while debugging a shader

NoEvent

No event has occurred.

SampleLoadGather

A texture was sampled, loaded or gathered.

GeneratedNanOrInf

A floating point operation generated a NaN or infinity result.

class renderdoc.ShaderReflection

The reflection and metadata fully describing a shader.

The information in this structure is API agnostic, and is matched up against a ShaderBindpointMapping instance to map the information here to the API’s binding points and resource binding scheme.

ConstantBlocks

A list of ConstantBlock with the shader’s constant bindings.

DebugInfo

A ShaderDebugChunk containing any embedded debugging information in this shader.

Disassembly

The disassembly for this shader, in an API specific representation.

DispatchThreadsDimension

The 3D dimensions of a compute workgroup, for compute shaders.

InputSig

A list of SigParameter with the shader’s input signature.

Interfaces

A list of strings with the shader’s interfaces. Largely an unused API feature.

OutputSig

A list of SigParameter with the shader’s output signature.

RawBytes

A raw bytes dump of the original shader, encoded in API specific binary form.

ReadOnlyResources

A list of ShaderResource with the shader’s read-only resources.

ReadWriteResources

A list of ShaderResource with the shader’s read-write resources.

class renderdoc.ShaderRegister

Describes the offset of a constant in memory in terms of 16 byte vectors.

comp

The 4 byte component within that vector where this register begins

vec

The index of the 16 byte vector where this register begins

class renderdoc.ShaderResource

Contains the information for a shader resource that is made accessible to shaders directly by means of the API resource binding system.

Note

that constant blocks will not have a shader resource entry, see ConstantBlock.

IsReadOnly

True if this resource is available to the shader for reading only, otherwise it is able to be read from and written to arbitrarily.

IsSampler

True if this resource is a sampler.

If the API has no concept of separate samplers, this will always be False.

Note

this is not exclusive with the other flags in the case of e.g. combined sampler/texture objects.

IsTexture

True if this resource is a texture, otherwise it is a buffer or sampler (see IsSampler).

bindPoint

The bindpoint for this block. This is an index in either the ShaderBindpointMapping.ReadOnlyResources list or ShaderBindpointMapping.ReadWriteResources list as appropriate (see IsReadOnly).

name

The name of this resource.

resType

The TextureDim that describes the type of this resource.

variableType

A ShaderVariableType describing type of each element of this resource.

class renderdoc.ShaderStage

The stage in a pipeline where a shader runs

Vertex

The vertex shader.

Hull

The hull shader. See also Tess_Control.

Tess_Control

The tessellation control shader. See also Hull.

Domain

The domain shader. See also Tess_Eval.

Tess_Eval

The tessellation evaluation shader. See also Domain.

Geometry

The geometry shader.

Pixel

The pixel shader. See also Fragment.

Fragment

The fragment shader. See also Pixel.

Compute

The compute shader.

class renderdoc.ShaderStageMask

A set of flags for ShaderStage stages

Unknown

No flags set for any shader stages.

Vertex

The flag for ShaderStage.Vertex.

Hull

The flag for ShaderStage.Hull.

Tess_Control

The flag for ShaderStage.Tess_Control.

Domain

The flag for ShaderStage.Domain.

Tess_Eval

The flag for ShaderStage.Tess_Eval.

Geometry

The flag for ShaderStage.Geometry.

Pixel

The flag for ShaderStage.Pixel.

Fragment

The flag for ShaderStage.Fragment.

Compute

The flag for ShaderStage.Compute.

All

A shorthand version with flags set for all stages together.

class renderdoc.ShaderValue

A C union that holds 16 values, with each different basic variable type.

d

A convenient subset of dv as a named 4 component vector.

dv

double values.

f

A convenient subset of fv as a named 4 component vector.

fv

float values.

i

A convenient subset of iv as a named 4 component vector.

iv

Signed integer values.

u

A convenient subset of uv as a named 4 component vector.

uv

Unsigned integer values.

class renderdoc.ShaderVariable

Holds a single named shader variable. It contains either a primitive type (up to a 4x4 matrix of a basic type) or a list of members, which can either be struct or array members of this parent variable.

Matrices are always stored row-major. If necessary they are transposed when retrieving from the raw data bytes when they are specified to be column-major in the API/shader metadata.

columns

The number of columns in this matrix.

displayAsHex

True if the contents of this variable should be displayed as hex.

isStruct

True if this variable is a structure and not an array or basic type.

members

The members of this variable as a list of ShaderValue.

name

The name of this variable.

rows

The number of rows in this matrix.

type

The basic type of this variable.

value

The contents of this variable if it has no members.

class renderdoc.ShaderVariableDescriptor

Describes the storage characteristics for a basic ShaderConstant in memory.

arrayStride

The number of bytes between the start of one element in the array and the next.

cols

The number of columns in this matrix.

elements

The number of elements in the array, or 1 if it’s not an array.

name

The name of the type of this constant, e.g. a struct name.

rowMajorStorage

True if the matrix is stored as row major instead of column major.

rows

The number of rows in this matrix.

type

The VarType that this basic constant stores.

class renderdoc.ShaderVariableType

Describes the type and members of a ShaderConstant.

descriptor

The ShaderVariableDescriptor that describes the current constant.

members

A list of ShaderConstant with any members that this constant may contain.

class renderdoc.SigParameter

The information describing an input or output signature element describing the interface between shader stages.

NoIndex

Value for an index that means it is invalid or not applicable for this parameter.

arrayIndex

If this element is part of an array, indicates the index, or NoIndex if not.

channelUsedMask

A bitmask indicating which components in the shader register are actually used by the shader itself, for APIs that pack signatures together.

compCount

The number of components used to store this element. See compType.

compType

The component type of data that this element stores.

needSemanticIndex

A convenience flag - True if the semantic name is unique and no index is needed.

regChannelMask

A bitmask indicating which components in the shader register are stored, for APIs that pack signatures together.

regIndex

The index of the shader register/binding used to store this signature element.

This may be NoIndex if the element is system-generated and not consumed by another shader stage. See systemValue.

semanticIdxName

The combined semantic name and index.

semanticIndex

The semantic index of this variable - see semanticName.

semanticName

The semantic name of this variable, if the API uses semantic matching for bindings.

stream

Selects a stream for APIs that provide multiple output streams for the same named output.

systemValue

The ShaderBuiltin value that this element contains.

varName

The name of this variable - may not be present in the metadata for all APIs.

class renderdoc.SolidShade

What kind of solid shading to use when rendering a mesh.

NoSolid

No solid shading should be done.

Solid

The mesh should be rendered in a single flat unshaded colour.

Lit

The mesh should be rendered with face normals generated on the primitives and used for lighting.

Secondary

The mesh should be rendered using the secondary element as colour.

class renderdoc.SpecialFormat

A particular special texture format. This accounts for either block-compressed formats or formats that don’t have equal byte-multiple sizes for each channel.

Unknown

This texture has no special layout, so its format is described by a number of components, a CompType and a byte width per component.

BC1

A block-compressed texture in BC1 format (RGB with 1-bit alpha, 0.5 bytes per pixel)

Formerly known as DXT1, commonly used for color maps.

BC2

A block-compressed texture in BC2 format (RGB with 4-bit alpha, 1 byte per pixel)

Formerly known as DXT3, rarely used.

BC3

A block-compressed texture in BC3 format (RGBA, 1 byte per pixel)

Formerly known as DXT5, commonly used for color + alpha maps, or color with attached single channel data.

BC4

A block-compressed texture in BC4 format (Single channel, 0.5 bytes per pixel)

Commonly used for single component data such as gloss or height data.

BC5

A block-compressed texture in BC5 format (Two channels, 1 byte per pixel)

Commonly used for normal maps.

BC6

A block-compressed texture in BC6 format (RGB floating point, 1 byte per pixel)

Commonly used for HDR data of all kinds.

BC7

A block-compressed texture in BC7 format (RGB or RGBA, 1 byte per pixel)

Commonly used for high quality color maps, with or without alpha.

ETC2

A block-compressed texture in ETC2 format (RGB with 1-bit alpha, 0.5 bytes per pixel)

Commonly used on mobile or embedded platforms.

EAC

A block-compressed texture in EAC format (Single channel 11-bit or RGBA, 0.5 bytes per pixel)

Commonly used on mobile or embedded platforms.

ASTC

A block-compressed texture in ASTC format (Representation varies a lot)

The ASTC format encodes each block as 16 bytes, but the block size can vary from 4x4 (so 1 byte per pixel) up to 12x12 (0.11 bytes per pixel).

Each block can encode between one and three channels of data, either correlated or uncorrelated, in low or high dynamic range.

Commonly used on mobile or embedded platforms.

R10G10B10A2

Each pixel is stored in 32 bits. Red, green and blue are stored in 10-bits each and alpha in 2 bits. The data can either be unsigned normalised or unsigned integer.

R11G11B10

Each pixel is stored in 32 bits. Red and green are stored as an 11-bit float with no sign bit, 5-bit exponent and 6-bit mantissa. Blue is stored with 5-bit exponent and 5-bit mantissa.

R5G6B5

Each pixel is stored in 16 bits. Red and blue are stored as 5 bits, and green is stored as six. The data is unsigned normalised.

R5G5B5A1

Each pixel is stored in 16 bits. Red, green, and blue are stored as 5 bits, with 1-bit alpha. The data is unsigned normalised.

R9G9B9E5

Each pixel is stored in 32 bits. Red, green, and blue are stored with individual 9-bit mantissas and a shared 5-bit exponent. There are no sign bits.

R4G4B4A4

Each pixel is stored in 16 bits. Red, green, blue, and alpha are stored as 4-bit unsigned normalised values.

R4G4

Each pixel is stored in 8 bits. Red and green are stored as 4-bit unsigned normalised values.

D16S8

Each pixel is considered a packed depth-stencil value with 16 bit normalised depth and 8 bit stencil.

D24S8

Each pixel is considered a packed depth-stencil value with 24 bit normalised depth and 8 bit stencil.

D32S8

Each pixel is considered a packed depth-stencil value with 32 bit floating point depth and 8 bit stencil.

S8

Each pixel is an 8 bit stencil value.

YUV

The pixel data is in an opaque YUV format.

class renderdoc.StencilOp

A stencil operation to apply in stencil processing.

Keep

Keep the existing value unmodified.

Zero

Set the value to 0.

Replace

Replace the value with the stencil reference value.

IncSat

Increment the value but saturate at the maximum representable value (typically 255).

DecSat

Decrement the value but saturate at 0.

IncWrap

Increment the value and wrap at the maximum representable value (typically 255) to 0.

DecWrap

Decrement the value and wrap at 0 to the maximum representable value (typically 255).

Invert

Invert the bits in the stencil value (bitwise NOT).

class renderdoc.TargetControlMessage

A message from a target control connection.

Busy

The busy signal data.

NewCapture

The new capture data.

NewChild

The new child process data.

RegisterAPI

The API registration data.

Type

The type of message received

class renderdoc.TargetControlMessageType

The type of message received from or sent to an application target control connection.

Unknown

No message or an unknown message type.

Disconnected

The other end of the connection disconnected.

Busy

The other end of the connection was busy.

Noop

Nothing happened, the connection is being kept alive.

NewCapture

A new capture was made.

CaptureCopied

A capture was successfully copied across the connection.

RegisterAPI

The target has initialised a graphics API.

NewChild

The target has created a child process.

class renderdoc.TextureCategory

A set of flags describing how this texture may be used

NoFlags

The texture will not be used for any of the uses below.

ShaderRead

The texture will be read by a shader.

ColorTarget

The texture will be written to as a color target.

DepthTarget

The texture will be written to and tested against as a depth target.

ShaderReadWrite

The texture will be read and written to by a shader.

SwapBuffer

The texture is part of a window swapchain.

class renderdoc.TextureComponentMapping

How to map components to normalised [0, 255] for saving to 8-bit file formats.

blackPoint

The value that should be mapped to 0

whitePoint

The value that should be mapped to 255

class renderdoc.TextureDescription

A description of a texture resource.

ID

The unique ResourceId that identifies this buffer.

arraysize

How many array elements this texture has, will be at least 1.

byteSize

How many bytes would be used to store this texture and all its mips/slices.

creationFlags

The way this texture will be used in the pipeline.

cubemap

True if this texture is used as a cubemap or cubemap array.

customName

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

depth

The depth of the texture, or 1 if not applicable.

dimension

The base dimension of the texture - either 1, 2, or 3.

format

The ResourceFormat that describes the format of each pixel in the texture.

height

The height of the texture, or 1 if not applicable.

mips

How many mips this texture has, will be at least 1.

msQual

The quality setting of this texture, or 0 if not applicable.

msSamp

How many multisampled samples this texture has, will be at least 1.

name

The name given to this buffer.

resType

The TextureDim of the texture.

width

The width of the texture, or length for buffer textures.

class renderdoc.TextureDim

The dimensionality of a texture binding.

Unknown

An unknown type of texture.

Buffer

A texel buffer.

Texture1D

A 1D texture.

Texture1DArray

A 1D texture array.

Texture2D

A 2D texture.

TextureRect

A rectangle texture, a legacy format for non-power of two textures.

Texture2DArray

A 2D texture array.

Texture2DMS

A multi-sampled 2D texture.

Texture2DMSArray

A multi-sampled 2D texture array.

Texture3D

A 3D texture.

TextureCube

A Cubemap texture.

TextureCubeArray

A Cubemap texture array.

class renderdoc.TextureDisplay

Describes how to render a texture preview of an image. Describes the zoom and pan settings for the texture when rendering on a particular output, as well as the modification and selection of a particular subresource (such as array slice, mip or multi-sampled sample).

ResolveSamples

Value for sampleIdx if the samples should be averaged.

Alpha

True if the alpha channel should be visible. If enabled with any of RGB, the texture will be blended to a checkerboard of lightBackgroundColor and darkBackgroundColor.

If only one channel is selected, it will be rendered in grayscale

Blue

True if the blue channel should be visible.

If only one channel is selected, it will be rendered in grayscale

CustomShader

The ResourceId of a custom shader to use when rendering.

See ReplayController.BuildCustomShader() for creating an appropriate custom shader.

FlipY

True if the texture should be flipped vertically when rendering.

Green

True if the green channel should be visible.

If only one channel is selected, it will be rendered in grayscale

HDRMul

If >= 0.0 the RGBA values will be viewed as HDRM with this as the multiplier.

Red

True if the red channel should be visible.

If only one channel is selected, it will be rendered in grayscale

darkBackgroundColor

The dark background colour to use in the checkerboard behind the texture display.

lightBackgroundColor

The light background colour to use in the checkerboard behind the texture display.

linearDisplayAsGamma

True if the texture should be interpreted as gamma.

See the FAQ entry.

mip

Select the mip of the texture to display.

offx

The offset to pan in the X axis.

offy

The offset to pan in the Y axis.

overlay

Selects a DebugOverlay to draw over the top of the texture.

rangemax

The value in each channel to map to the white point.

rangemin

The value in each channel to map to the black point.

rawoutput

True if the rendered image should be as close as possible in value to the input.

This is primarily useful when rendering to a floating point target for retrieving pixel data from the input texture in cases where it isn’t easy to directly fetch the input texture data.

sampleIdx

Select the sample of the texture to display if it’s a multi-sampled texture.

If this is set to ResolveSamples then a default resolve will be performed that averages all samples.

scale

The scale to apply to the texture when rendering as a floating point value.

1.0 corresponds to 100%

sliceFace

Select the slice or face of the texture to display if it’s an array, 3D, or cube tex.

texid

The ResourceId of the texture to display.

typeHint

An optional CompType hint to use when displaying a typeless texture.

class renderdoc.TextureFilter

The details of a texture filter in a sampler.

func

The FilterFunc to apply after interpolating values.

magnify

The FilterMode to use when magnifying the texture.

minify

The FilterMode to use when minifying the texture.

mip

The FilterMode to use when interpolating between mips.

class renderdoc.TextureSampleMapping

How to map multisampled textures for saving to non-multisampled file formats.

ResolveSamples

Value for sampleIndex if the samples should be averaged.

mapToArray

True if the samples should be mapped to array slices. A multisampled array expands each slice in-place, so it would be slice 0: sample 0, slice 0: sample 1, slice 1: sample 0, etc.

This then follows the mapping for array slices as with any other array texture. sampleIndex is ignored.

sampleIndex

If mapToArray is False this selects which sample should be extracted to treat as a normal 2D image. If set to ResolveSamples then instead there’s a default average resolve.

class renderdoc.TextureSave

Describes a texture to save and how to map it to the destination file format.

alpha

Controls handling of alpha channel, mostly relevant for file formats that without alpha.

It is an AlphaMapping that controls what behaviour to use. alphaCol and alphaColSecondary may be used depending on the behaviour that it selects.

alphaCol

The primary color to use in conjunction with alpha.

alphaColSecondary

The secondary color to use in conjunction with alpha.

channelExtract

Selects a single component out of a texture to save as grayscale, or -1 to save all.

comp

Controls black/white point mapping for output formats that are normal 8-bit SRGB, values are

destType

The FileType to use when saving to the destination file.

id

The ResourceId of the texture to save.

jpegQuality

The quality to use when saving to a JPG file. Valid values are between 1 and 100.

mip

Selects the mip to be written out.

If set to -1 then all mips are written, where allowed by file format. If not allowed, mip 0 is written

sample

Controls mapping for multisampled textures (ignored if texture is not multisampled)

slice

Controls mapping for arrayed textures (ignored if texture is not arrayed)

typeHint

An optional CompType hint to use when saving a typeless texture.

class renderdoc.TextureSliceMapping

How to map array textures for saving to non-arrayed file formats.

If sliceIndex is -1, cubeCruciform == slicesAsGrid == False and the file format doesn’t support saving all slices, only slice 0 is saved.

cubeCruciform

Write out 6 slices in a cruciform pattern:

     +----+
     | +y |
     |    |
+----+----+----+----+
| -x | +z | +x | -z |
|    |    |    |    |
+----+----+----+----+
     | -y |
     |    |
     +----+

With the gaps filled in with transparent black.

sliceGridWidth

The width of a grid if slicesAsGrid is True.

sliceIndex

Selects the (depth/array) slice to save.

If this is -1, then all slices are written out as detailed below. This is only supported in formats that don’t support slices natively, and will be done in RGBA8.

slicesAsGrid

If True, write out the slices as a 2D grid with the width given in sliceGridWidth. Any empty slices in the grid are written as transparent black.

class renderdoc.TextureSwizzle

A single source component for a destination texture swizzle.

Red

The Red component.

Green

The Green component.

Blue

The Blue component.

Alpha

The Alpha component.

Zero

The fixed value 0.

One

The fixed value 1.

class renderdoc.Topology

A primitive topology used for processing vertex data.

Unknown

An unknown or undefined topology.

PointList

A point list.

LineList

A line list.

LineStrip

A line strip.

LineLoop

A line loop.

TriangleList

A triangle list.

TriangleStrip

A triangle strip.

TriangleFan

A triangle fan.

LineList_Adj

A line list with adjacency information.

LineStrip_Adj

A line strip with adjacency information.

TriangleList_Adj

A triangle list with adjacency information.

TriangleStrip_Adj

A triangle strip with adjacency information.

PatchList

An alias for PatchList_1CPs.

PatchList_1CPs

A patch list with 1 control points.

PatchList_2CPs

A patch list with 2 control points.

PatchList_3CPs

A patch list with 3 control points.

PatchList_4CPs

A patch list with 4 control points.

PatchList_5CPs

A patch list with 5 control points.

PatchList_6CPs

A patch list with 6 control points.

PatchList_7CPs

A patch list with 7 control points.

PatchList_8CPs

A patch list with 8 control points.

PatchList_9CPs

A patch list with 9 control points.

PatchList_10CPs

A patch list with 10 control points.

PatchList_11CPs

A patch list with 11 control points.

PatchList_12CPs

A patch list with 12 control points.

PatchList_13CPs

A patch list with 13 control points.

PatchList_14CPs

A patch list with 14 control points.

PatchList_15CPs

A patch list with 15 control points.

PatchList_16CPs

A patch list with 16 control points.

PatchList_17CPs

A patch list with 17 control points.

PatchList_18CPs

A patch list with 18 control points.

PatchList_19CPs

A patch list with 19 control points.

PatchList_20CPs

A patch list with 20 control points.

PatchList_21CPs

A patch list with 21 control points.

PatchList_22CPs

A patch list with 22 control points.

PatchList_23CPs

A patch list with 23 control points.

PatchList_24CPs

A patch list with 24 control points.

PatchList_25CPs

A patch list with 25 control points.

PatchList_26CPs

A patch list with 26 control points.

PatchList_27CPs

A patch list with 27 control points.

PatchList_28CPs

A patch list with 28 control points.

PatchList_29CPs

A patch list with 29 control points.

PatchList_30CPs

A patch list with 30 control points.

PatchList_31CPs

A patch list with 31 control points.

PatchList_32CPs

A patch list with 32 control points.

class renderdoc.UIntVecVal

A 32-bit unsigned int 4 component vector.

w

The w component.

x

The x component.

y

The y component.

z

The z component.

class renderdoc.VarType

Represents the base type of a shader variable in debugging or constant blocks.

Float

A single-precision (32-bit) floating point value.

Int

A signed integer value.

UInt

An unsigned integer value.

Double

A double-precision (64-bit) floating point value.

Unknown

An unknown type.

class renderdoc.VertexBindStats

Contains the statistics for vertex buffer binds in a frame.

bindslots

A list where the Nth element contains the number of calls that bound N vertex buffers.

calls

How many function calls were made.

nulls

How many objects were unbound.

sets

How many objects were bound.

class renderdoc.VulkanLayerFlags

A set of flags giving details of the current status of vulkan layer registration.

NoFlags

There are no problems with the vulkan layer registration.

OtherInstallsRegistered

Other conflicting installs of the same layer in other locations are registered.

ThisInstallRegistered

This current install of the layer is registered.

NeedElevation

Fixing any issues will require elevation to system administrator privileges.

CouldElevate

Fixing issues could be done purely as a user, but can optionally be done at system level with system administrator privileges.

RegisterAll

All listed locations for the current layer must be registered for correct functioning.

If this flag is not set, then the listed locations are an ‘or’ list of alternatives.

UpdateAllowed

If the current registrations can be updated or re-pointed to fix the issues.

Unfixable

The current situation is not fixable automatically and requires user intervention/disambiguation.

class renderdoc.WindowingSystem

Specifies a windowing system to use for creating an output window.

Unknown

No windowing data is passed and no native window will be output to.

Win32

The windowing data refers to a Win32 HWND handle.

Xlib

The windowing data refers to an Xlib pair of Display * and Drawable.

XCB

The windowing data refers to an XCB pair of xcb_connection_t * and xcb_window_t.

Android

The windowing data refers to an Android ANativeWindow *.