3D Studio MAX: первые шаги. Урок 26. Использование модуля Video Post. Часть 1

Светлана Шляхтина

Теоретические аспекты

Примеры сцен с визуальными эффектами Video Post

Пешки в фокусе и вне фокуса камеры

Кружащиеся в вихре мерцающие частицы

Светящаяся на небе звезда

Сверкающая на небосклоне молния

Движущийся по контуру лазерный луч

 

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

Теоретические аспекты

Основное назначение модуля Video Post — видеомонтаж, то есть постобработка. Правда, видеомонтаж в традиционном понимании и видеомонтаж в 3D Studio MAX — совсем не одно и то же. Традиционно под видеомонтажом понимается комбинирование отдельных видеосцен в единый фильм с определением характера переходов между сценами, и решается данная задача средствами видеоредакторов. В 3D Studio MAX видеомонтаж — это объединение результатов визуализации с файлами изображений и визуальными эффектами, что позволяет получать изображения либо анимации, которые обычным образом создать достаточно трудоемко — например анимации с эффектами свечения, горения и т.п.

Создание визуальных эффектов в модуле Video Post производится по окончании визуализации, а в качестве исходного фона для выбранного эффекта используется готовое изображение сцены. Все настройки производятся в окне VideoPost, открываемом командой Rendering=>VideoPost (Визуализация=>Видеомонтаж) — рис. 1. В левой части данного окна находится панель Queue (Очередь), где формируется иерархический список событий, которые будут выполняться в процессе постобработки. В правой части окна для каждого из событий настраиваются временные интервалы (то есть указываются первый и последний кадры, в которых данные события должны присутствовать).

 

Рис. 1. Окно VideoPost

Рис. 1. Окно VideoPost

 

Возможны следующие типы событий:

  • Image Input Event (Событие ввода изображения) — обеспечивает ввод произвольного растрового изображения, например в качестве фонового изображения сцены;
  • Scene Event (Событие сцены) — осуществляет ввод изображения, полученного при визуализации сцены;
  • Image Layer Event (Событие слоя изображения) — позволяет определенным образом (например, с подключением альфа-канала либо маски) комбинировать два изображения (одним из них может быть результат визуализации сцены);
  • Image Filter Event (Событие фильтра изображения) — применяется для назначения изображению (растровому либо полученному при визуализации сцены) визуального эффекта;
  • Image Output Event (Событие вывода изображения) — позволяет указать файл, в который будут выводиться результаты видеомонтажа.

Технология работы с модулем Video Post следующая. Как правило, сначала в очередь добавляются события ввода — то есть SceneEvent и/или ImageInputEvent. Продолжительность каждого из событий настраивается сразу же. Затем в зависимости от поставленных целей в очередь добавляются событие ImageFilterEvent, либо ImageLayerEvent, либо оба типа событий одновременно, возможно даже не единожды. В случае события ImageFilterEvent требуется выбрать визуальный эффект (рис. 2) и, как правило, определить объект или объекты сцены (материал или материалы), к которым данный эффект должен быть применен (в случае материала подразумевается, что эффект будет применен к объектам сцены, имеющим соответствующий материал). Объекты указываются напрямую либо через их идентификационный номер ObjectID (как именно, зависит от типа эффекта), материалы — через параметр EffectsID. В сцене идентификационный номер объекта задается в его свойствах (команда Object Properties), где он фигурирует под именем G-Buffer (рис. 3). Идентификационный номер материала устанавливается в окне редактора материалов (рис. 4) — для этого требуется щелкнуть мышью на кнопке Material IDChannel и задержать мышь до появления всплывающего меню доступных номеров (от 0 до 15), а затем навести курсор на нужный номер и отпустить кнопку мыши. При добавлении события ImageLayerEvent необходимо выбрать в свитке LayerPlug-In плагин слоя (рис. 5), посредством которого будет осуществляться смешивание изображений.

 

Рис. 2. Выбор визуального эффекта

Рис. 2. Выбор визуального эффекта

 

Рис. 3. Определение идентификационного номера объекта

Рис. 3. Определение идентификационного номера объекта

 

Рис. 4. Установка идентификационного номера материала

Рис. 4. Установка идентификационного номера материала

 

Рис. 5. Выбор плагина слоя

Рис. 5. Выбор плагина слоя

 

В самом конце формирования очереди событий добавляется событие вывода изображения (ImageOutputEvent), при создании которого указывается файл, где будет сохранено готовое изображение либо анимация. После создания очереди ее запускают на выполнение (кнопка ExecuteSequence — Выполнить последовательность) — рис. 6, и модуль Video Post приступает к последовательному выполнению перечисленных в очереди событий.

 

Рис. 6. Запуск выполнения очереди событий

Рис. 6. Запуск выполнения очереди событий

 

Спектр допустимых визуальных эффектов довольно широк, но наиболее часто применяются следующие эффекты:

  • LensEffectsF lare — имитирует блики на объективе, появляющиеся в линзах камеры, направленной на яркий источник света;
  • LensEffectsFocus — позволяет размывать объекты, расположенные вне фокуса камеры, что обеспечивает большую реалистичность изображений;
  • LensEffectsGlow — добавляет сияющую ауру вокруг указанного объекта и полезен, например, при создании взрывов, огня и т.п.;
  • LensEffectsHighlight — создает сверкающие блики в форме звезд; такие блики нередко наблюдаются у сверкающих объектов при ярком освещении (например, у ограненных кристаллов, льдинок и т.п.);
  • Starfield — создает реалистичное изображение звездного пространства.

Попробуем разобраться с особенностями назначения эффектов модуля Video Post на примере простой сцены. Создайте сцену с произвольным текстовым объектом, смоделированным в окне проекции Front (рис. 7), — сделаем данный текст светящимся, то есть примерно таким, какой используется в неоновых надписях. Откройте окно свойств объекта, щелкнув на нем правой кнопкой мыши и выбрав команду Object Properties, и установите в группе G-Buffer для параметра Object ID значение 1 (рис. 8). Сделайте сплайн видимым во время рендеринга, включив для него на панели Modify в свитке Rendring флажок Enable inRender er (рис. 9). Назначьте тексту любой яркий цвет и визуализируйте сцену из окна проекции Front (рис. 10).

 

Рис. 7. Исходная сцена

 

Рис. 8. Указание ID объекта

 

Рис. 9. Включение видимости сплайна при рендеринге

 

Рис. 10. Первоначальный вид визуализированного текста

 

Откройте окно VideoPost, воспользовавшись командой Rendering=>VideoPost. Добавьте в очередь событие Сцена, щелкнув на кнопке AddSceneEvent. Укажите для данного события в качестве визуализируемого окно Front и установите в полях VPStartTime и VPEndTime значение 0, поскольку нас будет интересовать лишь нулевой кадр (рис. 11). Добавьте в очередь событие Фильтр изображения, щелкнув на кнопке AddImageFilterEvent, и в качестве эффекта выберите LensEffectsGlow (рис. 12). Теперь нужно указать программе, что данный эффект следует применить к тексту — щелкните на кнопке Setup и в настройках эффекта в группе Source (Источник) проверьте, стоит ли в поле ObjectID значение 1 (оно обычно устанавливается по умолчанию и в данном случае нас устраивает) — рис. 13. Добавьте в очередь событие Вывод изображения (кнопка AddImageOutputEvent), щелкните на кнопке Files и укажите имя и расширение файла, в котором должно быть сохранено итоговое изображение. В итоге в очереди окажется три события (рис. 14). Запустите процесс выполнения очереди, щелкнув на кнопке ExecuteSequence — визуализированный текст окажется светящимся (рис. 15). Полученное по умолчанию свечение явно чрезмерно, поэтому изменим настройки эффекта. Дважды щелкните на строке LensEffectsGlow, нажмите на кнопку Setup и перейдите на вкладку Preferences. После этого в группе Effect уменьшите значение параметра Size (устанавливает размер эффекта) до 3, а в группе Color — значение параметра Intensity (управляет яркостью эффекта) до 50% (рис. 16). В итоге надпись станет действительно неоновой (рис. 17).

 

Рис. 11. Настройка параметров события SceneEvent

 

Рис. 12. Добавление фильтра LensEffectsGlow

 

Рис. 13. Корректировка параметров фильтра LensEffectsGlow

 

Рис. 14. Окно Video Post с готовой очередью событий

 

Рис. 15. Вид текста после назначения ему фильтра LensEffectsGlow

 

Рис. 16. Настройка параметров фильтра LensEffectsGlow

 

Рис. 17. Неоновый текст

В начало В начало

Примеры сцен с визуальными эффектами Video Post

Пешки в фокусе и вне фокуса камеры

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

Создайте плоскость, наложите на нее шахматный материал. В левом верхнем углу плоскости поместите пешку (или любой небольшой объект, включая обычный примитив). Выделите созданный объект и сформируйте на его основе двумерный массив объектов, дважды применив команду Tools=>Array (Инструменты=>Массив) с активированным флажком 2D — первый раз потребуется сместить объекты друг относительно друга по оси X (рис. 18), а второй — по оси Y (рис. 19). Дополните сцену нацеленной камерой и проведите рендеринг — все объекты сцены будут отображены с абсолютно одинаковой четкостью, что выглядит очень неестественно (рис. 20).

 

Рис. 18. Настройка параметров окна Array для смещения по оси X

 

Рис. 19. Настройка параметров окна Array для смещения по оси Y

 

Рис. 20. Вид сцены без размытия объектов вне фокуса

 

Изменить ситуацию можно разными способами, в том числе путем подключения визуального эффекта LensEffectsFocus. Откройте окно VideoPost (Rendering=>VideoPost), добавьте в очередь событие Сцена (кнопка AddSceneEvent) и установите для визуализации окно камеры (рис. 21). Добавьте в очередь событие Фильтр изображения, щелкнув на кнопке AddImageFilterEvent, и выберите из списка LensEffectsFocus. Щелкните на кнопке Setup и укажите объект на сцене, который должен находиться в фокусе камеры — для этого следует включить вариант FocalNode, щелкнуть на кнопке Select и указать одну из пешек в центре сцены (мы предварительно выделили ее другим цветом). Щелкните на кнопке Preview (после этого эффект будет продемонстрирован на базовой сцене), а затем на кнопке VPQueue — это позволит увидеть предварительный вариант отображения сцены в очереди VideoPost (рис. 22). Поскольку размытие оказалось явно чрезмерным, уменьшите значения параметров Horiz. FocalLoss и Vert. FocalLoss до 20 (данные параметры определяют величину размытия, прилагаемого к изображению по осям X и Y), а параметр FocalLimit, определяющий расстояние от камеры, начиная с которого эффект размытия проявляется в полную силу, увеличьте до 700 (рис. 23). По окончании добавьте в очередь событие ImageOutputEvent и укажите имя и расширение файла, в котором должно быть сохранено итоговое изображение (рис. 24). Щелкните на кнопке ExecuteSequence, включите вариант Single и в качестве визуализируемого кадра укажите нулевой — все объекты, находящиеся на переднем и заднем плане, будут отображаться размытыми, что окажется гораздо ближе к действительности (рис. 25).

 

Рис. 21. Настройка параметров события SceneEvent

 

Рис. 22. Предварительное отображение сцены в VideoPost

 

Рис. 23. Корректировка параметров размытия сцены

 

Рис. 24. Готовая очередь

 

Рис. 25. Пешки в фокусе камеры

В начало В начало

next

КомпьютерПресс 7'2008