Shader - Pass (六)

                        Pass Tags

Syntax 语法

Tags { “TagName1” = “Value1” “TagName2” = “Value2” }

指定TagName1 的值为 Value1 ,TagName2 的值为 Value2 你可以指定很多你喜欢的标签

Details 细节

标签基本上是键-值对的形式。 内部的Pass 标签用来控制光照管道(环境光照,顶点关照和像素光照)中pass 的任务和一些其它选项。注意以下的标签必须在pass段内部,而不是在SubShader中被识别。

LightMode tag 光照模式标签
LightMode 标签定义了光照观点中的pass的任务。查阅render pipeline了解更多细节。这些标签很少手动使用。常用的shader 需要与光照进行互动的Shader写成表面着色器 然后在去关联那些细节

LightMode 的可选值:

  1. Always:总是渲染。没有光照应用。
  2. ForwardBase:用于正向渲染,环境主要方向灯和定点光/SH 等的应用。
  3. ForwardAdd:用于正向渲染,附加的像素光被应用,每个光照一个pass。
  4. PrepassBase:用于延迟光照,渲染法线/镜面指数。lor function)。
  5. PrepassFinal:用于延迟光照,通过结合纹理,光照和自发光渲染最终颜色。
  6. Vertex:用于顶点光照渲染,当物体没有光照映射时,所有顶点光照被应用。
  7. VertexLMRGBM:用于顶点光照渲染,当物体有光照映射的时候使用顶点光照渲染。在平台上光照映射是RGBM 编码。
  8. VertexLM:用于顶点光照渲染,当物体有光照映射的时候使用顶点光照渲染。在平台上光照映射是double-LDR 编码(移动平台,及老式台式CPU)。
  9. ShadowCaster:将物体当做阴影产生者来渲染。
  10. ShadowCollector:为了正向渲染对象的路径,将对象的阴影收集到屏幕空间缓冲区中。

RequireOptions tag 需要选项标签
当一些外部条件得到满足时 这个pass才渲染,这是通过使用RequireOptions标签,它的值是一个空格分割的字符串,目前由Unity3d支持的选项是:
SoftVegetation:如果在Quality Settings中开启(Edit->Project Settings->Quality)渲染软植被则pass可以渲染。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值