Анимация в Cinema4D

В знаменитой тетралогии Теренса Уайта есть интересное описание. Рыцарские доспехи автор сравнивает с костюмом водолаза, одевать который можно только с посторонней помощью, а для того чтобы передвигаться, нужен специальный выработанный навык, не говоря уже о силе…

Прошлый, достаточно давнишний материал по Cinema4D был завершен анонсом перехода к практике создания низкополигональных (или так называемых lo- poly) моделей. Тема популярна и востребована, потому как именно на lo-poly на нашем рынке чаще всего и есть спрос. Но именно в данном случае я не сторонник простого изложения с демонстрацией основных приемов. Почему? Вы можете прочесть руководство по ношению доспехов, но для того чтобы надеть, ходить и сражаться в них этого будет абсолютно недостаточно. Становясь специалистами, вы должны сами почувствовать необходимость в оптимизации, а также соблюдения баланса между качеством и производительностью. Это, прежде всего, вырабатываемый навык. Другими словами, нужна практика.

Могу привести пример. В одной из прошлых частей материала по Cinema4D я рассказывал о моделировании на примере создания дома в римском стиле с множеством колонн. Мы тогда использовали среднюю полигональность. Один игровой 3D-художник, не сказать чтобы очень опытный, решил создать подобным образом город в римском стиле. Конечно, объектов множество; он использовал низкую полигональность, и чтобы скрыть ее огрехи, сделал специальное текстурирование. Сами графические файлы текстур оказались далеко не легковесными (например, текстуру каменной стены он взял из файла 4000х2500 с 300 dpi и так далее). В результате визуализация (рендеринг) у него стала практически невыполнимой задачей из-за сложности расчетов, хотя… с точки зрения полигональности он немного сэкономил:). Подобных примеров можно привести массу. Вот совсем недавно я посмотрел, как работает мой знакомый: вместо того чтобы правильно настроить сочетание нескольких источников света, он использует около двадцати. С одной стороны появляется тень, он ее «глушит» другим источником и так далее:).

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

Анимация…

Анимация — это движение. Все, что происходит на экране, должно быть динамичным, и это касается не только самих объектов, но и камер, и освещения. Также… все должно быть объемным. Почему об этом мы вспоминаем, говоря об анимации? Есть тонкость. Мы уже говорили о том, что для создания объемного восприятия совершено не обязательно надевать на пользователя 3D-шлем или специальные очки. Бинокулярный эффект — это вершина айсберга. На самом деле наше восприятие объема появляется в силу сравнения нескольких проекций просмотра. Пусть даже они не сильно отличаются друг от друга и даны последовательно. Но человек отследит изменение пропорций, теней, градиентов. Поэтому статичной сценой, в которой, например, камера стоит на одном месте, вы заставите зрителя скучать. Теперь перейдем к техническим деталям.

При создании анимации на сегодня, независимо от того, имеете вы дело с 2D или 3D, во всех пакетах используется два метода:
. Покадровый.
. Автоматизированный, с использованием ключевых кадров.

Покадровый — это старый вариант, хотя часто используется и сейчас в обеих областях (2D/3D). В его рамках вы прописываете изменения для каждого отдельного кадра, поступательно двигаясь от одного к другому. Например, иногда в профессиональной 2D-анимации без этого не обойтись, в 3D это встречается часто, когда вы накладываете 3D-спецэффекты на видеоряд.

Автоматизированный вариант практически всегда предусматривает одно и то же: есть некие опорные точки (ключевые кадры), в которых вы указываете, например, откуда и куда объект должен переместиться (или из какой формы какая должна получиться). Все промежуточные кадры рассчитываются автоматически. Вариантов автоматизации может быть много, и у каждого пакета предусмотрены свои разновидности. В Cinema4D эти вопросы решены на высоком профессиональном уровне. Причем не стоит забывать, что мы имеем интерфейс-трансформер, который переключается между различными режимами работы, например, моделирование происходит при одном сочетании рабочих модульных окон, анимация — при другом. И, кстати, в этом есть большой выигрыш. Например, многие знают, что LightWave3D состоит из двух модулей-программ, 3dsMax достаточно громоздок, потому как все делается практически в одном и том же интерфейсе. То есть каждая программа решает эти вопросы по-своему.

Автоматизация анимации в Cinema4D

Приступим к практике. Итак, практически в любом из режимов работы интерфейса вы увидите движок прокрутки кадров с транспортной панелью (воспроизведение, останов, промотка вперед/назад, в начало, в конец). По умолчанию число кадров равно 90, что можно изменить в настройках проекта (меню Edit -> Project Settings). И, кстати, обратите внимание на обозначения, а именно, кадры указываются цифрой (порядковым номером) и буквой F (сокращение от «frame» — «кадр»). Вы потом встретите использование F в рамках обозначения «F-curves».

Возле транспортной панели вы можете увидеть набор функциональных кнопок. Все это можно найти в главном меню, разделе Animation.
Этот блок мы будем называть «транспортной панелью анимации».

От простого к сложному

Открываем новый проект. Автоматически мы находимся в режиме интерфейса Standart, и выходить на особый Animation не будем, потому как знакомимся пока только с основной транспортной панелью анимации (переключение режимов интерфейса производится в выпадающем меню верхней кнопки боковой панели инструментов (слева)).

Помещаем в рабочую область какой-либо простейший объект, например куб. Включаем инструмент перемещения, в результате чего появятся стрелки по осям. Находясь в нулевом кадре, нажимаем в транспортной панели анимации кнопку Record (красный кружочек). Так мы фиксируем начальное положение куба. После этого переводим движок на другой кадр, например, 25-й, переносим наш куб куда-либо в пространстве, опять нажимаем Record. Потом переходим к 45-му кадру, смещаем объект, нажимаем Record. Здесь вы уже можете заметить, что в результате наших действий появляется линия траектории перемещений (в начале движения она окрашена в желтый, к концу — в красный). Причем вершины являются сглаженными (автоматически создается кривая Безье).

Воспроизводим, останавливаем, прокручиваем и т.п., в общем наслаждаемся. После этого внимательно присматриваемся к траектории. Выделяем какую- либо ее ключевую точку, нажимаем правую кнопку мыши, появляется выпадающее меню. В его рамках есть несколько ключевых пунктов, например, Make Editable, то есть сделать объект редактируемым (обратите внимание на то, что не точку, а объект, положение точки можно просто менять указателем мыши), а также переход к окнам F-curves (Show F-curves) и Timeline (Show Tracks). В них вы можете увидеть, как в процессе времени изменяются основные параметры нашего куба — координаты, угол поворота и размеры.

Изначально может показаться, что Timeline в этом плане менее информативна, поскольку показывает только наличие ключевых кадров, но это не так, каждую строку можно раскрывать и вы получите те же F-кривые.

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

Правда, есть некоторые пункты, который требуют объяснения на конкретном примере.

Крутятся… кубы

Создаем новый проект. Помещаем фигуру-примитив — куб. Задача: нам нужно заставить его двигаться по окружности. А по существу, этот небольшой урок нужен для того, чтобы вы, нарисовав в пространстве любую кривую, могли использовать ее в качестве траектории.

Итак, в закладке объектов-примитивов Spline выбираем окружность Circle. Пока это не кривая, а объект. В данном случае в его свойствах мы меняем плоскость расположения (Plane) на XZ, также Intermediate Points указываем как Uniform, в результате чего нам становится доступным указание количества точек, устанавливаем это значение, например, равное восьми. Все, теперь делаем наш Circle редактируемым (в контекстном меню Make Editable или просто нажимаем С). После этой операции Circle воспринимается уже как полноценный сплайн.

Переводим интерфейс в режим Animation, в результате чего снизу появляется окно Timeline.

Выделяем там надпись Cube, она станет красной. Теперь в меню Timeline выбираем пункт Object и подпункт Spline To Position Track. Появится окно, в котором спрашивается, по какой кривой будет двигаться объект. Набираем Circle. Нажимаем ОК. Трек Timeline удивительным образом преобразился. Запускаем на воспроизведение анимацию, и — о, чудо, куб начал двигаться по траектории нашей окружности.

Летающая камера

Давайте теперь на базе уже полученных знаний сделаем так, чтобы камера облетала вокруг нашего куба, и при этом он всегда был в центре внимания. Сделать это не так сложно, только нужно понять, что камера подразумевает определенную перспективу просмотра. До этого вы пользовались основными видами проекций — по осям и изометрией. Пункт два: в Cinema4D есть два вида камер, одну можно назвать «общей» (указывается как просто Camera), вторая - нацеленная (Target Camera). В последнем варианте нам нужно указывать объект, который будет в центре внимания.

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

Теперь в меню Objects выбираем Target Camera, в результате чего в списке объектов добавится два пункта: Camera и Camera Target. Последний с помощью курсора мыши мы помещаем внутрь Cube в том же списке объектов.

В конце проекций, через которое мы все смотрим, есть пункт Cameras. Там мы выбираем Scene Cameras -> Camera.

А после, уже в Timeline, как и в предыдущем примере, помещаем нашу траекторию в объект… Camera. Все! Дело сделано! Запускаем анимацию. Можем сделать просмотр на более качественном уровне (Make Preview).

В завершение темы

То, что было показано и рассказано сегодня — это всего лишь отправная точка в мир 3D-анимации. С Cinema4D ее делать достаточно легко… так может показаться. Но потом вы столкнетесь с тем, что эта работа сравнима с кинопроизводством: нужно знать правила дизайна кадра (расстановки форм), цвета, расстановки освещения — по существу, программирование движения. Это не просто, а иногда и архисложно, именно поэтому среди 3D-шников в большинстве случаев можно встретить трудоголиков. Специалистами не рождаются, ими становятся.

Рекомендации по композиции

Композиция кадра — достаточно тонкая вещь, которая требует определенных профессиональных навыков. Если говорить о статическом изображении, то вступают такие известные правила, как использование положительного/отрицательного пространств. То есть за динамику кадра отвечают не яркость и контраст, как подумают многие. Конечно, это важно, но не так сильно, причем контраст зачастую делается за счет специального освещения. В случае положительного пространства мы говорим о скоплении объектов, отрицательного — их отсутствии. Отрицательное пространство психологически воспринимается дальше, положительное — ближе. Если мы говорим о сложной сцене с множеством деталей, для того, чтобы вдохнуть в нее объем, необходимо найти место для отрицательного пространства, иначе все будет восприниматься как нечто зашумленное. Делается это особыми приемами, например, специальное выделение главных объектов за счет насыщенности цвета, также можно предусмотреть размытие менее значимых областей, то есть управление глубиной резкости (depth of field, что, в принципе, сейчас не очень модно, но используется).

Что касается цветов, то достаточно вспомнить цветовой круг, в котором есть:
. Основные: red — красный, blue — синий, green — зеленый.
. Производные: yellow — желтый, violet — фиолетовый, orange — оранжевый.

Причем от зеленого до фиолетового располагаются так называемые холодные цвета, а от красного до желтого — теплые. На этом можно строить баланс в цветовой схеме. Также стоит отметить дополнительные цвета, которые в цветовом колесе расположены друг напротив друга. Их сочетание воспринимается не совсем гармонично, но при этом оно позволяет достаточно резко выделить один объект на фоне другого. Это нужно знать, это правила цветового дизайна.

Еще один вопрос касается динамики восприятия, который выражен в расстановке объектов внутри кадра. Если вы поместите объект в центре, то композиция будет выглядеть статично. Поэтому довольно часто используют правила разбиения. То есть условно делят кадр на три области по горизонтали или три области по вертикали. Самая нижняя горизонталь будет уменьшать объект, в то время как самая верхняя — увеличивать. Речь идет о нашем восприятии. Поэтому сама расстановка и виды с камер должны регулироваться отдельно. Кстати, часто кадр просто условно делят на девять областей, то есть разбивают и по вертикали и по горизонтали.

Как, спросите, это отражается в рамках анимации? Ведь мы не фотографии делаем. На самом деле, правила практически те же. В нашем примере со съемкой куба, где камера кружится вокруг него, выгоднее сместить центр изображения, а также немного изменить траекторию движения самой камеры. Вообще, в этих случаях очень полезно смотреть профессионально сделанное дорогое кино. Например, я заметил, посмотрев «Звездные войны. Эпизод I» (по-моему, первый эпизод, то есть который снимался последним:)), удивительную операторскую работу. Там вообще нет статичных кадров, и все основывается на правилах разделения. То есть вы не увидите лицо в центре экрана крупным планом.

Сама камера дает прекрасную динамику, если она движется. В качестве примера одной из лучших операторских работ с движением камер я всегда привожу сериал Scrubs (у нас он известен как «Клиника»). Я помню, когда только учился динамике с помощью движения камер, смотрел этот сериал просто как руководство к действию. Потом повторял все это на 3D-анимациях, результаты выглядели просто превосходными. Такого ни в одной книге не найдешь. Я, собственно, и сейчас смотрю этот сериал как великолепно сделанную техническую работу. Рекомендую обратить внимание.

Что касается чисто 3D-анимаций, то тут бесспорные лидеры в технологическом плане «Беовульф» и «Ледниковый период-3».

И последнее важное, о чем нужно сказать — угол обзора и перспектива. Повернув камеру на определенный угол к объекту (но это не путайте с углом обзора), изменив его (объекта) относительную высоту, вы можете регулировать так называемый параметр «массивности». Например, сфотографировав объект снизу, вы получите впечатление чего-то крупного и мощного. Но не стоит забывать и о перспективе. Довольно часто можно встретить именно в 3D-моделировании вариант, когда не совсем понятно: перед вами что-то маленькое или большое. Это появляется в силу того, что нет других объектов для сравнения. Если они есть — хорошо. Но можно воспользоваться и перспективой, то есть использованием специального угла обзора с камеры. В современных вариантах, если вы, конечно, не работаете в Голливуде, вам придется столкнуться с продукцией, рассчитанной на широкоугольный объектив, то есть обычный телестандарт с геометрией экрана 4:3. Он дает мало возможностей в плане увеличения угла обзора, поэтому нередко все объекты в кадре смотрятся весьма плоско, это нужно учитывать.

Рекомендации по свету

Практически в любом учебнике по 3D-моделированию написано, что если вы хотите подчеркнуть объем модели, то подсветите ее сзади. Это и так, и не так одновременно. Я всегда рекомендую скачивать готовые работы профессиональных 3D-моделлеров и посмотреть на то, как там расставлено освещение. В большинстве случаев используется вариант, применяемый также в кино и фотографическом искусстве. Есть три ключевых типа искусственных источников света.

. Ключевой свет (key light). Основной, располагается справа или слева от камеры. Почему он направлен не прямо от нее? Дело в том, что небольшое смещение дает тени, а они нам нужны для контраста и, как следствие, передачи объема.
. Заполняющий свет (fill light). Свет, расположенный перед объектом.
. Контровой свет (back light). Источник света, расположенный сзади для освещения задней части объекта и фоновых декораций. Иногда его используют для создания световой ауры вокруг объекта, причем здесь можно менять сам цвет источника. Результаты получаются интересными. Хотя существует и не менее важный — естественный свет, который в 3D-моделировании делается отдельно.

В Cinema4D изначально по умолчанию используется точечный источник белого света, не отбрасывающий теней. Как только вы установили какой-нибудь свой, он отключается. Далее все по вашему усмотрению. Правильно расставить освещение — это профессиональное искусство, но не пугайтесь. Подумайте о том, что главная задача — это подчеркивание объекта. Все должно быть четко и более-менее естественно.

Также на базе примера с летающей камерой поэкспериментируйте, вернее, создайте летающий источник света (элемент Light with Target). А в принципе, я понимаю, что времени всегда не хватает, но уделите его немного для освоения технологий освещения. Потом это сто раз себя оправдает.

Кристофер christopher@tut.by


Компьютерная газета. Статья была опубликована в номере 37 за 2009 год в рубрике soft

©1997-2024 Компьютерная газета