可以使用约束连接场景中的多个刚体。例如,假设已经将门添加到您的场景并使其成为刚体。该门在门框中的直立平衡状态在最开始时可能会不稳定,对该门的任何撞击行为都会使其倒落到地板上。要使门直立在门框中且可以旋转打开和关闭,您可以使用转枢约束。
物理图形与图形网格
图形网格(茶壶)及其简化的物理图形
如果没有 MassFX,场景中的每个网格都是一个图形网格:对象的视觉表示。要优化实时游戏的图形网格或加快渲染速度,可以编辑其多边形。
要进行物理模拟,还需要能够控制所处理的信息量。通常,进行模拟所需的信息量远少于图形表示所需的信息量。例如,如上图所示,在物理模拟中,(图形)茶壶可以表示为一个简单的凸面(物理)外壳或图形。
物理图形可以是多边形的集合(例如用于茶壶的多边形集合),也可以是一个更简单的内置图形。MassFX 中可用的图形是球体、长方体和胶囊。只要有可能,就将这些图形用于物理图形,因为它们比多边形表示更平滑、速度更快。
例如,物理图形中具有面状凸面外壳的沙滩球会在地面上不平稳地滚动。使用内置的球体物理图形表示球可使其平滑滚动并产生更好的性能。
提示在“MassFX 工具”对话框中,使用“物理网格”卷展栏上的“网格类型”参数设置物理图形。在“修改”面板上,使用“物理图形”面板上的“图形类型”选项进行设置。
合成物理表示
此时,您可能会问:除了球形沙滩球和长方体的箱子,简单图形还有哪些用处?将茶壶模拟为球体、长方体或胶囊不太真实。
答案在于是否能合成图形。虽然最常见的情况是单个物理图形表示单个图形网格,但可以用任意数量的物理图形表示单个图形网格。
下图显示了单个图形网格表示一张木桌。单个凸面外壳(蓝绿色长方体)可以用于模拟,只要桌子旁没有椅子或桌子下面没有试图滚动的对象。如果执行此操作,因为动力学刚体无法使用凹面网格(请参见下一节),所以需要从一组连接的物理图形合成物理表示。
具有凸面物理图形的桌子图形网格
下图显示了将一个长方体和四个胶囊图形用于物理表示的同一张桌子。
具有多个物理图形的桌子图形网格
有关将多个物理图形添加到刚体的详细信息,请参见“物理图形”卷展栏。
刚体类型:动力学、运动学和静态
模拟中的每个刚体只能为以下三种类型之一:动力学、运动学或静态。为方便起见,在 MassFX 工具栏的“刚体”弹出按钮上,每个类型都有一个按钮,以便您可以同时应用刚体修改器和设置类型。也可以使用“动画”菜单 “模拟 - MassFX”“刚体”“将选定项设置为...”命令之一。同样,使用“MassFX 工具”对话框或“修改”面板上的“刚体类型”设置完成创建后,您可以更改刚体的类型。
此外,mCloth 对象可以是动力学或运动学刚体,但不可以是静态刚体。
动力学 动力学刚体或 mCloth 对象非常像在真实世界中的对象:受重力和其他力作用;撞击到其他对象;可以被这些对象推动。MassFX 模拟移动对象的物理表示(物理图形),因此场景中的图形网格将相应地更新。动力学对象不能使用凹面物理图形。但是,您可以使用凹面图形类型模拟动力学对象中的凹度。
运动学 运动学刚体或 mCloth 对象是由一系列动画移动的木偶。它不受重力或其他力作用。它可以推动所遇到的任何动力学对象,但不能被这些对象推动。3ds Max 控制图形网格(设置动画或未设置动画),然后进而控制表示模拟中对象的物理图形的变换。运动学对象不能使用凹面物理图形。但是,您可以使用凹面图形类型模拟运动学对象中的凹度。
注意在 MassFX 中,对象可以开始为运动学刚体,然后在模拟中的任意点处切换为动力学刚体。
静态 静态刚体类型类似于运动学类型,不同之处在于它不能设置动画。动力学对象可以撞击静态刚体并从其反弹,而静态刚体从无反应。静态刚体类型可用于优化性能,因为它支持凹面物理图形。
提示静态是可以使用原始图形类型的唯一刚体类型,这种类型使用图形对象的实际几何体作为物理图形。因此,当使用凹面对象作为静态对象时,请确保将其设置为原始图形类型,而不是凹面类型。