struttura D3D12_BLEND_DESC (d3d12.h)
Descrive lo stato di fusione.
Sintassi
typedef struct D3D12_BLEND_DESC {
BOOL AlphaToCoverageEnable;
BOOL IndependentBlendEnable;
D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8];
} D3D12_BLEND_DESC;
Members
AlphaToCoverageEnable
Specifica se usare alpha-to-coverage come tecnica di multicampionamento quando si imposta un pixel su una destinazione di rendering. Per altre info sull'uso di alpha-to-coverage, vedi Alpha-To-Coverage.
IndependentBlendEnable
Specifica se abilitare la fusione indipendente in destinazioni di rendering simultanee. Impostare su TRUE per abilitare la fusione indipendente. Se impostato su FALSE, vengono usati solo i membri RenderTarget[0]. RenderTarget[1..7] viene ignorato.
Vedere la sezione Osservazioni per le restrizioni.
RenderTarget[8]
Matrice di strutture D3D12_RENDER_TARGET_BLEND_DESC che descrivono gli stati di fusione per le destinazioni di rendering; corrispondono alle otto destinazioni di rendering che possono essere associate alla fase di fusione dell'output contemporaneamente.
Commenti
Un oggetto D3D12_GRAPHICS_PIPELINE_STATE_DESC contiene una struttura dello stato blend che controlla la fusione in base alla fase di unione dell'output.
Ecco i valori predefiniti per lo stato di fusione.
State | Valore predefinito |
---|---|
AlphaToCoverageEnable | FALSE |
IndependentBlendEnable | FALSE |
RenderTarget[0]. BlendEnable | FALSE |
RenderTarget[0]. LogicOpEnable | FALSE |
RenderTarget[0]. SrcBlend | D3D12_BLEND_ONE |
RenderTarget[0]. DestBlend | D3D12_BLEND_ZERO |
RenderTarget[0]. BlendOp | D3D12_BLEND_OP_ADD |
RenderTarget[0]. SrcBlendAlpha | D3D12_BLEND_ONE |
RenderTarget[0]. DestBlendAlpha | D3D12_BLEND_ZERO |
RenderTarget[0]. BlendOpAlpha | D3D12_BLEND_OP_ADD |
RenderTarget[0]. LogicOp | D3D12_LOGIC_OP_NOOP |
RenderTarget[0]. RenderTargetWriteMask | D3D12_COLOR_WRITE_ENABLE_ALL |
Quando si imposta il membro LogicOpEnable del primo elemento della matrice RenderTarget (RenderTarget[0]) su TRUE, è inoltre necessario impostare il membro BlendEnable di RenderTarget[0] su FALSE e il membro IndependentBlendEnable di questa struttura su FALSE. Ciò riflette la limitazione nell'hardware che non è possibile combinare le operazioni logiche con la fusione tra più destinazioni di rendering e che quando si usa un'operazione logica, è necessario applicare la stessa operazione logica a tutte le destinazioni di rendering.
Si noti la struttura dell'helper CD3DX12_BLEND_DESC.
Requisiti
Requisito | Valore |
---|---|
Intestazione | d3d12.h |