创建刚体

通过将 MassFX 刚体修改器应用到对象来创建刚体。可以通过以下方法从“修改”面板上执行此操作:使用 MassFX 工具栏上的“刚体”弹出按钮,或使用“动画”菜单 “模拟 - MassFX”“刚体”子菜单中的命令。

根据您的选择设置“刚体类型”参数的值时,不同的工具栏按钮和菜单命令都创建相同的修改器。创建后您可以随意更改刚体的类型。有关各种刚体类型的详细信息,请参见“刚体类型:动力学、运动学和静态”。

将 MassFX 刚体修改器添加到某对象后,会自动将该对象添加到模拟中。

体验一下吧!                              

  1. 在新场景中,创建一个茶壶。

  2. 将茶壶移动至高于地面(也许倒置,以获得更有趣的效果)。

  3. 在“MassFX 工具”对话框 “世界参数”面板 “场景设置”卷展栏中,禁用“生成每个元素的图形”。                  

  4. 选中茶壶后,在 MassFX 工具栏上单击 “创建动力学刚体”按钮。                      

    MassFX 刚体修改器将添加到修改器堆栈中,同时为物理图形创建凸面外壳。          

                       实际上,由于“生成每个元素的图形”处于启用状态,MassFX 会创建四个凸面外壳:茶壶网格的每个元素对应一个。对于复杂图形(如茶壶),这可能会使模拟更精确,但速度较慢。本主题的稍后步骤中将介绍如何创建单个外壳。                      
  5. 在 MassFX 工具栏上单击 (开始模拟)。                      

    茶壶落到地面上,并且可能发生轻微的反弹和滚动。                      

    茶壶是否正好落在地面上?您可能需要在“世界参数”面板上启用“使用地面碰撞”选项。                      

  6. 再次单击 (开始模拟)以在当前帧停止模拟。                  

  7. 单击 (重置模拟)以将茶壶返回到其起始位置。                  

管理动力学刚体的“初始变换”

如果您尝试了上一过程,您会看到 MassFX 模拟在场景中移动动力学刚体。单击 (重置模拟)会将所有动力学刚体移回到其起始位置。此起始点称为刚体的“初始变换”。

MassFX 如何知道此变换的位置?默认情况下,当时间滑块位于第一帧时,您对动力学刚体的位置或旋转所做的任何更改会自动更新初始变换。当时间滑块未在第一帧时您对动力学刚体的变换所做的任何更改都将在单击 (重置模拟)时丢失。

体验一下吧!                              

  1. 接着使用上一过程中的茶壶,再次运行模拟,然后将其停止。

  2. 如果茶壶此时位于地面上,将其移动到新位置。

  3. 单击 (重置模拟)。                      

    时间滑块将跳回到第一帧且茶壶返回其初始位置(浮动于地面上)。所有您精心挑选的放置位置都毁于一旦!                      

  4. 现在,动画位于第一帧,再次移动和旋转茶壶,可能会从更高的位置开始。

  5. 单击 (重置模拟)。                      

    此时,茶壶保持不动。                      

  6. 运行并重置模拟。                      

    茶壶移回到其新的起始位置。                      

也可以将模拟过程中任意位置的刚体状态“捕获”为初始变换。要执行此操作,请使用“MassFX 工具”对话框“模拟工具”面板上的“捕获变换”按钮。

调整物理材质

物理材质的“密度”和“质量”参数通过对象的体积联系在一起。例如,一枚小钢针和一根大钢质带缆桩都具有大约 7.85 g/cm3 的密度,但(当然)钢针具有更轻的质量。对象越重,惯性就越大,更容易推开轻对象。

要使动力学刚体的下落速度更快,可在修改器的“物理材质”卷展栏中尝试增加密度(或质量),但不起任何作用。在理想世界(忽略空气阻力)中,不同大小和重量的对象都会以相同的速度下落。(可能您想起了伽利略从比萨斜塔扔下物体的猜想。)可以使对象更快降落的仅有的方法是以下二者之一:                  

  • 增加重力(使用“MassFX 工具”对话框),或                

  • 将对象移动到离地面更近。

将对象朝地面移动可能听起来很显而易见但无用,然而却带来了单位的重要问题。

在仅有图形的世界中,6 英尺高的人站在 10 英尺远的位置看到的 50 英尺高的砖塔,相当于 60 英尺高的巨人站在 100 英尺远的位置看到的 500 英尺高的砖塔。但是,从(庞大)500 英尺塔下落的(巨型)砖将比(正常)砖从 50 英尺下落花费更长的时间到达地面。如果通过巨人的眼睛观察,并以人类的想法,则您会奇怪为什么砖下落得如此缓慢。              

体验一下吧!                          

  1. 从茶壶对象中删除刚体修改器,然后在“MassFX 工具”对话框 “世界参数”面板 “场景设置”卷展栏上,禁用“生成每个元素的图形”。                      

    这将导致刚体修改器的后续应用程序为整个对象创建单个物理图形,不论该对象包含多少个元素。在此处执行此操作的目的是使剩余步骤更容易一点地完成。          

  2. 再次应用刚体修改器。

  3. 在修改器堆栈底部查看茶壶对象的“半径”参数来检查茶壶的大小。

  4. 通过将半径增加为适当大的值(采用场景的单位)将茶壶变得非常大。如果愿意,可将其变得和足球场一样大;越大越好。                      

    茶壶变得更大,但凸面外壳不会随之更新。                      

  5. 要重新生成凸面外壳,请在“MassFX 工具”对话框 (多对象编辑器)面板 “物理网格”卷展栏上,单击“凸面”按钮并从下拉列表选择“凸面”。或者,在“修改”面板的“物理网格参数”卷展栏上调整任何参数。                      

    凸面外壳再次包围茶壶。                      

  6. 将茶壶向上移动至离地面大约一个茶壶直径的位置。

  7. 运行模拟。                      

    茶壶像气球一样缓慢漂向地面,并在数秒后触地。                      

  8. 重置模拟,然后将茶壶收缩为人类比例(大约 8 个单位的半径)。也可以重新生成凸面外壳,以适合新的大小。                      

    现在,您拥有了一个漂浮在空中的正常大小的茶壶。                      

  9. 同样,将茶壶移动至离地面大约一个茶壶直径的位置。                      

    这次仅离地面大约一英尺。                      

  10. 运行模拟。                      

    在不到半秒的时间内茶壶触地。                      

因此,如果感觉是在月球上进行模拟,则增加重力之前,请先检查所有物体的大小。差不多听到高中老师说过:“涉及到物理学时,单位十分重要!”。

施加于对象的摩擦力值确定该对象沿其他曲面滑动的难易程度。例如,如果聚四氟乙烯桌子上的聚四氟乙烯立方体的摩擦力值为 0.05(几乎无摩擦力),它将在停止前几乎无限期地滑动。反之,如果两块包有一层砂纸的木块的摩擦力值为 0.95(几乎完全摩擦力),这两块木块几乎不会互相滑动。              

MassFX 提供两种摩擦力设置:    

  • “静摩擦力”描述了两个对象尚未互相滑动时的摩擦力值:使其互相滑动所需施加的力大小。

  • “动磨擦力”描述了两个对象互相滑动时的摩擦力值。

如果您尝试过推动汽车或躺椅,您可能已经注意到很难使其移动,但一旦动起来就轻松多了。为获得真实的效果,静摩擦力值通常应高于动摩擦力值。

“反弹力”参数控制对象碰撞时互相反弹的范围。

橡胶球的“反弹力”值可能大约为 0.75,泡沫球的值可能大约为 0.2,花生酱球的值为 0.0。

调整物理图形

物理图形与图形网格中所述,一个刚体可具有一个或多个物理图形,用于在物理模拟中表示该刚体。如果未阅读该部分,现在就请阅读。

“物理图形”卷展栏的“修改图形”组用于创建其他物理图形。有关这种(不常见)情况的详细信息,请参见 MassFX 刚体修改器。通常,只有模拟需要对动力学刚体使用凹面曲面时,才需要使用多个物理图形;完成此操作的最简单方法是使用“凹面”图形类型(见下文)。

通过“图形类型”设置,可以更改用于刚体的(选定)物理图形的类型。选择一种网格类型时,其参数将显示在“修改”面板的“物理网格参数”卷展栏上以及“MassFX 工具”对话框 >“编辑”面板上。以下是可用选项的详细说明:

球体、长方体和胶囊              

它们是简单的“无限平滑”MassFX 基本体。虽然在默认情况下,这些基本体在创建时大致构成了图形网格的边界,但在创建之后可以使用参数(“半径”、“长度”、“宽度”、“高度”)来控制基本体的大小。                

要在更改图形网格后自动重新计算最佳适配值,只需从下拉列表中再次选择相同的“图形类型”。这会重建图形以适合图形网格。                

“球体”是用于模拟时速度最快的基本体类型,之后是“长方体”,最后是“胶囊”。这些类型的速度都比“凸面外壳”、“凹面”和“自定义”网格类型快。                

凸面              

这是大多数刚体的默认物理图形类型,因为它可以用于所有刚体类型且大致类似于原始的图形网格。                

默认参数是 32 个顶点且无膨胀。使用的顶点数越少,近似效果就越粗糙,但性能越好。要创建大于图形网格的外壳,请增加“膨胀”值。                

要手动调整凸面外壳的顶点,请单击“修改”面板 “物理图形”卷展栏上的“转换为自定义图形”按钮(有关详细信息,请参见自定义)。                

凹面              

此选项提供了用于创建用作动力学刚体的凹面物理图形的最简单方法。其自动创建并合并多个凸面外壳(即,合成),以根据修改的图形网格中的顶点创建物理图形。如果图形网格是凹面的,则此选项将最精确地合成凸面外壳,以支持凹面物理图形。但是,使用此图形类型可能会消耗大量资源;仅在您需要精确凹面刚体时才使用此图形类型。                                

注意选择该图形类型时,只有单击“物理网格参数”卷展栏上的“生成”按钮,才会生成合成图形。生成网格时,MassFX 将显示进度条,并显示消息“正在计算”。该过程完成后,卷展栏会显示凸面外壳数。                  

旧的              

此选项使用图形网格中的顶点来创建物理图形。如果您的图形网格是凹面的,使用“原始”网格类型不会使动力学或运动学刚体支持凹面图形。但是,“原始”网格类型提供最佳性能,可支持凹面静态刚体。如果需要精确的凹面刚体,请改用“凹面”。                

例如,创建一个 32x32 分段的平面基本体,然后将其添加将具有足够振幅和波长的涟漪修改器,以使其起伏不平。将其设置为静态刚体并将物理图形类型设置为“原始”。将动力学刚体拖放到上面,会导致这些刚体从波峰反弹并停留在波谷。                

自定义              

“自定义”网格类型允许场景中使用几何体将用作物理图形的对象的副本。要将对象用作物理图形,该对象必须是凸面或平面的,不得是凹面的。                

要使用自定义对象,请先将“修改”面板 “物理图形”卷展栏 “图形类型”设置为“自定义”。然后,在“物理网格参数”卷展栏上,单击“从场景中拾取网格”按钮,并在场景中选择要用于物理图形的对象。相关对象的名称将在按钮上显示。                

提示将在源对象位置处创建自定义网格,因此,要将其定位在刚体上,请在拾取源对象之前叠加对象,或随后在刚体的“网格变换”子对象层级移动网格。                  

自定义对象的几何体将复制到 MassFX 刚体修改器。如果愿意,则可以删除自定义对象,且不会导致出现任何问题。但是,如果不删除自定义对象,可以更改其几何体,然后使用“从源对象更新”功能重新将最新信息复制到修改器中。                

如果要使用自定义的物理图形,但没有现成的,会怎么样?例如,默认的凸面外壳可能接近所需的物理图形,但是希望调整某些顶点的位置。要使用其他图形类型,只需单击刚体修改器的“物理图形”卷展栏上的“转换为自定义图形”(在“MassFX 工具”对话框上不可用)。这样,将在关联的场景中创建一个新的可编辑网格对象,作为自定义对象。然后调整网格对象,并使用“从源对象更新”功能。                                

,