【问题标题】:Color Blending vs Alpha Blending颜色混合与 Alpha 混合
【发布时间】:2012-08-29 06:08:15
【问题描述】:

在试验 XNA BlendState 类时,我发现它有 两个 状态分组:
一种用于Alpha Blending,一种用于Color Blending(正如框架所称)。

每个组的可变成员称为 *BlendFunction*DestinationBlend 和 *SourceBlend
(其中* 替换为AlphaColor)。

我了解如何混合两种 RGBA 颜色,我认为这就是颜色混合功能的用途


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

不是所有 4 个颜色分量(包括 alpha 值)都被颜色混合修改了吗?

【问题讨论】:

    标签: c# .net graphics xna alphablending


    【解决方案1】:

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

    因此,如果您希望所有通道都具有相同的混合功能,则无需将 Alpha 混合设置为任何不同。它只是一个自定义选项,用于在 Alpha 通道上使用不同的混合。

    【讨论】:

    • 你有什么例子说明我何时/如何应用这个吗?
    • 将取决于您要达到的效果。在我的头顶上,什么都没有真正想到。请记住,这些基本上都是用于自己编写着色器的便利功能,或者是由不自己编写着色器的旧硬件本机支持的东西。只要您知道底层硬件将支持它,使用着色器可能是更现代的做事方式,应该考虑到着色器现在是古老的新闻。
    • @Dervall 实际上,混合仍然是少数使用可编程着色器无法完成的事情之一。
    猜你喜欢
    • 2018-12-12
    • 1970-01-01
    • 2013-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-06
    • 2019-01-27
    相关资源
    最近更新 更多