Относится к Blender v2.31
Другой способ анимировать объекты состоит в том, чтобы
заставить их двигаться вдоль заданного пути.
Когда объект должен двигаться по заданному пути, или характер
перемещения слишком сложен для ключевой анимации (например, движение
планет вогруг Солнца практически невозможно выполнить, используя
ключевые кадры), можно использовать объекты Curve (кривых) для задания
пути движения в трехмерном пространстве.
Если кривая содержит больше одного непрерывного участка, будет
использоваться только первый из них.
Также, как для техники отслеживания (tracking), для анимации вдоль пути существуют два способа - старый (до версии 2.30), описанный ниже, и новый, использующий технику привязок (constraints), описание которого есть в разделе Привязки (Constraints) главы "Анимация персонажей" . При назначении кривой предком для объекта будет предложено выбрать один из вариантов: Normal Parent (обычный предок) и Follow Path (следовать пути). Первый вариант подходит для обычного способа анимации вдоль пути, но требует дополнительных действий позднее. Второй вариант создаёт привязку вида "Follow Path"; в этом случае дополнительных действий не требуется.
Все виды кривых можно использовать как путь, включив опцию CurvePath в окне кнопок редактирования (F9). (См. Рис. 8).
Кривую, имеющую объекты-потомки, можно использовать как путь, выделив её и включив опцию Curve Path на вкладке Curve and Surface в блоке кнопок редактирования. После этого объект-потомок сможет двигаться вдоль данного пути. Кривую пути желательно сделать трехмерной, включив опцию 3D в той же вкладке.
Проще всего получить правильно настроенный путь можно, выбрав в меню ADD пункт Curve->Path. Будет создан NURBS-сплайн пятого порядка, обеспечивающий достаточно гибкое и плавное перемещение объекта.
По умолчанию длина пути - 100 кадров, за которые объект-потомок
проходит его полностью. Эту длину можно менять, используя числовую
кнопку PathLength.
Скорость объекта вдоль пути задаётся соответствующей кривой (Speed) в окне IPO. Для этого
нужно в заголовке окна IPO установить тип интерполяции в Curve, где присутствует только
один канал, Speed
(скорость). Полная длина пути в окне IPO отображается в диапазоне от
0.0 до 1.0 по вертикальной шкале. Кривая IPO определяет зависимость
между временем (в кадрах) и положением объекта на пути. Так можно
создать обратное и пульсирующее движения. Для большинства путей
вертикальные координаты кривой IPO должны точно соответствовать интервалу
0.0-1.0. Этого можно добиться при помощи меню числового ввода (N) в окне IPO. Длительность пути
также задаTтся кривой IPO скорости. Так, если кривая IPO проходит
значения от 0 до 1 за 200 кадров, то длина пути равна 200 кадрам. Если
кривая IPO скорости удаляется, то длину пути определяет значение PathLen. При этом движение
объекта линейно.
Если использовать опцию CurveFollow
во вкладке Curve and Surface,
то объект-потомок будет поворачиваться так, чтобы быть постоянно ориентированым
в направлении пути. Задать характер этого вращения, можно, используя кнопки
трекинга (Рис. 9) во вкладке анимации (F7):
Кнопки TrackX, Y, Z, -X, -Y, -Z
определяют направление осей, т.е. ось, которая будет направлена вдоль
пути.
Кнопки UpX, UpY, UpZ задают, какая из осей направлена "вверх", в положительном направлении локальной оси Z. Если оси Track и Up совпадают, это сочетание игнорируется.
![]() |
Кривые путей имеют ту же проблему, что и у скошеных кривых, о
которой упоминается в определении направления "Вверх" |
Если объект имеет собственное вращение, представить заранее
результат трекинга сложно. Чтобы добиться наглядности, удалим вращение
потомка, используя ALT-R.
Также удалим "инвертирование" предка - ALT-P,
"Clear Parent Inverse". Если объект ещT не имеет собственного вращения,
то сделать его потомком пути удобно, пользуясь SHIFT-CTRL-P. При этом объект
будет помещTн в начало пути и правильно ориентирован.
Трёхмерные пути имеют дополнительный параметр для каждой своей
вершины: "наклон" (tilt). Он может использоваться для задания осевого
вращения. Команда T в режиме
редактирования позволяет задать наклон для выделенных вершин;
объект-потомок при движениии будет повторять этот наклон.
Рис. 10 иллюстрирует сложный пример. Истребитель
должен "нырнуть" в каньон, приблизиться к воде и снова взмыть вверх, камера
будет двигаться рядом с ним, а в воде будет видно его отражение.
Для этого необходимо три пути. Путь 1 является предком объекта,
вдоль него полетит истребитель.
Истребитель имеет потомка - пустой объект "Track" ("след"), помещённый в его
стратегическую точку. Камера является потомком другой кривой (Путь 2), и двигаясь
по ней, отслеживает пустой объект "Track". Кривой IPO скорости истребителю
задана постоянная скорость, камере - нет. Она движется вначале быстрее, потом
медленнее, показывая самолёт с разных сторон (Рис. 11).
Рис. 11. Кадры в разные моменты движения. Камера отслеживает
истребитель и показывает его с разных сторон.
Так, как мы хотим видеть полёт самолёта над рекой, нужно
использовать карту окружающей среды для поверхности воды, чтобы
получить отражение. Но пустой объект для вычисления карты должен быть
расположен напротив камеры, а камера находится в движении!
Путь 3 является отражением пути 2, расположенным "под водой". Он
получен из дупликата пути 2, отражённого в режиме редактирования
командой M, при этом курсор
должен находиться на уровне "воды".
Пустой объект для вычисления карты является потомком этого пути; кривые IPO
скорости путей 2 и 3 совпадают. На Рис. 12 показан просчитанный кадр. Для реактивного
следа были использованы системы частиц.
В этой сцене использовано несколько искусных приёмов, например частицы
для реактивных потоков, туман, сфера неба, окружающая сцену и т.п.