Задача: Анимировать нашего персонажа с помощью временной шкалы.

Я собираюсь объяснить, как анимировать персонажей с помощью временной шкалы.

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

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

Первое, что мы хотим сделать с нашим ригом, это убедиться, что он установлен на Humanoid, Unity сможет использовать механизмы, чтобы убедиться, что он правильно анимирован. Продолжайте и сделайте все свои риги Humanoid. Если для типа анимации задано значение Общий, персонаж большую часть времени будет сложен в позе эмбриона, что не идеально для этого.

Затем перетащите YBot под игровой объект director как дочерний элемент.

Затем перетащите Ybot в редактор временной шкалы и создайте дорожку анимации.

Теперь мы выберем настоящую анимацию, продублируем ее и переименуем в ту позицию, в которой она находится (т. е. бездействие, удар кулаком и т. д.). Вы заметите символ, отображаемый справа, так вы узнаете, что сделали это правильно.

Сделайте это для всех анимаций.

Теперь мы можем перетащить нашу анимацию на созданную нами дорожку анимации.

Помните, что мы можем сгладить переходы, смешивая их друг с другом, чтобы они не обрезались между переходами.

Для нашей холостойанимации, поскольку мы хотим использовать зацикливание, убедитесь, что пост-экстраполяция и параметр Зацикливание установлены на внизу установлено значение «Вкл.».

Теперь одна из вещей, которую вы можете заметить, это то, что наша анимация назад — это просто анимация, и он на самом деле не движется назад.

Это сделано намеренно создателем конкретного аниматора. Иногда мы можем выбрать, чтобы он действительно двигался назад при выборе анимации, например, на сайте mixamo.com.

В этом случае мы хотим отменить выбор «На месте», чтобы он действительно двигался, и можно было использовать IK. (Читайте дальше, чтобы узнать, как использовать анимацию на месте и при этом заставить ее двигаться)

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

Чтобы исправить это, нам нужно сопоставить смещения с предыдущим клипом.

Теперь он будет соответствовать положению предыдущей анимации и двигаться назад от этого положения.

Мы можем делать это снова и снова.

Давайте добавим еще один поворот направо, я сделаю его петлей, как мы делали ранее, а затем добавлю туда еще один шаг назад.

Вот оно! Довольно просто, если у вас есть понимание некоторых основ. Далее я опишу, как использовать анимацию замены символов.

Анимация переопределения персонажа

Я объясню, как воспроизвести анимацию, одновременно фиксируя другую анимацию. Например, если у нас есть ходячий игрок, но мы хотим использовать другую анимацию, сохраняя при этом определенные аспекты, нам нужно использовать переопределение.

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

Во-первых, нам нужно создать переопределение отслеживания.

Затем я хочу перетащить анимацию удара кулаком на дорожку переопределения.

Вы увидите, что когда мы воспроизведем анимацию, она еще не будет бесшовной.

И мы не можем просто сопоставить смещение с предыдущим, как делали раньше. Итак, мы должны сопоставить это вручную. Мы можем сделать это, используя смещение преобразования. (Я рассмотрю возможную альтернативу позже в этой статье)

Итак, мы найдем, где наша анимация ходьбы трансформируется, и мы перетащим нашу анимацию как можно ближе и повернем нашего игрока, чтобы соответствовать этому.

Затем, чтобы сделать его более плавным, мы можем добавить упрощение/замедление в нашей анимации удара кулаком.

Теперь это выглядит лучше.

Теперь, если, например, мы хотим, чтобы игрок нанес удар, а затем продолжил идти, мы можем создать маску аватара, которую можно применить к каналу переопределения. Назовите его PunchingMask.

Вы заметите, что если мы выберем Маску аватара, у нас будет два варианта: Гуманоид и Трансформировать. Если мы выберем Humanoid, вы увидите отображаемую фигуру.

Нам просто нужно отменить выбор этапов, позиции и IK, чтобы наши сегменты продолжали работать как верхняя часть тела будет выполнять анимацию удара кулаком.

Теперь нам нужно перетащить эту маску аватара на нашу дорожку переопределения. Просто выберите дорожку переопределения и перетащите маску аватара в поле.

Теоретически нам не нужно вручную позиционировать преобразование, поскольку маска аватара не использует положение основной анимации.

Вы можете себе представить возможности с маской аватара!

Теперь я хочу кратко упомянуть, как мы можем использовать анимацию ходьбы назад на месте, чтобы она все еще двигалась. Нам придется сделать это вручную.

Мы не сможем просто нажать кнопку записи на текущей анимации, так как в ней задействована анимация.

Итак, мы перетащим наш Ybot на временную шкалу и создадим дорожку анимации. Затем мы можем создать ключ в начале, а затем переместить ybot в конец и остановить запись.

И если мы хотим настроить легкость на выходе, мы можем настроить кривые.