混合,即像素的混合,将几种像素合成新的像素。
下面的公式是用来混合两个像素值的:
SourcePixel——通常被计算的像素,它是利用在后缓存中的像素来被混合的,把它看作当前要渲染的物体。
DestPixel——在后缓存中的像素,把它看作已经渲染的物体。源像素乘以在混合中的百分比 + 目的像素以在混合中的百分比就得到了混合像素;
通过设置不同的源和目的要素(混合中的百分比),我们能够创造很多不同的混合效果:
Device->SetRenderState(D3DRS_SRCBLEND,D3DBLEND_SRCALPHA);
Device->SetRenderState(D3DRS_DESTBLEND,D3DBLEND_INVSRCALPHA);
源和目的要素(混合中的百分比):
D3DBLEND_ZERO——blendFactor=(0, 0, 0, 0)
D3DBLEND_ONE——blendFactor=(1, 1, 1, 1)
D3DBLEND_SRCCOLOR——blendFactor=(rs, gs, bs, as)