标签:ext one double ann class text 通过 exce 顺序
Combine,纹理混合。
我们先看圣典上给的解释。
纹理在基本的顶点光照被计算后被应用。在着色器中通过SetTexture 命令来完成。
SetTexture 命令在片面程序被使用时不会生效;这种模式下像素操作被完全描述在着色器中。
材质贴图可以用来做老风格的混合器效果。你能在一个通道中使用多个SetTexture 命令 - 所有纹理被顺序的应用,如同绘画程序中的层一样。SetTexture 命令必须放置在通道的末尾
All the src properties can be either one of previous, constant, primary or texture.
所有源属性都可以是previous, constant, primary or texture其中的一个。
Modifiers 解释:
Shader "Examples/Self-Illumination" { Properties { _MainTex ("Base (RGB) Self-Illumination (A)", 2D) = "white" {} } SubShader { Pass { // Set up basic white vertex lighting //设置白色顶点光照 Material { Diffuse (1,1,1,1)//漫反射颜色设置 Ambient (1,1,1,1)//环境光反射颜色设置 } Lighting On // Use texture alpha to blend up to white (= full illumination) // 使用纹理Alpha来混合白色(完全发光) SetTexture [_MainTex] { constantColor (1,1,1,1) //自定义颜色 combine constant lerp(texture) previous } // Multiply in texture // 和纹理相乘 SetTexture [_MainTex] { combine previous * texture } } } }
另外,我们也能只针对取透明度进行计算,如下所示:
缺省情况下,混合公式被同时用于计算纹理的RGB通道和透明度。,如下所示:
SetTexture [_MainTex] { combine previous * texture, previous + texture }
逗号后面的previous + texture表示光照和当前图片纹理混合后的透明度,这个时候输出的结果的透明度就不会再是previous * texture的透明度了。
UnityShader之固定管线命令Combine纹理混合【Shader资料4】
标签:ext one double ann class text 通过 exce 顺序
原文地址:http://www.cnblogs.com/vsirWaiter/p/5992483.html