Задать вопрос
OutsiderGameDev
@OutsiderGameDev
Создаю игры в одиночку:)

Плавный переход анимации атаки от шага до бега?

Как сделать так, чтобы персонаж в 3д игре мог атаковать с места, при ходьбе, беге и прыжке, и это всё не прерывало её? Игра с видом сзади
Проще говоря, нужно, например, чтобы персонаж начал замахиваться копьём и завершил удар уже в движении(при этом двигаться он может в разных направлениях). Хочу сделать как в Risk of Rain 2. Работаю в движке Godot, но подойдёт общее объяснение этой задачи. Помогите пж
  • Вопрос задан
  • 379 просмотров
Подписаться 2 Средний Комментировать
Решения вопроса 1
freeExec
@freeExec
Участник OpenStreetMap
Общее представление такое: существует режим blend (смешивание) - переходный момент от одной анимации к другой; что по сути реализуется перетеканием "веса" (значимости/влияния) от исходного положения к требуемому.

Пример: Анимация А задаёт положение объекта в позиции 2, а Анимация Б положение объекта в позиции 5. Время перехода 0.5с, прошло уже 25% времени перехода (т.е. blending 25%)
Итого, прошло 125 мс, положение объекта 2 + (5-2) * 0.25 = 2.75

В юнити например всё уже есть из коробки, можешь посмотреть пару роликов для понимания.
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
mayton2019
@mayton2019
Bigdata Engineer
Тут - сложно. Физика я имею в виду. Шаг от бега отличается тем что шагающий всегда касается земли.
А бегущий как-бы делает прыжки по воздуху.
Ответ написан
Комментировать
@tang1godo
Разработчик игр на Godot Engine
Если ты на godot 4 то тут изи. Заходишь во свойства AnimationPlayer, далее во вкладке Playback options еслть свойство default blend time и меняйте это значение например на 1 секунду и через это время текущая анимация будет смешиваться со второй анимацией и в итоге получится плавное перехождение анимации
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы