Select Maya(MEL)以特定时间间隔复制选定对象

Select Maya(MEL)以特定时间间隔复制选定对象,select,duplicates,maya,mel,current-time,Select,Duplicates,Maya,Mel,Current Time,我有一个对象(例如立方体),它被设置关键帧以在20帧内从点A移动(平移)到点B。在第1帧(当前时间1),对象位于点A,在第20帧(当前时间20),对象移动到点B 我想要实现的是在特定的时间间隔复制主对象,比如说5、10和15 我为我的对象(名为“Konga”)编写了一个简单的代码,如下所示 select -r Konga ; currentTime 1 ; duplicate -rr; select -r Konga ; currentTime 5 ; duplicate -rr; select

我有一个对象(例如立方体),它被设置关键帧以在20帧内从点A移动(平移)到点B。在第1帧(当前时间1),对象位于点A,在第20帧(当前时间20),对象移动到点B

我想要实现的是在特定的时间间隔复制主对象,比如说5、10和15

我为我的对象(名为“Konga”)编写了一个简单的代码,如下所示

select -r Konga ;
currentTime 1 ;
duplicate -rr;
select -r Konga ;
currentTime 5 ;
duplicate -rr;
select -r Konga ;
currentTime 10 ;
duplicate -rr;
select -r Konga ;
currentTime 15 ;
duplicate -rr;
但现在我希望它修改代码,使其与我选择的“任意”对象一起工作

因此,我根据在另一篇文章中找到的关于如何将代码应用于选定对象的信息对代码进行了修改

但这段代码所做的只是在第一次提到的时候复制选定的对象 这里正好是5。因此,我得到了3个主对象的副本,都在时间5时主对象所在的位置,而在时间10和15时没有。我在这里做错了什么,我应该像前面的代码那样多次选择对象吗


我只是一个3d建模师,不太喜欢编写脚本,所以请帮我解决。

您的问题是没有准确地告诉复制命令要复制什么。默认情况下,它只使用当前选定的对象,而不是您想要的对象。但您可以给它指定要复制的对象的名称,如下所示:

string $sel[] = `ls -sl`;
string $obj;
for ($obj in $sel)
{
  currentTime 5 ;
  duplicate -rr $obj;
  currentTime 10 ;
  duplicate -rr $obj;
  currentTime 15 ;
  duplicate -rr $obj;
}

成功了。非常感谢。
string $sel[] = `ls -sl`;
string $obj;
for ($obj in $sel)
{
  currentTime 5 ;
  duplicate -rr $obj;
  currentTime 10 ;
  duplicate -rr $obj;
  currentTime 15 ;
  duplicate -rr $obj;
}