Specifies flags that are used for debugging on Xbox One.
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;
| 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. |
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.
Header: Declared in d3d12_x.h.