D3D12XBOX_PROCESS_DEBUG_FLAGS Enumeration

Defines flags that are used to debug a process.

Syntax

typedef enum D3D12XBOX_PROCESS_DEBUG_FLAGS
{
    D3D12XBOX_PROCESS_DEBUG_FLAG_NONE = 0x0,
    D3D12XBOX_PROCESS_DEBUG_FLAG_DEBUG = 0x00000001,
    D3D12_PROCESS_DEBUG_FLAG_DEBUG_LAYER_ENABLED = D3D12XBOX_PROCESS_DEBUG_FLAG_DEBUG,
    D3D12XBOX_PROCESS_DEBUG_FLAG_INSTRUMENTED = 0x00100000,
    D3D12XBOX_PROCESS_DEBUG_FLAG_VALIDATED = D3D12XBOX_PROCESS_DEBUG_FLAG_DEBUG,
    D3D12XBOX_PROCESS_DEBUG_FLAG_NULL_GPU = 0x00400000,
    D3D12XBOX_PROCESS_DEBUG_FLAG_ENABLE_COMMON_STATE_PROMOTION = 0x01000000
} D3D12XBOX_PROCESS_DEBUG_FLAGS;  

Constants

Constant Description
D3D12XBOX_PROCESS_DEBUG_FLAG_NONE No flags.
D3D12XBOX_PROCESS_DEBUG_FLAG_DEBUG Enables debug Direct3D, which includes full parameter validation and PIX instrumentation.
D3D12_PROCESS_DEBUG_FLAG_DEBUG_LAYER_ENABLED Enables the debug layer. This enumeration constant will be removed in a future release.
D3D12XBOX_PROCESS_DEBUG_FLAG_INSTRUMENTED Enables instrumented Direct3D, which includes PIX instrumentation but not parameter validation.
D3D12XBOX_PROCESS_DEBUG_FLAG_VALIDATED Enables debug Direct3D, which includes full parameter validation and PIX instrumentation.
D3D12XBOX_PROCESS_DEBUG_FLAG_NULL_GPU Enables NULL GPU, which disables all rendering and eliminates all GPU overhead.
D3D12XBOX_PROCESS_DEBUG_FLAG_ENABLE_COMMON_STATE_PROMOTION Enables common state promotions semantics as described in Using Resource Barriers to Synchronize Resource States in Direct3D 12 | Implicit State Transitions. Common state promotion is the default behavior for Direct3D 12 on PC, but is an opt-in feature for Direct3D 12 on Xbox because it changes the GPU synchronization behavior Direct3D 12.x has used since its inception. When common state promotion semantics are enabled, certain resource transition barriers on uncompressed resource become unnecessary and the transition state validation engine in the validated D3D12 driver will adapt accordingly. The location of GPU pipeline flushes inserted by the driver also changes: by default the D3D12.X driver inserts a full GPU pipeline and cache flush within each ID3D12CommandQueue::Signal call, preceding the fence write; with common state promotion enabled, the pipeline and cache flush is moved out of Signal and into ID3D12CommandQueue::ExecuteCommandLists following the execution of the last list submitted to each ExecuteCommandLists call.

Remarks

This enumeration is passed into ID3D12Debug::SetProcessDebugFlags and D3D12XboxSetProcessDebugFlags.

Requirements

Header: Declared in d3d12_x.h.