这几天把物理模拟框架移植到maya之中了. maya编程有一点比较关键,就是要让自己的程序逻辑适应maya的节点求值机制.在物理模拟中,往往需要进行时间积分,对此我的解决办法是,写一个节点rigSimulator,存放模拟的状态数据(例如: 位置.速度.加速度.过去模拟的结果),再写一个mel命令rigSimulate,让指定的节点进行求值.模拟的主循环是一个mel 脚本,伪代码如下 int $t = 0; for ($t = $begTime; $t < $begTime + $length;…