内置Shader

前言

对unity内置的几个shader,从应用的角度,进行简单讲解,大部分是个人使用经验,如有错误,敬请指正。

1.Standard Shader

标准材质参数如下图所示:
内置Shader

1.1 RenderingMode

Opaque:为实体渲染,更改Color的透明通道不会有影响;
Cutout:会把图片的透明通道显示出来,非严格意义上讲与Opaque想反;
Fade:Fade模式下更改透明通道会有半透明效果,同时反光等效果也会跟随透明通道值变化;Transparent:为半透明模式,与Fade类似,但是反光效果不会随着透明通道变化而改变,而且如果模型不同部分独立,且均有Transparent模式的材质,会显示有问题。在渲染中渲染半透明物体时是相对来说比较棘手的问题。

1.2 Albedo

贴图,并可通过后边的颜色参数更改颜色

1.3 Metallic

金属性,金属性越强,越有金属质感

1.4 Smoothness

光滑度,数值越大越光滑,最大值是类似于镜子,越能反射光线。当Metallic和Smoothness均为最大值时反射效果越强。

1.5 Emission

自发光效果,选中后默认为黑色,效果为无光,改成全白色则发白光

1.6 Tilling

表示x或y方向(UV方向?)叠加几层贴图

1.7 Offset

距离UV原点的距离?(基本是这个意思,贴图距离基准点的偏移量)

2.Additive

此shader位于particles下,顾名思义粒子系统应用,并且有叠加效果,粒子材质会有稍微半透明效果。内置Shader

3.UI/Unlit/Transparent

UI半透明材质,可以直接赋值贴图,也可以赋值RenderTexture实时渲染Camera画面,并能够通过Tint更改颜色以及透明通道。
内置Shader

4.Unlit/Color

给材质纯粹的颜色效果,而且不受灯光的影响,即场景中无灯光、无天空盒以及无任何反射球情况下依旧可以显示。
内置Shader

5.Unlit/Texture

与UI/Unlit/Transparent类似,但无法更改颜色以及半透明效果。
内置Shader