D3D12XBOX_DEBUG_FLAGS Enumeration

Specifies flags that are used for debugging on Xbox One.

Syntax

typedef enum D3D12XBOX_DEBUG_FLAGS
{
    D3D12XBOX_DEBUG_FLAG_NONE = 0x00000000,
    D3D12XBOX_DEBUG_FLAG_API_ERROR_DISABLE_BREAKS = 0x00000001,
    D3D12XBOX_DEBUG_FLAG_DISABLE_BARRIER_VALIDATION = 0x00000200,
    D3D12XBOX_DEBUG_FLAG_ENABLE_TRANSITION_BARRIER_LOGGING = 0x00000400,
    D3D12XBOX_DEBUG_FLAG_ENABLE_INVALID_ROOT_PARAMETER_VALIDATION = 0x00000800,
    D3D12XBOX_DEBUG_FLAG_ENABLE_NULL_DESCRIPTOR_VALIDATION = 0x00001000,
    D3D12XBOX_DEBUG_FLAG_ENABLE_NULL_VERTEX_BUFFER_VIEW_VALIDATION = 0x00002000
} D3D12XBOX_DEBUG_FLAGS;  

Constants

Constant Description
D3D12XBOX_DEBUG_FLAG_NONE No flags.
D3D12XBOX_DEBUG_FLAG_API_ERROR_DISABLE_BREAKS By default, each validation error causes the driver to break into the debugger, showing the callstack of the error. This option disables these debug breaks.
D3D12XBOX_DEBUG_FLAG_DISABLE_BARRIER_VALIDATION Disables resource transition barrier validation, which has a relatively high CPU cost due to the amount of validation work done at ExecuteCommandLists time.
D3D12XBOX_DEBUG_FLAG_ENABLE_TRANSITION_BARRIER_LOGGING Enables a debug printed line of text when each resource transition barrier is processed by the resource transition barrier validation code. This log of information is useful in tracking down missing or incorrect resource transition barriers.
D3D12XBOX_DEBUG_FLAG_ENABLE_INVALID_ROOT_PARAMETER_VALIDATION Enables additional checking during resource transition barrier validation, raising an error when a root parameter is used by a draw or dispatch without having been set to a valid value after the previous root signature change. Since this condition is often benign, this validation is disabled by default.
D3D12XBOX_DEBUG_FLAG_ENABLE_NULL_DESCRIPTOR_VALIDATION Enables additional checking during resource transition barrier validation, raising an error when a null descriptor is being referenced by a draw or dispatch. This condition may be benign or expected behavior, but it may also be a correctness bug if it was not expected.
D3D12XBOX_DEBUG_FLAG_ENABLE_NULL_VERTEX_BUFFER_VIEW_VALIDATION Enables additional checking during resource transition barrier validation, raising an error when a null vertex buffer view is being referenced by a draw. This condition may be benign or expected behavior, but it may also be a correctness bug if it was not expected.

Remarks

This enumeration is passed into ID3D12Device::SetDebugFlagsX and is returned by ID3D12Device::GetDebugFlagsX.

An enumeration value D3D12XBOX_DEBUG_FLAG_DISABLE_COMMON_STATE_PROMOTION_AND_DECAY was briefly introduced as a placeholder in a previous XDK; this enumeration value is now deprecated and has been redefined as 0x00000000 to nullify any effect it might have on existing code that uses this enumeration value, and will be removed in a future XDK.

Requirements

Header: Declared in d3d12_x.h.