Рис. 13.11. Отражения на капоте, полученные от объектов сцены
Рис. 13.12. Взаимное расположение объектов сцены при построении отражений от поверхности полусферы
Последний способ – организовать в сцене присутствие дополнительных плоскостей с текстурами, которые будут отражаться в кузове автомобиля. Он допускает относительную свободу в распределении отражений по поверхности кузова автомобиля и их контроль.
Именно четвертый метод будет рассмотрен немного позже как самый подходящий для этой задачи. Сейчас создадим еще один материал – стекло. Это позволит настраивать отражения не только на кузове, но и на стеклах автомобиля, которые также являются отражающей поверхностью и занимают значительное место в восприятии целостного изображения.
Можно использовать прозрачное стекло, но я предпочитаю немного тонированное, чтобы скрыть объекты салона, сделанные с малым количеством полигонов и не перегружающие сцену. И лобовое, и заднее стекла имеют темную обводку по периметру, поэтому начните работу с присвоения этим объектам текстурных координат. Рассмотрим данный процесс для лобового стекла (для заднего он аналогичен). Для этого выполните следующие действия.
1. В любом окне проекции выделите лобовое стекло (должно быть отдельным объектом или как минимум самостоятельным элементом с уникальным значением параметра ID (Идентификатор материала)).
2. Добавьте модификатор Unwrap UVW (Расправить UVW-проекцию), выполнив команду Modifiers ► UV Coordinates ► Unwrap UVW (Модификаторы ► UV-координаты ► Расправить UVW-проекцию).
3. Щелкните на кнопке Edit (Редактирование), в результате чего откроется окно редактирования текстурных координат.
4. В меню окна редактирования текстурных координат выполните команду Mapping ► Flatten Mapping (Проекционные координаты ► Плоские проекционные координаты) и, не меняя настроек в появившемся окне, нажмите OK.
В результате этих операций в окне редактирования должна появиться развертка лобового стекла, показанная на рис. 13.13.
Полученную развертку необходимо скопировать в любую программу для работы с растровыми изображениями, где вы сможете сделать карту маски (например, Adobe Photoshop).
СОВЕТ
Если вы не пользуетесь программами захвата изображения с экрана, то копирование можно провести через буфер обмена, нажав клавишу Print Screen (расположена справа от ряда функциональных клавиш) и затем вставив экранную копию в файл при помощи сочетания клавиш Ctrl+V (стандартная операция вставки из буфера обмена).
Используйте скопированное изображение в качестве слоя фона в приложении растровой графики и сделайте маску для лобового стекла. Если помните, по периметру стекла идет темная, почти черная, тонировка – именно ее необходимо сделать, выполнив отступы на небольшое расстояние от краев контура стекла (рис. 13.14).
Сохраните полученное изображение в цветовом режиме Grayscale в любом доступном формате.
В качестве материала для лобового стекла я использую Blend (Смешиваемый), где первый материал – тонированная окантовка стекла, второй – стекло, а маска (созданный в программе Adobe Photoshop файл GlassFront.jpg) управляет долей каждого материала в результирующем (рис. 13.15).
Рис. 13.13. Развертка проекционных координат лобового стекла автомобиля
Рис. 13.14. Текстурная маска для материала лобового стекла
Рассмотрим материал стекла подробнее. Параметр Material 1 (Материал 1) – окантовка лобового стекла. Здесь используется материал Standard (Стандартный) с прозрачностью, равной 80, и цветом, соответствующим тому, который вы хотите видеть на краях стекла. У меня это серо-коричневый цвет для Diffuse (Цвет рассеивания) и для Ambient (Цвет подсветки) с настройками Red (Красный) – 107, Green (Зеленый) – 103, Blue (Синий) – 99. В качестве карты Reflection (Отражение) я использовал карту Falloff (Спад), настройки которой идентичны установкам такой же карты, использованной при создании материала кузова, с той разницей, что величина параметра Reflection (Отражение) в данном случае составляет 45 (рис. 13.16).
Рис. 13.15. Настройки материала Blend (Смешиваемый) для лобового стекла
Рис. 13.16. Настройки первого материала стекла
Параметр Material 2 (Материал 2) – средняя часть лобового стекла (его заполнение). Материал сделан по тому же принципу, что и окантовка, с той разницей, что я использовал немного другой цвет и величина прозрачности здесь составляет уже 35, а отражений – 80. Для Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) заданы следующие значения: Red (Красный) – 83, Green (Зеленый) – 72, Blue (Синий) – 49. Кроме того, я применяю двусторонний материал, а в качестве тонированной раскраски стандартного материала – Phong (По Фонгу), и хотя большой разницы нет, раскраска по Фонгу позволяет получить более мягкое сглаживание.
Если вы внимательно посмотрите на свиток Maps (Карты текстур), то заметите, что отсутствует карта преломления в строке Refraction (Преломления). Хотя стекло и является материалом, преломляющим свет, проходящий через него, но из-за его незначительной толщины и с учетом расстояния, с которого автомобиль будет визуализироваться, я не считаю нужным использовать в данном случае преломления. Эффект от их применения почти незаметен, а процессор получает ощутимую дополнительную нагрузку. При желании вы можете поэкспериментировать, используя карту Raytrace (Трассировка) или Reflect/Refract (Отражение/ преломление). На рис. 13.17 показаны использованные мною настройки второго материала для лобового стекла автомобиля.
Продолжим разговор об организации сцены и вернемся к отражениям. Дальнейшую работу продолжите, используя четвертый способ получения отражений при помощи дополнительных плоскостей. Для этого поместите в сцену несколько примитивов Plane (Плоскость): один должен быть расположен сверху (имитировать небо), оставшиеся (от четырех до восьми) располагаются по сторонам автомобиля. Все плоскости должны находиться на небольшом расстоянии от автомобиля (рис. 13.18).
Рис. 13.17. Настройки второго материала стекла
При создании плоскостей не забудьте проследить, чтобы их нормали были обращены к автомобилю. После этого присвойте плоскостям текстуры с изображениями, которые будут отражаться в автомобиле. Для всех плоскостей, кроме плоскости неба, я использовал одну фотографию, хотя можно и разные – дело вкуса.
Перед выполнением визуализации необходимо изменить параметры всех плоскостей. Для этого выполните следующие действия.
1. В любом окне проекции выделите все плоскости, построенные для генерации отражений.
2. Щелкните правой кнопкой мыши на выделении, в результате чего откроется контекстное меню.
Рис. 13.18. Расположение плоскостей с текстурами отражения в окнах проекций программы 3ds Max
3. Выберите пункт Object Properties (Свойства объекта).
4. В области Rendering Control (Управление визуализацией) появившегося окна Object Properties (Свойства объекта) задайте параметрам объекта значения, показанные на рис. 13.19.