[NDK]从Opengles到Vulkan-基础篇(10)-混合

关于绘制调用的流程

我们可以看到整个流程步骤

  • 1 光栅化
  • 2 裁剪测试
  • 3 多重采样
  • 4 深度测试
  • 5 模板测试
  • 6 混合
  • 7 抖动
  • 8 输出帧数据
    [NDK]从Opengles到Vulkan-基础篇(10)-混合_第1张图片

这一节会涉及到颜色混合。

关于混合

颜色混合的应用:混合可以应用在原有的画面的基础上,添加头像,添加其他遮罩贴图这些内容时使用。
混合其实,可以想象为当多个纹理叠加的时候,纹理都是方形图片,深入的纹理叠加肯定是有透明度的叠加,这个时候就需要开启混合,并对透明度和颜色叠加做调整。这里说的颜色混合是在两个不同的shader处理间的混合,如果同一个shader,可以通过fragment shader来做计算处理。

说明一下符合参数
(Sr, Sg, Sb, Sa)代表源颜色src(要绘制的颜色);
(Dr, Dg, Db, Da)代表目标颜色Dest(缓冲区中颜色);
(Kr, Kg, Kb, Ka)代表缓冲区中各个通道R, G, B, A的最大值。
那么各个参数因子所代表的值如下表所示:

混合因子 各颜色通道色彩比例值
[NDK]从Opengles到Vulkan-基础篇(10)-混合_第2张图片
简单聚个例子说明

// 最常用的混合因子搭配方式
// 即源因子为 GL_SRC_ALPHA

你可能感兴趣的:(计算机视觉,opengles,vulkan,着色器)