正如任何尝试开发复杂动画的人都会知道的那样,当然许多插件开发人员也会知道,Cinema 4D的优先系统是有限的,至少可以说是有限的。该系统确定场景中各种对象执行其角色的顺序。具有相同优先级的对象将按照它们出现在对象管理器中的顺序执行。
除非您的动画中正确播放取决于某些功能先于其他功能执行,否则这无关紧要。在X-Particle中,发射器必须具有优先级,因为它必须在Generator,Sprite等之前执行其功能。这些优先级是在内部设置的,用户不能更改。
在标记中,优先级设置为Expression,值为0(零),而发射器内部设置为Animation +10。这意味着发射器在标记之前完成其执行,因此它发射粒子,然后移动将标签移到新位置。在下一帧中,它将发射另一个粒子爆发,但位置不同。 现在,如果我们将标签优先级更改为“动画”,以便标签在发射器之前开始执行,那么一切都会按预期进行:
在这种情况下,标签开始移动发射器,然后(使用子帧发射)在移动时发射粒子。
如果遇到这样的问题(似乎无法正常工作),请考虑可能的优先级冲突。您可以更改许多Cinema功能的优先级,而您只需要知道将其更改为什么内容即可。下表列出了分配给各种X-Particle对象的优先级:现在您可以看到为什么将“对齐样条线”标记优先级设置为“动画”的原因。实际上,如果将其设置为Animation + 9(因为它小于Emitter的优先级),它将起作用,但在Animation + 10时失败。
希望这将使您解决这些烦人的问题。这不是X-Particle的错,这是Cinema 4D中优先系统的本质。