> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# D3D12XBOX_RESOURCE_BARRIER_ACTIONS (XBOX One 系列)

> 定義資源屏障動作。每個成員都是呼叫 ID3D12XboxDmaCommandList::ResourceBarrier 時將會或可能產生的動作。

定義資源屏障動作。每個成員都是呼叫 [ResourceBarrier](/zh-TW/reference/graphics/d3d12_x/interfaces/id3d12xboxdmacommandlist/methods/id3d12xboxdmacommandlist_resourcebarrier) 時將會或可能產生的動作。

## 語法

```cpp theme={null}
typedef enum D3D12XBOX_RESOURCE_BARRIER_ACTIONS  : UINT64  
{  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_NONE = 0,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_BASE_COHERENCY = D3D12XBOX_FLUSH_TOP_BASE_COHERENCY,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_COLOR_BLOCK_COHERENCY = D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_COHERENCY,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_DEPTH_BLOCK_COHERENCY = D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_COHERENCY,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_COLOR_BLOCK_INVALIDATE = D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE = D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L1_INVALIDATE = D3D12XBOX_FLUSH_TOP_TEXTURE_L1_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L2_INVALIDATE = D3D12XBOX_FLUSH_TOP_TEXTURE_L2_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L2_WRITEBACK = D3D12XBOX_FLUSH_TOP_TEXTURE_L2_WRITEBACK,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_KCACHE_INVALIDATE = D3D12XBOX_FLUSH_TOP_KCACHE_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_ICACHE_INVALIDATE = D3D12XBOX_FLUSH_TOP_ICACHE_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_SELECT_ENGINE_PFP = D3D12XBOX_FLUSH_TOP_SELECT_ENGINE_PFP,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_PFP_SYNC_ME = D3D12XBOX_FLUSH_TOP_PFP_SYNC_ME,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_COLOR_BLOCK_DATA = D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_DATA,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_DEPTH_BLOCK_DATA = D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_DATA,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_COLOR_BLOCK_META = D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_META,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_DEPTH_BLOCK_META = D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_META,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L1_INVALIDATE = D3D12XBOX_FLUSH_BOP_TEXTURE_L1_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L2_INVALIDATE = D3D12XBOX_FLUSH_BOP_TEXTURE_L2_INVALIDATE,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L2_WRITEBACK = D3D12XBOX_FLUSH_BOP_TEXTURE_L2_WRITEBACK,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_CS_PARTIAL = D3D12XBOX_FLUSH_BOP_CS_PARTIAL,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_VS_PARTIAL = D3D12XBOX_FLUSH_BOP_VS_PARTIAL,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_PS_PARTIAL = D3D12XBOX_FLUSH_BOP_PS_PARTIAL,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_STREAMOUT = D3D12XBOX_FLUSH_BOP_STREAMOUT,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_COLOR = 0x000100000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_DEPTH = 0x000200000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_STENCIL = 0x000400000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_DEPTH_STENCIL = 0x000600000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_PROPAGATE_COLOR_CLEAR = 0x000800000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_GATHER_COLOR_FMASK = 0x001000000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_ELIMINATE_DCC = 0x002000000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_WAIT_FOR_DISPLAY = 0x100000000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_WAIT_FOR_RESOURCE = 0x200000000000,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_MASK = D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_BASE_COHERENCY | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_COLOR_BLOCK_COHERENCY | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_DEPTH_BLOCK_COHERENCY | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_COLOR_BLOCK_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_KCACHE_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_ICACHE_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_SELECT_ENGINE_PFP | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_TOP_PFP_SYNC_ME,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_MASK = D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_COLOR_BLOCK_DATA | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_DEPTH_BLOCK_DATA | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_COLOR_BLOCK_META | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_DEPTH_BLOCK_META | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_CS_PARTIAL | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_VS_PARTIAL | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_PS_PARTIAL | D3D12XBOX_RESOURCE_BARRIER_ACTION_FLUSH_BOP_STREAMOUT,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_MASK = D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_COLOR | D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_DEPTH | D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_EXPAND_STENCIL | D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_PROPAGATE_COLOR_CLEAR | D3D12XBOX_RESOURCE_BARRIER_ACTION_DECOMPRESS_GATHER_COLOR_fMask,  
    D3D12XBOX_RESOURCE_BARRIER_ACTION_WAIT_MASK = D3D12XBOX_RESOURCE_BARRIER_ACTION_WAIT_FOR_DISPLAY | D3D12XBOX_RESOURCE_BARRIER_ACTION_WAIT_FOR_RESOURCE,  
} D3D12XBOX_RESOURCE_BARRIER_ACTIONS  
```

## 常數

| 常數 | 描述 |
| - | - |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_NONE | 不執行任何動作。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_BASE\_COHERENCY | 如需詳細資訊，請參閱 [D3D12XBOX\_FLUSH](/zh-TW/reference/graphics/d3d12_x/enums/d3d12xbox_flush) 中的 **D3D12XBOX\_FLUSH\_TOP\_BASE\_COHERENCY** 列舉常數。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_COLOR\_BLOCK\_COHERENCY | 在排清快取之前，判斷指定範圍內是否有任何進行中的 RenderTarget0 到 RenderTarget7 轉譯。這可確保色彩緩衝區快取的一致性；當所有記憶體快取中的內容都相同時，即為一致。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_DEPTH\_BLOCK\_COHERENCY | 在排清快取之前，檢查深度緩衝區和 HTILE 表面是否位於指定範圍內。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_COLOR\_BLOCK\_INVALIDATE | 清除並使色彩快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_DEPTH\_BLOCK\_INVALIDATE | 清除並使深度快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_TEXTURE\_L1\_INVALIDATE | 清除並使第 1 層紋理快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_TEXTURE\_L2\_INVALIDATE | 清除並使第 2 層紋理快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_TEXTURE\_L2\_WRITEBACK | 排清第 2 層紋理快取以進行回寫或失效。必須回寫的項目會立即回寫，但這不一定會使快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_KCACHE\_INVALIDATE | 清除並使常數快取中的所有快取行失效。KCACHE 是著色器的純量向量快取。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_ICACHE\_INVALIDATE | 清除並使著色器指令快取中的所有快取行失效。ICACHE 是著色器程式快取。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_SELECT\_ENGINE\_PFP | 在預先擷取剖析器引擎 (而非記憶體引擎) 中執行失效。使用預先擷取剖析器引擎 (而非記憶體引擎) 執行管線頂端列舉常數所指定的快取排清。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_PFP\_SYNC\_ME | 將命令處理器預先擷取剖析器引擎與記憶體引擎同步。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_COLOR\_BLOCK\_DATA | 排清色彩區塊資料。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_DEPTH\_BLOCK\_DATA | 排清深度區塊資料。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_COLOR\_BLOCK\_META | 排清色彩區塊中繼資料。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_DEPTH\_BLOCK\_META | 排清深度區塊中繼資料。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_TEXTURE\_L1\_INVALIDATE | 清除並使第 1 層紋理快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_TEXTURE\_L2\_INVALIDATE | 清除並使第 2 層紋理快取中的所有快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_TEXTURE\_L2\_WRITEBACK | 排清第 2 層紋理快取以進行回寫或失效。必須回寫的項目已立即回寫，但這不一定會使快取行失效。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_CS\_PARTIAL | 確保所有 CS 都已執行完畢，再透過命令處理器 (CP) 處理更多命令。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_VS\_PARTIAL | 確保所有 VS 都已執行完畢，再透過命令處理器 (CP) 處理更多命令。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_PS\_PARTIAL | 確保所有 PS 都已執行完畢，再透過命令處理器 (CP) 處理更多命令。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_STREAMOUT | 排清串流輸出快取。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_EXPAND\_COLOR | 使用已收集 fMask 中的涵蓋範圍值，將每個像素的色彩樣本展開至所有樣本位置。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_EXPAND\_DEPTH | 執行深度解壓縮。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_EXPAND\_STENCIL | 執行樣板解壓縮。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_EXPAND\_DEPTH\_STENCIL | 對樣板和深度執行解壓縮。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_PROPAGATE\_COLOR\_CLEAR | 傳播清除色彩。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_GATHER\_COLOR\_FMASK | 將構成一組 fMask 片段指標的位元平面，收集成每個樣本的連續位元值：讓著色器能從 fMask 擷取，並判斷在讀取壓縮紋理時擷取片段色彩所要使用的多重取樣索引。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_ELIMINATE\_DCC | 消除差異色彩壓縮 (DCC)。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_WAIT\_FOR\_DISPLAY | 表示屏障轉換涉及可呈現的資源。屏障會在呈現佇列上插入等候，以確保轉換後資源不會正在顯示。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_WAIT\_FOR\_RESOURCE | 等候直到轉換中涉及的資源不再由 GPU 寫入。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_TOP\_MASK | 排清管線頂端的動作。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_FLUSH\_BOP\_MASK | 排清管線底端的動作。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_DECOMPRESS\_MASK | 解壓縮的動作。 |
| D3D12XBOX\_RESOURCE\_BARRIER\_ACTION\_WAIT\_MASK | 等候的動作。 |

## 備註

**WAIT**、**FLUSH** 和 **DECOMPRESS** 列舉常數是執行命令清單時所執行的動作。

[ResourceBarrier](/zh-TW/reference/graphics/d3d12_x/interfaces/id3d12xboxdmacommandlist/methods/id3d12xboxdmacommandlist_resourcebarrier) 會傳回 **D3D12XBOX\_RESOURCE\_BARRIER\_ACTIONS** 常數的位元 OR 組合，指出為了該屏障排清管線所採取的動作。

[D3D12GetFlushFromResourceBarrierActionsX](/zh-TW/reference/graphics/d3d12_x/functions/d3d12getflushfromresourcebarrieractionsx) 的 *Actions* 參數使用此列舉。

## 需求

**標頭：** d3d12\_x.h

**支援的平台：** XBOX One 系列

## 另請參閱

[d3d12\_x](/zh-TW/reference/graphics/d3d12_x/d3d12_x_members)


## Related topics

- [NDA 主題目錄 - Microsoft Learn 線上連結](/zh-TW/nda/nda-topic-directory.md)
- [D3D12_RESOURCE_BARRIER](/zh-CN/reference/graphics/d3d12/structs/d3d12_resource_barrier_public.md)
- [D3D12_RESOURCE_BARRIER_TYPE](/zh-CN/reference/graphics/d3d12/enums/d3d12_resource_barrier_type_public.md)
- [D3D12_RESOURCE_ALIASING_BARRIER](/zh-CN/reference/graphics/d3d12/structs/d3d12_resource_aliasing_barrier_public.md)
- [D3D12_RESOURCE_TRANSITION_BARRIER](/zh-CN/reference/graphics/d3d12/structs/d3d12_resource_transition_barrier_public.md)
