Unity 6.3
0 онлайн 3 гостей 3 в системе
Вход

Вращение в анимации

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

См. Вращение и ориентация в Unity для дополнительной информации о вращающихся представлениях.

Интерполяция вращения

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

Различные методы интерполяции выглядят по-разному в движении, но имеют одинаковые результаты. Unity предлагает три типа интерполяции для ваших анимаций:

Окно Animation с меню интерполяции, расширенным для отображения параметров интерполяции вращения.
Окно Animation с меню интерполяции, расширенным для отображения параметров интерполяции вращения.

Эйлеровская интерполяция углов

Эйлеровы углы интерполяция применяет полный диапазон движения к GameObject, указанный введенными углами; если вращение больше 360 градусов, GameObject вращается полностью, прежде чем остановить в правильной ориентации.

Эйлеровы углы (кватернион) интерполяция использует вышеуказанный метод интерполяции, но перерабатывает информацию в кватернионную кривую. Этот метод использует больше памяти, но приводит к немного более быстрому времени выполнения.

Интерполяция кватернионов

Кватернион интерполяция вращает GameObject Например, независимо от того, составляет ли значение вращения 5 градусов или 365 градусов, вращающаяся точка будет двигаться по кратчайшему расстоянию до определенной ориентации. GameObject поворачивается на 5 градусов.

Внешние источники анимации

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

Например, если у вас есть два ключевых кадра, которые расположены на расстоянии шести кадров друг от друга со значением x от 0 до 270 градусов, GameObject вращается на 90 градусов в противоположном направлении, потому что это самый короткий путь для получения того же результата. Вместо этого Unity ресемплирует и добавляет ключевой кадр на каждый кадр, так что вращение составляет только 45 градусов между ключевыми кадрами, и вращение правильное.

Решение проблем вращения с внешними источниками анимации

Если кватернионное пересортирование импортированной анимации не соответствует оригиналу достаточно близко для ваших нужд, вы можете отключить пересортирование анимации и использовать оригинальные ключевые кадры Эйлеровой анимации во время выполнения. Для получения дополнительной информации, см. Пересортирование Эйлеровой кривой.

Дополнительные ресурсы