我有一些精灵,当它们重叠时,我希望它们将它们的颜色rgb值'添加'到(可能)变白,精灵也具有应该保持不变的changin alpha值。我已经尝试使用所有的spritebatch选项alphablend,添加剂等...XNA在重叠时添加颜色
这是可能的通过spritebatch或将我需要着色器?
谢谢, 保罗。
我有一些精灵,当它们重叠时,我希望它们将它们的颜色rgb值'添加'到(可能)变白,精灵也具有应该保持不变的changin alpha值。我已经尝试使用所有的spritebatch选项alphablend,添加剂等...XNA在重叠时添加颜色
这是可能的通过spritebatch或将我需要着色器?
谢谢, 保罗。
在XNA 4中使用预乘Alpha模式,可以通过将纹理绘制在0 alpha处来进行叠加混合。因为这意味着纹理完成了0次遮挡,然后将RGB添加到它后面的像素,则可以获得叠加混合。
只需使用spritebatch模式'Alphablend'绘制0 alpha的纹理。要降低可加性,请增加alpha。为了减少可见度,降低RGB。
我强烈建议您确保您的内容中的任何纹理在其属性中勾选了“预乘Alpha”选项,如果使用此选项。
添加剂没有给你想要的效果? –
不,它不会添加只是将颜色添加到一起 - 所以绿色绿色使绿色色调更强 - 通过组合颜色来组合颜色。 – Paul