OpenGL ES之混合的概念和使用

Posted ╰つ栺尖篴夢ゞ

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OpenGL ES之混合的概念和使用相关的知识,希望对你有一定的参考价值。

  • OpenGL ES 混合本质上是将 2 个片元的颜色进行调和,产生一个新的颜色。OpenGL ES 混合发生在片元通过各项测试之后,准备进入帧缓冲区的片元和原有的片元按照特定比例加权计算出最终片元的颜色值,不再是新(源)片元直接覆盖缓冲区中的(目标)片元。
  • OpenGL ES 混合方程:
Cresult=Csource∗Fsource + Cdestination∗Fdestination
  • 其中:
    • Csource:源颜色向量,来自纹理的颜色向量;
    • Cdestination:目标颜色向量,储存在颜色缓冲中当前位置的颜色向量;
    • Fsource:源因子,设置了对源颜色加权;
    • Fdestination:目标因子,设置了对目标颜色加权;
    • 操作符可以是加(+)、减(-)、Min、Max 等。
  • 启用 OpenGL ES 混合使用 glEnable(GL_BLEND);,然后通过 glBlendFunc 设置混合的方式,其中 sfactor 表示源因子,dfactor 表示目标因子:

以上是关于OpenGL ES之混合的概念和使用的主要内容,如果未能解决你的问题,请参考以下文章

OpenGL 四 - 002OpenGL 图形渲染之颜色混合

IOS OpenGL ES GPUImage 图像透明混合 GPUImageAlphaBlendFilter

IOS OpenGL ES GPUImage 图像源混合 GPUImageSourceOverBlendFilter

IOS OpenGL ES GPUImage 差值混合 GPUImageDifferenceBlendFilter

IOS OpenGL ES GPUImage 强光混合 GPUImageHardLightBlendFilter

IOS OpenGL ES GPUImage 柔光混合 GPUImageSoftLightBlendFilter