MAX Reactor之 Fracture 破碎器

1、Fracture可以把一个几何物体给破碎开吗?

不行,他只能把组合成一个Fracture的很多个物理物体看成一个整体,当受到外力碰撞的时候,被碰撞到的部分将会解体,而其余的部分将试图保持原样。reactor中的破裂是一种特殊的刚体模型辅助对象,它可以模拟刚体因受冲击而破碎成一定数量的小块的效果。 破裂的原理是这样的:首先用一些小块"粘合"成为要制作破裂效果的物体,这些小块破裂时是不会碎裂成更小的小块的;然后当破裂辅助对象与其他物体发生碰撞时,系统会分析碰撞信息,若超过了阈值,相应的小块就会脱离整体而独立运动;这些脱离整体的小块可以和破裂辅助对象中的其他刚体小块继续发生碰撞,从而生成一系列的破裂效果。

2、中英文对照:

Pieces (小块):在列表中显示当前作为破裂辅助对象一部分的小块的名称。Highlight,Pick、 Add和Delete按钮的使用方法前面已经介绍过。
Selected Piece (选中的小块)选项组对列表中选中的小块设置以下一些参数

Broten(破裂):这个复选框显示当前选中的小块在指定时刻是否发生破裂(用于动画) ,单击其后的Reset按钮将设置所有小块在动画的任意一帧都不发生破裂。

Nomal (正常):小块的默认破裂状态,即不作特殊设置。
Unbreakable (不会破裂):小块在任何情况下都不会脱离整体。

Keystone (关键):若此小块脱离整体,则全部小块都将脱离整体(全部破裂)。

Break at Time (在…时刻破裂):小块在下方控制栏中设置的时刻破裂,单击Now按钮,小块将在动画的当前帧破裂。

Use Connectivity (使用连接):选中此复选框时,在破裂辅助对 象中允许Connectivity (连接)存在,即一部分小块是连接在一起 的,而不与其他小块连接。这样在模拟破裂时,可以使用一个破裂辅助对象生成多重破裂的效果。碰撞检测系统若发现两个小块之间的距离小于reactor工具命令面板上World (世界)卷展栏中设置的碰撞忍耐度时,就认为它们是彼此相连的。

Bfeakon (因…破裂)选项组

Impulse (推动力):选中此项时,小块受到的推动力超过后面设置的阈值时就会破裂。这个推动力是与发生碰撞的对象各自的质量和速度成比例的,质量越大的对象霈要的推动力也越大。

Velocity (速度):选中此项时,小块在碰撞时的相对速度超过后面设置的阈值时就会破裂。此时发生碰撞的对象各自的质量和大小将不被考虑。

Energy Loss (能量损失):这个值用来设置在由众多小块"捆绑" 组成的破裂辅助对象,因碰撞而破裂时额外损失的动能的多少, 它将能量传递给破裂辅助对象中尚未脱离出去的小块,在一定程度上减弱破裂的强度。若想模拟易碎物品的破裂,如瓷器粉碎的效果,需将此值调低,若想模拟木头或混凝土块断裂的效果,需将此值调高。增大此值还可提升模拟时的表现力和稳定性。

Display (显示)选项组

Show Bounding Box (显示立方体边框):选中此复选框时,所有属于破裂辅助对象的小块将被一个立方体边框框起来显示在视图中。

此外,在reactor工具命令面板的World卷展栏中还有一些破裂的全 局参数设置。

Fracture Penetrations (破裂穿透)选项组

这个选项组中的参数用来设置模拟破裂时碰撞检测的穿透深度及其引起的反应。
Separation Time (分离时间):对两个相互穿越的小块施加足够大的力使其在指定的时间内分离。
Vdocily Cap:当两个相互穿越的小块的相对速度超越此值时,促使其分离的力将不被施加。

模拟爆炸效果时,应把Separation Time的值设得很小,并调低Velocity Cap的值。

Scale Tolerance (缩放忍耐度):调整碰撞时小块间发生穿越的可能性,此值越小,穿越的可能性也越小。当为负值时,会有效地减少发生穿越的小块数量。

在模拟破裂时,碰撞检测系统的作用非常重要。因为破裂时允许小块在彼此穿越时继续发生碰撞,有时脱离整体的小块的运动会变得不太自然;或者因这些继续与破裂辅助对象整体发生系列碰撞而造成预期之外的破裂效果,使模拟变得不稳定,这时就需要进行一些调整,有以下几种办法:

1 减小Scale Tolerance的值。 2 手动调整各小块的间距。 3 增大Energy Loss的值。 4 增大Separation Time的值,或减小Velocity Cap的值。 5 重新划分小块的大小,尽量避免其体积过小,尤其不要将很小的小块与很大的小块相邻摆放。 6 使用Connectivity设置。

相关文章

react 中的高阶组件主要是对于 hooks 之前的类组件来说的,如...
我们上一节了解了组件的更新机制,但是只是停留在表层上,例...
我们上一节了解了 react 的虚拟 dom 的格式,如何把虚拟 dom...
react 本身提供了克隆组件的方法,但是平时开发中可能很少使...
mobx 是一个简单可扩展的状态管理库,中文官网链接。小编在接...
我们在平常的开发中不可避免的会有很多列表渲染逻辑,在 pc ...