美文网首页
Shader学习——渲染顺序,混合命令

Shader学习——渲染顺序,混合命令

作者: BacteriumFox | 来源:发表于2019-08-24 18:52 被阅读0次

渲染顺序

名称 队列索引号 描述
Background 1000 这个渲染队列会在其他任何队列之前被渲染,通常用来渲染背景
Geometry 2000 默认的渲染对了,大多数物体使用这个队列,不透明物体使用这个队列
AlphaTest 2450 需要透明度测试的物体使用的队列
Transparent 3000 这个队列的物体会在所有Geometry和AlphatTest物体渲染之后,再按照从后往前的顺序进行渲染。任何透明物体都使用该队列
Overlay 4000 该队列实现一些叠加效果。任何最后渲染的物体在该对了。

混合

只要有关键字Blend,就代表开启混合(除Blend off以外)

命令 描述
Blend SrcFactor DstFactor 开启混合,并设置混合因子。源颜色(该片元颜色)乘以SrcFactor,目标颜色(已经存在于颜色缓冲的颜色)会乘以DstFactor,然后把两者相加后在存入颜色缓冲区
Blend SrcFactor DstFactor,SrcFactorA DstFactorA 与上面几乎相同,只是使用不同的因子来混合透明通道

混合因子

参数 描述
One 因子为1
Zero 因子为0
SrcColor 因子为元颜色值。当用于混合RGB的混合等式时,使用SrcColor的RGB分量作为混合因子;当用于混合A的混合公式的时候,使用SrcColor的A分量作为混合因子。
SrcAlpha 因子为源颜色的透明度值(A通道)
DstColor 因子目标颜色值。相当于混合RGB通道的混合等式时,使用DstColor的RGB分量作为混合因子;当用于混合A通道的混合等式时,使用DstColor的A分量作为混合因子。
DstAlpha 因子为目标颜色的透明度值(A通道)
OneMinusSrcColor 因子为(1-源颜色)。相当于混合RGB通道的混合等式时,使用结果RGB分量作为混合因子;当用于混合A通道的混合等式时,使用结果的A分量作为混合因子。
OneMinusSrcAlpha 因子为(1-源颜色的透明度值)
OneMinusDstColor 因子为(1-目标颜色)。相当于混合RGB通道的混合等式时,使用结果RGB分量作为混合因子;当用于混合A通道的混合等式时,使用结果的A分量作为混合因子。
OneMinusDstAlpha 因子为(1-目标颜色的透明度值)

常见混合操作类型

描述 命令
正常(Normal)透明度混合 Blend SrcAlpha OneMinusSrcAlpha
柔和相加 Blend OneMinusDstColor One
正片叠底 Blend DstColor Zero
两倍相乘 Blend DstColor SrcColor
变暗 BlendOp min / Blend One One
变亮 Blend OneMinusDstColor One / Blend One OneMinusSrcColor
线性减淡 Blend One One

混合操作

image.png

相关文章

  • Shader学习——渲染顺序,混合命令

    渲染顺序 混合 只要有关键字Blend,就代表开启混合(除Blend off以外) 混合因子 常见混合操作类型 混合操作

  • 关于shader的渲染顺序

    * "Queue"标签。定义渲染顺序。预制的值为 * "Background"。值为1000。比如用于天空盒。 *...

  • Paint高级用法

    渲染 Shader 着色器 Shader有5中渲染方式 BitmapShader 位图渲染 LinearGradi...

  • Shader基础了解

    Shader gpu上的绘制(渲染)程序Shader的主要流程:渲染管线我们可以编程控制的shader:verte...

  • LWRP

    lwrp 2019.1目前是前项渲染2019.3会体用延迟渲染 Shader Graph Shader Graph...

  • Unity高级开发-Shader开发(1)-渲染管线

    学习Shader(着色器)必须先要了解渲染管线。如果不了解,那么就不能说你了解Shader Shader分类 顶点...

  • Shaderlab Notizen 7-2 Standard S

    五、Standard Shader中正向基础渲染通道源码 Standard Shader正向渲染基础通道(Shad...

  • 编写自己的 shader

    渲染管线工作原理 在学习shader之前首先了解一下OpenGL 渲染管线的工作原理, 对于学习 OpenGL 极...

  • OpenGL-渲染管线的流程

    学习shader之前必须知道的事情:shader(着色语言)到底发生在那个阶段?OpenGL的渲染管线有哪些阶段?...

  • 第一个shader

    第一个shader1.前言什么是shader?着色器(Shader)是用来实现图像渲染的用来替代固定渲染管线的可编...

网友评论

      本文标题:Shader学习——渲染顺序,混合命令

      本文链接:https://www.haomeiwen.com/subject/epiqectx.html