共用方式為


D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS結構 (d3d12sdklayers.h)

描述 GPU-Based 驗證所使用的設定。

語法

typedef struct D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS {
  UINT                                                   MaxMessagesPerCommandList;
  D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE           DefaultShaderPatchMode;
  D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS PipelineStateCreateFlags;
} D3D12_DEBUG_DEVICE_GPU_BASED_VALIDATION_SETTINGS;

成員

MaxMessagesPerCommandList

指定 UINT,限制可儲存在 GPU-Based 驗證訊息記錄檔中的訊息數目。 預設值為 256。 由於在單一繪製/分派呼叫中可以產生許多相同的錯誤,因此增加此數位可能很有用。 請注意,如果使用大量命令清單,因為每個命令清單有認可的訊息記錄檔,這可能會成為記憶體負擔。

DefaultShaderPatchMode

指定將驗證程式代碼插入著色器時 GPU-Based 驗證所使用的 D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE ,但依命令清單 GPU-Based 驗證設定覆寫時, (請參閱 D3D12_DEBUG_COMMAND_LIST_GPU_BASED_VALIDATION_SETTINGS) 。 預設值為 D3D12_GPU_BASED_VALIDATION_SHADER_PATCH_MODE_UNGUARDED_VALIDATION。

PipelineStateCreateFlags

指定其中一個 D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAGS ,指出 GPU-Based 驗證如何處理修補管線狀態。 預設值為 D3D12_GPU_BASED_VALIDATION_PIPELINE_STATE_CREATE_FLAG_NONE。

備註

使用這個結構搭配ID3D12DebugDevice1::SetDebugParameterpData成員指向物件,以設定全裝置 GPU-Based 驗證設定。

個別命令清單可以使用 ID3D12DebugCommandList1::SetDebugParameter覆寫預設著色器修補程式模式。

需求

   
標頭 d3d12sdklayers.h (包含 D3d12sdklayers_RS1.h)

另請參閱

偵錯層結構

SetEnableGPUBasedValidation

使用 D3D12 偵錯層 GPU-Based 驗證