参考来源:颜色混合opengl--glBlendFunc函数 - jackdesk - 博客园
语法: glBlendFunc(GLenum sfactor,GLenum dfactor);
源因子和目标因子是可以通过glBlendFunc函数来进行设置的。glBlendFunc有两个参数,前者sfactor表示源因子,后者dfactor表示目标因子。这两个参数可以是多种值,下面介绍比较常用的几种。
GL_ZERO: 表示使用0.0作为因子,实际上相当于不使用这种颜色参与混合运算。
GL_ONE: 表示使用1.0作为因子,实际上相当于完全的使用了这种颜色参与混合运算。
GL_SRC_ALPHA:表示使用源颜色的alpha值来作为因子。
GL_DST_ALPHA:表示使用目标颜色的alpha值来作为因子。
GL_ONE_MINUS_SRC_ALPHA:表示用1.0减去源颜色的alpha值来作为因子(1-alpha)。
GL_ONE_MINUS_DST_ALPHA:表示用1.0减去目标颜色的alpha值来作为因子。
如果设置了glBlendFunc(GL_ONE, GL_ZERO);,则表示完全使用源颜色,完全不使用目标颜色,因此画面效果和不使用混合的时候一致(当然效率可能会低一点点)。如果没有设置源因子和目标因子,则默认情况就是这样的设置。
如果设置了glBlendFunc(GL_ZERO, GL_ONE);,则表示完全

这篇博客详细介绍了OpenGL中的glBlendFunc函数,用于设置颜色混合时的源因子和目标因子,包括GL_ZERO、GL_ONE、GL_SRC_ALPHA等参数的含义及应用场景。通过不同的参数组合,可以实现从完全使用源颜色到完全使用目标颜色的各种混合效果,常用于实现不透明度控制和颜色叠加。
最低0.47元/天 解锁文章
3590

被折叠的 条评论
为什么被折叠?



