在 Direct3D 12 中,D3D12_RENDER_TARGET_BLEND_DESC 是一个结构体,用于描述渲染目标的混合状态。

以下是 D3D12_RENDER_TARGET_BLEND_DESC 结构的定义:
typedef struct D3D12_RENDER_TARGET_BLEND_DESC {
  BOOL           BlendEnable;
  BOOL           LogicOpEnable;
  D3D12_BLEND    SrcBlend;
  D3D12_BLEND    DestBlend;
  D3D12_BLEND_OP BlendOp;
  D3D12_BLEND    SrcBlendAlpha;
  D3D12_BLEND    DestBlendAlpha;
  D3D12_BLEND_OP BlendOpAlpha;
  D3D12_LOGIC_OP LogicOp;
  UINT8          RenderTargetWriteMask;
} D3D12_RENDER_TARGET_BLEND_DESC;

结构体成员的含义如下:

  •  BlendEnable: 布尔值,指示混合是否启用。


  •  LogicOpEnable: 布尔值,指示逻辑操作是否启用。


  •  SrcBlend: 指定源颜色的混合因子,是一个 D3D12_BLEND 枚举值。


  •  DestBlend: 指定目标颜色的混合因子,是一个 D3D12_BLEND 枚举值。


  •  BlendOp: 指定混合操作,是一个 D3D12_BLEND_OP 枚举值。


  •  SrcBlendAlpha: 指定源透明度的混合因子,是一个 D3D12_BLEND 枚举值。


  •  DestBlendAlpha: 指定目标透明度的混合因子,是一个 D3D12_BLEND 枚举值。


  •  BlendOpAlpha: 指定透明度混合操作,是一个 D3D12_BLEND_OP 枚举值。


  •  LogicOp: 指定逻辑操作,是一个 D3D12_LOGIC_OP 枚举值。


  •  RenderTargetWriteMask: 指定写入渲染目标的颜色分量掩码,是一个按位组合的标志,可以使用 D3D12_COLOR_WRITE_ENABLE 定义。


这个结构体用于描述在渲染通道中渲染目标的混合状态。在创建管线状态对象时,可以使用这个结构体来配置渲染目标的混合行为。


转载请注明出处:http://www.pingtaimeng.com/article/detail/25982/Win32 API/D3d12.h/D3D12_RENDER_TARGET_BLEND_DESC