Maya (MEL) дублирует выбранный объект через определенный интервал времени

У меня есть объект (например, куб), который предназначен для перемещения (перевода) из точки А в точку Б за 20 кадров. В кадре 1 (currentTime 1) объекты находятся в точке A, а в кадре 20 (currentTime 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;

Но теперь я хочу изменить код, чтобы он работал с «любым» объектом, который я выбираю.

Поэтому я внес изменения в код на основе информации, найденной в другом сообщении о том, как применять код к выбранным объектам.

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

Но весь этот код делает дубликаты выбранных объектов в первое упомянутое значение currentTime, которое здесь равно 5. Таким образом, я получаю 3 дубликата основного объекта, все в том же месте, где главный объект находился в момент времени 5, и ничего в момент 10 и 15. Что я сделал не так, если бы я выбрал объект несколько раз, как в предыдущий код?

Я всего лишь 3D-моделлер и не особо разбираюсь в сценариях, поэтому, пожалуйста, помогите мне.


person Kokachi    schedule 07.03.2021    source источник


Ответы (1)


Ваша проблема в том, что вы не указываете дублирующей команде, что именно дублировать. По умолчанию он просто использует выбранные в данный момент объекты, что кажется не тем, что вам нужно. Но вы можете дать ему имя объекта, который хотите продублировать, вот так:

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;
}
person haggi krey    schedule 08.03.2021
comment
Это сработало. Спасибо - person Kokachi; 09.03.2021