我的问题是:
我无法正确地将Alpha Blend对象绘制到渲染目标中,
我在dx9上有一些经验,但在dx11没有,所以不知道我在dx11中想念的是什么。
请关注图片......
创建渲染目标时,必须在dx 11中设置任何标志?或添加任何代码混合或.. 我不知道我错过了什么。
感谢。
答案 0 :(得分:0)
结帐ID3D11Device::CreateBlendState
。对于保留alpha的标准Alpha混合,请使用以下参数:
AlphaToCoverageEnable = FALSE;
IndependentBlendEnable = FALSE;
BlendEnable[0] = TRUE;
SrcBlend[0] = D3D11_BLEND_SRC_ALPHA;
DestBlend[0] = D3D11_BLEND_INV_SRC_ALPHA;
BlendOp[0] = D3D11_BLEND_OP_ADD;
SrcBlendAlpha[0] = D3D11_BLEND_ONE;
DestBlendAlpha[0] = D3D11_BLEND_INV_SRC_ALPHA;
BlendOpAlpha[0] = D3D11_BLEND_OP_ADD;
RenderTargetWriteMask[0] = D3D11_COLOR_WRITE_ENABLE_ALL;
不要忘记致电ID3D11DeviceContext::OMSetBlendState
。