Рендер как основа визуализации
Зрение человека, как, в сущем, и любое зрение, поистине уникальный инструмент, созданный природой. Получая более 90% информации об окружающем мире именно с помощью его, мы никогда не задумываемся о том, что именно способствует рождению информации в нашем мозгу. Отраженный свет падает на светочувствительные рецепторы, затем информация обрабатывается определенными участками головного мозга. Реакция множества светочувствительных рецепторов, каждый из которых реагирует лишь на небольшое количество отраженных лучей, рождает общую картину. То есть, налицо растр, или построение общего изображения с помощью множества точек различного цвета, яркости и т.д. Все это находит определенную аналогию с растровой графикой, наиболее распространенной на сегодняшний день. Но изображение, построенное в 3D Studio Max, после прохождения рендера, также становится растровым, то есть описанным по точкам. Поэтому определенные параллели между зрением и рендером мы проведем.
Зрение позволяет нам увидеть изображение, которое сформировалось в результате ряда причин. Первое - это освещение. Цвет света играет огромную роль в получении визуальной информации, так как именно его отражение позволяет и существовать этому явлению. Второе - физическое состояние объектов, их реакция на освещение. Третье - наличие некоторых иных факторов. А зрение как раз-таки интегрирует все эти обстоятельства в единый образ. Точно такую же роль играет рендер в 3D Studio Max. Когда мы создаем сцену, мы отдельно учитываем различные обстоятельства - материалы объектов, освещение, наличие спецэффектов, как то туман или дождь, и многое, многое другое. Свойств, которые мы можем применить к сцене, в 3D Studio Max огромное количество, но наш совет - не действуйте по принципу "Кашу маслом не испортишь". Наличие большого количества элементов освещения, спецэффектов, карт, во-первых, сильно тормозит процесс рендера, что не так существенно при создании одиночного изображения, но играет огромную роль при создании анимации. Этот процесс может затянуться на несколько суток. И часто не оправдывает себя. Поэтому применяйте ровно столько, сколько вам необходимо, предварительно осмыслив, как меньшим числом элементов добиться прекрасного результата. В итоге в окне программы можно увидеть исключительно нагромождение контуров. И объединить все условия, созданные нами, создав при этом растровое изображение либо видеофильм, - вот задача рендера, одного из трех китов нашей программы.
Этой статьей мы продолжаем подраздел серии, который изучает визуализацию объекта и включает Render и Material editor. В прошлой статье мы детально рассмотрели материалы и карты в 3D Studio Max, теперь пришла очередь для рендера.
Прежде всего в вкладке Rendering откройте Render Scene. Для начала опишем окно Render. Основной для нас всегда будет вкладка Common Parameters/Time Output. В ней устанавливаются основные параметры, касающиеся времени, количество кадров и др.
Single - одиночный (текущий) кадр. Применяется в том случае, если необходимо сделать картинку.
Active Time Segment - если здесь установить флажок, то будут визуализированы все существующие кадры. Это найдет свое применение в анимации, которую мы скоро начнем изучать.
Range - здесь устанавливается сегмент кадров, которые будут визуализированы. То есть, вы тут указываете, с какого и по какой кадр проводить рендер.
Frames - в поле этого параметра вы можете выбрать конкретные кадры из всего их количества.
При выборе Active Time Segment или Range активизируется еще одна установка - Every Nth Frame - это какой по счету кадр будет визуализироваться, например каждый второй или третий.
Область Output Size - в выпадающем меню можно установить всяческие стандарты видеоформатов. Если ваши работы направлены на дальнейшее применение в видео, то советуем поподробней ознакомиться с этой вкладкой.
В графах Width и Height устанавливаются конечные размеры кадров. Image Aspect отображает отношение Width к Height, то есть ширины кадра к его высоте. Pixel Aspect - характеризует вытянутость картинки по вертикали, если этот параметр больше единицы, то картинка будет выглядеть более вытянутой, иначе - наоборот.
Область Options.
VideoColorCheck - проверка цветов на совместимость к данному видеоформату.
Force 2-Sided - придание всем объектам свойства двухстороннего материала. В прошлой статье мы рассмотрели это свойство при изучении Material Editor, теперь же есть возможность применить его по отношению ко всем объектам сцены.
Atmospherics - визуализация атмосферных эффектов: туман, дождь и многие другие. В одной из следующих статей мы рассмотрим проблему эффектов и спецэффектов.
Effects - визуализация эффектов в сцене.
Super Black - название говорит все само за себя.
Render Hidden - визуализировать скрытые объекты. Обратите на это внимание. Когда приходится работать со сценой, содержащей множество объектов, то начинаются жуткие тормоза. Из этого есть один выход - спрятать часть объектов, в результате чего они есть, но их не видно и системные ресурсы на них не тратятся. С помощью этого пункта можно включить скрытые объекты в сцену, не подключая каждый из них в отдельности.
Render to Fields - визуализировать полями. То есть сначала проводится визуализация четных строк, а затем нечетных.
Область Render Output. Virtual Frame Buffer - если флажок установлен, то вы сможете наблюдать в отдельном окне текущий визуализирующийся кадр.
Net Render - этот флажок позволяет проводить визуализацию в сети с использованием ресурсов всех компьютеров. Однако одного флажка недостаточно, требуется еще программа, находящаяся в комплекте с 3D Studio Max 3.0. Эта функция очень полезна, если вы имеете доступ к сети. Как уже было сказано, рендер анимаций может идти сутками, но объединение мощностей нескольких компьютеров позволяет значительно ускорить этот процесс.
Skip Existing Images - пропускать уже существующие кадры.
Перейдем к следующей вкладке - Max Default Scanline A - Buffer. В ней находятся настройки визуализации непосредственно объектов.
Options. Mapping - если флажок не установлен, то все объекты с картами будут визуализированы без карт.
Shadows - если флажок не установлен, то не будут рассчитаны тени от объектов.
Auto - Reflect/Refract and Mirrors - включение автоматического расчета отражения. Очень полезная функция.
Force WireFrame - сделать все объекты со свойством Wire - каркас (wire мы подробно рассмотрели в предыдущей статье).
Wire Thickness - размер решетки Wire каркаса.
Область Anti-Aliasing - антиотражение. То есть в ней задаются параметры отражения кадра в целом. Здесь имеются всяческие стандартные настройки, аналогичные тем, что есть в Material editor, в выпадающем меню.
Область Object Motion Blur. В ней можно установить параметры размытости объектов при движении. Например, вам нужно создать эффект любительской камеры, с малым количеством кадров в секунду. Так, в частности, очень легко сделать подделку прилета НЛО:).
Duration (frames) - предыдущие кадры сохраняются через установленное количество кадров и создают эффект размытости объекта при движении.
Samples - обозначает степень размытости.
- этот параметр влияет на структуру предыдущих кадров.
Вот теоретическая часть закончена. Как всегда, мы испробуем свои знания на конкретном примере, в данном случае это будет создание гранаты типа Ф1. Изначально извиняемся перед военными, если что-то будет не совсем верно, но мы, как люди сугубо гражданские, к гранатам имеем мало отношения:). Для создания гранаты мы используем методы, описанные в прошлых статьях. Для начала опишем создание корпуса, или боевой части, гранаты. Для этого воспользуемся примитивом Line из Shapes. Постарайтесь создать примерный полуконтур продольного сечения гранаты. Пока не стремитесь сделать очень аккуратно - этот процесс еще впереди. После создания примерного полуконтура, зайдите во вкладку Modify, отметьте редактирование по точкам (Vertex) и затем, нажатием правой кнопки на центральных точках полуконтура, выберите в их свойствах флажок Smooth или Beizer (что позволит сделать переход от точки к точке плавным, это необходимо для создания обтекаемого объекта), и если вы выбрали второе, то подкорректируйте направленность сплайнов. Теперь, опять же во вкладке Modify, перейдите в режим Spline (в данном случае - редактировать весь контур целиком) и примените Outline. Это позволит задать корпусу гранаты толщину. Работу на этой стадии вы можете увидеть на иллюстрации 1. Затем, чтобы получить окончательный вариант основной части, надо использовать модификатор Lathe (раскручивание). Кстати, значение и количество кнопок модификаторов в вашем основном меню вы можете изменить с помощью кнопки Sets. У нас лично добавлены MeshSmooth и EditMesh, что добавите вы - решайте сами. Выберите в его свойствах Align -> Max, таким образом раскручивание произведется от самой крайней стороны, что и необходимо в данном случае. Ну вот, корпус готов. Конечно, его рельефность можно сделать прямо сейчас с помощью модификаторов, но наша цель как раз-таки выполнить это с помощью Material Editor. В изучаемой программе цели, причем практически любой, можно достигнуть минимум 5 способами. И порой очень тяжело решить, что именно применить в данной ситуации. Только личный опыт является решением этой проблемы.
Теперь можно приступить к другим частям нашей гранаты. Пожалуй, создадим предохранитель, эту часть достаточно непросто нарисовать. Для этого будем использовать все ту же Line. Обратите внимание, что сейчас необходимо изобразить контур предохранителя сбоку. Поэтому советуем использовать рабочее окно Left. Для ориентации еще более гражданских людей, чем мы, законченный контур мы разместили в иллюстрации 2:). Сейчас необходимо в вкладке Modify применить модификатор Extrude. Выберите оптимальную ее ширину на глаз. Верхняя часть гранаты создается из Box'а. Чека - из торуса и цилиндра. При создании чеки особое внимание обратите на диаметр торуса. Все части расположите так, как показано на рис 3.
Перейдем к созданию материалов. Нам их понадобится всего три. Все они будут стандартными, природа двух из них будет Metal и оставшийся - Blinn. Рассмотрим для начала металлы. Это не потребует большого труда и знаний. Откройте Material editor. В свойстве цвета Diffuse назначьте белый цвет, а Ambient светло-серый. Specular Level - 260. Glossiness в одном материале 30 и Self-Illumination цвет темно-серый, а в другом Glossiness 35 и Self-Illumination - черный. Напомним, что подробное описание значения этих параметров было в прошлой статье. Вообще, создание металлов - наверное, одна из самых легких задач в Material editor. Чтобы справиться с ней, достаточно одной интуиции.
Третий материал будет с использованием карты со свойством Bump (выдавливание или рельефность). Это свойство вы очень часто применяется, так как реально гладких объектов в нашей жизни очень немного, а Bump позволяет создать эффект неровности поверхности. Ambient и Diffuse сделайте темно-зелеными. Specular Level - 20, Glossiness - 0 (граната должна быть матовая), Soften - 0,1. Перейдем к созданию карты. Нажмите на кнопке None во вкладке Maps. Перед вами откроется список карт, выберите Bricks (кирпичи). В принципе, изначально они и выглядят как кирпичи, наша цель оптимизировать карту под данный случай. Для этого необходимо отредактировать ее свойства. Tilling U - 5,9; V - 1,6. В вкладке Standard Controls установите Stack Bond. Откройте вкладку Advanced Controls, область Mortar Setup, "снимите" замочек нажатием на него. Это снимет привязку размеров кирпичей по отношению друг к другу. Horizontal Gap - 2,8, Vertical Gap - 2,0. Этим вы измените расстояние между кирпичами.
Теперь нажмите кнопку "вернуться на шаг вверх по картам", которая расположена в верхней части рабочей панели, на ней изображена стрелка влево и вверх. Вернувшись в начальные установки карт, наберите число 999 в графе Bump. Большее значение задать невозможно. Теперь назначьте этот материал на основную часть гранаты, а металл, который имеет свойство Self-Illumination, - на предохранитель и верхнюю часть гранаты. Оставшийся металл назначьте на чеку. Теперь можно произвести рендер всей сцены. Советуем для этого пользоваться Render scene, но в том случае, если вам необходимо просто предварительно посмотреть результат, либо вас настройки вполне удовлетворяют, применяйте Quick render. Затем, нажав кнопку Save (имеет вид дискеты), можно сохранить файл в одном из основных форматов растровой графики. Конечный результат мы имеем на иллюстрации 4. Конечно, это не точная копия, но и цели полностью отразить Ф1 у нас не было. Мы смогли убедиться, как можно манипулировать свойствами материалов и их картами с целью получения наилучшего результата.
Разрешите вас и нас поздравить - этой статьей самая легкая часть работы в 3D Studio Max пройдена. Впереди нас ждут куда более трудные задачи, но и куда более интересные. Сложные модификации, спецэффекты, анимация, работа с видео, применение в науке, моделирование - все это очень интересно и многим окажется полезным. Мы постараемся создать небольшой сайт в Интернете, где можно будет найти файлы работ, описанных в статье, разумеется, в формате 3D Studio Max, необходимые плагины и кое-что другое, что может понадобиться в вашей работе.
Юрий Гурский, Олег Гришанович
Зрение позволяет нам увидеть изображение, которое сформировалось в результате ряда причин. Первое - это освещение. Цвет света играет огромную роль в получении визуальной информации, так как именно его отражение позволяет и существовать этому явлению. Второе - физическое состояние объектов, их реакция на освещение. Третье - наличие некоторых иных факторов. А зрение как раз-таки интегрирует все эти обстоятельства в единый образ. Точно такую же роль играет рендер в 3D Studio Max. Когда мы создаем сцену, мы отдельно учитываем различные обстоятельства - материалы объектов, освещение, наличие спецэффектов, как то туман или дождь, и многое, многое другое. Свойств, которые мы можем применить к сцене, в 3D Studio Max огромное количество, но наш совет - не действуйте по принципу "Кашу маслом не испортишь". Наличие большого количества элементов освещения, спецэффектов, карт, во-первых, сильно тормозит процесс рендера, что не так существенно при создании одиночного изображения, но играет огромную роль при создании анимации. Этот процесс может затянуться на несколько суток. И часто не оправдывает себя. Поэтому применяйте ровно столько, сколько вам необходимо, предварительно осмыслив, как меньшим числом элементов добиться прекрасного результата. В итоге в окне программы можно увидеть исключительно нагромождение контуров. И объединить все условия, созданные нами, создав при этом растровое изображение либо видеофильм, - вот задача рендера, одного из трех китов нашей программы.
Этой статьей мы продолжаем подраздел серии, который изучает визуализацию объекта и включает Render и Material editor. В прошлой статье мы детально рассмотрели материалы и карты в 3D Studio Max, теперь пришла очередь для рендера.
Прежде всего в вкладке Rendering откройте Render Scene. Для начала опишем окно Render. Основной для нас всегда будет вкладка Common Parameters/Time Output. В ней устанавливаются основные параметры, касающиеся времени, количество кадров и др.
Single - одиночный (текущий) кадр. Применяется в том случае, если необходимо сделать картинку.
Active Time Segment - если здесь установить флажок, то будут визуализированы все существующие кадры. Это найдет свое применение в анимации, которую мы скоро начнем изучать.
Range - здесь устанавливается сегмент кадров, которые будут визуализированы. То есть, вы тут указываете, с какого и по какой кадр проводить рендер.
Frames - в поле этого параметра вы можете выбрать конкретные кадры из всего их количества.
При выборе Active Time Segment или Range активизируется еще одна установка - Every Nth Frame - это какой по счету кадр будет визуализироваться, например каждый второй или третий.
Область Output Size - в выпадающем меню можно установить всяческие стандарты видеоформатов. Если ваши работы направлены на дальнейшее применение в видео, то советуем поподробней ознакомиться с этой вкладкой.
В графах Width и Height устанавливаются конечные размеры кадров. Image Aspect отображает отношение Width к Height, то есть ширины кадра к его высоте. Pixel Aspect - характеризует вытянутость картинки по вертикали, если этот параметр больше единицы, то картинка будет выглядеть более вытянутой, иначе - наоборот.
Область Options.
VideoColorCheck - проверка цветов на совместимость к данному видеоформату.
Force 2-Sided - придание всем объектам свойства двухстороннего материала. В прошлой статье мы рассмотрели это свойство при изучении Material Editor, теперь же есть возможность применить его по отношению ко всем объектам сцены.
Atmospherics - визуализация атмосферных эффектов: туман, дождь и многие другие. В одной из следующих статей мы рассмотрим проблему эффектов и спецэффектов.
Effects - визуализация эффектов в сцене.
Super Black - название говорит все само за себя.
Render Hidden - визуализировать скрытые объекты. Обратите на это внимание. Когда приходится работать со сценой, содержащей множество объектов, то начинаются жуткие тормоза. Из этого есть один выход - спрятать часть объектов, в результате чего они есть, но их не видно и системные ресурсы на них не тратятся. С помощью этого пункта можно включить скрытые объекты в сцену, не подключая каждый из них в отдельности.
Render to Fields - визуализировать полями. То есть сначала проводится визуализация четных строк, а затем нечетных.
Область Render Output. Virtual Frame Buffer - если флажок установлен, то вы сможете наблюдать в отдельном окне текущий визуализирующийся кадр.
Net Render - этот флажок позволяет проводить визуализацию в сети с использованием ресурсов всех компьютеров. Однако одного флажка недостаточно, требуется еще программа, находящаяся в комплекте с 3D Studio Max 3.0. Эта функция очень полезна, если вы имеете доступ к сети. Как уже было сказано, рендер анимаций может идти сутками, но объединение мощностей нескольких компьютеров позволяет значительно ускорить этот процесс.
Skip Existing Images - пропускать уже существующие кадры.
Перейдем к следующей вкладке - Max Default Scanline A - Buffer. В ней находятся настройки визуализации непосредственно объектов.
Options. Mapping - если флажок не установлен, то все объекты с картами будут визуализированы без карт.
Shadows - если флажок не установлен, то не будут рассчитаны тени от объектов.
Auto - Reflect/Refract and Mirrors - включение автоматического расчета отражения. Очень полезная функция.
Force WireFrame - сделать все объекты со свойством Wire - каркас (wire мы подробно рассмотрели в предыдущей статье).
Wire Thickness - размер решетки Wire каркаса.
Область Anti-Aliasing - антиотражение. То есть в ней задаются параметры отражения кадра в целом. Здесь имеются всяческие стандартные настройки, аналогичные тем, что есть в Material editor, в выпадающем меню.
Область Object Motion Blur. В ней можно установить параметры размытости объектов при движении. Например, вам нужно создать эффект любительской камеры, с малым количеством кадров в секунду. Так, в частности, очень легко сделать подделку прилета НЛО:).
Duration (frames) - предыдущие кадры сохраняются через установленное количество кадров и создают эффект размытости объекта при движении.
Samples - обозначает степень размытости.
- этот параметр влияет на структуру предыдущих кадров.
Вот теоретическая часть закончена. Как всегда, мы испробуем свои знания на конкретном примере, в данном случае это будет создание гранаты типа Ф1. Изначально извиняемся перед военными, если что-то будет не совсем верно, но мы, как люди сугубо гражданские, к гранатам имеем мало отношения:). Для создания гранаты мы используем методы, описанные в прошлых статьях. Для начала опишем создание корпуса, или боевой части, гранаты. Для этого воспользуемся примитивом Line из Shapes. Постарайтесь создать примерный полуконтур продольного сечения гранаты. Пока не стремитесь сделать очень аккуратно - этот процесс еще впереди. После создания примерного полуконтура, зайдите во вкладку Modify, отметьте редактирование по точкам (Vertex) и затем, нажатием правой кнопки на центральных точках полуконтура, выберите в их свойствах флажок Smooth или Beizer (что позволит сделать переход от точки к точке плавным, это необходимо для создания обтекаемого объекта), и если вы выбрали второе, то подкорректируйте направленность сплайнов. Теперь, опять же во вкладке Modify, перейдите в режим Spline (в данном случае - редактировать весь контур целиком) и примените Outline. Это позволит задать корпусу гранаты толщину. Работу на этой стадии вы можете увидеть на иллюстрации 1. Затем, чтобы получить окончательный вариант основной части, надо использовать модификатор Lathe (раскручивание). Кстати, значение и количество кнопок модификаторов в вашем основном меню вы можете изменить с помощью кнопки Sets. У нас лично добавлены MeshSmooth и EditMesh, что добавите вы - решайте сами. Выберите в его свойствах Align -> Max, таким образом раскручивание произведется от самой крайней стороны, что и необходимо в данном случае. Ну вот, корпус готов. Конечно, его рельефность можно сделать прямо сейчас с помощью модификаторов, но наша цель как раз-таки выполнить это с помощью Material Editor. В изучаемой программе цели, причем практически любой, можно достигнуть минимум 5 способами. И порой очень тяжело решить, что именно применить в данной ситуации. Только личный опыт является решением этой проблемы.
Теперь можно приступить к другим частям нашей гранаты. Пожалуй, создадим предохранитель, эту часть достаточно непросто нарисовать. Для этого будем использовать все ту же Line. Обратите внимание, что сейчас необходимо изобразить контур предохранителя сбоку. Поэтому советуем использовать рабочее окно Left. Для ориентации еще более гражданских людей, чем мы, законченный контур мы разместили в иллюстрации 2:). Сейчас необходимо в вкладке Modify применить модификатор Extrude. Выберите оптимальную ее ширину на глаз. Верхняя часть гранаты создается из Box'а. Чека - из торуса и цилиндра. При создании чеки особое внимание обратите на диаметр торуса. Все части расположите так, как показано на рис 3.
Перейдем к созданию материалов. Нам их понадобится всего три. Все они будут стандартными, природа двух из них будет Metal и оставшийся - Blinn. Рассмотрим для начала металлы. Это не потребует большого труда и знаний. Откройте Material editor. В свойстве цвета Diffuse назначьте белый цвет, а Ambient светло-серый. Specular Level - 260. Glossiness в одном материале 30 и Self-Illumination цвет темно-серый, а в другом Glossiness 35 и Self-Illumination - черный. Напомним, что подробное описание значения этих параметров было в прошлой статье. Вообще, создание металлов - наверное, одна из самых легких задач в Material editor. Чтобы справиться с ней, достаточно одной интуиции.
Третий материал будет с использованием карты со свойством Bump (выдавливание или рельефность). Это свойство вы очень часто применяется, так как реально гладких объектов в нашей жизни очень немного, а Bump позволяет создать эффект неровности поверхности. Ambient и Diffuse сделайте темно-зелеными. Specular Level - 20, Glossiness - 0 (граната должна быть матовая), Soften - 0,1. Перейдем к созданию карты. Нажмите на кнопке None во вкладке Maps. Перед вами откроется список карт, выберите Bricks (кирпичи). В принципе, изначально они и выглядят как кирпичи, наша цель оптимизировать карту под данный случай. Для этого необходимо отредактировать ее свойства. Tilling U - 5,9; V - 1,6. В вкладке Standard Controls установите Stack Bond. Откройте вкладку Advanced Controls, область Mortar Setup, "снимите" замочек нажатием на него. Это снимет привязку размеров кирпичей по отношению друг к другу. Horizontal Gap - 2,8, Vertical Gap - 2,0. Этим вы измените расстояние между кирпичами.
Теперь нажмите кнопку "вернуться на шаг вверх по картам", которая расположена в верхней части рабочей панели, на ней изображена стрелка влево и вверх. Вернувшись в начальные установки карт, наберите число 999 в графе Bump. Большее значение задать невозможно. Теперь назначьте этот материал на основную часть гранаты, а металл, который имеет свойство Self-Illumination, - на предохранитель и верхнюю часть гранаты. Оставшийся металл назначьте на чеку. Теперь можно произвести рендер всей сцены. Советуем для этого пользоваться Render scene, но в том случае, если вам необходимо просто предварительно посмотреть результат, либо вас настройки вполне удовлетворяют, применяйте Quick render. Затем, нажав кнопку Save (имеет вид дискеты), можно сохранить файл в одном из основных форматов растровой графики. Конечный результат мы имеем на иллюстрации 4. Конечно, это не точная копия, но и цели полностью отразить Ф1 у нас не было. Мы смогли убедиться, как можно манипулировать свойствами материалов и их картами с целью получения наилучшего результата.
Разрешите вас и нас поздравить - этой статьей самая легкая часть работы в 3D Studio Max пройдена. Впереди нас ждут куда более трудные задачи, но и куда более интересные. Сложные модификации, спецэффекты, анимация, работа с видео, применение в науке, моделирование - все это очень интересно и многим окажется полезным. Мы постараемся создать небольшой сайт в Интернете, где можно будет найти файлы работ, описанных в статье, разумеется, в формате 3D Studio Max, необходимые плагины и кое-что другое, что может понадобиться в вашей работе.
Юрий Гурский, Олег Гришанович
Компьютерная газета. Статья была опубликована в номере 43 за 1999 год в рубрике soft :: графика