Unity | Shader基础知识(番外:了解内置Shader-Standard<一>)

目录

前言

一、什么是Standard

二、Standard参数详解

1.了解着色前

2. 着色拆分

3.参数RenderingMode

4.参数Albedo 

5.参数Metallic

三、作者的话


前言

有粉丝给我说,感觉自己内部自带的Shader都还不知道怎么用,希望我讲一下内置Shader。

那我们就从Standard开始吧!~

一、什么是Standard

standard是标准着色器,但标准着色器是什么意思?

官方解释:Unity 标准着色器是一个包含一整套功能的内置着色器。此着色器可用于渲染“真实世界”的对象,如石头、木头、玻璃、塑料和金属,并支持各种着色器类型和组合。

通俗解释:出去买衣服,有没有见过均码?什么叫均码?就是大部分人都能穿的衣服。标准着色器的意义也是在此,不能帮助你做惊才艳艳的东西,但一些普通的着色,基本都是可以用的。

二、Standard参数详解

我们一起详细了解一下,每一个参数,代表什么,怎么去应用。

1.了解着色前

我们首先了解一下,为什么要用着色器着色,如果不着色会怎么样。

(如图1和图二所示)相信不用我多讲,你们就懂了。

图1 纯模型
图2 模型着色后

接下来,我们就一起用standard着色器上色吧~~ 

2. 着色拆分

这个模型在给到你的时候,就设置的可以添加两个材质,一个是盖子的材质,一个是瓶子的材质。(如图3所示)

图3 两个材质
3.参数RenderingMode

RenderingMode,叫渲染模式,这个是standard的第一个参数,里面有四个选项。

图4 RenderingMode

以下我放了一些对比图,帮助我们看出来材质的位置,和一些功能。 

  • Opaque - 不透明模式,用于不透明普通固体(盖子明显用这个,如图5、图6所示)

    图5 删除材质前
    图6 删除材质后
  • Cutout - 镂空模式,用在又有透明又有不透明,且不需要半透明过度的情况。(球网的网是不透明绳子,中间是透明空气,没有过度阶段,如图7、图8所示) 

图7 Cutout模式下的球网
图8 Opaque模式下的球网
  • Transparent - 透明模式,完全透明(如玻璃窗)

  • Fade - 淡入淡出模式,用在从不透明到透明时,用半透明过度的情况(例:手机屏幕里是不透明的,屏幕是透明的)

难点解析之区分以下三个:

cutout:   只有100%透明和完全不透明(和别的比,会有明显边界线,如球网,如图9所示)

图9 cutout和Fade切换

Transparent:        全部都变100%透明,哪怕是你正常的固体(如图10所示)

图10 Opaque和Transparent切换

Fade:        如果贴图有设置透明度的变化,比如50%透明,80%透明,可以显示出来(如图11、图12所示)

图11 Fade模式
图12 transparent模式
4.参数Albedo 

Albedo:可以简单理解为涂色 (如图13、图14所示)

图13 Albedo
图14 有无贴图的对比盖子

 没有贴图并不是没有颜色了,还可以改颜色。

图15 没有贴图只调颜色

注意:这里贴图的透明度设置,就是上文RenderingMode中是否透明的依据

例:Fade模式下,纯红色的瓶盖,受透明度影响(如图16所示)

图16 透明瓶盖

 提示:想知道贴图有没有透明部分,只需要看图片预览里有没有A,如果有,是怎么分配的。(如图17所示)

图17 透明贴图
5.参数Metallic

Metallic:金属性(如图18所示)

图18 金属性

如果从字面理解,就是,有多像金属,但up觉得这个解释有点好笑,因为up不知道金属应该是什么样,这个概念对up来说,有点抽象。在查阅了资料后,这里给出up自己的解释。

物体有两个颜色组成:1.自己的颜色,2.外界的颜色反射给物体的

自己的颜色就是上面那个Albedo ,外界的颜色就是,你把它当成镜子,肯定能反射很多东西,这些东西的颜色,就是外在的颜色。

他们的比例是多少,就是金属性

如果金属性是0,那就一点都不反射外面的颜色,全部由Albedo来上色

如果金属性是1,那就全部用反射的颜色。

那如果是其他的,就按照比例混到一起,最后是什么样就是什么样。


 金属性里还有一个参数smoothness:光滑度

为什么会多一个参数呢?因为我们说了,要反射颜色。

但是,反射颜色,可以有很多种反射,镜面反射,漫反射等等(如图19所示)。。。

图19 粗糙度不同的反射

即使金属性拉满,也就是没有物体自己的颜色了,只反射别人 = 镜子。那坑坑洼洼的镜子和光滑的镜子,反射的还不一样呢。粗糙的金属。(如图20、图21所示)

图20 光滑的镜子
图21 粗糙的镜子

总结:金属度是自己颜色和反射颜色混合的比例,但因为反射的颜色和光滑度有关,所以这里也可需要调节光滑度。 


金属度贴图:

如果用上面的滑动条来调,我们整个模型金属度就是一个种类。

那我们做东西的时候,有些地方是金属,有些地方不是金属,怎么办?

答:我们需要用金属度贴图。

在做金属度贴图的时候,我们需要控制两个值,一个Metallic一个是Smoothness,这两个刚才都单独讲过了。图片一共可以有RGBA四个信息,一般Metallic用R通道表示Smoothness用A通道表示。


备注:

底下还一个Source。(如图22所示)

图22 Source

 Source是用来控制Smoothness的,前面说到,我们的Smoothness一般都存在透明通道,有时我们也会用Albedo贴图的透明通道存。这时候我们就可以选一下,你打算用哪个做smoothness的值。

三、作者的话

这章就到这里啦,我们下一集再见~感谢大家的点赞,收藏,关注~真心地哦~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菌菌巧乐兹

希望能给大家写更多有用的文章~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值