打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
数字人C4D学习笔录之九:动力学初探(刚体破碎和Xplode应用)

数字人C4D学习笔录之九:动力学初探(刚体破碎和Xplode应用)  

2015-01-11 21:26:44|  分类: 动画技术 |举报 |字号 订阅


 
 
 
【闲话】
2015年,又涨了一岁。好长时间没有编写C4D技术文章了,不是“黔驴技穷”,而是最近把大量的业余时间用来研究中医了。这些日子,认真阅读了清黄元御编写的《四圣心源》(古文版)一书。读半,感觉太好了,他把《黄帝内经》、《伤寒》等几部医书理论统一起来了,建立了一个完整的天地人“左升右降”的理论模型,解开了我读《皇帝内经》里很多不明白的问题,这本书非常值得爱好中医养生者一读,等读完之后,我会编写几篇养生感悟与大家分享。虽然研究中医,但计算机也没闲着,翻看博客的“草稿箱”里面已经准备好的“动力学初探”半成品,都编到十五期了,而现在完成发布的的仅八期,后面的刚体破碎和布料还没有谈到;XFROG植物建模,仅写完两期,后边的树木和花草还未编写完成;答应吧友编写的室内外建模刚刚编写二期半成品;角色建模和骨骼绑定还没有着手编写。编写博客技术文章是我凭兴趣而写,题目和内容很是随意,但我坚信:有计划就必须完成这个道理。所以,我接下来要继续完成动力学这个系列,虽然现在对之已经不感兴趣了。

【目的】
1、研究物体”破碎“及插件Xplode1.3 
2、研究刚体“激发”属性。

谈到刚体,除了以前研究过的物体相互碰撞,还有物体本身”破碎“问题。

一、手工破碎:我们知道动画里的模型实际上就是一个“壳”。点组成的线,线构成的面,面围成的体,模型里面是空的。计算机为了节约资源,看到的地方就渲染,看不到的就忽略,(法线便是标注面的朝向的矢量)。如果破碎模型物体,只用切刀,而不用特殊的插件,那么分裂开的也是“破碎的面”而已,还必须想办法把这些面,变成独立的体,非常麻烦。为了说明这个道理,下面我们手工制作一个物体“破碎”。

1、首先在场景中制作一个平面,设置如下,按C转换可编辑多边形。

 
2、选择“面模式”,按K 切刀,在平面乱切割。
 
3、你以为,这些面是分开的吗?选一个面试试,“在一起”。如何能把这些彼此联系的面分割开来。

4、添加--运动图形--多边形FX(这个对象的功能,在前边谈过),把这个对象放到平面下面,点击“多边形FX”,在属性--变换,位置.X=1,让这些面错开一点。

5、点击平面对象--右键--浮动菜单--“当前状态转对象”。选择面模式,点选一个面,移动一点,发现,这些面是分开的。但是他们还是一个物体平面,只不过是由很多破碎的“面”组成的一个平面(虽然这些面是分离的,但总的来说还是一体的,如果是分开的,那么每个小面就会有一物体,一个名称,而现在他们是一个物体一个名字)。

 
6、选择所有面,按D,八面变成体。(这个物体是由一些独立的小物体组成的一个整体),如何把这些小物体拆分开来呢?

 
7、 点击菜单-运动图形--分裂对象(这个对象能把一个物体的子物体分离控制),选择模式:分裂片段。为分裂物体添加刚体标签。再建立个地面,赋予碰撞体标签。

8、点击分裂的刚体标签,在下面属性--碰撞--设置如下(以前谈过)

 
9、点击动力学属性。 
刚体和碰撞体之间相互碰撞,是否发生动力学动画效果,是由“激发”选项决定的。C4D系统默认为“立即”,那么,当点击播放模拟时,刚体物体会在“场”的作用下立即放生效果。为了解决动力学复杂问题,C4D设立激发选项,包括以下选项: 1、立即;2、在峰速;3、开启碰撞;4、XPRESSO控制。这四种动力学启动方式非常方便制作复杂的动画。默认“立即”。

 
10、点击播放测试,发现这一个物体,在分裂对象的作用下,按照切刀切割生成的子物体,与地面碰撞散开了。这就是手工制作碰撞的方法之一,虽然麻烦,但是你能明白不只是动力学的问题吧?
 
11、手工制作的物体破碎还是太假。如何把一个物体很自然地破碎开来,再配合动力学制作出漂亮的动画呢?
只能靠第三方插件来完成。
 

【补充】
 其实不用这么麻烦,在上面第5步,我们可以这样:
1、既然这个面是由彼此独立的子物体构成,那么我们用到一个命令,就可以把它们拆分为多个物体。
  
2、这个命令在--菜单--网格-转换-多边形组到对象。父物体-平面为原来的物体,下面的平面1-平面30为拆开的子物体,把这些都选出来,删掉原来的“平面”父物体。

3、选择所有面,按D,挤压成体。再选择“对象”模式,任选一个物体,延Z拖出看看,不错吧。
(这又是处理多边形的一种方法,都是基本功,多边形建模实际上就是灵活地对点、线、面的“摆弄”。)

 
二、破碎插件:
目前在C4D上应用的破碎插件按照功能排序有:
Xplode1.3 、Thrausi 1.36 、NtriBlast 1.02 这些破碎插件功能一个比一个强大,我会结合研究刚体动力学的同时,分别介绍这些插件的应用。这次,首先谈谈Xplode 1.3。这个插件可以在网上查到,下载复制到:
MAXOM\CINEMA4D\PLUGINS\下面。在C4D菜单--插件--可以找到 XPLODE。

 
  
random seed  :随机种子,种子数不同,破碎的形状不一样。 
no of parts:破碎数量。
power:   强度 能量   add:添加破碎点, clear :清除破碎点,scatter: 执行破碎
triangulate :三角面   inside Mat:  拖拉一种材质在此,允许指定一种材质应用于所创建破碎面。
四个图标为 空物体、克隆、分裂、矩阵 (破碎父物体是什么,你自己定)
part name:  破碎物体的名字。

下面通过几个练习,熟悉这个破碎插件:
第一练习:
1、在场景中复制出两个一样的立方体,选择:立方体1,设置xpolde 如下图所示,种子数为12347,分裂为10,父物体为:空物体;parts name: A。设置完后,先点击 ADD按钮,在立方体1上出现一些分裂点,点击SCATTER 进行分裂。

2、分裂完成。xplode trash 垃圾下为原来的物体,插件已经把它隐藏了。A目录下的为分裂的子物体碎块。

3、选择:立方体,设置xpolde 如下图所示,种子数为-1101,分裂为20,父物体为:分裂对象;parts name: B。设置完后,先点击 ADD按钮,在立方体上出现一些分裂点,点击SCATTER 进行分裂。

 
这是B破碎生成的物体。

   
4、为A\B两个父物体添加刚体标签,动力学--激发--立即。涉及到子物体,必须在:碰撞--设置如下:
 
5、为地面添加碰撞体。
 
6、把B物体移到远一点距离,点击播放测试。
 
7、这个碎片很真实,左侧B物体为20块,右侧A物体为10块。
 
8、发现物体会散开很远,如何能让物体散开范围小一点呢?增加摩擦力,减小反弹,这是个办法。但效果不明显。
 
9、点击B物体的刚体标签---力。提高线性阻尼和角度阻尼的数值,这两个选项能使阻碍物体的散开的距离和散开的旋转,好像在粘油里一样。

10、测试看看,B物体果然变成一堆了。

11、再提高一点,效果更明显。

  
 第二练习:
左边的立方体勾选了 Triangulate ,右边的没有勾上。

第三个练习: 二次破碎。
1、建立一个立方体,首先破碎30块。选择工具,可以随机选择任意一块。
 
2、选择其中一块,xplode设置如下,点击scatter ,进行二次破碎。
 
3、生成为a的空物体,下面有50个子物体。
 
4、同理,选择几块物体,进行二次破碎,名称为b,c。
 
5、把a b c 父物体拖入 pieces物体中。点选 a父物体---右键(浮动菜单)--删除(不包含子集)命令。这个命令就把a 父物体下面的所有子物体释放出来, a被删除。

6、建立刚体标签。注意设置如下:
 
7、增大-力--阻尼设置,阻止碎块的扩散。


8、点击播放测试,哇!一堆石头啊。 
   
第四个练习:控制破碎范围
1、在场景中建立一个立方体和一个小球。
 
2、点击小球,点击xplode插件的add, 添加破碎点。xpode是以球体的大小范围进行布点。
 
3、把小球半径增大,点击add 再增加破碎点。
 
4、把小球半径再增大,点击add 再增加破碎点。

5、现在删除小球,他的用途就是告诉破碎插件产生破碎点的范围。 
 
6、点击立方体,再点击xplode 的破碎命令。
 
7、这些破碎点在立方体上生成了中间密集,外边稀疏的碎块。点击插件的clear,清除破碎点。
 
8、为破碎的物体添加刚体标签,做如下设置:
 
9、把破碎物体的动力学标签--动力学--激发--“开启碰撞”【新的知识点】,点击播放测试,物体一动不动。这个设置必须有物体碰撞触发它,他才会有作用。

10、添加地面(碰撞体)。
   添加一个小球为刚体,用来冲击触发破碎的墙体。设置其初始线速度为2000CM,延Z轴方向,正对破碎物体。
  
11、点击播放,小球撞击破碎墙体,触发碰撞,墙体开始破碎,由于速度很大,整个墙体四分五裂。  

12、如何控制墙体的破碎范围呢?
在激发--激发速度预置--300cm ,发现墙体不在四分五裂,而是撞开一个大洞。

13、在激发--激发速度预置--928cm ,,而是撞开一个小洞。你明白了吗?

继续增大,小球被弹回来,墙体中间碎了一点。

 
第五个练习:
在场景中制作一个立方体。制作两个材质一个是灰色的赋予给这个立方体,另一个红色材质的拖给xplode的内部材质(inside mat),破碎数目为20,点击ADD添加,再点击破碎。xplode trash父对象下隐藏的原物体,a父对象下是20个破碎的物体。我们移动一个物体,发现红色的材质在里面。
xpolde插件生成的内外不同材质,是通过面选择集实现的。
 
第六个练习:
XPOLED插件支持C4D的TP粒子,组名为"XplodeGroup“。正在研究中........
 
【后记】
上边讲解了xpolde插件的应用,同时进一步继续研究了动力学的其他控制参数。如何灵活应用是关键,好比老师教你各种公式,你必须用之去解决不同问题,这必须动脑。

【思考】
通过这个xplode插件,我们可以制作一个玻璃酒杯破碎的动画:一个钢球击碎透明的玻璃酒杯。可是,如果我们先把酒杯破碎,虽然酒杯是完整的,但在渲染时,能看到没有被击破的酒杯裂纹,如何解决?如果我们制作动画的时候,钢球击碎酒杯的瞬间,如何能制作出慢动作效果呢?

 
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
3dmax中如何制作小球碰撞刚体案例
青蛙跳刚体动力学计算
数字人C4D学习笔录之二 动力学初探
用16行Python代码打造一个超好玩的游戏,看完你也行
动力学与运动学的区别和联系
基于ANSYS WORKBENCH的刚体动力学
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服