Мне нужно исправить мой скрипт, просто написал функцию grab_animation, функцию save_animation и, наконец, мою restore_animation.нужно исправить мой скрипт - cmds.setKeyframe error
Вот оно.
def restore_animation(path, animation_dictionary=None):
dict_file = open(path, 'rb')
dict_anim_pkld = pickle.load(dict_file)
dict_file.close()
for each_frame in dict_anim_pkld:
cmds.currentTime(each_frame)
for each_obj in dict_anim_pkld[each_frame]:
for each_attr in dict_anim_pkld[each_frame][each_obj]:
cmds.setKeyframe('{0}.{1}'.format(each_obj,each_attr))
cmds.setAttr ('{0}.{1}'.format(each_obj,each_attr), dict_anim_pkld[each_frame][each_obj][each_attr]['value'])
Проблема заключается в том, функция отлично работает, но только восстановить значения анимации, но она не устанавливает ключи для каждого ключевого кадра. Я знаю, что команда, которую я должен реализовать, это cmds.setKeyframe
, но после многих тестов она пока не работает. Кто может мне помочь?
ммм на самом деле, как я его написал, он отлично работает, но он устанавливает только значения. Я хочу, чтобы для каждого ключевого кадра он устанавливалKeyframe с соответствующим значением – user2375723
Возможно, обращение к клавишам и набор команд могут оказаться полезными. Я просто попытался воссоздать его, и возникла проблема, о которой вы говорили, затем я перевернул их, и все получилось. Я просто проверил его на кубе. Ваш код выглядит довольно прочным, кроме этого, поэтому, если это не работает, это может быть просто проблема ввода данных из вашего файла. –