Sintaxe
typedef enum D3D12XBOX_FLUSH : UINT
{
D3D12XBOX_FLUSH_NONE = 0x00000000,
D3D12XBOX_FLUSH_TOP_BASE_COHERENCY = 0x00000001,
D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_COHERENCY = 0x00000040,
D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_COHERENCY = 0x00004000,
D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_INVALIDATE = 0x02000000,
D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE = 0x04000000,
D3D12XBOX_FLUSH_TOP_TEXTURE_L1_INVALIDATE = 0x00400000,
D3D12XBOX_FLUSH_TOP_TEXTURE_L2_INVALIDATE = 0x00800000,
D3D12XBOX_FLUSH_TOP_TEXTURE_L2_WRITEBACK = 0x00040000,
D3D12XBOX_FLUSH_TOP_KCACHE_INVALIDATE = 0x08000000,
D3D12XBOX_FLUSH_TOP_ICACHE_INVALIDATE = 0x20000000,
D3D12XBOX_FLUSH_TOP_SELECT_ENGINE_PFP = 0x80000000,
D3D12XBOX_FLUSH_TOP_PFP_SYNC_ME = 0x40000000,
D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_DATA = 0x00000004,
D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_DATA = 0x00000008,
D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_META = 0x00000010,
D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_META = 0x00000020,
D3D12XBOX_FLUSH_BOP_TEXTURE_L1_INVALIDATE = 0x00001000,
D3D12XBOX_FLUSH_BOP_TEXTURE_L2_INVALIDATE = 0x00002000,
D3D12XBOX_FLUSH_BOP_TEXTURE_L2_WRITEBACK = 0x00000800,
D3D12XBOX_FLUSH_BOP_CS_PARTIAL = 0x00020000,
D3D12XBOX_FLUSH_BOP_VS_PARTIAL = 0x00100000,
D3D12XBOX_FLUSH_BOP_PS_PARTIAL = 0x01000000,
D3D12XBOX_FLUSH_BOP_STREAMOUT = 0x00000400,
D3D12XBOX_FLUSH_IDLE = 0x00200000,
D3D12XBOX_FLUSH_TOP_MASK = D3D12XBOX_FLUSH_TOP_BASE_COHERENCY | D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_COHERENCY | D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_COHERENCY | D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_INVALIDATE | D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE | D3D12XBOX_FLUSH_TOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_FLUSH_TOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_FLUSH_TOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_FLUSH_TOP_KCACHE_INVALIDATE | D3D12XBOX_FLUSH_TOP_ICACHE_INVALIDATE | D3D12XBOX_FLUSH_TOP_SELECT_ENGINE_PFP | D3D12XBOX_FLUSH_TOP_PFP_SYNC_ME,
D3D12XBOX_FLUSH_BOP_MASK = D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_DATA | D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_DATA | D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_META | D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_META | D3D12XBOX_FLUSH_BOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_FLUSH_BOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_FLUSH_BOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_FLUSH_BOP_CS_PARTIAL | D3D12XBOX_FLUSH_BOP_VS_PARTIAL | D3D12XBOX_FLUSH_BOP_PS_PARTIAL | D3D12XBOX_FLUSH_BOP_STREAMOUT,
D3D12XBOX_FLUSH_TOP_COMPUTE_MASK = D3D12XBOX_FLUSH_TOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_FLUSH_TOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_FLUSH_TOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_FLUSH_TOP_KCACHE_INVALIDATE | D3D12XBOX_FLUSH_TOP_ICACHE_INVALIDATE,
D3D12XBOX_FLUSH_BOP_COMPUTE_MASK = D3D12XBOX_FLUSH_BOP_TEXTURE_L1_INVALIDATE | D3D12XBOX_FLUSH_BOP_TEXTURE_L2_INVALIDATE | D3D12XBOX_FLUSH_BOP_TEXTURE_L2_WRITEBACK | D3D12XBOX_FLUSH_BOP_CS_PARTIAL,
} D3D12XBOX_FLUSH
Constantes
| Constante | Descrição |
|---|---|
| D3D12XBOX_FLUSH_NONE | Nenhum sinalizador |
| D3D12XBOX_FLUSH_TOP_BASE_COHERENCY | Antes de liberar os caches, verifica se algum contexto gráfico válido está realizando gravações em andamento dentro do intervalo especificado. |
| D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_COHERENCY | Antes de liberar o cache, verifica se há alguma renderização em andamento para RenderTarget0 até RenderTarget7 dentro do intervalo especificado. Essa verificação garante a coerência do cache do buffer de cor. Coerência significa que o conteúdo em diferentes caches de memória é o mesmo. |
| D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_COHERENCY | Antes de liberar os caches, verifica se o buffer de profundidade ou a superfície HTILE estão no intervalo especificado. |
| D3D12XBOX_FLUSH_TOP_COLOR_BLOCK_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de cor. |
| D3D12XBOX_FLUSH_TOP_DEPTH_BLOCK_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de profundidade. |
| D3D12XBOX_FLUSH_TOP_TEXTURE_L1_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de textura de nível 1. |
| D3D12XBOX_FLUSH_TOP_TEXTURE_L2_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de textura de nível 2. |
| D3D12XBOX_FLUSH_TOP_TEXTURE_L2_WRITEBACK | Para Writeback e Invalidate, este sinalizador libera o cache de textura de nível 2. Tudo o que precisa ser gravado de volta é gravado imediatamente, mas este sinalizador não necessariamente invalida as linhas de cache. |
| D3D12XBOX_FLUSH_TOP_KCACHE_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de constantes. KCACHE é o cache de vetor escalar do sombreador. |
| D3D12XBOX_FLUSH_TOP_ICACHE_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de instruções do sombreador. ICACHE é o cache de programa do sombreador. |
| D3D12XBOX_FLUSH_TOP_SELECT_ENGINE_PFP | Este sinalizador instrui o mecanismo de análise de pré-busca (PFP) a executar as liberações de cache especificadas pelos sinalizadores de topo do pipe acima, em vez do Memory Engine (ME). |
| D3D12XBOX_FLUSH_TOP_PFP_SYNC_ME | Sincroniza o PFP do processador de comandos com o ME. |
| D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_DATA | Libera os dados do Color Block. |
| D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_DATA | Libera os dados do Depth Block. |
| D3D12XBOX_FLUSH_BOP_COLOR_BLOCK_META | Libera os metadados do Color Block. |
| D3D12XBOX_FLUSH_BOP_DEPTH_BLOCK_META | Libera os metadados do Depth Block. |
| D3D12XBOX_FLUSH_BOP_TEXTURE_L1_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de textura de nível 1. |
| D3D12XBOX_FLUSH_BOP_TEXTURE_L2_INVALIDATE | Limpa e invalida todas as linhas de cache no cache de textura de nível 2. |
| D3D12XBOX_FLUSH_BOP_TEXTURE_L2_WRITEBACK | Para Writeback e Invalidate, este sinalizador libera o cache de textura de nível 2. Tudo o que precisa ser gravado de volta é gravado imediatamente, mas este sinalizador não necessariamente invalida as linhas de cache. |
| D3D12XBOX_FLUSH_BOP_CS_PARTIAL | Garante que todos os CSs tenham terminado de ser executados antes de processar mais comandos por meio do processador de comandos (CP). |
| D3D12XBOX_FLUSH_BOP_VS_PARTIAL | Garante que todos os VSs tenham terminado de ser executados antes de processar mais comandos por meio do processador de comandos (CP). |
| D3D12XBOX_FLUSH_BOP_PS_PARTIAL | Garante que todos os PSs tenham terminado de ser executados antes de processar mais comandos por meio do processador de comandos (CP). |
| D3D12XBOX_FLUSH_BOP_STREAMOUT | Libera os caches de stream-out. |
| D3D12XBOX_FLUSH_IDLE | Força a GPU a aguardar até ficar ociosa após executar as liberações de base do pipe e antes de prosseguir com a invalidação de topo do pipe. |
| D3D12XBOX_FLUSH_TOP_MASK | Combina todos os sinalizadores de topo do pipe (TOP). |
| D3D12XBOX_FLUSH_BOP_MASK | Combina todos os sinalizadores de base do pipe (BOP). |
| D3D12XBOX_FLUSH_TOP_COMPUTE_MASK | Combina todos os sinalizadores de computação destinados ao topo do pipe. |
| D3D12XBOX_FLUSH_BOP_COMPUTE_MASK | Combina todos os sinalizadores de computação destinados à base do pipe (BOP). |
Comentários
Esta enumeração é usada pelos seguintes itens de API:- Esta enumeração é usada pela enumeração D3D12XBOX_RESOURCE_BARRIER_ACTIONS.
- Esta enumeração é retornada por D3D12GetFlushFromResourceBarrierActionsX.
- Esta enumeração é passada para FlushPipelineX.
- Esta enumeração é passada para SignalX.
