Render.ru

копирование ключей с одного обьекта на друг

Goryhater

Активный участник
Рейтинг
17
#1
Всем привет.
Делаю скрипт который копирует ключи с анимацией с одного обьекта на другой. Выбрал путь зависимый от времени, то есть на определённом кадре с включеным режимом анимации, значения положения и поворота одного обьекта копируются на другой.
С позицией обьекта всё работает хорошо, а вот с поворотом беда. Скрипт на подобии этого:
Код:
for m=2 to obj2.rotation.controller.keys.count do ( 
			with animate on at time (obj2.rotation.controller.keys[m].time) (
			obj1.rotation = obj2.rotation
			)
	)
копирует ключи с поворотом, но помимо самого поворота на второй обьект добавляются ключи с положением, то есть он и поворачивается и улетает в сторону)

Подозреваю что этот путь решения не самый лучший, есть вариант с CopyPasteKeys (), но с ним пока разобраться не получилось. Вобщем если кто-то вдруг подскажет другой путь решения задачи также буду благодарен :)
 
Рейтинг
229
#2
Код:
for m=2 to obj2.rotation.controller.keys.count do (
with animate on at time (obj2.rotation.controller.keys[m].time) (
rotate obj1 obj2.rotation
)
)
Не понятна задача. Это не копирование а создание новых ключей. Копировать можно как ключи так и сам контроллер.
 

Goryhater

Активный участник
Рейтинг
17
#3
копирование или создание, а задача перегнать анимацию с одного обьекта на другой)) с копированием контроллера получилось, но сделать это копированием ключей думаю всё таки было бы лучше. можно как-то копировать ключи с одного обьекта на другой?
 

igorznag

Мастер
Рейтинг
103
#4
копирует ключи с поворотом, но помимо самого поворота на второй обьект добавляются ключи с положением, то есть он и поворачивается и улетает в сторону)
Код:
for m=2 to obj2.rotation.controller.keys.count do ( 
with animate on at time (obj2.rotation.controller.keys[m].time) ( 
in coordsys (transmatrix obj1.pos) obj1.rotation = obj2.rotation
) 
)
 
Сверху