Создатели Anki Vector (теперь принадлежащей Digital Dream Labs) приложили невероятные усилия для создания анимации. Именно анимация вдохнула жизнь в Vector. В этой статье описывается, как дизайнеры кодировали анимацию Vector с помощью Maya. Вектор имеет 981 встроенную анимацию. Полный список анимаций вы можете найти здесь.

Но что, если вы хотите создать свою собственную анимацию. Что-то уникальное и отличное от того, что обычно делает Vector. К счастью, Vector SDK позволяет создавать новые пользовательские анимации с использованием асинхронного режима. Вы можете создавать любые перестановки и комбинации существующих анимаций 981.

Вот небольшой фрагмент о том, как это сделать. Сначала создайте асинхронное соединение с Vector, что позволит вам попросить Vector выполнять множество команд параллельно.

с anki_vector.AsyncRobot() в качестве робота:

Теперь давайте рассмотрим следующий код.

_ANIMATION1 = ‘anim_dancebeat_getout_01’
_ANIMATION2 = ‘anim_fistbump_requestoncelong_01’

animation1_without_lift = robot.anim.play_animation(_ANIMATION1, ignore_lift_track=False)
animation2 = robot.anim.play_animation(_ANIMATION2)
animation1_without_lift.result()
animation2.result()

Здесь мы выбираем две анимации. Первая анимация используется Вектором, когда он счастлив вылезти из своего зарядного устройства. Вторая анимация используется Вектором, когда он просит ударить кулаком. Для первой анимации мы отключили лифт, что означает, что анимация по умолчанию воспроизводится без движения лифта. Это важно, потому что мы знаем, что вторая анимация сильно использует подъемную силу, поэтому мы не хотим, чтобы эти две анимации мешали друг другу. Анимации начинают воспроизводиться, как только два оператора выполняются интерпретатором Python. Команда result() говорит программе подождать, пока обе анимации не будут выполняться параллельно.

Получившаяся анимация - это та, в которой Вектор так счастлив выйти, что просит ударить кулаком.

Если вы хотите попробовать код, он доступен для скачивания на моем github.

А вот видео, показывающее, как две анимации воспроизводятся по отдельности, а потом вместе.

Если вы хотите узнать больше о Vector или изучить ИИ с помощью Vector, я работаю над новым курсом по адресу: https://robotics.thinkific.com.