Akrus Games | Unity
2.95K subscribers
408 photos
89 videos
11 files
351 links
Самые годные лайфхаки по unity c#

Сотрудничество/реклама/помощь @Akrus001
Download Telegram
Unity: Мощные инструменты анимации

Blend Trees (Деревья смешивания)
Что это? Инструмент для плавного перехода между несколькими анимациями на основе параметров (например, скорость или направление).

Зачем?
• Создать бесшовный переход от ходьбы к бегу.
• Реализовать движение в 8 направлениях (как в старых RPG).
• Контролировать анимацию поворота на месте.

Как работает?
1. Создаешь Blend Tree внутри State Machine.
2. Добавляешь в него анимации (например, idle, walk, run).
3. Выбираешь параметр для смешивания (чаще всего Speed типа Float).
4. Настраиваешь threshold (значение параметра, при котором проигрывается конкретная анимация).

Пример:
Animator.SetFloat("Speed", 5.5f); // Плавно включит анимацию бега

Animation Layers и Avatar Masks
Слои анимации позволяют проигрывать несколько анимаций одновременно поверх основной.

Маски аватора определяют, какие части скелета затрагивает слой.

Зачем?
Верхний слой (Upper Body): Анимация стрельбы или жестов, чтобы не прерывать анимацию ног.
Слой лица (Face Layer): Мимика и речь, независимые от тела.
Слой инвентаря: Анимация доставания оружия или использования предмета.

Как настроить?
1. В контроллере анимаций добавляешь новый слой.
2. Назначаешь ему Avatar Mask (например, "UpperBody").
3. Выставляешь Weight (сила влияния слоя) и Blending (аддитивный или поверхностный).

Any State
Что это? Особое состояние, которое есть в любом месте State Machine.

Зачем? Позволяет перейти в определенное состояние (например, "Death" или "HitReaction") из любого другого состояния, если условие выполнено.

Важно!
• Для перехода из Any State используй Trigger-параметр.
• Настрой переходы в нужное состояние и выставь условия.
• Это идеально для прерываемых анимаций, смерть и получение урона.

Пример:
// Прервать любую анимацию и включить смерть
void Die()
{
animator.SetTrigger("Die");
}


Итог:
Blend Trees решают проблему плавного перемещения. Layers и Masks позволяют комбинировать анимации разных частей тела. Any State — это кнопка "прервать всё" для критичных событий.

#Unity #Unity3d #Gamedev #Animation #Indiedev
5🔥211