3D Studio MAX: первые шаги. Урок 15. Атмосферные эффекты
Солнечные лучи, проходящие сквозь стекло
Вид сцены зависит не только от того, какие объекты в ней находятся, как они текстурированы и как освещены, но и от окружения объектов, в частности от наличия атмосферных эффектов. Благодаря удачной настройке таких эффектов можно изменить настроение сцены, сделать ее более реалистичной или, наоборот, добавить некий мистический налет. Поэтому в данном уроке мы рассмотрим некоторые приемы настройки атмосферы.
Атмосферные эффекты позволяют имитировать туман, огонь, дым, облака, свечение звезд и т.п., что придает дополнительный реализм моделируемой сцене. Предусмотрено создание четырех атмосферных эффектов: Fog (Туман), VolumeFog (Объемный туман), VolumeLight (Объемный свет) и FireEffect (Эффект огня).
Они настраиваются на вкладке Atmosphere (Атмосфера — рис. 1) окна Environment and Effects (Окружение и эффекты), открываемого из меню Rendering (Рендеринг), и добавляются в сцену в процессе визуализации. Для применения атмосферного эффекта к сцене следует воспользоваться командой Rendering=>Environment (Визуализация=>Окружение), на вкладке Atmosphere (Атмосфера) щелкнуть на кнопке Add (добавить) и выбрать нужный эффект из открывшегося диалогового окна. Чтобы удалить неудачно созданный эффект, достаточно выделить его в списке эффектов сцены (вкладка Atmosphere) и щелкнуть на кнопке Delete (Удалить). При необходимости несложно включить в рабочую сцену атмосферные эффекты из других ранее сохраненных сцен, применив команду Merge (Соединить).
Рис. 1. Вкладка Atmosphere с перечнем назначенных сцене атмосферных эффектов
Fog
Fog-туман бывает двух типов — стандартный (Standard) и слоистый (Layered). Первый используется для создания тумана, равномерно скрывающего объекты в направлении глубины поля зрения, то есть по горизонтали. Второй скрывает объекты неравномерно в зависимости от их вертикальной координаты.
Параметры эффекта Fog настраиваются в трех свитках: FogParameters, Standard и Layered (рис. 2). В свитке Fog Parameters определяются основные параметры эффекта: цвет тумана ( Color) и тип ( Type) — Standard или Layered. При необходимости здесь можно назначить эффекту текстурную карту цвета — Environment Color Map и/или текстурную карту непрозрачности — Environment Opacity Map, а также включить для него опцию FogBackground, обеспечивающую затуманивание заднего плана. Параметры стандартного тумана настраиваются в свитке Standard, а слоистого — в свитке Layered.
Рис . 2. Свитки FogParameters, Standard и Layered
Стандартный туман
Область распространения стандартного тумана может ограничиваться диапазоном влияния окружающей среды (EnvironmentRange) в поле зрения камеры. Характер распространения тумана между данными границами зависит от того, включен или выключен флажок Exponential (Экспоненциальный). При включенном флажке туман распространяется по криволинейной траектории, при выключенном — по прямолинейной.
Диапазон влияния окружающей среды задается двумя ограничивающими плоскостями: NearRange (Ближняя граница) и FarRange (Дальняя граница) — рис. 3. Ближняя граница определяет расстояние, на котором эффект начинает действовать, дальняя — расстояние, начиная с которого эффект проявляется в полную силу. Объекты, находящиеся между ближней и дальней границами, будут видны частично, а расположенные за дальней границей — вообще не видны. По умолчанию данные границы не отображаются в окнах проекций — для включения их отображения следует активизировать флажок Show. Местоположение границ задается в свитке Parameters (Параметры) камеры.
Рис. 3. Вид сцены без отображения ближней и дальней границ (слева) и с их отображением
Для примера создайте произвольную сцену с несколькими примитивами (рис. 4). Назначьте ей эффект стандартного тумана — из меню Rendering (Визуализация) откройте команду Environment (Окружение), в свитке Atmosphere (Атмосферные эффекты) щелкните по кнопке Add (Добавить), выберите эффект Fog (Туман) и щелкните по кнопке Ок. Визуализируйте сцену — туман покроет всю сцену полностью, причем вблизи дальней границы туман будет столь плотным, что находящиеся там фрагменты объектов окажутся полностью скрытыми (рис. 5). В секции FogParameters установите для тумана светло-голубой цвет, а в области Standard уменьшите параметр Far, означающий уровень максимальной плотности тумана, до 50% — туман станет голубым, а плотность его снизится, но ближняя и дальняя границы распространения тумана останутся неизменными (рис. 6 и 7).
Рис. 4. Исходная сцена
Рис. 5. Начальный вид сцены со стандартным туманом
Рис. 6. Изменение параметров эффекта Fog
Рис. 7. Вид сцены после коррекции настроек тумана
Откройте на панели Create категорию Cameras (Камеры), щелкните по кнопке Target (Нацеленная камера) и в окне проекции Тор создайте камеру, нацеленную на объекты. Вместо проекции Perspective загрузите проекцию камеры (клавиша С), подкорректируйте ее положение (рис. 8). Теперь отрегулируем границы распространения тумана. Выделите камеру, откройте панель Modify и в группе EnvironmentRanges установите флажок Show — в области зрения камеры отобразится дальняя граничная плоскость диапазона (ближняя плоскость по умолчанию устанавливается на нулевом расстоянии и потому не видна) — рис. 9. Установите ближнюю границу (NearRange) равной 300, а дальнюю (FarRange) — 500 и после визуализации увидите, что никакого тумана на переднем плане нет, зато на заднем плане он стал более заметен по причине перемещения дальней границы (рис. 10).
Рис. 8. Появление камеры
Рис. 9. Вид сцены с дальней границей
Рис. 10. Результат установки плоскостей, ограничивающих зону распространения тумана
Слоистый туман
В отличие от стандартного тумана, слоистый не ограничивается плоскостями NearRange и FarRange. Чтобы убедиться в этом, измените в секции FogParameters свитка Atmosphere тип тумана со Standard на Layered и визуализируйте сцену — голубой туман будет окутывать ее полностью, несмотря на установленные ближнюю и дальнюю границы (рис. 11).
Рис. 11. Начальный вид сцены со слоистым туманом
Зато у слоистого тумана можно регулировать пределы вертикального распространения через горизонт камеры и настройки самого тумана:
- Top/Bottom — определяет верхнюю/нижнюю границы слоя тумана;
- Density — задает плотность тумана ;
- Falloff — определяет положение тумана относительно линии горизонта: Top (вверху), Bottom (внизу) или None (нет);
- HorizonNoise — задает разброс тумана по линии горизонта;
- Size — определяет размер элементов тумана;
- Angle — устанавливает угол камеры к горизонту.
Для примера установите значение параметра Top равным 0, а Bottom — 40 и при визуализации увидите, что туман состоит как бы из двух слоев — плотного нижнего и совсем неплотного верхнего (рис. 12). Установив флажок HorizonNoise (Шум горизонта) и экспериментируя со значениями параметров Size и Angle, можно добиться неровной кромки тумана в области линии горизонта (рис. 13).
Рис. 12. Сцена двухслойного тумана
Рис. 13. Примеры слоистого тумана с неровной кромкой
Текст, окутанный туманом
Подготовьте сцену из двух объектов: плоскости и объемного текста, полученного посредством лофтинга пути по текстовому сплайну (рис. 14). Создайте стандартную нацеленную камеру и настройте ее положение и ориентацию для такого же, как и в окне Perspective, вида. Назначьте сцене эффект слоистого тумана, щелкнув в свитке Atmosphere окна Environment and Effects (Окружение и эффекты) на кнопке Add, выбрав эффект Fog и изменив тип тумана на Layered. Настройте параметры слоистого тумана в соответствии с рис. 15, изменив цвет тумана, определив его верхнюю и нижнюю границы, плотность (Density) и настроив разброс фрагментов тумана вдоль линии горизонта (флажок HorizonNoise). Установите рис. 16 в качестве фона при рендеринге (команда Rendering=>Environment=>EnvironmentMap=>Bitmap) и как текстурную карту на канале Diffuse для материала, назначенного плоскости. Результат визуализации полученной сцены показан на рис. 17.
Рис. 14. Начальный вид сцены
Рис. 15. Параметры настройки эффекта FogLayered
Рис. 16. Фоновое изображение
Рис. 17. Результат назначения слоистого тумана
В целом текст смотрится неплохо, но сама сцена несколько мрачновата, попробуем придать ей яркости путем настройки освещения. Создайте в проекции Left источник типа TargetSpot для освещения текста спереди — расположите источник в направлении текста и уменьшите его интенсивность до 0,7 (рис. 18). Для общего освещения сцены добавьте дополнительный Omni-источник с розовым (как и у тумана) цветом, увеличьте его интенсивность до 2 (рис. 19). Результат рендеринга окажется гораздо более привлекательным (рис. 20).
Рис. 18. Создание источника света TargetSpot
Рис. 19. Создание источника света Omni
Рис. 20. Текст, окутанный туманом
Volume Fog
Эффект VolumeFog, в отличие от эффекта Fog, генерирующего равномерный (но плоский) туман, позволяет создавать клубящийся объемный туман, причем область распространения такого тумана может быть ограничена гизмо, а отдельными клубами тумана можно управлять.
Параметры эффекта VolumeFog разбиты на три группы: Gizmos, Volume и Noise (рис. 21). Первая группа позволяет настроить гизмо. Во второй определяются основные параметры эффекта, такие как цвет тумана ( Color), его плотность (Density), степень детализации (StepSize) и др. В третьей группе объединены параметры, позволяющие управлять особенностями формирования отдельных клубов тумана: тип шума ( Type), уровень однородности (Uniformity), уровень разброса (Levels), фаза смещения (Phase), направление ветра (Wind) и т.д.
Рис. 21. Свиток Volume Fog Parameters
Вернитесь к рабочей сцене, удалите созданный в ней ранее эффект слоистого тумана, выделив его в списке эффектов и щелкнув на кнопке Delete. Создайте эффект VolumeFog и проведите рендеринг (рис. 22) — увы, при настройках по умолчанию результат мало напоминает туман. Измените цвет тумана на светло-голубой и уменьшите плотность (Density) до 10 — вид сцены улучшится (рис. 23). Установите флажок Exponential — туман станет более равномерным (рис. 24). Поэкспериментируйте с разными типами тумана ( Type), различающимися вариантами разброса элементов тумана: Regular (Регулярный), Fractal (Фрактальный), Turbulen ce (Турбулентный) и Invert (Инвертный). Визуально оцените, какое влияние оказывает на вид тумана порог разброса элементов тумана: High (Высокий), Low (Низкий) или Uniformity (Однородный).
Рис. 22. Начальный вид сцены с объемным туманом
Рис. 23. Результат уменьшения плотности тумана
Рис. 24. Результат включения флажка Exponential
По умолчанию область распространения объемного тумана не ограничена, однако это легко исправить, добавив к сцене вспомогательный объект типа AtmosphericApparatus и указав его в качестве гизмо эффекта VolumeFog. Перейдите на панель Create=>Helpers и выберите на ней уровень AtmosphericApparatus. Щелкните, например, на объекте SphereGi zmo (Сферический гизмо) — рис. 25 и в окне проекции Top создайте новый объект точно так же, как создается стандартный примитив Sphere. Используя инструменты перемещения и поворота, измените положение объекта так, чтобы он занимал все пространство на заднем плане сцены (рис. 26). В области VolumeFogParameters окна Environment and Effects щелкните на кнопке PickGismo (Указать гизмо) и укажите созданный вспомогательный объект на любом из видовых экранов. Визуализируйте сцену — теперь туман будет распространяться лишь в пределах вспомогательной сферы (рис. 27).
Рис. 25. Выбор вспомогательного объекта SphereGizmo
Рис. 26. Размещение объекта SphereGizmo
Рис. 27. Вид сцены с объемным туманом, ограниченным гизмо