【Blender】如何在Blender中绘制装有溶液的烧杯?

Dec 19,2022

本教程我们学习一个装有溶液的烧杯的绘制。对初学者来说,这个案例有着很好的参考价值。

参考文件下载:烧杯.blend


一、建模部分
初次打开Blender,场景中有创建好的摄像机、灯光和立方体。选择立方体后点击鼠标右键或者按【X】可以删除。在创建烧杯模型之前,我们先要考虑从何入手。不同的人建模习惯各不相同,但最常见的还是从基本几何体开始。烧杯的形状主体显然是一个圆柱,所以第一步我们在视图中按【Shift+A】,添加网格中的柱体
添加后在视图左下角可以设置柱体的顶点数、半径和深度等参数,这些参数的设置也是根据后续建模的需要。比如半径和深度决定了烧杯的尺寸,顶点数则是环绕一圈的面数,如果没有特别需求,不建议设置得过高,否则可能会给后续编辑带来不必要的麻烦。至于柱面看上去不圆滑只是显示方式的原因,3D软件中的平滑着色早已是很成熟的技术。
接下来按【Tab】键可以切换到编辑模式,视图左上角会有显示。然后可以切换到点、边、面不同的选择模式下进行编辑。而点、边、面也是网格模型的基本构造元素。
比如烧杯的上部应该是敞开的,可以选中柱体顶部的面,按【Delete】键删除。这里选择删除,这大概也是最简单的多边形建模操作。
接着对烧杯底部的转角边进行操作,具体来说是给底部的边添加倒角效果。同样要先选中底部的一圈边,Blender中可以按住【Alt】键点击可以选择循环边(点/面),按住【Ctrl+Alt】键点击可以选择环状边(点/面)。选中后点击右键选择边线倒角,或者直接按【Ctrl+B】即可进行倒角编辑。这里对倒角的宽度和形状进行适当的调节即可。
再来看烧杯口的制作,选择X正方向朝向的点,按【G~X】沿X方向移动。但直接移动必然会导致与其连接的边发生偏移,由于烧杯口只是顶部有一小部分缺口,杯身基本是不变的。当现有的模型满足不了形变需求时,应考虑是模型的边面数不足所致。可以按【Ctrl+R】(环切并滑移)添加一圈循环边,滑移至杯口附近的位置。
这时候再移动杯口的点,杯身就不会跟着变形了。如果觉得一圈不够,可以加两圈循环边,分别调节两个X轴正向的顶点位置。为观察方便,可以切换到前视图(快捷键【1】-小键盘)操作。
至此已完成烧杯的基本型,在属性窗口找到修改器属性图标,添加表面细分修改器可以观察烧杯的最终外形。细分层级设为1~2即可。
此时可以看到烧杯的表面仍不平滑。按【Tab】键回到物体模式,在烧杯对象上点击鼠标右键,切换到平滑着色即可。
到这一步,我们创建的模型从拓扑上来说是一个非封闭的面片,并非一个实体的模型。需要添加厚度才能成为一个完整的烧杯模型。所以需要添加实体化修改器,并设置厚度。一个烧杯模型到这里就算是完成了。当然你也可以为烧杯模型制作更多的细节,比如将杯口的厚度做得更厚一些,此处不再细述。
然后是溶液部分。
通常,容器内部的液体都是利用容器的模型形状得到的。所以这里可以按【Shift+D】(点击右键为原位复制),复制一个烧杯模型。在场景集合中可以修改对象名称,将烧杯对象在视图中隐藏(右侧的小眼睛图标)。
选中“溶液”模型后,在修改器属性窗口的实体化修改器右侧点击下拉箭头,选择应用

关闭显示视图中的表面细分效果,按【Tab】键切换到编辑模式,在面选择模式下按住【Alt】键点击鼠标,选中如图所示的烧杯内圈面,按【X】键删除面。接着鼠标移至烧杯外部的面位置,按【L】键选中外部面,继续按【X】删除。
剩下内部的面后,选择开口的一圈边,按快捷键【E~S】,然后拖动鼠标就能往内部缩放出新的边。这类多边形建模操作都属于最基础的操作,最好反复练习加以熟悉。
重复上述操作,再次往内缩放出新的边。然后切换到点模式,右键选择合并顶点→到中心
重新开启细分显示会看到,转角边的圆滑太过厉害,缺少边的限制。需要在顶部和侧面各加一圈循环边加以约束,添加方式还是【Ctrl+R】(环切并滑移)。
至于涟漪的效果,则需要在溶液顶面增加边数,可以用【Ctrl+R】,设置切割次数为20次,得到足够的分段。
然后添加波浪修改器,设置合适的高度、宽度、窄度以及速率,点击动画播放按钮就可以看到涟漪的生成。具体参数值可以参考下图。
由于直接添加波浪效果器,作用的对象是整个模型。如果想要波浪效果器只对顶部的表面起作用,可以设置顶点组。具体方法是在编辑模式下选中顶部的所有顶点(见下图),然后在属性窗口的物体数据属性中添加顶点组(点击+号)。可以将群组名称改为“wave”(双击修改),然后点击指定
之后就可以在波浪修改器的顶点组选项找到“wave”并添加,波浪效果器就只会对顶点组内的顶点起作用。有必要还可以设置衰减值,得到更多的变化细节。点击播放找到合适的帧数,建模部分到此完成。

二、灯光和摄像机
这一部分主要是场景的布置和打光,这里可以创建一个平面对象(【Shift+A】创建,【S】缩放)作为地面,将烧杯和溶液模型移至平面上。
点击视图右侧的摄像机图标可以切换到当前摄像机的视角,直接调整视图会退出摄像机视角。可以按快捷键【N】,在视图设置中勾选“锁定摄像机到视图方位”,然后调节视图角度即可。调整好之后可以取消勾选。
当前视图中只有默认的点光,选择Light对象后可以在灯光的物体数据属性中设置颜色、能量、半径等数值。并且可以在“显示渲染预览”(视图右上角切换)模式下观察白模效果。
主灯光确定后,可以添加环境光。在世界属性中,点击颜色后面的黄色圆点,添加环境纹理。在没有添加纹理贴图前,视图中显示紫红色。点击打开,选择一张hdr或exr贴图即可。如果不需要烧杯反射和折射出太多细节,尽量选择纯灯光类(没有自然景物)环境贴图。
关于环境纹理的更多设置可以在着色器编辑器窗口的世界环境中调节,这里暂时不做更多讲解。接下来是材质部分。

三、材质和渲染
如果不熟悉Blender的窗口设置,可以直接在Shading(着色器)界面布局下操作。先选择烧杯模型,点击下方着色器编辑器窗口的新建,就可以创建新的材质。
Blender的节点材质中提供了多种不同的着色器类型,同样是按【Shift+A】创建。找到着色器中的玻璃BSDF,点击即可创建。
对于玻璃材质,可以在渲染属性中将渲染殷勤改为Cycles,设置合适的视图和渲染最大采样值(如256),就能在视图中预览到渲染效果。
溶液部分可以采用同样的设置,折射率可改为1.333(水的折射率),并添加颜色。另外注意为了避免溶液和烧杯模型有面重合,可以将溶液模型稍往内缩放,留出空隙,以免造成渲染中的问题。
除了使用单一的着色器之外,还可以对着色器加以混合,得到更多的调节方式。此处暂不展开。
最后,按【F12】渲染出图,等待渲染完成。
渲染结束,保存图像。