Спецэффекты в Cinema 4D

Не так давно мне представилась возможность принять участие в крупном европейском конкурсе, посвященном созданию заставок для телепродукции. Результаты пока неизвестны, но стоит отметить очень высокий уровень участников, подавляющее большинство которых — специалисты по Maxon Cinema4D (в отличие от привычного нам доминирования 3ds MAX). И работ достойных очень много с различными, даже иногда невероятными вариантами техник. Так что даже проиграть совсем не стыдно. Причем все активно делились между собой информацией, что гораздо ценнее...

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

Также стоит отметить, что ранее мы рассматривали стандартные, вернее, традиционные варианты моделирования и анимации. Для их описания нам вполне хватало версии 9.6, на которой строились предыдущие описания. В то же время есть и другая, чуть более сложная ветка, которую можно назвать алгоритмическим моделированием/анимацией. Именно ее разработчики из Maxon начали активно развивать начиная с 10-й версии.

При этом, да, для «девятки» выпускались дополнительные модули-плагины, расширяющие возможности пакета, но после стало очевидным, что без активного внедрения оных в основной комплект Cinema 4D потеряет в конкурентоспособности. Классический пример — с инструментом morph. Если объяснять его действие простыми словами, то в его рамках можно сохранить различные состояния объекта, а потом с помощью специального механизма управления (тег driver) просто производить переключения между этими состояниями. Причем само изменение будет производиться плавно. Инструмент morph очень активно используется в анимации, например, для движения губ говорящего персонажа, впрочем, чего угодно, в том числе ходьбы и так далее. Мы подробно рассмотрим этот инструмент после.

Практический пример

Одновременно с конкурсом, в котором принял участие автор этой статьи, проводился и еще один очень интересный, на render.ru. Анимационный со спецэффектами. Назывался «Ох и погодка...». Участникам выдавалась готовая модель маяка на скале в формате obj, а задачей было создание бурлящего океана с огромными волнами. Допускались разрушения, добавление любых объектов и так далее. В общем, времени на два конкурса у меня бы все равно не хватило, но могу описать, как бы я делал огромную падающую волну именно в Cinema4D.

В конкурсе не участвовал, потому как само проектирование и расчеты всех аспектов сцены заняло бы очень много времени, как моего, так и машинного.

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

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

Это быстро собранный набросок модели шторма без частиц брызг. Причем нужно дополнительно расставить свет, запрограммировать движение камер и так далее. Иллюстрация подготовлена специально для того, чтобы немного урезонить скептические отзывы о Cinema 4D, как о пакете второго звена. На самом деле, великолепный современный инструмент высочайшего класса

Таким образом, основная волна сформирована. Затем делается ключевая анимация, после которой поверхность, образованная Loft, переводится в полигональное представление с большим количеством точек. Стоит напомнить, что данные от движения при таком переходе сохранятся. Причем мы этот новый поверхностный объект сразу же делаем полотном (то есть устанавливаем тег Cloth, см. материал об анимации водной поверхности). Затем для создания дополнительных волн на нем используются модификаторы для работы с частицами — Turbulence, генераторы ветра Wind, водовороты — Attractor. В общем, навернуть можно все, что угодно.

Отдельная часть — брызги. Хотя во многих работах, присланных на конкурс, я увидел использование очень стандартных методов с генераторами частиц, в рамках Cinema 4D для их эмуляции лучше использовать модуль Xpresso, добавив нод из раздела Thinking Particles.

Затем текстурирование, расстановка света, причем свет должен быть и от маяка, движение камеры, а возможно, и нескольких. Как вы понимаете, это огромный кусок работы.

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

Сегодня же вас ждет довольно простой урок по созданию красивого анимационного перехода между несколькими надписями.

Перед тем как приступить...

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

Данный урок будет показан поэтапно шаг за шагом, и в этом есть необходимость — новичкам лучше заучить последовательность действий. После чего придет осознание.

Анимационный переход между надписями

По существу, такой вариант перехода можно делать между любыми объектами, переведенными в полигональное представление. Но мы не будем отходить от канонов, поэтому покажем вариант перехода от одной надписи к другой. Давайте возьмем в качестве основы название этой статьи, разделив его на две части: «Спецэффекты» и «в Cinema 4D».

Создаем две надписи. Вторая располагается за первой, хотя это не суть важно. Переводим эти объекты в полигональное представление

Далее двигаемся поэтапно:

1. Среди примитивов кривых выбираем вариант «Text», вставляем его в проект, меняем надпись на «Спецэффекты». Вставляем этот элемент в модификатор Extrude для выдавливания. Для придания округлости буквам в свойствах Extrude > Caps выбираем вариант Fillet Cap.

2. Клонируем объект. Это можно сделать стандартной операцией Ctrl+C/Ctrl+V либо более быстрой — удерживая Ctrl, просто перенесите основной объект выше (попробуйте, у вас получится:)). Во втором случае меняем надпись на «в Cinema 4D».

3. В рабочей области поставьте вторую надпись за первой, перенеся ее по оси Z, как показано на рисунке. Готово!

4. Переведите первую надпись в полигональный вид, нажав клавишу «С». В результате вы получите группу из нескольких полигональных же объектов. Разворачиваем ее, выделяем все объекты, затем нажимаем правую кнопку мыши и в контекстном меню выбираем вариант «Connect» для 10-й версии (в этом случае образуется новый объект, а старый нужно удалить), а в более свежих — «Connect and Delete», в результате чего все выбранные объекты должны объединиться в один. Называем его «Первая надпись».

Из главного меню добавляем новый объект Objects > Thinking Particles > Particle Geometry. Входим в его свойства Object, затем открываем окно Objects > Thinking Particles > Particles Properties, нажимаем там на All и переносим курсором мыши в Particle Group

5. То же самое проделываем со второй надписью, в результате должны по аналогии получить объект «Вторая надпись».

6. Из главного меню добавляем новый объект Objects > Thinking Particles > Particle Geometry. Входим в его свойства Object, затем открываем окно Objects > Thinking Particles > Particles Properties, нажимаем там на All и переносим курсором мыши в Particle Group.

7. В менеджере объектов делаем наши надписи дочерними к нему. Также к Particle Geometry необходимо добавить новый тег — Xpresso, вызов к которому расположен через меню менеджера объектов Tags > Cinema4D Tags.

8. При загрузке Xpresso появится рабочее окно этого мощного модуля. В его суть мы договорились вникать постепенно, поэтому в данном случае просто добавьте нод, нажав в рабочей области правую кнопку мыши, а после в контекстном меню: New Node > Thinking Particles > TP Generators > PBlurp. Это уже заранее заготовленный генератор перехода/перетекания по частицам от одного полигонального объекта к другому.

Рабочее окно модуля Xpresso, куда мы добавляем генератор перехода PBlurp

9. В результате последней операции в рабочем окне Xpresso появится функциональный значок PBlurp, а в основном окне свойств мы можем увидеть все настройки, к нему относящиеся. В данном случае нас интересует прежде всего окошко Objects, в которое мы помещаем наши «Первую надпись» и «Вторую надпись» (а в самом менеджере объектов нужно сделать их невидимыми для просмотра). Причем «Первая надпись» должна быть верхней. Теперь выделите обе надписи в окошке Objects (делается при удерживании Ctrl).

10. Находясь в окне свойств PBlurp нам нужно зонировать анимацию от 0% до 100% в пункте Animation. Делается это так же как и с другими параметрами — устанавливаем курсор на кадр, вводим значение, затем нажимаем правую кнопку мыши и в контекстном меню выбираем Frame > Add Keyframe. Хотя обычно последняя операция делается и проще — нужно нажать при удерживании Ctrl на изображение кружочка напротив надписи. Итак, в нашем случае понадобится только два ключевых кадра: нулевой, в котором мы выставили значение Animation в 0%, и последний, где Animation 100%.

В окне свойств мы можем увидеть все настройки PBlurp. В данном случае нас интересует прежде всего окошко Objects, в которое мы помещаем наши «Первую надпись» и «Вторую надпись»

11. Запустив анимацию, вы увидите достаточно простой эффект, при котором первая надпись перетекает во вторую по оси Z. Он не очень интересен, потому как очень нечеткая динамика самого перехода. Поэтому в свойствах PBlurp меняем направление, например, «+Х to –X» — тогда перетекание пойдет с правого края по буквам, либо же «+Y to –Y» — в этом случае первая надпись начнет морфироваться сверху и плавно перетечет во вторую, что достаточно эффектно смотрится, если включить фронтальную область просмотра. Мы остановимся на первом варианте. Теперь увеличьте количество частиц (Counts), измените их размеры и посмотрите на результаты.

Изменение траектории

До этого мы использовали фактически линейные осевые траектории. Ну а если нам захочется чего-нибудь более сложного и интересного? Все решаемо! Для этого нужно просто загружать в проект нулевые объекты, после чего вставлять их в окошко Objects в свойствах генератора PBlurp между (!) первой и второй надписью. Затем вы просто смещаете эти нулевые объекты в пространстве и смотрите на то, как меняется траектория.

Простейший анимационный переход по оси Z

Урок. Подытожим

Описанный спецэффект применяется очень часто, поскольку позволяет сделать очень красивый динамичный и современно выглядящий переход от одной формы к другой. Его можно часто встретить в рекламных роликах, заставках для ТВ, в кино. Например, добиться результата из к/ф «День, когда Земля остановилась» с Киану Ривзом в главной роли, где инопланетная саранча пожирала различные объекты, можно и с применением описанного выше генератора.

Для получения более сложных траекторий используются дополнительные нулевые объекты

Отдельная пометка

В начале материала я, конечно, сказал о том, что многие люди рады поделиться знаниями и показать приемы, но... к сожалению, это не всегда так. Например, в видеоуроках часто упускаются ключевые детали, причем очевидно, что намеренно. Также, к своему большому удивлению, я встречал и варианты подмены. То есть в видеоуроках используются абсолютно другие инструменты, чем в показанном результате. Причем специалистам такое очевидно, а новички «бьются головой о стену».

Описанный спецэффект применяется очень часто, поскольку позволяет сделать очень красивый переход от одной формы к другой. Его можно часто встретить в рекламных роликах, заставках для ТВ, в кино

А еще веселее, когда в том или ином уроке, посвященном какой-нибудь сложной технологии, 80% времени автор занимается абсолютно сторонними вещами, например, долго подбирает настройки материала и т.п. Конечно, в этом плане Maxon повела себя довольно разумно, отделив зерна от плевел и собрав целую коллекцию Cinevercity. Но и там не все так гладко, как хотелось бы.

Кристофер http://itcs.3dn.ru


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

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