材质是在渲染之前,除了建模和灯光以外的另一项重要技术。在今天的推送里,你将学习到材质贴图的基本概念,赋予物体和表面某种材质的技巧,以及最重要(也最常见)的几种材质属性的表现方法。![]()
链接:https://pan.baidu.com/s/1IFtECNu2BRV7HlypnNoIMQ
提取码:sqvh
![]()
图A
![]()
图B在模型和灯光层面,都已经对图A做出了一定程度的“模拟”,但是它俩看起来仍然很不一样的原因就在于,图B目前是素模(或者白模)——它们之间的差别在于“材质”,后者是没有设定任何材质的样子。具体来说,材质,或者说物体的质感是由一些物理属性决定的(比如光滑度取决于表面材质的致密程度),在3D软件中,通常都会把这些物理属性分门别类以各种参数来体现,调整对了某些参数,物体表面的质感就会符合要求。![]()
A 是普通漫反射材质,类似石膏几何体,不光滑不透明非金属,你建完的模型直接渲染的话就是这个样子;
调高 A 的 光滑度参数,就变成了 B,它可以概括所有 普通的光滑材质,比如陶瓷、刷过亮面油漆的表面、光滑的塑料等等;
调高 A 的 金属性参数,就变成了 C,它概括一些不光滑的 金属材质,比如铝合金或者磨砂金属表面之类的;
调高 A 的 透明度参数,就变成了 D,它可以一些不光滑的 透明材质,比如磨砂玻璃或者塑料袋等。
进一步地,混合 光滑度参数、金属性参数 和 透明度参数,还能派生出其他质感:
总之,通过混合简单属性的参数,我们能模拟各种各样的材质。
具体的质感理论我就不在这里啰嗦了,不然又是一大篇,可以查看公众号以往讲质感的相关文章,
或者买两本我的书《CG造型基础与创作》看看。![]()
如果你是专业的3D设计师,材质和贴图的难度并不会低于建模——相反,能够促成高度真实感的,反而就是材质和贴图(而不是建模),也就是说,真要把这块技能练得特别好,是很花时间精力的。
好在如果你只是想利用3D渲染做创作辅助,就可以大幅下调完美预期,如果你接受“勉勉强强可以用”的预期,材质的设定是可以速成的
。
不追求全面,只学精几个最常用的材质属性(避开小概率出现的特殊质感);
不追求过分细腻的贴图细节(避开贴图绘制技术,避开复合贴图技术);
不追求贴图在结构上的完美对接(避开拆分UV和贴图绘制)。
因为,我在自学阶段完整地学过以上这些技术,但在后续很多创作实践中,它们被用上的概率很低,为了学了就能用,取舍是提升效率必须要做的事情。
在学习材质具体参数之前,你得先学会给指定的某个物体,或者某个表面赋予材质。![]()
![]()
注意,如果你用的是我的模型,由于环境HDRI贴图路径丢失,可能环境会显示为紫红色,你需要删除我的 HDRI 贴图,重新做一下环境贴图。
选择物体(1),点击属性栏上的材质属性(2),可以看到目前材质框(3)里没有任何材质:![]()
你可以把材质框直接看成你选中的物体,你给这个物体添加的材质都会在这里面出现。现在我们点击 +New 新建一个材质,材质属性栏下方就会出现可供调节参数的选项(1)(前面提到的参数都可以在这里找到);同时,材质框里多了一个材质(2),这就是你目前新建的材质;
你可以点击(3)里的加减号新增和删除某个材质(新增后面会讲到);也可以在(4)这儿给材质重命名,如果场景里材质很多,重命名有助于你快速找到某个材质:
![]()
我们先调一个简单的材质,点击 Base Color 固有色(1),模仿参考图片选一个颜色(2),此时茶几的本体有了一个固有色:
![]()
![]()
我们知道横向的铁环和纵向铁环是同样的材质,因此不需要再建一个新的,你可以点击(1),这里会出现场景里所有物体的材质,从里面找到你想要赋予的材质(2),点击:
![]()
![]()
观察茶几下面的地毯,按照参考图,地毯存在两种材质:
![]()
首先,选择地毯,先用前面的方法给它赋予一个材质,调好颜色:
![]()
按 tab 键进入地毯的面编辑模式,选择需要改变材质的地毯边缘的面:
![]()
选中这些面之后,点击材质框边上的 +(1),新增一个材质;
可以看到材质框里有了两个材质(新增的那个是未被定义的状态),选择新增的那个,点击 +New(2);
这样材质框里有了两个已被定义的材质,点击 Assign 把新增的材质指定给选中的面(3);
此时,在模型上可以看到,地毯的边已经变了颜色(4):
![]()
![]()
这样我们就在一个材质上赋予了多种材质,要赋予更多材质,就用同样的方法新增材质即可,要删除,就点击材质框边上的 - 号。
![]()
下面我们通过给茶几模型调整质感,来学习最常用的几种材质属性。选择茶几两侧的耳朵(1),给它赋予一个材质(2):
![]()
拉高材质选项里的 Metallic 金属性,材质生成了金属质感:
![]()
参考图里两侧的耳朵应该是铜质的,因此,继续在 Base Color 固有色 里给它调一个颜色:![]()
你可以把已经赋予材质的铁环(好吧应该是铜环)也修改一下金属性:
![]()
观察参考图,你会发现铜环和耳朵虽然材质接近,但是耳朵明显要更光滑,此时你可以选择耳朵,然后在材质属性里调整 Roughness 粗糙度:
![]()
调低 粗糙度(也就是变得更光滑了),此时耳朵的质感和铜环产生了区别:
![]()
结合 固有色、金属性和粗糙度,你已经可以给很多物体调整材质了:
![]()
注意调整材质的时候,好好想想物体表面究竟是什么样的特性,拿地毯举个例子,地毯的布料肯定是粗糙的,因此得拉高粗糙度:
![]()
注意,blender 中新建材质默认是带 50% 粗糙度的,也就是有一点光滑,你得根据实际材质手动调整才行。
继续看茶几上的蜡烛,蜡烛是一种典型的 子面材质,它带有一定透明度(但我们不会用透明度属性去调它),光线可以照入物体内部发生散射。像蜡烛、皮肤、大理石或者玉器这类半透光的东西,通常使用材质选项里的 Subsurface 次表面 和 Subsurface Radius 来调:
![]()
如果是大面积这类材质,对于计算机的计算量是比较大的,渲染速度会变慢拉高 Subsurface 参数,蜡烛就有了一些透光感:
![]()
你可以给蜡烛调一点 Base Color 固有色 来模仿蜡的颜色:![]()
Subsurface Radius 三排参数,分别指代的是光线 R 红/G 绿/B 蓝 在物体内部发生散射的程度,默认 R 是1.000,比 G 和 B 大,所以上图中蜡烛内部好像有点发红(这经常用来模拟皮肤内部毛细血管散射光线的效果),如果你拉高 G(绿),物体内部就会散射更多的绿光(如果是翡翠就可以这么调):
![]()
![]()
选择瓶子,给它赋予一个材质。在 Blender 里,要创造透明物体,是通过 Transmission 透明度 和 Transmission Roughness 透明粗糙度 来实现的:
![]()
把 Transmission 透明度 拉到满,瓶子出现了一些透光的效果,之所以看上去不太透明,是因为默认材质里带有 50% 的粗糙度,把粗糙度调成 0 即可呈现普通玻璃质感:![]()
![]()
你还可以调点玻璃的绿色,透明度对固有色很敏感,通常只需要一点点即可:
![]()
Transmission Roughness 透明粗糙度 和 前面讲到的 Roughness 粗糙度 是不一样的,如果你仅仅拉高 透明粗糙度,物体表面的光滑度仍然可以很高,如同下左图,只是玻璃内部变得“浑浊”了;如果拉高的是 粗糙度,物体表面就不可能还具有高光这样的东西了:![]()
我们把其余未赋予材质的东西都赋予材质,并分别调整参数:
![]()
除了以上这些最常用的参数,材质选项里还有其他参数,如果你感兴趣,也可以分别试试看,我把它们的基本功能列在下面:
![]()
就像本文开头说的那样,要做好贴图是困难的——严格来说,大部分物体表面都并非只有一个“固有色”,而是有纹理、有图案、有细节的:
![]()
如果你是专业的3D设计师,需要在这方面投入时间精力,贴图做得好不好,直接影响渲染输出的效果。
但我们并非直接渲染出图,你可以在 PS 里利用图层模式等后期P图的方式去给一些表面添加纹理和图案,这对于概念设计师来说效率反而更高。
因此,我个人建议,对于大部分的表面,能概括成一个颜色的,直接在赋予材质后改 Base Color 固有色 即可,少部分你确实希望看看贴图效果的东西,可以自己额外找贴图,或者自己在PS里制作图片,然后用来当成贴图。下面仅通过改变地毯图案的方式,说明一下贴图的操作方式:
![]()
首先,打开设置——Add-ons 插件,在搜索里输入 wrangler,出现 Node Wrangler 插件之后,勾选它,保存设置:
![]()
回到主界面,拉出一个副窗,把副窗设置为 Shader Editor 材质编辑器:![]()
![]()
你在材质编辑器副窗里就能看到这样的一个节点,节点里的这些属性和材质属性栏那边的是一样的,你也可以在这边调整金属性粗糙度什么的:
![]()
材质节点是一个功能很强大的东西,玩好了什么奇葩材质都能做出来,但是学习成本比较高,目前不需要挖到那么深
选择(1)这个节点,然后按 ctrl+T,后面会新增几个节点:
![]()
没有勾选前面那个插件的话按 ctrl+T 是没有的
此时主窗口里地毯相应的部分变成了紫红色的(1),Base Color 固有色变成了 Image Texture 图片纹理 (2),这说明原来地毯上的这部分固有色,将被替换成一张贴图,目前贴图没有指定,所以软件以紫红色提示你:
![]()
所以,你得先为地毯的图案找一张贴图,你可以在下图中这个网站找到免费贴图,也可以直接去搜索引擎下载,JPG或者PNG格式的都可以:
![]()
![]()
![]()
解压缩后,我们只使用这张图片即可,把图片放到你硬盘的某个地方,最好是建一个专门存贴图的文件夹(建议英文路径),然后永远不再移动这个文件夹,否则你的文件链接贴图的路径会出错而导致贴图丢失:
![]()
回到材质编辑器,找到 Image Texture 这个节点,点击 Open 打开你存放那张贴图的路径:
![]()
![]()
不仅固有色能被替换成图片,金属性、光滑度等材质属性也都可以被替换成图片,用来实现不均匀的材质状态,但那似乎有些超纲了,目前你们只给固有色替换图片即可。你可以在 Mapping 节点中调整贴图的位置,旋转角度和缩放比例:
![]()
我调整了它的 Scale 比例,3个数值如果一样大,代表1:1缩放,你也可以单独调整某个轴的比例:
![]()
贴图被缩小了,贴图显得有些长的原因,是地毯模型没有应用比例,你选择它按 ctrl+A,然后 Apply scale 之后就会是正的了(这一步我在视频里没有做):
![]()
如果贴图包裹有些奇怪,比如不正常地拉伸,你可以进入该模型的面编辑模式,全选面后,点击鼠标右键,选择 UV unwrap Faces —— Smart UV Project,软件的这个功能可以给出一个傻瓜式的贴图包裹方案,绝大多数情况下会比默认的正常一点:
![]()
严格来说专业地分UV是一个技术活儿啊,我当初也自学了这个
你也可以在 Mapping 节点中调整一下这个贴图的角度:
![]()
我们前面说到,贴图本质上就是一张图片替代了固有色,如果贴图本身很合适,你当然可以直接贴上就完事儿了,但是如果你想要改变这张贴图的颜色或者对比度(比如我觉得这个贴图的图案没毛病,但是想把它变成蓝色的),是不是得把图片拖到PS里修改完再链接过来呢?
不需要,因为我们可以在 Blender 里修改图片颜色。要实现这样的需求,你得通过材质编辑器里的一些节点。
在材质编辑器里按 shift+A 添加节点,调整图片颜色的话,一般使用Color 子菜单里的这些节点:
![]()
我个人比较常用的是 Hue Saturation Value 色相饱和度明度 和 RGB Curves 曲线 这两个,你可以把它们理解为通过 色相饱和度 和 曲线 来调整PS里的一张图片。点击前者,就生成了一个色相饱和度明度节点:
![]()
点住节点的标题栏,把它拖到图片节点和主节点的连接线中间,它就会自动连接上去:
![]()
当我调整节点中的 Hue 色相 时,场景中的贴图发生了色相变化,你也可以调整 Saturation 和 Value 调整图片的饱和度和明度:![]()
要删除节点,把图片节点的端点拖到主节点的端点上,然后选择 HSV 节点删除即可:
![]()
你可以用同样的方式,添加 RGB Curves 曲线 节点并把它和原有的节点连起来,用曲线来调整图片:
![]()
比如希望加强图片对比度,则把曲线拉成S形,操作逻辑和 PS 里没有差别,但要删除控制点的话,得点击节点下面的 X:
![]()
也可以像在PS里一样,进入图片的RGB通道去调整颜色,比如进入节点的G(蓝)通道,拉高蓝色曲线,场景里地毯贴图的红色就变得偏冷了:
![]()
以上,就是使用贴图和通过节点来调整贴图颜色的基本方法。
另外再提一句,关于使用贴图,目前也有第三方推出了一些贴图插件,比如 Extreme PBR ,本质上都是安装一个很庞大的贴图库,然后通过插件里的按钮来赋予和控制贴图颜色,感兴趣的同学也可以网上搜一搜相关资源:
![]()
最后,补充说明一个和质感有关的修改器——倒角修改器。
如果你给物体赋予了带有 光滑度 或者 金属性 的材质,物体表面大概率会存在高光,而高光经常会出现在结构的转折处——那是因为在现实世界中,这些地方并不是纯粹的“角”,而是带有一个“圆角”的结构,高光往往出现在小圆角上。
而在建模中,我们通过网格编辑(比如挤出)做出的模型,这些结构上并没有圆角,当然也就不会存在任何高光,有时这会影响到质感的表现:
![]()
在网格里制作小倒角是不明智的,那会让后续的模型修改遇到非常大的麻烦,所以你可以使用倒角修改器来给模型添加倒角。
点击属性栏 修改器属性(扳手图标),添加 Bevel 倒角修改器:![]()
通过调整修改器里的两个参数,给物体添加倒角,这样转折处有了倒角,高光自然就有所依附了:![]()
以茶几的铜环为例,对比未添加倒角和添加倒角之后的效果:
![]()
![]()
当然,如果场景挺大……这一点点的差别也不会那么明显
,总之,作为一个知识点了解一下就行了。
关于材质,我们就先学到这里,在下一个推送中,我们将给室内场景里的所有东西添加材质,到时候它就会和原图更加接近:
![]()