18. Shader中Blend渲染命令的参数
18.1 题目
Shader当中的Blend渲染命令后面跟的参数是用来干嘛的?
比如:
Blend SrcAlpha OneMinusSrcAlpha
18.2 答案
Blend混合命令后面跟的参数有两种写法,这些因子其实就是一些特定的数,用于参与混合计算。
写法一:
- 输出颜色的RGB值 = 源因子 * 片元颜色的RGB值 + 目标因子 * 颜色缓冲区中颜色的RGB值
- 输出颜色的Alpha值 = 源透明因子 * 片元颜色的Alpha值 + 目标透明因子 * 颜色缓冲区中颜色的Alpha值
写法二:
- 输出颜色的RGB值 = 源因子 * 片元颜色的RGB值 + 目标因子 * 颜色缓冲区中颜色的RGB值
- 输出颜色的Alpha值 = 源因子 * 片元颜色的Alpha值 + 目标因子 * 颜色缓冲区中颜色的Alpha值
示例:
Blend SrcAlpha OneMinusSrcAlpha
解释:
SrcAlpha
表示源因子是片元颜色的Alpha值。OneMinusSrcAlpha
表示目标因子是1减去片元颜色的Alpha值。
这个命令表示的是一个常见的Alpha混合模式,即新绘制的片元颜色和已经存在的颜色根据Alpha值进行混合,从而实现半透明效果。
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 785293209@qq.com