2012-08-29 55 views
0

虽然与XNA BlendState类实验,我发现它有状态分组:
一个用于Alpha混合,一个用于混色(如框架调用它)。混色VS Alpha混合

每个组的可变成员被称为*BlendFunction*DestinationBlend和* SourceBlend
(其中*由或AlphaColor取代)。

我知道如何混合两个RGBA颜色,我认为这是混色功能是什么


这是什么“阿尔法混合”是XNA显然支持的目的是什么?它是如何工作的?

是不是所有的4种颜色成分,包括alpha值,都由Color Blending修改?

回答

2

是的,所有四个组件都通过颜色混合进行混合。 Alpha混合可让您设置一个自定义混合,仅为Alpha通道覆盖颜色混合。

所以,如果你想对所有通道使用相同的混合函数,就不需要将alpha混合设置为任何不同。这只是在alpha通道上使用不同混合的定制选项。

+0

你有什么时候/我该如何应用它的例子吗? – Griffin

+0

将取决于你试图达到什么效果。在我的头顶上,没有什么是真正想到的。请记住,这些全部基本上都是用于自己编写着色器的便利功能,或者是旧硬件本身支持的不自己着色的东西。使用着色器可能是更现代的做事方式,只要你知道底层硬件将支持它,应该看到着色器是现在的古老新闻。 – Dervall

+0

@Dervall实际上,混合仍然是使用可编程着色器无法完成的少数几件事之一。 –