estrutura D3D12_BLEND_DESC (d3d12.h)
Descreve o estado de combinação.
Sintaxe
typedef struct D3D12_BLEND_DESC {
BOOL AlphaToCoverageEnable;
BOOL IndependentBlendEnable;
D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8];
} D3D12_BLEND_DESC;
Membros
AlphaToCoverageEnable
Especifica se deve usar a alpha-to-coverage como uma técnica de multisampling ao definir um pixel como um destino de renderização. Para obter mais informações sobre como usar a alpha-to-coverage, consulte Alpha-To-Coverage.
IndependentBlendEnable
Especifica se a combinação independente deve ser habilitada em destinos de renderização simultâneos. Defina como TRUE para habilitar a mesclagem independente. Se definido como FALSE, somente os membros RenderTarget[0] serão usados; RenderTarget[1..7] são ignorados.
Consulte a seção Comentários para obter restrições.
RenderTarget[8]
Uma matriz de estruturas de D3D12_RENDER_TARGET_BLEND_DESC que descrevem os estados de combinação para destinos de renderização; correspondem aos oito destinos de renderização que podem ser associados ao estágio de fusão de saída de uma só vez.
Comentários
Um objeto D3D12_GRAPHICS_PIPELINE_STATE_DESC contém uma estrutura de estado de mesclagem que controla a mesclagem pelo estágio de fusão de saída.
Aqui estão os valores padrão para o estado de mesclagem.
Estado | Valor padrão |
---|---|
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 |
Ao definir o membro LogicOpEnable do primeiro elemento da matriz RenderTarget (RenderTarget[0]) como TRUE, você também deve definir o membro BlendEnable de RenderTarget[0] como FALSE e o membro IndependentBlendEnable dessa estrutura como FALSE. Isso reflete a limitação no hardware de que você não pode misturar operações lógicas com a mesclagem entre vários destinos de renderização e que, ao usar uma operação lógica, você deve aplicar a mesma operação lógica a todos os destinos de renderização.
Observe a estrutura auxiliar , CD3DX12_BLEND_DESC.
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | d3d12.h |