基于Qt的OpenGL可编程管线学习(14)- 正片叠底、逆正片叠底

发布时间:2020-07-15 21:32:48 作者:Douzhq
来源:网络 阅读:414

1、正片叠底

shader

// 正片叠底
uniform sampler2D U_MainTexture;
uniform sampler2D U_SubTexture;

varying vec2 M_coord;

void main()
{
        vec4 blendColor = texture2D(U_SubTexture, M_coord);
        vec4 baseColor = texture2D(U_MainTexture, M_coord);
        gl_FragColor = blendColor * baseColor;
}

效果图

基于Qt的OpenGL可编程管线学习(14)- 正片叠底、逆正片叠底


2、逆正片叠底

shader

// 逆正片叠底
uniform sampler2D U_MainTexture;
uniform sampler2D U_SubTexture;

varying vec2 M_coord;

void main()
{
        vec4 blendColor = texture2D(U_SubTexture, M_coord);
        vec4 baseColor = texture2D(U_MainTexture, M_coord);
        gl_FragColor = vec4(1.0) - (vec4(1.0) - blendColor) * (vec4(1.0) - baseColor);
}

效果图

基于Qt的OpenGL可编程管线学习(14)- 正片叠底、逆正片叠底

推荐阅读:
  1. 基于Qt的OpenGL可编程管线学习(2)- obj模型绘制
  2. CSS3混合模式的示例分析

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

qt opengl shader

上一篇:Python While 循环语句

下一篇:网络设备自动备份

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》