Alpha Blending 即Alpha混合

Blending 就是处理透明度的,处理光栅化最后阶段,显示在屏幕上的颜色

1 Blend Off 关闭alpha混合

2 混合公式:Blend SrcFactor DstFactor
SrcFactor 混合源系数 Shader当前计算点的颜色的混合系数
DstFactor 混合目标系数 当前点之前累积的颜色的混合系数
最终颜色 = (Shader计算出的点颜色值 * 源系数)+(点累积颜色 * 目标系数)

3 常用的混合系数
one 1(仅显示RBG值)
zero 0(不参与混合,为(0,0,0,0))
ScrColor 源的RGB值
ScrAlpha 源的alpha值
DstColor 目标的RGB值
DstAlpha 目标的alpha值
OneMinusSrcColor 1减源RGB值
OneMinusScrAlpha 1减源alpha值
OneMinusDstColor 1减目标RGB值
OneMinusDstAlpha 1减目标alpha值

4 几种混合方式案例
Blend zero one             仅显示目标的RGB 无透明通道处理(alpha为1)
Blend one zero            仅显示源的RGB 无透明通道处理(alpha为1)
Blend one one             目标和源的RGB值相加,无透明通道处理(alpha为1)
Blend ScrAlpha zero         仅显示源的颜色(处理透明通道),完全透明的地方显示(0,0,0,1)
Blend ScrAlpha OneMinusScrAlpha 源RGB * alpha + 目标RGB * (1 - alpha)

5 颜色计算规则
(注:r,g,b,a,x,y,z取值范围为[0,1])
(r,g,b)* a = (r * a , g * a , b * a)
(r,g,b)* (x,y,z) = (r * x , g * y , b * z)
(r,g,b)+ (x,y,z) = (r + x , g + y , b + z)
(r,g,b)- (x,y,z) = (r - x , g - y , b - z)

【Unity Shader】---Alpha Blending的意义的更多相关文章

  1. 【Unity Shaders】Alpha Test和Alpha Blending

    写在前面 关于alpha的问题一直是个比较容易摸不清头脑的事情,尤其是涉及到半透明问题的时候,总是不知道为什么A就遮挡了B,而B明明在A前面.这篇文章就总结一下我现在的认识~ Alpha Test和A ...

  2. (转)【Unity Shaders】Alpha Test和Alpha Blending

    转自:http://blog.csdn.net/candycat1992/article/details/41599167 写在前面 关于alpha的问题一直是个比较容易摸不清头脑的事情,尤其是涉及到 ...

  3. Unity Shader入门精要学习笔记 - 第8章 透明效果

    转载自 冯乐乐的 <Unity Shader入门精要> 透明是游戏中经常要使用的一种效果.在实时渲染中要实现透明效果,通常会在渲染模型时控制它的透明通道.当开启透明混合后,当一个物体被渲染 ...

  4. Unity Shader入门教程(一)

    参考文献:http://www.360doc.com/content/13/0923/15/12282510_316492286.shtml Unity Shader是着色器,将纹理.网格信息输入,得 ...

  5. Unity Shader 入门精要学习 (冯乐乐 著)

    第1篇 基础篇 第1章 欢迎来到Shader的世界 第2章 渲染流水线 第3章 Unity Shader 基础 第4章 学习Shader所需的数学基础 第2篇 初级篇 第5章 开始Unity Shad ...

  6. 【Unity Shader】(五) ------ 透明效果之半透明效果的实现及原理

    笔者使用的是 Unity 2018.2.0f2 + VS2017,建议读者使用与 Unity 2018 相近的版本,避免一些因为版本不一致而出现的问题 [Unity Shader学习笔记](三) -- ...

  7. Unity Shader 之 透明效果

    透明效果 透明效果一般有两种实现方法: 第一种,使用透明度测试(Alpha Test) 第二种,使用透明度混合(Alpha Blending) 透明度测试和透明度混合机制: 透明度测试(Alpha T ...

  8. 【我的书】Unity Shader的书 — 文件夹(2015.12.21更新)

    写在前面 感谢全部点进来看的朋友.没错.我眼下打算写一本关于Unity Shader的书. 出书的目的有以下几个: 总结我接触Unity Shader以来的历程,给其它人一个借鉴.我非常明确学Shad ...

  9. 【原】Unity Shader VS UDK Material Editor

    UDK 的材质编辑器十分好用,毕竟是所见即所得的.虽然unity也有类似第三方插件,但易用性还是差很多,下面主要是,把一些常见表达式概念对应起来. 1. UDK CameraVector (相机位向量 ...

随机推荐

  1. 不启动或进入虚拟机,查看 KVM 虚拟机中的网卡信息

    #!bin/bash#作者:liusingbon#功能:#脚本使用工具guestmount,可以将虚拟机的磁盘系统挂载到真实机文件系统中#Centos7.2中安装libguestfs-tools-c, ...

  2. 下载xlsx文件打开一直提示文件已损坏

    这是office受保护视图导致的原因所造成的,按照以下操作,问题就不是问题了 解决办法如下: 1.在打开excel2018数据表格时,出现提示“文件已损坏,无法打开”,点击确定按钮 2.进入空白程序界 ...

  3. 【串线篇】spring boot启动配置原理

    几个重要的事件回调机制 配置在META-INF/spring.factories ApplicationContextInitializer SpringApplicationRunListener ...

  4. Django【第10篇】:Django之分页初级版本

    分页和中间件 一.分页 Django的分页器(paginator) view.py from django.shortcuts import render,HttpResponse # Create ...

  5. SSM框架整合之单独整合Mybatis

    整合步骤 导入必须jar包 mybatis核心jar包 mybatis依赖jar包 数据库驱动包 建立数据库表 建立实体类 建立Mapper接口 建立sql映射文件 <?xml version= ...

  6. NOIP2016 D1T1 玩具谜题

    洛谷P1563 看完了noip2017觉得noip2016是真的简单……2017第一题就卡住2016第一题10分钟AC 思路: m<=100000很明显暴力模拟就可以 唯一有一点点难度的地方就是 ...

  7. C++的命令行参数(gflag)

    参考:https://www.cnblogs.com/myyan/p/4699940.html 这是一款google开源的命令行参数解析工具,支持从环境变量.配置文件读取参数(可以用gflags代替配 ...

  8. 8:Spring Boot Shiro记住密码

    1,添加Cookie 2,添加安全管理器中 3,配置记住我, 4 ,在登录页面中加我rememberMe复选框 /** * 1.配置Cookie对象 * 记住我的cookie:rememberMe * ...

  9. JDK5的新特性

    本篇博客内容 一.自动装箱和自动拆箱 二.泛型 三.增强for循环 四.静态导入 五.可变参数 六.枚举 一.自动装箱和自动拆箱  <=返回目录 java有8种基本数据类型  byte.shor ...

  10. React使用的思考总结

    1.事件处理中的this指针问题 在 react 中,用 class 声明一个组件,调用 class 中的方法时,如果该方法中有 this 且没有手动绑定 this 指针,则会发生 this 指向 u ...