Опубликован: 04.07.2008 | Доступ: свободный | Студентов: 7304 / 688 | Оценка: 4.43 / 3.98 | Длительность: 13:09:00
Специальности: Художник
Лекция 13:

Освещение сцены и эффекты

< Лекция 12 || Лекция 13: 12345 || Лекция 14 >

Если вы хотите знать о свете больше…

Свет имеет три главные характеристики: яркость ( Multiplier ), цвет ( Color ) и отбрасываемые от освещенных им объектов тени ( Shadows ).

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

Различные визуализаторы предлагают свои алгоритмы формирования теней. Отбрасываемая от объекта тень может сказать о многом - как высоко он находится над землей, какова структура поверхности, на которую падает тень, каким источником освещен объект и т. д. Кроме этого тень может подчеркнуть контраст между передним и задним планом, а также "выдать" объект, который не попал в поле зрения объектива виртуальной камеры. В зависимости от формы отбрасываемой объектом тени сцена может выглядеть реалистично ( рис. 13.3) или не совсем правдоподобно ( рис. 13.4).

Объект с мягкими тенями

увеличить изображение
Рис. 13.3. Объект с мягкими тенями
Объект с резкими тенями

увеличить изображение
Рис. 13.4. Объект с резкими тенями

Как мы уже говорили выше, настоящий луч света претерпевает большое количество отражений и преломлений, поэтому реальные тени всегда имеют размытые края. В трехмерной графике используется специальный термин, которым обозначают такие тени - мягкие тени. Добиться мягких теней довольно сложно. Многие визуализаторы решают проблему мягких теней, добавляя в интерфейс 3ds Max неточечный источник света, имеющий прямоугольную или другую форму. Такой источник излучает свет не из одной точки, а из каждой точки поверхности. При этом чем больше площадь источника света, тем более мягкими получаются тени при визуализации.

Существуют разные подходы к визуализации теней: использование карты теней ( Shadow Map ), трассировка ( Raytraced ) и глобальное освещение ( Global Illumination ). Рассмотрим их по порядку.

Использование карты теней позволяет получить размытые тени с нечеткими краями. Главная настройка Shadow Map (Карта теней) - это размер карты теней (параметр Size (Размер) в свитке настроек Shadow Map Params (Параметры карты теней). Если размер карты уменьшить, четкость полученных теней также снизится.

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

Для получения мягких теней используется метод Area Shadows (Распределение теней), в основе которого лежит немного видоизмененный метод трассировки. Area Shadows (Распределение теней) позволяет просчитать тени от объекта так, как будто в сцене присутствует не один источник света, а группа равномерно распределенных в некоторой области точечных источников света.

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

Метод глобального освещения ( Radiosity ), позволяет добиться мягких теней на финальном изображении. Этот метод является альтернативой трассировке освещения. Если метод трассировки визуализирует только те участки сцены, на которые попадают лучи света, то метод глобального освещения просчитывает рассеиваемость света и в неосвещенных или находящихся в тени участках сцены на основе анализа каждого пиксела изображения. При этом учитываются все отражения лучей света в сцене.

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

Алгоритмов просчета глобального освещения существует несколько, один из способов расчета отраженного света - фотонная трассировка ( Photon Mapping ). Этот метод подразумевает расчет глобального освещения, основанный на создании так называемой карты фотонов. Карта фотонов представляет собой информацию об освещенности сцены, собранную при помощи трассировки.

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

Отображение теней в окне проекции

До выхода 3ds Max 2008 просмотр теней был возможен только на визуализированном изображении. В последней версии программы появилась возможность просматривать тени в окне проекции, а также наблюдать за тем, как влияет изменение настроек источников света на конечный результат.

Для отображения теней задействуются возможности видеокарты. Соответственно, то, увидите ли вы тени, зависит от того, насколько она является мощной. Для отображения теней она должна поддерживать графическую архитектуру SM (Shader Model) 2.0 или более новую.

Отображение теней может происходить в двух режимах - Good (Хорошее) и Best (Наилучшее). Отличие этих режимов состоит в том, что во втором случае отображение теней происходит более качественно, с учетом прозрачности материала.

Если видеокарта поддерживает только стандарт Shader Model 2.0, вы сможете увидеть тени только в режиме Good (Хорошее), а наилучший вариант их отображения будет просто недоступен. Чтобы увидеть тени в режиме Best (Наилучшее), необходима поддержка графической архитектуры Shader Model 3.0.

Отображение теней включается в меню окна проекции, в котором есть пункт Viewport Lighting and Shadows (Тени и освещение в окне проекции) ( рис. 13.5).

Включение отображения теней в окнах проекций

Рис. 13.5. Включение отображения теней в окнах проекций

Стоит отметить, что отображение теней работает только в том случае, если используется графический драйвер Direct3D. Информация о драйвере выводится в правой части заголовка окна 3ds Max. В 3ds Max 2009 драйвер Direct3D используется по умолчанию. Если изменить его на OpenGL или Software, то возможности отображения теней в окне проекции будут отключены, вне зависимости от того, какую видеокарту вы используете.

Совет. Для изменения графического драйвера выполните команду Customize>Preferences (Настройка>Параметры), перейдите на вкладку Viewports (Окно проекций) и нажмите кнопку Choose Driver (Выбор драйвера). Чтобы изменения вступили в силу, и был задействован новый драйвер, необходимо перезапустить 3ds Max ( рис. 13.6).
Окно изменения графического драйвера

Рис. 13.6. Окно изменения графического драйвера

Вы можете легко проверить, поддерживает ли ваша видеокарта новые возможности, связанные с отображением в окне проекции теней, отражений материалов и системы дневного освещения, выполнив команду Help>Diagnose Video Hardware (Справка>Выполнить диагностику графического адаптера). После ее выполнения будет запущено окно, в котором будет выведен отчет по ее основным возможностям ( рис. 13.7).

Окно диагностики графического адаптера

Рис. 13.7. Окно диагностики графического адаптера

Система Lightning Analysis

Одним из самых досадных промахов в настройке освещения сцены являются слишком освещенные участки изображения, которые выглядят как сплошные белые пятна. Визуализация сложной сцены, например, интерьера офиса, занимает довольно много времени, и тем обиднее наблюдать собственную ошибку, допущенную в настройках визуализатора, спустя несколько часов ожидания. Cистема Lightning Analysis (Анализ освещенности), которая включена только в версию 3ds Max 2009 Design, заметно увеличивает вероятность правильной настройки освещения.

Эта система выполняет анализ освещенности и демонстрирует карту с выборкой распределения света, по которой можно судить о том, какие участки изображения освещены слишком сильно, а какие - недостаточно. Анализ освещенности можно выполнять с помощью вспомогательного объекта Light Meter (Измеритель света), который собирает статистику световых уровней в своей плоскости ( рис. 13.8).

Объект Light Meter (Измеритель света) в окне 3ds Max

увеличить изображение
Рис. 13.8. Объект Light Meter (Измеритель света) в окне 3ds Max

Для создания вспомогательного объекта Light Meter (Измеритель света) выполните команду Lightning Analysis > Create > Light Meter (Анализ освещенности>Создать>Измеритель света).

Light Meter (Измеритель света) удобно использовать, например, для того, чтобы узнать, насколько освещен тот или иной участок сцены. Цвета, в которые окрашивается вспомогательный объект Light Meter (Измеритель света) в окне проекции, помогают визуально оценить уровень освещенности. Помимо цвета, о степени освещенности можно судить по цифровым данным, которые отображаются непосредственно в плоскости вспомогательного объекта.

Если нужно получить общую информацию об освещенности конечного изображения, можно использовать другую функцию Lightning Analysis (Анализ освещенности), которая называется Image Overlay (Наложение на изображение). Она накладывает на отрендеренную картинку слой с цифровыми данными о степени освещенности изображения.

< Лекция 12 || Лекция 13: 12345 || Лекция 14 >