700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Unity Shader - Smoothness 平滑度

Unity Shader - Smoothness 平滑度

时间:2022-01-03 12:01:33

相关推荐

Unity Shader - Smoothness 平滑度

目录:Unity Shader - 知识点目录(先占位,后续持续更新)

原文:Smoothness

版本:.1

Smoothness

Smoothness平滑度参数,都显示在Metallic和Specular来种Shader模式中。

在Specular和Metallic两个Shader工作流中的Smoothness概念都非常的相似。默认的都没有设置Metallic或Specular纹理参数,材质中的smoothness是由一个滑动器来控制。这允许你控制一个表面的"microsurface detail"(微表面细节)或是表面的平滑度。

在上面显示的两种Shader工作流中,不论你选择的是Metallic纹理参数或是Specular的纹理参数,smoothness参数值都可以使用两种工作流其中。下面将进一步解析。

smoothness参数范围从0.0~1.0

“microsurface detail”(微表面细节)是不能直接在Unity中显示的。这是光照计算的中的一些概念。微表面细节的效果是对象呈现出许多光照效果的漫反射的光反弹的效果。一个平滑的表面,所有光线的反射角度都是可预测的。极端都说,一个完美的平滑表面的光反射效果就像镜子一样。越不平滑的表面光反射的角度就比较飞散(就像光线照射到了一个凹凸不平的微便面),因此表面反射细节就越少就像漫反射。

比较一下这些光滑度分别从底,中,高(从左到右),就像材质中的微表面的原理图解。黄线代表光照射到表面并反弹,根据不同平滑度,反弹角度也会有所不同。

一个平滑的表面带有的微表面细节是很少的,或根本没有(肉眼看似没有,但微观世界是都没有完全平滑的表面,都是由一粒粒更微小粒子排列组合成的,这里我就不纠结了),所以光线反弹都比较统一的方向,反射出来的效果就很清晰。而一个粗糙的表面,在微表面看似有高高低低的细节,因此光反射角度就比较多(因为表面高高低低的,很多有角度,反射出来的角度当然就不统一了,所以看起来光都散射在各个角度中),都平均的往各个方向射出,呈现出一个漫反射似的,不清晰的反射效果。

比较低,中,到平滑值得效果(从上往下)。

在低平滑度中,表面上每个点都有不一样的角度去反射,因为微表面都是凹凸不平,导致散射光线。在搞平滑度中,每个点都比较统一方向反弹光,所以物体表面上将得到比较清晰的环境反射。

Using a Smoothness Texture Map

使用Smoothness纹理映射

同样的,其他很多参数,都可以用一张纹理映射来替代一个滑动器值。这将允许你很好的控制材质每个表面上的高光反射的强度和色调。

使用一张纹理而不是一个滑动器值,意味着你可以创建出每个表面都都不一样的smoothness平滑度的材质(通常与根据Albedo纹路中的内容来定smoothness的纹理,其实还有很多的法线,凹凸,高光,等,都是与Albedo的纹理内容匹配上的)。

越是平滑的表面反射效果越强,反射高光更强。反之,越不平滑的表面反射效果,反射高光就越不明显,因为表面的反射都散射在各个角度上(散射,类似漫反射)。使用与Albedo纹理贴图对应的Specular和Smoothness纹理贴图,你将可创建非常逼真的效果。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。