Голливуд на дому, или 3DS MAX
Голливуд на дому, или 3DS MAX
В прошлой статье я попытался показать процесс создания несложной анимации. Это был костер, оставленный неким незадачливым туристом догорать посреди унылого осеннего поля. До настоящей фотореалистичности нашему произведению, конечно, далеко, однако вряд ли кто-нибудь ждал потрясающих результатов сразу. Как бы то ни было, надеюсь, что первый блин не получился комом, и вы преодолели все превратности взаимодействия с такой сложной программой, как 3DS Max 4. Сегодня мы будем делать море. Да-да, настоящее море с волнами и чистой, прозрачной водой. Если постараетесь, то результат будет довольно реалистичным. Что ж, приступим. В окне проекции Тор создайте четырехугольный кусок Безье. Это можно сделать, щелкнув в правом углу кнопку Создать геометрию (Create/Geometry). В раскрывающемся списке выбрать Path Grid и затем нажать кнопку Quad Path. Она засветится желтым цветом. Чуть ниже вы увидите раскрывающиеся меню Keyboard Entry (Клавиатурный ввод) и Parameters (Параметры). Откройте Keyboard Entry, задайте Length и Width (Длину и Высоту) равными 1500, затем нажмите кнопку Create. В окнах проекций появится плоскость, которая и является куском Безье. По этому случаю следует отметить, что моделирование, основанное на кусках Безье, может рассматриваться как потенциально пригодное для имитации объектов органики. Однако оно слишком сложно для начинающих, поэтому я не буду касаться его в последующих статьях. В нижнем правом углу окна программы нажмите кнопку Zoom extents All, чтобы увидеть все объекты сцены. Теперь создадим камеру, через которую и будет производиться наша виртуальная съемка моря. В прошлый раз мы уже вводили в состав сцены камеру, так что закрепим пройденный материал. 1. Нажмите на командной панели Create (Создать) кнопку Cameras (Камеры) . 2. Щелкните на кнопке Free (Свободная) и в окне проекции Front создайте камеру. Переместите ее в точку с координатами x: y: z = 0,0: 0,0: 20,0. Для этого сначала выделите, а затем щелкните правой кнопкой мышки значок Select and Move и введите в полях Absolute: World указанные выше координаты. Щелкните правой кнопкой на виде перспективы, чтобы сделать окно активным, и нажмите на клавиатуре "С". В окне появится вид через камеру вашего моря. Сейчас мы создадим фон. Это будет стандартная фотография неба, входящая в поставку Макса. Выберите Rendering/Environment и щелкните на большой кнопке None в верхней части окна Environment (меню Background), появится окно Material/Map Browser. Там выберите пункт Mtl. Library (Библиотека материалов), в появившемся списке найдите Sky_Cloud2 или любой другой файл с изображением неба и нажмите ОК. Закройте окно Environment. Теперь нужно создать материал для моря. В прошлых статьях я уже рассказывал о редакторе материалов, однако делал это вскользь, не обращая внимания на детали. Настала пора остановиться более подробно на столь замечательном инструменте воплощения своих художественных замыслов. Для вызова окна Редактора материалов следует выбрать в меню Rendering (Визуализация) команду Material Editor (Редактор материалов). Основными элементами окна диалога Material Editor, показанного на рисунке 1, являются ячейки образцов материалов, кнопки инструментов управления редактором материалов и свитки параметров.
Рис.1 Ячейки образцов материалов представляют собой объекты (по умолчанию шары), которые позволяют увидеть, как будет выглядеть материал после его визуализации в составе сцены. Если два раза кликнуть левой кнопкой мыши по ячейке, откроется ее увеличенный вариант. Щелчок на кнопке (тип образца) позволяет изменить вид шара на другие виды, которые иногда нужны для правильного наложения текстур. Также вокруг ячеек образцов материалов находятся другие кнопки управления, некоторые из них будут вам часто необходимы во время работы: Get Material (Получить материал) — позволяет загрузить готовый материал или создать новый. Нажатие кнопки вызывает появление окна диалога Material/Map Browser (Просмотр материалов и карт текстур). Assign Material to Selection (Назначить материал выделению) — позволяет назначить материал из активной ячейки образца всем выделенным объектам сцены. Go to Parent (Перейти к основному материалу) — позволяет перейти с уровня правки компонентов — материала или текстуры — на более высокий уровень работы с составным материалом, объединяющим эти компоненты. С назначением остальных кнопок мы будем знакомиться по мере необходимости. В 3D StudioMAX материалы подразделяются на стандартные и составные. Сходство с реальными объектами стандартным материалам обеспечивает введение характеристик диффузного рассеивания, зеркального отражения, степени блеска поверхности, степени прозрачности и т.д. Для создания и настройки характеристик стандартных материалов предназначены свитки Редактора материалов (рис.2): Shader Basic Parameters (Базовые параметры раскраски), Blinn Basic Parameters (Базовые параметры тонирования), Extended Parameters (Дополнительные параметры), Super Sampling (Сверхразрешение), Maps (Карты текстур) и Dynamics Properties (Динамические свойства).
Рис.2
При раскрытии окна Редактора материалов свиток Blinn Basic Parameters (Базовые параметры тонирования) и Shader Basic Parameters (Базовые параметры раскраски) появятся по умолчанию в раскрытом виде. Так, в свитке Shader Basic Parameters (рис.3) можно указать метод тонированной раскраски поверхностей геометрической модели в ходе визуализации материала при помощи раскрывающегося списка. Варианты следующие: Phong (По Фонгу) — метод тонированной раскраски объектов, обеспечивающий сглаживание ребер между гранями и добавляющий блики, Blinn (По Блинну) — метод тонированной раскраски, обеспечивающий сглаживание ребер между гранями и отображение зеркальных бликов. Раскраска по Фонгу и Блинну отлично подходит для имитации таких материалов, как стекло, пластик, фарфор, резина и др. Metal (Металл) — метод тонированной раскраски объектов, имитирующий зеркальный блеск и другие характеристики отражения полированной металлической поверхности; другими методами раскраски мы будем пользоваться редко.
Рис.3
В свитке Shader Basic Parameters также расположены пункты Wire (Каркас), Fase Map (Карта грани), 2-Sided (двухсторонняя) и Faceted (ячеистая). С их назначением попробуйте разобраться сами. В свитке Blinn Basic Parameters (рис.4.) можно настроить цветовые оттенки трех компонентов цвета материала — Ambient (Подсветка), Diffuse (Диффузионный) и Specular (Зеркальный). Используйте при этом группу элементов управления в средней части свитка. Справа от образцов цвета располагаются квадратные кнопки без надписи. Назначение данных кнопок аналогично назначению кнопок свитка Maps (Карты текстур) — щелчок на любой из них раскрывает окно Material/Map Browser (Просмотр материалов и карт текстур). Настроить характеристики зеркальности можно в группе Specular Highlinghts (Степень зеркальности): Specular Level (Уровень зеркальности), Glosiness (Глянцевитость) и Soften (Размытость). Справа от счетчиков располагаются кнопки без надписи, позволяющие выбрать и назначить данной характеристике материала карту текстур. Щелкнув на кнопке без надписи, в появившемся окне Material/Map Browser (Просмотр материалов и карт текстур) можно выбрать текстуру. После выбора текстуры на кнопке появится буква М. Для настройки самосвечения и непрозрачности можно использовать параметры групп Self Illumination (Самосвечение) и Opacity (Непрозрачность).
Рис.4
Сейчас я расскажу, как легко можно сделать собственный материал, пользуясь редактором материалов. Я немного отвлекусь от моря лишь для того, чтобы начать материалостроение с более легкого примера. Итак, свояем фарфоровый шарик. Если хотите, вы можете сохранить начатую работу и, выбрав File/Reset главного меню, создать в новом файле шар, а можете работать непосредственно в Редакторе материалов. 1. Активизируйте первую ячейку Редактора материалов, кликнув по ней мышкой. 2. Установите в свитке Shader Basic Parameters раскраску Phong (По Фонгу). 3. В свитке Phong Basic Parameters нажмите на кнопку напротив строк Ambient (Подсветка) и Diffuse (Диффузионный), чтобы отключить совместное изменение параметров цвета для них (см.рис.4). 4. Щелчком левой кнопки мыши на квадратиках цвета напротив вышеуказанных параметров настройте следующие значения цвета: Ambient — (180, 180, 180), Diffuse — (235, 230, 230), Specular — белый, Specular Level = 100, Glossiness = 85 и Soften = 0,1. 5. Если вы хотите назначить материал какому-либо выделенному объекту, щелкните на кнопке . Затем отрендерьте полученный объект при помощи цепочки действий: Rendering (Визуализация)/Render (Визуализировать)/Render (Визуализировать). В противном случае сохраните материал в Библиотеке материалов щелчком по кнопке Put to Library (Поместить в библиотеку) . Разнообразие способов достижения достоверности объектов существенно расширяется возможностью использования карт текстур, которые представляют собой готовые изображения. Настройка выбранной текстуры на требуемые свойства материала, такие как блики, глянцевитость, блеск и т.д., производятся с помощью установки соответствующих параметров в свитке Maps (Карты текстур) (см.рис.5).
Рис.5
Однако, вернемся к нашим баранам. Теперь, когда вы узнали многое о Редакторе материалов, не составит большого труда продолжить работу над текстурой моря. Вернитесь к сохраненному файлу, который мы сделали в начале статьи. Откройте Редактор материалов. Установите для материала по умолчанию: Specular Level=100, Glossiness=40, Opacity=90. Щелкните на неподписанной кнопке напротив Diffuse или войдите в свиток Maps и щелкните на большой длинной кнопке None напротив надписи Diffuse Color (см.рис.5). В открывшемся списке выберите New, а в правом окошке Gradient и нажмите ОК. Разверните свиток Gradient Parameters и щелкните на кнопке напротив Color №1 и выберите New/Noise. Откройте свиток Noise Parameters и установите размер (Size) 0.05 и параметры цветов по RGB: для одного цвета — (45, 65, 138), а для другого — (87, 122, 155). Вернитесь на один уровень вверх нажатием кнопки и перетащите карту из слота первого цвета в слот второго (см.рис.6).
Рис.6
Выберите метод копирования Copy. Откройте этот слот и установите Size (размер) в свитке Noise Parameters = 0.03. Еще раз вернитесь на один уровень вверх и снова перетащите из слота 2 (напротив Color №2) в слот 3 (напротив Color №3). Установите параметры: Размер = 0.1. Первый цвет — (120, 180, 160), второй цвет — (80, 171, 130). Вернитесь на самый верхний уровень материала — туда, где мы начинали работать с картами нажатием кнопки (см.рис.5) и установите щелчком на кнопке None в качестве карты Bump — Noise c параметрами, приведенными на рисунке 7.
Рис.7
Опять вернитесь на один уровень вверх . В качестве карты Refrlection (Отражение) используем Raytrace (Преломление лучей), что позволит более точно имитировать игру света в воде. Не меняйте никаких установок карты Raytrace, а сразу идите вверх (рис.5). Установите в квадратике Amount напротив надписи Reflection степень воздействия этой карты равной 45 (по умолчанию стоит 100). Материал воды готов. Назначьте материал поверхности моря, не забыв выделить эту самую поверхность . Закройте Редактор материалов и создайте источник света типа Omni. с координатами x = 0, y = 1000, z = 500, как мы это делали в начале статьи. Выделите источник света. Сделайте активным окно вида из камеры (если его нет, нажмите "С" в окне перспективы). Картинку можно рендерить. Для этого в меню Rendering (Визуализация) Главного меню выберите пункт Render (Визуализировать). Дальнейшие действия, надеюсь, вас уже не затруднят, и результат будет удовлетворительным. То, что получилось у меня, показано на рисунке 8 — жаль только, что он черно-белый. На этом я заканчиваю ознакомительную часть своей работы. Для тех, кто заинтересовался, в следующих статьях мы будем разбирать отдельные типы моделирования геометрии сцены и различных эффектов, на примере одной или нескольких сложных художественных композиций. Также стоит упомянуть, что в данной статье использовались некоторые материалы сайта www.render.ru .
Рис. 8
Сташкевич Дмитрий
В прошлой статье я попытался показать процесс создания несложной анимации. Это был костер, оставленный неким незадачливым туристом догорать посреди унылого осеннего поля. До настоящей фотореалистичности нашему произведению, конечно, далеко, однако вряд ли кто-нибудь ждал потрясающих результатов сразу. Как бы то ни было, надеюсь, что первый блин не получился комом, и вы преодолели все превратности взаимодействия с такой сложной программой, как 3DS Max 4. Сегодня мы будем делать море. Да-да, настоящее море с волнами и чистой, прозрачной водой. Если постараетесь, то результат будет довольно реалистичным. Что ж, приступим. В окне проекции Тор создайте четырехугольный кусок Безье. Это можно сделать, щелкнув в правом углу кнопку Создать геометрию (Create/Geometry). В раскрывающемся списке выбрать Path Grid и затем нажать кнопку Quad Path. Она засветится желтым цветом. Чуть ниже вы увидите раскрывающиеся меню Keyboard Entry (Клавиатурный ввод) и Parameters (Параметры). Откройте Keyboard Entry, задайте Length и Width (Длину и Высоту) равными 1500, затем нажмите кнопку Create. В окнах проекций появится плоскость, которая и является куском Безье. По этому случаю следует отметить, что моделирование, основанное на кусках Безье, может рассматриваться как потенциально пригодное для имитации объектов органики. Однако оно слишком сложно для начинающих, поэтому я не буду касаться его в последующих статьях. В нижнем правом углу окна программы нажмите кнопку Zoom extents All, чтобы увидеть все объекты сцены. Теперь создадим камеру, через которую и будет производиться наша виртуальная съемка моря. В прошлый раз мы уже вводили в состав сцены камеру, так что закрепим пройденный материал. 1. Нажмите на командной панели Create (Создать) кнопку Cameras (Камеры) . 2. Щелкните на кнопке Free (Свободная) и в окне проекции Front создайте камеру. Переместите ее в точку с координатами x: y: z = 0,0: 0,0: 20,0. Для этого сначала выделите, а затем щелкните правой кнопкой мышки значок Select and Move и введите в полях Absolute: World указанные выше координаты. Щелкните правой кнопкой на виде перспективы, чтобы сделать окно активным, и нажмите на клавиатуре "С". В окне появится вид через камеру вашего моря. Сейчас мы создадим фон. Это будет стандартная фотография неба, входящая в поставку Макса. Выберите Rendering/Environment и щелкните на большой кнопке None в верхней части окна Environment (меню Background), появится окно Material/Map Browser. Там выберите пункт Mtl. Library (Библиотека материалов), в появившемся списке найдите Sky_Cloud2 или любой другой файл с изображением неба и нажмите ОК. Закройте окно Environment. Теперь нужно создать материал для моря. В прошлых статьях я уже рассказывал о редакторе материалов, однако делал это вскользь, не обращая внимания на детали. Настала пора остановиться более подробно на столь замечательном инструменте воплощения своих художественных замыслов. Для вызова окна Редактора материалов следует выбрать в меню Rendering (Визуализация) команду Material Editor (Редактор материалов). Основными элементами окна диалога Material Editor, показанного на рисунке 1, являются ячейки образцов материалов, кнопки инструментов управления редактором материалов и свитки параметров.
Рис.1 Ячейки образцов материалов представляют собой объекты (по умолчанию шары), которые позволяют увидеть, как будет выглядеть материал после его визуализации в составе сцены. Если два раза кликнуть левой кнопкой мыши по ячейке, откроется ее увеличенный вариант. Щелчок на кнопке (тип образца) позволяет изменить вид шара на другие виды, которые иногда нужны для правильного наложения текстур. Также вокруг ячеек образцов материалов находятся другие кнопки управления, некоторые из них будут вам часто необходимы во время работы: Get Material (Получить материал) — позволяет загрузить готовый материал или создать новый. Нажатие кнопки вызывает появление окна диалога Material/Map Browser (Просмотр материалов и карт текстур). Assign Material to Selection (Назначить материал выделению) — позволяет назначить материал из активной ячейки образца всем выделенным объектам сцены. Go to Parent (Перейти к основному материалу) — позволяет перейти с уровня правки компонентов — материала или текстуры — на более высокий уровень работы с составным материалом, объединяющим эти компоненты. С назначением остальных кнопок мы будем знакомиться по мере необходимости. В 3D StudioMAX материалы подразделяются на стандартные и составные. Сходство с реальными объектами стандартным материалам обеспечивает введение характеристик диффузного рассеивания, зеркального отражения, степени блеска поверхности, степени прозрачности и т.д. Для создания и настройки характеристик стандартных материалов предназначены свитки Редактора материалов (рис.2): Shader Basic Parameters (Базовые параметры раскраски), Blinn Basic Parameters (Базовые параметры тонирования), Extended Parameters (Дополнительные параметры), Super Sampling (Сверхразрешение), Maps (Карты текстур) и Dynamics Properties (Динамические свойства).
Рис.2
При раскрытии окна Редактора материалов свиток Blinn Basic Parameters (Базовые параметры тонирования) и Shader Basic Parameters (Базовые параметры раскраски) появятся по умолчанию в раскрытом виде. Так, в свитке Shader Basic Parameters (рис.3) можно указать метод тонированной раскраски поверхностей геометрической модели в ходе визуализации материала при помощи раскрывающегося списка. Варианты следующие: Phong (По Фонгу) — метод тонированной раскраски объектов, обеспечивающий сглаживание ребер между гранями и добавляющий блики, Blinn (По Блинну) — метод тонированной раскраски, обеспечивающий сглаживание ребер между гранями и отображение зеркальных бликов. Раскраска по Фонгу и Блинну отлично подходит для имитации таких материалов, как стекло, пластик, фарфор, резина и др. Metal (Металл) — метод тонированной раскраски объектов, имитирующий зеркальный блеск и другие характеристики отражения полированной металлической поверхности; другими методами раскраски мы будем пользоваться редко.
Рис.3
В свитке Shader Basic Parameters также расположены пункты Wire (Каркас), Fase Map (Карта грани), 2-Sided (двухсторонняя) и Faceted (ячеистая). С их назначением попробуйте разобраться сами. В свитке Blinn Basic Parameters (рис.4.) можно настроить цветовые оттенки трех компонентов цвета материала — Ambient (Подсветка), Diffuse (Диффузионный) и Specular (Зеркальный). Используйте при этом группу элементов управления в средней части свитка. Справа от образцов цвета располагаются квадратные кнопки без надписи. Назначение данных кнопок аналогично назначению кнопок свитка Maps (Карты текстур) — щелчок на любой из них раскрывает окно Material/Map Browser (Просмотр материалов и карт текстур). Настроить характеристики зеркальности можно в группе Specular Highlinghts (Степень зеркальности): Specular Level (Уровень зеркальности), Glosiness (Глянцевитость) и Soften (Размытость). Справа от счетчиков располагаются кнопки без надписи, позволяющие выбрать и назначить данной характеристике материала карту текстур. Щелкнув на кнопке без надписи, в появившемся окне Material/Map Browser (Просмотр материалов и карт текстур) можно выбрать текстуру. После выбора текстуры на кнопке появится буква М. Для настройки самосвечения и непрозрачности можно использовать параметры групп Self Illumination (Самосвечение) и Opacity (Непрозрачность).
Рис.4
Сейчас я расскажу, как легко можно сделать собственный материал, пользуясь редактором материалов. Я немного отвлекусь от моря лишь для того, чтобы начать материалостроение с более легкого примера. Итак, свояем фарфоровый шарик. Если хотите, вы можете сохранить начатую работу и, выбрав File/Reset главного меню, создать в новом файле шар, а можете работать непосредственно в Редакторе материалов. 1. Активизируйте первую ячейку Редактора материалов, кликнув по ней мышкой. 2. Установите в свитке Shader Basic Parameters раскраску Phong (По Фонгу). 3. В свитке Phong Basic Parameters нажмите на кнопку напротив строк Ambient (Подсветка) и Diffuse (Диффузионный), чтобы отключить совместное изменение параметров цвета для них (см.рис.4). 4. Щелчком левой кнопки мыши на квадратиках цвета напротив вышеуказанных параметров настройте следующие значения цвета: Ambient — (180, 180, 180), Diffuse — (235, 230, 230), Specular — белый, Specular Level = 100, Glossiness = 85 и Soften = 0,1. 5. Если вы хотите назначить материал какому-либо выделенному объекту, щелкните на кнопке . Затем отрендерьте полученный объект при помощи цепочки действий: Rendering (Визуализация)/Render (Визуализировать)/Render (Визуализировать). В противном случае сохраните материал в Библиотеке материалов щелчком по кнопке Put to Library (Поместить в библиотеку) . Разнообразие способов достижения достоверности объектов существенно расширяется возможностью использования карт текстур, которые представляют собой готовые изображения. Настройка выбранной текстуры на требуемые свойства материала, такие как блики, глянцевитость, блеск и т.д., производятся с помощью установки соответствующих параметров в свитке Maps (Карты текстур) (см.рис.5).
Рис.5
Однако, вернемся к нашим баранам. Теперь, когда вы узнали многое о Редакторе материалов, не составит большого труда продолжить работу над текстурой моря. Вернитесь к сохраненному файлу, который мы сделали в начале статьи. Откройте Редактор материалов. Установите для материала по умолчанию: Specular Level=100, Glossiness=40, Opacity=90. Щелкните на неподписанной кнопке напротив Diffuse или войдите в свиток Maps и щелкните на большой длинной кнопке None напротив надписи Diffuse Color (см.рис.5). В открывшемся списке выберите New, а в правом окошке Gradient и нажмите ОК. Разверните свиток Gradient Parameters и щелкните на кнопке напротив Color №1 и выберите New/Noise. Откройте свиток Noise Parameters и установите размер (Size) 0.05 и параметры цветов по RGB: для одного цвета — (45, 65, 138), а для другого — (87, 122, 155). Вернитесь на один уровень вверх нажатием кнопки и перетащите карту из слота первого цвета в слот второго (см.рис.6).
Рис.6
Выберите метод копирования Copy. Откройте этот слот и установите Size (размер) в свитке Noise Parameters = 0.03. Еще раз вернитесь на один уровень вверх и снова перетащите из слота 2 (напротив Color №2) в слот 3 (напротив Color №3). Установите параметры: Размер = 0.1. Первый цвет — (120, 180, 160), второй цвет — (80, 171, 130). Вернитесь на самый верхний уровень материала — туда, где мы начинали работать с картами нажатием кнопки (см.рис.5) и установите щелчком на кнопке None в качестве карты Bump — Noise c параметрами, приведенными на рисунке 7.
Рис.7
Опять вернитесь на один уровень вверх . В качестве карты Refrlection (Отражение) используем Raytrace (Преломление лучей), что позволит более точно имитировать игру света в воде. Не меняйте никаких установок карты Raytrace, а сразу идите вверх (рис.5). Установите в квадратике Amount напротив надписи Reflection степень воздействия этой карты равной 45 (по умолчанию стоит 100). Материал воды готов. Назначьте материал поверхности моря, не забыв выделить эту самую поверхность . Закройте Редактор материалов и создайте источник света типа Omni. с координатами x = 0, y = 1000, z = 500, как мы это делали в начале статьи. Выделите источник света. Сделайте активным окно вида из камеры (если его нет, нажмите "С" в окне перспективы). Картинку можно рендерить. Для этого в меню Rendering (Визуализация) Главного меню выберите пункт Render (Визуализировать). Дальнейшие действия, надеюсь, вас уже не затруднят, и результат будет удовлетворительным. То, что получилось у меня, показано на рисунке 8 — жаль только, что он черно-белый. На этом я заканчиваю ознакомительную часть своей работы. Для тех, кто заинтересовался, в следующих статьях мы будем разбирать отдельные типы моделирования геометрии сцены и различных эффектов, на примере одной или нескольких сложных художественных композиций. Также стоит упомянуть, что в данной статье использовались некоторые материалы сайта www.render.ru .
Рис. 8
Сташкевич Дмитрий
Компьютерная газета. Статья была опубликована в номере 48 за 2002 год в рубрике soft :: графика