структура D3D12_BLEND_DESC (d3d12.h)
Описывает состояние смешения.
Синтаксис
typedef struct D3D12_BLEND_DESC {
BOOL AlphaToCoverageEnable;
BOOL IndependentBlendEnable;
D3D12_RENDER_TARGET_BLEND_DESC RenderTarget[8];
} D3D12_BLEND_DESC;
Члены
AlphaToCoverageEnable
Указывает, следует ли использовать альфа-охват в качестве метода множественной выборки при настройке пикселя для целевого объекта отрисовки. Дополнительные сведения об использовании альфа-охвата см. в разделе Альфа-охват.
IndependentBlendEnable
Указывает, следует ли включать независимое смешивание в целевых объектах одновременной отрисовки. Задайте значение TRUE , чтобы включить независимое смешивание. Если задано значение FALSE, используются только члены RenderTarget[0]; RenderTarget[1..7] игнорируются.
Ограничения см. в разделе Примечания .
RenderTarget[8]
Массив D3D12_RENDER_TARGET_BLEND_DESC структур, описывающих состояния смешения для целевых объектов отрисовки; они соответствуют восьми целевым объектам отрисовки, которые можно одновременно привязать к этапу слияния и вывода .
Комментарии
Объект D3D12_GRAPHICS_PIPELINE_STATE_DESC содержит структуру состояния смешения, которая управляет смешением на этапе вывода и слияния.
Ниже приведены значения по умолчанию для состояния смешения.
Состояние | Значение по умолчанию |
---|---|
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 |
Если для элемента LogicOpEnable первого элемента массива RenderTarget (RenderTarget[0]) задано значение TRUE, необходимо также задать для элемента BlendEnableRenderTarget[0] значение FALSE, а для элемента IndependentBlendEnable этой структуры — значение FALSE. Это отражает ограничение оборудования, из-за того, что нельзя сочетать логические операции с смешением между несколькими целевыми объектами отрисовки, и что при использовании логической операции необходимо применять одну и ту же логику ко всем целевым объектам отрисовки.
Обратите внимание на вспомогательную структуру CD3DX12_BLEND_DESC.
Требования
Требование | Значение |
---|---|
Заголовок | d3d12.h |