




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、现在我们来弄一个比较复杂的刚体动力学特效。一个大铁球撞破墙壁,一辆路过的小轿车被碎石击中,然后变向(危险行为,请勿模仿)。1.墙壁的创建。这里就不与BlastCode这样专业的破碎插件进行比较了,我使用Maya最平常的方法创建出即将破碎的墙壁。 Maya制作模型碎片的一些方法:(1)使用CutFacesTool对模型进行直线切割。这种方法可以得到很规整的模型,尤其可以应用于复杂几何体的切割,不过缺点就是操作繁琐。(2)使用SplitPolygonTool在简单的平面上描绘出裂痕,然后使用提取面命令分离这些面(执行Extract命令前KeepFacesTogether要先去掉勾选)。(
2、3)使用内核布料系统的布料切割,不过碎片会比较整齐。(4)使用Dynamics动力学模块下Effects菜单的Shatter。此命令要求模型无历史,且材质不能太复杂,在圆弧表面的几何体上容易发生形变。(5)使用SplitVertex切分点工具。此命令会将点周围的边全部分离,与布料的切割类似。(6)使用自定义的色块贴图,执行贴图转几何体命令(TextureToGeometry),然后提取面分离。这是最省事的方法,可控性也高,不过太复杂的贴图Maya会需要大量的运算时间。与BlastCode插件的破碎贴图有点类似。这里,我所进行的步骤如下:(1)使用CutFacesTool将面片切割为几大块;(2
3、)对撞击中心的区域模型进行细分操作:EditMesh->AddDivisions;(3)删除所有碎片的历史,对细分后的碎片执行:Effects->CreateShatter(粉碎);(4)全选整个墙体模型,执行Extrude(挤压)命令,制作出厚度;(5)全选整个墙体模型,执行Combine(合并)命令,合并为一个物体以方便编辑UV;(6)选择这个合并后的模型,使用一个平面的UV贴图投射PlanarMapping(如果也需要对模型的厚度进行单独UV展开,可以在侧视图选择这些模型面后进行AutomaticMapping);(7)选择模型,执行Separate(分离),再次将模型分离为
4、独立的小块,然后删除所有历史。(8)除了删除操作历史,冻结坐标(FreezeTransformations)和轴心居中(CenterPivot)也是很重要的操作。如果你在执行刚体解算时发生异常(如碰撞后刚体方向,旋转或大小很不合理的变化),那么最大的可能就是刚体物体或者其所在的组的变形属性(位置,旋转,缩放)的初始态有数值变化。(9)赋予模型贴图。与常规的模型贴图是一样的,没太多需要说明的,不过要注意的一点就是:由于是会产生动力学动画的物体,因此不可使用3D纹理节点进行贴图(谁用谁知道)。2.其他场景物体。斜坡,地平面,小车,大铁球。3.制作包裹物体(刚体代理)。刚体的模拟是很耗费资源的,尤其
5、是过于复杂的模型。配合分层渲染,我们应尽可能的优化刚体的解算。包裹物体就是参考复杂模型的基本外观,制作出一个简单的多边形几何体;将复杂模型作为包裹物体的子物体,然后在渲染的时候排除包裹物体(方法很多,最简单的就是将该包裹物体放于物体层中,设置层选项为Template参考模式T字母标志;不过如果使用的是MentalRay渲染,就需要使用渲染过滤,因为MR不支持参考模式的层设置)。4.赋予包裹物体刚体属性。包裹物体刚体属性参数设置如下:InitialVelocityZ(Z轴向的初速度):-20(负号表示朝Z轴的相反方向运动)ImpulseZ(Z轴向的推力):-10(抵消部分总摩擦力)Mass(质量
6、):500Bounciness(弹性):0.35.动力场连接。选择车的包裹物体,执行Fields->Gravity,将重力场增加至刚体解算中。6.对地面创建被动刚体。7.刚体约束。选择墙壁后的球体,执行CreateNailConstraint(创建钉子约束)。创建约束或动力场连接时,Maya会自动将几何体转为刚体属性,所以可以跳过赋予刚体属性的步骤。球体刚体属性参数设置如下:Mass(质量):1000Bounciness(弹性):0.18.设定初始位置。可以使用风场将球体吹至一定高度后,再将此位置的球体设置为初始态InitialState;这里我使用一个NURBS曲线圆圈进行定位,直接移
7、动球体的位置(钉子约束点位置不变)。9.手动将刚体与场景中已存在的动力场进行连接。选择球体,执行Window->RelationshipEditors->DynamicRelationships(动力学关系编辑器),点击Fields栏下的GravityField,当文字背景为默认的橙色时表示所选物体已经受重力场的影响。10. 测试场景。为使小球穿过墙体撞击小车,根据需要改变小车的初速度或推力。因为总摩擦力与小车的质量有关,因此初速度的能量消耗程度取决于物体质量和摩擦因数的大小。11.墙壁刚体的制作由于墙壁有较多的碎片小块,因此我将它留到最后再制作。全选墙壁物体,执行Cre
8、ateActiveRigidBody。此时最好不要播放场景动画,因为基本上都会卡机,甚至Maya崩溃。解决方案(任选其一):(1)缩小所有刚体,使它们之间具有一定间隔,并修改刚体解算器下的参数值步长和碰撞容差。(2)设置刚体代理方体和球体,降低解算质量。(3)设置碰撞层。(4)设置穿插属性。如果撞击发生在很短的一瞬间,且镜头上不会过多的停留在碎片的飞行中,那么可以使用方案(4),这是快速实现效果的最优选择;如果镜头不会停留在撞击点上(或者距离较远,可以忽略模型块的间距),我们可以使用方案(1),这可以较为完美的实现碎片飞行中的碰撞;如果碎片较为规则,接近于方体,可使用方案(2)刚体代理来完成;
9、如果你需要对不同区域的碎片进行碰撞设置,方案(3)则可以考虑,我们可以将之理解为方案(4)的扩展。有时由于一些画面视觉的要求,我们需要同时将多种方案应用于一个场景动画中,但往往还是难以达到理想的动力学解算效果。此时,我们可以对个别物体的烘焙关键帧进行细节动画的调整;如果工作量太大,对碎片进行分层渲染来避免穿插镜头也是可以考虑的。12.选择方案(4)进行。一般撞击后飞行的碎片之间的碰撞不会太多,这里我直接忽略(谁叫我使用的是一个过时了的笔记本效率优先),遇到穿插时我更倾向于对烘焙了关键帧的物体进行个别处理。(1)全选墙壁的各刚体几何体,执行CreateActiveRigidBody;(2)保持刚
10、体全选,点击右边通道栏SHAPES下的RigidBody节点,展开属性列表,直接修改参数值如下(所有选择物体的相同属性都会被同时修改):Mass(质量):20Bounciness(弹性):0.1StandIn(替代):Cube(为了正确解算,最后我还是设为了None)(3)保持刚体全选,执行Solvers->SetRigidBodyInterpenetration(设置刚体穿插);(4)选择最下面的几何体,将通道栏中的Active改为Off(输入0,回车即可)。因为底部几何体不参与动力学解算,此步操作将所选几何体变为被动刚体,可避免它们与被动刚体地面的穿插(或者你也可以将它们与地面设置刚
11、体穿插)被动刚体间不会出现解算穿插的问题。(5)设置了刚体间的穿插,可以获得流畅的动力学解算效果,并且除了刚体碎片间的碰撞,它们与场景中其他刚体的碰撞还是会被真实的解算出来。如果仍打算将解算质量降到最低来提高解算速度,可以将所选刚体的通道栏的StandIn设置为Cube,并将刚体解算器RigidSolver节点的StepSize(步长)和CollisionTolerance(碰撞容差)数值提高,而RigidSolverMethods设置为MidPoint。(6)播放场景动画进行测试。当动画达到预想效果,对墙体刚体设置重力场。在碎片被撞击飞出之前,我不打算让它受到重力场的作用而运动,因此我需要加
12、入一个新的重力场,并对力场设置关键帧:将重力场的Magnitude(强度)设置为0;在发生撞击的那一帧设置关键帧(KeySelected),然后在下一帧更改Magnitude数值为9.8并设置关键帧。(7)选择那些不打算参与解算的模型,将它们通道栏的Ignore设置为On。(8)播放动画,发现碰撞区的一些碎片与剩余的墙体发生穿插。要解决这个问题,可以选择这些刚体,恢复它们的碰撞属性(SetRigidBodyCollision)如果恢复的刚体太多,那又回到了设置穿插属性之前;根据镜头需要,常常需要进行分层渲染或调节烘焙关键帧来解决物体穿帮的镜头(华丽的特效是要慢慢磨出来的)。(9)当动画效果基本达到,烘焙动力学模拟的关键帧(BakeSimulation),然后删除所有刚体属性。*国际惯例,将关键帧的总长度压缩为一半左右。13.设
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 西安理工大学《新时代高校劳动教育通论》2023-2024学年第二学期期末试卷
- 南京理工大学《乒乓球教学》2023-2024学年第二学期期末试卷
- 吉首大学张家界学院《声乐一》2023-2024学年第二学期期末试卷
- 滁州职业技术学院《民间美术图形创新设计》2023-2024学年第二学期期末试卷
- 桂林医学院《软件设计模式与体系结构(双语)》2023-2024学年第二学期期末试卷
- 社区服务中心设计
- 小学科学实验室安全教育
- 2024年水电站计算机监控装置项目资金筹措计划书代可行性研究报告
- 相关管理规定制度的教育
- 新生儿肺炎护理
- 智能监测与控制系统-深度研究
- 水利施工超标准洪水应急预案
- 《自动瓷砖切割机的结构设计》12000字(论文)
- 海上丝绸之路(浙江海洋大学)学习通测试及答案
- 皮带机安全培训课件
- ISO 27040-2015 信息技术安全技术存储安全管理手册程序文件制度文件表单一整套
- 【MOOC】游戏开发程序设计基础-中国传媒大学 中国大学慕课MOOC答案
- 【MOOC】葡萄酒文化与鉴赏-西北工业大学 中国大学慕课MOOC答案
- 【MOOC】百年歌声-中国流行音乐鉴赏-中国矿业大学 中国大学慕课MOOC答案
- 2024年同等学力人员申请硕士学位英语试卷与参考答案
- 【MOOC】3D工程图学应用与提高-华中科技大学 中国大学慕课MOOC答案
评论
0/150
提交评论