Алгоритм расчета глобальной освещенности Radiosity (Перенос излучения) также базируется на технике обратной трассировки лучей. Однако в отличие от алгоритма Light Tracer (Трассировщик света) он использует иной метод выбора точек сцены, из которых испускаются пучки отраженных лучей. При выборе таких точек алгоритм отталкивается не от плоской проекции сцены, а непосредственно от самих объектов. Источниками отраженных лучей считаются треугольные грани, из которых состоят сетки геометрических моделей объектов сцены. В связи с этим, как правило, требуется производить дополнительное разбиение сеток геометрических моделей, если их грани слишком велики, а число граней мало. Подобное разбиение может выполнять сам алгоритм переноса излучения или его можно произвести с помощью модификатора Subdivide (Разбиение). В результате разбиения формируется набор элементов (elements) поверхностей, каждый из которых имеет форму, максимально приближенную к форме равнобедренного треугольника.
Принципиальное отличие алгоритма переноса излучения от алгоритма трассировщика света состоит в том, что вместо расчетов цвета каждого пикселя изображения он производит расчет освещенностей всех поверхностей объектов сцены при заданном расположении источников света. В процессе расчетов освещенность каждого элемента рассчитывается как сумма освещенности прямыми лучами от источников света и лучами, отраженными от всех остальных элементов геометрических моделей сцены. За счет многократных отражений происходит как бы перенос световой энергии от элемента к элементу, от объекта к объекту — перенос излучения. Рассчитанные значения освещенности сохраняются в том же файле, что и геометрическая модель сцены, как свойство каждого геометрического элемента поверхности.
Расчет освещенности занимает довольно много времени. Однако результаты таких расчетов оказываются независимыми от угла, под которым мы рассматриваем сцену. Действительно, ни размер элементов поверхностей, ни углы падения на них прямых световых лучей от источников света и лучей, отраженных от других элементов, не зависят от направления наблюдения. В итоге, один раз выполнив расчет глобальной освещенности сцены методом переноса излучения, мы можем без особых хлопот быстро производить визуализацию множества изображений, свободно перемещая камеру в пределах этой сцены. Это позволяет экономить огромное количество времени. Необходимость в повторном расчете глобальной освещенности возникает только после смены взаимных положений объектов и осветителей, замены материалов, изменении силы света осветителей или ее пространственного распределения.
Перечислим некоторые особенности алгоритма Radiosity (Перенос излучения):
более сложен в использовании, требует специальной подготовки геометрических моделей объектов трехмерных сцен, а также тщательной настройки свойств материалов; позволяет рассчитывать глобальную освещенность сцены с применением источников света любого типа, как стандартных, так и фотометрических, причем использование последних обеспечивает предсказуемость и физическую корректность результатов; предпочтителен для использования в задачах, где важен реальный анализ освещенности, таких как архитектурное моделирование или конструирование интерьеров. Наиболее подходит для использования при расчете освещенности сцен внутри помещения;Расчет глобальной освещенности методом переноса излучения — дело тонкое, требующее настройки довольно большого числа параметров. В ряде случаев оказывается даже не обойтись без дополнительной настройки свойств отдельных объектов применительно к их участию в расчетах глобальной освещенности. Такая настройка выполняется на вкладке Adv. Lighting (Улучшенное освещение) окна диалога Object Properties (Свойства объекта), которое вызывается по команде Properties (Свойства) четвертного меню. Она может состоять в том, что некоторые объекты вообще исключаются из расчетов переноса излучения или для них, напротив, назначается какое-то дополнительное количество уточняющих шагов работы алгоритма. Для отдельных объектов можно устанавливать индивидуальные значения размера элементов, на которые программа разбивает сетку для расчета освещенности, указывать, будет ли объект воспринимать освещенность, переносимую на него с других объектов сцены и т. п. Иногда приходится корректировать способность объектов отражать, пропускать или преломлять световые лучи с помощью материала Advanced Lighting Override (Замена свойств улучшенного освещения).
Впрочем, я пишу эту книгу не для того, чтобы пугать вас сложностями. Разобрались с моделированием геометрии, со стандартным освещением, разберемся и с переносом излучения. Как вы сможете убедиться в ходе выполнения следующего упражнения, не боги... излучение переносят. Попробуем реализовать расчет переноса излучения на практике, выполнив упражнение с той же самой сценой «МАХ-кафе», а дальше, глядишь, любимым методом проб и ошибок вы научитесь делать такие расчеты лучше меня.
Алгоритм расчета глобальной освещенности Light Tracer (Трассировщик света) использует технику так называемой обратной трассировки воображаемых световых лучей, отраженных от поверхностей объектов сцены. Обратной такая трассировка называется потому, что пути лучей прослеживаются не от источника света к объективу камеры, а, наоборот, от объектива камеры в сторону источника. Это позволяет избежать бесчисленного возрастания числа просчитываемых лучей. Принцип действия трассировщика света основывается на разбиении плоской проекции трехмерной сцены, наблюдаемой в окне перспективной проекции или окне виртуальной съемочной камеры, на элементарные участки, для каждого из которых рассчитывается освещенность. При этом сначала разбиение выполняется на участки равных размеров, затем определяются так называемые проблемные области — кромки предметов, затененные элементы, участки с высоким контрастом яркости, — для которых выполняется дополнительное разбиение с более мелким шагом. Из точек трехмерной сцены, соответствующих центрам каждого участка разбиения, испускаются пучки случайным образом ориентированных воображаемых лучей. Освещенность каждого элементарного участка рассчитывается как сумма освещенности прямыми лучами света от источника и освещен-ностей других объектов сцены, которых достигли испускаемые из центра участка лучи. Если ни один из лучей не достиг ни источника света, ни других объектов сцены, считается, что участок в тени или освещен только светом небосвода. Так как процесс трассировки реализуется как случайный, то на изображении могут возникать неоднородности в виде мелких пятен, которые устраняются за счет увеличения числа рассчитываемых лучей.
Результаты расчетов существенно зависят от угла наблюдения сцены, потому что он влияет на расположение расчетных точек и на размеры областей поверхностей объектов, соответствующих элементарным участкам изображения.
Алгоритм Light Tracer (Трассировщик света) может рассчитывать многократные отражения световых лучей, что ведет к улучшению качества изображения, но существенно увеличивает время визуализации. Обычно бывает достаточно реализовать двукратные или трехкратные отражения, однако это количество сильно зависит от особенностей конкретной сцены и должно подбираться опытным путем.
Алгоритм расчета глобальной освещенности Light Tracer (Трассировщик света) имеет следующие особенности:
прост в использовании, не требует настройки большого числа параметров, позволяя во многих случаях использовать исходные значения; позволяет рассчитывать глобальную освещенность сцены с применением источников света любого типа, как стандартных, так и фотометрических, однако использование последних не обеспечивает в данном случае никаких преимуществ; дает визуально правдоподобные результаты, хотя и не основывается на физически корректных принципах; наиболее пригоден для визуализации сцен на открытом воздухе, но годится и для расчетов сцен в помещениях; результат расчетов освещенности зависит от ракурса съемки, и при перемещении камеры вычисления должны выполняться заново.
Искусная настройка света позволяет не только вызвать у зрителя нужный эмоциональный настрой, но даже способна скрыть мелкие огрехи геометрических моделей. В первой главе уже были показаны примеры того, как манипуляция освещением позволяет воссоздать атмосферу и яркого солнечного дня, и дня пасмурного, и темной лунной ночи (см. рис. 1.3 и 1.4). Теперь вам предстоит овладеть навыками создания, расстановки и настройки источников света или, проще говоря, осветителей max 7.5.
Знакомство с виртуальными осветителями max 7.5 начнем, как обычно, с их классификации.
Покончив с геометрией сцены, приступим к не менее интересному делу — теперь нам предстоит вдохнуть жизнь в эту совокупность множества сеток и линий, называемую геометрической моделью. Визуальное правдоподобие изображения, синтезируемого на основе геометрической модели, зависит от удачного подбора трех составляющих: освещения, материалов и выигрышного ракурса съемки. Материалами мы займемся в последующих главах, а пока познакомимся с основами настройки света и камер для съемки сцены.
В начале этой главы мы уже говорили с вами о том, что в программе 3ds max прежних версий отсутствовала возможность учитывать дополнительное освещение, которое объекты реального мира получают за счет световых лучей, отраженных от других объектов. В расчет принималось только прямое освещение, то есть освещение лучами, достигающими поверхности объектов непосредственно от источника света. В результате сцена при использовании единственного осветителя никогда не выглядела реалистично, и решение проблемы состояло в применении целого ряда дополнительных осветителей и множества ухищрений со включением и исключением объектов из числа освещаемых тем или иным источником. Именно из-за того, что мы пока не использовали возможность расчета глобальной освещенности, нам пришлось разместить внутри помещения «МАХ-кафе», помимо двух ключевых осветителей-прожекторов, еще пять всенаправленных источников света.
Как уже говорилось, программа max 7.5 поддерживает расчет глобальной освещенности, причем даже двумя различными способами, с использованием алгоритмов Light Tracer (Трассировщик света) и Radiosity (Перенос излучения).
Что такое глобальная освещенность, что дает ее учет при моделировании освещения трехмерных сцен и как она реализуется в 3ds max 7.5?
Все предметы реального мира доступны нашим глазам только потому, что они отражают световые лучи. Однако отраженные от какого-то объекта лучи света распространяются не только в сторону наших глаз, но и во всех остальных направлениях, попадая на другие предметы окружающей обстановки, снова отражаясь от них и т. д. Для примера на рис. 11.1 показаны несколько возможных путей попадания в объектив камеры, имитирующей в виртуальном мире глаз наблюдателя, единственного луча от источника света. На самом деле число лучей, испускаемых осветителем, бесконечно велико. В программе 3ds max при расчетах освещенности число воображаемых испущенных лучей, разумеется, не бесконечно, но тоже очень велико — ведь освещение сцены в пределах пучка световых лучей должно быть равномерным.
У реальных фотоаппаратов или видеокамер изображение редко бывает резким по всей глубине сцены. Как правило, фокусировка объектива на предмете съемки, находящемся на определенном удалении от точки наблюдения, ведет к тому, что все остальные предметы, расположенные как ближе к наблюдателю, так и дальше от него, получаются на изображении несколько размытыми. Это свойство оптики, которое можно рассматривать как технический недостаток, с точки зрения композиции сцены имеет неоспоримое достоинство: оно позволяет фокусировать внимание зрителя на нужном элементе сцены. Привыкнув видеть подобный эффект на фотографиях и в кино, мы сразу же замечаем его отсутствие на визуализированных изображениях трехмерной графики, где все предметы выглядят резко, на каком бы удалении от камеры они ни находились.
Виртуальные камеры ранних версий программы 3ds max не обладали способностью воспроизводить эффект конечной глубины резкости. Для его реализации использовался специальный фильтр из категории оптических эффектов, который можно было применять к изображению как в процессе визуализации, так и в ходе вторичной обработки уже синтезированного снимка.
В max 7.5 виртуальные камеры способны имитировать эффект конечной глубины резкости изображения, который можно наблюдать не только после визуализации, но и непосредственно в окнах проекций.
Особенность реализации эффекта глубины резкости виртуальной камеры в max 7.5 состоит в том, что расфокусированное изображение строится как суперпозиция нескольких изображений одной и той же сцены, синтезируемых заданное число раз и накладываемых друг на друга. Каждое синтезированное изображение строится при небольшом отличии от предыдущего по углу съемки. При этом смещение точек съемки производится так, чтобы линия визирования камеры всегда проходила через некоторую точку, удаленную от камеры на заданное расстояние. Такой точкой может, в частности, служить мишень нацеленной камеры. Каждое отдельное изображение ослабляется по интенсивности и суммируется с предыдущими, чтобы в совокупности они образовали нужную картинку. Таким образом, процесс визуализации одной и той же сцены производится много раз, из-за чего данный эффект носит название многопрогонного (Multi-Pass Effect). Объекты сцены, расположенные в непосредственной близости от точки фокусировки, выглядят на суммарном изображении резко. Изображения остальных объектов оказываются размытыми тем сильнее, чем дальше они отстоят от точки фокусировки.
Свободные и нацеленные прожекторы во многом схожи, но приемы их создания различаются. Нацеленный прожектор, состоящий из двух объектов — собственно прожектора и мишени в виде объекта-пустышки, — создается на координатной плоскости активного окна проекции таким образом, что его конус световых лучей виден сбоку, как показано на рис. 11.22.
Понимая важность и сложность выбора выигрышного ракурса съемки, разработчики mах 7.5 предусмотрели для управления камерами целый ряд специализированных инструментов. Познакомимся с этими инструментами, располагающимися в уже знакомой вам группе кнопок управления окном проекции в правом нижнем углу экрана max 7.5.
Как только вы активизируете окно проекции любой из камер сцены, группа кнопок управления окном проекции принимает вид, показанный на рис. 11.68.
Подсветка (Ambient Lighting) — это равномерное освещение поверхностей всех объектов рассеянным светом, создающее общий световой фон сцены. Чем выше уровень подсветки, тем ярче становятся цвета поверхностей объектов. Подсветка может иметь цвет, который проявляет себя в местах сцены, куда не проникают прямые лучи света, то есть в теневых областях поверхностей объектов.
Для настройки параметров подсветки выполните следующие действия:
1. Выберите команду меню Rendering > Environment (Визуализация > Внешняя среда). Появится окно диалога Environment and Effects (Внешняя среда и эффекты), раскрытое на вкладке Environment (Внешняя среда). Верхняя часть этой вкладки со свитком Common Parameters (Общие параметры) показана на рис. 11.3.
Надеюсь, эта глава помогла вам усовершенствоваться в вопросе придания визуального правдоподобия мертвому виртуальному миру геометрических моделей и сетчатых оболочек. Итак, в этой главе вы узнали о том, что:
как это ни удивительно, в max 7.5 реализовано восемнадцать типов источников освещения сцены, из которых два встроены в программу и не допускают настройки, а шестнадцать других осветителей подразделяются на стандартные (всенаправленные, направленные и прожекторы, а также имитатор света неба) и фотометрические (точечные, линейные и площадные, а также имитаторы света неба и солнца) и находятся полностью в вашей власти; общая освещенность сцены зависит, помимо источников света, еще и от подсветки, цвет и яркость которой допускают настройку; тонированное отображение сцены в окнах проекций mах 7.5 является упрощенным, в связи с чем не проявляются или плохо проявляются такие эффекты освещения, как плавные переходы полутонов, блики или тени, которые можно наблюдать во всей полноте только после визуализации сцены; для выполнения простейшей визуализации сцены не требуется никаких настроек: достаточно лишь активизировать нужное окно проекции и щелкнуть на кнопке Quick Render (Быстрая визуализация) панели инструментов; всенаправленные осветители не так уж примитивны и без них трудно обойтись в любой сцене, претендующей на визуальное правдоподобие; прожекторы и направленные осветители во многом схожи по своим параметрам; для них можно настраивать яркость и цвет света, ширину, «резкость» и форму сечения луча, наличие и тип теней и т. п.; когда осветительное хозяйство разрастается и управляться с ним становится хлопотно, на выручку приходит центральный пульт управления всеми осветителями max 7.5 — окно диалога Light Lister (Список осветителей); обычная визуализация сцены, включающей в свой состав источники света, не дает возможности увидеть эффекты освещения объектов непрямым светом, то есть световыми лучами, многократно отразившимися от других объектов, но в max 7.5 есть два способа воспроизвести этот эффект, называемый глобальной освещенностью; первый из двух алгоритмов расчета глобальной освещенности, Light Tracer (Трассировщик света), более прост в настройке и дает вполне приличные на вид результаты, хотя и не отвечающие строгой физике, а второй алгоритм, Radiosity (Перенос излучения), применяют, когда нужно с фотометрической точностью воспроизвести освещение интерьера светильниками с заданной мощностью излучения; хотя в окне проекции Perspective (Перспектива) можно наблюдать сцену в привычном для глаз виде, истинную гибкость и удобство в выборе выигрышных ракурсов съемки обеспечивают только модели камер; воображаемые объективы камер max 7.5, как и объективы реальных фото- или видеокамер, могут иметь различные фокусные расстояния и регулируются по ширине поля зрения; приемы создания нацеленных и свободных камер во многом схожи с приемами создания нацеленных и свободных прожекторов; виртуальные камеры max 7.5 позволяют имитировать эффект ограниченной глубины резкости снимка, без которого результирующее изображение часто выглядит искусственно, причем наблюдать этот эффект можно даже в окнах проекций, что немаловажно при настройке.Все эти вновь приобретенные знания были подкреплены получением практических навыков размещения и настройки осветителей и камер в ходе выполнения многочисленных упражнений.
Следующим шагом в работе над композицией сцены будет освоение материалов, без которых даже самая лучшая геометрическая модель выглядит безжизненной. Но прежде мы познакомимся с одной из наиболее заметных новинок max 7.5 -модулем для создания шерсти и волос.
Итак, осветительное хозяйство нашей сцены стало достаточно сложным: оно включает в свой состав шесть всенаправленных осветителей и два свободных прожектора. Более сложные сцены, имитирующие, скажем, картину улицы вечернего города, могут содержать еще большее число источников света. Управляться с таким хозяйством уже не так-то просто. Чтобы настроить или даже проконтролировать параметры того или иного осветителя, его требуется обязательно выделить в сцене и переключиться на командную панель Modify (Изменить). Представьте, что вам потребовалось несколько уменьшить яркость всех шести всенаправленных ламп. Чтобы проделать это, придется шесть раз выполнить операцию выделения соответствующего источника непосредственно в окнах проекций или с помощью окна диалога Select Objects (Выделение объектов) и шесть раз обратиться к командной панели. Поневоле захочешь иметь какое-то подобие центрального пульта управления всеми осветителями сцены. И такой пульт есть в mах 7.5! Это окно диалога Light Lister (Список осветителей). Попробуем его освоить.
Загрузите в max 7.5 сцену, с которой мы работали в предыдущем упражнении. Раскройте меню Tools (Сервис) и выполните команду Light Lister (Список осветителей). Появится окно диалога с таким же названием, показанное на рис. 11.38. Это немодальное окно, так что наличие его на экране не мешает работе с остальными элементами интерфейса mах 7.5 или с объектами в окнах проекций.
Отражения световых лучей происходят многократно, пока свет не утратит свою энергию за счет частичного поглощения освещаемыми предметами и рассеивания на мельчайших пылинках, взвешенных в воздухе. Если отражающие объекты имеют характерную окраску, то и отраженные от них лучи света приобретают определенный цветовой оттенок. Например, объект красного цвета поглощает световые лучи всех цветов, кроме красного. Отраженные от такого объекта красные лучи будут придавать близко расположенным к нему предметам красноватый оттенок. Освещенность предметов реального мира, определяющаяся не только прямыми лучами света от источника освещения, но и лучами, отраженными от других предметов окружающей обстановки, и называется в трехмерной графике глобальной освещенностью (Global Illumination).
Вот в чем состоят основные достоинства учета глобальной освещенности:
с учетом переотражений от объекта к объекту в сцене часто оказывается достаточно света даже от единственного источника; автоматически формируются полупрозрачные тени, если затененные области дополнительно подсвечиваются лучами, отраженными от объектов сцены; автоматически воспроизводится такое характерное для реального мира явление, как цветовое тонирование объектов светом, отраженным от других объектов, имеющих выраженную цветовую окраску.Расчет глобальной освещенности требует значительного времени и вычислительных ресурсов компьютера, а также предъявляет определенные требования к конструкции геометрических моделей сцены. Получение хороших результатов с использованием методов расчета глобальной освещенности требует терпения, так как часто приходится действовать методом проб и ошибок.
Разработчики программы mах 7.5 пошли на то, чтобы включить в ее состав два различных алгоритма расчета глобальной освещенности: Light Tracer (Трассировщик света) и Radiosity (Перенос излучения), потому что каждый из них имеет свои особенности и области применения. В дальнейшем мы вкратце познакомимся с каждым из них.
Помимо этого, глобальная освещенность может рассчитываться имеющимся в составе шах 7.5 модулем визуализации mental ray. В числе стандартных осветителей имеются два, предназначенные для использования совместно с этим модулем. Их наименования включают буквы mr (от слов mental ray). Кроме того, большинство источников света приобрело дополнительные параметры, позволяющие настроить их свойства применительно к данному модулю визуализации. Свитки таких параметров отсутствуют на панели Create (Создать) и появляются только при переключении при выделенном осветителе на панель Modify (Изменить). Названия этих свитков также включают слова mental ray.
При использовании двух встроенных источников лучи одного из них падают на объекты спереди из левого верхнего угла сцены, а другого — сзади из правого нижнего угла. Такое освещение выглядит мягче и естественнее, как показано на рис. 11.2, справа. Считается, что ценой этого является более длительная перерисовка изображения в тонированных режимах просмотра. Должен, однако, сказать, что ощутить это замедление при реальном быстродействии современных компьютеров практически не удается.
Встроенные источники не способны формировать тени от объектов, поэтому создаваемое ими освещение никогда не будет выглядеть полностью достоверно. Их основное назначение — обеспечивать хоть какую-то видимость предметов в абсолютно темном трехмерном виртуальном мире на этапе формирования геометрии сцены. Итоговая визуализация, претендующая на достоверность воспроизведения реальности, всегда нуждается в создании, по крайней мере, двух-трех осветителей.
Как только создается новый осветитель, встроенное освещение отключается. При удалении всех осветителей восстанавливается освещение сцены встроенными источниками света. Можно заставить max 7.5 использовать принятые по умолчанию источники света даже при наличии в сцене осветителей, чтобы, например, «почувствовать разницу» в исходном и привнесенном освещении. Это делается следующим образом:
1. Выберите команду главного меню Customize > Viewport Configuration (Настройка > Конфигурация окон проекций) или щелкните на имени любого окна проекции правой кнопкой мыши и выберите в меню окна команду Configure (Конфигурировать). В появившемся окне диалога выберите вкладку Rendering Method (Метод визуализации).
2. Установите флажок Default Lighting (Исходное освещение), и max 7.5 будет использовать встроенные источники даже после того, как вы создадите собственные осветители.
3. Чтобы указать, на какие окна проекций должен распространяться выбранный режим освещения, установите переключатель Apply To (Применять к) в одно из трех положений: Active Viewport Only (Только активное окно), All Viewports (Все окна проекций) или All but Active (Все, кроме активного). Завершив настройку, щелкните на кнопке ОК.
Впрочем, исходное освещение сцены не ограничивается только двумя встроенными источниками света. Не забывайте о том, что кроме них существует подсветка, к рассмотрению которой мы и переходим.
2. Для настройки цвета и интенсивности подсветки щелкните на образце цвета Ambient (Подсветка), расположенном в правой части раздела Global Lighting (Общая освещенность) свитка Common Parameters (Общие параметры) этого окна диалога. Появится типовое окно диалога Color Selector: Ambient Light (Выбор цвета: окружающая подсветка). По умолчанию в max 7.5 подсветка полностью отсутствует, и объекты в области тени имеют черный цвет с RGB-компонентами (0; 0; 0).
3. Подберите нужный цвет и яркость подсветки, наблюдая за изменением общей освещенности сцены, и закройте окно диалога Environment and Effects (Внешняя среда и эффекты). Для примера на рис. 11.4 показан результат изменения цвета подсветки с исходного значения, соответствующего изображению на рис. 11.2, справа, до чисто-белого цвета с RGB-компонентами (255; 255; 255).
2. Щелкните на кнопке источника света требуемого типа. В нижней части командной панели появятся свитки параметров, состав которых зависит от выбранного типа осветителя. Например, если выбрать инструмент создания стандартного осветителя Omni (Всенаправленный) или фотометрических осветителей Target Point (Точечный нацеленный), Free Point (Точечный свободный), то в нижней части панели появятся свитки Name and Color (Имя и цвет), General Parameters (Общие параметры), Intensity/Color/Attenuation (Интенсивность/цвет/ затухание), Shadow Parameters (Параметры тени), Shadow Map Params (Параметры карты тени) и Advanced Effects (Дополнительные эффекты), как показано на рис. 11.6. При выборе инструментов создания стандартного прожектора, как свободного, так и нацеленного, дополнительно к названным появится свиток Spotlight Parameters (Параметры прожектора), а при выборе инструментов создания нацеленного и свободного стандартных направленных осветителей — свиток Directional Parameters (Параметры направленного света). При выборе инструментов создания линейных фотометрических источников света на командной панели Create (Создать) появляется дополнительный свиток Linear Light Parameters (Параметры линейного осветителя), содержащий единственный счетчик Length (Длина), который позволяет задать длину линейного источника света. Соответственно, при выборе инструментов создания площадных стандартных и фотометрических источников появляется дополнительный свиток Area Light Parameters (Параметры линейного осветителя). Осветитель IES Sun (IES-солнце) не имеет свитков General Parameters (Общие параметры) и Intensity/Color/Attenuation (Интенсивность/цвет/затухание), но зато снабжается свитком Sun Parameters (Параметры солнца). Наконец, все параметры осветителя IES Sky (IES-небо), помимо цвета и имени, помещаются в единственном свитке IES Sky Parameters (Параметры IES-неба).
3. Щелкните в точке любого окна проекции, где должен располагаться источник света, и выполните действия по созданию источника. Эти действия различаются в зависимости от типа источника и будут рассмотрены ниже. Настройте параметры источника света. Это можно сделать или сразу же после его создания, или позднее, выделив источник и перейдя на командную панель Modify (Изменить). В этом случае свиток Name and Color (Имя и цвет) будет отсутствовать, а к названным свиткам параметров добавляется еще один, Atmospheres & Effects (Атмосфера и эффекты), с помощью которого можно настраивать параметры различных спецэффектов, реализуемых с помощью осветителей, наподобие лучей света в тумане или пыльной комнате. Это свиток отсутствует только у осветителя IES Sky (IES-небо).
Подходы к имитации освещения, реализуемого с использованием новейших, требующих большого времени на вычисления, алгоритмов расчета глобальной освещенности и без них, сильно различаются. Начинать изучение, на мой взгляд, следует с приемов имитации освещения без учета глобальной освещенности, так как они более просты в настройке и использовании. При этом можно ограничиться только стандартными осветителями, так как нам не требуется обеспечивать фотометрическую точность результатов моделирования.
Скажу сразу, что если не производить расчет глобальной освещенности, то практически никогда не удается обойтись в составе сцены одним осветителем, какого бы типа он ни был. Отсутствие учета переотражений световых лучей приводит к нехватке освещенности, которую приходится восполнять за счет добавления вспомогательных источников света. В 3D-графике даже введены специальные понятия: ключевой осветитель {key light) и источник подсветки (fill light).
3. Теперь попробуем изменить уровень интенсивности света. Это делается с помощью счетчика Multiplier (Усилитель). Чем выше значение в поле счетчика, тем ярче становятся все освещаемые поверхности. На рис. 11.10 показано, как будет выглядеть та же сцена, что и на рис. 11.8, если увеличить значение параметра Multiplier (Усилитель) с принятого по умолчанию значения 1,0 до 1,5.
2. С помощью переключателей в правой верхней части окна установите тип операции — Exclude (Исключить) или Include (Включить), а также укажите, должно ли исключение источника света влиять на освещение выбранных объектов (Illumination), на отбрасывание ими теней (Shadow Casting) или на то и другое одновременно (Both).
3. Выделите имена нужных объектов сцены в списке Scene Objects (Объекты сцены) в левой части окна. В список, расположенный справа, помещаются объекты, для которых исключено (или включено, в зависимости от выбранной операции) влияние источника света. Пусть, к примеру, это будут объекты-группы Lampa01 и Lampa02, которые пока ярко освещены. Для переноса имен объектов в правый список выделите их в левом списке и щелкните на кнопке со сдвоенной стрелкой, указывающей вправо. Щелкните на кнопке ОК и визуализируйте сцену в окне проекции Perspective (Перспектива). Вы увидите, что теперь эти две лампы выглядят совершенно черными, как показано на рис. 11.12, так как не освещаются единственным имеющимся в сцене осветителем.
2. Для большинства осветителей но умолчанию в раскрывающемся списке раздела Shadows (Тени) в свитке General Parameters (Общие параметры) выбираются тени типа Shadow Map (Карта теней). Исключение составляют осветители, для которых выбирается вариант Ray Traced Shadows (Трассированные тени). Особенности этого варианта будут рассмотрены ниже. Тени типа Shadow Map (Карта теней) рассчитываются как центральные проекции освещаемых объектов из точки расположения осветителя на затеняемые поверхности сцены. Метод карт теней позволяет быстро строить тени с мягкими, слегка размытыми краями. Чтобы рассмотреть особенности теней данного типа, увеличьте изображение в окне проекции Perspective (Перспектива), чтобы ближний к зрителю настенный светильник занимал почти все окно, и выполните визуализацию изображения. Как видно на рис. 11.15, тень светильника на стене действительно имеет мягкие, размытые края. Основным параметром тени типа Shadow Map (Карта теней) является размер карты теней, от которого зависит, насколько детально будут прорисованы границы теневой области. Этот параметр задается счетчиком Size (Размер) в свитке Shadow Map Parameters (Параметры карты теней). По умолчанию этот размер выбирается равным 512, что означает разбиение картинки при расчете карты тени на 512x512 элементарных участков. Если значение размера карты уменьшить, скажем, до 256, четкость краев тени снижается, как видно на рис. 11.15, справа. Соответственно, при увеличении параметра четкость границ возрастает, но увеличивается и время визуализации картинки.
3. Чтобы сымитировать некоторую подсветку области тени лучами света, многократно отражающимися от потолка и стен комнаты, можно уменьшить плотность тени, задаваемую счетчиком Dens. (Плотность) в свитке Shadow Parameters (Параметры тени). По умолчанию плотность тени равна 1, но если уменьшить это значение, тени станут прозрачнее, как показано на рис. 11.16.
4. Теперь раскройте список типов теней в свитке General Parameters (Общие параметры). Вы увидите в нем пять типов теней: помимо уже знакомого нам типа Shadow Map (Карта теней), в списке имеются еще тени типа Adv. Ray Traced (Усовершенствованные трассированные), Ray Traced Shadows (Трассированные тени), mental ray Shadow Map (Карта теней mental ray) и Area Shadows (Площадные тени). Выберите вариант Ray Traced Shadows (Трассированные тени). В этом случае тени формируются как зоны, недоступные для воображаемых лучей света, путь которых отслеживается (трассируется) от источника до глаз наблюдателя. Метод трассировки применяется для имитации точных по форме теней с резко очерченными краями. Вновь визуализируйте изображение в окне проекции Perspective (Перспектива), чтобы получить картину, подобную показанной на рис. 11.17. Трассированные тени являются более правильными геометрически, но для их визуализации требуется большее время. Аналогичными свойствами обладают тени типа Adv. Ray Traced (Усовершенствованные трассированные), которые имеют дополнительные параметры для настройки в случаях, когда такие тени отбрасываются новыми площадными фотометрическими осветителями. Эти дополнительные параметры помещаются в свитках Adv. Ray Traced Params (Параметры усовершенствованных трассированных теней) и Optimizations (Оптимизация), рассмотрение которых выходит за рамки наших задач. Тени типа mental ray Shadow Map (Карта теней mental ray) могут использоваться только в том случае, если сцена визуализируется с использованием модуля mental ray. При использовании стандартного модуля визуализации тени данного типа будут полностью отсутствовать.
5. Трассированные тени, безусловно, хороши, но и они не выглядят достаточно естественными из-за своей чрезмерной резкости. В реальной жизни чаще всего встречаются тени, края которых становятся все более нерезкими по мере удаления от объекта. Дело в том, что в реальной жизни осветители никогда не являются точечными, то есть не испускают лучи света из одной точки, как стандартные осветители max 7.5. Если же область, из которой исходит свет, имеет определенные конечные размеры, то и границы тени не будут резкими. Действительно, ведь в этом случае на той поверхности, куда падает тень, можно найти точки, для которых источник света заслоняется объектом, отбрасывающим тень, не целиком, а только частично. Эти-то точки и образуют постепенно сходящую на нет границу теневой области. В max 7.5 проблемы формирования геометрически правильных теней с границами, резкость которых убывает по мере удаления от объекта, не существует. Для получения подобных теней служат площадные источники света и тени типа Area Shadows (Площадные тени), которые могут формироваться применительно к осветителям любого типа. При использовании площадных теней любой осветитель заменяется воображаемой совокупностью точечных источников света, равномерно размещенных в пределах области заданной формы и размеров. Итак, выберите в раскрывающемся списке свитка General Parameters (Общие параметры) вариант Area Shadows (Площадные тени) и визуализируйте изображение сцены, показанной ранее на рис. 11.13. В результате должно получиться изображение, подобное приведенному на рис. 11.18.
6. Настройка параметров площадных теней производится в свитках Area Shadows (Площадные тени) и Optimizations (Оптимизация), появляющихся в нижней части панели Modify (Изменить). В частности, в раскрывающемся списке раздела Basic Options (Базовые настройки) свитка Area Shadows (Площадные тени) можно выбрать один из пяти вариантов формы источника света, которая будет учитываться при расчетах теней:
Simple (Простой) — источник света рассматривается как точечный и расчет площадных теней не производится. Этот вариант применяют при предварительных тестовых визуализациях для экономии времени;
Rectangle Light (Прямоугольный источник) — свет испускается точечными излучателями, упорядоченными в виде прямоугольной решетки; Disc Light (Дисковый источник) — свет испускается точечными излучателями, распределенными вдоль концентрических окружностей; Box Light (Прямоугольный трехмерный источник) — свет испускается точечными излучателями, упорядоченными в виде прямоугольной трехмерной решетки; Sphere Light (Сферический источник) — свет испускается точечными излучателями, распределенными в пределах сферы.Обратите внимание на то, что выбор формы воображаемого излучателя света никак не сказывается на изображении значка настраиваемого осветителя в окнах проекций. При выборе любого из протяженных источников света задайте его воображаемые размеры Length (Длина), Width (Ширина) и Height (Высота) в разделе Area Light Dimensions (Размеры площадного источника). Изображение, показанное ранее на рис. 11.18, сформировано при размерах источника света прямоугольной формы 25,4x25,4 см.
3. В качестве временной меры до момента назначения материалов проделайте аналогичную процедуру отключения отбрасывания тени применительно к объекту Okno, так как свет изнутри кафе должен свободно проникать наружу, и наоборот.
2. Задайте для четырех осветителей значение параметра Multiplier (Усилитель) равным 0,5, установите флажок On (Вкл.) в разделе Shadows (Тени) свитка General Parameters (Общие параметры) и убедитесь в том, что тени имеют тип Shadow Maps (Карты теней). Для всех остальных параметров оставьте значения, принятые по умолчанию. Выполните визуализацию изображения сцены. Появление в сцене нескольких источников света, освещающих ее с разных сторон, создаст весьма реалистичную картину мягких переплетающихся теней, как показано на рис. 11.21.
3. Создайте еще один, шестой Всенаправленный осветитель, и поместите его «на улице» перед фасадом здания кафе, в районе точки с координатами (-40; -650; 305). Задайте для него значение параметра Multiplier (Усилитель) равным 0,7 и установите режим отбрасывания теней типа Shadow Maps (Карты теней). Без этого осветителя стена кафе снаружи выглядела бы совсем черной. Чтобы этот осветитель не влиял на режим столь тщательно настроенного нами освещения предметов интерьера кафе, включите в число освещаемых им из всех объектов сцены только следующие: Viveska, Fasad, Osnovanie sceni, Fundament, Okno, Dveri, Stupenka, а также Snow01, Snow02 и Valik01-Valik03. Для этого, как вы помните, придется установить переключатель в окне диалога Exclude/Include (Включение/Исключение) в положение Include (Включить) и переместить имена упомянутых объектов в правую часть окна диалога. В заключение сохраните файл сцены под заданным еще в первом упражнении именем MAX-kafe09.max.
Итак, со всенаправленными осветителями мы разобрались, заодно испробовав массу параметров, имеющих столь же важное значение и для других типов стандартных и фотометрических осветителей. Надеюсь, теперь вы четко осознаете, что всенаправленные осветители играют весьма серьезную роль в формировании световой композиции трехмерной сцены. Впрочем, в нашем случае все эти осветители не относятся к числу ключевых, они лишь компенсируют дефицит освещенности по углам кафе. Виртуальный трехмерный мир сродни театральной сцене, а там не обойтись без прожекторов, способных выхватить из мрака тот или иной предмет или персонаж, чтобы приковать к нему внимание зрителя.
Значок прожектора имеет вид миниатюрного конуса, значок мишени — вид маленького кубика, оба желтого цвета. Голубовато-серым цветом обозначается внешняя граница конуса света, за пределами которой интенсивность света прожектора равна нулю. Если рассматривать пятно света, оставляемое прожектором на плоской преграде, то внешней границе конуса света будет соответствовать край пятна (Falloff). Светло-голубым цветом обозначается граница области, в пределах которой интенсивность света остается постоянной. Эта область носит название яркого пятна (Hotspot). В кольцевой области между ярким пятном и наружным краем пятна свет постепенно затухает от максимальной яркости до нуля. Размеры яркого пятна и его внешней кромки задаются в градусах при вершине конуса лучей прожектора. Светло-голубая линия, соединяющая значки прожектора и мишени, носит название оси осветителя. Если щелкнуть на ней кнопкой мыши, то значки прожектора и мишени выделятся одновременно. Это позволяет перемещать нацеленный осветитель, не изменяя ориентации его оси. Если же перемещать отдельно значок прожектора, то мишень будет оставаться на месте, обеспечивая постоянную нацеленность пучка света на выбранную точку сцены. И наоборот, если перемещать мишень, то на месте будет оставаться значок прожектора, изменяя только свою ориентацию в направлении на мишень.
Свободные прожекторы не имеют мишени и при создании ориентируются так, чтобы ось конуса света была перпендикулярна координатной плоскости активного окна проекции. При этом конус света виден сверху, как показано на рис. 11.23.
Свободный прожектор имеет те же элементы, что и нацеленный, за исключением мишени. При перемещении свободного прожектора ориентация его оси не меняется. Чтобы изменить ориентацию оси такого прожектора, необходимо применить к его значку преобразование поворота.
4. Перейдите в окно проекции Front (Вид спереди) и, выделив одновременно со значком прожектора значок его мишени, переместите их вверх, так чтобы прожектор оказался примерно посередине высоты помещения кафе. Нижний край конуса света прожектора должен располагаться несколько ниже уровня пола кафе, как показано на рис. 11.25.
5. Переключитесь на командную панель Modify (Изменить) и настройте параметры прожектора. Установите яркость света в счетчике Multiplier (Усилитель) равной 1,5 и включите режим отбрасывания теней, установив флажок On (Вкл.) в разделе Shadows (Тени) свитка General Parameters (Общие параметры). Выберите в качестве типа теней вариант Ray Traced Shadows (Трассированные тени). Выключите все шесть всенаправленных осветителей, ранее введенных в состав сцены.
6. Увеличьте изображение в окне проекции Perspective (Перспектива), так чтобы пятно света еще умещалось в окне целиком. Выполните визуализацию изображения в этом окне, чтобы получить результат, подобный показанному на рис. 11.26. Пятно света освещает стену и часть пола; вся остальная сцена погружена во мрак.
Не закрывайте max 7.5, мы будем продолжать работу с этим прожектором.
Опробуйте еще одну возможность max 7.5, позволяющую менять размеры параметров Hotspot/Beam (Яркое пятно/Луч) и Falloff/Field (Край пятна/Поле) в интерактивном режиме с помощью мыши прямо в окнах проекций. Чтобы воспользоваться таким способом настройки, создайте осветитель-прожектор, после чего щелкните на кнопке Select and Manipulate (Выделить и манипулировать). Если прожектор выделен, то окружности, изображающие границы яркого пятна и его края, сразу примут зеленую окраску, указывающую на готовность к интерактивной настройке. Если же прожектор не выделен, то для включения режима интерактивной настройки выделите его, щелкнув на значке источника. Установите курсор на одну из окружностей. Она приобретет красный цвет, а во всплывающем окне появится сообщение о текущем размере изменяемого параметра, например: Spot01 [Falloff: 41,44], как показано на рис. 11.30. Щелкните кнопкой мыши и перетаскивайте курсор вверх или вниз по экрану, наблюдая за изменением диаметра окружности и численным значением параметра во всплывающем окне или в соответствующем счетчике командной панели.
Закончив эксперименты с нацеленным прожектором, удалите его, но не закрывайте файл сцены, не сохраняйте его и не выходите из программы: нам предстоит выполнить последний этап настройки освещения сцены «МАХ-кафе».