混色VS Alpha混合
问题描述:
虽然与XNA BlendState类实验,我发现它有状态分组:
一个用于Alpha混合,一个用于混色(如框架调用它)。混色VS Alpha混合
每个组的可变成员被称为*BlendFunction
,*DestinationBlend
和* SourceBlend
(其中*
由或Alpha
或Color
取代)。
我知道如何混合两个RGBA颜色,我认为这是混色功能是什么
这是什么“阿尔法混合”是XNA显然支持的目的是什么?它是如何工作的?
是不是所有的4种颜色成分,包括alpha值,都由Color Blending修改?
答
是的,所有四个组件都通过颜色混合进行混合。 Alpha混合可让您设置一个自定义混合,仅为Alpha通道覆盖颜色混合。
所以,如果你想对所有通道使用相同的混合函数,就不需要将alpha混合设置为任何不同。这只是在alpha通道上使用不同混合的定制选项。
你有什么时候/我该如何应用它的例子吗? – Griffin
将取决于你试图达到什么效果。在我的头顶上,没有什么是真正想到的。请记住,这些全部基本上都是用于自己编写着色器的便利功能,或者是旧硬件本身支持的不自己着色的东西。使用着色器可能是更现代的做事方式,只要你知道底层硬件将支持它,应该看到着色器是现在的古老新闻。 – Dervall
@Dervall实际上,混合仍然是使用可编程着色器无法完成的少数几件事之一。 –