shader 混合模式

news/2024/11/16 14:26:38/

在所有着色器执行完毕,所有纹理都被应用,所有像素准备被呈现到屏幕之后,使用Blend命令来操作这些像素进行混合。

3.2 blend的语法

         BlendOff:关闭blend混合(默认值)

         BlendSrcFactor DstFactor :配置并启动混合。产生的颜色被乘以SrcFactor. 已存在于屏幕的颜色乘以DstFactor,并且两者将被叠加在一起。

         BlendSrcFactor DstFactor, SrcFactorA DstFactorA:同上,但是使用不同的要素来混合alpha通道

         BlendOpBlendOpValue:不是添加混合颜色在一起,而是对它们做不同的操作。

         BlendOpOpColor, OpAlpha:同上,但是使用不同的操作来处理alpha通道

         AlphaToMaskOn:里面新添加的,常用在开启多重渲染(MSAA)的地表植被的渲染。

 

Unity中的混合因子(和OpenGL的差不多):

  

One

  

值为1,使用此设置来让源或是目标颜色完全的通过。

Zero

值为0,使用此设置来删除源或目标值。

SrcColor

此阶段的值是乘以源颜色的值。

SrcAlpha

此阶段的值是乘以源alpha的值。

DstColor

此阶段的值是乘以帧缓冲区源颜色的值。

DstAlpha

此阶段的值是乘以帧缓冲区源alpha的值。

OneMinusSrcColor

此阶段的值是乘以(1 - source color)

OneMinusSrcAlpha

此阶段的值是乘以(1 - source alpha)

OneMinusDstColor

此阶段的值是乘以(1 - destination color)

OneMinusDstAlpha

此阶段的值是乘以(1 - destination alpha)

 

混合的操作符(Blend operations)

  

Add

  

Add source and destination together.

Sub

Subtract destination from source.

RevSub

Subtract source from destination.

Min

Use the smaller of source and  destination.

Max

Use the larger of source and destination.

LogicalClear

Logical operation: Clear (0) DX11.1  only.

LogicalSet

Logical operation: Set (1) DX11.1  only.

LogicalCopy

Logical operation: Copy (s) DX11.1  only.

LogicalCopyInverted

Logical operation: Copy inverted  (!s) DX11.1 only.

LogicalNoop

Logical operation: Noop (d) DX11.1  only.

LogicalInvert

Logical operation: Invert  (!d) DX11.1 only.

LogicalAnd

Logical operation: And (s &  d) DX11.1 only.

LogicalNand

Logical operation: Nand !(s &  d) DX11.1 only.

LogicalOr

Logical operation: Or (s | d) DX11.1  only.

LogicalNor

Logical operation: Nor !(s | d) DX11.1  only.

LogicalXor

Logical operation: Xor (s ^  d) DX11.1 only.

LogicalEquiv

Logical operation: Equivalence !(s ^  d) DX11.1 only.

LogicalAndReverse

Logical operation: Reverse And (s &  !d) DX11.1 only.

LogicalAndInverted

Logical operation: Inverted And (!s &  d) DX11.1 only.

LogicalOrReverse

Logical operation: Reverse Or (s |  !d) DX11.1 only.

LogicalOrInverted

Logical operation: Inverted Or (!s |  d) DX11.1 only

 

下列是最经常使用的混合类型

Blend SrcAlpha OneMinusSrcAlpha // Alphablending alpha混合

Blend One One // Additive 相加混合

Blend One OneMinusDstColor // Soft Additive柔和相加混合

Blend DstColor Zero // Multiplicative 相乘混合

BlendDstColor SrcColor // 2x Multiplicative 2倍相乘混合


http://www.ppmy.cn/news/98811.html

相关文章

几种常用的正则表达式

1、身份证号正则表达式 身份证号是一串18位数字和字母的组合,其中最后一位可能为数字或者字母 X。以下是可以用于匹配身份证号的正则表达式: /^[1-9]\d{5}(19|20)\d{2}((0[1-9])|(1[0-2]))(([0-2][1-9])|10|20|30|31)\d{3}[Xx\d]$/上述正则表达式中包含…

【喜闻乐见,包教包会】二分图最大匹配:匈牙利算法(洛谷P3386)

🎭不要管上面那玩意。。。 引入 现在,你,是一位酒店的经理。 西装笔挺,清瘦智慧。 金丝眼镜,黑色钢笔。 大理石的地板,黑晶石的办公桌,晶莹的落地玻璃。 而现在,有几个雍容华贵的…

哈希应用: 位图 + 布隆过滤器

文章目录 哈希应用: 位图 布隆过滤器1. 位图1.1 提出问题1.2 位图概念1.3 位图实现1.4 位图应用1.4.1 变形题1代码 1.4.2 变形题21.4.3 找文件交集思路1思路2 1.4.4 总结 1.5 位图优缺点 2. 哈希切割3. 布隆过滤器3.1 提出问题3.2 布隆过滤器概念3.3 布隆过滤器的各个接口3.3.…

路径规划算法:基于帝国主义竞争优化的路径规划算法- 附代码

路径规划算法:基于帝国主义竞争优化的路径规划算法- 附代码 文章目录 路径规划算法:基于帝国主义竞争优化的路径规划算法- 附代码1.算法原理1.1 环境设定1.2 约束条件1.3 适应度函数 2.算法结果3.MATLAB代码4.参考文献 摘要:本文主要介绍利用…

[k8s]Kubernetes简介

文章目录 Kubernetes介绍术语Label StatefulSet 存储类VolumePersistent Volume IP地址Node IPPod IPService Cluster IPExternal IP PodPod定义Pod生命周期与重启策略NodeSelector(定向调度)NodeAffinity(亲和性调度)PodAffinity…

抽奖中的分布式锁应用

开发抽奖时遇到的分布式锁问题,特此记录一下几种实现方案 背景 开发中遇到个抽奖需求,会根据当前奖池内道具数量随机道具并发送给用户。这里面涉及到超发的问题,需要使用到分布式锁,特此记录一下常用的几种方案。 “超发”&#…

线程之相关知识点总结

线程之相关知识点总结 线程的意义线程与进程的关系线程安全问题小结 线程的意义 进程解决了并发编程问题。然而由于进程消耗资源多且速度慢(进程重,重在"资源分配/回收"上)。 线程应运而生,线程也叫做轻量级进程&#x…

少年,你可听说过MVCC?

:切!这谁没听过,不就是多版本并发控制么~ 早在亘古时期,修真界就流传着一门mysql功法,将其修至小乘境界,足以纵横一方。。。不乏也有走火入魔者,为祸一方~ Serializable篇 强制事务排序&#…