Первые шаги в Maya. Урок 13. Камеры в сцене
Примеры настройки камеры в статичных сценах
Выбор удачной точки обзора сцены с учетом глубины резкости
Перемещение по прямолинейной траектории
Слежение за движущимся объектом
Облет по криволинейной траектории
Слежение за движущимся объектом
Предположим, что по некоторой достаточно длинной криволинейной трассе движется шарик, перемещение которого должно фиксироваться камерой крупным планом, а значит в конкретный момент времени наблюдать можно только за отдельным участком трассы. Задача в том, чтобы камера отображала в каждый момент времени лишь тот участок пути, где находится шарик. Создайте плоскость, трассу в виде произвольного криволинейного сплайна, шарик и при желании вокруг трассы разместите произвольные статичные объекты — мы остановились на шахматных фигурах, расставленных на шахматной доске. Шарик должен двигаться по кривой между фигурами (рис. 52). Обратите внимание, что кривая при визуализации видима — точнее видима не сама кривая, а созданный на ее основе Extrude-объект. Для его получения кривая должна начинаться в начале координат, а две ее первые вершины лежать на оси X (рис. 53). Чтобы создать требуемую Extrude-поверхность, требуется вначале выделить сплайн-окружность (его предварительно нужно создать), затем при нажатой клавише Shift кривую-путь и применить команду Surfaces=>Extrude (Поверхности=>Выдавить).
Рис. 52. Исходная сцена
Рис. 53. Исходный сплайн-путь для Extrude-поверхности
Теперь создадим для шара анимацию вдоль пути. Увеличьте общее число кадров анимации до 400, выделите шар, затем при нажатой клавише Shift в окне Outliner выделите кривую-путь, послужившую основой для операции Extrude, и примените к ним команду Animate=>MotionPaths=>AttachtoMotionPath (Анимация=>Траектории движения=>Привязать к траектории движения). В итоге на траектории появятся анимационные маркеры (рис. 54), а шар при проигрывании анимации будет двигаться по криволинейному Extrude-объекту.
Рис. 54. Появление анимационных маркеров
Создайте нацеленную камеру ( Camera and Aim), масштабируйте ее, разверните на –90° относительно оси Y и немного переместите (рис. 55). Замените окно проекции перспективы на окно проекции камеры и настройте ее положение и ориентацию так, чтобы в первом кадре она была направлена на шар (рис. 56). Обратите внимание, что в проекции камеры видна далеко не вся сцена (как и задумано), поэтому при запуске анимации вы увидите, что при прохождении начальной части пути шарик скроется из глаз и его движения видно не будет. Попробуем настроить слежение камеры за сценой. Включите режим автоматического создания ключей, переместите ползунок временной шкалы на первый кадр, выделите камеру и в окне каналов создайте ключи для параметров Translate X, Translate Y, Translate Z, выделив их и воспользовавшись командой Key Selected, вызванной из контекстного меню (рис. 57). Выделите мишень и также создайте для нее ключи в отношении тех же самых параметров (рис. 58). Перетащите ползунок на тот кадр, в котором траектория делает свой первый изгиб (в данном случае условно будем считать подобные кадры базовыми), и отрегулируйте положение камеры (перемещать камеру следует вместе с мишенью). Перейдите в кадр, соответствующий следующему изгибу траектории, и вновь подкорректируйте положение камеры — и так до самого последнего кадра (рис. 59). Выйдите из режима создания ключей анимации и проиграйте ролик — шарик движется точно так же, но теперь он всегда виден в проекции камеры. Стоит отметить, что такого же эффекта можно было добиться быстрее, сделав мишень потомком шарика, и тогда направление камеры на его центр в процессе движения стало бы сохраняться автоматически (то есть без искусственного создания ключей для параметров Translate X, Translate Y, Translate Z).
Рис. 55. Появление камеры
Рис. 56. Корректировка положения и ориентации камеры
Рис. 57. Создание ключей для камеры (1-й кадр)
Рис. 58. Создание ключей для мишени (1-й кадр)
Рис. 59. Создание ключей для прочих базовых кадров
Облет по криволинейной траектории
Рассмотрим вариант облета сцены с постепенным приближением камеры к интересующему нас объекту. Однако в отличие от вышерассмотренных примеров закон ее движения будем задавать не путем непосредственного перемещения камеры по сцене, а с помощью некой пространственной кривой, по которой камера и будет передвигаться к объекту, что гораздо удобнее в плане контроля за кривизной пути.
Смоделируйте произвольную сцену из нескольких объектов, например такую, что показана на рис. 60. Затем сформируйте траекторию перемещения камеры в виде обычного сплайна (рис. 61). Создайте нацеленную камеру ( Camera and Aim), масштабируйте ее, направьте вниз, развернув на –90° относительно оси X (рис. 62). Загрузите окно проекции камеры, установите для камеры фокальное расстояние равным 28 и настройте положение и ориентацию так, чтобы из камеры сверху было прекрасно видно всю сцену (рис. 63 и 64).
Рис. 60. Исходная сцена
Рис. 61. Появление траектории
Рис. 62. Появление камеры
Рис. 63. Вид окон проекций после настройки положения и ориентации камеры
Рис. 64. Вид сцены после настройки положения и ориентации камеры
В соответствии с замыслом камера будет перемещаться по сложной траектории, но независимо от положения она всегда должна быть направлена на интересующий вас объект — в данном случае текст. Для этого требуется, чтобы камера вместе с мишенью постепенно смещалась вниз, а ее мишень при этом — двигалась по созданной криволинейной траектории (которая в силу своего расположения смотрит на текст, так что привязывать мишень к тексту необязательно). Очевидно, что движение камеры по столь сложной траектории должно быть очень медленным, поэтому увеличьте общее число кадров анимации примерно до 500. Выделите мишень, а затем при нажатой клавише Shift — кривую-путь и воспользуйтесь командой Animate=>MotionPaths=>AttachtoMotionPath (Анимация=>Траектории движения=>Привязать к траектории движения). Убедитесь в том, что ползунок временной шкалы стоит на первом кадре и включите режим автоматического создания ключей. В окне Outliner выделите камеру вместе с мишенью и переместите ее так, чтобы мишень оказалась в верхней точке кривой-траектории, а потом в окне каналов создайте ключи для параметров Translate X, Translate Y и Translate Z, выделив их и воспользовавшись командой Key Selected (рис. 65). Перетащите ползунок на последний кадр, переместите камеру с мишенью на последнюю точку кривой (рис. 66) и отключите режим создания анимации с автоматической генерацией ключей. Проиграйте анимацию, и вы увидите, что камера перемещается по заданной траектории, постепенно приближаясь к тексту, и при этом остается направленной на него в любом кадре (рис. 67).
Рис. 65. Создание ключей для первого кадра
Рис. 66. Создание ключей для последнего кадра
Рис. 67. Вид сцены в нескольких кадрах анимации