时值七月,夏日炎炎似火烧,每每路过便利店时,都会忍不住想要来一瓶冰可乐凉爽一把,但最近正值减肥,过不了嘴瘾总能过眼瘾吧!所以我们今天就用Blender来制作一杯冰可乐吧,而且还带冰块丢入可乐里的那种动感效果哦。
首先我们应该给模拟系统搭建环境,其实整个环境也并不复杂,首先是制作一个杯子,因为咱们的“可乐”是放在杯子里的,杯子的建模方式比较多,但在这里我并不建议我们大家做得太复杂,因为物理模拟对顶点数量也是非常敏感的,如果是特别复杂的模型,就会显而易见地延长模拟时间,降低工作效率,我们的基本思路是先用简单的模型来进行物理模拟,当模拟数据烘焙完成后,再用复杂模型进行替代,以此来实现高效模拟和高质量输出的“双赢”。
所以,在这个思路下,我们现在只需要利用柱体,缩放下端部分,就能得到一个上大下小的杯子形状,再删掉顶部的面,一个基础的杯子形状就做好了,然后就是摆放杯子的桌面,也只需要在杯子下面垫一个平面就行,材质之类的设置咱们最后再来搞定。
然后就是关键的一步,制作流体物理系统,我们大家可以手动设置,这时候建议将视图模式切换到“线框”模式,然后先新建一个立方体,它就是我们流体物理系统的工作范围,注意它的尺寸一定要能够完全涵盖整个杯子,而且还要预留足够多的空间来进行后续操作,接下来再新建一个和杯子形状相似,但尺寸略小的柱体,它就是咱们的“可乐”了,最后还需要在液体物理系统工作范围内,再按需新建两三个立方体,它们充当的角色是冰块。
当然,如果你觉得麻烦的话,也能够使用自动设置,只需要新建一个立方体,然后在“物体”、“快速效果”里选择“快速液体”,就能自动生成系统了,不过它仍有必要进行第二步的参数调节。
环境搭建完成后,我们应该为它们分别设置物理模拟效果了,首先是流体物理系统的工作范围,也就是最大的那个立方体,我们在物理属性里选择“流体”,然后设置类型为“域”,并把“域类型”设置为“流体”。
接下来我们最终选择杯子,同样为它添加一个“流体”系统,但因为它是装可乐的杯子,所以类型要选择为“效果器”,也就是液体会对其产生碰撞效果,这时候注意一个关键设置,我们要把“是否平面”这个选项给勾选上,否则系统会默认它有顶盖,不会让“可乐”流到杯子里。然后再选择“可乐”,继续添加“流体”系统,并将它的类型设置为“流”,流体类型为“液体”且流动行为选择“几何数据”,这个设置的意思是让可乐以咱们柱体的形状直接呈现。
完成初步设置后,我们回到“域”,做接下来的详细设置,这一步有好几个关键设置,一定要正确选择,首先是“流体精度”,也就是液体的细节精度,数值越高,咱们的“可乐”液体密度就越大,但注意流体精度并不是越高越好,数值越大可能因为液体密度过大导致效果过于激烈,依照我们的测试来看,64左右的精度就已经够用了。然后就是“时间步长”,它的作用是条件在每一帧之间的计算迭代次数,它会明显影响液体的溅射效果,默认的数值较低,液体不会明显的溅起水花,建议选择最大值6,最小值4。
如果你的电脑性能较弱,在测试时我们大家可以先试试低精度,比如32,如果你设置的数值太小,就会直接让以蓝色原点显示的液体直接消失掉,这时候只要重新设置一下流体精度就能恢复显示。
接下来就是选择“扩散”,这会提供液体表面的张力效果,然后是边界碰撞,建议只选择“底”,这样液体在从杯子里溅出后会流到“域”的外面去,如果不这么设置的话,整个“域”都会变成一个大水缸,这显然不是我们想要的效果。
最后是缓存,记得一定要选择一个纯英文路径作为缓存保存点,否则可能会遇到无法缓存的问题,然后勾选“是否可恢复”,并把类型设置为“模块化”,这样我们回到流体系统的最上方,就能够正常的看到烘焙选项了。
接下来我们设置扔冰块溅水花的效果,先给冰块添加为流体系统的“效果器”,这一步是为了让它能够和液体互动,但此时它并不会随重力往下掉,所以我们还需要额外给它添加刚体效果,类型选择为“活动项”,然后将碰撞属性里的形状选择为“网格”,当然如果是立方体的话可以直接选择“方框”,在烘焙完所有数据后再在雕刻系统给冰块添加细节。
因为冰块最终是要落到杯子里,所以杯子也要添加刚体系统,类型选择为“被动”即可。播放视频观看冰块是否准确落入杯子中,如果想要多个冰块在不同帧开始下落的话,可以通过给冰块刚体系统里的“动态”选项赋予不同关键帧的方式来实现,比如想某个冰块在第10帧才开始运动,那第1帧不勾选“动态”,打上关键帧,然后第10帧勾选“动态”,再打上关键帧,这样它就会在第10帧才开始下落了。
完成所有设置后回到“域”,这时候就可以烘焙流体数据、粒子系统和网格了,完成后回到实体渲染模式播放视频,就能看到液体系统已经成功实现了。
液体系统模块设计完成后,最后一步就是为各个物体添加材质和环境布光了,当然这一步如何设计往往也是仁者见仁智者见智,本期教程就等于抛砖引玉了。因我们的设计是“冰可乐”,所以能直接给液体添加一个最简单的玻璃BSDF,颜色设置为可乐的深红色,IOR折射率就选择为液体常见的1.33,糙度为0,杯子也可以直接用这个套路,只是把颜色选择为白色就行。
至于泡沫、气泡等细节效果,我们大家可以新建一个棱角球,并将它同样设置成液体的材质,并在液体的粒子系统中设置“渲染为”物体,并选中棱角球,调整缩放和缩放随机性,就能得到一个内部有大量气泡的可乐效果了。
布光方面,能够正常的使用HDR图片作为全局光照,同时再加上一个点光源或面光源来打个侧光,就能得到一张效果还不错的冰可乐“照片”啦!
液体物理系统是Blender里设置参数较多较复杂的一大门类,很容易犯错且错误往往都比较隐蔽,烘焙数据也需要一定的时间,所以它是一个很需要耐性来慢慢调整的功能,我们本次教程的效果其实都不算特别出色,你们可以根据自己对精度的要求,更全面地对参数做调整,直到得出自己满意的效果!
壹零社:用图文、视频记录科技互联网新鲜事、电商生活、云计算、ICT领域、消费电子,商业故事。《中国知网》每周全文收录;中国科技报刊100强;2021年微博百万粉丝俱乐部成员;2022年抖音优质科技内容创作者