欢迎光临散文网 会员登陆 & 注册

虚拟世界的物理学:Blender刚体效果教程

2021-09-08 17:54 作者:壹零社  | 我要投稿

物理碰撞是Blender诸多功能里比较好玩的一个效果,我们可以利用它来制作很多“舒缓压力”的视频,比如用一颗球去撞倒整座积木大厦,看着一大堆的积木砖块掉落下来也确实是一件很有趣的事情,那么说做就做,我们本期就来教大家怎样利用刚体物理功能来实现这一效果。

 

第一步:利用方块搭建“积木大厦”

 

所谓的积木大厦,也就是用一个个长条形方块组建而成,当然大家如果自己有想法的话也可以自行尝试做一些有趣的造型,但为了结构稳定性,建议还是就用方块来搭。在本次教程中我使用了一个长5m,宽和高都是1m的方块,记得这时候要先为它设置刚体效果,因为我们使用的是标准方块,所以碰撞选项可以用默认的“凸壳”,当然也可以自己换成“方框”,具体设置参考图1,然后再复制3块,以“横二竖二”的结构,搭建出如图2的基础构造。

图1


图2

 

接下来我们要做的就是不停地向上和向左或右复制这一个基本结构,复制的方法有2个,其一是先删掉场景中的摄像机和光源,然后全选所有块,向上进行复制,复制到一定高度后再全选,向右或向左复制,直至得到满意的高度和宽度。

 

第二个方法是利用阵列修改器,先将图2的所有模块都合并到一起,然后利用阵列修改器向上沿Z轴相对偏移个10层,然后再用第二个阵列修改器向X轴相对偏移2层,最后再接第三个阵列修改器向Y轴偏移2层,具体可参考图3。

图3

 

然后应用全部修改器,再进入编辑模式全选,以松散块拆分所有模块,这时候就能得到一个个单独的方块了。推出编辑模式但保持全选状态,再把所有方块的原点放回各自的质心点。而此时我们之前制作的刚体效果已经失效,需要重新添加,只需要任选其中一块添加刚体效果后,再全选全部方块,这时候保持刚刚选择的方块为高亮选中状态,再如图4所示,进入物体→刚体→从活动项复制,即可为所有方块加上刚体效果。


图4

 

然后,我们再在最下方新建一个平面,并赋予刚体效果的“被动”,这样它就可以作为“地面”来接受这些掉落砖块了。

 

第二步:设置球体实现冲撞效果

 

新建一个球体,把它放到大厦的旁边,并为它添加刚体效果,这时候记得把它的质量加大,比如10kg。如果直接播放,你会发现球体直接就掉到了地面上,并不会超前飞行,所以我们还必须先给它做一个“运动加速”。

 

在第一帧为它的位置打上关键帧,然后在第5帧,把它放到与大厦更接近的位置,再打上关键帧,同时在刚体效果面板中勾选“播放动画”并打上关键帧,具体可参考图5。然后在下一帧,也就是第6帧,取消勾选“播放动画”并打上关键帧。这个操作就是在告诉Blender,第1~5帧是用户给球体上了一个加速,第6帧开始刚体物理会利用这个加速让球体向前飞行。


图5

 

当然,我们其实也可以全程都利用动画属性来定义球体运动,但这种方式的真实感会相对较差一些,更适合高速物体的冲击效果,比如子弹或弓箭穿刺。球体冲击还是更适合利用刚体物理效果。

 

这时候播放视频就会看到,球体穿透了大厦,砖块四处掉落,而想要它冲击得更快或更慢,就只需要控制球体的关键帧位置,比如把第5、6帧移动到第3、4帧,再看第10帧的效果,就会从图6变成图7,很明显可以看到,球体的移动速度明显快了很多,效果也更加剧烈,而具体要如何设置就纯粹看你自己的需求了。

 

最后只需要再加上材质和光源,就能获得如视频教程中的效果了。



图6


图7

 

本章小结:刚体物理有很多细节需要注意

 

我们本次教程涉及到的刚体物理效果其实并不算复杂,如果涉及到爆破等效果会更需要注意细节,而且因为采用了纯方块的模组,在设计时可以直接利用线程的框架,如果是自定义模型,必须通过对碰撞系统的摩擦力和弹跳力进行详细的设置才能得到满意的效果,否则很容易出现刚刚开始模拟,砖块就自动“爆炸”等问题,有时候还需要多次调整烘焙参数,细节上需要注意的地方有很多,是一个很有挑战,又很好玩的功能。


虚拟世界的物理学:Blender刚体效果教程的评论 (共 条)

分享到微博请遵守国家法律