Skip to main content
在圖形管線底部執行一組同步作業。 這些同步作業會以管線方式在前一個繪製或分派作業完成後執行。

語法

參數

SyncFlags   _In_
類型:D3D12XBOX_SYNC_FLAGS
D3D12XBOX_SYNC_FLAGS 旗標的位元 OR 組合,定義要執行的同步作業集。 ControlFlags   _In_
類型:D3D12XBOX_SYNC_CONTROL_FLAGS
D3D12XBOX_SYNC_CONTROL_FLAGS 旗標的位元 OR 組合,定義一組同步控制修改。 BaseAddress   _In_
類型:D3D12_GPU_VIRTUAL_ADDRESS
要執行同步處理之記憶體範圍的基底位址。 SizeInBytes   _In_
類型:SIZE_T
BaseAddress 參數所指向之記憶體範圍的大小 (以位元組為單位)。若要將同步作業套用至所有記憶體,請將 BaseAddress 值指定為 0,並將 SizeInBytes 指定為 D3D12XBOX_FLUSH_RANGE_ALL。

傳回值

類型:void

備註

指定之同步處理的執行順序如下:
  • D3D12XBOX_SYNC_FLAG_SYNC_CPDMA
  • D3D12XBOX_SYNC_FLAG_VS_PARTIAL_FLUSH、D3D12XBOX_SYNC_FLAG_PS_PARTIAL_FLUSH 和 D3D12XBOX_SYNC_FLAG_CS_PARTIAL_FLUSH
  • D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_DATA_FLUSH 和 D3D12XBOX_SYNC_FLAG_COLOR_BLOCK_META_FLUSH
  • D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_DATA_FLUSH 和 D3D12XBOX_SYNC_FLAG_DEPTH_BLOCK_META_FLUSH
  • D3D12XBOX_SYNC_FLAG_STREAMOUT_FLUSH
  • GCR 失效與回寫 (D3D12XBOX_SYNC_FLAG_nCACHE_x 和 D3D12XBOX_SYNC_FLAG_GLx)
  • D3D12XBOX_SYNC_FLAG_IDLE
  • D3D12XBOX_SYNC_FLAG_PFP_SYNC_ME
控制旗標 D3D12XBOX_SYNC_CONTROL_FLAG_IDLE_SELECT_ENGINE_PFP 和 D3D12XBOX_SYNC_CONTROL_FLAG_IDLE_SELECT_ENGINE_CE 可用來指定命令處理器 (CP) 的哪些元件 將參與閒置作業。在 D3D12XBOX_SYNC_FLAG_SYNC_CPDMA 的情況下,預先擷取剖析器 (PFP) 有自己的 CPDMA 佇列,與微引擎 (ME) 分開,因此 D3D12XBOX_SYNC_CONTROL_FLAG_CPDMA_SELECT_ENGINE_PFP 旗標可 用來等候 PFP 進行中的 CPDMA 要求,而不是 ME 的要求。D3D12XBOX_SYNC_FLAG_PFP_SYNC_ME 可用來在等候 ME CPDMA 交易時 封鎖 PFP。

需求

標頭: d3d12_xs.h 程式庫: ****.lib 支援的平台: XBOX Series 主機

另請參閱

D3D12XBOX_SYNC_CONTROL_FLAGS
D3D12XBOX_SYNC_FLAGS
ID3D12GraphicsCommandList6
SyncTopOfPipeX
Last modified on October 6, 2026