如何通过自定义指令实现数据驱动模型爆炸以及恢复效果
应用场景
通常我们在项目中如果需要设备模型爆炸效果,需要在建模的时候将爆炸动画做好。这样就对建模有了一定的要求和标准。
那在建模资源和交付时间紧迫的情况下,我们也可以通过指令组件中的自定义动作快速的实现一个爆炸效果。
操作步骤
查看模型网格层级—> 配置自定义指令
Step1(查看模型网格层级)
首先我们需要在对象列表找到我们要驱动的目标对象,并点开模型的网格层级,找到零部件模型所处的网格。这里我们简单的理解为,先将可以炸开的设备零部件的模型网格找到。

同时需要根据辅助坐标的指引,找到要移动的坐标轴。
Step2(配置自定义指令)
当我们梳理好目标模型网格和移动方向后,就需要将每个网格对象做如下两个配置。
下面我们以单个模型网格为例:
(1)配置炸开自定义动作
1)查看原始位置:
通过对象的“基本属性”栏,查看原始位置坐标。

例如该目标网格对象的原始坐标为:(0,-8.56999,0)
2)确认要发生位移的轴向
此处,我们将目标网格对象向z轴的负方向移动。因为我们可以确定在自定义位移时,大概的目标位置应为(0,-8.56,-20)。
3)配置自定义动作指令
将目标网格对象挂载指令组件,配置内容如下所示:

即当执行条件满足后(boom变量等于true时),目标网格对象,将通过位移指令向(0,-8.56,-20)的坐标位置移动。
(1)配置恢复自定义动作
在目标网格对象挂载的指令组件,新增一条动作,具体配置如下:

即当执行条件满足后(boom变量等于false时),目标网格对象,将通过位移指令向(0,-8.56,0)的坐标位置移动。以此实现恢复原位置。
预览状态下,整体效果呈现如下所示:
注:实际应用过程中,一定要提前梳理好各个网格对象的移动位置后再进行整体的指令配置。所有需要发生位移的网格对象都需要进行配置。