Compartilhar via


estrutura D3D11_BLEND_DESC1 (d3d11_1.h)

Descreve o estado de combinação que você usa em uma chamada para D3D11Device1::CreateBlendState1 para criar um objeto de estado de mistura.

Observação

Essa estrutura é compatível com o runtime do Direct3D 11.1, que está disponível no Windows 8 e em sistemas operacionais posteriores.

Sintaxe

typedef struct D3D11_BLEND_DESC1 {
  BOOL                            AlphaToCoverageEnable;
  BOOL                            IndependentBlendEnable;
  D3D11_RENDER_TARGET_BLEND_DESC1 RenderTarget[8];
} D3D11_BLEND_DESC1;

Membros

AlphaToCoverageEnable

Tipo: BOOL

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

Tipo: BOOL

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]

Tipo: D3D11_RENDER_TARGET_BLEND_DESC1[8]

Uma matriz de estruturas de D3D11_RENDER_TARGET_BLEND_DESC1 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

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 D3D11_BLEND_ONE
RenderTarget[0]. DestBlend D3D11_BLEND_ZERO
RenderTarget[0]. BlendOp D3D11_BLEND_OP_ADD
RenderTarget[0]. SrcBlendAlpha D3D11_BLEND_ONE
RenderTarget[0]. DestBlendAlpha D3D11_BLEND_ZERO
RenderTarget[0]. BlendOpAlpha D3D11_BLEND_OP_ADD
RenderTarget[0]. LogicOp D3D11_LOGIC_OP_NOOP
RenderTarget[0]. RenderTargetWriteMask D3D11_COLOR_WRITE_ENABLE_ALL

Se o tipo de driver estiver definido como D3D_DRIVER_TYPE_HARDWARE, o nível de recurso será definido como menor ou igual a D3D_FEATURE_LEVEL_9_3 e o formato de pixel do destino de renderização será definido como DXGI_FORMAT_R8G8B8A8_UNORM_SRGB, DXGI_FORMAT_B8G8R8A8_UNORM_SRGB ou DXGI_FORMAT_B8G8R8X8_UNORM_SRGB, o dispositivo de exibição executará a combinação no espaço RGB padrão (sRGB) e não no espaço linear. No entanto, se o nível de recurso for definido como maior que D3D_FEATURE_LEVEL_9_3, o dispositivo de exibição executará a combinação em espaço linear, o que é ideal.

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 desse D3D11_BLEND_DESC1 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.

Requisitos

   
Cliente mínimo com suporte Windows 8 e Platform Update para Windows 7 [aplicativos da área de trabalho | Aplicativos UWP]
Servidor mínimo com suporte Windows Server 2012 e Platform Update para Windows Server 2008 R2 [aplicativos da área de trabalho | Aplicativos UWP]
Cabeçalho d3d11_1.h

Confira também

Estruturas principais

D3D11_RENDER_TARGET_BLEND_DESC1

ID3D11BlendState1::GetDesc1