Владимир Верстак
3ds Max 8
Секреты мастерства
•an
f •с
•"":
Москва • Санкт-Петербург • Нижний Новгород • Воронеж Новосибирск • Ростов-на-Дону • Екатеринбург • Самара Киев • Харьков • Минск
2006
ББК 32.973-018.3 УДК 004.92 В35
Верстак В. А. В35 3ds Max 8. Секреты мастерства (+CD). — СПб.: Питер, 2006. — 672 с : ил. ISBN 5-469-01181-Х Простым и доступным языком описана новейшая версия самого популярного редактора трехмерной графики. С помощью данной книги вы легко научитесь создавать трехмерные изображения любой сложности, узнаете об основных этапах разработки трехмерной модели. Автор — профессионал трехмерного дизайна. Его оригинальный подход к созданию объектов и сцен, к моделированию и визуализации будет полезен и начинающему пользователю, и специалисту. Вы узнаете обо всех возможностях лучшего ЗО-пакета, в том числе и скрытых от непосвященных. Особое внимание уделено созданию моделей.
ББК 32.973-018.3 УДК 004.92
В оформлении обложки использована работа Клецкова А. И.
Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав. Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги.
ISBN 5-469-01181-X
©ЗАО Издательский дом «Питер», 2006
Краткое содержание Введение От издательства
Часть 1. Основы работы в 3ds Max 8
8 14
15
Глава 1 . Интерфейс программы
17
Глава 2. Основные приемы работы
76
Глава3. Материалы итекстуры
120
Глава 4. Основы визуализации
159
Часть 2. Практический курс
192
Глава 5. Освещение
194
Глава 6. Практическое моделирование
239
Глава 7. Текстурирование
369
Глава 8. Визуализация
420
Часть 3. Усложненное моделирование
445
Глава 9. Моделирование автомобиля
447
Глава 10. Текстурирование автомобиля
519
Глава 1 1 . Моделирование головы
559
Заключение
645
Приложение 1.70 советов пользователям 3ds Max
646
Приложение 2. Основные сочетания клавиш 3ds Max 8
662
Приложение 3. Содержимое компакт-диска
667
Оглавление Введение
8
Для кого предназначена книга
9
Структура книги
10
Требования к программному и аппаратному обеспечению
12
От издательства
14
Часть 1 . Основы работы в 3ds Max 8
15
Глава 1. Интерфейс программы
17
Элементы интерфейса
18
Подключаемые модули
60
Настройка программы
62
Глава 2. Основные приемы работы
76
Объекты B3ds Max 8
77
Создание объектов сцены
87
Модификаторы геометрии
108
Глава3. Материалы итекстуры
120
Окно Material Editor (Редактор материалов)
121
Материал типа Standard (Стандартный)
127
Создание сложных материалов
134
Использование текстурных карт
143
Глава 4. Основы визуализации
159
Инструменты визуализации
160
Параметры визуализации
161
Виртуальный буфер кадров
167
Оглавление
Использование модуля RAM Player (RAM-проигрыватель)
168
Окружение и атмосферные эффекты
170
Модуль Video Post (Видеомонтаж)
186
Часть 2. Практический курс
192
Глава 5. Освещение
194
Основы освещения втрехмерной графике
195
Луч лазера
207
Объемный свет
211
Использование базовых источников света в интерьере
218
Глава 6. Практическое моделирование
239
Натюрморт
240
Моделирование лофт-объектов
253
Моделирование штор
264
Полигональное моделирование телефонной трубки
271
Моделирование микроволновой печи
290
Комплексный подход к моделированию: создание крана для ванной
320
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
359
Глава 7. Текстурирование
369
Материал, имитирующий хром
370
Текстурирование натюрморта
376
Текстурирование микроволновой печи
387
Сложное текстурирование
397
Создание стеклянного флакона при помощи подключаемого визуализатораУНау
409
Глава 8. Визуализация
420
Интеграция трехмерной графики и фотографии
421
б
Оглавление
Маскирование объектов
429
Объекты в фокусе камеры
435
Часть 3. Усложненное моделирование
445
Глава 9. Моделирование автомобиля
447
Виртуальная студия — начало всех начал
448
Создание автомобильного диска при помощи NURBS-моделирования
462
Моделирование колеса автомобиля при помощи полигонов
475
Моделируем BMW
490
Глава 10. Текстурирование автомобиля
519
Основы текстурирования автомобиля
520
Текстурирование деталей автомобиля
534
Визуализация автомобиля с использованием VRay
550
Глава 1 1 . Моделирование головы
559
Моделирование головы при помощи модуля Surfacetools
560
Моделирование головы при помощи полигонов
580
Моделирование ресниц
605
Использование UV-проецирования для полигональной модели головы
614
Текстурирование головы человека
627
Создание волос
638
Заключение
645
Приложение 1.70 советов пользователям 3ds Max
646
Интерфейс и окна проекций
647
Работа с файлами
648
Моделирование
651
Анимация
656
Материалы итекстуры
657
Оглавление
7
Источники света и камеры
659
Визуализация
660
Разное
661
Приложение 2. Основные сочетания клавиш 3ds Max 8
662
Интерфейс программы
663
Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность)
665
Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность)
665
Клавиатурные комбинации для работы с NURBS-объектами
666
Приложение 3. Содержимое компакт-диска
667
Введение • Для кого предназначена книга • Структура книги • Требования к программному и аппаратному обеспечению
Для кого предназначена книга
9
Стремительное развитие технологий в последнее десятилетие привело к такому же быстрому росту в области компьютерной техники и программного обеспечения. Еще совсем недавно незначительный по сегодняшним меркам эпизод из фильма, созданный при помощи спецэффектов, вызывал бурю восторга и обсуждений. Сегодня спецэффектами в кино и на телевидении никого не удивишь. Они стали обыденным явлением благодаря массовому распространению программ создания компьютерной графики и, в частности, трехмерного моделирования. Программы трехмерной графики — самые интересные по своим возможностям и сложные по освоению приложения. Одно из лидирующих мест среди таких программ занимает 3ds Max. В силу своих уникальных возможностей и доступности в освоении эта программа сегодня имеет наибольшее количество поклонников как среди любителей, так и среди профессионалов. Пожалуй, осталось очень мало сфер деятельности человека, связанных с трехмерной графикой, в которых не используется 3ds Max. Ее активно применяют для создания игр и фильмов, в архитектуре и строительстве, в медицине и физике, а также во многих других областях. При выходе каждой новой версии программа приобретает новые возможности и становится более профессиональной. Сегодня создание и визуализация сцен в 3ds Max ограничены только фантазией пользователя и знанием возможностей программы. Что касается первого, я надеюсь, у вас нет в этом недостатка, а с помощью данной книги вы сможете приобрести необходимые знания о программе 3ds Max либо расширить существующие.
Для кого предназначена книга Книга «3ds Max 8. Уроки мастерства» предназначена всем пользователям, которые хотели бы заняться или уже работают с трехмерной графикой и желают подняться на новую ступень мастерства. Данное издание будет также полезно и для начинающих разработчиков, делающих свои первые шаги в трехмерной компьютерной графике. 3ds Max 8 — сложная программа, и даже опытные пользователи порой сталкиваются при работе с трудностями, связанными с недостатком знаний. Возможности программы настолько обширны, что одну и ту же задачу можно решать несколькими способами, причем каждый способ уникален. Именно поэтому пользователям, имеющим опыт работы с этой программой, будут интересны разделы книги, посвященные трехмерному моделированию, созданию материалов и текстурированию, работе с кривыми и поверхностями. Для пользователей, делающих первые шаги в изучении 3ds Max, не лишними будут знания о традиционном искусстве и классической анимации. Знание таких программ, как Adobe Photoshop, Corel PHOTO-PAINT, Adobe Illustrator и CorelDRAW, Adobe After Effects или combustion, помогут вам значительно быстрее освоить 3ds Max. Часто при работе с программой вам придется создавать свои собственные текстуры и заниматься постобработкой визуализированных изображений. Однако это не означает, что без знания перечисленных выше программ вы не можете изучать 3ds Max. Как минимум вы должны уметь работать с операционной системой и иметь представление о редакторах растровой графики.
10
Введение
В первой части книги даны те основы, которые помогут вам выполнять уроки, собранные во второй, а также третьей частях издания. Если вы сразу обратились ко второй части книги и чувствуете, что вам не хватает базовых знаний или в них есть пробелы, начните чтение с самого начала. Пользователю среднего уровня можно начать изучение со второй части. С ее помощью вы сможете почерпнуть новые знания и овладеть большим количеством методов моделирования и анимации. Даже если вы уже достаточно опытный пользователь программы 3ds Max, то практически в каждом уроке вы сможете узнать что-то новое и полезное.
Структура книги Книга состоит из трех независимых частей и трех приложений.
Часть 1. Основы работы в 3ds Max 8 Первая часть является в основном ознакомительной и предназначена для начинающих пользователей программы. В ней в сжатом виде собраны основные сведения, необходимые для изучения уроков, размещенных во второй и третьей частях книги. Здесь вы познакомитесь с интерфейсом программы, основными методами и приемами работы, научитесь использовать Material Editor (Редактор материалов), визуализировать изображения и выполнять многое другое, необходимое для создания полноценных сцен. • Глава 1. «Интерфейс программы» — здесь описаны элементы интерфейса программы, рассмотрены основные панели и инструменты для работы с программой 3ds Max 8. Тут также идет речь о расширении возможностей программы за счет подключаемых модулей, затронуты вопросы точной настройки программы и создание собственного пользовательского интерфейса. • Глава 2. «Основные методы и приемы работы» — здесь рассмотрено создание объектов сцены в программе 3ds Max. Возможности программы настолько обширны, что одни и те же объекты могут быть созданы различными способами моделирования. Эта глава дает общее представление об объектах форм, параметрических объектах и модификаторах, применяемых для быстрого изменения форм объектов и создания анимации. • Глава 3. «Материалы и текстуры» — изучив эту главу, вы узнаете, что такое Material Editor (Редактор материалов) и как с ним работать. В данной главе подробно рассмотрен стандартный материал и даны начальные сведения о составных материалах. Вы узнаете о том, как назначать материал объектам и создавать текстуры. • Глава 4. «Основы визуализации» — здесь описаны основные средства визуализации в программе 3ds Max и способы получения растровых изображений.
Часть 2. Практический курс Вторая часть представляет собой собрание из уникальных упражнений, сгруппированных по главам и затрагивающих почти все аспекты работы с программой. Все задания являются самостоятельными и не требуют соблюдения последовательности при их изучении, хотя по уровню сложности расположены от простых к более
Структура книги
11
сложным. Пользователям, не имеющим достаточного опыта работы с программой, я рекомендую выполнять упражнения, начиная с простых и постепенно продвигаясь к самым сложным. Все упражнения написаны таким образом, чтобы у вас не возникло сложностей с их выполнением. Кроме того, практически в каждом задании содержатся сведения, поясняющие выполнение тех или иных действий, дается подробное описание команд, а также приведены иллюстрации с настройками и видами окон проекций. Во многих случаях выбор определенных действий сопровождается пояснением. Такие ссылки помогут вам не просто бездумно выполнять действия, но и осмыслить применение тех или иных команд, что очень важно для выполнения последующих самостоятельных работ. • Глава 5. «Освещение» — изучив эту главу, вы научитесь правильно устанавливать свет и располагать тени, освещать интерьер, а также познакомитесь с объемным (видимым) светом. Освещение — это мощный инструмент в руках дизайнера трехмерной графики, и нужно уметь правильно им пользоваться. • Глава 6. «Практическое моделирование» — начиная с простых уроков, вы научитесь основам моделирования, постепенно переходя к решению более сложных задач. Вы узнаете о том, что такое сплайновое моделирование, моделирование полигонами, NURBS-моделирование и моделирование лофт-объектов. В данной главе будут рассмотрены аспекты комплексного моделирования. Полученные знания помогут вам создавать более сложные модели, о которых пойдет речь в последующих главах. • Глава 7. «Текстурирование» — глава рассказывает о долгом и кропотливом процессе создания материалов для трехмерных объектов. Чтобы сделать приемлемую текстуру, можно экспериментировать не один час. Окно Material Editor (Редактор материалов) в 3ds Max настолько удачно организовано, что позволяет получить практически любой материал — все ограничено только знаниями и воображением пользователя. Выполняя упражнения этой главы, вы овладеете процессом создания реальных материалов и текстур. Кроме того, вы познакомитесь с материалами подключаемого модуля VRay. • Глава 8. «Визуализация» — глава описывает, как подготавливать и визуализировать сцены, созданные в программе 3ds Max. Существует большое количество вариантов, позволяющих получить при визуализации хорошее изображение, но всегда есть способ улучшить его. В упражнениях этой главы рассказывается о том, как это сделать. Рассматриваются методы работы с фотографиями, исследуется возможность улучшения визуализации за счет создания глубины резкости изображения.
Часть 3. Усложненное моделирование Для работы с упражнениями, собранными в данной части книги, вам понадобится обладать как минимум запасом знаний начального уровня или выполнить задания предыдущей части. Уроки сложны для изучения, но вместе с тем являются самыми интересными по своей структуре, моделированию и конечному результату. В главах этой части описано моделирование и текстурирование автомобиля, а также два способа моделирования головы со средним уровнем детализации, ее текстурирование и создание волос. Для работы с такими заданиями, кроме знания инструментов и методов моделирования, вам необходимо обладать фантазией и пространственным мышлением, чтобы не потеряться в большом количестве
12
Введение
вершин, ребер и полигонов строящейся модели. Кроме того, для моделирования головы очень поможет умение рисовать и образно мыслить. • Глава 9. «Моделирование автомобиля» — описывает одну из интереснейших задач, которые могут стоять перед пользователем программы 3ds Max. Однако она не только интересна, но и достаточно сложна для людей, не имеющих достаточного опыта моделирования, поэтому к выполнению упражнений этой главы рекомендуется приступать, предварительно ознакомившись с моделированием более простых объектов (например, описанных в гл. 6). Задания данной главы построены так, что их последовательное выполнение поможет вам смоделировать к ее концу автомобиль BMW пятой серии. • Глава 10. «Текстурирование автомобиля» — рассмотрено текстурирование, которое необходимо выполнить после построения модели автомобиля. Именно хорошие текстуры придают модели вид, который может претендовать на реалистичность. Для простоты восприятия глава разделена на три упражнения. Первое задание затрагивает общие вопросы и текстурирование кузова. Второе — описывает текстурирование отдельных элементов. Третье — рассказывает о визуализации автомобиля с использованием подключаемого визуализатора VRay. ш Глава 11. «Моделирование головы» — рассказывает об интересном, но в то же время сложном занятии, которое по плечу только опытным дизайнерам. Все описанные в этой главе операции сложны для выполнения и требуют предварительной подготовки. Пять упражнений, представленных в данной главе, раскрывают темы моделирования при помощи модуля Surfacetools и полигонального моделирования с последующим текстурированием готовой модели и созданием волос. Первые два задания основаны на принципе моделирования головы среднего уровня детализации, достаточного для создания реалистичного образа.
Приложения • Приложение 1 содержит 70 советов прежде всего тем пользователям, которые только начинают работать с программой 3ds Max. Все советы, собранные в этом приложении, появились на основе практического опыта работы с программой и призваны помочь в ее освоении и решении некоторых проблем. • Приложение 2 содержит сведения об основных клавиатурных комбинациях, ускоряющих процесс выполнения определенных команд и, как следствие, облегчающих работу с программой. Более полное описание клавиатурных комбинаций можно найти в файле справки программы. • Приложение 3 описывает содержимое компакт-диска, который прилагается к книге.
Требования к программному и аппаратному обеспечению Выбор операционной системы Для работы с программой 3ds Max 8 вам понадобится операционная система Windows ХР. Лучшим выбором, на мой взгляд, будет Windows XP Professional с установленным последним пакетом обновления (Service Pack). Эта операционная
Требования к программному и аппаратному обеспечению
1J3
система является наиболее стабильной и имеет наилучшее управление ресурсами, такими, например, как память. Кроме того, она позволяет запускать несколько приложений 3ds Max одновременно. При желании вы также можете воспользоваться операционными системами Windows XP Home или Windows 2000. Однако операционная система Windows 2000 менее стабильна, и при ее использовании могут происходить более частые сбои в работе программы. ВНИМАНИЕ В операционных системах Windows 98/Ме программа 3ds Max 8 работать не будет.
Для установки программы также понадобится предварительно инсталлированный DirectX версии не ниже 9с.
Требования к аппаратному обеспечению Для обеспечения наилучшей производительности в среде 3ds Max 8 вам понадобится достаточно мощный компьютер. Хорошим выбором будет Pentium IV или AMD Athlon с оперативной памятью не менее 1 Гбайт и 2 Гбайт для файла подкачки; необходимо достаточное количество места на жестком диске, а также монитор не менее 17 дюймов по диагонали (оптимальный выбор — 19 дюймов). При необходимости вы можете запустить программу на компьютере с процессором 300 МГц Pentium III (или AMD), с количеством оперативной памяти 256 Мбайт и 500 Мбайт для файла подкачки, однако при этом будет затрачиваться слишком много времени на обработку данных и визуализацию. Можно порекомендовать двупроцессорные системы Intel Xeon или AMD Athlon как системы с наилучшей производительностью. Наличие второго процессора увеличивает мощность системы и позволяет комфортно работать с другими приложениями в процессе визуализации в 3ds Max. Одним из наиболее важных элементов в производительности системы является видеокарта. Не стоит останавливать свой выбор на видеокартах, оптимизированных для компьютерных игр. На сайте производителя программы 3ds Max (www.autodesk.com/3dsmax^ есть список наиболее популярных и подходящих для использования видеокарт. Рекомендуется, чтобы видеокарта поддерживала разрешение экрана как минимум 1024 х 768 с 16-битным цветом и имела в своем составе драйверы для OpenGL и DirectX. Кроме того, видеокарта должна иметь как минимум 64 Мбайт встроенной оперативной памяти. Хорошим выбором будет приобретение профессионального трехмерного ускорителя. Для полной инсталляции программы необходимо 650 Мбайт свободного места на жестком диске. Для комфортной работы также необходимо иметь трехкнопочную мышь со скроллингом (предпочтительно оптическую), что значительно упрощает навигацию по меню и в окнах проекций.
От издательства Ваши замечания, предложения, вопросы отправляйте по адресу электронной почты
[email protected] (издательство «Питер», компьютерная редакция). На сайте издательства http://www.piter.com вы найдете подробную информацию о наших книгах.
•
Часть 1 .
Основы работы в 3ds Max 8 Глава 1 . Интерфейс программы Глава 2. Основные приемы работы Глава 3. Материалы и текстуры Глава 4. Основы визуализации
Знакомство с такой сложной и объемной программой, как 3ds Max 8, логично начать с изучения ее интерфейса и возможностей. Глубокое знание программы существенно облегчает работу, и этой теме стоило бы посвятить значительную часть книги. Однако цель данного издания — поделиться знаниями и навыками, которые были приобретены за годы работы с пакетом 3ds Max, поэтому основное внимание в книге будет уделено практическим упражнениям. Первая глава предназначена для тех пользователей, которые только начинают знакомиться с трехмерным моделированием. В ней представлены минимально необходимые знания для выполнения упражнений, размещенных во второй и третьей частях книги.
'
Глава 1
•
Интерфейс программы • Элементы интерфейса • Подключаемые модули • Настройка программы
•
•
18
Глава 1. Интерфейс программы
Чем важно изучение интерфейса программы? Интерфейс обеспечивает доступ к управлению всеми возможностями программы. Многие пользователи, пренебрегая его изучением, впоследствии сталкиваются с трудностями даже при моделировании простых сцен, не говоря о том, что не могут применять потенциал программы полностью. Программа 3ds Max имеет очень гибкий интерфейс, позволяющий выполнить одно и то же действие разными путями. Вы также можете создавать собственные пользовательские меню, панели инструментов, назначать сочетания клавиш операциям и т. д. Все это не только облегчает работу в программе, но и ускоряет процесс моделирования и анимации. Большинство задаваемых вопросов по 3ds Max возникают из-за поверхностного знакомства пользователей с интерфейсом и возможностями программы. Поэтому я настоятельно рекомендую тщательно изучить интерфейс и возможности 3ds Max 8, а также советую не пренебрегать справочной информацией, поставляемой вместе с программой. Это — один из самых обширных и легко доступных источников ответов на возникающие у пользователей вопросы.
Элементы интерфейса Первое, что вы увидите после запуска программы 3ds Max 8, — ее основное окно (рис. 1.1). Если вы начинающий пользователь и не знакомы с интерфейсом, то сначала осмотрите элементы и ознакомьтесь с окружением. Вы увидите, что интерфейс программы состоит из элементов, в которых сгруппированы однотипные команды. Например, в группе средств управления анимацией собраны кнопки управления воспроизведением и настройкой поведения объектов во времени. Окно программы можно условно разделить на пять основных элементов. • Main Menu (Главное меню). Находится в верхней части окна программы и обеспечивает доступ к основным командам 3ds Max 8. Все команды меню объединены в категории. • Main Toolbar (Главная панель инструментов). Обычно находится под главным меню, но может отображаться как «плавающая» панель или располагаться в других местах окна. Может быть одиночной или находится в составе панели инструментов с вкладками, разделенными по категориям. Содержит кнопки быстрого доступа к наиболее употребляемым командам и операциям программы. • Viewports (Окна проекций). Расположены в центре окна и занимают его большую часть. Четыре раздельных вида сцены отображают проекции сверху Тор (Сверху), сбоку Left (Слева), фронтальную Front (Спереди) и перспективную Perspective (Перспектива). • Command Panel (Командная панель). Обычно располагается справа от окон проекций. Эта панель содержит шесть вкладок и обеспечивает выполнение
19
Элементы интерфейса Главное меню
Главная панель инструментов
Командная панель
Ш Unfitted - Ли mfc'sk Ы- м„к « SI .«.d ,*mi; ikcnu
Нижняя строка интерфейса «Плавающая» панель инструментов Рис. 1 . 1 . Окно программы 3ds Max 8
операций по созданию и модификации объектов сцены. Каждая вкладка состоит из свитков с настройками объектов. • Lover Interface Bar (Нижняя строка интерфейса). Расположена в нижней части окна программы. Содержит различные поля и кнопки, в состав которых входят поля отображения состояния и подсказок, а также наборы кнопок для управления окнами проекций и воспроизведения анимации.
Главное меню Раскрывающиеся меню в верхней части окна программы обеспечивают доступ ко всем основным возможностям программы и являются оптимальным выбором для начинающих пользователей. Главное меню состоит из следующих пунктов: File (Файл), Edit (Правка), Tools (Инструменты), Group (Группировка), Views (Вид), Create (Создание), Modifiers (Модификаторы), Character (Персонаж), reactor, Animation (Анимация), Graph Editors (Графические редакторы), Rendering (Визуализация),
20
Глава 1. Интерфейс программы
Customize (Настройка), MAXScript и Help (Справка). В отличие от многих программ меню 3ds Max остается неизменным независимо от того, где вы находитесь и что делаете. Таким образом, вы имеете постоянный доступ к пунктам этого меню. Если команда меню имеет зарезервированную клавишу быстрого доступа, то она показана рядом с названием команды. Стрелка, расположенная справа от имени команды меню, указывает на наличие дополнительных пунктов подменю, которые появляются при наведении на нее указателя мыши. Рассмотрим каждый вышеперечисленный пункт более подробно. Не все команды доступны постоянно. Иногда некоторые из них отображены серым цветом, то есть неактивны. Например, если в сцене нет выделенных объектов, вы не сможете применить команду Group (Группировка), но как только выделите один или несколько объектов, эта команда станет доступной.
Меню File (Файл) Меню File (Файл) содержит команды для работы с файлами программы 3ds Max (рис. 1.2).
f
Open...
Ctrl+O
Open Recent Save
Ctrl+s
save us... ;:
Save Copy ft*... Save Selected...
file «Manager.. :
Негде «Wmatbn..
Load Animation Save Animation .
Export Selected... Asset Tracking...
Shtft+T
S^nmarylnfo..
Рис. 1.2. Меню File (Файл)
Команды этого меню позволяют делать следующее: New (Создать), Open (Открыть), Save (Сохранить) — создавать новые, открывать и сохранять существующие сцены и объекты; Open Recent (Открыть недавно использованные) — открывать ранее сохраненные сцены; Reset (Сбросить) — перезапустить сцену; XRefs — работать со
Элементы интерфейса
21
ссылками на внешние объекты и сцены; Merge (Объединить) — присоединить к текущей сцене объекты из внешних файлов, Merge Animation (Объединить анимацию) — присоединить ранее сохраненную сцену или анимацию. Меню File (Файл) также содержит команды Import (Импортировать) и Export (Экспортировать), выполняющие импорт и экспорт объектов. Команда Archive (Архивировать) позволит вам сохранить все используемые в сцене файлы в сжатом виде, например для переноса их на другой компьютер. Для просмотра статистики сцены служит команда Summary Info (Сведения), а для ввода свойств файла — команда File Properties (Свойства файла). Обе эти команды вызывают окна диалога, содержащие соответствующие сведения. Команда View Image File (Просмотр файла изображения) открывает окно диалога, в котором вы можете увидеть изображение перед загрузкой файла. Команда выхода из программы Exit (Выход) завершает список меню File (Файл). Новыми командами меню File (Файл), появившимися в восьмой версии программы, являются команды загрузки анимации — Load Animation (Загрузить анимацию) и ее сохранения — Save Animation (Сохранить анимацию). Для этого используется формат XML Animation File (XAF), позволяющий выборочно сохранять и загружать анимацию любого количества объектов сцены. Кроме того, появилась команда Asset Tracking (Средство слежения за процессами), вызывающая окно диалога, в котором можно получить доступ к файлам сцены и растровых изображений, используемых в редакторе материалов, их свойствам и многому другому.
Меню Edit (Правка) Меню Edit (Правка) (рис. 1.3) обеспечивает доступ к командам Undo (Отменить) и Redo (Повторить), которые позволяют, соответственно, отменять и повторять выполненные операции.
Undo Move Redo Scale
CW+Y
Hold Fetch
Л+СЫ+Н AH+Ctrl+F
Delete Clone
Delete Ort+V
SetetAl Select None Select Invert Select 8y Region
СИ+Д CW+O Ctrt*I
Ed* Named Selection Sets... Object properties.,.
Рис. 1.3. Меню Edit (Правка)
При помощи команды Hold (Зафиксировать) можно обезопасить себя от сбоя программы, сохранив сцену в буфер. Эту команду желательно также использовать перед выполнением действия, для которого не предусмотрена возможность отмены. Затем в любое время вы сможете восстановить сцену, выполнив команду Fetch (Выбрать).
22
Глава 1 . Интерфейс программы
Меню Edit (Правка) содержит также команду Delete (Удалить), которая удаляет выделенные объекты сцены. Команда Clone (Клонировать) вызывает окно диалога Clone Options (Параметры клонирования) для создания копий объектов. В средней части меню Edit (Правка) расположены команды выделения объектов — Select All (Выделить все), Select None (Снять выделение), Select Invert (Обратить выделение). Команда Select By (Выделить по) содержит подменю: Color (Цвету) и Name (Имени). При выборе второго варианта открывается окно Select Objects (Выбор объектов), которое также можно вызвать, нажав клавишу Н. В этом окне можно выделять объекты сцены по именам из списка, находящегося в левой части окна. Для фильтрации списка объектов служат настройки области List Types (Типы списка). Можно также сортировать список и настраивать режим отображения. С помощью команды Region (Область) меню Edit (Правка) вы можете указать тип области выделения и форму выделяющей рамки. Команда Edit Named Selection Sets (Редактировать название выделенной области) открывает окно, в котором легко можно выделять, редактировать и переименовывать созданные наборы объектов сцены. При выборе команды Object Properties (Свойства объекта) появляется окно, содержащее все свойства выделенного объекта.
Меню Tools (Инструменты) Меню Tools (Инструменты) (рис. 1.4) позволяет преобразовывать объекты различными способами. Почти все команды этого меню вызывают «плавающие» окна или окна диалога. ПРИМЕЧАНИЕ «Плавающее» окно отличается от окна диалога тем, что оно может оставаться открытым во время работы с объектами в окнах проекций. Окно диалога после использования необходимо закрыть для продолжения работы. Команда Transform Type-In (Ввод значений преобразования), которая вызывается также «горячей» клавишей F12, открывает окно диалога Transform Type-In (Ввод значений преобразования). В нем можно вводить абсолютные или относительные значения для перемещения, поворота или масштабирования объекта в зависимости от выбранного вида преобразования. Например, если вы на панели инструментов выбрали Select and Uniform Scale (Выделить и равномерно масштабировать), то при использовании этой команды откроется окно диалога Scale Transform Type-In (Ввод значений масштабирования). Если выбрать команду Selection Floater («Плавающее» окно выделения), расположенную в меню Tools (Инструменты), то откроется одноименное окно. Оно аналогично окну диалога, которое появляется при выполнении команды Edit • Select By • Name (Правка • Выделить по • Имени). В этом окне можно выделять объекты сцены, фильтруя и сортируя их по разным признакам. Команда Display Floater («Плавающее» окно отображения) вызывает одноименное окно, при помощи которого можно скрывать (настройки области Hide (Спрятать)),
Элементы интерфейса
23
Tools Transform Type-1л...
F12
Selection Floater... Display Ftoater... layer Manager tight lister... Manage Scene States... Mirror... Array... Align... Quick Align Snapshot... Spacing Tool... Clone and Algn...
Aft*A
Shift+I
Normal Align.. Align Camera Align t o View... Place Highlight
Ak+N
Ctrl+H
Isolate Selection
Ak+Q,
Rename Objects... Assign Vertex Colors,.. Color Clipboard... Camera Match... Grab Viewport... Measure Шапке•• • Channel Info...
Рис. 1.4. Меню Tools (Инструменты)
фиксировать (Freeze (Фиксировать)) объекты, а также устанавливать свойства их отображения (Object Level (Уровень объекта)). При выборе команды Layer Manager (Управление слоями) появляется «плавающее» окно, позволяющее создавать и удалять слои, управлять их свойствами, а также перемещать объекты в пределах различных слоев и получать доступ к их свойствам. Команда Light Lister (Список источников света) открывает «плавающее» окно с основными настройками всех источников света, находящихся в сцене. Оно позволяет изменять значения параметра Multiplier (Яркость), задавать возможность отбрасывания тени, управлять включением/выключением и другими параметрами светильников. Команда Manage Scene States (Управление состоянием сцены) (появилась в версии 3ds Max 8) позволяет записывать информацию о состоянии сцены (объекты, слои, материалы, камеры и свет) в файл с возможностью сохранения и последующего восстановления. Если выбрать команду Mirror (Зеркальное отображение), то появится окно диалога, позволяющее создавать симметричные копии объектов относительно выбранных осей координат. Здесь же можно задать тип создаваемых при копировании
24
Глава 1. Интерфейс программы
объектов: No Clone (He копировать), Сору (Независимая копия объекта), Instance (Привязка) и Reference (Подчинение). Команда Array (Массив) вызывает одноименное окно диалога, в котором можно создавать дубликаты выделенного объекта (или группы выделенных объектов), равномерно распределяя их в пространстве. Массив создается из выделенного объекта путем применения заданной комбинации преобразований (перемещения, поворота и масштабирования) с учетом системы координат и центра преобразования. Массивы могут быть одномерными (размещенными вдоль одного направления), двумерными (расположенными в двух направлениях) и трехмерными (расположенными в трех направлениях). Чтобы оперативно просматривать результат настроек, выполненных в окне Array (Массив), необходимо нажать кнопку Preview (Просмотр). Чтобы выровнять объекты относительно друг друга, необходимо выделить один из них, выбрать команду Align (Выравнивание) (или нажать сочетание клавиш Ctrl+A) и щелкнуть на втором объекте. Откроется окно диалога Align Selection (Выравнивание выделенных объектов), которое позволяет выравнивать объекты с использованием осей координат, характерных точек объектов относительно масштаба и ориентации локальных систем координат. Команда Quick Align (Быстрое выравнивание) не имеет предварительных настроек и выравнивает выделенный объект относительно целевого, используя перемещение опорной точки выделенного объекта в опорную точку целевого. Команда Snapshot (Снимок) позволяет создавать копии как единичного объекта в текущем кадре, так и набора клонов в определенные промежутки времени анимации с заданным количеством копий. При выборе команды Spacing Tool (Распределение) появляется одноименное окно диалога, в котором можно задать параметры распределения объектов для создания дубликатов выделенного объекта или совокупности выделенных объектов, выбрав из списка способ распределения и задав кривую траектории или начальную и конечную точки линии распределения. Здесь можно также указать тип объектов, получаемых при копировании и способ прикрепления дубликатов к линии пути. Команда Clone and Align (Клонирование и выравнивание) позволяет создавать копии объектов с одновременным выравниванием копии относительно целевого объекта. При использовании данной команды можно выбрать более одного целевого объекта (из списка или просто щелкнуть на нем в окне проекции), что позволяет создавать соответствующее количество копий, позиционированных в пространстве относительно этих объектов. Свиток Align Parameters (Параметры выравнивания) позволяет задавать параметры положения и выравнивания в пространстве копий выделенных объектов, а свиток настроек Clone Parameters (Параметры клонирования) — тип объектов, создаваемых при дублировании. Команда Normal Align (Выровнять нормаль), для выполнения которой также можно нажать сочетание клавиш Alt+N, позволяет выровнять выделенный объект, совместив его заданную нормаль с указанной нормалью целевого объекта. После указания норма-
Элементы интерфейса
25
лей выделенного и целевого объекта появляется окно диалога, в котором можно изменить положение и ориентацию выделенного объекта относительно целевого. При помощи команды Align Camera (Выровнять камеру) можно выровнять камеру относительно нормали выбранной грани. В результате направление линии визирования камеры изменяется так, что плоскость окна проекции выбранной камеры становится параллельной выбранной грани целевого объекта. Команда Align to View (Выровнять по проекции) позволяет выровнять локальные оси выделенного объекта (или совокупности объектов) относительно оси Z активного окна проекции. В открытом окне диалога Align to View (Выровнять по проекции) можно задать ось локальной системы координат объекта, которая будет выровнена в направлении Z системы координат активного окна проекции. Используя команду Place Highlight (Поместить блик), можно точно разместить на поверхности выделенного объекта блик от источника света или отражение другого объекта. Для этого программа поворачивает целевой объект так, чтобы он был ориентирован в направлении указанной нормали выделенного объекта. Команда Isolate Selection (Изолировать выделение), для выполнения которой можно также нажать сочетание клавиш Alt+Q, позволяет спрятать все объекты сцены, за исключением выделенного. Это позволяет освободить ресурсы компьютера и упростить для моделирования отображение сцены в окнах проекций. При переходе в данный режим открывается «плавающая» панель с кнопкой Exit Isolation Mode (Выход из режима изолированного выделения), щелкнув на которой, вы можете покинуть режим изолированного выделения. При выборе команды Rename Objects (Переименовать объекты) появляется «плавающее» окно, в котором можно одновременно изменить имена нескольких объектов. Для изменения имени выделенных объектов используется основное имя, к которому может быть добавлена приставка, окончание или номер. Полученные таким образом новые имена могут быть присвоены объектам, выделенным в окнах проекций или выбранным из списка окна диалога Pick Object to Rename (Выбрать объекты для переименования). Команды Assign Vertex Colors (Назначить вершинам цвет), Color Clipboard (Буфер обмена с цветом) и Camera Match (Горизонт камеры) открывают и выделяют соответствующие утилиты, находящиеся на вкладке Utilities (Утилиты) командной панели. При помощи команд Grab Viewport (Снимок окна проекции) можно скопировать изображение активного окна проекции и отобразить его в окне визуализации с возможностью последующего сохранения. Используя команду Measure Distance (Измерить расстояние), можно измерить расстояние между двумя точками, указанными в окне проекции. Команда Channel Info (Канал информации) открывает окно диалога Map Channel Info (Карта каналов информации), которое позволяет манипулировать данными каналов, часто используемых разработчиками игр. Окно содержит значительное количество
26
Глава 1. Интерфейс программы
информации, например, об имени объекта, его идентификаторе, имени каналов, количестве вершин, граней, а также размере. При помощи этого окна вы можете быстро определить, какой канал использует больше всего места и исключить его.
Меню Group (Группировка) Команды меню Group (Группировка) (рис. 1.5) позволяют контролировать создание, редактирование и разрушение именованных групп объектов.
Explode ::
Assembly
•
Рис. 1.5. Меню Group (Группировка)
Сгруппированные объекты действуют как единый объект, что позволяет одновременно манипулировать всеми объединенными в группу объектами. После выделения объектов сцены, которые нужно сгруппировать, и выполнения команды Group (Группировать) из меню Group (Группировка) откроется окно диалога с единственным параметром — текстовым полем для ввода имени группы. В число объектов, выделенных для группировки, могут также входить другие группы. Команда Ungroup (Разгруппировать) является обратной по отношению к Group (Группировать) и разгруппировывает объекты, составляющие группу. При этом вложенные группы не удаляются, но преобразования, примененные к группе, теряются. При помощи команды Open (Открыть) можно открыть доступ к объектам, находящимся в группе, для их преобразований или применения к ним модификаторов, которые не должны затрагивать остальных членов группы. После внесения изменений группу необходимо закрыть. Для закрытия группы необходимо выделить один из объектов, входящих в группу, и щелкнуть на строке команды Close (Закрыть), находящейся в меню Group (Группировка). Команда Attach (Присоединить) позволяет присоединить выделенный объект к группе (доступна при наличии выделенного объекта и группы). Противоположной по отношению к этой команде является команда Detach (Отделить), позволяющая выделить объект в открытой группе и вывести его из группы, сделав самостоятельным объектом. Команда Explode (Разрушить) аналогична команде Ungroup (Разгруппировать) и отличается только тем, что кроме выделенной группы удаляются и все вложенные в нее группы.
Элементы интерфейса
27
Подменю команды Assembly (Сборка) содержит те же команды, что и меню Group (Группировка), с той лишь разницей, что когда вы создаете сборку, программа включает в нее специальный тип вспомогательного объекта — head object (Главный объект).
Меню Views (Вид) Меню Views (Вид) (рис. 1.6) содержит команды, относящиеся к окнам проекций и позволяющие при этом управлять всеми аспектами отображения. jv»ws Undo View Change Redo View <3»nge
Shft+Z Shift+Y
Save Active User view Restore Active User View Grids Viewport Background.. Update Background Image Reset Background Transform / Show Transform
Ctrl+C
Add Default tights to Scene Redrew Al Views Activate A» Maps Deactivate All Maps t Update during Spinner Drag Adaptive Degradation Object Display С Л п д '
О Ak+O
Expert Mode
Рис. 1.6. Меню Views (Вид)
Для отмены изменений режимов отображения в активном окне проекции применяется команда Undo View Change (Отменить изменение в окне проекции), для выполнения которой можно также нажать сочетание клавиш Shift+Z. В частности, эта команда отменяет такие изменения в окнах проекций как прокрутка и масштабирование. Команда Redo View Change (Повторить изменение в окне проекции) применяется для повторения отмененного изменения состояния активного окна проекции, то есть для возврата к предыдущему состоянию. ПРИМЕЧАНИЕ Команды отмены и повторения выполненных изменений, которые относятся к состоянию активного окна проекции, не отменяют действия, выполненные над объектами сцены. Команда Save Active... View (Сохранить активную проекцию вида) позволяет сохранить в буфер программы состояние окна активной проекции. Одновременно в буфере может храниться до восьми различных проекций.
28
Глава 1 . Интерфейс программы
СОВЕТ Рекомендуется сохранять состояние окон проекций перед внесением существенных изменений в режим отображения сцены, чтобы при необходимости можно было вернуться к сохраненному состоянию. Для восстановления сохраненного режима отображения в активном окне проекции применяется команда Restore Active... View (Восстановить активную проекцию). При этом наименование проекции, допускающей восстановление, включается в название команды. Команда Grids (Координатные сетки) открывает доступ к подменю, содержащему следующие команды: Show Home Grid (Показать исходную сетку), Activate Home Grid (Активизировать исходную сетку), Activate Grid Object (Активизировать объектсетку) и Align Grid to View (Выровнять сетку в окне проекции). Все эти команды призваны облегчить моделирование объектов и используются в качестве конструкционных плоскостей, на которых строятся объекты. Команда Viewport Background (Фон окна проекции), для выполнения которой можно также нажать сочетание клавиш Alt+B, открывает окно диалога, позволяющее загрузить в качестве фона любого окна проекции растровое изображение или анимацию. Такие изображения облегчают процесс моделирования или согласование объектов сцены с визуализируемыми изображениями с использованием фона. Команда Update Background Image (Обновить изображение фона) применяется для обновления изображения фона в окне проекции после внесения изменения в растровое изображение или анимацию, использованную в качестве фона. Для восстановления положения и исходного масштаба изображения фона после примененных к нему преобразований служит команда Reset Background Transform (Восстановить преобразованный фон). Команда Show Transform Gizmo (Показать контейнер преобразования) включает и выключает показ значков векторов координатных осей выделенных объектов во всех окнах проекций. При помощи команды Show Ghosting (Показывать двойников) можно включить и выключить режим отображения двойников в окнах проекций для анимируемых объектов. При включенном режиме отображается позиция выделенного объекта в нескольких кадрах до и (или) после текущего кадра. Команда Show Key Times (Показывать время ключевых кадров) включает и выключает режим отображения моментов времени, соответствующих ключевым кадрам анимации вдоль траектории пути, где эти ключевые кадры расположены. Используя команду Shade Selected (Тонировать выделенные объекты), можно включить и выключить режим тонированной раскраски выделенных объектов во всех окнах проекций. Такой режим позволяет ускорить прорисовку объектов в окнах проекций, позволяя отображать выделенный объект в тонированном виде.
Элементы интерфейса
29
Команда Show Dependencies (Показывать зависимости) включает и выключает режим автоматического выделения объектов сцены, которые связаны или являются экземплярами выделенного объекта сцены. Команда Create Camera From View (Создать камеру из окна проекции), для выполнения которой можно также нажать сочетание клавиш Ctrl+C, позволяет создать камеру и позиционировать ее по активному окну проекции.
ПРИМЕЧАНИЕ Объект камеры можно создать только при активном окне проекции Perspective (Перспектива). Если камера активна, то она переместится и изменит свою ориентацию так, чтобы изображение в окне этой камеры соответствовало изображению исходного окна перспективной проекции.
Используя команду Add Default Lights to Scene (Включить в сцену исходные источники света), можно конвертировать исходное освещение в объекты сцены категории Lights (Источники света). Эта команда позволяет создавать начальное освещение с возможностью последующего изменения его параметров. Команда Redraw All Views (Перерисовать все окна проекций) обновляет изображение во всех окнах проекций. Необходимость такой перерисовки возникает в результате модификации или редактирования объектов сцены, при которых линии объектов оказываются прорисованными не полностью. Команда Activate All Maps (Активизировать все карты текстур) включает показ текстур для всех материалов сцены, а команда Deactivate All Maps (Деактивизировать все карты текстур) выключает его. При помощи команды Update During Spinner Drag (Перерисовать при перетаскивании счетчиков) можно включить и выключить режим перерисовывания изображения в окнах проекций при изменениях значений в счетчиках, выполняемых при помощи мыши. Команда Adaptive Degradation (Адаптивная деградация) позволяет оптимизировать скорость воспроизведения анимации в окнах проекций. На практике это выглядит так: воспроизведение анимации в тонированном режиме будет происходить до тех пор, пока скорость не упадет ниже установленного порогового значения, после чего 3ds Max понижает качество тонирования до следующего уровня для повышения скорости воспроизведения и т. д. Используя команду Object Display Culling (Выбраковка отображения объектов), можно повысить скорость перерисовки и навигации в окнах проекций больших сцен за счет скрытия менее значимых объектов сцены. Команда Expert Mode (Экспертный режим) максимально увеличивает окна проекций, убирая с экрана меню, панель инструментов, командную панель, строки
30
Глава 1 . Интерфейс программы
состояния и подсказки, кнопки управления анимацией и т. д. В данном режиме управлять программой можно только при помощи клавиатурных комбинаций.
Меню Create (Создание) Меню Create (Создание) (рис. 1.7) содержит команды быстрого создания объектов без использования командной панели.
Standard Primitives ; Objects
if Patdi&ids NUftBS
•>'< >
>: •
Рис. 1.7. Меню Create (Создание)
При выборе команды в меню Create (Создание) на командной панели автоматически появляются настройки соответствующего объекта. Категория Standard Primitives (Простые примитивы) объединяет наиболее часто используемые параметрические объекты (форма таких объектов определяется набором параметров), применяемые для построения более сложных геометрических форм. В их число входят: Plane (Плоскость), Box (Параллелепипед), Cone (Конус), Sphere (Сфера), GeoSphere (Геосфера), Cylinder (Цилиндр), Tube (Труба), Torus (Top), Pyramid (Пирамида), Teapot (Чайник). Категория Extended Primitives (Улучшенные примитивы) содержит более сложные по форме параметрические объекты, такие, как Hedra (Многогранник), Torus Knot (Тороидальный узел), Chamfer Box (Параллелепипед с фаской), Chamfer Cylinder (Цилиндр с фаской), Oil Tank (Цистерна), Capsule (Капсула), Spindle (Веретено), L-Extrusion (L-тело экструзии), Gengon (Многогранная призма), C-Extrusion (С-тело экструзии), RingWave (Круговая волна), Hose (Рукав), Prizm (Призма). В категорию АЕС Objects (Архитектурные объекты) входят параметрические объекты, применяемые для построения архитектурных моделей. Эти объекты позволяют существенно ускорить процесс моделирования зданий, интерьеров и экстерьеров. В число архитектурных объектов входят: Folliage (Растительность), Railing (Перила), Wall (Стена), Doors (Двери), Stairs (Лестница), Windows (Окна). Категория Compound (Составные) объединяет объекты, составленные из двух и более геометрических моделей или форм. Использование составных объектов позволяет более эффективно создавать сложные модели органического происхождения
Элементы интерфейса (например, машиностроительные детали). В эту категорию входят Morph (Морфинговые), Scatter (Распределенные), Conform (Согласованные), Connect (Соединенные), BlobMesh (Капля), ShapeMerge (Слитые с формой), Boolean (Булев), Terrain (Рельеф), Loft (Лофтинговые), Mesher (Сеточные). В категории Particles (Частицы) представлены такие типы систем частиц, как Spray (Брызги), Snow (Снег), Blizzard (Метель), РАггау (Массив частиц), PCloud (Облако частиц), Super Spray (Супербрызги). Категория Patch Grids (Сетки патчей) представлена двумя командами создания типов сетки: Quad Patch (Четырехугольный патч) и Tri Patch (Треугольный патч). При помощи сетки патчей можно создавать сглаженные поверхности за счет изменения управляющих вершин поверхности патча. 1
Категория NURBS объединяет инструменты создания поверхностей двух типов: CV Surface (CV-поверхность) и Point Surface (Точечная поверхность), а также построения кривых: CV Curve (CV-кривая) и Point Curve (Точечная кривая). В категории Dynamics (Динамика) содержатся динамические объекты Damper (Амортизатор) и Spring (Пружина), которые имитируют действие сил давления или упругости при моделировании анимации с учетом динамики взаимодействия объектов сцены. Категория Shapes (Формы) объединяет сплайны различных типов: Line (Линия), Rectangle (Прямоугольник), Section (Сечение), Arc (Дуга), Circle (Круг), Donut (Кольцо), Ellipse (Эллипс), Helix (Спираль), NGon (Многоугольник), Star (Звезда) и Text (Текст). Основное предназначение сплайнов — служить заготовками для создания трехмерных объектов и линий, обозначающих траекторию анимации. В 3ds Max 8 появилась новая категория объектов форм — Extended Shapes (Улучшенные формы). Эта категория объединяет такие объекты, как WRectangle (W-прямоугольник), Channel (Канал), Angle (Угол), Tee (Т-образная форма) и Wide Flange (Широкий фланец). В категории Lights (Источники света) объединены различные типы источников света, которые могут быть использованы в сцене. Она содержит следующие подкатегории: Standard Lights (Стандартные источники света) и Photometric Lights (Фотометрические источники света), а также Daylight System (Система дневного освещения). Категория Cameras (Камеры) представлена камерами двух типов: Free Camera (Свободная камера) и Target Camera (Нацеленная камера). Здесь же находится команда создания камеры из окна проекции Create Camera From View (Создать камеру из окна проекции). В категории Helpers (Вспомогательные объекты) содержатся вспомогательные объекты различных типов, которые не включаются в итоговое изображение сцены и предназначены для упрощения моделирования или анимации. В эту категорию входят: Dummy (Пустышка), Grid (Координатная сетка), Point (Точка), Таре Masure (Рулетка), Protractor (Угломер), Compass (Компас) и др. 1
NURBS — Non Uniform Rational B-Splines (неоднородные рациональные В-сплайны).
32
Глава 1 . Интерфейс программы
Категория SpaceWarps (Объемные деформации) представлена пятью разновидностями объемных деформаций: Forces (Сила), Deflectors (Отражатели), Geometric/ Deformable (Деформируемая геометрия), Modifier-Based (На базе модификаторов) и Particles & Dynamics (Частицы и динамика). Каждая разновидность объединяет однотипные объемные деформации, например в Geometric/Deformable (Деформируемая геометрия) входят FFD(Box) (Произвольно деформируемый контейнер (прямоугольный)), Wave (Волна), Bomb (Бомба) и т. д. В категорию Systems (Дополнительные инструменты) входят Bones IK Chain (Цепочки костей), Daylight System (Система дневного освещения), Ring Array (Хоровод) и Biped (Двуногий). •
Меню Modifiers (Модификаторы) Меню Modifiers (Модификаторы) (рис. 1.8) позволяет назначать модификаторы, не переходя на вкладку Modify (Изменение) командной панели. ' . Selection
Conversion
doth
,,
: Н * and fur
TOO»,.:
i Form Deforms1* > . Parametric Reformers *
Рис. 1.8. Меню Modifiers (Модификаторы)
Перед присвоением параметрическому объекту модификатора, необходимо выделить сам объект, к которому нужно применить модификатор. При этом в меню будут активны только те модификаторы, которые могут быть применены к данному примитиву. После выделения модификатора в меню Modifiers (Модификаторы) автоматически откроется панель, на которой вы можете изменить параметры выбранного модификатора. Модификаторы, представленные в меню Modifiers (Модификаторы), объединены в 14 категорий. Категория Selection (Выделение) содержит модификаторы, позволяющие выделять объекты или подобъекты, чтобы потом применять другие модификаторы
Элементы интерфейса
33
только к выделению. К модификаторам выделения относятся: Mesh Select (Выделение поверхности), Poly Select (Выделение полигонов), Patch Select (Выделение патчей), Spline Select (Выделение сплайна), Volume Select .(Объемное выделение), FFD Select (Выделение свободной формы деформации), Select By Channel (Выделение по каналу). В категории Patch/Spline Editing (Редактирование патчей/сплайнов) представлены модификаторы редактирования сплайнов и патчей: Edit Patch (Редактирование патчей), Edit Spline (Редактирование сплайна), Cross Section (Поперечное сечение), Surface (Поверхность), Delete Patch (Удалить патч), Delete Spline (Удалить сплайн), Lathe (Вращение вокруг оси), Normalize Spline (Нормализовать сплайн), Fillet/ Chamfer (Закругление/фаска), Trim/Extend (Обрезать/расширить), Renderable Spline Modifer (Модификатор визуализации сплайна). Кроме того, в 3ds Max 8 категория Patch/Spline Editing (Редактирование патчей/сплайнов) дополнилась модификатором Sweep (Шаблон), который позволяет выполнять лофтинг профилей вдоль линий, импортированных из AutoCAD, или кривых 3ds Max, и при этом использовать предустановленные формы. В отличие от модификатора Loft (Лофтинговые), при помощи модификатор Sweep (Шаблон) можно применять в качестве формы пути кривые, имеющие разывы. Модификаторы категории Mesh Editing (Редактирование поверхности) применяются для редактирования сетчатых оболочек объектов. К модификаторам данной категории относятся: Cap Holes (Накрытие отверстий), Delete Mesh (Удалить поверхность), Edit Mesh (Редактирование поверхности), Edit Normals (Редактирование нормалей), Edit Poly (Редактирование полигонов), Extrude (Выдавливание), Face Extrude (Выдавливание граней), MultiRes (Множественное разрешение), Normal Modifier (Модификатор нормалей), Optimize (Оптимизация), Smooth (Сглаживание), STL Check (STL-тест), Symmetry (Симметрия), Tessellate (Разбиение), Vertex Paint (Раскраска вершин), Vertex Weld (Слияние вершин). Категория Conversion (Замена) представлена тремя модификаторами, применяемыми для преобразования объектов одного типа в другой: Turn to Mesh (Преобразовать в поверхность), Turn to Patch (Преобразовать в патч-поверхность), Turn to Poly (Преобразовать в полигональную поверхность). Категория Animation (Анимация) содержит 16 модификаторов, применяемых для создания и редактирования анимации. В их число входят модификаторы Skin (Оболочка), Morpher (Морфинг), Flex (Гибкость), Melt (Таяние), Patch Deform (Деформация по патчу), Path Deform (Деформация по траектории), Surf Deform (Деформация по поверхности). В 3ds Max 8 в меню Modifiers (Модификаторы) добавилась категория Cloth (Ткань), содержащая два модификатора: Cloth (Ткань) и Garment Maker (Моделирование одежды). С помощью обоих модификаторов можно моделировать ткань. При этом модификаторы позволяют создавать поверхности выкроек, расчитывать динамику, учитывая пересечения с поверхностью, интерактивно управлять поведением ткани и т. д. Еще одна новая категория меню Modifiers (Модификаторы) 3ds Max 8 — Hair and Fur (Волосы и мех). Она позволяет создавать прически при помощи «расчески» для
34
Глава 1. Интерфейс программы
сложных контуров, моделировать завивку, хвостики и «пучки». Кроме того, возможно использование динамики волос — наследование инерции от движения кожи или других поверхностей. В категорию UV Coordinates (UV координаты) вошли модификаторы, связанные с наложением, редактированием и использованием проекционных координат: UVW Map (UVW-проекция), Unwrap UVW (Расправить UVW-проекцию), Camera Map (Проекция камеры), Projection (Проекция) и т. д. Категория Cache Tools (Инструменты кэширования) представлена двумя однотипными модификаторами: Point Cache (Точка кэша) и модификатором глобального пространства Point Cache (WSM) (Точка кэша (WSM)). В категорию Subdivision Surfaces (Поверхности с разбиением) вошли три модификатора, относящиеся к поверхностям с разбиением: TurboSmooth (Быстрое сглаживание), MeshSmooth (Сглаженная поверхность) и HSDS Modifier (HSDS-модификатор). Категория Free Form Deformers (Произвольные деформации) представлена пятью модификаторами: FFD 2x2x2 (Произвольная деформация 2x2x2), FFD 3x3x3 (Произвольная деформация 3x3x3), FFD 4x4x4 (Произвольная деформация 4x4x4), FFD Box (Произвольно деформируемый контейнер (прямоугольный)), FFD Cylinder (Произвольно деформируемый контейнер (цилиндрический)). В категории Parametric Deformers (Параметрические деформации) объединены 22 модификатора, предназначенные для работы с пространством объекта. В их число входят следующие модификаторы: Bend (Изгиб), Taper (Заострение), Twist (Скручивание), Noise (Шум), Stretch (Растягивание), Squeeze (Сдавливание), Push (Выталкивание), Relax (Ослабление), Ripple (Рябь), Wave (Волна), Skew (Перекос), Slice (Срез), Shell (Раковина), Spherify (Шарообразность), Affect Region (Воздействовать на область), Lattice (Решетка), Mirror (Зеркальное отображение), Displace (Смещение), XForm (Преобразование), Preserve (Хранение), Substitute (Замена) и Physique (Телосложение). Категория Surface (Поверхность) представлена четырьмя модификаторами: Material (Материал), Material By Element (Материал по элементу), Disp Approx (Аппроксимация смещения) и Displace Mesh (WSM) (Смещение поверхности (WSM)). Категория NURBS Editing (Редактирование NURBS-объектов) включает три модификатора, предназначенных для редактирования NURBS-объектов. В их число входят Surface Select (Выделение поверхности), Surf Deform (Деформация поверхности) и Disp Approx (Аппроксимация смещения). В категорию Radiosity (Диффузное отражение) вошло два модификатора: Subdivide (WSM) (Разбиение (WSM)) и Subdivide (Разбиение). Последняя категория меню Modifiers (Модификаторы) — Cameras (Камеры) — состоит из одного модификатора Camera Correction (Корректирование камеры).
Меню Character (Персонаж) Меню Character (Персонаж) (рис. 1.9) позволяет создавать любые существа и работать с ними.
Элементы интерфейса
35
Character Create Character 1 Destroy Character Lock Unlock Insert Character.., Save Character... Bone Tools Set Skin Pose Assume Skin Pose Skin Pose Mode
Рис. 1.9. Меню Character (Персонаж) Команды Create Character (Создать персонаж) и Destroy Character (Разрушить персонаж) добавляют и, соответственно, удаляют персонаж из сцены. Используя команды Lock (Блокировать) и Unlock (Разблокировать), можно блокировать и разблокировать свободное перемещение объектов. Команды Insert Character (Вставить персонаж) и Save Character (Сохранить персонаж) позволяют сохранить персонаж как отдельный объект, а затем вставить его в другую сцену. При выборе команды Bone Tools (Инструменты костей) открывается окно диалога, позволяющее редактировать базовую систему костей. Кроме костей персонажи обладают оболочкой. За ее создание отвечают команды Set Skin Pose (Установить вид оболочки), Assume Skin Pose (Присвоить оболочку) и Skin Pose Mode (Режим вида оболочки).
Меню reactor Меню reactor (рис. 1.10) содержит все необходимые команды для создания симуляции физических реакций.
Create Object
•
Apply Modifier
•
Open Property Editor Utilities
•
Preview Animation Create Animation About reactor..,
Рис. 1.10. Меню reactor Категория Create Object (Создать объект) содержит 21 команду, позволяющую создать объект модуля reactor. Среди них Rigid Body Collection (Коллекция твердых тел), Cloth
36
Глава 1 . Интерфейс программы
Collection (Коллекция тканей), Soft Body Collection (Коллекция мягких тел), Rope Collection (Коллекция веревок), Wind (Ветер), Water (Вода), Constraints Solver (Решатель ограничений), Car-Wheel Constraint (Ограничение автомобильного колеса) и др. В категорию Apply Modifier (Применить модификатор) включены три модификатора: Cloth Modifier (Модификатор тканей), Soft Body Modifier (Модификатор мягких тел), Rope Modifier (Модификатор веревок). Команда Open Property Editor (Открыть редактор свойств) открывает «плавающее» окно, в котором можно редактировать свойства объектов модуля reactor. Категория Utilities (Утилиты) содержит семь команд, четыре из которых относятся к редактированию ключевых кадров анимации: Analyze World (Проанализировать мир), Convexity Test (Тест на выпуклость), View Stored Collisions (Показать сохраненные столкновения), Reduce Keys (Selection) (Преобразовать ключи (выделенные)), Reduce Keys (All) (Преобразовать ключи (все)), Delete Keys (Selection) (Удалить ключи (выделенные)), Delete Keys (All) (Удалить ключи (все)). Команда Preview Animation (Просмотр анимации) позволяет предварительно просмотреть анимацию в окне Real-Time Preview (Просмотр в режиме реального времени). Команда Create Animation (Создать анимацию) создает анимацию на основе объектов модуля reactor, присутствующих в сцене, и их настроек.
Меню Animation (Анимация) Меню Animation (Анимация) (рис. 1.11) содержит множество команд, предназначенных для создания и управления анимацией сцены. Animation
Constraints
''*,... *
X'anrforra Contrders
>-
Position Controllers
•
Scale Controlters
•
Parameter editor..,
Att+i
ParameteV Collector.,.
Al$+2
W r e Parameters
*•
til Reaction*Ianager Make Preview,., I:;-Vteig Preview,,, . R e n a m e Preview,., TogefeUmdf J
Delete Selected Animation
Рис. 1.11. Меню Animation (Анимация)
Категория IK Solvers (IK-решатель) содержит четыре команды для создания решателей (вспомогательных объектов, которые управляют положением и поворотом
Элементы интерфейса
37
связей и цепочек (например, костей) в инверсной кинематике): HI Solver (HI-решатель), HD Solver (HD-решатель), IK Limb Solver (IK-решатель конечностей) и SplinelK Solver (Сплайновый IK-решатель). В категории Constraints (Ограничения) содержится семь команд для создания контроллеров ограничения анимации объектов: Attachment Constraint (Ограничение по привязке), Surface Constraint (Ограничение по поверхности), Path Constraint (Ограничение по пути), Position Constraint (Ограничение по положению), Link Constraint (Ограничение по связи), LookAt Constraint (Ограничение по линии взгляда), Orientation Constraint (Ограничение по повороту). Категория Transform Controllers (Контроллеры преобразования) содержит три контроллера преобразования: Link Constraint (Ограничение по связи), Position/Rotation/ Scale (Положение/вращение/масштабирование) и Script (Сценарий). В категории Position Controllers (Контроллеры положения) содержится 15 контроллеров, среди которых Audio (Аудио), Bezier (Безье), Linear (Линейный), Noise (Шум), Script (Сценарий), Path Constraint (Ограничение по пути), Position Constraint (Ограничение по положению), Surface Constraint (Ограничение по поверхности) и др. Категория Rotation Controllers (Контроллеры вращения) содержит 11 контроллеров, в том числе Audio (Аудио), Linear (Линейный), Noise (Шум), Script (Сценарий), Smooth (Сглаживание), LookAt Constraint (Ограничение по линии взгляда), Orientation Constraint (Ограничение по повороту). В категории Scale Controllers (Контроллеры масштабирования) содержится 10 контроллеров, среди которых Audio (Аудио), Bezier (Безье), Expression (Выражения), Linear (Линейный), Noise (Шум), Script (Сценарий). Команды Parameter Editor (Редактор параметров) и Parameter Collector (Коллектор параметров) открывают окна диалога, в которых содержатся анимируемые параметры и средства управления ими. Редактор параметров позволяет присваивать заказные атрибуты объектам, модификаторам, материалам и анимационным роликам. В категории Wire Parameters (Параметры связей) содержатся две команды: Wire Parameters (Параметры связей) и Parameter Wire Dialog (Окно диалога параметров связей), позволяющие назначить связи и редактировать параметры взаимодействия связанных объектов. Команда Reaction Manager (Менеджер влияния) открывает одноименное окно диалога, в котором можно присваивать и настраивать Reaction Controllers (Контроллеры влияния), добавлять и удалять управления и зависимости, редактировать кривые графов и выполнять многое другое. Три следующие команды меню Animation (Анимация) — Make Preview (Создать просмотр), View Preview (Запустить просмотр) и Rename Preview (Переименовать просмотр) — позволяют увидеть и оценить анимацию, сохранив ее во временном буфере, за счет визуализации активного окна проекции до выполнения полной визуализации. Впоследствии эту анимацию можно переименовать и сохранить.
38
Глава 1. Интерфейс программы
В 3ds Max 8 появилась новая команда меню Toggle Limits (Переключить ограничители), которая позволяет включать либо выключать использование контроллеров ограничений. Завершает группу команда Delete Animation (Удалить анимацию), удаляющая ключи анимации выделенного объекта.
Меню Graph Editors (Графические редакторы) Меню Graph Editors (Графические редакторы) (рис. 1.12) содержит команды для работы с графическими редакторами программы 3ds Max 8. Graph Editors Track View - £urve Editor.., Track View - Dope Sheet... £^ew Track Vtew... Delete Track View... Saved Irack Views (Jew Schematic View... Delete Schematic View... Saved Schematic Views Particle View
> 6
Motion Mixer..,
Рис. 1.12. Меню Graph Editors (Графические редакторы)
В верхней части данного меню находятся две однотипные команды: Track View — Curve Editor (Редактор треков — редактор кривых) и Track View — Dope Sheet (Редактор треков — таблица структуры). Команда New Track View (Новое окно редактора треков) открывает дополнительное окно Graph Editors (Графические редакторы). С помощью команды Delete Track View (Удалить окно редактора треков) можно удалить закрытые окна Curve Editor (Редактор кривых) и Dope Sheet (Таблица структуры). Команда Saved Track Views (Сохраненные окна редактора треков) позволяет получить доступ к закрытым окнам просмотра треков. При выборе команды New Schematic View (Новое окно редактора структуры) открывается окно просмотра структуры трехмерной сцены в виде графа, представляющего собой совокупность узлов и ветвей. Команда Delete Schematic View (Удалить окно редактора структуры) позволяет удалять закрытые окна просмотра структуры. Используя команду Saved Schematic View (Сохраненные окна редактора структуры), можно получить доступ к закрытым окнам просмотра структуры. Команда Particle View (Представление частиц) открывает одноименное окно диалога, позволяющее контролировать взаимодействие систем частиц в сцене.
39
Элементы интерфейса
Завершает меню анимации новая команда Motion Mixer (Смешивание анимации), которая появилась в 3ds Max 8. Она вызывает одноименное окно, с помощью которого можно, например, редактировать анимацию объектов модуля Character Studio.
Меню Rendering (Визуализация) Меню Rendering (Визуализация) (рис. 1.13) содержит команды, используемые для окончательной визуализации сцены. Команда Render (Визуализация), которую также можно выполнить нажатием клавиши F10, открывает окно диалога Render Scene (Визуализация сцены). В данном окне можно установить выходные параметры изображения, номера кадров для визуализации, параметры сглаживания, окно проекции, из которого будет проводиться визуализация, а также выбрать модуль для визуализации и выполнить некоторые другие настройки. При выборе команды Environment (Окружающая среда) появляется окно диалога Environment and Effects (Окружающая среда и эффекты), в котором настраиваются такие параметры, как цвет фона или фоновое изображение, глобальное освещение и атмосферные эффекты. | Rendering Render...
FIB
Environment... Effects... Advanced lighting Render To Texture... Batch Render...
f
Raytracer Settings.,. Raytrace Global IndudeiExclude mental ray Message Window... ActrveShade Floater... ActiveShade Viewport
Material Editor... Material/Map Browser... «deo Post,. Show Last Rendering Panorama Exporter... Print Size Wizard... RAM Player...
Рис. 1.13. Меню Rendering (Визуализация)
Команда Effects (Эффекты) аналогично предыдущей команде вызывает окно Environment and Effects (Окружающая среда и эффекты), но с открытой вкладкой Effects (Эффекты). Категория Advanced Lighting (Дополнительное освещение) содержит команды, открывающие окно диалога с настройками дополнительного освещения. В число команд
40
Глава 1. Интерфейс программы
входят: Light Tracer (Трассировка лучей), Radiosity (Диффузное отражение), Exposure Control (Контроль экспозиции) И Lighting Analysis (Анализ освещения). Команда Render To Texture (Визуализация на текстуру) открывает окно диалога, в котором можно задать параметры для визуализации текстуры с использованием освещения теней и т. д. Команда Batch Render (Пакетная визуализация) (появилась в 3ds Max 8) позволяет визуализировать последовательность изображений с разных углов просмотра (камер) с возможностью изменения настроек в промежуточных видах. При выборе команды Raytracer Settings (Установки трассировки) открывается окно Render Scene (Визуализация сцены) на вкладке Raytracer (Трассировка). В нем можно изменить глобальные параметры трассировки лучей. Команда Raytrace Global Include/Exclude (Глобальное включение/выключение трассировки) вызывает окно диалога, в котором можно произвольно включать либо выключать объекты из просчетов трассировки лучей. Используя команду mental ray Message Window (Окно сообщения mental ray), можно вызвать окно, в котором выводятся сообщения модуля визуализации mental ray. При выборе команды ActiveShade Floater («Плавающее» окно активного тонирования) появляется окно, аналогичное Rendered Frame Window (Окно визуализированных кадров), с той лишь разницей, что здесь вы можете увидеть визуализацию всех преобразований, выполненных в окне проекции. Команда ActiveShade Viewport (Окно активного тонирования) аналогична предыдущей, но в качестве окна визуализации используется окно проекции. При помощи команды Material Editor (Редактор материалов), которая выполняется также нажатием клавиши М, можно открыть окно редактора материалов, позволяющее создавать и редактировать материалы сцены. Команда Material/Map Browser (Окно выбора материалов и карт) открывает окно диалога, предназначенное для просмотра и выбора материалов или текстурных карт. Используя команду Video Post (Видеомонтаж), можно открыть окно работы с программным модулем Video Post (Видеомонтаж), позволяющим добавить изображениям специальные графические эффекты. Команда Show Last Rendering (Показать последнюю визуализацию) вызывает окно с изображением последней выполненной визуализации. При помощи команды Panorama Exporter (Экспортер панорамы) можно визуализировать панорамные сцены. Команда Print Size Wizard (Мастер печати) открывает окно диалога, помогающее настроить размер визуализируемого изображения для печати. С помощью команды RAM Player (RAM-проигрыватель) можно воспроизводить различные изображения и анимацию.
Элементы интерфейса
41
Меню Customize (Настройка) Меню Customize (Настройка) (рис. 1.14) объединяет команды, служащие для изменения, сохранения и загрузки пользовательских настроек интерфейса программы, включая единицы измерения, привязки и т. п. ;
Свймиши interface... l,oad Custom UI Scheme R.evert to Startup Layout Custom U! and Defaults Switcher...
UKJ&UlUyout
«-HJ
Configure User Paths,,. Qanfigure System Path*... Unte Setup... Viewport
йтПтФоп...
! Ereferences..
Рис. 1.14. Меню Customize (Настройка)
При выборе команды Customize User Interface (Настройка пользовательского интерфейса) открывается одноименное окно диалога, содержащее пять вкладок: для настройки сочетаний клавиш, панелей инструментов, контекстных меню, меню и цвета. Команды Save Custom UI Scheme (Сохранить схему пользовательского интерфейса) и Load Custom UI Scheme (Загрузить заказную схему пользовательского интерфейса) позволяют сохранить изменения, внесенные в настройки интерфейса, в отдельные файлы и загрузить их. С помощью команды Revert to Startup Layout (Вернуться к установкам по умолчанию) можно загрузить настройки программы, заданные по умолчанию. СОВЕТ При случайном изменении внешнего вида интерфейса программы самый простой способ вернуться к исходному состоянию — выполнить команду Revert to Startup Layout (Вернуться к установкам по умолчанию). Команда Custom UI and Defaults Switcher (Пользовательская схема и переключение на предварительно установленные) открывает окно диалога, в котором можно просмотреть аннотацию и выбрать предварительно установленную схему интерфейса, а также сохраненные пользовательские схемы. Категория Show UI (Показать пользовательский интерфейс) объединяет четыре команды, которые включают/выключают показ элементов пользовательского интерфейса: Command Panel (Командная панель), Floating Toolbars («Плавающие»
42
Глава 1. Интерфейс программы
панели инструментов), Main Toolbar (Главная панель инструментов) и Track Bar (Строка треков). Команда Lock UI Layout (Блокировка схемы пользовательского интерфейса) позволяет заблокировать пользовательский интерфейс для предотвращения случайных изменений. В 3ds Max 8 команда Configure Paths (Конфигурация путей) разделилась на две самостоятельные команды: Configure User Paths (Конфигурация пользовательских путей) и Configure System Paths (Конфигурация системных путей). При выборе первой команды открывается окно Configure User Paths (Конфигурация пользовательских путей), в котором можно добавить либо изменить установленные по умолчанию пути к пользовательским файлам, таким как файлы сцены, текстур, анимации, дополнительных модулей и т. д. Вызвав окно Configure System Paths (Конфигурация системных путей), можно изменить пути к системным папкам программы, например указать новый путь для файлов справки или шрифтов, используемых приложением. Команда Units Setup (Настройка единиц) открывает одноименное окно диалога, в котором можно изменить отображение системных единиц. С помощью команды Grid and Snap Settings (Настройки сетки и привязок) можно открыть одноименное окно, позволяющее при необходимости задать способ и допуски привязок, а также настроить размерность и шаг сетки окон проекций. Команда Viewport Configuration (Конфигурирование окна проекции), открывающая одноименное окно диалога, позволяет выполнить настройки активного или всех окон проекций. Используя команду Plug-in Manager (Менеджер подключаемых модулей), можно открыть одноименное окно, включающее список установленных в системе подключаемых модулей с их названием, описанием, статусом (используется или отключен), размером и указанием полного пути. Команда Preferences (Параметры) открывает окно диалога, позволяющее настраивать и контролировать многие аспекты программы 3ds Max. В их число входят настройки визуализации, окон проекций, анимации, файловой системы, габаритных контейнеров и др.
Меню MAXScript Меню MAXScript (рис. 1.15) содержит команды, позволяющие работать со встроенным в программу языком макропрограммирования MAXScript. Команда New Script (Создать сценарий) вызывает окно Untitled — MAXScript, служащее для написания новых и редактирования существующих макрокоманд. При помощи команды Open Script (Открыть сценарий) можно открыть окно диалога Choose Editor File (Выберите файл редактора), содержащее перечень файлов макросов. Команда Run Script (Выполнить сценарий) также вызывает окно диалога Choose Editor File (Выберите файл редактора). После выбора файла макроса он сразу запускается.
Элементы интерфейса
43
j MAXSCrlpt New Script .: , QpenScrpt,, Rescript... MAXScripc listener... Macro Recorder • • • • • • Visual M A X S o i p t E d t o r . , debugger Dialog...
Рис. 1.15. Меню MAXScript
Используя команду MAXScript Listener (Интерпретатор MAXScript), можно открыть окно интерпретатора команд MAXScript, которое служит для контроля выполнения макрокоманд. Команда Visual MAXScript Editor (Графический редактор MAXScript) вызывает окно диалога Visual MAXScript (Графический редактор MAXScript), позволяющее выполнить построение графических элементов интерфейса для использования вместе с макрокомандами. В восьмой версии программы 3ds Max 8 в меню MAXScript (MAXScript) появилась команда Debugger Dialog (Окно отладчика), позволяющее полнее и проще использовать редактор макрокоманд 3ds Max.
Меню Help (Справка) Меню Help (Справка) (рис. 1.16) содержит команды доступа к справочной информации и урокам программы 3ds Max. Команды New Features Guide (Справочник новых возможностей), User Reference (Справочник пользователя) и MAXScript Reference (Справочник по MAXScript) позволяют получить помощь по всем элементам и функциям программы 3ds Max. Информация представлена в стандарте Microsoft Compiled HTML Help. ihelp New FMtutas Guide... Lteer Reference... MA-SoiptPel-eierce
HotKeytiap...
.
AddttrolHelp...
License Borrowing About 3dsM«,..
Рис. 1.16. Меню Help (Справка)
Используя команду Tutorials (Уроки), можно открыть окно, содержащее уроки по всем основным темам программы. Команда HotKey Map (Карта сочетаний клавиш) вызывает интерактивное окно, содержащее набор основных сочетаний клавиш.
44
Глава 1 . Интерфейс программы
С помощью команды Additional Help (Дополнительная справка) можно получить справочную информацию по дополнительным модулям, установленным в приложении. Категория 3ds Max on the Web (3ds Max в Интернете) содержит команды, автоматически открывающие браузер с целью поиска и загрузки обновлений, сетевой поддержки, уроков и т. д. Команда Activate 3ds Max (Активизировать 3ds Max) вызывает окно активизации продукта, в котором вы можете ввести код авторизации. При выборе команды About 3ds Max (О 3ds Max) открывается окно, показывающее серийный номер продукта, драйвер видеоустройства, тип лицензии и т. д.
Панель инструментов По умолчанию главная панель инструментов отображается под строкой меню в верхней части окна программы, а панель reactor — в его левой части. Использование панелей инструментов — один из наиболее удобных способов выполнения большинства команд, для чего достаточно одного щелчка кнопкой мыши на значке, расположенном на панели инструментов. Кнопки на панели инструментов программы 3ds Max могут быть двух размеров — стандартные (16 х 16 пикселов) и крупные (24 х 24 пиксела) с улучшенным графическим отображением. По умолчанию программа загружается с кнопками крупного размера, из-за чего панель инструментов не помещается на экране полностью. Для отображения скрытой части панели предусмотрена прокрутка по горизонтали. Чтобы заменить крупные кнопки на стандартные, выполните команду Customize • Preferences (Настройка • Параметры). Откроется окно Preference Settings (Параметры установок), в котором необходимо перейти на вкладку General (Общие). В области UI Display (Интерфейс пользователя) снимите флажок Use Large Toolbar Buttons (Использовать крупные кнопки) и щелкните на кнопке ОК. Перезапустите программу для обновления отображения интерфейса. ВНИМАНИЕ С целью максимального отображения рабочего пространства все кнопки программы, изображенные в книге, имеют стандартный размер. Все закрепленные панели могут быть «плавающими» (рис. 1.17). Для этого достаточно щелкнуть на двух вертикальных линиях в левой (или верхней) части панели и переместить панель. После этого можно масштабировать и перемещать окно в пределах интерфейса программы. Двойной щелчок кнопокой мыши на заголовке окна панели вернет ее на место или пристыкует к любой стороне окна программы. Все кнопки панели инструментов снабжены подсказками, которые появляются при наведении указателя мыши на кнопку и удержания над ней. Небольшой треугольник в правом нижнем углу некоторых кнопок указывает, что при нажатии
Элементы интерфейса
45
и удержании такой кнопки раскроется панель данного инструмента с дополнительным набором кнопок. is
iMain Toolbar
m А Ф Ф | ЖI
HAH
d
•
0 «В View
1 ! ОН и Л) 1 r 11 O. i %
SSI 53• jv.ew
^ ^
Рис. 1.17. Главная панель инструментов в виде «плавающего» окна
Главная панель инструментов Рассмотрим кнопки главной панели инструментов. •
)Г> Undo (Отменить) (Ctrl+Z) — отменяет последнюю команду или группы команд.
•
f>( Redo (Повторить) (Ctrl+Y) — возвращает команды, которые были отменены.
•
" ^ Select and Link (Выделить и связать) — устанавливает связь между объектами сцены.
•
t g Unlink Selection (Разорвать связь с выделенным объектом) — разрывает связи между объектами.
•
5?Й Bind to Space Warp (Связать с воздействием) — связывает объект с источником объемной деформации.
• [АЙ ~ 3 Selection Filter (Фильтр выделения) — раскрывающийся список, ограничивающий типы объектов, которые могут быть выделены. • Г\ Select Object (Выделение объекта) (Q) — инструмент выделения объектов. •
i n Select by Name (Выделить по имени) (Н) — открывает окно диалога для выделения объектов по имени.
•
О , Rectangular Selection Region (Прямоугольная область выделения), О . Circular Selection Region (Круглая область выделения), Б*] Fence Selection Region (Произвольная форма выделения), С>). Lasso Selection Region (Выделение лассо), С5 Paint Selection Region (Выделение кистью) (Ctrl+F) — выделяет объекты различными формами выделяющей рамки.
•
Ш\ ill! Window/Crossing (Оконное/Пересекающее выделение) — устанавливает, каким образом будет выделяться объект: обводкой или пересечением. • •!+1 Select and Move (Выделить и переместить) (W) — выделяет и перемещает объект. • О Select and Rotate (Выделить и повернуть) (Е) — выделяет и поворачивает объект сцены. •
И Select and Uniform Scale (Выделить и равномерно масштабировать), Д_ Select агТЭ Non-uniform Scale (Выделить и неравномерно масштабировать), й_ Select and Squash (Выделить и сжать) (R) — выделяет и масштабирует объект различными способами.
• (view 3 Reference Coordinate System (Система координат) — раскрывающийся список, при помощи которого устанавливается система координат, используемая для трансформаций.
46
Глава 1. Интерфейс программы
•
I® Use Pivot Point Center (Использовать опорные точки объектов), | $ Use Selection Center (Использовать центр выделения), l?_ Use Transform Coordinate Center (Использовать начало координат) — устанавливает центр преобразования масштаба и поворота.
•
«j* Select and Manipulate (Выделить и манипулировать) — выделяет объект и управляет при помощи манипуляторов его параметрами.
•
с-8 Snap Toggle 2D (Двумерная привязка), | ^ Snap Toggle 2.5D (Полуобъемная привязка), (fs^ Snap Toggle 3D (Трехмерная привязка) (S) — устанавливает режим привязок.
•
ф. Angle Snap Toggle (Угловая привязка) (А) — включает режим ограничения поворота с заданным шагом.
•
ф Percent Snap (Процентная привязка) (Shift+Ctrl+P) — включает режим фиксированного приращения значения.
•
f S Spinner Snap Toggle (Привязка приращений счетчиков) — управляет режимом приращения значений во всех счетчиках.
•
J|. Edit Named Selection Sets (Редактировать название выделенной области) — открывает окно диалога для создания и управления именованными выделениями. Рядом расположен раскрывающийся список Named Selection Sets (Название выделенной области), при помощи которого можно задать имя выделенной области или выбрать существующую.
•
Щ| Mirror (Отразить выделенные объекты) — создает зеркальную копию выделенного объекта.
•
1^-j Align (Выравнивание) (Alt+A), ^ * Quick Align (Быстрое выравнивание), %;! Normal Align (Выравнивание нормали) (Alt+N), 'IQI Place Highlight (Поместить блик) (Ctrl+H), Щк Align Camera (Выровнять камеру), £rM Align to View (Выровнять по проекции) — открывает окно диалога параметров выравнивания, где можно указать параметры выравнивания либо задать быстрое выравнивание двух объектов, выравнивание по нормалям, окну проекции или камере.
•
^
Layer Manager (Управление слоями) — открывает окно управления слоями.
•
Н Curve Editor (Open) (Редактор кривых (открыть)) — открывает редактор функциональных кривых.
•
2 ] Schematic View (Open) (Редактор структуры (открыть)) — открывает редактор структуры.
•
®С Material Editor (Редактор материалов) (М) — открывает редактор материалов.
•
! ^ | Render Scene Dialog (Диалоговое окно визуализации сцены) (F10) — открывает окно с настройками визуализации. Jview j*j Render Type (Тип визуализации) — раскрывающийся список, устанавливающий тип визуализируемых объектов. *d>] Quick Render (Production) (Быстрая визуализация (итоговая)), Щ QuickRender (ActiveShade) (Быстрая визуализация (тонированная)) — запускает визуализацию сцены без открытия окна диалога.
Элементы интерфейса
47
«Плавающие» панели инструментов Если выполнить команду Customize • Show UI • Show Floating Toolbars (Настройка • Показать пользовательский интерфейс • Показать «плавающие» панели инструментов), то откроются дополнительные «плавающие» панели: Layers (Слои), Snaps (Привязки), Render Shortcuts (Быстрый доступ к настройкам визуализации), Axis Constraints (Ограничения по осям), Extras (Дополнения) и появившаяся в восьмой версии 3ds Max панель Brush Presets (Предустановки кистей). «Плавающая» панель инструментов Layers (Слои) содержит кнопки для создания, активизации, блокировки и выделения слоев, а также средства для назначения и изменения свойств слоя. При помощи панели Snaps (Привязки) можно управлять свойствами привязок, используемых при моделировании и редактировании объектов. Панель Axis Constraints (Ограничения по осям) позволяет устанавливать ограничения перемещения только выделенной осью или плоскостью. Панель Extras (Дополнения) содержит кнопки переключения подключаемых модулей на клавиатурные комбинации, автосетки, а также кнопки создания массива, снимков и распределенных объектов по пути или заданному точками расстоянию. Панель Brush Presets (Предустановки кистей) позоляет получать доступ более чем к 50 предустановленным кистям, а также создавать свои собственные. «Плавающая» панель инструментов Layers (Слои) содержит кнопки для создания, активизации, блокировки и выделения слоев, а также средства для назначения и изменения свойств слоя. Панель Axis Constraints (Ограничения по осям) позволяет устанавливать ограничения перемещения только выделенной осью или плоскостью. Панель Extras (Дополнения) содержит кнопки переключения подключаемых модулей на клавиатурные комбинации, автосетки, а также кнопки создания массива, снимков и распределенных объектов по пути или заданному точками расстоянию. Рассмотрим некоторые панели инструментов более подробно. Панель инструментов Snaps (Привязки) (рис. 1.18) обеспечивает быстрый доступ к наиболее часто используемым командам привязки. К опорной точке
К полигонам
Привязка к сетке | К середине | К замороженным
г* Г
# (V ? ^
К вершинам
е-'
К ребру/ сегменту
С использованием К концевым точкам ограничений по осям Рис. 1.18. «Плавающая» панель Snaps (Привязки)
«Плавающая» панель инструментов Render Shortcuts (Быстрый доступ к настройкам визуализации) позволяет сохранять и загружать различные наборы настроек
48
Глава 1. Интерфейс программы
для визуализации сцены, причем существуют три кнопки для быстрого сохранения и визуализации сцены (рис. 1.19). Раскрывающийся список сохраненных настроек визуализации
Предварительные установки визуализации, слот С Предварительные установки визуализации, слот В Предварительные установки визуализации, слот А Рис. 1.19. «Плавающее» окно Render Shortcuts (Быстрый доступ к настройкам визуализации)
Удерживая нажатой клавишу Shift, щелкните на кнопке с буквой А, В или С, и настройки последней визуализации будут сохранены. Для начала визуализации сцены при помощи сохраненных настроек достаточно щелкнуть на одной из трех кнопок.
Окна проекций Наибольшее пространство окна программы занимают окна проекций. Это неудивительно: именно с их помощью мы получаем доступ к объектам сцены. В окнах проекций можно настроить отображение объектов различным образом: например, задать компоновку экрана для управления видом и ориентацией или указать способы оптимизации прорисовки экрана во время работы. В программе 3ds Max используется два вида проекций: аксонометрические и перспективные (центральные). Частным случаем аксонометрической проекции являются ортографические проекции, при построении которых плоскость проекции выравнивается параллельно одной из координатных плоскостей трехмерного пространства. К ортографическим проекциям в 3ds Max относятся виды сверху, снизу, спереди, сзади, слева и справа. К перспективным проекциям — вид из камеры, перспектива и окно, основанное на источнике направленного света. Одновременно на экране может отображаться от одного до четырех окон проекций. Каждое окно имеет рамку и имя, расположенное в верхнем левом углу окна. Вид можно присваивать, указав компоновку видового окна на вкладке Layout (Расположение) диалога Viewport Configuration (Конфигурирование окна проекции), для открытия которого следует выполнить команду Customize > Viewport Configuration (Настройка • Конфигурирование окна проекции) (рис. 1.20). При щелчке на образце компоновки видового окна в нижней части окна диалога отображается список имеющихся видов. Этот список можно также вызвать, щелкнув правой кнопкой мыши на имени окна проекции и выбрав из контекстного меню команду Views (Вид). Типы Camera (Камера) и Spotlight (Прожектор) отсутствуют в списке до тех пор, пока на сцене не созданы камеры и источники освещения.
49
Элементы интерфейса Viewport ronfiijwdtinn ^eihod
Layout
Safe F
Adaptive Degfadatioti
Regions
Click n viewport гоеде to select view l
OK
Cancet !
Рис. 1.20. Окно Viewport Configuration (Конфигурирование окна проекции)
Каждое окно проекции может отображать любой поддерживаемый программой вид. Кроме того, эти окна могут использоваться для отображения окон диалога Schematic View (Редактор структуры), Track View (Редактор треков), Asset Manager (Диспетчер ресурсов) или MAXScript Listener (Интерпретатор MAXScript). Самым быстрым и удобным способом измененить вид окон проекций является использование сочетаний клавиш (см. приложение 2). Стандартные типы окон отображают объекты сцены с ограниченным количеством сторон. Однако часто, моделируя объекты сцены, необходимо видеть их со всех сторон, приближаться для работы с деталями и удаляться, чтобы охватить взглядом всю сцену. Для навигации в окнах проекции существуют кнопки, расположенные в правом нижнем углу окна программы. Состав кнопок управления меняется в зависимости от выбранного типа проекции. Рассмотрим кнопки управления окнами проекций. •
•
% Zoom (Масштаб) (Alt+Z или [, или ]) — изменяет масштаб просмотра изображения.
•
£Р Zoom All (Масштаб всех окон) — увеличивает или уменьшает масштаб просмотра изображения во всех окнах одновременно.
•
J3T Zoom Extents (Сцена целиком) (Ctrl+Alt+Z), Д Zoom Extents Selected (Выделенные объекты целиком) — размещает все объекты (или только выделенные) в пределах активного окна.
•
| Р Zoom Extents All (Сцена целиком во всех окнах) (Ctrl+Shift+Z), ДР Zoom Extents All Selected (Выделенные объекты целиком во всех окнах) (Z) — размещает все объекты (или только выделенные) в пределах всех окон проекции.
50
Глава 1 . Интерфейс программы 5> Field-of-View (Поле зрения) — доступна только при активном окне проекции Perspective (Перспектива) — увеличивает или уменьшает масштаб просмотра изображения. J3J Zoom Region (Масштаб области) (Ctrl+W) до размеров окна.
увеличивает выделенную область
•
^ Pan View (Прокрутка) (Ctrl+P или I) — прокручивает изображение, не меняя масштаб.
•
§§ Walk Through (Перейти) («горячая» клавиша Т) — служит для навигации камеры и перспективы, аналогична виду от первого лица в видеоиграх.
•
^
Arc Rotate (Повернуть) (Ctrl+R), jfe. Arc Rotate Selected (Повернуть выделен-
ные), $$•] Arc Rotate SubObject (Повернуть подобъект) — управляет поворотом в окне проекции. Во втором и третьем случаях — вокруг объекта и подобъекта. •
Щ Maximize Viewport Toggle (Увеличение окна проекции до размеров экрана) (Alt+W) — разворачивает окно проекции во всю рабочую область окна программы.
Командная панель В 3ds Max 8, как и в предыдущих версиях программы, командная панель имеет шесть вкладок: Create (Создание), Modify (Изменение), Hierarchy (Иерархия), Motion (Движение), Display (Отображение) и Utilities (Утилиты). Командная панель располагается в правой части окна программы (может быть также пристыкована к любой стороне окна программы или выступать в качестве «плавающей» панели). На ней сосредоточены настройки объектов сцены (рис. 1.21). Иерархия Изменение
Движение Отображение
Создание
Рис. 1.21. Командная панель
Утилиты
Элементы интерфейса
51
Основные настройки объектов сосредоточены в свитках вкладок командной панели. Свитки — сгруппированные по определенным признакам настройки, имеющие в качестве заголовка кнопку шириной во всю ширину свитка (рис. 1.22). Название каждого свитка содержит знак «плюс» или «минус» в зависимости от того, развернут свиток или свернут (свернутому свитку соответствует знак +, а развернутому — знак - ) . Щелчок на заголовке свитка разворачивает или сворачивает его. Порядок следования свитков на командной панели (и не только) можно менять, перетаскивая свиток вверх или вниз относительно других. ПРИМЕЧАНИЕ Положение свитков Object Type (Тип объекта) и Name and Color (Имя и цвет) не меняется.
Достаточно часто развернутые свитки не помещаются в поле экрана, и часть их содержимого скрывается за его границей. Для таких случаев предусмотрена возможность прокрутки области свитка вверх или вниз. Индикатором того, что на экране отображено не все содержимое свитков, является узкая вертикальная полоса вдоль их правой части. При наведении на область свитка указатель мыши примет форму руки, после чего, нажав и удерживая кнопку мыши, можно прокручивать область свитков верх или вниз.
Свернутый свиток Развернутый свиток
Рис. 1.22. Свернутый и развернутый свитки на командной панели
Свитки имеют контекстное меню, которое появляется при щелчке правой кнопкой мыши в области свитков (вне элементов управления). Оно содержит команды разворачивания и сворачивания всех свитков или свитков по именам и возврата к принятому по умолчанию порядку их расположения. В стандартном режиме командная панель располагается на экране так, что свитки находятся в одном столбце. При желании вы можете увеличить пространство,
52
Глава 1 . Интерфейс программы
отводимое под свитки. Для этого подведите указатель мыши к левой границе панели и когда указатель примет вид двунаправленной стрелки, щелкните на границе и переместите ее влево. В результате область, занимаемая свитками, будет увеличиваться с шагом в ширину свитка.
Вкладка Create (Создание) Вкладка Create (Создание) предназначена для создания всех типов объектов 3ds Max: Geometry (Геометрия) (например, Box (Параллелепипед), Sphere (Сфера) и т. д.), Shapes (Формы), Lights (Источники света), Cameras (Камеры), Helpers (Вспомогательные объекты), Space Warps (Объемные деформации) и Systems (Дополнительные инструменты) (рис. 1.23). Щелчок кнопкой мыши на любой из этих кнопок вызывает набор инструментов для создания объектов соответствующей категории.
Объемные деформации
Формы
Системы Вспомогательные объекты
Геометрия Источники света -
jSl
Список разновидностей объектов
nUdnfPtim lives
Камеры I AutoGrid Г 8ок j Cone пе
j
S:phew • 1 SeoSphefej qybidec
|
EL*.:;
T«us__J _JRytarad_J . -
Г
Teapot
|
Plane
Name and Color
Список типов объектов
j
•
Рис. 1.23. Вкладка Create (Создание) командной панели
ПРИМЕЧАНИЕ Более полно список объектов, доступных для создания в программе 3ds Max, рассматривался выше при описании меню Create (Создание). Для создания объекта найдите его кнопку, щелкните на ней и в окне проекции постройте объект простым перетаскиванием указателя при нажатой левой кнопке мыши. Создав параметрический объект, можно уточнить его размеры, введя необходимые значения в поля свитка Parameters (Параметры). Ниже кнопок выбора категорий и списка разновидностей объектов располагаются свитки Object Type (Тип объекта) и Name and Color (Имя и цвет). Каждому объекту, созданному при помощи панели Create (Создание), присваивается имя и цвет, которые можно изменить, используя эти свитки.
Элементы интерфейса
53
После нажатия кнопки с именем объекта она выделяется цветом. Это означает, что она активна. Одновременно для строящегося объекта раскрываются дополнительные свитки — Parameters (Параметры) и Creation Method (Метод создания). Кнопка, оставаясь выделенной, позволяет создавать объекты выбранного типа до тех пор, пока не будет отключена. Прекратить создание объектов можно также, щелкнув правой кнопкой мыши в активном окне проекции. В качестве примера построим параметрический объект Box (Параллелепипед). Для этого выполните следующие действия. 1. Щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели. 2. В раскрывающемся списке разновидностей объектов выберите Standard Primitives (Простые примитивы), после чего в свитке Object Type (Тип объекта) появятся кнопки с типами доступных для создания объектов. 3. Щелкните на кнопке с именем Box (Параллелепипед), в результате чего кнопка станет оранжевой, а в нижней части командной панели появятся три свитка: Creation Method (Метод создания), Keyboard Entry (Ввод с клавиатуры) и Parameters (Параметры). Дальше строить объект можно двумя способами: введением точных значений параметров объекта в поля свитка Keyboard Entry (Ввод с клавиатуры) либо интерактивно в окне проекции любого вида. Рассмотрим построение объекта вторым способом. 1. Щелкните в любом месте окна проекции Perspective (Перспектива) и, удерживая нажатой левую кнопку мыши, переместите указатель по диагонали, определив таким образом длину и ширину объекта. 2. Отпустите кнопку мыши и переместите указатель вверх для определения высоты объекта. 3. Для завершения построения щелкните левой кнопкой мыши. 4. При необходимости уточните параметры объекта, воспользовавшись свитком Parameters (Параметры). СОВЕТ Если параметрическому объекту планируется назначать модификатор, связанный с изменением поверхности, например Bend (Изгиб) или Noise (Шум), то необходимо увеличить количество сегментов до 10 и более (подбирается опытным путем с целью получения желаемого эффекта). Аналогичным способом строятся все параметрические объекты. Исключение составляют сложные примитивы Hedra (Многогранник), RingWave (Круговая волна) и Hose (Рукав). Они не содержат свитков Creation Method (Метод создания) и Keyboard Entry (Ввод с клавиатуры), поэтому строятся только интерактивным способом в окне проекции.
54
Глава 1. Интерфейс программы
Вкладка Modify (Изменение) Параметры объекта, появляющиеся при его построении на вкладке Create (Создание) командной панели, становятся недоступными после выбора другого объекта или деактивации кнопки построения объекта. Для продолжения редактирования созданного примитива существует вкладка Modify (Изменение) командной панели (рис. 1.24). Выделив объект и перейдя на эту вкладку, вы вновь увидите свиток с параметрами для редактирования.
Активный модификатор Неактивный модификатор Закрепить стек Показать конечный результат вкл/выкл
Список модификаторов Стек модификаторов Изменить стек Удалить модификатор из стека Сделать уникальным
Рис. 1.24. Вкладка Modify (Изменение) командной панели
Кроме изменения параметров примитива, вкладка Modify (Изменение) командной панели позволяет назначать модификаторы выделенному объекту или группе объектов. В последнем случае к каждому объекту применяется образец модификатора. Модификаторы — параметрически управляемые функции, предназначенные для изменения структуры объектов 3ds Max (например, положения вершин в пространстве или кривизны сегментов). В верхней части вкладки Modify (Изменение) командной панели постоянно отображается строка с именем выделенного объекта и поле с образцом цвета, а немного ниже — раскрывающийся список Modifier List (Список модификаторов), содержащий модификаторы, доступные для применения к выделенному объекту. ПРИМЕЧАНИЕ Модификаторы можно также применять к объектам, используя команды главного меню Modifiers (Модификаторы) (см. выше).
Содержимое нижней части области свитков вкладки Modify (Изменение) командной панели меняется в зависимости от типа выделенных объектов и выбранных модификаторов.
55
Элементы интерфейса
В стеке модификаторов, который расположен под списком модификаторов, показано все, что происходило с объектом. Он отображает все модификаторы, примененные к выделенному объекту сцены, позволяет вернуться к настройкам любого модификатора и изменить его параметры, поменять местами расположение модификаторов в стеке или удалить их. Под стеком модификаторов расположены кнопки, предназначенные для управления стеком. В их число входят: Pin Stack (Закрепить стек), Show end result on/off toggle (Показать конечный результат вкл/выкл), Make unique (Сделать уникальным), Remove modifier from the stack (Удалить модификатор из стека), Configure Modifier Sets (Изменить набор модификаторов). Рассмотрим порядок применения модификаторов к объектам сцены на примере модификатора Bend (Изгиб). 1. Постройте параметрический объект Box (Параллелепипед) одним из способов, описанных выше. 2. Не снимая выделения с построенного объекта, в свитке Parameters (Параметры) вкладки Create (Создание) командной панели увеличьте значение параметра Height Segs (Количество сегментов по высоте) до 20. 3. Перейдите на вкладку Modify (Изменение) командной панели и выберите из списка модификаторов строку Bend (Изгиб). 4. В свитке Parameters (Параметры) подберите желаемые значения параметров Angle (Угол) и Direction (Направление), задающих величину изгиба и угол поворота габаритного контейнера модификатора. На рис. 1.25, а показан объект Box (Параллелепипед), преобразованный при помощи модификатора Bend (Изгиб), а на рис. 1.25, б — фрагмент вкладки Modify (Изменение) командной панели со стеком модификаторов и настройками модификатора Bend (Изгиб). ft Г. «й.«Ш1» t ]Вох01 I Modifier List
d
j Ф В Bend , Box
-» ijlf« v в JJ
i S
?»ЁЙЙ!Я£1-1
h
•Bend
Angtep Dieciion BendAsis
г x
f Y б
#2
Рис. 1.25. Объект Box (Параллелепипед), преобразованный при помощи модификатора Bend (Изгиб) (а) с соответствующими настройками (б)
56
Глава 1 . Интерфейс программы
Вкладка Hierarchy (Иерархия) Вкладка Hierarchy (Иерархия) командной панели (рис. 1.26) содержит три кнопки контроля за различными параметрами и состояниями объекта: Pivot (Опора), IK (Inverse Kinematics) (Обратная кинематика) и Link Info (Данные о связях).
m JBDXOI
Опора• Обратная кинематика
i Pivot
Link Info I
Move/Rolate/Scale.
Данные о связях
-
Affect Pivot Only Affect Object O r * Affect Hierarchy Only Alignment:
Рис. 1.26. Вкладка Hierarchy (Иерархия) командной панели
В верхней части вкладки Hierarchy (Иерархия) находятся три следующие кпопки. • Pivot (Опора) — открывает свитки, позволяющие изменять положение в пространстве опорной точки (Pivot Point) выделенного объекта. ПРИМЕЧАНИЕ Опорная точка (Pivot Point) — точка, вокруг которой происходят все трансформации объекта, включая поворот, масштабирование и т. д.
• IK (Inverse Kinematics) (Обратная кинематика) — содержит свитки, позволяющие применять к связанным объектам анимацию методом обратной кинематики. Эти свитки также позволяют настраивать параметры связей объектов, указывая на способы взаимодействия этих объектов между собой. • Link Info (Данные о связях) — открывает свитки, позволяющие устанавливать блокировки на перемещение, поворот и масштабирование выделенного объекта. Здесь же можно задать характеристики связей объектов друг с другом. Рассмотрим пример изменения положения опорной точки для управления преобразованиями объекта. 1. Выделите объект сцены, предназначенный для преобразований (например, для создания массива экземпляров объекта, повернутых вокруг одной точки). 2. Перейдите на вкладку Hierarchy (Иерархия) командной панели и щелкните на кнопке Pivot (Опора).
57
Элементы интерфейса
3. В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате контейнер преобразования примет соответствующий вид. 4. Используя операцию Move (Перемещениие) контекстного меню, установите опорную точку в требуемое для выполнения преобразований положение. 5. Щелкните на кнопке Affect Pivot Only (Только опора), чтобы завершить работу по изменению положения опорной точки.
Вкладка Motion (Движение) Вкладка Motion (Движение) командной панели содержит две кнопки, расположенные в верхней части панели: Parameters (Параметры) и Trajectories (Траектории) (рис. 1.27).
"Selection Lews
Sub-Object f ~
3
Параметры
Траектории
Назначить контроллер J Position: Position^] \ - 8 В Rotation : EuletX QScaleBezierSc
+ PoatonXTZ Parameter J
KejilnfotBasjcj _
Рис. 1.27. Вкладка Motion (Движение) командной панели
Щелчок на кнопке Parameters (Параметры) открывает пять свитков, позволяющих анимировать объект и управлять анимацией при помощи присвоения контроллеров (Controllers) или ограничений (Constraints). Контроллеры влияют на положение объекта в пространстве, его поворот и масштабирование относительно выбранного направления, а ограничения позволяют задать рамки использования трансформации объекта установленными параметрами (например, движением объекта вдоль указанного сплайна). Доступ к списку контроллеров анимации можно получить, щелкнув на кнопке Assign Controller (Назначить контроллер), расположенной в верхнем левом углу одноименного свитка, а также при помощи команд меню Animation (Анимация), рассмотренных выше в этой главе.
58
Глава 1. Интерфейс программы
Кнопка Trajectories (Траектории) открывает одноименный свиток, позволяющий устанавливать параметры анимации по пути. Рассмотрим простой пример присвоения объекту Box (Параллелепипед) контроллера масштаба. 1. Постройте объект Box (Параллелепипед). 2. Перейдите на вкладку Motion (Движение) командной панели и щелкните на кнопке Parameters (Параметры). 3. В свитке Assign Controller (Назначить контроллер) выделите строку Scale: Bezier Scale (Масштабирование: масштабирование Безье). 4. В области Create Key (Создать ключ) свитка PRS Parameters (Параметры положения/поворота/масштабирования) щелкните на кнопке Scale (Масштабирование) — в текущем кадре будет создан ключ анимации. 5. Для доступа к параметрам масштаба щелкните на второй кнопке Scale (Масштабирование), расположенной в правом нижнем углу свитка PRS Parameters (Параметры положения/поворота/масштабирования), в результате в свитке Key Info (Basic) (Основные параметры ключа) появятся настройки параметров масштабирования (рис. 1.28). 6. При необходимости измените номер кадра и параметры масштабирования для созданного ключа анимации. 7. Перейдите к следующему кадру, в котором вы хотели бы установить ключ анимации, для чего передвиньте ползунок на шкале анимации, расположенной в нижней части окна программы. 8. В области Create Key (Создать ключ) свитка PRS Parameters (Параметры положения/поворота/масштабирования) щелкните на кнопке Scale (Масштабирование), в результате будет создан следующий ключ анимации. 9. Измените параметры масштабирования для созданного ключа анимации. 10. Для просмотра созданной анимации щелкните на кнопке Play Animation (Воспроизвести анимацию) Hj> расположенной в правом нижнем углу окна программы.
Вкладка Display (Отображение) Вкладка Display (Отображение) содержит команды управления отображением отдельных объектов сцены в окнах проекций (рис. 1.29). На этой вкладке можно установить индивидуальные параметры отображения каждого объекта и категорий объектов в целом. Используя настройки данной вкладки, вы можете изменять все параметры отображения, а также выполнять команды Hide (Спрятать) или Freeze (Фиксировать). ПРИМЕЧАНИЕ Многие команды управления отображением объектов находятся на «плавающей» палитре Display Floater («Плавающее» окно отображения), а также в окне Object Properties (Свойства объекта).
Элементы интерфейса
59
т j BoxOI Selection Level:
Assign ContfоЭег
Щ ransfoim : Position/ *.] !• ® Щ ] Position . PositiorTj Rotation EulerX
ULJ Create Key-
| I
-Delete Key-s
Position
!
Rotation I I i
Rcte-er ]
!s* jj
Key Info (Basic)
+f\ Time: | 0
Zj Lj
XVatue;|10Q0
^jjj
Y Value: [ Ш о
jj
ZVabe:j100 0
l{
Рис. 1.28. Настройки контроллера масштабирования для объекта Box (Параллелепипед)
В ох02 Display Colo/ Witeftan*
* Object Coloi <~ Mstend Color
Shaded. Г *
ObieotCokn Material Colot
Рис. 1.29. Вкладка Display (Отображение) командной панели с развернутым свитком Display Color (Отображение цвета)
60
Глава 1 . Интерфейс программы
Вкладка Utilities (Утилиты) Разнообразный выбор инструментов предоставляет вкладка Utilities (Утилиты) (рис. 1.30).
Рис. 1.30. Вкладка Utilities (Утилиты) командной панели
По умолчанию свиток Utilities (Утилиты) содержит девять утилит: Asset Browser (Окно просмотра ресурсов), Camera Match (Горизонт камеры), Collapse (Свернуть), Color Clipboard (Буфер обмена с цветом), Measure (Линейка), Motion Capture (Захват движения), Reset XForm (Сбросить преобразования), MAXScript и reactor. Чтобы получить доступ к списку большего количества утилит, щелкните на кнопке More (Дополнительно), расположенной в левом верхнем углу свитка. После щелчка на кнопке с названием утилиты кнопка выделится цветом, а в нижней части вкладки Utilities (Утилиты) появятся свитки с параметрами выбранной утилиты (для некоторых утилит открывается окно диалога).
Подключаемые модули Подключаемые модули (Plug-In) — внешние программы, предоставляющие пользователям 3ds Max дополнительные возможности. Открытая архитектура 3ds Max построена так, что позволяет любому разработчику программного обеспечения улучшить ее возможности. MAXScript и Software Developer's Kit (SDK) (Набор инструментов разработчика программ) позволяют пользователям разрабатывать собственные подключаемые модули. Существуют фирмы, специализирующиеся на производстве вспомогательных модулей для популярных пакетов трехмерного моделирования, в частности, для 3ds Max. Некоторые из них уже давно обрели заслуженную популярность у пользователей, другие пока только осваивают рынок. Каждый модуль предназначен для решения определенной задачи (например, создание волосяного покрова трехмерного персонажа, добавление эффекта огня, визуализация).
61
Подключаемые модули
Внешний модуль состоит из набора файлов, обычно с расширениями DLO, DLM, DLU, DLE. Последние буквы расширения определяют, в какую группу входит подключаемый модуль. Например, модуль с расширением DLE относится к экспорту из программы, а расширение DLU обозначает, что модуль является утилитой. Если у модуля нет специального мастера установки, то достаточно скопировать его файлы в директорию 3dsMax8\plugins и перезапустить программу. Если модуль устанавливается в отдельную директорию, то пути к файлам, используемым модулем, указываются в файле p l u g i n s . i n i , который расположен в корневой директории 3ds Max 8. После установки модуля и перезапуска программы остается только найти то место, откуда можно получить доступ к модулю. Как правило, это вкладки Modify (Изменение), Helpers (Вспомогательные объекты) или Utilities (Утилиты) командной панели. Некоторые внешние модули поставляются вместе с файлами справки. Эти файлы копируются в папку help, находящуюся в директории, в которой установлена программа 3ds Max 8. Для доступа к файлам справки дополнительных модулей выполните команду Help • Additional Help (Справка • Дополнительная справка). Для просмотра списка установленных в программе внешних модулей выполните команду File • Summary Info (Файл • Сведения), появится окно диалога Summary Info (Сведения). В этом окне щелкните на кнопке Plug-In Info (Информация о внешних модулях), откроется одноименное окно со списком всех установленных модулей и их описанием (рис. 1.31).
шз =j
Plug-In Info 3DSEXPDLE: Desc: 3DS file exporter (Discreet) DLL is not loaded 3DSIMP.DU: Desc: 3DS/SHP file importer (Discreet) DLL is not loaded ACADBLOCKS.DLU: Desc: Block Manager Utility (Discreet) MAX SDK Version: 7.000 ADD.FLT: Desc: Additive compositor (Discreet) DLL is not loaded
; \
ADTOBJECTS.DLU: Desc: ADT Object Manager Utility (Discreet) MAX SDKVersion: 7.000 unTTRuNS HIY Г
Show Details
,,_ Г
...
_
Show Used Only
Close
!
Рис. 1.31. Окно Plug-In Info (Информация о внешних модулях)
Установленными внешними модулями можно управлять при помощи окна Plug-in Manager (Менеджер подключаемых модулей) (рис. 1.32), для открытия которого следует выполнить команду Customize • Plug-in Manager (Настройки • Менеджер подключаемых модулей).
62
Глава 1 . Интерфейс программы
Pkio-in Manager Status
4 « losdtd
Si»
MPath
теш
801S 5ЕГ6
0 Standard MAX plug-ins 0 Additional MAX plug-ins
111 1 Рис. 1.32. Окно Plug-in Manager (Менеджер подключаемых модулей)
Каждая строка окна менеджера внешних модулей представляет информацию о наименовании, статусе, размере подключаемого модуля, полном пути к папке, в которой он установлен, и его описание. Модули, имеющие статус loaded (Загружен), загружены в память и доступны для использования. Они отмечены зеленым кружком в колонке Status (Статус). Многие модули имеют статус deferred (Отложенный) и подгружаются по мере обращения к ним, а модули, имеющие статус unloaded (Выгружены), не загружены в память компьютера и имеют красный кружок в колонке Status (Статус). Щелчок правой кнопкой мыши вызывает контекстное меню, с помощью которого можно управлять загрузкой и выгрузкой модулей из памяти, подключать новые внешние модули, расположенные на жестком диске, и выполнять некоторые другие операции.
Настройка программы Чем отличается начинающий пользователь от профессионала? Кроме того, что профессионал знает немного больше, он владеет набором инструментов, позволяющих выполнить работу быстрее и качественнее. Настройка пользовательского интерфейса и загрузка дополнительных внешних модулей позволят вам подняться на ступеньку выше в скорости и качестве выполнения работ. При помощи подключаемых модулей можно выполнить работу на более высоком уровне, чем позволяют стандартные возможности пакета, а оптимизация программы для потребностей пользователя сокращает затрачиваемые на ее выполнение время и ресурсы. В программе 3ds Max можно настраивать практически все элементы интерфейса, начиная от назначения сочетаний клавиш и заканчивая цветом элементов. Параметры предварительной настройки программы и пользовательского интерфейса содержатся в окнах диалога Preferences Settings (Параметры установок) и Customize
63
Настройка программы
User Interface (Настройка пользовательского интерфейса). Рассмотрим в общих чертах каждое из них.
Настройка параметров программы Для вызова окна Preference Settings (Параметры установок) выполните команду Customize • Preferences (Настройка • Параметры). Окно имеет 11 вкладок: General (Общие), Files (Файлы), Viewports (Окна проекций), Gamma and ШТ (Гамма и таблица соответствия), Rendering (Визуализация), Animation (Анимация), Inverse Kinematics (Обратная кинематика), Gizmos (Габаритные контейнеры), MAXScript, Radiosity (Диффузное отражение) и mental ray (рис. 1.33). Preference Settings Gsrnos
Inverse Kinematics General
i
Viewports
Fles
г Scene Undo
i r Ref. Coord System—] ]]
\ Levete 120 %\
П" Concert
r- loao'Oug-»» 1 Whenttsed.
<* A u t o m a t e * ~
mental ray
Rendering
Animation
~—-*—*"-—
—
Enable Vtev^ornootops
Щ
Disptaj uoss Hat Cursor
1*^ Display Тфо!оаН^врепс1нтсеWarning P" Display Stack Coftapse Warwng W Save Ul Cortfiguration on Exit
Г" AtftoWndow/Dossjngbj'Direcbon • RighWLeft «> Cirasmg ^* lefl->Bghl*> €r«*ing PsjnlSeiecfiosBtMhSte
I ^ I
! Scene Selection
|
г- 0! Display — :
Radiostty
P Autcrf3!^ Preview Ffe
г РЬо.4л loading • •
i
MAXScript Gamma and Ш Т
P ;Useiaige Toolbar Batons* R Horizontal Text in Vertical Toolbars P FewdWidb Text Buttons
•
F^wt Time j 300
pixels
t j mSac
Color Selectof I Default Color Picker Pfectsion: J3
^ j Decimals
Snap; f i T ~ t) Г Use Snap l
Г" Wrap Cut«M Nea» S Rotout Threshold;
J»J
: layer OefatAs Г* fietault to By Layer lot New Nodes : Г" Hew Lights RendetableSy layer I Propagate Unhide/UnheeM Commands to Layers? | Г Propagate <~ DoNotPtopegste « Ask -Texture Cootdnates— Г
*~™~~™~
U se Reai-Woild ТЫне Coordinates
Рис. 1.33. Окно диалога Preference Settings (Параметры установок)
Вкладка General (Общие) Вкладка General (Общие) служит для изменения параметров общего назначения и разделена на следующие области. • Scene Undo (Отмены в сцене) — задается максимальное количество отменяемых действий. •
Ref. Coord. System (Система координат) — указывается использование одной системы координат для всех преобразований.
•
Plug-In Loading (Загрузка внешних модулей) — указывается, будут ли модули загружаться вместе со сценой, в которой они установлены.
64
Глава 1. Интерфейс программы
• Sub-Materials (Подматериалы) — устанавливается либо снимается флажок, определяющий автоматическое назначение подматериалов. • Scene Selection (Выделение в сцене) — указывается, каким образом будет производиться выделение, а также размер кисти для выделения. • Spinners (Счетчики) — настраиваются общие параметры всех счетчиков программы. •
Command Panel (Командная панель) — устанавливается значение приращения при прокрутке.
• Vertex Normal Style (Стиль нормалей вершин) — устанавливается стиль нормалей вершин, базирующийся на четвертой версии программы. •
•
UI Display (Интерфейс пользователя) — настраиваются некоторые элементы отображения. Например, для увеличения количества кнопок, одновременно видимых на панели инструментов, можно снять флажки Use Large Toolbar Buttons (Использовать крупные кнопки) и Fixed Width Text Buttons (Фиксированный размер текстовых кнопок). Layer Defaults (Слои по умолчанию) — указываются параметры для слоев.
• Texture Coordinates (Текстурные координаты) — можно включить или выключить использование Real-World Map Size (Реальные размеры текстурной карты) для вновь создаваемых параметрических объектов и модификаторов, использующих этот параметр.
Вкладка Files (Файлы) На вкладке Files (Файлы) окна Preference Settings (Параметры установок) содержатся настройки, позволяющие выбрать параметры автосохранения, архивирования и создания отчета. Здесь также можно задать сохранение файлов с приращением или со сжатием.
Вкладка Viewports (Окна проекций) Вкладка Viewports (Окно проекции) содержит параметры настройки окон проекций (рис. 1.34). В области Viewport Parameters (Параметры окна проекции) можно настроить параметры отображения сцены в окнах проекций: например, задать размер точек для показа вершин сетчатых оболочек. Настройки области Ghosting (Двойники) позволяют настроить параметры отображения двойников при отладке анимации. Здесь можно задать общее количество двойников до и после текущего кадра, способ отображения и номера кадров. В области Mouse Control (Управление мышью) можно настроить использование средней кнопки мыши, а также режимы масштабирования и способ вызова контекстного меню. При необходимости вы можете изменить драйвер дисплея в области Display Drivers (Драйверы дисплея), щелкнув на кнопке Choose Driver (Выбор драйвера). Если на
65
Настройка программы Preference Settings Inverse Kinematics General
|
MAXScnpt
: ГтщяЬ
Res
I
Gamma andLUT
media! fay \
Rendering
Animation
Viewfsort P
F F Sho»V*tl»»«uctt Sfee:P * Ghost BefaeCurtent f/ame Г i:hottAfl«Ci»w*fM»M
I Ba<*}«»CiJonObleetOea((S
Г" StiowfiameNoKibeis Г" Filet Environment 6acfcgtounii» F
[
Low-Bas Enwionnimt Sadigmund
F py Е й Nudge Cistanpe: JT6
tj
u!
t]
\ V 2oom About Mouse Point | Г Right Click Menu Ovei Selected 0 i #
| WheeKoom Increment
[To
jj
-UBplayDnvers
I
ChOMe Driver.-
j
taer% Instated Driver: (
DpenGt^VieSA1 tforpor^iw version 1ДЗ)
}
OK
'
Cancel
:: ..Si
Рис. 1.34. Вкладка Viewports (Окна проекций) окна Preference Settings (Параметры установок)
компьютере установлен драйвер OpenGL или Direct3D, то предпочтительно использовать их для ускорения отображения геометрии сцены и ее раскраски.
Вкладка Gamma and LUT (Гамма и таблица соответствия) Вкладка Gamma and LUT (Гамма и таблица соответствия) предназначена для выполнения гамма-коррекции монитора и настройки параметров гамма-коррекции в файлах растровой графики.
Вкладка Rendering (Визуализация) Вкладка Rendering (Визуализация) окна диалога Preferences Settings (Параметры установок) позволяет настроить параметры, использующиеся при визуализации по умолчанию (рис. 1.35). Вкладка Rendering (Визуализация) содержит следующие области: • Video Color Check (Контроль цветности) — указывается, в каком стандарте будет формироваться видеосигнал и как 3ds Max должен выполнять контроль цветности этого сигнала; •
Output Dithering (Смешивание цветов растра) — указывается режим формирования цветов на экране монитора;
•
Field Order (Порядок полей) — задается порядок следования четных и нечетных полей для анимаций, которые будут показаны на экране телевизора;
66
Глава 1 . Интерфейс программы
Preference Bettings invejse Kinematics >j General
I
Fles
i |
• Gcmcs
Radios»*
Viewports
Gamma and IDT
j
men (a! lay
Render Big
Animation
Output Dltheiing P
TiueColoi
P> Peteltal
j O'efeuliAwbiert Light СЫи i
Г
-Output Fie Sequencing I
Г
Fita8a*gtaund
Г" Use Envifonmenl Alpha
NlhS«idNumbeitna
•RendeiTBtaiinaionAteit' Г Г
Веер frequency: Щ> Plaj Sound
i}
Dmatbn: [200
j j miteec»ds
Fte:
GBuffw LayHS Maximum Number. |1O
r Bitmap) Р а д и !
Г
On Page Size P J : f T S
Вйтар Sae Thiesheld [ On
Рис. 1.35. Вкладка Rendering (Визуализация) окна Preference Settings (Параметры установок)
• Super Black (Сверхчерный) — устанавливается минимальный уровень черного цвета; •
Hotspot/Falloff (Яркое пятно/край пятна) — устанавливается минимальная разница угловых размеров конусов Hotspot (Яркое пятно) и Falloff (Край пятна) источников света;
•
Background (Фон) — задается наличие либо отсутствие сглаживания, фильтрация и использование масок для фонового изображения;
•
Default Ambient Light Color (Исходный цвет подсветки) — указывается цвет подсветки, используемый при визуализации наиболее темных участков теней сцены;
•
Output File Sequencing (Нумерация выходных файлов) — определяется порядок нумерации файлов, в которых будут сохраняться результаты визуализации; установка флажка Nth Serial Numbering обеспечивает последовательную нумерацию кадров;
•
Render Termination Alert (Сигнал прерывания визуализации) — устанавливается звуковой сигнал окончания визуализации;
•
GBuffer Layers (Слои G-буфера) — указывается наибольшее допустимое количество каналов G-буфера, которые можно назначить в сцене (может быть от 1 до 100);
•
Bitmap Pager (Пейджер растрового изображения) — позволяет выполнять визуализацию с текстурными картами очень большого размера или с большим количеством текстур;
•
Multi-threading (Многопоточный) — распределяет расчеты на многопроцессорных системах, ускоряя процесс визуализации.
67
Настройка программы
Вкладка Animation (Анимация) Вкладка Animation (Анимация) (рис. 1.36) содержит настройки анимации сцены. Preferenre Settings . , : inverse КдаятаВс* " Swear-j
Ffes
j
Gizmos
1 Viewports
j j
(WSciip) GsmmearatiUf
I
Baotaitji !
:
Rendering- j
jneriWray
\
Animation '\
Key Btack*! Display
Use Currant Ttanslorffl
С С Ноте
- MIOi TimeSftcfer Contrd Local Centw During Anerete
•ГЧ'\
- Sound Plug-In — -~— -
v.'<
Defaul'Sourxj
Г ЗигоОш^Е* Set Defaults... i
Rolbaok: [6 Restore To Factoty SetJjf
OK
Cancel
Рис. 1.36. Вкладка Animation (Анимация) окна Preferences Settings (Параметры установок)
Вкладка Animation (Анимация) содержит такие области: •
Key Bracket Display (Обозначить угловыми скобками) — указывается, какие объекты, имеющие ключи анимации, будут обозначаться маркерами;
• Animate (Анимация) — устанавливается, будет ли выполняться анимация с использованием локальной системы координат или нет; •
MIDI Time Slider Control (Контроль таймера MIDI-устройством) — настраивается управление ползунком таймера с помощью внешнего MIDI-устройства;
• Sound Plug-In (Звуковые модули) — заменяется модуль звука, установленный по умолчанию; •
Controller Defaults (Исходные параметры контроллеров) — позволяет изменять или восстанавливать принятые по умолчанию значения параметров контроллеров анимации.
Вкладка Inverse Kinematics (Обратная кинематика) На вкладке Inverse Kinematics (Обратная кинематика) окна Preference Settings (Параметры установок) настраиваются параметры приложенной и интерактивной обратной кинематики. В двух однотипных областях можно задать пределы точности для положения и поворота, а также максимальное количество циклов.
68
Глава 1. Интерфейс программы
Вкладка Gizmos (Габаритные контейнеры) На вкладке Gizmos (Габаритные контейнеры) можно настроить отображение и поведение габаритных контейнеров объектов. Габаритные контейнеры отображаются в окнах проекций и обеспечивают возможность интерактивной трансформации объектов. Область Transform Gizmos (Габаритный контейнер преобразования) содержит настройки для включения/выключения отображения габаритных контейнеров объектов. Здесь также можно установить возможность отображения более чем одного габаритного контейнера для выделенного набора объектов. Отдельно настраиваются параметры отображения и поведения для габаритного контейнера перемещения и поворота. В области Move/Rotate Transforms (Преобразования перемещения/вращения) можно задать приращение для угла поворота, а также поведение мыши во время трансформаций.
Вкладка MAXScript Вкладка MAXScript позволяет настраивать параметры макроязыка MAXScript. В области Startup (При запуске) можно указать параметры загрузки сценариев и контроллеров. Область MAXScript Windows (Окна MAXScript) содержит настройки отображения шрифта (тип и размер), используемого в окне редактора макросов. В области Macro Recorder (Запись макроса) можно включить запись всех производимых программой 3ds Max действий, фильтрацию кода и использование явных или относительных ссылок.
Вкладка Radiosity (Диффузное отражение) Вкладка Radiosity (Диффузное отражение) содержит настройки, указывающие, как будет происходить диффузное отражение, будут ли настройки улучшенных источников света сохранены вместе со сценой и будут ли содержаться в окне Material Editor (Редактор материалов) параметры отражательной способности и прозрачности. Здесь также можно задать прорисовку диффузного отражения в окнах проекций.
Вкладка mental ray Вкладка mental ray содержит настройки, относящиеся к модулю визуализации mental ray. Здесь можно подключать расширения, управлять параметрами визуализации и установить запись и вывод сообщений.
Настройка пользовательского интерфейса Программа 3ds Max позволяет создавать новые и настраивать существующие меню и панели инструментов. Для этой цели служит окно Customize User Interface (Настройка пользовательского интерфейса) (рис. 1.37).
Настройка программы
69
§£) Customize User Interface Keyboard j , Toobais | Quads | Menus j Cdois L-JI Гд| Commands
"t?10GV Halogen Bub 4? 21W Halogen Bulb V 35V Halogen Bub V 40V Bub 4ft Cove Fluorescent (w... 4ft Pendant Fluorescent... % 50V Halogen Bub 4-60WBub V 75W Bub % 80V Halogen Bulb | f About reactor Absolute Activate 3ds Max Activate AH Maps Activate Grid (Context) Activate Grid Object Activate Home Slid Activate HomeGrid (Con... ActiveShade Floater ActiveShade Quad ActiveShade Viewport Adaptive Degradation T.
^J Is? Active
J»J
Assigned to:
Wnta К ^t-oaitl Chat!. Load..
Рис. 1.37. Окно Customize User Interface (Настройка пользовательского интерфейса)
Чтобы вызвать это окно, выполните команду Customize • Customize User Interface (Настройка • Настройка пользовательского интерфейса). Оно содержит пять вкладок: Keyboard (Клавиатура), Toolbars (Панели инструментов), Quads (Четверти), Menus (Меню) и Colors (Цвета). Рассмотрим каждую из этих вкладок.
Вкладка Keyboard (Клавиатура) Вкладка Keyboard (Клавиатура) позволяет изменять заданные по умолчанию сочетания клавиш и присваивать новые командам и инструментам программы. Чтобы присвоить команде новое сочетание клавиш или изменить существующее, выполните следующее. 1. В раскрывающемся списке Group (Группа) выберите группу с командой, которой необходимо присвоить сочетание клавиш. 2. Из раскрывающегося списка Category (Категория) выберите категорию, к которой она относится. 3. Найдите в списке нужную команду. Если ей уже назначено сочетание клавиш, то оно будет показано в столбце Shortcut (Сочетание клавиш). 4. Щелкните кнопкой мыши в текстовом поле Hotkey («Горячая» клавиша) и введите комбинацию клавиш (нажмите их на клавиатуре). Если такая комбинация
70
Глава 1 . Интерфейс программы
уже используется, то имя команды, которой она назначена, появится в окне Assigned to (Назначена для). 5. Щелкните на кнопке Assign (Назначить) для присвоения команде сочетания клавиш. 6. Сохраните сделанные изменения, щелкнув на кнопке Save (Сохранить), и в появившемся окне диалога выберите файл для сохранения или создайте новый.
Вкладка Toolbars (Панели инструментов) Вкладка Toolbars (Панели инструментов) служит для создания новых и изменения существующих панелей инструментов 3ds Max (рис. 1.38). (О Customize User Interface Toolbars
I Menu*
GtouK JMainUI
JAxis Constraints
"3 4 ; mow Bulb % 100W Halogen Bulb Y 2 1 W Halogen Bulb V 3 5 W Halogen Bulb V 4CrW Bulb 4ft Cove Fluorescent (web) 4fl Pendant Fluorescent (web) t r 5 C W Halogen Bulb % 60W Bulb %?5WBulb % 8 0 W Halogen Bulb Mbout reactor... Absolute Activate 3ds Max Activate All Maps Activate Grid (Context) Activate Grti Object Activate Home Grid Activate HomeGrid (Context) ActiveS hade Floater ActrveShade Quad ActiveS hade Viewport Adaptive Degradation Toggle
Colas
Щ
New...
|
Delete.
Rename.,
P Hide
Рис. 1.38. Вкладка Toolbars (Панели инструментов) окна Customize User Interface (Настройка пользовательского интерфейса)
Чтобы создать и настроить новую панель инструментов, выполните следующие действия. 1. На вкладке Toolbars (Панели инструментов) щелкните на кнопке New (Новая), расположенной в правой части окна под раскрывающимся списком существующих панелей. 2. В открывшемся окне New Toolbar (Новая панель инструментов) введите имя создаваемой панели и щелкните на кнопке О К, в результате на экране появится новая панель.
71
Настройка программы
3. Чтобы наполнить новую панель кнопками, выберите необходимую команду из списка Action (Действие) и перетащите ее на поле панели. Если для команды существует значок, то он появится на созданной кнопке, в противном случае кнопка будет представлена названием. 4. Для редактирования кнопки щелкните на ней правой кнопкой мыши и в появившемся контекстном меню выберите требуемую команду, например Delete Button (Удалить кнопку). 5. Для сохранения панели щелкните на кнопке Save (Сохранить) и в появившемся окне выберите файл для сохранения или создайте новый.
Вкладка Quads (Четверти) Вкладка Quads (Четверти) предназначена для настройки и создания новых четвертных меню, вызываемых щелчком правой кнопкой мыши в окне проекции или сочетанием клавиш (рис. 1.39). Ш Customize User Interface Keyboard ;
i
T oofoafs
Quads
Бгоцэ;
•Св1еО<Ч<]А|| Commands
Иепш
"3 "3
~_—_
p
Show All Quads
.abet: It'anslorm Move Rotate Scale Select Object
% 50W Halogen Bulb V SOW Bub % 8 0 W Halogen Bulb s Щ About reactor Absolute
Clone Propertes • Curve Editor (Open) Dope Sheet(Open) Start ParamelerWirhg
SeojiatW .
Animation Animation - Constraints Animation • IK Solvers Animation - Posrtion Controller Animation Rotation Controllers Animation - Scale Controllers
New
Quad Stalin*)
%10uWBub t s l O P W Halogen Bub ^ 21W Halogen Bulb V 3 5 W Halogen Bulb *Г 40W Bulb 4ft Cove Fluorescent (web) 411 D endant Fluorescent (web|
A
| Detault Viewport Quad
zl
Рис. 1.39. Вкладка Quads (Четверти) окна Customize User Interface (Настройка пользовательского интерфейса)
Для создания и настройки нового четвертного меню выполните следующие действия. 1. Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню. 2. В появившемся окне диалога New Quad Set (Новый набор четвертных меню) введите имя для создаваемого четвертного меню и щелкните на кнопке ОК.
Глава 1 . Интерфейс программы
72
3. Щелкните на одном из квадратов значка Label (Ярлык) для выбора, в какой части квадратичного меню будет создаваться новое меню, и в поле справа введите название меню. 4. В окне четвертных меню, расположенном в правой части вкладки Quads (Четверти), появится надпись End of Menu (Окончание меню), обозначающая, что меню не заполнено. 5. Чтобы добавить команду в меню, выберите ее в левой части вкладки из списка Action (Действие) и перетащите в окно четвертных меню выше строки End of Menu (Окончание меню). 6. При необходимости добавьте Separator (Разделитель), чтобы разделить команды на логические группы. 7. Повторите три последних действия для других частей четвертных меню. ПРИМЕЧАНИЕ После присвоения требуемых команд можно назначить вновь созданному меню сочетание клавиш. Для этого в поле Quad Shotcut (Вызов четвертного меню) введите нужную комбинацию клавиш, нажав их на клавиатуре. 8. Сохраните новое четвертное меню, щелкнув на кнопке Save (Сохранить), и в появившемся окне выберите или создайте новый файл для сохранения.
Вкладка Menus (Меню) Вкладка Menus (Меню) окна диалога Customize User Interface (Настройка пользовательского интерфейса) позволяет создавать и настраивать существующие команды любого меню программы 3ds Max (рис. 1.40). По умолчанию в правой части вкладки Menus (Меню) представлены команды главного меню программы. Чтобы создать новое меню и добавить его к главному, выполните следующие действия. 1. Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню. 2. В открывшемся окне New Menu (Новое меню) введите имя для создаваемого меню и щелкните на кнопке ОК. 3. Аналогично построению четвертного меню, описанному выше, перетащите нужные команды из списка Action (Действие) в окно меню выше строки End of Menu (Окончание меню). 4. При необходимости добавьте Separator (Разделитель), чтобы разделить команды на логические группы. 5. В списке доступных меню выберите Main Menu Bar (Строка главного меню) или любое другое место, где вы хотели бы поместить созданное меню. 6. В левом нижнем окне списка Menus (Меню) выберите имя созданного вами меню и перетащите его в правую часть вкладки на дерево основного меню,
73
Настройка программы
при этом синяя линия будет указывать то место, куда поместится новый пункт меню. 7. Сохраните новое или измененное меню, щелкнув на кнопке Save (Сохранить), и в появившемся окне диалога выберите файл для сохранения или создайте новый. < ! С i istomze User hltwface Toofcafs
j Quads j
Menus
Cdocs
Group: I Main UI
Щ Щ [Si • $ U S
"tMOCTW Halogen Bulb 4 - 21W Halogen Bulb %"35W Halogen Bulb 4 - 40W Bub 4ft Cove Fluorescent [web] 411 Pendant Fluorescent (web)
File Edit Tools Group Views Cieate Modifiers
Character reactor Animation Siaph Editors [? Rendenng 3 Customize 33 MAXScript
V 5 0 W Halogen Bulb % 60W Bulb V 75W Bulb 4 - 8 0 W Halogen Bulb |§About reactot... Absolute
ft Help •• End ol Menu -
Menus Animation Animation - Constraints Animation - IK Solvets Animation • Position Controllers Animation • Rotation Controllers Animation. •Scale Controllers
_J
JH
Рис. 1.40. Вкладка Menus (Меню) окна Customize User Interface (Настройка пользовательского интерфейса)
Вкладка Colors (Цвета) Вкладка Colors (Цвета) позволяет настраивать цвета всех элементов интерфейса программы, включая отображение объектов и их составных элементов в окнах проекций (рис. 1.41). В раскрывающемся списке Elements (Элементы) верхней части вкладки представлены настройки оттенков цвета для элементов интерфейса. Выбрав в окне нужную строку с элементом, щелкните в правой части вкладки на образце цвета и в появившемся окне Color Selector (Выбор цвета) выберите нужный цвет. Нижняя часть вкладки содержит список элементов пользовательского интерфейса, которые отвечают за отображение интерфейса программы и настраиваются аналогичным образом. Выполненные изменения можно посмотреть, щелкнув на кнопке Apply Colors Now (Применить цвета сейчас), и если вас все устраивает, сохраните выполненные изменения, щелкнув на кнопке Save (Сохранить).
74
Глава 1 . Интерфейс программы
ЙЙ Customize User Interface fooiiats
j Quads I Menus I Colors
Elements: j Viewports
Arcball Arcball Highlight Cross Haif Cursof Inactive Viewport Label Safeframe Action Safeframe Live Safeframe Title Safeframe User Show Dependencies Viewport Active Border
3 Reset
a
Scheme, j U se Standard Windows Colors _»]
3D Highlight 130 Light 13D Shadow jActive CspNon §Ас&>* Command JAp» Workspace I Auto ksy Button ij Bad-ground |Hi^ihr i Icons. Di»blad
Oota • Value |
Г
Ttanspatency; j i j T " r
|
IMooSiei
Reset
Apply Colors Now LGad...
Save...
Reset
Рис. 1.41. Вкладка Colors (Цвета)
Итак, в этой главе вы познакомились с основными элементами интерфейса программы 3ds Max 8, способами настройки программы и пользовательского интерфейса. Вопросы настройки путей, единиц измерения, сетки и привязок не рассматривались, так как не должны вызвать затруднений, и предлагаются для самостоятельного разбора. Однако прежде чем переходить к следующей главе, обратите внимание на некоторые рекомендации по настройке пользовательского интерфейса. • Для удобства в работе максимальное пространство на экране монитора должно отводиться окнам проекций, в которых ведется моделирование. В связи с этим максимально используйте сочетания клавиш, освободив окно от лишних панелей. Это ускорит доступ к командам и инструментам программы. • Используйте кнопки минимального размера, что позволит разместить в поле зрения большее количество кнопок. • Создавайте собственные панели и меню с наиболее часто вызываемыми командами и присваивайте им сочетания клавиш. • При моделировании в двумерном пространстве ограничьтесь только теми окнами проекций, которые нужны для моделирования.
Настройка программы •
75
Если вы обладаете двухмониторной системой, переместите все панели и открывающиеся окна на второй монитор, оставив на первом лишь окна проекций.
• Включайте отображение одного окна проекции, когда необходимо более внимательно рассмотреть модель или выполнить редактирование на уровне подобъектов. •
По возможности работайте в режиме отображения Expert Mode (Экспертный режим).
Основные приемы работы • Объекты в 3ds Max 8 • Создание объектов сцены • Модификаторы геометрии
Объекты в 3ds Max 8
77
Подобно огромному зданию, построенному из маленьких кирпичиков, программа 3ds Max позволяет создавать разноплановые сцены, используя в качестве строительных блоков примитивы (параметрические объекты). Вы можете использовать стандартные параметрические объекты для начала любой работы. После создания к ним можно применять модификаторы, строить составные объекты, разрезать, редактировать на уровне подобъектов и выполнять многие другие операции. Объектами в программе 3ds Max являются любые геометрические фигуры, кривые, камеры, вспомогательные объекты, объемные деформации, системы и источники света, которые могут включаться в состав сцены. Процесс создания и преобразования любых объектов в целом одинаков: объект создается с помощью меню Create (Создание) вкладки Create (Создание) командной панели или кнопок панели инструментов, затем выбирается инструмент для его изменения.
Объекты в 3ds Max 8 Объектно-ориентированное моделирование 3ds Max 8 — объектно-ориентированная программа, то есть все, что создается в программе, является объектами. Геометрия, камеры и источники света на сцене являются объектами. Объектами также являются модификаторы, контроллеры, растровые изображения и определения материалов. Многие объекты, подобные каркасам, сплайнам и модификаторам, допускают манипулирование на уровне подобъектов. Что на практике означает объектно-ориентированное поведение? Рассмотрим простой пример. Предположим, вам необходимо построить составной объект при помощи булевой операции вычитания. После выбора объекта и щелчка на кнопке Pick Operand В (Указать операнд Б) программа автоматически определит, какие объекты сцены являются действительными для выполнения булевой операции. Только действительные объекты, определенные на основе текущего состояния программы, могут быть выбраны и применены для продолжения операции вычитания. То же самое касается применения к объектам модификаторов. Доступны будут только те модификаторы, которые можно применить к выделенному объекту, все остальные станут неактивными или скрытыми. Таким образом программа не позволяет пользователю ошибиться, в результате повышается производительность и экономится время. Это и есть объектно-ориентированное поведение.
Параметрические и редактируемые объекты Все геометрические объекты программы 3ds Max 8 можно условно разделить на две категории: параметрические и редактируемые.
78
Глава 2. Основные приемы работы
Большинство объектов в 3ds Max являются параметрическими. Параметрические объекты — это объекты, которые определяются совокупностью установок или параметров, а не являются описанием его формы. Проще говоря, такие объекты можно контролировать при помощи параметров (свиток Parameters (Параметры) на командной панели). Изменение значений параметров модифицирует геометрию самого объекта. Такой подход позволяет гибко управлять размерами и формой объектов. Возьмем для примера объект Sphere (Сфера). Параметрическая сфера сохраняет параметры радиуса и количества сегментов и отображает в окнах проекций представление сферы на основе текущего значения параметров (рис. 2.1). ••••••{::•
. • г
•••• - -•'
•
.'.у%>
У
. ; • ,
•:*;:..-;,•. .- •'•'
' •;: •-•;•:• < . - ; • . . ••:••. ...•:• ' .
•: •-.•'
- , Т--
Рис. 2 . 1 . Параметрическая сфера (а) и ее параметры (б)
Параметрическое определение сферы записано в виде радиуса и количества сегментов и может быть в любое время изменено и даже анимировано. Параметрическими объектами в 3ds Max являются все объекты, которые можно построить при помощи меню Create (Создание). Они имеют важные настройки моделирования и анимации, поэтому в общем случае необходимо как можно дольше сохранять параметрические определения объекта. Однако сохранение параметрических свойств объектов расходует большое количество ресурсов компьютера и замедляет работу с объектами, так как все параметры, настройки и модификаторы хранятся в памяти компьютера. Таким образом, при работе следуйте правилу: если вы не предполагаете в дальнейшем использовать параметрические свойства объекта, преобразуйте его в Editable Mesh (Редактируемая поверхность). Изменение редактируемых объектов происходит за счет подобъектов (вершины, ребра, грани, полигоны) или функций. В состав редактируемых объектов входят: Editable Spline (Редактируемый сплайн), Editable Mesh (Редактируемая поверхность), Editable Poly (Редактируемая полигональная поверхность), Editable Patch
79
Объекты в 3ds Max 8
(Редактируемая патч-поверхность) и NURBS (NURBS-поверхность). Редактируемые объекты в стеке модификаторов содержат ключевое слово Editable (Редактируемый). Исключение составляют NURBS-объекты, которые называются NURBS Surfaces (NURBS-поверхности). Примером непараметрического объекта может служить та же сфера после преобразования в Editable Mesh (Редактируемая поверхность) (рис. 2.2).
Г в, •« -.
> : =4sw ~ 'mv | Г г-
R Г
»\
i
i ^•f
Nsarned Sefecton:
а
б
Рис. 2.2. Редактируемая сфера (а) и свиток ее настроек Selection (Выделение) (б)
Непараметрическая сфера состоит из совокупности вершин и граней. Информация о количестве сегментов и радиусе после преобразования не сохраняется. Если понадобится изменить радиус сферы, то необходимо применить масштабирование или создать новую сферу. Редактируемые объекты получаются путем преобразования других типов объектов. После преобразования параметрического объекта в другой тип (например, в Editable Mesh (Редактируемая поверхность)) он теряет все свои параметрические свойства и не может быть изменен путем указания параметров. В то же время редактируемый объект приобретает свойства, недоступные параметрическому, — возможность редактирования на уровне подобъектов.
Составные объекты Используя вкладку Create (Создание) командной панели, можно объединять два и более объектов для создания нового параметрического объекта Compound Object (Составной объект). Параметры объектов, содержащихся в составном объекте, также можно модифицировать и изменять. Составной объект является типом параметрического объекта, в параметры которого входят объединяемые объекты и описание способов их объединения.
80
Глава 2. Основные приемы работы
Рассмотрим для примера булеву операцию вычитания цилиндра из сферы (рис. 2.3).
111И1 •
••
••
•••
•••
•
•:.:.
•:•:•.
• • ; * ;
:••
•
>©T| jSpheieOI j Modifier List
••
•••
1 .
F,y E o *
I ГЙ<»йтИ» ~:;" JA Sphered j e CylinderOl
' # ft!
> t
- ...i ••••
I
f Ui*»
Рис. 2.3. Составной объект (а) и его параметры (б)
Во многих программах трехмерного моделирования данная операция привела бы к тому, что ее результатом стал бы явный каркас, являющийся булевым решением. Если бы возникла необходимость изменить положение цилиндра или радиус сферы, то следовало бы создать новую сферу и цилиндр и снова выполнить булеву операцию. В 3ds Max цилиндр и сфера сохраняются как часть параметрического составного булевого объекта. Можно по-прежнему осуществлять доступ к параметрам сферы и цилиндра и выполнять анимацию с ними, а также их относительных положений.
Объекты форм В 3ds Max объекты форм создаются как исходная геометрия для построения других более сложных объектов, а также в качестве путей анимации. Кроме линий, которые создаются путем построения вершин в окнах проекций, все остальные формы являются параметрическими объектами. Различается два типа форм в зависимости от метода их создания: при помощи определения радиуса и прямоугольника. Исключением являются дуга и текст. Для создания объекта формы перейдите на вкладку Create (Создание) командной панели, выберите категорию Shapes (Формы) и щелкните на кнопке с именем нужной формы. После этого можно перейти в любое окно проекции и, щелкнув левой кнопкой мыши, переместить мышь по диагонали. Диагональ определяет параметры Length (Длина) и Width (Ширина), используемые прямоугольником или эллипсом, либо радиус для объектов, в параметрах которых он присутствует. Примером такого объекта может быть NGon (Многоугольник) радиусом 50 и с количеством сторон 6 (рис. 2.4).
81
Объекты в 3ds Max 8
Ш
|NGon01 j Modifier List |
NGon
Rendering ' +
irietgd&kn Patemeta J 50.0mm
Z\
& Inscribed ^* Dicumscribed SidesflT Corner Radius: | u.umm Г
а
Ciiculai
б
Рис. 2.4. Объект формы NGon (Многоугольник) (а) и его параметры (б)
Текст является простейшей создаваемой формой. Достаточно щелкнуть в любом окне проекции — и текст будет помещен на текущую плоскость.
Полигональные объекты Полигональными являются объекты, основанные на сетке полигонов, из которых состоит поверхность этих объектов. Они похожи на объекты Editable Mesh (Редактируемая поверхность), но обладают уникальными возможностями. Эти объекты доступны только как Editable Poly (Редактируемая полигональная поверхность). В них могут быть преобразованы любые геометрические объекты сцены путем конвертации в Editable Poly (Редактируемая полигональная поверхность), а также после применения модификатора Edit Poly (Редактирование полигонов) или Poly Select (Выделение полигонов). Примером полигонального объекта может служить преобразованный объект, полученный при помощи булевой операции вычитания сферы из параллелепипеда (рис. 2.5). Полигональные объекты более ресурсоемкие, чем редактируемые поверхности, и на маломощных компьютерах могут вызывать замедление скорости работы. Существует несколько простых способов оптимизации сцены. • Моделируйте по возможности простые объекты при помощи Editable Mesh (Редактируемая поверхность). • Во время построения сложных и больших по объему граней объектов стоит периодически разрушать стек модификаторов, выполняя команду Collapse (Свернуть). • Применяя команду NURMS Subdivision (NURMS-разбиение), используйте минимально необходимое количество разбиений для отображения в окнах проекций
82
Глава 2. Основные приемы работы и достаточное для визуализации. При необходимости отключите отображение разбиений в окнах проекций совсем. После построения объекта преобразуйте его в Editable Mesh (Редактируемая поверхность). I
I 1.
I L
I
-I
*J*!|J8L*;lSTI JBoxOi JM odder List
j j
В E<*abjePj!y
•m П
j Г hi'-".,
1 , 3a |1
•• Э щ
\
- -• l i
Рис. 2.5. Объект Editable Poly (Редактируемая полигональная поверхность) (а) и свиток Selection (Выделение) его настроек (б)
Объекты сеток Безье Patch Grids (Сетки патчей) — это поверхности Безье (рис. 2.6), состоящие из четырехугольных (реже треугольных) фрагментов (лоскутов), основанных на сплайнах, которые управляются при помощи манипуляторов Безье.
i l l '
••'
:
••••.
Рис. 2.6. Модель муравья, построенная при помощи фрагментов Безье (а), и свиток Selection (Выделение) его настроек (б)
Объекты в 3ds Max 8
83
Меню Create (Создание) содержит два параметрических объекта фрагментов Безье, но большинство объектов создается путем преобразования в Editable Patch (Редактируемая патч-поверхность). Моделирование при помощи фрагментов Безье имеет следующие преимущества перед другими способами создания объектов: • автоматическое сглаживание стыков между фрагментами, при котором получается плавный переход от одного фрагмента к другому; • управление фрагментами при помощи манипуляторов Безье; • возможность управления топологией (плотностью) фрагментов Безье, что позволяет при незначительных затратах получить сглаженную модель; • окончательная модель представляет собой полностью бесшовный каркас, который легко поддается анимированию. Однако такое моделирование обладает и определенными недостатками: • автоматическое сглаживание стыков из преимущества превращается в недостаток, когда необходимо выполнить моделирование излома поверхности (например, ногтя); • фрагменты Безье слишком велики, поэтому работать с маленькими элементами или деталями объекта неудобно.
NURBS-объекты NURBS — это поверхности или кривые, форма которых описывается неоднородными рациональными В-сплайнами. На рис. 2.7 показана модель шляпы, выполненная с использованием NURBS Surfaces (NURBS-поверхность).
Рис. 2.7. Модель шляпы в каркасном (слева) и тонированном (справа) виде, выполненная при помощи NURBS-поверхностей
84
Глава 2. Основные приемы работы
В зависимости от типа NURBS-поверхности могут строиться с использованием управляющих вершин или контрольных точек, лежащих на поверхности. Такие поверхности являются идеальным инструментом для построения форм органического происхождения: с ними легко работать, они имеют хороший интерактивный контроль, позволяют создавать бесшовные поверхности и остаются сглаженными даже на криволинейной поверхности. NURBS-поверхности предпочтительнее полигональных при моделировании плавных поверхностей объектов, таких, как растения, животные, цветы и т. д.
Источники света и камеры Данные объекты не относятся к моделируемым типам. Тем не менее, это очень важные объекты, так как сложно представить серьезный проект, в котором отсутствовали бы камеры и источники света. Камеры и источники света (рис. 2.8) — это объекты сцены, предназначенные для имитации различных источников света (точечного, направленного, дневного и т. д.) и создания видов из виртуальных камер, имитирующих физические свойства реальных камер (фокусное расстояние, угол зрения и т. д.).
Рис. 2.8. Нацеленный источник света и нацеленная камера
Камеры и источники света могут быть свободными и нацеленными. Нацеленные камеры и источники света, как следует из названия, характеризуются наличием цели. Нацеленные камеры (или источники света) содержат два объекта: камеру (или источник света) и их цель. Камера показывает то, что видите вы, а ее цель указывает точку, на которую вы смотрите. Камеру и ее цель можно трансформировать
85
Объекты в 3ds Max 8
независимо, но считается, что камера всегда смотрит на цель. В случае с нацеленным источником света цель указывает направление, в котором он светит. Цель может двигаться независимо. ПРИМЕЧАНИЕ Для камеры и источника света можно создавать окна проекции, имитирующие вид из камеры или источника света в направлении цели. Такие окна, используемые для источников света, позволяют с большей точностью расположить освещение и выставить тени.
Существует два типа камер и восемь типов источников света (в том числе два, поставляемых вместе с визуализатором mental ray).
Вспомогательные объекты К вспомогательным объектам относятся объекты сцены, которые не видны при итоговой визуализации, но упрощают процесс моделирования и анимации (рис. 2.9). на hui'i" )Kf.>
Рис. 2.9. Вспомогательные объекты: Dummy (Пустышка), Grid (Координатная сетка) и Compass (Компас)
Существует восемь групп вспомогательных объектов: Standard (Стандартный), Atmospheric Apparatus (Атмосферная оснастка), Camera Match (Горизонт камеры), Assembly Heads (Управление сборкой), Manipulators (Манипуляторы), Particle Flow, VRML97 и reactor. Назначение вспомогательных объектов зависит от их разновидности. Например, манипуляторы предназначены для создания в окнах проекций ползунков или джойстиков, для управления параметрами других объектов, а стандартные применяются при моделировании и анимации объектов сцены.
86
Глава 2. Основные приемы работы
Объемные деформации В этой категории представлены различные объекты, которые не отображаются при визуализации, но оказывают воздействие на другие объекты сцены, изменяя их форму или поведение. В совокупности с системой частиц модуля Particle Flow объемные деформации позволяют создавать впечатляющие эффекты. Например, можно имитировать силу тяжести, ветер или деформировать плоскую поверхность для создания на ней ряби или волн. В эту категорию входят шесть разновидностей объемных деформаций: Forces (Силы), Deflectors (Отражатели), Geometric/Deformable (Деформируемая геометрия), Modifier-Based (Основанные на модификаторах), Particles & Dynamics (Частицы и динамика) и reactor.
Дополнительные инструменты Категория Systems (Дополнительные инструменты) содержит совокупность связанных между собой объектов, которые объединены общими параметрами, обеспечивающими анимацию. Другими словами, объекты являются комбинацией геометрии и поведения. На рис. 2.10 представлены два объекта этой категории: Sunlight (Солнечный свет) и Daylight (Дневной свет).
Рис. 2.10. Два объекта категории Systems (Дополнительные инструменты): Sunlight (Солнечный свет) и Daylight (Дневной свет)
В категории Systems (Дополнительные инструменты) содержится пять объектов: Sunlight (Солнечный свет), Bones (Кости), Biped (Двуногий), Daylight (Дневной свет) и Ring Array (Хоровод). Например, Biped (Двуногий) — инструмент, предназначенный для создания и анимации фигуры и движения персонажей. Скелет двуногого существа, создаваемый при помощи компонента Biped (Двуногий), обладает иерархической цепочкой связей и специальным набором свойств для анимации.
Создание объектов сцены
87
Создание объектов сцены В данном разделе главы будут рассмотрены основы создания объектов. Речь пойдет о простых объектах, однако применяемые для них правила такие же, как и для большинства сложных объектов. Кроме того, примитивы часто используются в качестве «строительных блоков» для создания достаточно сложных или органических моделей. Создание объектов в 3ds Max — быстрый и несложный процесс. Каждый создаваемый объект по своему характеру является параметрическим, то есть его форма определяется набором параметров. Для создания объектов сцены обычно выполняются следующие действия. 1. Выбирается опорная плоскость для объекта (чаще всего это означает просто активизацию какого-то окна проекции). 2. Выбирается место на плоскости, которое будет начальной точкой объекта. 3. В окне проекции перемещается указатель мыши для определения оставшихся параметров объекта. Параметрические объекты могут создаваться в двух режимах: интерактивном и с помощью клавиатуры.
Интерактивный Данный способ применяется наиболее часто при построении объектов сцены. Для создания объекта необходимо выбрать тип объекта, а затем щелкнуть в окне проекции и переместить указатель мыши для определения оставшихся параметров. Результирующая геометрия будет рисоваться одновременно во всех окнах проекций по мере определения расстояний и выполнения процесса создания. Для создания таких объектов, как Sphere (Сфера) или Plane (Плоскость), необходимо после щелчка в окне проекции переместить указатель мыши и отпустить.
СОВЕТ Если удерживать нажатой клавишу Ctrl при построении таких объектов, как Box (Параллелепипед) или Plane (Плоскость), то точка окна проекции, в которой был произведен щелчок, станет центром объекта, а объект будет строиться равносторонним.
Для построения этих объектов достаточно одного параметра (например, для Sphere (Сфера) — это радиус). После создания объект оказывается выделенным, а параметры вкладки Create (Создание) командной панели остаются активными и продолжают оказывать влияние на объект. Связь между вкладкой Create (Создание) командной панели и недавно созданным объектом разрушается при щелчке в окне проекции или переключении на другую операцию.
88
Глава 2. Основные приемы работы
ПРИМЕЧАНИЕ Как правило, интерактивное создание объектов предполагает построение примитива приблизительного размера. Для уточнения размеров объекта необходимо перейти на вкладку Modify (Изменение) командной панели и ввести с клавиатуры точные значения параметров.
Место расположения объекта является характеристикой определения объекта. Большинство объектов основывается на плоскости создания и по ней определяют высоту. Например, цилиндрические примитивы размещают цоколь на плоскости создания, а параметр высоты вытягивает перпендикуляр из этой плоскости. Поскольку такие примитивы, как Sphere (Сфера), GeoSphere (Геосфера), Torus (Top), Hedra (Многогранник), определяются своими опорными точками, они являются исключениями из этого правила и располагают на плоскости конструкции свою опорную точку.
При помощи ввода значений параметров Ввод значений параметров с клавиатуры является альтернативой интерактивному методу. Иногда требуется точно указать величины, характеризующие координаты опорной точки объекта и основные размеры объекта. Для этих целей служит свиток Keyboard Entry (Ввод с клавиатуры) (рис. 2.11), расположенный на вкладке Create (Создание) командной панели.
•
'
JBoxOS •t-
. Osation Method Keyboard Entry
I
X-J30 0
i]
Y:f2TfT
;!
2:f3O0
t
Length:] 200 0
ti
WidtkfMO
* jj
Heightf Create Parameters
Р и с . 2 . 1 1 . Свиток Keyboard Entry (Ввод с клавиатуры) примитива Box (Параллелепипед)
Создание объектов сцены
89
В зависимости от типа создаваемого объекта список параметров свитка Keyboard Entry (Ввод с клавиатуры) содержит разное количество счетчиков, едиными остаются только поля для ввода координат опорной точки X, Y и Z. После того как заданы все величины, необходимо щелкнуть на кнопке Create (Создать) для создания объекта в окнах проекций.
При помощи сетки Если требуется конструировать на плоскостях, отличных от основных сеток, или использовать одну и ту же плоскость во всех окнах проекций, то удобно использовать объект Grid (Координатная сетка). Объекты сетки весьма полезны при увеличении сложности модели и создании объектов, размещенных в плоскости, отличной от ортогональных проекций. Сетки играют неоценимую роль при определении плоскостей конструкции, которые выравниваются с видами, гранями и объектами. В качестве примера можно привести создание примитива Box (Параллелепипед) на поверхности сферы при помощи объекта AutoGrid (Автосетка). 1. Для создания сферы выполните команду Create • Standard Primitives • Sphere (Создание • Простые примитивы • Сфера). 2. Щелкните кнопкой мыши в окне проекции Тор (Сверху) и переместите указатель в сторону на расстояние радиуса сферы. 3. При необходимости уточните размер и положение сферы в пространстве (путем изменения значений параметров в свитке Parameters (Параметры) вкладки Modify (Изменение) командной панели). 4. Для построения параметрического объекта Box (Параллелепипед) щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели и выберите из раскрывающегося списка строку Standard Primitives (Простые примитивы). 5. В свитке Object Type (Тип объекта) щелкните на кнопке Box (Параллелепипед) и установите флажок AutoGrid (Автосетка). 6. Перейдите в окно проекции Perspective (Перспектива) и установите указатель мыши поверх сферы. Он примет вид осей координат с координатой Z, расположенной перпендикулярно полигону, над которым он стоит. 7. Выберите положение для начала построения объекта и, удерживая нажатой клавишу Ctrl, щелкните кнопкой мыши и переместите указатель в сторону на величину основания параллелепипеда. Отпустите кнопку мыши и переместите указатель вверх для создания параметра высоты. 8. При необходимости уточните размеры параллелепипеда, изменив значения параметров в свитке Parameters (Параметры) вкладки Modify (Изменение) командной панели. На рис. 2.12 показан результат выполненных действий.
90
Глава 2. Основные приемы работы
Рис. 2.12. Параллелепипед, построенный на поверхности сферы при помощи автосетки
Параметрические объекты С помощью геометрических примитивов 3ds Max 8 можно создать большое количество других форм. Примитивы используются в качестве начальной точки для моделирования каркаса и вершины. В общем случае примитивы служат инструментами построения и моделирования при создании составных объектов. Простыми геометрическими примитивами (категория Standard Primitives (Простые примитивы)) в 3ds Max являются следующие объекты. • Box (Параллелепипед) — параллелепипеды и кубы с любым соотношением сторон. • Sphere (Сфера) — параметрические объекты типа сферы или купола. Базовый объект создает квадратичные секции, похожие на линии долготы и широты глобуса. • Cylinder (Цилиндр) — цилиндры, цилиндрические секторы и многогранные призмы любых пропорций. • Torus (Top) — кольца с круглой формой поперечного сечения. Может быть создан также тороидальный сектор. • Teapot (Чайник) — объект, демонстрирующий возможности 3ds Max. Чайник является сложным параметрическим объектом, состоящим из частей. • Cone (Конус) — общие формы, напоминающие цилиндры; два радиуса позволяют в любой момент поместить результирующий объект в управляемый конус.
Создание объектов сцены
91_
• GeoSphere (Геосфера) — параметрические объекты, похожие на сферу и представляющие различные способы определения сферических объемов, которые обеспечивают три различных геометрии сферы и купола. Геосфера создает треугольные секции, подобно геодезическим куполам. • Tube (Труба) — объекты, подобные цилиндру, но с продольным отверстием внутри. Можно также создавать секторы и многогранные призмы с отверстиями. • Pyramid (Пирамида) — пирамиды (в том числе усеченные) с прямоугольным или квадратным основанием. • Plane (Плоскость) — прямоугольный фрагмент сетчатой оболочки. Единственный примитив, не являющийся трехмерным объектом. В число сложных примитивов (категория Extended Primitives (Улучшенные примитивы)) входят следующие объекты. • Hedra (Многогранник) — пять разновидностей многогранников со множеством управляющих параметров. Все объекты определяются заданием точки центра и величиной радиуса. • ChamferBox (Параллелепипед с фаской) — параллелепипеды и кубы с любым соотношением сторон. В отличие от объекта Box (Параллелепипед), при использовании объекта ChamferBox (Параллелепипед с фаской) существует возможность задания фасок на краях. • OHTank (Цистерна) — цилиндры с основаниями в виде сферических сегментов с ярко выраженной границей между основаниями и средней частью объекта. На базе этих объектов можно также строить цилиндрические секторы. • Spindle (Веретено) — цилиндры с коническими основаниями, а также цилиндрические секторы на базе этих объектов. • Gengon (Многогранная призма) — многогранные призмы с фаской и без нее. • RingWave (Круговая волна) — инструмент для создания труб, внешняя и внутренняя поверхности которых могут быть волнообразно деформированы. • Prism (Призма) — инструмент для создания призм с различным соотношением сторон основания. • Torus Knot (Тороидальный узел) — объект, который строится на основе узлов различного вида. Можно изменять как форму сечения, так и базовую форму объекта. • ChamferCyl (Цилиндр с фаской) — цилиндры, цилиндрические секторы и многогранные призмы любых пропорций с возможностью задания на краях фаски, срезанной под углом 45°. • Capsule (Капсула) — цилиндры с основаниями в виде полусфер, а также цилиндрические секторы на базе этих объектов. • L-Extrusion (L-тело экструзии) — плоскость L-образной формы с выдавливанием по высоте. • C-Extrusion (С-тело экструзии) — объект, аналогичный L-Extrusion (L-тело экструзии), отличающийся базовой формой, представленной в виде буквы «П».
92
Глава 2. Основные приемы работы
Оба тела экструзии являются базовым материалом для моделирования архитектурных конструкций. • Hose (Рукав) — инструмент для создания гофрированных рукавов, шлангов и других объектов аналогичной формы. «Привязав» основания Hose (Рукав) к двум другим объектам, можно получить подобие анимированной пружины. Все примитивы имеют настройки для управления их размерами — количеством сегментов, сглаженностью и генерацией координат проецирования. Пока параметрический объект не преобразован в другой тип, можно свободно изменять все параметры. Их всегда легко модифицировать, изменяя значения на вкладке Modify (Изменение) командной панели. Рассмотрим два примера создания простого и сложного геометрических примитивов на основе построения GeoSphere (Геосфера) и ChamferBox (Параллелепипед с фаской). Для построения GeoSphere (Геосфера) выполните следующие действия. 1. В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Standard Primitives (Простые примитивы). 2. Щелкните на кнопке GeoSphere (Геосфера) в свитке Object Type (Тип объекта). В результате в области свитков командной панели появятся свитки параметров геосферы (рис. 2.13).
Name and Color
"•
[GeoSpherem Creation Method Diameter
*
Centa
Faametets
Radius [тЕВ
: Z
Segments: |*4 -Geodesic Base
[
fype
Г Tetta Г Qaa *
1
ta»a:
Г" Hemisphere f
BasetoPivot
W Generate Маррвтд Coords. Г
Real-Wald Map Size
Рис. 2.13. Настройки объекта GeoSphere (Геосфера) на командной панели
Создание объектов сцены
93
3. Установите переключатель Creation Method (Метод создания) в положение Diameter (Диаметр) или Center (Центр) в зависимости от того, хотите вы создавать геосферу, перемещая указатель мыши в окне проекции по диаметру (от края к краю) или от центра, указывая радиус. 4. Щелкните в окне проекции и переместите указатель мыши в сторону для создания параметрического объекта GeoSphere (Геосфера). 5. При необходимости уточните радиус объекта в поле Radius (Радиус). 6. Укажите количество сегментов в поле Segment (Количество сегментов), чтобы задать плотность сетки поверхности объекта. 7. Переключатель Geodesic Base Type (Базовый тип оболочки) установите в положение, соответствующее создаваемому объекту: •
Tetra (Тетраэдр) — четырехгранник (рис. 2.14, а);
•
Octa (Октаэдр) — восьмигранник (рис. 2.14, б); Icosa (Икосаэдр) — двадцатигранник (рис. 2.14, в).
Рис. 2.14. Три объекта GeoSphere (Геосфера), отличающиеся типом оболочки: Tetra (Тетраэдр) (a), Octa (Октаэдр) (б), Icosa (Икосаэдр) (в)
8. Установите флажок Hemisphere (Полусфера) для получения половины объекта — полусферы. 9. Установите флажок Base to Pivot (Точка опоры внизу), чтобы переместить точку опоры из центра объекта к его основанию. Построим ChamferBox (Параллелепипед с фаской) с помощью главного меню и ввода значений параметров с клавиатуры. 1. Выполните команду Create • Extended Primitives • ChamferBox (Создание • Улучшенные примитивы • Параллелепипед с фаской). В результате на командной панели появятся свитки параметров параллелепипеда с фаской (рис. 2.15).
94
Глава 2. Основные приемы работы
I ChamferB oxOI •Creation Method <* t u b e
X;
j,
* Box
fOO
|150
tj
;; !
fillet P"5
«j
:
Рис. 2.15. Настройки создания примитива ChamferBox (Параллелепипед с фаской) на командной панели
2. В полях X, Y и Z введите значения смещения относительно начала координат по соответствующим осям. 3. Введите значения параметров Length (Длина), Width (Ширина), Height (Высота) и Fillet (Закругление). 4. Щелкните на кнопке Create (Создать) для создания объекта в окнах проекций. 5. При необходимости, используя свиток Parameters (Параметры), задайте количество сегментов для сторон параллелепипеда с фаской и количество сегментов для закругления. 6. Для сглаживания поверхности в пределах закругления установите флажок Smooth (Сглаживание) (рис. 2.16).
Рис. 2.16. Параллелепипед с фаской
95
Создание объектов сцены
Объекты форм Для создания сложных объектов сцены не всегда хватает простых и сложных параметрических объектов. В этом случае на помощь приходят объекты форм. В 3ds Max объекты форм создаются в качестве исходной геометрии для построения других более сложных объектов методом лофтинга (то есть размещением набора характерных сечений объекта вдоль траектории пути), выдавливания, вращения и т. д. Можно также создать формы, управляющие движением во время анимации. Категория Shapes (Формы) состоит из трех групп объектов: Splines (Сплайны), NURBS Curves (NURBS-кривые) и Extended Splines (Улучшенные сплайны). Рассмотрим первую группу как наиболее распространенную и часто используемую. Что такое сплайны? Это кривые, представляющие собой набор вершин, соединенных прямолинейными или криволинейными отрезками — сегментами. Вершины (Vertices), сегменты (Segments) и сплайны (Splines) составляют уровень подобъектов кривых этого типа. Вершины — это точки, находящиеся на концах сегментов и определяющие кривизну сплайна. Различают четыре типа вершин. • Smooth (Сглаженная) — плавно соединяющая два смежных сегмента, которые имеют равную степень кривизны. • Corner (Угловая) — соединяющая два сегмента, которые образуют излом кривой в месте соединения. • Bezier (Безье) — подобна сглаженной вершине, но с возможностью управления кривизной в точке соединения сегментов при помощи манипуляторов Безье. Манипуляторы находятся на одной прямой, позволяя управлять только их наклоном и длиной, что вызывает изменение кривизны сегментов и их ориентацию. • Bezier Corner (Угол Безье) — как и вершина типа Bezier (Безье), имеет манипуляторы, но в отличие от Bezier (Безье) манипуляторы можно настраивать независимо друг от друга. На рис. 2.17 показана кривая со всеми типами вершин. Угловая вершина
Вершина Безье
Манипуляторы Безье
Первая Сглаженная вершина вершина
Угловая вершина Безье
Рис. 2.17. Подобъекты сплайна
96
Глава 2. Основные приемы работы
Сегменты — прямолинейные или криволинейные участки сплайна, ограниченные двумя вершинами. Криволинейные сегменты образуются из прямолинейных участков, количество которых определяется значением параметра Steps (Количество шагов) или установкой флажка Adaptive (Адаптивный) для автоматического задания кривизны сплайна. В зависимости от типа сегменты бывают: • Line (Линейный) — прямая между двумя вершинами; • Curve (Кривая) — кривая, определяемая типом вершин и настройкой манипуляторов. Сплайны — это группа смежных сегментов, образующих непрерывную линию. Сплайны бывают открытые и закрытые (у закрытых первая и последняя вершины совпадают). В зависимости от типа сплайны бывают: • Line (Линия) — все сегменты сплайна являются прямыми; • Curve (Кривая) — все сегменты сплайна имеют некоторую кривизну; • смешанный — сплайн, содержащий как первый, так и второй типы сегментов, то есть имеющий как прямолинейные, так и криволинейные участки. Программа 3ds Max 8 содержит 11 типов сплайнов: • Line (Линия) — основной объект формы, позволяющий строить как замкнутые, так и разомкнутые кривые любой нерегулярной формы; • Circle (Окружность) — позволяет создавать окружности произвольного радиуса; • Arc (Дуга) — инструмент для создания сегмента криволинейной формы по заданным начальной и конечной точкам, а также кривизны или центра; • NGon (Многоугольник) — правильный многоугольник с настраиваемым количеством сторон и возможностью задания скругления углов; • Text (Сплайновый текст) — объект формы на основе строк текста с элементами форматирования: выбор гарнитуры, выравнивания, межстрочного и межбуквенного пространства и т. п.; • Section (Сечение) — инструмент, используемый для создания формы на основе сечения трехмерных объектов плоскостью; • Rectangle (Прямоугольник) — дает возможность создания прямоугольника или квадрата с возможностью скругления углов прямыми или кривыми фасками; • Ellipse (Эллипс) — позволяет создавать эллипсы и круги по двум осям; • Donut (Кольцо) — состоит из двух концентрических окружностей с возможностью раздельной настройки большего и меньшего радиусов; • Star (Звезда) — применяется для создания звезд с произвольным количеством лучей и возможностью их закручивания и скругления; • Helix (Спираль) — трехмерный объект формы, применяемый для создания спиралей с возможностью контролирования количества витков, высоты, а также внутреннего и наружного радиусов.
Создание объектов сцены
97
Все типы сплайнов представлены в группе Splines (Сплайны) вкладки Create (Создание) командной панели (рис. 2.18).
Splines Objeci Tjjpe
Drcta
Ellpss
Are NGon Te
Donut |
Slat Hel«
S schorl
Рис. 2.18. Группа Splines (Сплайны) категории Shapes (Формы) командной панели
В качестве примера выполним построение двух объектов форм Star (Звезда) и Text (Сплайновый текст). Для создания многоугольника в виде звезды выполните следующие действия. 1. На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны). 2. В свитке Object Type (Тип объекта) щелкните на кнопке Star (Звезда). В результате на командной панели появятся свитки параметров звезды. 3. Звезда строится от центра, поэтому в окне проекции щелкните в том месте, где должен быть центр объекта и, удерживая нажатой кнопку мыши, переместите указатель в сторону на величину первого радиуса. Достигнув нужного размера, отпустите кнопку мыши. 4. Переместите указатель внутрь или наружу сплайна для указания второго радиуса. Щелкните кнопкой мыши для завершения построения (рис. 2.19). 5. В поле Points (Количество лучей) свитка Parameters (Параметры) укажите требуемое количество лучей звезды. 6. При необходимости задайте при помощи параметра Distortions (Искажения) угол смещения вершин первого радиуса относительно второго. 7. В полях Fillet Radius 1 (Радиус закругления 1) и Fillet Radius 2 (Радиус закругления 2) укажите значения радиусов для внешних и внутренних углов звезды. Сплайновый текст представляет собой объект, основанный на последовательности сплайнов с текстовыми атрибутами. К такого рода атрибутам относится возможность задавать размер символов, межсимвольный и межстрочный интервалы, а также выравнивание строк.
98
Глава 2. Основные приемы работы
Рис. 2.19. Объект Star (Звезда) в окне проекции
Для создания сплайнового текста выполните следующие действия. 1. На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны). 2. В свитке Object Type (Тип объекта) щелкните на кнопке Text (Сплайновый текст). В результате в области свитков командной панели появятся параметры сплайнового текста (рис. 2.20).
ZJJLi i S l i l l i tj tj
,'• SiaKpOOO Kerning: foTj Leading: [(To text:',"
•'
?j '
•
MAX Text
Г Manual Update
Рис. 2.20. Свиток настроек Parameters (Параметры) объекта Text (Сплайновый текст)
3. В раскрывающемся списке в верхней части свитка Parameters (Параметры) выберите гарнитуру шрифта. 4. Задайте начертание шрифта, выбрав наклонный или подчеркнутый. 5. Установите режим выравнивания строк: Align Left (По левому краю), Center (По центру), Align Right (По правому краю) или Justify (По ширине).
Создание объектов сцены
99
6. При помощи параметров Size (Размер), Kerning (Кернинг) и Leading (Интерлиньяж) определите значения размера, межсимвольного и межстрочного интервалов соответственно. 7. В текстовое поле введите нужный текст, набрав его с клавиатуры или вставив из буфера обмена. 8. Разместите набранный текст в любом из окон проекций, щелкнув в поле окна кнопкой мыши. 9. При необходимости измените параметры созданного текста. На рис. 2.21 представлен сплайновый текст с параметрами, заданными по умолчанию.
ш
.. Рис. 2 . 2 1 . Объект Text (Сплайновый текст) с параметрами, заданными по умолчанию
Создание составных объектов Составные объекты (Compound Objects) в 3ds Max 8 представлены отдельной группой категории Geometry (Геометрия) вкладки Create (Создание) командной панели. Как правило, это тела, состоящие из двух и более простых объектов, рассмотренных выше (трехмерных объектов или форм). Составные объекты позволяют моделировать тела сложной формы (например, машиностроительные детали) и применять к ним анимацию (например, анимировать процесс создания формы сечением по пути). К составным объектам относятся следующие. • Morph (Морфинговые) — сложные объекты, позволяющие осуществлять анимированный переход исходного объекта в целевой с использованием промежуточных фазовых объектов. • Conform (Согласованные) — вершины исходного объекта проецируются на поверхность целевого. Таким способом имитируются эффекты таяния свечи, плавления льда, растекания лужи воды и т. п.
100
Глава 2. Основные приемы работы
•
BlobMesh (Капля) — системы частиц или геометрические наборы сфер, которые позволяют имитировать жидкую субстанцию. Таким образом можно создавать струю воды, вытекающую из крана.
•
Boolean (Булев) — составные объекты, полученные путем объединения, пересечения или вычитания двух других трехмерных объектов. Для выполнения булевых операций два исходных объекта должны пересекаться в некоторой области пространства.
• Loft (Лофтинговые) — трехмерные тела, построенные на основании объектов форм методом лофтинга, то есть размещением набора характерных сечений объекта вдоль траектории пути. • Scatter (Распределенные) — совокупность копий одного объекта, распределенных на поверхности другого объекта. Чаще всего используются для имитации стеблей травы, стад животных, групп деревьев и т. п. ш Connect (Соединенные) — объект, создающий соединение в отверстиях на поверхности двух объектов. • ShapeMerge (Слитые с формой) — объект, позволяющий создавать отверстия и проемы на поверхности трехмерного тела с использованием сплайновой формы. В этом случае контур сплайна используется в качестве секущих кромок и проецируется на поверхность каркасного объекта. • Terrain (Рельеф) — объект, генерирующий трехмерный рельеф горного ландшафта на основе замкнутых сплайнов, представляющих собой изолинии высот, аналогичные представленным на картах местности. в
Mesher (Сеточные) — составной объект, конвертирующий процедурные объекты (например, системы частиц) в объекты сетки, к которым в дальнейшем могут применяться модификаторы формы.
На рис. 2.22 показан свиток Object Type (Тип объекта) с инструментами для создания составных объектов.
| Compound Objecls
f
Object Тяэе
il
McPh
,
.•
|
i
, "r Connect
BlobMesh | SbwMeraej Jkjfean loft
|
Terrain | Mesher j
Name ere) Color
I jLined =
I
ЩЬ~ •::•.
Рис. 2.22. Группа Compound Objects (Составные объекты) категории Geometry (Геометрия) вкладки Create (Создание)
Создание объектов сцены
1Q1
Рассмотрим два простых примера построения составных объектов: методом лофтинга и булевой операции вычитания. Для построения заготовки болта методом лофтинга выполните следующие действия. 1. В окне проекции Тор (Сверху) постройте три сплайна: два Circle (Окружность), один немного больше другого, и шестиугольный NGon (Многоугольник) с диаметром в полтора-два раза большим, чем у окружности. 2. В окне проекции Front (Спереди) создайте сплайн Line (Линия), расположив его вертикально (рис. 2.23).
Рис. 2.23. Заготовки для создания лофт-объекта
3. В любом окне проекции выделите линию, если она не осталась выделенной после построения. 4. В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Compound Objects (Составные объекты). 5. Щелкните на кнопке Loft (Лофтинговые) в свитке Object Type (Тип объекта). В результате на командной панели появятся свитки параметров, относящиеся к созданию лофт-объектов. 6. В свитке Creation Method (Метод создания) щелкните на кнопке Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) щелкните на шестиугольнике для построения начальной формы лофт-объекта. 7. Параметру Path (Путь) в свитке Path Parameters (Параметры пути) задайте значение равное 20. 8. Щелкните на кнопке Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) еще раз щелкните на шестиугольнике. 9. Параметру Path (Путь) в свитке Path Parameters (Параметры пути) укажите значение равное 20,01. 10. Щелкните на кнопке Get Shape (Взять форму) и в качестве формы выберите в окне проекции Perspective (Перспектива) большую окружность. 11. Параметру Path (Путь) в свитке Path Parameters (Параметры пути) задайте значение 95.
102
Глава 2. Основные приемы работы
12. Щелкните на кнопке Get Shape (Взять форму) и снова выберите в качестве формы большую окружность. 13. Параметру Path (Путь) в свитке Path Parameters (Параметры пути) укажите значение равное 100. 14. Щелкните на кнопке Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) выберите последнюю форму — меньшую окружность. В результате вышеописанных операций должна получиться заготовка для создания болта (рис. 2.24).
Рис. 2.24. Модель заготовки болта, выполненная при помощи операций лофтинга
ПРИМЕЧАНИЕ Более подробно с созданием составных объектов Loft (Лофтинговые) можно ознакомиться в разд. «Моделирование лофт-объектов» гл. 6.
Продолжим знакомство с составными объектами и рассмотрим пример выполнения резьбы для созданной заготовки болта при помощи булевой операции вычитания. Для этого выполните следующее. 1. На вкладке Create (Создание) командной панели щелкните на кнопке Geometry (Геометрия) и выберите из раскрывающегося списка строку Dynamics Objects (Динамические объекты). 2. В свитке Object Type (Тип объекта) щелкните на кнопке Spring (Пружина). В результате на командной панели появятся свитки параметров пружины. 3. В окне проекции Тор (Сверху) создайте объект Spring (Пружина) с таким расчетом, чтобы радиус пружины был немного больше (или равен) радиусу большей окружности, использованной при построении лофт-объекта. 4. В свитке Spring Parameters (Параметры пружины) укажите количество витков и высоту в соответствии с предположительным расположением резьбы. Направление вращения пружины задается соответствующим направлению резьбы (против часовой стрелки). Значение параметра Segs/Turn (Количество сегментов на один оборот) в области Common Spring Parameters (Общие параметры
103
Создание объектов сцены
пружины) необходимо увеличить до 40-60, а переключатель Smoothing (Сглаживание) установить в положение Sides (Стороны). 5. В области Wire Shape (Каркас формы) установите переключатель в положение Rectangular Wire (Прямоугольный каркас) и задайте параметру Rotation (Вращение) значение 45. В результате этих операций получится четырехсторонняя пружина, повернутая одной гранью в сторону осевой линии и надетая на болт (рис. 2.25).
Рис. 2.25. Два объекта, подготовленные для выполнения булевой операции вычитания
6. В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создать) командной панели выберите строку Compound Objects (Составные объекты). 7. В свитке Object Type (Тип объекта) щелкните на кнопке Boolean (Булев), в результате чего в области свитков командной панели появятся свитки параметров, относящиеся к созданию булевых объектов. 8. В одном из окон проекций выделите заготовку болта и в свитке Pick Boolean (Указать булев) щелкните на кнопке Pick Operand В (Указать операнд Б). 9. Щелкните на пружине в окне проекции Perspective (Перспектива). В результате согласно установкам по умолчанию для булевой операции произойдет вычитание области пересечения из лофт-объекта, созданного ранее (рис. 2.26).
I I
1
ж
т ^ Ш
•
• •••
•• {
w—-:
Рис. 2.26. Болт, созданный при помощи составных объектов и булевых операций
104
Глава 2. Основные приемы работы
Создание источников света Источники света играют огромную роль в визуализации сцен 3ds Max. Правильное освещение может значительно улучшить сцену, создав соответствующую атмосферу. В большинстве сцен 3ds Max используется два типа освещения: естественное и искусственное. Естественное освещение применяется при создании экстерьеров на основе имитации солнечного или лунного света. Искусственное освещение предпочтительно для интерьеров, где светильники создают ощущение света от бытовых осветительных приборов. В программе 3ds Max 8 присутствует восемь типов стандартных источников света, включая два, поставляемых вместе с визуализатором mental ray, и восемь фотометрических. Рассмотрим шесть основных стандартных источников света. •
Omni (Всенаправленный) — точечный источник света, располагающийся в какойто точке трехмерного пространства и равномерно излучающий свет во всех направлениях. Его можно сравнить с лампочкой без абажура, подвешенной к потолку.
• Target Direct (Нацеленный направленный) — направленный источник света, лучи которого располагаются в пространстве параллельно друг другу. Такой источник света можно представить как плоскость, излучающую свет в виде цилиндра или параллелепипеда. Источник света имеет Target (Цель), на которую направлен пучок лучей. Примером его использования может служить имитация солнечного света, проходящего через окно в помещение. •
Free Direct (Свободный направленный) — в отличие от предыдущего источника света не имеет цели. Его положение в пространстве настраивается путем вращения.
• Target Spot (Направленный с целью) — аналогичный источнику света Target Direct (Нацеленный направленный) с той лишь разницей, что лучи распространяются от излучателя не параллельно, а исходя из одной точки, наподобие света от театральных софитов или автомобильных фар. Такой источник света можно представить в виде конуса или пирамиды с вершиной в точке излучения. Как и предыдущие источники света, может отбрасывать тени и служить проектором изображений на поверхность объектов сцены. •
Free Spot (Направленный без цели) — вариант источника света Target Spot (Направленный с целью), не имеющий цели. Как и у Free Direct (Свободный направленный), направление светового луча изменяется вращением источника света.
• Skylight (Свет неба) — источник света, имитирующий свет неба. В отличие от источников света, рассмотренных ранее, Skylight (Свет неба) накрывает сцену полусферой, все внутренние стороны которой излучают световые лучи. Таким образом достигается мягкое равномерное освещение сцены, характерное для природного освещения. Особенностью этого источника света является то, что для его просчетов необходимо включать Light Tracer (Трассировщик света) (задается на вкладке Advanced Lightning (Улучшенное освещение) окна Render Scene (Визуализация сцены)).
Создание объектов сцены
105
Фотометрические источники света (группа Photometric (Фотометрический) категории Lights (Источники света) вкладки Create (Создание) командной панели) аналогичны стандартным, но позволяют более точно с физической точки зрения воспроизводить освещенность, цвет, затухание и распределение света в пространстве. В отличие от стандартных фотометрические источники используют в качестве единиц освещенности канделы, люмены или люксы. В число фотометрических входят следующие восемь источников света. • Target Point (Точечный направленный) — аналогично стандартному всенаправленному источнику света излучает свет во всех направлениях с одинаковой силой. Для этого источника света можно задавать пространственное распределение светового потока. • Free Point (Точечный свободный) — всенаправленный точечный источник света. • Target Linear (Линейный направленный) — источник света, позволяющий имитировать линейные источники света наподобие ламп дневного света. Имеет цель для установки направления светового потока и положения в пространстве. • Free Linear (Линейный свободный) — аналогичен Target Linear (Линейный направленный), но не имеет цели. Положение в пространстве и направление светового луча изменяется вращением осветителя. • Target Area (Площадный направленный) — источник света, по форме напоминающий прямоугольник, с возможностью изменения параметров длины и ширины. Наличие цели позволяет более точно настраивать положение источника света и направление светового потока. Может использоваться для имитации освещения из окна или в качестве световой панели. • Free Area (Площадный свободный) — в отличие от Target Area (Площадный направленный) не имеет цели. Его положение в пространстве настраивается путем вращения. • IES Sun (Свет солнца) и IES Sky (Свет неба) — источники света способные имитировать физически правильный солнечный свет и свет неба с облаками и без. Могут использоваться как самостоятельно, так и в составе объектов дневного света. Пока в сцену не будет введен хотя бы один источник света, в сцене используется базовое освещение за счет встроенных источников света, не имеющих настроек. Эта особенность программы 3ds Max позволяет начинать моделирование объектов сцены без предварительной установки источников света, создание и настройку которых можно выполнить позднее. ПРИМЕЧАНИЕ Более подробно освещение и имитация объемного света описаны в гл. 5.
Рассмотрим создание и основные настройки источника света Target Spot (Направленный с целью).
106
Глава 2. Основные приемы работы
1. На вкладке Create (Создание) командной панели щелкните на кнопке Lights (Источники света) и выберите из раскрывающегося списка строку Standard (Стандартный). 2. Нажмите кнопку Target Spot (Направленный с целью) в свитке Object Type (Тип объекта). 3. В одном из окон проекций щелкните в месте предполагаемого размещения источника света и, не отпуская кнопку мыши, переместите указатель в сторону, где должна располагаться цель источника света (рис. 2.27).
_
Рис. 2.27. Источник света Target Spot (Направленный с целью)
4. В свитке General Parameters (Общие параметры) установите флажок On (Включить) в области Shadow (Тень), если объекты сцены должны отбрасывать тень. 5. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) при помощи параметра Multiplier (Яркость) укажите значение уровня интенсивности света. Здесь также можно настроить цвет освещения, а в области Decay (Затухание) установить способ и начало ослабления светового потока по мере удаления от источника света. 6. При необходимости укажите в областях Near Attenuation (Затухание вблизи) и Far Attenuation (Затухание вдали) начальную и конечную границы затухания света. 7. В свитке Spotlight Parameters (Параметры прожектора) при помощи параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) укажите степень размытия края светового пятна. 8. В свитке Shadow Parameters (Параметры тени) установите значение параметра Dens (Цвет и плотность) тени.
Создание камер В среде 3ds Max используются два вида камер. • Target (Направленная) — представляет собой камеру с точкой нацеливания (Target Point), на которую направлен объектив. Камеру и ее цель можно трансформировать независимо, но считается, что камера всегда направлена на цель.
Создание объектов сцены •
107
Free (Свободная) — аналогична направленной, но не имеет точки нацеливания и представляет собой единичный объект (саму камеру). Она определяет свою цель как находящуюся на произвольном расстоянии вдоль негативной1 локальной оси Z. Ее положение в пространстве настраивается путем вращения.
По конструкции направленные камеры стараются сохранять свой вектор (локальную ось Y камеры), выровненным с осью Z мировой 2 системы координат. Создание направленных камер в окне проекции Тор (Сверху) устанавливает камеру с правильным начальным выравниванием и обеспечивает наиболее предсказуемые результаты. Создание камеры в других окнах проекции, где легко устанавливать камеру, смотрящую вниз или вверх, может привести к непредсказуемым поворотам камеры вокруг своей оси. Свободная камера имеет локальную систему координат, выровненную с системой координат текущей плоскости конструкции. Линия взгляда свободной камеры направлена вдоль своей отрицательной оси Z, потому камера по умолчанию всегда направлена в плоскость конструкции. Например, свободная камера, созданная в окне проекции Тор (Сверху), направлена вниз, а свободная камера, созданная в окне проекции Left (Слева), — вправо. Область, просматриваемая камерой, устанавливается двумя независимыми параметрами камеры: FOV (Field of View) (Поле зрения) и Target Distance (Фокусное расстояние). Они описывают одно и то же свойство камеры, поэтому изменение параметра Field of View (Поле зрения) изменяет параметр Target Distance (Фокусное расстояние), и наоборот. Используйте Field of View (Поле зрения) для кадрирования вида камеры и для обеспечения кинематографических эффектов (например, наезда на объект). Камеры можно создать двумя способами: преобразованием окна перспективного вида в окно вида из камеры и построением камеры в окне проекции. В первом случае при активном окне проекции Perspective (Перспектива) выполните команду Views • Create Camera From View (Вид • Создать камеру из окна проекции) или нажмите Ctrl+C. Во втором случае для создания камеры в окне проекции сделайте следующее. 1. На вкладке Create (Создание) командной панели щелкните на кнопке Cameras (Камеры). 2. В свитке Object Type (Тип объекта) нажмите кнопку Target (Направленная). В результате на командной панели появится свиток Parameters (Параметры). 3. Щелкните в точке любого окна проекции для размещения камеры и переместите указатель в направлении предполагаемого размещения точки нацеливания (рис. 2.28). 1
Обычно координата X имеет позитивное направление вправо, Y — вверх, a Z — от наблюдателя. Негативная локальная ось — это ось с противоположным направлением вектора.
2
Мировая система координат — это универсальная система для всех объектов сцены, которая является постоянной вне зависимости от того, какое окно проекции активно.
108
Глава 2. Основные приемы работы
.
Рис. 2.28. Направленная камера 4. При необходимости настройте параметры камеры в свитке Parameters (Параметры). ПРИМЕЧАНИЕ Дополнительная информация о работе с камерами содержится в разд. «Интеграция трехмерной графики и фотографии» и «Объекты в фокусе камеры» гл. 8.
Модификаторы геометрии Для изменения параметров объектов сцены в среде 3ds Max служит панель Modify (Изменение). Она содержит список модификаторов, позволяет управлять стеком модификаторов и редактировать подобъекты. Каждый модификатор привносит в моделирование большое количество возможностей. Некоторые модификаторы сложны, другие — просты и служат узкой цели. Успешное использование любого модификатора зависит от знания его возможностей и правильного порядка применения, который виден в стеке модификаторов командной панели. Для достижения максимальной гибкости модификаторы могут применяться в сочетании с другими модификаторами. При модификации объекта часто следует определить выборки, оптимизировать результат, улучшить сглаживание и присвоить отображение. При описании в книге модификаторы организованы в соответствии с тем, каким способом они воздействуют на объект. Это важно, поскольку, например, некоторые модификаторы преобразовывают сплайны и фрагменты в каркасы, когда этого не требуется. Модификаторы делятся на WORLD-SPACE MODIFIERS (Модификаторы глобального пространства) и OBJECT-SPACE MODIFIERS (Модификаторы пространства объекта). Модификаторы первой группы в отличие от второй при обработке объектов всегда используют пространственную привязку к глобальной системе координат, о чем свидетельствует аббревиатура WMS (World Space Modifiers), включенная в их название. Все модификаторы программы 3ds Max 8 сгруппированы по назначению. Существует 16 групп, о которых подробно рассказывалось в предыдущей главе.
Модификаторы геометрии
109
Многие модификаторы используют Gizmo (Габаритный контейнер) для управления воздействием на объект. Габаритный контейнер появляется при переходе в режим редактирования подобъектов модификатора и отображается в виде специального значка, охватывающего поверхность объекта. Применение габаритного контейнера позволяет дополнительно контролировать модифицируемый объект. Например, смещение габаритного контейнера модификатора UVW Mapping (UVWпроекция) вызовет смещение текстурных координат объекта, что полезно при наложении текстурных карт (см. разд. «Использование текстурных карт» гл. 3). Очень большое количество встроенных и подключаемых модификаторов не позволяет рассмотреть их всех в рамках данной книги, поэтому остановимся на описании принципов работы наиболее используемых.
Lathe (Вращение вокруг оси) Модификатор Lathe (Вращение вокруг оси) является одним из наиболее используемых. Он применяется для создания тел методом поворота вокруг своей оси половины профиля сечения объекта. Примерами такого рода объектов могут служить большая часть традиционной посуды, кувшины и вазы, песочные часы, автомобильные фары, гантели и т. д. Наиболее важными настройками модификатора Lathe (Вращение вокруг оси) являются задание оси вращения и установка поверхности кругового вращения. По умолчанию расположение оси начинается с центра создания формы и выравнивается с локальной осью Y формы. Центр создания — расположение по умолчанию точки вращения после создания формы. Изменить положение сплайна по отношению к точке вращения формы можно двумя способами: • используя редактирование формы на уровне подобъектов Spline (Сплайн) для изменения положения этих сплайнов относительно точки вращения; • настроив точку опоры (Pivot Point) при помощи свитка Adjust Pivot (Настройка опоры), находящегося на вкладке Hierarchy (Иерархия) командной панели. Рассмотрим пример построения вазы методом вращения профиля. 1. В окне проекции Front (Спереди) постройте сплайн, который будет профилем для будущего объекта (рис. 2.29).
Рис. 2.29. Сплайновый профиль будущей вазы
110
Глава 2. Основные приемы работы
СОВЕТ Во время построения сплайнового профиля используйте начало координат для расположения оси вращения и привязки к сетке для упрощения процесса моделирования. Сплайн должен представлять собой одну непрерывную кривую, начальная и конечная точки которой лежат на оси вращения.
2. На вкладке Modify (Изменение) командной панели выберите из раскрывающегося списка модификаторов строку Lathe (Вращение вокруг оси). Будет создано тело вращения с установками по умолчанию, и появится свиток Parameters (Параметры) настроек модификатора вращения (рис. 2.30).
•
.
„„,
.'
I
Рис. 2.30. Свиток Parameters (Параметры) модификатора Lathe (Вращение вокруг оси)
3. Скорее всего, объект, полученный после применения модификатора, будет мало похож на ожидаемый. Это связано с тем, что по умолчанию геометрический центр кривой является осью вращения объекта, а мы строили симметричную половину профиля. Следовательно, необходимо переместить ось вращения в крайнее левое положение сплайна, для чего щелкните на кнопке Min (Минимум), находящейся в области Align (Выравнивание) свитка Parameters (Параметры). В результате объект должен принять форму, показанную на рис. 2.31. 4. Очень часто в области оси вращения возникают артефакты, которые портят внешний вид модели (см. рис. 2.31). Чтобы избавиться от этого недостатка, установите флажок Weld Core (Слияние на оси). 5. При помощи параметра Segments (Количество сегментов) укажите количество сегментов, которое будет размещено по периметру формы вращения, чтобы получить сглаженную поверхность.
Модификаторы геометрии
111
6. При необходимости установите флажок Flip Normals (Обратить нормали). 7. Укажите тип выходной поверхности, установив соответствующий флажок в области Output (Результат): Patch (Патч-поверхность), Mesh (Поверхность) или NURBS (NURBS-поверхность).
Рис. 2 . 3 1 . Объект после применения модификатора Lathe (Вращение вокруг оси) и выполнения некоторых некотопых настооек выполнения настроек
При создании объекта в виде сектора тела вращения при помощи параметра Degrees (Сектор) задайте величину угла поворота, а если тело вращения имеет стенки с некоторой толщиной, то в области Capping (Настройки замкнутой поверхности) установите флажки Cap Start (Замкнутая поверхность в начале) и Cap End (Замкнутая поверхность в конце) (рис. 2.32).
Рис. 2.32. Кувшин, выполненный с сектором вращения, равным 360' (а), и его копия с сектором вращения в 270° (б)
Extrude (Выдавливание) Модификатор Extrude (Выдавливание) применяется для построения объектов с постоянным сечением по высоте. Использование модификатора выдавливания похоже на работу рассмотренного ранее составного объекта Loft (Лофтинговые), когда формой пути служит прямая линия, а поперечное сечение состоит из одного сплайна кривой. Примерами использования модификатора Extrude (Выдавливание) могут служить шестеренки и звездочки, текст, машиностроительные детали и заготовки для стен домов.
112
Глава 2. Основные приемы работы
Как и в случае с телами вращения, для построения выдавливания необходимо создать объект формы — профиль сечения, по которому будет строиться выдавливание. Этим профилем может быть как разомкнутая, так и замкнутая кривая, состоящая из одного или более сплайнов. Как и в случае с телами вращения, для построения профиля могут использоваться NURBS-кривые.
ПРИМЕЧАНИЕ Аналогичным модификатору Extrude (Выдавливание) по способу построения объектов, но с большими возможностями редактирования профиля выдавливания является модификатор Bevel (Выдавливание со скосом). Его следует использовать при создании объектов с постоянным сечением и фаской на краях (например, текста). Рассмотрим применение модификатора Extrude (Выдавливание) на примере создания шестеренки часового механизма. 1. В окне проекции Тор (Сверху) постройте сплайн Star (Звезда) и несколько окружностей внутри. 2. Щелкните на объекте Star (Звезда) правой кнопкой мыши, в результате чего появится контекстное меню. Выполните команду Convert To • Convert to Editable Spline (Преобразовать • Преобразовать в редактируемый сплайн). 3. В свитке Geometry (Геометрия) настроек объекта Star (Звезда) нажмите кнопку Attach (Присоединить) и в окне проекции нажмите Тор (Сверху). Щелкните последовательно на всех созданных окружностях для присоединения их к объекту Star (Звезда). В результате получится объект формы профиля будущей шестеренки, состоящий из нескольких сплайнов (рис. 2.33).
Рис. 2.33. Форма поперечного сечения будущей шестеренки 4. На вкладке Modify (Изменение) командной панели выберите из раскрывающегося списка модификаторов Extrude (Выдавливание). Будет создан объект выдавливания с установками по умолчанию, а на командной панели появится свиток Parameters (Параметры) настроек модификатора выдавливания (рис. 2.34). 5. При помощи параметра Amount (Величина) укажите высоту объекта выдавливания (рис. 2.35).
Модификаторы геометрии г -
Parameters
1
Amour* р о д i t
\
113
Segments: J T -Capping
P CapStart
j,
W Cap End *
Morph f
f
Grri
p 'E ,
Patch
i* Mesh Г
NURBS
!
Г" Generate Mapniig Corads, F
Generate Material IDs Г UseShapelDs P Smooth
Рис. 2.34. Свиток Parameters (Параметры) модификатора Extrude (Выдавливание)
Рис. 2.35. Результат применения модификатора выдавливания
6. Используя параметр Segments (Количество сегментов), увеличьте количество сегментов по высоте, если собираетесь редактировать построенный объект с помощью модификаторов поверхности или на уровне подобъектов, преобразовав тело выдавливания в Editable Mesh (Редактируемая поверхность). 7. При необходимости укажите, должен ли объект выдавливания иметь закрытые верхнее и нижнее основание, установив флажки Cap Start (Замкнутая поверхность в начале) и Cap End (Замкнутая поверхность в конце). 8. Укажите тип выходной поверхности, установив соответствующий флажок в области Output (Результат).
Bend (Изгиб) Модификатор Bend (Изгиб) применяется для создания деформации изгиба трехмерных объектов. Для корректного применения модификатора объект должен иметь достаточное количество разбиений в направлении оси изгиба. Рассмотрим простой пример применения модификатора Bend (Изгиб) к объекту Cylinder (Цилиндр).
114
Глава 2. Основные приемы работы
1. В окне проекции Тор (Сверху) постройте цилиндр произвольного размера. 2. Параметру Height Segments (Количество сегментов по высоте) задайте значение от 10 до 20 в зависимости от высоты цилиндра. 3. Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Bend (Изгиб). Раскроется свиток Parameters (Параметры) настроек модификатора изгиба (рис. 2.36). Радаею; , ~.~~-w.~...
Bend.
Angle. f00
-;; - .,
Dkeeltajoo BeraJAxis r
X
" " <~ V
г
*
Lmis Г
trait Elfeo
Upper Limit] 0 0
~
;
Lowei Limtf fiTi i
Рис. 2.36. Свиток Parameters (Параметры) модификатора Bend (Изгиб)
4. При помощи параметра Angle (Угол) задайте значение угла изгиба в градусах. 5. При необходимости измените направление изгиба, задав угол поворота в поле Direction (Направление). 6. Для управления ориентацией деформации изгиба установите переключатель Bend Axis (Ось изгиба) в соответствующее положение: X, Y или Z. 7. В области Limits (Пределы) задайте при необходимости ограничения на действие модификатора в пределах выбранной оси деформации. 8. Для получения дополнительного контроля над деформацией изгиба щелкните на плюсике возле названия модификатора в стеке. В результате появится доступ к габаритному контейнеру Гизмо (строка Gizmo (Габаритный контейнер)) модификатора и его центру (Center (Центр)). На рис. 2.37 показаны два варианта применения модификатора Bend (Изгиб).
Рис. 2.37. Цилиндр после применения модификатора Bend (Изгиб) со значением угла изгиба 90° (а) и его копия с ограничением области воздействия и центром модификатора, передвинутым вверх (б)
Модификаторы геометрии
115
Twist (Скручивание) Модификатор Twist (Скручивание) применяется для создания деформации скручивания. Чаще всего он используется при конструировании витых спиралевидных моделей: веревок, сверл, резьбы, кованых решеток, ювелирных украшений и т. п. (рис. 2.38). Для корректного применения модификатора объект должен иметь достаточное количество разбиений в направлении оси изгиба.
Рис. 2.38. Объекты, созданные при помощи модификатора Twist (Скручивание)
Рассмотрим простой пример применения модификатора Twist (Скручивание). 1. В окне проекции Тор (Сверху) постройте объект Box (Параллелепипед), длина и ширина которого равны 5 мм, а высота — 150 мм. В поле Height Segs (Количество сегментов по высоте) укажите значение 100. 2. Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Twist (Скручивание). Появится свиток Parameters (Параметры) настроек модификатора скручивания (рис. 2.39).
,i
Paratneton 1 \
Angte:|b 0 L,-.
-
* г r-Umte-r
i
-
-
,Г U ..-••>
Si M
Рис. 2.39. Свиток Parameters (Параметры) настроек модификатора Twist (Скручивание)
3. Укажите при помощи параметра Angle (Угол) величину угла скручивания в градусах. 4. При необходимости установите координатную ось, отличную от Z, которая принята по умолчанию.
116
Глава 2. Основные приемы работы
5. В области Limits (Пределы) задайте при необходимости ограничения на действие модификатора в пределах выбранной оси деформации. 6. Для получения дополнительного контроля над деформацией скручивания щелкните на плюсике рядом с названием модификатора в стеке. В результате появится доступ к габаритному контейнеру Гизмо (строка Gizmo (Габаритный контейнер)) модификатора и его центру (Center (Центр)). На рис. 2.40, а показан параллелепипед после применения модификатора Twist (Скручивание) с установленными ограничениями области действия модификатора и его копия (рис. 2.40, б), к которой дополнительно был применен модификатор Bend (Изгиб) с величиной угла изгиба 360°.
Рис. 2.40. Параллелепипед после применения модификатора Twist (Скручивание) (а) и его копия, к которой дополнительно применен модификатор Bend (Изгиб) (б)
Edit Mesh (Редактирование поверхности) Модификатор Edit Mesh (Редактирование поверхности) является одним из ключевых инструментов редактирования геометрии, без которого трудно представить моделирование объектов сложной формы. Кроме непосредственного редактирования его можно применять для выделения сеток или их подобъектов с целью применения различных модификаторов. Рассмотрим пример создания модели яблока при помощи модификатора Edit Mesh (Редактирование поверхности). 1. В окне проекции Тор (Сверху) постройте объект Sphere (Сфера) с радиусом, равным 45 мм. 2. Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Edit Mesh (Редактирование поверхности). 3. В свитке Selection (Выделение) перейдите в режим редактирования вершин, щелкнув на кнопке Vertex (Вершина). 4. В окне проекции Perspective (Перспектива) выделите верхнюю вершину сферы. 5. Разверните свиток Soft Selection (Плавное выделение) и укажите значения параметров плавного выделения, как показано на рис. 2.41 (при этом дополнительно должны быть выделены цветом три ряда вокруг верхней точки сферы).
Модификаторы геометрии -
Soft Selection
р
Use Soft Selection
Г" £фе Distance: [ ffc[70 0
Bubble: R f i
70.0
0.O
j
;!
7СШ j
Рис. 2 . 4 1 . Свиток Soft Selection (Плавное выделение) с параметрами выделения вершин сферы
6. Щелкните на кнопке Select and Move (Выделить и переместить), расположенной на панели инструментов, и в окне проекции Front (Спереди) переместите выделенную вершину немного вниз (рис. 2.42), сформировав углубление в месте крепления черенка яблока.
Рис. 2.42. Изменение положения близлежащих вершин сферы в результате перемещения выделенной вершины
7. В окне проекции Front (Спереди) выделите две вершины, находящиеся в третьем ряду снизу и в середине объекта (одна на лицевой стороне, другая на противоположной). Затем, удерживая нажатой клавишу Ctrl, добавьте две такие же вершины в окне проекции Left (Слева). Таким образом, должны быть выделены четыре вершины, расположенные в третьем ряду снизу и равноудаленные друг от друга. 8. Не меняя настройки плавного выделения, переместите выделенные вершины немного вниз, сформировав нижнюю часть яблока (рис. 2.43). Рассмотренный пример иллюстрирует лишь малую часть возможностей, которые предоставляет модификатор Edit Mesh (Редактирование поверхности). Выполняя упражнения, описанные во второй и третьей частях книги, вы будете постоянно сталкиваться с редактированием сеток объектов, начиная с самых простых и заканчивая моделированием головы человека.
118
Глава 2. Основные приемы работы
Рис. 2.43. Четыре вершины, выделенные в нижней части яблока, при перемещении вниз формируют его основание
ПРИМЕЧАНИЕ После применения модификатора Edit Mesh (Редактирование поверхности) объекты наделяются свойствами, идентичными объектам Editable Mesh (Редактируемая поверхность), о которых рассказывается в гл. 6.
Noise (Шум) Яблоко, созданное с помощью модификатора Edit Mesh (Редактирование поверхности), получилось почти идеальной формы, однако в природе не существует идеальных форм. Модификатор Noise (Шум) помогает придать геометрии моделей неравномерность, присущую объектам реального мира. Применим модификатор Noise (Шум) к модели яблока и рассмотрим его основные настройки. 1. Выделите модель яблока, созданную ранее при помощи модификатора Edit Mesh (Редактирование поверхности). 2. Из списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Noise (Шум). Раскроется свиток Parameters (Параметры) настроек модификатора (рис. 2.44). 3. Укажите в полях X, Y и Z области Strength (Сила воздействия) значения смещения в направлении соответствующих осей глобальных координат. 4. В области Noise (Шум) установите значение счетчика Scale (Масштабирование) для определения величины возмущения поверхности объекта. Большие значения ведут к более гладким возмущениям, малые — к более частым. Параметр Seed (Случайная выборка) устанавливает положение генератора случайных величин. 5. При необходимости установите флажок Fractal (Фрактальный) для включения режима генерации фрактальных возмущений. Значения параметров Roughness (Шероховатость) и Iterations (Количество итераций) позволяют управлять степенью шероховатости поверхности и задают количество вычислительных циклов фрактального алгоритма.
Модификаторы геометрии
Fiactal ftoughnest: j 0 0 Iterations: П
119
tj !
nWmation. Г" Animaie Noise j FraquenojtfoTT" Phase Г
Рис. 2.44. Свиток Parameters (Параметры) модификатора Noise (Шум)
После настройки основных параметров модификатора Noise (Шум) модель яблока стала выглядеть реалистичнее, а добавление черенка, выполненного при помощи примитива Cylinder (Цилиндр) с примененными к нему модификаторами Bend (Изгиб) и Taper (Заострение), довершило картину (рис. 2.45).
Рис. 2.45. Модель яблока с габаритным контейнером Гизмо после применения модификатора Noise (Шум)
Таким образом, на примере моделирования яблока вы могли убедиться в том, что строить модели некоторых объектов гораздо проще и быстрее с использованием параметрических объектов и модификаторов формы. Кроме того, такие объекты продолжают сохранять параметрические свойства, их легко редактировать при помощи изменения параметров самих объектов и параметров, присвоенных им модификаторов.
Глава 3
Материалы и текстуры • Окно Material Editor (Редактор материалов) • Материал типа Standard (Стандартный) • Создание сложных материалов • Использование текстурных карт
•
Окно Material Editor (Редактор материалов)
121
Материалы, используемые в 3ds Max, позволяют имитировать внешний вид предметов реального мира, а именно такие их свойства, как цвет, сглаженность, мягкость, прозрачность, свечение и др. Эта глава посвящена описанию основных способов работы с материалами и возможностей окна Material Editor (Редактор материалов).
Окно Material Editor (Редактор материалов) Material Editor (Редактор материалов) — это окно диалога, позволяющее создавать, редактировать и присваивать материалы объектам сцены. Редактор материалов является расширенной средой, в которой все типы процедурных и текстурных карт и материалов выступают подключаемыми компонентами. Окно Material Editor (Редактор материалов) можно вызвать, выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов), щелкнув на кнопке Material Editor (Редактор материалов) главной панели инструментов или нажав клавишу М. Окно Material Editor (Редактор материалов) состоит из ячеек образцов материалов, кнопок инструментов управления и области свитков (рис. 3.1).
•
Рис. 3 . 1 . Окно диалога Material Editor (Редактор материалов)
122
Глава 3. Материалы и текстуры
Ячейки образцов материалов По умолчанию при работе над новой сценой Material Editor (Редактор материалов) показывает шесть ячеек с образцами материалов. Щелчок на ячейке активизирует ее и изменяет цвет ее границы на белый. Если ячейка образца содержит материал, который используется в сцене, то в ее углах помещаются белые треугольники. Позиция в иерархии материалов при переключении между окнами образцов запоминается. В Material Editor (Редактор материалов) доступны 24 ячейки материалов. По умолчанию отображается только шесть из них. Просмотреть остальные ячейки можно, используя вертикальную и горизонтальную полосы прокрутки либо изменив в настройках окна количество отображаемых ячеек. Для этого нажмите кнопку Options (Параметры) (в правой части окна Material Editor (Редактор материалов)) или выполните команду Options • Options (Параметры • Параметры) и в появившемся окне Material Editor Options (Параметры редактора материалов) установите переключатель Slots (Слоты) в одно из положений: 3 х 2, 5 х 3 или 6 x 4 . В зависимости от своего назначения в сцене материалы 3ds Max имеют три «температуры»: «горячую», «теплую» и «холодную». Если материал используется в сцене, он считается «горячим», если является копией материала, используемого в сцене, — «теплым», а если не используется — «холодным» (рис. 3.2). «Горячие» материалы отмечены в окнах образцов материалов четырьмя белыми треугольниками. «Теплым» материал становится при его копировании с помощью кнопки Make Material Copy (Сделать копию материала) или перетаскивании образца материала из одной ячейки в другую. Скопированный («теплый») материал имеет то же имя, что и оригинал, но не связан напрямую со сценой. Его редактирование не влияет на текущее состояние сцены. «Холодный» материал отличается от «теплого» только тем, что не разделяет имя с уже существующим в текущей сцене и не присвоен ни одному объекту сцены. СОВЕТ При редактировании «горячего» (назначенного) материала рекомендуется использовать его «теплую» версию. Для этого делается копия образца материала, производятся все изменения и затем она назначается соответствующему объекту в сцене как новый «горячий» материал. После выбора ячейки с образцом материала можно присвоить его объекту, выделенному в окне проекции. Для этого щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам), расположенной ниже ячеек с образцами материалов, или выполните команду Material • Assign to Selection (Материал • Назначить выделенным объектам). Существует более простой и наиболее часто применяемый способ: перетащить материал из ячейки образца на объект, расположенный в окне проекции. Как только материал присваивается объекту сцены, он автоматически попадает в библиотеку материалов, которая сохраняется вместе с файлом сцены. Находясь в этой библиотеке, он может не отображаться в ячейках с образцами материала.
Окно Material Editor (Редактор материалов)
_.:!_JL
123
il
Рис. 3.2. Ячейки образцов материалов: «холодного» (а), «теплого» (б) и «горячего» (в)
СОВЕТ При необходимости вы можете просмотреть все материалы, включенные в сцену, установив в окне Material/Map Browser (Окно выбора материалов и карт) переключатель Browse From (Выбирать из) в положение Scene (Сцена). При желании вы можете создавать и сохранять для загрузки собственные библиотеки материалов.
Интерфейс окна Material Editor (Редактор материалов) Окно Material Editor (Редактор материалов) содержит собственную панель инструментов, расположенную снизу и справа от ячеек с материалами: •
ф Q i j Sample Type (Тип образца) — определяет форму отображаемого в ячейке образца (сфера, цилиндр, параллелепипед);
•
ф Backlight (Подсветка сзади) (L) — включает или выключает заднюю подсветку образца материала в выбранной ячейке;
•
35£ Background (Фон) (В) — изменяет фон ячейки на шахматное поле или подгружаемую текстуру, например для лучшего отображения прозрачных материалов;
•
Ш Я Ш Ш Sample UV Tiling (Плитки образцов в плоскости UV) — устанавливает количество повторений текстурной карты на образце материала ( 1 x 1 , 2x2,3x3,4x4);
•
Л j Video Color Check (Контроль цветности) — включает режим контроля соответствия цветов стандартам PAL и NTS С для текущего материала;
•
^ Make Preview (Создать эскиз) (Р), ^ Play Preview (Просмотреть эскиз), ^ Save Preview (Сохранить эскиз) — позволяет создать, просмотреть и сохранить эскизы анимации материалов до выполнения визуализации сцены;
•
Е^> Options (Параметры) (0) — открывает окно с настройками параметров Material Editor (Редактор материалов);
•
i\ Select by Material (Выделить по материалу) — выделяет все объекты сцены, использующие текущий материал, для чего открывается окно Select Objects (Выбор объектов) с выделенными материалами;
•
j;;f| Material/Map Navigator (Путеводитель по материалам и картам) — вызывает окно диалога Material/Map Navigator (Путеводитель по материалам и картам), которое отображает древовидную структуру материалов и текстур текущего образца;
124
Глава 3. Материалы и текстуры
•
Чд» Get Material (Установить материал) (G) — открывает окно диалога Material/ Map Browser (Окно выбора материалов и карт) для выбора готового материала или создания нового;
•
5£ Put Material in Scene (Поместить материал в сцену) — обновляет материал объекта сцены, после того как были сделаны изменения в его копии («теплом» материале);
•
% Assign Material to Selection (Назначить материал выделенным объектам) — присваивает текущий материал выделенным объектам сцены;
•
X Reset Map/Mtl to Default Settings (Установить исходный материал/карту текстуры) — удаляет из активной ячейки образца все выполненные изменения, возвращая ее к установкам по умолчанию;
•
ф Make Material Copy (Копировать материал) — создает копию текущего «горячего» материала и помещает ее в ту же ячейку образца, сохраняя имя и свойства оригинала;
•
Д Make Unique (Сделать уникальным) — превращает образец материала в новый, независимый материал;
•
®щ Put to Library (Поместить в библиотеку) — помещает активный материал в текущую библиотеку материалов; чтобы зафиксировать изменения, библиотеку после этого следует сохранить;
•
Oj_ Material Effects Channel (Канал эффектов материала) — устанавливает один из 15 идентификаторов (ID) для последующего применения специальных эффектов;
•
|@ Show Map in Viewport (Отобразить карту в окне проекций) — отображает двумерные карты текстур на поверхности объектов в окнах проекций;
•
%F Show End Result (Показать конечный результат) — показывает в ячейке образца все уровни комбинированного материала (если режим выключен, отображается только текущий уровень);
•
4&| Go to Parent (Перейти к составному материалу) — выполняет переход от компонентного уровня на более высокий уровень редактирования составного материала;
•
$$ Go Forward to Sibling (Перейти к компоненту) — выполняет переход к правке следующего материала или текстуры, входящей в многокомпонентный материал;
•
*^ Pick Material from Object (Показать материал объекта) — позволяет взять образец материала с объекта сцены и загрузить в текущую ячейку;
• |Мар tt36 ^j Material drop-down list (Раскрывающийся список имен материалов) — позволяет переименовать текущий материал или текстурную карту; •
Bitmap | Туре (Тип) — кнопка выбора типа редактируемого материала; щелчок на ней вызывает окно диалога Material/Map Browser (Окно выбора материалов и карт).
Ниже окна с именем и кнопки выбора типа материала находится область свитков текущего материала, состав которой изменяется в зависимости от выбранного типа.
Окно Material Editor (Редактор материалов)
125
Использование Material/Map Browser (Окно выбора материалов и карт) Окно диалога Material/Map Browser (Окно выбора материалов и карт) (рис. 3.3), предназначенное для просмотра и выбора материалов и текстурных карт, открывается в трех случаях: • при выборе нового материала или текстурной карты; • при использовании кнопки Туре (Тип) для замены текущего подматериала или карты; • при нажатии кнопки Get Material (Установить материал). В Material/Map Browser (Окно выбора материалов и карт) хранятся материалы в наборах, именуемых библиотеками. Как уже говорилось выше, библиотеки могут храниться в составе файла сцены или в отдельном файле с расширением МАТ. В окне диалога Material/Map Browser (Окно выбора материалов и карт) материалы помечены значком в виде синей сферы, а текстурные карты — зеленым параллелограммом. В данном окне можно выбрать материал, который хранится в библиотеке материалов, присутствует в сцене, является текущим в Material Editor (Редактор материалов), или создать собственный материал. При установке переключателя Browse From (Выбирать из) в одно из положений происходит следующее: •
Mtl Library (Библиотека материалов) — показывает текущую библиотеку материалов и текстур; при установке переключателя в данное положение в левой части окна появляется область кнопок File (Файл) для работы с файлами библиотек, позволяющая загружать, объединять и сохранять библиотеки материалов;
•
Mtl Editor (Редактор материалов) — позволяет просматривать материалы и текстуры, используемые в настоящий момент в Material Editor (Редактор материалов); при этом отображаются все 24 образца материала;
• Active Slot (Активная ячейка) — открывает для просмотра материала из активной ячейки образца; • Selected (Выделенные объекты) — позволяет просматривать только те материалы и текстуры, которые принадлежат выделенным объектам сцены; • Scene (Сцена) — служит для просмотра материалов и карт текстур текущей сцены независимо от того, присутствуют они в Material Editor (Редактор материалов); •
New (Создать) — открывает список всех доступных типов материалов и карт текстур, которые можно использовать для создания новых образцов.
Выбрав один или несколько вариантов в области Show (Показывать) окна Material/Map Browser (Окно выбора материалов и карт), можно ограничить отображение материалов и текстурных карт: •
Materials (Материалы) — включает отображение в окне просмотра материалов;
•
Maps (Карты текстур) — задает отображение в окне просмотра текстурных карт;
126
Глава 3. Материалы и текстуры
К) Material/Map Browser - TTM_MetaU.mat
Рис. 3.3. Окно Material/Map Browser (Окно выбора материалов и карт)
• Incompatible (Несовместимые) — включает отображение несовместимых с текущим визуализатором материалов и текстурных карт, в частности, материалы визуализатора mental ray не совместимы со стандартным визуализатором и при установке флажка Incompatible (Несовместимые) отображаются серым цветом; • Root Only (Только результат) — задает отображение только верхнего уровня материалов в окне просмотра; • By Object (По объектам) — включает режим сортировки списка материалов, при котором их названия будут упорядочены по алфавиту. Кнопки, расположенные в верхней части окна Material/Map Browser (Окно выбора материалов и карт), позволяют изменять режим отображения материалов и выполнять некоторые стандартные операции.
Окно Material/Map Navigator (Путеводитель по материалам и картам) Каждый материал сцены может содержать любое количество подматериалов, которыми могут быть другие материалы или текстурные карты. Подматериалы можно редактировать при помощи свитков, в которых они содержатся, но более простым и визуально понятным способом является использование окна Material/Map Navigator (Путеводитель по материалам и картам) (рис. 3.4), которое можно открыть при помощи одноименной кнопки на панели инструментов окна Material Editor (Редактор материалов).
127
Материал типа Standard (Стандартный) I Material/Map Navigator jOtd Bricks tvj> (Blend i
•иияатяиииявяи ii ЩШк Material 1 Old Bricks (Standard)
I
! • в Щ Щ Diffuse Color: [ВпскЗ ipg) i- Д В ш В и т р
(Brick3.jpg)
it B B Material 2: Ivy ( Standard ) \-Ш В В Diffuse Color: (Ampelopsis pg)
i
Bump: (Ampelopsis_BMP.jpg) Mask: (Ampelopsis_MSK.jpg)
•
:
Рис. З.4. ОКНО Material/Map Navigator (Путеводитель по материалам и картам)
Окно Material/Map Navigator (Путеводитель по материалам и картам) является составной частью Material Editor (Редактор материалов), который предоставляет возможности для изучения дерева материалов. Как и в окне Material/Map Browser (Окно выбора материалов и карт), голубые кружки символизируют материалы, а зеленые параллелограммы — текстурные карты. Щелчок на каждом символе настроит Material Editor (Редактор материалов) на заданный материал или карту на данном уровне. Это облегчает навигацию внутри или между сложными материалами. В окне Material/Map Navigator (Путеводитель по материалам и картам) так же, как и в Material/Map Browser (Окно выбора материалов и карт), кнопки, расположенные в верхней части окна, позволяют изменять режим отображения материалов.
Материал типа Standard (Стандартный) Один из базовых материалов 3ds Max, наиболее часто применяемый как самостоятельно, так и для создания более сложных составных материалов, — материал типа Standard (Стандартный). Для стандартного материала указываются характеристики цвета, отражения, прозрачности и собственного свечения. Возможность использования различных вариантов тонированной окраски позволяет контролировать вид текущего материала. Настройки стандартного материала содержатся в следующих свитках: • Shader Basic Parameters (Основные параметры затенения);
128
Глава 3. Материалы и текстуры
Basic Parameters (Основные параметры), основанные на типе применяемого метода тонированной раскраски; Extended Parameters (Дополнительные параметры); SuperSampling (Сверхразрешение); Maps (Карты текстур); Dynamics Properties (Динамические свойства); mental ray Connection (Группа mental ray). Используя эти параметры, можно создавать уникальные материалы.
Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) Свитки Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) (рис. 3.5) позволяют настраивать параметры тонированной раскраски, трех главных компонентов цвета, а также другие характеристики материала. Создание нового материала начинается с выбора типа тонированной раскраски в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения). Параметр, определяющий тонированную раскраску, является основным в материале Standard (Стандартный). Он управляет выбором метода (алгоритмом) визуализации для оценки и затенения базовых цветов и сияния.
Г
Face Map Г
Faceted
j
Blinn Basic Parameters j-SeMta AmbieW: |
II
i Diffuse:]
- Specular: I
I Г Cofotfo
:J
Opacity-pOO" i ]
I
r Specular HighigNs-
Specular Level: [ F ~ t J
j
Glosstfiess: [TO t j
Spflen: fcTf ;|
f _+
Extended Parameters
.._
f » ft
', +
Dynamics Properties mental ray Connection
Рис. 3.5. Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) стандартного материала
Материал типа Standard (Стандартный)
129
Существуют три теневые характеристики материала Standard (Стандартный). • Ambient (Цвет подсветки) — цвет объекта, освещенного рассеянным светом. Хотя значение подсветки представляет затененную часть материала, оно существенно влияет на поверхность, так как обычно в заданный момент времени под воздействием прямого света находится только небольшая часть объекта. • Diffuse (Цвет рассеивания) — цвет объекта, освещенного прямым светом. Оказывает наибольшее влияние на вид материала и его проще всего определять. Это цвет, на который ссылаются при описании материала в реальной жизни. • Specular (Цвет зеркального отражения) — цвет пятна отражения. Цвет зеркального отражения смешивается с цветом подсветки. Такая смесь варьируется от материала к материалу, но обычно окрашена в цвет рассеивания (или цвет блика) с небольшой насыщенностью или бесцветна (белая). Влияние, которое цвет зеркального отражения оказывает на материал, прямо связано со значением параметра Specular Level (Уровень блеска). Слева от цветов расположены кнопки блокирования, замыкающие цвета так, чтобы они оставались одинаковыми. После этого настройка одного цвета влияет на цвет другого. СОВЕТ Несмотря на то что Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) блокированы по умолчанию, не стоит оставлять их одинаковыми, если вы не стремитесь получить материал яркого пластика. Сделав Ambient (Цвет подсветки) темнее, чем Diffuse (Цвет рассеивания), вы усилите затенение и создадите более естественную визуализацию.
Настройки характеристик зеркального блика материала представлены в области Specular Highlights (Зеркальные блики). Данные значения объединяются для создания общего характера яркости с эффектом, графически показанным кривой Highlight (Подсветка). Рассмотрим параметры данной области. • Specular Level (Уровень блеска) — яркость блика. • Glossiness (Глянец) — размер пятна блика на поверхности материала. Большие значения создают вид более гладкого и блестящего материала, в то время как их уменьшение имитирует матовые поверхности. • Soften (Размытие) — размытие пятна блика на поверхности материала. Если материалы обладают слабым матовым блеском, стоит использовать более высокие значения размытия, и наоборот. Кроме рассмотренных выше существуют другие параметры, позволяющие дополнительно настраивать материал. • Wire (Каркас) — визуализация объекта, которому назначен материал, производится в режиме каркасного отображения (рис. 3.6, а). Поверхность каркаса является гладкой вдоль грани, чье ребро он очерчивает. Применяется для имитации проволочных моделей, плетеных корзин и т. д.
130
Глава 3. Материалы и текстуры
• Face Map (Карта грани) — присваивает материал с применением текстурных карт к каждой грани объекта (рис. 3.6, б). • 2-Sided (Двусторонний) — заставляет визуализатор игнорировать нормали граней поверхности и визуализировать обе стороны объекта. Данный параметр предназначен для геометрий и поверхностей, которые просматриваются насквозь, например стекло или проволочный каркас (рис. 3.6, в). • Faceted (Огранка) — выключает сглаживание ребер и придает объекту граненый вид (рис. 3.6, г).
Рис. 3.6. Визуализация материала в режиме: Wire (Каркас) (a), Face Map (Карта грани) (б), 2-Sided (Двусторонний) (в) и Faceted (Огранка) (г)
Параметры Self-Illumination (Собственное свечение) и Opacity (Непрозрачность) находятся в свитке Basic Parameters (Основные параметры). Параметр в области Self-Illumination (Собственное свечение) помогает создать иллюзию самостоятельного свечения посредством устранения компонента затенения материала, определяемого параметром Ambient (Цвет подсветки). Увеличение значения параметра Self-Illumination (Собственное свечение) уменьшает эффект рассеивания до тех пор, пока затенение не будет больше появляться. Если материал полностью самостоятельно светится (значение параметра Self-Illumination (Собственное свечение) равно 100), то на поверхности нет тени и везде, кроме бликов, используется рассеянный цвет. По умолчанию все материалы непрозрачны на 100 %. Общую прозрачность материала можно определить, используя карту его непрозрачности. Когда карта непрозрачности активна, она перекрывает параметр Opacity (Непрозрачность), так как определяет силу и размещение непрозрачности материала.
Типы тонирования Параметры тонированной окраски управляют тем, какой метод (алгоритм) визуализации будет использоваться для оценки и затенения базовых цветов и сияния. Существует восемь типов тонирования оболочек объектов, представленных в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения). • Blinn (По Блинну) (рис. 3.7, a), Oren-Nayar-Blinn (По Оурену — Найару — Блинну) (рис. 3.7, б), Phong (По Фонгу) (рис. 3.7, в) — методы тонированной раскраски, обеспечивающие сглаживание граней и отображение зеркальных бликов на поверхности материала. Раскраска по Блинну или Фонгу в большинстве случаев применяется для создания стандартных материалов пластика, крашеных поверхностей, дерева, резины и т. п. При этом раскраска по Фонгу дает
Материал типа Standard (Стандартный)
131
более мягкое сглаживание между гранями, рассчитывая нормали каждого пиксела поверхности. Окраска по Оурену — Найару — Блинну предоставляет дополнительные возможности, связанные с управлением яркостью цвета рассеивания, что позволяет получить большую гибкость в настройке материалов с шероховатой поверхностью (например, тканей).
Рис. 3.7. Типы тонирования Blinn (По Блинну) (а), Oren-Nayar-Blinn (По Оурену — Найару — Блинну) (б) и Phong (По Фонгу) (в)
Metal (Металл) (рис. 3.8, a), Strauss (По Штраусу) (рис. 3.8, б) — применяются для имитации металлов и материалов с металлическим блеском (таких, как стекло, сталь и т. п.). Цвет блика металлических материалов зависит от настроек цветового компонента Diffuse (Цвет рассеивания) и формы кривой блика. Форма кривой блика и результирующее сияние на поверхности существенно отличается от получаемого при режиме затенения Phong (По Фонгу), хотя значение сияния остается тем же. Особенность раскраски по Штраусу состоит в возможности применения ее не только для имитации металлических поверхностей.
а
б
Рис. 3.8. Типы тонирования Metal (Металл) (а) и Strauss (По Штраусу) (б)
Anisotropic (Анизотропный) (рис. 3.9, a), Multi-Layer (Многослойный) (рис. 3.9, б) — позволяют имитировать несимметричные блики и управлять их ориентацией на поверхности материала. Данные типы тонированной раскраски характеризуются нерадиальным пятном светового блика. Многослойный тип тонирования может управлять двумя независимыми бликами разного цвета и интенсивности. Тонирование Anisotropic (Анизотропный) и Multi-Layer (Многослойный) могут применяться для имитации крашеных полированных поверхностей (покрытие автомобиля), стекла, волос и т. п.
б Рис. 3.9. Типы тонирования Anisotropic (Анизотропный) (а) и Multi-Layer (Многослойный) (б)
132
Глава 3. Материалы и текстуры
Translucent Shader (Просвечивающийся) (рис. 3.10) — позволяет свету свободно проходить сквозь объект, создавая эффект полупрозрачности. Этот тип тонирования напоминает двусторонний эффект, когда подсветка задних граней отображается на передних. Он не симулирует рассеивание света в пределах объекта, поэтому может применяться для имитации тонких объектов (например, бумаги или матового стекла).
Рис. 3.10. Тип тонирования Translucent Shader (Просвечивающийся)
Дополнительные параметры Помимо основных, стандартные материалы обладают дополнительными параметрами, представленными в свитках Extended Parameters (Дополнительные параметры), SuperSampling (Сверхразрешение) и Dynamics Properties (Динамические свойства), — непрозрачностью, характеристикой каркаса, методом сглаживания и динамическими характеристиками материала. Свиток Extended Parameters (Дополнительные параметры) позволяет настраивать параметры трех областей (рис. 3.11): Advanced Transparency (Свойства прозрачности), Wire (Каркас) и Reflection Dimming (Ослабление зеркального отражения). Переключатель Falloff (Спад) области Advanced Transparency (Свойства прозрачности) позволяет указать направление спада прозрачности: In (Внутрь) или Out (Наружу). Прозрачность регулируется параметром Amt (Степень). Изменение прозрачности используется на краях таких объектов, как стеклянная бутылка, мыльные пузыри, облака или туман.
РНГЦ Г Арф
Dim Levst Щ~
Ц
Soft Level рО~" £ !
Рис. 3 . 1 1 . Свиток Extended Parameters (Дополнительные параметры) стандартного материала
Переключатель Туре (Тип) позволяет задать способ отображения прозрачных материалов через канал цвета: Filter (Фильтрующий), Subtractive (Вычитающий) и Additive (Суммарный). Эти три типа взаимодействия цветовой составляющей, пропущенной через прозрачный материал, позволяют в первом случае получить максимально реалистичный эффект прозрачных материалов, во втором и третьем — специальные эффекты, такие как дым, луч прожектора или цветная тень.
Материал типа Standard (Стандартный)
133
Параметр Index of Refraction (Коэффициент преломления) задает величину коэффициента преломления светового луча, проходящего через прозрачный материал. ПРИМЕЧАНИЕ Более подробно о прозрачности и настройках прозрачных материалов рассказано в разд. «Объемный свет» гл. 5 и разд. «Создание стеклянного флакона при помощи подключаемого визуализатора VRay» гл. 7. Параметр Size (Размер) области Wire (Каркас) позволяет задавать толщину сетки в режиме каркасного отображения объекта. Переключатель In (Внутри) определяет единицы измерения, в которых будет измеряться толщина данной сетки: •
Pixels (Пикселы) — в пикселах (толщина линии не меняется в зависимости от расстояния до камеры);
•
Units (Единицы) — в текущих единицах, установленных в программе (изменяется в зависимости от расстояния до камеры — с удалением уменьшается).
В области Reflection Dimming (Ослабление зеркального отражения) указываются характеристики ослабления блеска для карт зеркального отражения, находящихся в тени. Свиток SuperSampling (Сверхразрешение) (рис. 3.12) позволяет выбрать один из четырех методов сглаживания изображений: Adaptive Halton (Адаптивный Хэлтона), Adaptiv Uniform (Адаптивный равномерный), Hammersley (Хаммерсли) и Мах 2.5 Star (Максимально 2,5 — звезда). Сглаживание краевых эффектов рассчитывается для каждого пиксела с учетом цвета соседних. ЯВНЦ ;
SupetSampIng
I
Г Use Globs!Sating!
! Г~ Enable locetSupeiSatnplei j-j'Max 2 5 Star
17 Supeisample Maps 3
p5 «tuples, star pattern
Рис. 3.12. Свиток SuperSampling (Сверхразрешение)
При визуализации в программе 3ds Max происходит фильтрация краевых эффектов. Настройки свитка SuperSampling (Сверхразрешение) предоставляют дополнительный контроль над сглаживанием, позволяя улучшить выходное изображение. Применение этого метода требует дополнительного времени для расчетов и может замедлить процесс визуализации в несколько раз. Одним из случаев использования SuperSampling (Сверхразрешение) может быть применение при визуализации анимации для сглаживания эффекта «мельтешения», связанного с неоднородным отображением цвета пикселов в соседних кадрах.
134
Глава 3. Материалы и текстуры
Свиток Dynamics Properties (Динамические свойства) позволяет настраивать характеристики стандартных материалов с учетом динамики для последующего применения их к объектам, участвующим в анимации (рис. 3.13).
Bounce Coefficient р П Г
о'" Slicing Faction: [ И Г "
tj
Рис. 3.13. Свиток Dynamics Properties (Динамические свойства)
Можно настраивать следующие динамические характеристики: Bounce Coefficient (Коэффициент упругости), Static Friction (Статическое трение) и Sliding Friction (Трение скольжения).
Создание сложных материалов Хотя материал Standard (Стандартный) применяется наиболее часто, 3ds Max предоставляет возможность создавать различные сложные материалы, состоящие из двух или более стандартных материалов. В этом случае материал Standard (Стандартный) предназначен для комбинирования эффектов других материалов.
Составные материалы Доступ к составным материалам можно получить, щелкнув на кнопке Туре (Тип) в окне Material Editor (Редактор материалов). В результате откроется окно диалога Material/Map Browser (Окно выбора материалов и карт) со списком доступных материалов. Рассмотрим некоторые из них.
Top/Bottom (Верх/низ) Материал Top/Bottom (Верх/низ) позволяет назначить разные материалы верхней и нижней части объекта. Какая часть объекта считается нижней, а какая верхней, зависит от его ориентации относительно оси Z глобальной или локальной системы координат. Для доступа к материалу Top/Bottom (Верх/низ) выполните следующие действия. 1. Щелкните на кнопке Туре (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт). 2. Выберите из списка материал Top/Bottom (Верх/низ). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке ОК. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Top/Bottom Basic Parameters (Основные параметры материала Верх/низ) (рис. 3.14), содержащий следующие настройки:
Создание сложных материалов
135
•
кнопки Top Material (Материал верхней части) и Bottom Material (Материал нижней части) для загрузки материалов для верхней и нижней частей объекта;
•
кнопку Swap (Поменять), с помощью которой можно поменять местами материалы верхней и нижней частей;
•
параметр Blend (Смешиваемый), задающий значение смешивания двух материалов на границе в пределах от 0 до 100;
•
параметр Position (Положение), определяющий положение границы двух материалов (используется диапазон значений от 0 до 100, причем нулевое значение полностью закроет объект верхним материалом, а 100 — наоборот).
1
Тор/1 Sottom Basip Parameters
.. в
TopM.a»eriai Swap
Bottom Material; _ • Cood&tttl»: i
P
Mat«ia[«62fSiandari)
;
*
Weld
<~ Local
Material S63(Standat(j)_
Bfend: Г0 Position;
Г50
i\ t\
Рис. 3.14. Свиток Top/Bottom Basic Parameters (Основные параметры материала Верх/низ)
Blend (Смешиваемый) Материал Blend (Смешиваемый) позволяет смешивать два отдельных материала в определенном процентном соотношении. Он также включает возможность применения маски, управляющей тем, где происходит смешивание, и, следовательно, появление смесевого цвета. Для доступа к материалу Blend (Смешиваемый) выполните следующие действия. 1. Щелкните на кнопке Туре (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт). 2. Выберите из списка материал Blend (Смешиваемый). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке ОК. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Blend Basic Parameters (Основные параметры смешивания) (рис. 3.15). 4. Настройте параметры смешивания материала. 1) Щелкнув на одной из кнопок, Material 1 (Материал 1) или Material 2 (Материал 2), выберите новый материал либо перейдите в режим редактирования существующего. В качестве материалов могут выступать как стандартные материалы, так и сложные составные.
136
Глава 3. Материалы и текстуры
2)
Установите или снимите флажки, расположенные справа от кнопок материалов, для активизации или деактивизации материалов.
3)
Установите переключатель Interactive (Интерактивный) напротив того материала, который должен быть показан в окне проекции.
4)
Нажав кнопку Mask (Маска), укажите файл растрового изображения, который будет использоваться для смешивания двух компонентов материала.
5)
В счетчике Mix Amount (Доля в смеси) укажите значение смешивания материалов-компонентов в диапазоне от 0 до 100. При значении равном 0 будет виден только Material 1 (Материал 1), а при 100 — только Material 2 (Материал 2).
6)
Задайте плавность перехода одного материала в другой с помощью элементов области Mixing curve (Кривая смешивания). Blend 8-вис Parameters
;:; \
tomuli.
Mat«iaN№5t$tandad1ji7 * htmcKv*
Material: Material «66 |6l»ida(d|JR Г Mask tl
Ml* Amount) 0 0 r Mixing ourv» Г* Vt
bt
TransiftonsHSne;
i
Рис. 3.15. Свиток Blend Basic Parameters (Основные параметры смешивания)
ПРИМЕЧАНИЕ Практическое применение материала Blend (Смешиваемый) описывается в разд. «Три способа применения текстурных масок» гл. 7.
Multi/Sub-Object (Многокомпонентный) Материал Multi/Sub-Object (Многокомпонентный) является одним из наиболее часто применяемых составных материалов. Он позволяет назначить объекту более одного материала на уровне грани посредством Material ID (Идентификатора материала). Для этих целей может использоваться модификатор Mesh Select (Выделение поверхности), при помощи которого на уровне подобъектов выделяются области, которым будут присваиваться различные материалы. Для доступа к материалу Multi/Sub-Object (Многокомпонентный) выполните следующие действия. 1. Щелкните на кнопке Туре (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).
Создание сложных материалов
137
2. Выберите из списка материал Multi/Sub-Object (Многокомпонентный). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке ОК. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала) (рис. 3.16).
Delete
ОпЛ» |(Г~|
Mat«ialt26
Рис. 3.16. Свиток Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала)
4. Настройте параметры многокомпонентного материала. 1)
Щелкните на кнопке Set Number (Установить количество) и задайте количество компонентов материала. Каждый компонент будет представлен образцом материала в левой части строки, а активный выделен прямоугольником.
2)
Щелкните на кнопке Add (Добавить) для добавления нового компонента или на кнопке Delete (Удалить), чтобы удалить выделенный в списке компонент.
3)
При необходимости измените номер ID (Идентификатор материала), указав новое значение.
4)
В текстовое поле Name (Имя) справа от номера компонента материала введите его имя.
5)
Щелкните на кнопке Material # (Standard) для доступа к настройкам компонента. Вы можете редактировать существующий материал или назначить новый.
6)
При помощи поля образца цвета, расположенного справа от кнопки, измените, если нужно, цвет Diffuse (Цвет рассеивания) активного компонента.
7) Для включения или выключения компонента из состава материала установите либо снимите его флажок в столбце On/Off (Включить/выключить).
Глава 3. Материалы и текстуры
138
Чтобы воспользоваться материалом Multi/Sub-Object (Многокомпонентный), присвойте его объекту сцены, после чего примените к объекту модификатор Edit Mesh (Редактирование поверхности) (можно использовать любой способ доступа для перехода в режим редактирования подобъектов). Выделите область объекта на уровне граней и в свитке Surface Properties (Свойства поверхности) выберите требуемый идентификатор или имя материала в раскрывающемся списке.
ПРИМЕЧАНИЕ О работе с материалом Multi/Sub-Object (Многокомпонентный) рассказано в разд. «Сложное текстурирование» гл. 7.
Matte/Shadow (Матовое покрытие/тень) Материал Matte/Shadow (Матовое покрытие/тень) применяется для создания специальных эффектов в сценах преимущественно с фоном в виде растрового изображения. Вы можете назначить этот материал, чтобы сделать невидимой часть объекта или чтобы объект мог принимать тени, оставаясь при этом невидимым. Эффект применения данного материала проявляется после визуализации объекта сцены, к которому он применен. Для создания материала Matte/Shadow (Матовое покрытие/тень) выполните следующие действия. 1. Щелкните на кнопке Туре (Тип) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт). 2. Выберите из списка материал Matte/Shadow (Матовое покрытие/тень). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке ОК. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) (рис. 3.17). 4. В области Matte (Матовое покрытие) установите или снимите флажок Opaque Alpha (Непрозрачность в альфа-канале) в зависимости от того, хотите вы включить назначенной геометрии вывод альфа-канала визуализатора или нет. 5. При необходимости установите флажок Apply Atmosphere (Применить атмосферные эффекты) в области Atmosphere (Атмосфера), чтобы использовать режим формирования атмосферной дымки применительно к объекту с матовым материалом. Настройки области Atmosphere (Атмосфера) интегрируют матовый объект в атмосферные эффекты. Если флажок установлен, то влияние атмосферы рассчитывается в зависимости от положения, в которое установлен переключатель: •
At Background Depth (На глубине фона) — влияние атмосферы не зависит от расстояния;
139
Создание сложных материалов
•
At ObjectDepth (На глубине объекта) — расчет влияния атмосферы производится с учетом атмосферы.
6. В области Shadow (Тень) установите флажок Receive Shadows (Принимать тени), чтобы материал мог принимать тени от других объектов сцены. При установке флажка Affect Alpha (Воздействовать на альфа-канал) будет формироваться изображение тени в альфа-канале выходного изображения, а параметр Shadow Brightness (Интенсивность тени) и образец цвета Color (Цвет) настраивают цвет и прозрачность тени. Matte/Shadow Basic Patameteis i f * GpaqueAlpha
Г" Apply Atmosphere
® At Backgiouid Depth <* At ObjectDepth
Shadow (У Receive Shadows j ShadowBrightness: ЩГ
P" Affect Alpha t\
Cotor
Addfcve Reflection None
jy
Рис. 3.17. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени)
ПРИМЕЧАНИЕ Практическое применение материала Matte/Shadow (Матовое покрытие/тень) рассматривается в разд. «Интеграция трехмерной графики и фотографии», «Маскирование объектов» гл. 8, а также в гл. 10.
Raytrace (Трассируемый) Материал Raytrace (Трассируемый) основан на методе визуализации, который рассчитывает растровое изображение с помощью трассировки лучей, проходящих через сцену. Эти лучи могут проходить через прозрачные объекты и отражаться от полированных поверхностей. В результате получается довольно реалистичное изображение, однако платой за качество становится увеличение времени, необходимого для визуализации, особенно если в сцене много источников света и материалов Raytrace (Трассируемый). Трассируемый материал поддерживает такие специальные эффекты, как Fog (Туман), Color Density (Плотность цвета), Translucency (Просвечивание) и Fluorescence ( Флуоресценция).
140
Глава 3. Материалы и текстуры
Для создания материала Raytrace (Трассируемый) выполните следующие действия. 1. Щелкните на кнопке Туре (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт). 2. Выберите из списка материал Raytrace (Трассируемый). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке ОК. В результате в области свитков окна Material Editor (Редактор материалов) появятся свитки с параметрами редактирования трассируемого материала Raytrace Basic Parameters (Основные параметры трассируемого материала) (рис. 3.18), Extended Parameters (Дополнительные параметры), Raytracer Controls (Управление трассировкой) и SuperSampling (Сверхразрешение).
3 Amber* Г?Н Diffuse
Ш .'.!• Щ
г
&
Г W»e
I
Faceted
Ш»пх¥РШ
, Transparency:
Reflet». 'УЩЯШ , г Specula Highlight •
Specular Color I
P2-«ide}
<"*»olBefr
I—I; I
. ш****.
i, Г EwsronmenU , :,.„. Г Bump pD~::
None „„_J!?r«
ifi '
Рис. 3.18. Свиток Raytrace Basic Parameters (Основные параметры трассируемого материала)
Свиток Raytrace Basic Parameters (Основные параметры трассируемого материала) включает часть описанных ранее параметров для стандартного материала, поэтому остановимся только на тех, которые соответствуют материалу Raytrace (Трассируемый). В отличие от стандартного материала поля образца цвета (за исключением цвета Diffuse (Цвет рассеивания)) могут переключаться между образцом цвета и счетчиком значения, варьирующимся в диапазоне от 0 до 100, что соответствует белому и черному цветам. Переключение производится с помощью установки или снятия флажка, находящегося рядом с образцом цвета. Параметр Ambient (Цвет подсветки) отличается от одноименной настройки стандартного материала. Для материала Raytrace (Трассируемый) значение подсветки характеризует степень восприятия подсветки трассируемым материалом. Установка белого цвета аналогична блокировке цветов Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) в стандартном материале. Цвет Reflect (Отражение) управляет отражательной способностью материала. Белый материал будет соответствовать 100 % величины отражения, в то время как черный материал совсем не будет генерировать отражения. При использовании
Создание сложных материалов
141
цвета, отличного от черно-белого, последний будет добавляться к отражениям, изменяя их цветовой тон. Образец цвета Luminosity (Светимость), подобно параметру Self-Illumination (Собственное свечение) стандартного материала, вызывает эффект свечения материала цветом образца. Снятие флажка вызывает смену названия на Self-Ilium (Собственное свечение) и появление счетчика для настройки собственного свечения в диапазоне от 0 до 100. Параметр Transparency (Прозрачность) устанавливает фильтрацию цвета, проходящего через прозрачный материал (аналогичен комбинации Filter (Фильтрующий) и Opacity (Непрозрачность) стандартного материала). При использовании белого цвета материал полностью прозрачный и, наоборот, при черном — полностью непрозрачный. В нижней части свитка Raytrace Basic Parameters (Основные параметры трассируемого материала) располагаются параметры двух карт: Environment (Окружающая среда) и Bump (Рельефность). Они также представлены в свитке Maps (Карты текстур): • Environment (Окружающая среда) — предназначена для замены карты текстуры окружающей среды, назначенной в окне диалога Environment (Окружающая среда); используется для формирования зеркального отражения и цвета прозрачности (карта окружающей среды видна только тогда, когда ее значение не равно 0); • Bump (Рельефность) — используется в качестве карты выдавливания. Свиток Extended Parameters (Дополнительные параметры) (рис. 3.19) содержит настройки специальных эффектов материала Raytrace (Трассируемый). Estended Paiamete»
Tt-
Density
j:
Start:
£nd
Amount
F А в г й * obieots inside wvttaced qbiest» Й ender atmosohwics «side raiil'aced objects *,.-*.-.»„«^...
• ' •^••- ••••-•*-••
* Default Г Additive
San: [05 S
: pReflecStofiS" " ^ "
!
Тура
Рис. 3.19. Свиток Extended Parameters (Дополнительные параметры)
Параметр Extra Lighting (Дополнительное освещение) усиливает эффект подсветки за счет рассеянного света другими объектами сцены. Используется для усиления
142
Глава 3. Материалы и текстуры
влияния цвета соседних объектов, имитируя Radiosity (Диффузное отражение) (например, белая тарелка на синей скатерти приобретет голубоватый оттенок). Настройка параметра Translucency (Просвечивание) позволяет свету проходить сквозь объект, представляя собой результат ненаправленного диффузного рассеивания. Этот эффект можно использовать, например, для имитации воска горящей свечи. При помощи настройки параметра Fluorescence (Флуоресценция) можно задать эффект флуоресцентного свечения материала. Значение параметра Fluor. Bias (Флуоресцентное смещение) контролирует силу эффекта в диапазоне от 0 до 1. Область Advanced Transparency (Улучшенная прозрачность) позволяет выполнить настройку эффектов прозрачности материала. • Transp. (Окружающая среда для прозрачности) устанавливает карту окружающей среды применительно к эффекту преломления фона в прозрачном материале. •
Density Color (Плотность цвета) и Density Fog (Плотность тумана) — однотипные параметры, позволяющие настроить свойства цвета в среде прозрачного объекта или тумана. Параметры Start (Начало) и End (Конец) задают ближнюю и дальнюю границы внутри объекта, a Amount (Величина) — величину силы эффекта. Данные настройки можно применять для создания эффекта дымчатого стекла.
В области Reflections (Отражения) можно настроить параметры отражений, указав тип эффекта отражения: Default (Исходный) или Additive (Суммарный). Значение параметра Gain (Поглощение) задает яркость зеркальных отражений в диапазоне от 0 до 1. Свиток Raytracer Controls (Управление трассировкой) (рис. 3.20) позволяет оптимизировать алгоритм трассировки с целью уменьшения времени визуализации конечного изображения.
»&>*Reflect/Refraet: RavtiaceAtmospheb P R effect/ Befrad Material f
Raytrace Reflections VFdloff End Distance Г
Reflect |1Q00
:j
Г
И Г ЦТ РИС. 3.20. Свиток Raytracer Controls (Управление трассировкой) Область Local Options (Локальные параметры) содержит настройки, позволяющие управлять включением/выключением трассировки — Enable Raytracing (Включить трассировку), атмосферных эффектов — Raytrace Atmospherics (Атмосферные эффекты трассировки), самоотражения и самопреломления материала — Enable Self
Использование текстурных карт
143
Reflect/Refract (Включить самоотражение и самопреломление материала), а также отражением и преломлением применительно к каналам G-буфера (Reflect/Refract Material ID (Отражение/преломление идентификатора материала)). При помощи настроек области Raytracer Enable (Разрешить трассировку) можно разрешить или запретить преломления или отражения применительно к данному материалу. Кнопка Local Exclude (Локальное исключение) служит для вызова окна, позволяющего указать объекты, которые не будут участвовать в обработке трассировщиком применительно к данному материалу. Параметр Bump Map Effect (Действие карты рельефа) определяет степень влияния карты рельефа на трассируемые эффекты отражения и преломления. Область Ray Antialiasing Globally (Сглаживание отражений и преломлений при трассировке) служит для включения сглаживания, а из раскрывающегося списка можно выбрать один из алгоритмов сглаживания.
Использование текстурных карт Понятие о текстурных картах Использование текстурных карт — еще один способ улучшения визуализации объектов. В 3ds Max текстурные карты представляют собой растровые изображения, назначаемые поверхностям объектов. Одни карты накладываются на объект как рисунок, другие (например, Bump (Рельефность) или Raytrace (Трассируемый)) — служат для изменения отображения поверхности, учитывая только интенсивность, считая конечные цвета оттенками серого. Двенадцать каналов проецирования, расположенных в свитке Maps (Карты текстур) окна стандартного материала, являются отправными точками для совершенствования его вида. Можно манипулировать, комбинировать, ответвлять текстурные карты множеством способов, заставляя даже простые поверхности выглядеть сложными и насыщенными. Умелое применение текстурных карт может сделать модель предельно реалистичной. Поскольку канал проецирования может ветвиться достаточно глубоко, способ интерпретации результатов ветвления изменяется в зависимости от различных каналов. Результат канала оценивается в цвете RGB и интенсивности оттенков серого. Помните, что растровые карты, применяемые в каналах проецирования, оказывают значительную нагрузку на оперативную память. На один пиксел 24-разрядная карта цвета требует 3 байта памяти, то есть при разрешении 3072 х 2048 формата Kodak CD-ROM изображение будет использовать 25 Мбайт оперативной памяти. Если при этом растровая карта использует фильтрацию (а этот параметр применяется практически всегда), появляются дополнительные затраты по 1 байту на пиксел при Pyramidal (Пирамидальная фильтрация) и 12 байт на пиксел при фильтрации Summed Area (Площадное усреднение).
144
Глава 3. Материалы и текстуры
СОВЕТ Для каналов, основанных на использовании интенсивности растровых изображений, таких, как Self-Illumination (Собственное свечение), Opacity (Непрозрачность), Bump (Рельефность) и др., необходимо использовать карты в оттенках серого. Это позволит не только более правильно использовать канал проецирования, но и сократить на одну треть загрузку оперативной памяти.
Проекционные координаты Проекционные координаты применяются для указания того, как будет отображаться на поверхности объекта карта текстуры. Они используют пространство координат UVW, где U — горизонтальное направление, V — вертикальное, a W — глубина. Координаты проецирования растровых карт UVW представляют пропорции соответствующих карт. В координатах UVW подсчитывается приращение растровой карты без ссылки на ее явные размеры. Оси U и V пересекаются в центре растровой карты и определяют центр UV-координат. Центр координат является точкой, вокруг которой вращается карта при настройке значения параметра Angle (Угол) для типа карты Bitmap (Растровое изображение). При моделировании почти все примитивы в свитке настроек Parameters (Параметры) содержат параметр Generate Mapping Coords. (Генерировать координаты проецирования), который присваивает объектам проекционные координаты. Например, для примитива Box (Параллелепипед) проекционные координаты присваиваются каждой грани. Когда проецирование генерируется параметрически, мозаичность и ориентация настраиваются только при помощи параметров материала, назначенного поверхности. В качестве альтернативы может применяться модификатор UVW Map (UVWпроекция), использование которого предоставляет возможность независимого управления проекцией отображения, расположением, ориентацией и мозаичностью текстуры. Присваивание и контроль над проекционными координатами осуществляется различными способами: от присваивания модификаторов, таких, как UVW Map (UVWпроекция) или Unwrap UVW (Расправить UVW-проекцию), до использования подключаемых модулей и самостоятельных программ. Как и большинство модификаторов 3ds Max, модификаторы проецирования оказывают влияние на все, что им передается в стеке модификаторов. Если активная выборка содержит грани, то проецирование присваивается только выборке подобъектов граней. Такая возможность позволяет смешивать типы проекций отображения и помещать отображение в нескольких местах одного и того же объекта.
Проецирование при помощи модификатора UVW Map (UVW-проекция) Модификатор UVW Map (UVW-проекция) позволяет назначить объекту проекционные координаты для последующего наложения текстурных карт и управления их положением в пространстве.
145
Использование текстурных карт
Для присвоения объекту модификатора UVW Map (UVW-проекция) в любом окне проекции выделите объект, которому будет назначен модификатор. Выполните команду Modifiers • UV Coordinates • UVW Map (Модификаторы • UV-координаты • UVWпроекция). В результате в стек модификаторов добавится модификатор UVW Mapping (UVW-проекция), а в поле свитков появятся его настройки (рис. 3.21). В окнах проекции вокруг выделенного объекта отобразится оранжевый габаритный контейнер Гизмо, отображающий тип проецирования и его размеры.
•Mapping * Planar С С С <" С Г
Qindricat Г \ Spherical Shrink Wrap Box Face XVZtoUVW
length, j 16.453
Jj
Wt*ij52.125
tj
Haghl j
•
UTteffO VTitefTo WTitefTo
:;Г Flipj t Г Щ : Г Flo
Г
Real-World Map Si2e
"Channel
•;-
*
Map Channel: П
f
Vertex Color Cbarmel
' »j
j
•
! - Ahgnment:
~~~
С К С Y
«Z
Manipulate J
Reset ,
Acquire
*
Show No Seams
f
f h t n Seem D isplay
<** ТЫск Seam Display
Рис. 3 . 2 1 . Свиток Parameters (Параметры) настроек модификатора UVW Map (UVW-проекция)
Рассмотрим основные настройки модификатора UVW Map (UVW-проекция). •
В области Mapping (Проекция) представлены семь типов проецирования: •
Planar (Плоская) — применяется для проецирования растровых карт на плоские поверхности объектов;
•
Cylindrical (Цилиндрическая) — используется для объектов, форма которых вписывается в цилиндр; текстурные координаты охватывают объект по форме цилиндра, замыкаясь в месте шва габаритного контейнера;
Глава 3. Материалы и текстуры
146 •
Spherical (Сферическая) — габаритный контейнер охватывает объект в виде сферы; применяется для объектов круглой формы (мяч, шар, глобус);
•
Shrink Wrap (Облегающая) — подобно сферическому проецированию имеет габаритный контейнер в виде сферы, но при этом только одну точку соединения текстуры;
•
Box (Прямоугольные трехмерные) — задает прямоугольное проецирование текстуры габаритным контейнером в форме параллелепипеда; лучше всего подходит для текстурирования объектов, имеющих форму коробки;
•
Face (Грань) — проецирование происходит отдельно по каждой грани и может служить для создания повторяющегося узора на поверхности объекта;
•
XYZ to UVW (XYZ в UVW) — применяется, когда необходимо одновременно изменять размеры процедурной карты и поверхности объекта.
•
С помощью параметров Length (Длина), Width (Ширина) и Height (Высота) можно установить необходимые размеры габаритного контейнера.
•
Параметры U Tile (Кратность по U), V Tile (Кратность по V) и W Tile (Кратность по W) задают количество повторений текстуры в пределах модели.
•
Область параметров Channel (Канал) указывает канал проецирования для карты или цвета вершин (к одному объекту может быть применено до 99 типов проекционных координат).
• Настройки области Alignment (Выравнивание) задают способ выравнивания для габаритного контейнера: Fit (Подогнать), Center (Центрировать), Bitmap Fit (Подогнать по текстуре), Normal Align (Выровнять нормаль), View Align (Выровнять по окну), Region Fit (Подогнать по области), Reset (Сбросить) и Acquire (Получить). • При помощи переключателя Display (Отображение) можно выбрать способ показа швов граней, отображаемых на уровне подобъектов Gizmo (Габаритный контейнер).
ПРИМЕЧАНИЕ О свойствах проекционных координат и правилах работы с ними рассказывается в разд. «Сложное текстурирование» гл. 7.
Двумерные карты текстур Двумерные карты названы так из-за того, что они не имеют глубины (только координаты UV). Такие карты применяются для наложения на поверхность объектов или в качестве карт окружающей среды. Наиболее распространенными являются карты Bitmap (Растровое изображение), Checker (Шахматная текстура), Gradient Ramp (Усовершенствованный градиент) и Gradient Type (Тип градиента).
Bitmap (Растровое изображение) Текстурная карта Bitmap (Растровое изображение) — наиболее часто применяемый тип текстуры. Растровая (или битовая) карта представляет собой файлы
Использование текстурных карт
147
изображения, сохраненные в одном из форматов растровой графики. Программа 3ds Max поддерживает практически все популярные форматы. Чаще всего текстурная карта Bitmap (Растровое изображение) применяется для замещения цвета рассеивания или в качестве карты выдавливания. Настройка параметров карты Bitmap (Растровое изображение) производится в следующих свитках окна Material Editor (Редактор материалов): Coordinates (Координаты), Noise (Шум), Bitmap Parameters (Параметры растрового изображения), Time (Время) и Output (Результат). Свиток Coordinates (Координаты) (рис. 3.22) аналогично области Mapping (Проекция) модификатора UVW Map (UVW-проекция) применяется для задания способа отображения карты текстуры на поверхности объекта.
*
Textam С limm
Ытт ) E xptcil M ар C h a n n e l 3
J? ihsv-f-ia»»"•В« Г U » R«*Wt»W Scot»
M#Cbormetf
i2E_^ .Д8йВ„. . , м ™ ] * •; П-0
i
«I
W
« »wwrwu : Bkir (To
Jj Skae(l««: foo
|<||Д
;
;
*!Й?.... ^ j
P—il | flotele
j i
Рис. 3.22. Свиток Coordinates (Координаты) настроек карты Bitmap (Растровое изображение)
В нем вы можете настроить следующие параметры отображения. •
В верхней части свитка установить переключатель в одно из двух положений: Texture (Текстура) или Environ (Фон) в зависимости от варианта проецирования. В первом случае текстура применяется для отображения на поверхности объекта, во втором — для имитации эффектов окружающей среды (отражения и преломления).
•
В зависимости от того, какой выбран вариант проецирования (Texture (Текстура) или Environ (Фон)), в раскрывающемся списке можно выбрать один из вариантов проекционных координат: •
при Texture (Текстура) — Explicit Map Channel (Явный канал карты), Vertex Color Channel (Канал цвета вершин), Planar from Object XYZ (Плоская локального объекта), Planar from World XYZ (Плоская глобального пространства);
•
Environ (Фон) — Spherical Environment (Сферическая фоновая), Cylindrical Environment (Цилиндрическая фоновая), Shrink-wrap Environment (Обтягивающая фоновая) и Screen (Экранная).
•
Параметры Offset (Смещение) и Tiling (Кратность) задают величину смещения и количество повторений текстурной карты по осям U и V. При этом единицей смещения служит размер карты.
•
Установить или снять флажки Mirror (Зеркальное отображение) и Tile (Повторить) для зеркального отражения карты и изменения режима повторяемости.
•
При помощи параметра Angle (Угол) указать в градусах угол поворота карты по осям U, V и W. Щелкнув на кнопке Rotate (Вращение), повернуть карту
148
Глава 3. Материалы и текстуры
интерактивно в появившемся окне Rotate Mapping Coordinates (Вращение проекционных координат). • При необходимости установить значение размытия карты, используя параметры Blur (Размытие) и Blur offset (Сдвиг размытия). • Установить переключатель в положение, соответствующее плоскости проецирования координат — UV, VW или WLJ. Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение) позволяет вносить в текстурную карту некоторые элементы неоднородности для придания ей большей реалистичности (рис. 3.23). Noise
w
Г On
Amount |T0
1
Animate: Г" Phase: foo
ti
Рис. 3.23. Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение)
В свитке Noise (Шум) можно настроить следующие параметры: • установить флажок On (Включить) для включения режима искажения текстуры; • используя параметр Amount (Величина), задать величину воздействия шума на текстурную карту; • при помощи параметра Levels (Уровни) установить количество циклов алгоритма случайных искажений; • используя параметр Size (Размер), задать размер искажений; • установив флажок Animate (Анимация), включить режим анимации искажений; • задать при помощи параметра Phase (Фаза) скорость изменения фаз шума при анимации. Свиток Bitmap Parameters (Параметры растрового изображения) настроек карты Bitmap (Растровое изображение) позволяет загрузить карту текстуры в состав материала и управлять параметрами ее отображения (рис. 3.24). При помощи свитка Bitmap Parameters (Параметры растрового изображения) можно настроить следующие параметры. • При щелчке на кнопке рядом с Bitmap (Растровое изображение) в верхней части свитка откроется окно, с помощью которого можно выбрать файл растрового изображения с жесткого диска или другого носителя. • Переключатель Filtering (Фильтрация) имеет три положения: •
Pyramidal (Пирамидальная фильтрация) — такая фильтрация применяется для текстурных карт по умолчанию; при такой фильтрации на каждый пиксел текстурной карты требуется дополнительно 1 байт оперативной памяти;
149
Использование текстурных карт П _ _ _ _ _ Bitmap-
Bitmap Parameters
I j
*
_
D:\Autodesk«£№la*8Smaps^LMlEAF.TGA
Г
Apply <• Сюр
Pjuaimdal
ufoo
Г SwwnedAiea
View Image С Pfecs
; j j •• H i j T o ^
d l У-Щ i r Mono Charwl O«put ^ j
;
*
Рис. 3.24. Свиток Bitmap Parameters (Параметры растрового изображения) настроек карты Bitmap (Растровое изображение)
•
Summed Area (Площадное усреднение) — более качественный алгоритм сглаживания, требующий значительных затрат памяти — 12 байт на пиксел;
•
None (Отсутствует) — без фильтрации.
•
Область Cropping/Placement (Обрезка/Размещение) позволяет вырезать из растрового изображения ту часть, которая будет применяться для текстурирования. Для этого вызывается окно интерактивного редактора или значения задаются в соответствующих полях.
•
В области Mono Channel Output (Результат в моноканал) при необходимости можно указать, какие значения цветовых каналов будут использоваться: RGB Intensity (Интенсивность RGB) или Alpha (Альфа-канал).
•
Переключатель Alpha Source (Альфа-канал) содержит три положения: Image Alpha (Альфа-канал изображения), RGB Intensity (Интенсивность RGB) и None (Opaque) (Отсутствует).
•
Переключатель RGB Channel Output (Выход в цвет) используется для указания формирования цвета растровой карты. Он может быть установлен в одно из двух положений: •
RGB — цвет будет воспроизводиться полностью;
•
Alpha as Gray (Градации серого из альфа-канала) — альфа-канал будет отображаться градациями серого тона.
Свиток Time (Время) настроек карты Bitmap (Растровое изображение) позволяет задавать временные рамки и способ анимации текстурной карты (рис. 3.25). Time • End Condition
П~0
1)'
Г" Sync Frames to Partfate Age
*
loop
<* Ping Pong
i
'•• <~ Цф$
—' Рис. 3.25. Свиток Time (Время) настроек карты Bitmap (Растровое изображение)
150
Глава 3. Материалы и текстуры
Свиток Time (Время) содержит следующие настройки: •
Start Frame (Начальный кадр) — задает кадр, с которого начнется анимация текстуры;
•
Playback Rate (Темп воспроизведения) — устанавливает скорость воспроизведения анимации;
•
переключатель End Condition (Условие завершения) имеет три положения: Loop (Петля), Ping Pong (Вперед-назад) и Hold (Зафиксировать);
•
Sync Frames to Particle Edges (Синхронизировать кадры с временем жизни частиц) — позволяет программе синхронизировать последовательности растровых изображений со временем жизни частиц, которым назначена данная карта. При этом начало последовательности кадров совпадает с началом времени жизни частиц.
Свиток Output (Результат) настроек карты Bitmap (Растровое изображение) управляет выходным изображением текстурной карты (рис. 3.26). Output ;:Г* Invert Clamp Г Г AlphafromRGB Intensity . Г Enable Cote Map
RGB Offset fcCo"**"*! RGB Level рГб
Sj
Bump Amount [To
Jj
CotoMau:Г пЫ) & Них
Рис. 3.26. Свиток Output (Результат) настроек карты Bitmap (Растровое изображение)
Свиток Output (Результат) содержит следующие параметры. •
Invert (Инвертировать) — изменяет цвета на противоположные, то есть получается негативное изображение.
•
Clamp (Ограничить яркость) — ограничивает яркость цветовых отсчетов при настройке параметра RGB Level (Уровень RGB).
•
Alpha from RGB Intensity (Альфа-канал из RGB-яркости) — включает использование альфа-канала, базирующегося на канале яркости RGB текстурного
Использование текстурных карт
151
изображения. При этом черный цвет становится полностью прозрачным, а белый непрозрачным. Промежуточные цвета обладают степенью непрозрачности, согласно их интенсивности в RGB. • Enable Color Map (Использовать карту цвета) — позволяет получить доступ к настройкам цветового диапазона текстурной карты, расположенным в нижней части свитка и представленным в виде графов. • Output Amount (Выходное значение) — задает долю карты в составе материала. • RGB Level (Уровень RGB) — управляет насыщенностью цвета текстурной карты. • Bump Amount (Величина рельефа) — позволяет усилить профиль рельефа выдавливания при использовании текстурной карты в канале Bump (Рельефность).
Checker (Шахматная текстура) Процедурная карта Checker (Шахматная текстура) представляет собой узор в виде шахматного поля, состоящего из двух настраиваемых цветов. Кроме рассмотренных ранее свитков Coordinates (Координаты) и Noise (Шум), карта Checker (Шахматная текстура) содержит дополнительный свиток Checker Parameters (Параметры шахматной текстуры) (рис. 3.27). -
9я**й«*«
:
Рис. 3.27. Свиток Checker Parameters (Параметры шахматной текстуры) настроек карты Checker (Шахматная текстура)
Для настройки параметров карты Checker (Шахматная текстура) выполните следующие действия. 1. При помощи параметра Soften (Размытие) укажите значение размытия границы между соседними клетками разных цветов. 2. При необходимости измените цвет клеток, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета). 3. Чтобы вместо цвета использовать карту текстуры, щелкните на одной из кнопок под надписью Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка необходимую карту. 4. Щелкнув на кнопке Swap (Поменять), измените при необходимости местами цвета или карты текстур шахматного поля.
Gradient Ramp (Усовершенствованный градиент) Процедурная карта Gradient Ramp (Усовершенствованный градиент) позволяет использовать произвольное количество цветов для настройки градиента.
152
Глава 3. Материалы и текстуры
Кроме рассмотренных ранее свитков, общих для многих текстурных карт, Gradient Ramp (Усовершенствованный градиент) содержит свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) (рис. 3.28). Gradient Ramp Pa;ame*efs
GfacfientType. j Lmea
Amour* ГсГо
pdatiwt | Linear
^1
t | * fiegul» I" Fractal <* Turbulence
SaeftO
i
Low.fffo
Jj
Phase- [сП5
H«jh:(To
;
trveis j
:
: j Smooth.fo~o
;|
Рис. 3.28. Свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) настроек карты Gradient Ramp (Усовершенствованный градиент)
Для настройки параметров карты Gradient Ramp (Усовершенствованный градиент) выполните следующие действия. 1. В верхней части свитка настройте отображение цветов градиента на цветовой шкале. Для этого дважды щелкните на требуемом ползунке, чтобы вызвать окно диалога Color Selector (Выбор цвета). Для создания нового ползунка щелкните на поле цвета и переместите ползунок в нужное место. Для удаления — перетащите ползунок в правый угол и после появления значка корзины отпустите кнопку мыши. 2. В раскрывающемся списке Gradient Type (Тип градиента) выберите один из типов градиента, а в списке Interpolation (Интерполяция) — один из шести вариантов перетекания цвета между соседними ползунками цветовой шкалы. 3. Область Noise (Шум) позволяет внести искажения в градиентную заливку. Вы можете выбрать один из трех алгоритмов генерации шума: Regular (Повторяющийся), Fractal (Фрактальный) или Turbulence (Турбулентный). 4. Задайте величину и размер шума градиентной текстуры с помощью параметров Amount (Величина) и Size (Размер).
Трехмерные карты текстур Трехмерные карты текстур — это процедурные карты, которые генерируются программно и используют в просчетах три измерения: U, V и W. В отличие от растровых изображений процедурные карты требуют значительно меньше оперативной памяти, но увеличивают время расчетов при конечной визуализации сцены. К данному типу относятся Cellular (Ячейки), Dent (Вмятины), Falloff (Спад), Noise (Шум), Smoke (Дым), Stucco (Штукатурка), Waves (Волны), Wood (Дерево) и др.
Использование текстурных карт
153
Dent (Вмятины) Процедурная карта Dent (Вмятины) позволяет создать на поверхности объектов случайные пятна и вмятины. Может применяться для создания шероховатых и помятых поверхностей. Кроме свитка Coordinates (Координаты), рассмотренного ранее, карта Dent (Вмятины) содержит свиток Dent Parameters (Параметры вмятин) (рис. 3.29).
-
33
Dent Parameters ;i
• j : :Si?e:|200 0
Saength: j 20 0 Iterations: [ 2 Maps
-
: СО1ОГ tti
Swap |:
C o t o
^
1
r-•
None None
шШШШШШ
Рис. 3.29. Свиток Dent Parameters (Параметры вмятин) настроек карты Dent (Вмятины)
Для настройки параметров карты Dent (Вмятины) выполните следующие действия. 1. Используя параметр Size (Размер), установите относительный размер пятен. 2. При помощи параметра Strength (Сила воздействия) задайте количество пятен, которое будет отображаться на поверхности материала. 3. Используя параметр Iterations (Количество итераций), укажите количество итераций фрактального алгоритма расчета пятен. 4. При необходимости измените цвет пятен, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета). 5. Чтобы вместо цвета использовать карту текстуры, щелкните на кнопке в области Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка необходимую карту. 6. Щелкнув на кнопке Swap (Поменять), при необходимости поменяйте местами цвета или карты текстур.
Falloff (Спад) Процедурная карта Falloff (Спад) чаще всего применяется для материалов, имеющих прозрачность или отражения, для задания неоднородности проявления этих эффектов. Управление параметрами карты осуществляется с помощью двух свитков Falloff Parameters (Параметры спада) (рис. 3.30): Mix Curve (Кривая смешивания) и Output (Результат), рассмотренного выше. Для настройки карты Falloff (Спад) выполните следующие действия. 1. В раскрывающемся списке Falloff Type (Тип спада) выберите один из пяти типов спада: Toward/Away (На наблюдателя/от наблюдателя), Perpendicular/Parallel
154
Глава 3. Материалы и текстуры
(Перпендикулярно/параллельно), Fresnel (По Френелю), Shadow/Light (Тень/ свет) и Distance Blend (Расстояние смешивания). 2. При необходимости измените цвет составляющих спада, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета). 3. В полях рядом с образцом цвета установите значение величины участия каждой составляющей в конечном расчете. 4. При необходимости замените цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсутствует) и в появившемся окне диалога Material/ Map Browser (Окно выбора материалов и карт) выберите необходимую карту. 5. Настройте дополнительные параметры, вызываемые отдельными типами спада, в нижней части окна. ;.
falloff Parameter .- Спы« л . . ~ >.-.-. • F.ml:Side-
ИрошГ:;
Nor* None
F
I Perpendicular / Paral
M o f f D i e c f t r t I Viewing Direction [Camera Z-Axis) j j
Ufl
'•',;-' "•.•• to
P 'OwV ••
• ,:л?Я=»*'г
- )
'
и.:!.. I
'*j
Г Рис. 3.30. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)
В свитке Mix Curve (Кривая смешивания) (рис. 3.31) можно вручную настроить кривую, характеризующую параметр смешивания двух составляющих карты Falloff (Спад). Данная кривая часто применяется для управления спадом прозрачности на краях стеклянных объектов.
Рис. 3 . 3 1 . Свиток Mix Curve (Кривая смешивания) настроек карты Falloff (Спад)
Использование текстурных карт
155
Noise (Шум) Текстурная карта Noise (Шум) позволяет генерировать бесконечно большие случайные переходы (шум) между двумя цветами или материалами. Применение этой карты в каналах Diffuse (Цвет рассеивания), Ambient (Цвет подсветки) и Bump (Рельефность) позволяет повысить реалистичность моделей за счет создания неоднородности материала. Настройки карты Noise (Шум) находятся в трех свитках: Coordinates (Координаты), Output (Результат) (рассмотрены выше) и Noise Parameters (Параметры шума) (рис. 3.32). Noise Parameters
НоюГиж * НщАх NdseThiestott Wshrni
Cda 10 •
••
f ЯШ 'il
<- ТшЬЛпм Ш&1Г"
j|
Mm NHM
Рис. 3.32. Свиток Noise Parameters (Параметры шума) настроек карты Noise (Шум)
Для настройки параметров карты Noise (Шум) выполните следующие действия. 1. Установите переключатель, задающий тип генерации случайного шума, в одно из положений: Regular (Повторяющийся), Fractal (Фрактальный) или Turbulence (Турбулентный). 2. При помощи параметров High (Верхнее значение) и Low (Нижнее значение) области Noise Threshold (Порог уровня шума) задайте верхнее и нижнее пороговые значения, при которых изменяется уровень краевых сглаживаний цветовых пятен. 3. Используя параметр Levels (Уровени), задайте значение плотности цветовых пятен для фрактального и турбулентного типов генерации шума. 4. В поле Phase (Фаза) установите значение скорости изменения фаз шума во время анимации. 5. Параметр Size (Размер) определяет размер цветовых пятен на поверхности материала. 6. При необходимости измените цвет составляющих карты шума, щелкнув на образце цвета и настроив его в появившемся окне Color Selector (Выбор цвета). 7. В области Maps (Карты текстур) при желании можно заменить цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсутствует) и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите необходимую карту.
Stucco (Штукатурка) Текстурная карта Stucco (Штукатурка), подобно карте Noise (Шум), позволяет создавать на поверхности материала неровности. Однако эти неровности имеют по
156
Глава 3. Материалы и текстуры
сравнению с Noise (Шум) другую структуру, напоминающую оштукатуренную поверхность или кожуру цитрусовых. Параметры текстуры Stucco (Штукатурка) содержатся в двух свитках: Coordinates (Координаты) и Stucco Parameters (Параметры штукатурки) (рис. 3.33). дяе
JUTS * ; i
Thctaess: fHS
Thieshott (TO ^ Swsp
| СЫ»»1 Д Соки #2 [
I
^
^
:
Jj Maps
И
I
Ho» i^onj
P fi>
j
Рис. 3.33. СВИТОК Stucco Parameters (Параметры штукатурки) настроек карты Stucco (Штукатурка)
Для настройки параметров текстуры Stucco (Штукатурка) выполните следующие действия. 1. При помощи параметра Size (Размер) укажите размер неровностей. 2. Используя параметр Thickness (Толщина), задайте степень размытия границы цветовых составляющих. 3. С помощью параметра Threshold (Порог) настройте долю участия каждого цвета в итоговой составляющей материала. Параметры и назначение цветов и кнопок области Maps (Карты текстур) аналогичны рассмотренным ранее.
Составные карты текстур Составные карты текстур предназначены для объединения нескольких текстур в одну новую сложную текстуру. К таким картам относятся Composite (Составная), Mask (Маска), Mix (Смешивание) и RGB Multiply (RGB-умножение). Рассмотрим некоторые типы составных карт.
Composite (Составная) Составная текстура Composite (Составная) образуется путем смешивания двух и более текстурных карт при помощи прозрачности с альфа-каналом и без него. Для настройки карты используются параметры свитка Composite Parameters (Параметры составной) (рис. 3.34). Для задания количества компонентов карты Composite (Составная) щелкните на кнопке Set Number (Установить количество) и в открывшемся окне Set Number of Maps (Установить количество текстурных карт) введите требуемое значение. Для выбора текстуры щелкните на кнопке с надписью None (Отсутствует) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите
157
Использование текстурных карт
необходимую карту. При желании можно выключать карту из просчетов, сняв флажок, установленный напротив ее названия. —...-.-•
Composite Paamatias
j
Ssi Number I Nwnfeet of Maps: W Map 1- ....
None
Map t
None
МарЗ;
Nor*
Map 4:
None
P jP
MapS
None
P
m
P
Щ
J
Рис. 3.34. Свиток Composite Parameters (Параметры составной) настроек карты Composite (Составная)
Mask (Маска) Составная текстурная карта Mask (Маска) позволяет перекрывать часть одной текстуры за счет другой. Белые области карты маски позволяют видеть исходный образ, черные области блокируют его, а серые области обеспечивают пропорциональную видимость. Настройка карты Mask (Маска) осуществляется с помощью единственного свитка Mask Parameters (Параметры маски) (рис. 3.35). М ask Parameters
Map:
None
Mask:
None ™ Invert Mask
Рис. 3.35. Свиток Mask Parameters (Параметры маски) настроек карты Mask (Маска)
Настройте компонент Map (Карта текстуры). Для этого щелкните на кнопке None (Отсутствует) и выберите его из списка открывшегося окна Material/Map Browser (Окно выбора материалов и карт). Эта карта станет той текстурой, которая будет видна на материале. Для выбора карты маски, которая скроет все лишнее, щелкните на кнопке рядом с надписью Mask (Маска). Действие маски основано на том, что все черные пикселы изображения считаются прозрачными, а все белые — непрозрачными. Градации серого интерполируются между полной прозрачностью и непрозрачностью. Флажок Invert Mask (Инвертировать маску) позволяет поменять местами прозрачные и непрозрачные области изображения.
158
Глава 3. Материалы и текстуры
Mix (Смешивание) Составная текстурная карта Mix (Смешивание) позволяет смешивать два цвета или две текстуры при помощи третьей текстуры, выступающей в роли маски, или используя процентное соотношение каждого компонента в итоговом материале. Для настройки карты Mix (Смешивание) используется свиток Mix Parameters (Параметры смешивания) (рис. 3.36).
Swap
— — — •
' ""I . ... i(0 0
tj
Г UsiCuive
!:::::U«er; foT~~ tj •
jj :
Рис. 3.36. Свиток Mix Parameters (Параметры смешивания) настроек карты Mix (Смешивание)
Параметры Color #1 (Цвет 1) и Color #2 (Цвет 2) задают цвет компонентов карты. При необходимости в области Maps (Карты текстур) можно выбрать две карты текстур для основного цвета и третью карту, которая будет играть роль маски для смешивания двух первых. Параметр Mix Amount (Доля в смеси) определяет долю каждой карты в итоговом изображении. Область Mixing curve (Кривая смешивания) позволяет управлять кривой смешивания двух карт.
1
Глава 4
'i<
Основы визуализации • Инструменты визуализации • Параметры визуализации • Виртуальный буфер кадров • Использование модуля RAM Player (RAM-проигрыватель) • Окружение и атмосферные эффекты • Модуль Video Post (Видеомонтаж)
•
Глава 4. Основы визуализации
160
Позади долгие часы кропотливой работы, связанной с моделированием, текстурированием, анимацией, постановкой света и камер. Дальше — финальная визуализация. Конечно же, пробная (тестовая) визуализация начинается значительно раньше, но только после установки всех параметров и настроек можно увидеть все свойства материала, эффекты внешней среды, глубину резкости, размытие движения и т. д. В состав 3ds Max входит визуализатор Default Scanline Renderer, оптимизированный для быстрых расчетов, причем, используя определенные настройки оптимизации, скорость просчетов можно существенно увеличить. Знание настроек, находящихся в окне диалога Render Scene (Визуализация сцены), позволяет экономить время и нервы.
Инструменты визуализации Доступ к визуализации в среде 3ds Max можно получить с помощью меню Rendering (Визуализация) либо основной панели инструментов, в состав которой входит группа кнопок и раскрывающийся список, позволяющие задавать режимы визуализации (рис. 4.1).
Рис. 4 . 1 . Кнопки и раскрывающийся список на панели инструментов, предназначенные для управления визуализацией
Рассмотрим назначение каждого инструмента. •
«^ Render Scene Dialog (Диалоговое окно визуализации сцены) — основная кнопка настройки параметров визуализации, предназначенная для вызова окна Render Scene (Визуализация сцены). Данное окно позволяет настроить все базовые параметры визуализации для активного окна проекции (если не указан другой вариант).
• jview j j Render Type (Тип визуализации) — раскрывающийся список основных вариантов визуализации, содержащий следующие типы. •
View (Проекция) — визуализация активного окна проекции.
•
Selected (Выделенные объекты) — визуализируются только выбранные объекты в активном окне проекции. Данный вариант подходит для тестовой визуализации элементов сложных сцен, требующих значительных временных затрат.
•
Region (Область) — позволяет визуализировать только заданную прямоугольную область, ускоряя таким образом процесс настройки общих параметров. Установка границ области производится в активном окне проекции при помощи маркеров. Визуализируемое изображение не масштабируется, оставляя поля, выходящие за пределы выделенной области, заполненными цветом фона.
•
Crop (Обрезка) — режим, аналогичный предыдущему, но области, выходящие за пределы рамки, обрезаются до выбранного размера.
Параметры визуализации
161
•
Blowup (Увеличение) — режим, аналогичный Region (Область), но при визуализации увеличивает выбранную область до полного окна.
•
Box Selected (Габаритный контейнер выделения) — позволяет выполнить визуализацию по габаритным контейнерам выделенных объектов. При этом вызывается окно диалога, в котором можно указать пропорции окна вывода изображения.
•
Region Selected (Область выделения) — режим, позволяющий визуализировать область, ограниченную габаритным контейнером выделенных объектов, без изменения общих разметов визуализации.
•
Crop Selected (Обрезка выделения) — от режима Region Selected (Область выделения) отличается лишь тем, что области, выходящие за пределы контейнера визуализации, обрезаются.
•
<ф Quick Render (Production) (Быстрая визуализация (итоговая)) — позволяет визуализировать сцену с установками, заданными по умолчанию, либо ранее измененными в окне Render Scene (Визуализация сцены).
•
% Quick Render (ActiveShade) (Быстрая визуализация (активное тонирование)) — режим просчета сцены, при котором интерактивно происходит обновление окна диалога ActiveShade (Активное тонирование). Например, если применяется данный режим, то в сцене можно сразу увидеть изменения параметров источника света, вызванные изменением значения Multiplier (Усилитель). Использование данного режима требует наличия достаточных аппаратных средств, его применение на маломощных компьютерах может занять много времени.
Параметры визуализации Для настройки всех базовых параметров визуализации служит окно Render Scene (Визуализация сцены) (рис. 4.2), вызываемое из меню Rendering (Визуализация) либо с помощью кнопки Render Scene Dialog (Диалоговое окно визуализации сцены), расположенной на главной панели инструментов. Окно Render Scene (Визуализация сцены) по умолчанию содержит пять вкладок для детальной настройки процесса визуализации. •
Common (Общие) — настройка параметров, общих для различных визуализаторов, в том числе и для подключаемых (например, Brazil или VRay).
•
Renderer (Визуализатор) — содержит настройки активного визуализатора (по умолчанию — Default Scanline Renderer).
•
Render Elements (Визуализация элементов) — позволяет визуализировать отдельные элементы изображения (например, тени от объектов, области бликов, диффузное рассеивание и т. д.) для их последующего использования или редактирования в программах растровой графики или компоузинга.
•
Raytracer (Трассировка) — содержит настройки трассировки лучей, общие для всех объектов сцены, использующих трассируемые материалы или карты текстур (кроме настройки некоторых параметров, влияющих на скорость и качество
162
Глава 4. Основы визуализации
просчетов). Можно указать те объекты, которые не будут учитываться в расчетах трассировки лучей. Advanced Lighting (Улучшенное освещение) — позволяет выбрать один из двух способов освещения сцены: •
Light Tracer (Трассировщик света) — применяется для создания сглаженных теней и мягкого освещения сцены;
•
Radiosity (Диффузное отражение) — более правильное с физической точки зрения освещение, позволяющее рассчитывать прохождение светового луча с учетом отражения от объектов сцены, преломления в прозрачных средах и затухания с расстоянием.
ЙЙ Render Scene: Default Scanline Renderer Advanced Lighting
Rendet Elements
Rendeter
Common Default Scanlne Rendetef r Options: I ? Mapping
P" Auto-Refiect/Reftact and Mirrors
W Shadows
Г* Force W«eftame
Г
W«e Thickness
Enable SSE
ГГ5
?|
"Antialiasing: —~~ 1
Antialiasing
filter: jAiea FSerSize: f t 1
FifteiMaps ! Computes Antialiasing using a i variable яге area filer
i
Global SupaS ampling Disable all Samplers
Г* Enable Global Swpersampler
">
. •
i
Г
.„„„„
* Prediction f
Preset:
AdiveShad» Viewport: Front
"ZJ Render
Рис. 4.2. Окно Render Scene (Визуализация сцены)
Рассмотрим более подробно основные настройки окна Render Scene (Визуализация сцены).
Common Parameters (Общие параметры) Свиток Common Parameters (Общие параметры) вкладки Common (Общие) позволяет настраивать общие параметры и режимы визуализации (рис. 4.3).
163
Параметры визуализации i rTmeOutput* Single
Every Nth Frame-j
f Active Time Segment 0 To 100 :
;
<~ Range'
fo
:J To pCO
;j
frte Numbei Base, Г Fumes
jl.3.5-12
Width
1640 ; j
320x248
Height
\Ш
64Ш4Ю
i\
.
800*600
ImagaА5реа.ГгазТ" ; [ S P«elAspect (To
:i
P Atmospherics
Г
W Efiects
V Ajea UoJTts/Shadowe as Points
1^ Displacemenl
Г" ForceiSded
Г V«feoColt« Check. Г Supet Black Г Bendertefields :j r A d :; •
I
Compute -Advanced Lighting when Rcquietf
t... , , . „... I I L ,.^ I .
,
i rfiendet Output
V
PutlmeoeFietistlsjinOutputPatblsJ
Сям»еНи
m Autodesk ME Image SequenceFiei«sq) Г
Uss ;-•• v j
P* Rendered Frame Window P SkipExfstHiglfnages
Devices... P NetRendef
Рис. 4.З. Свиток Common Parameters (Общие параметры) вкладки Common (Общие) окна Render Scene (Визуализация сцены)
Для настройки данного свитка выполните следующие действия. 1. В области Time Output (Выходные настройки диапазона) установите переключатель в одно из четырех положений: •
Single (Единичный) — визуализируется текущий кадр;
•
Active Time Segment (Текущий промежуток времени) — полностью визуализируется временной диапазон, отображаемый в строке треков; Range (Диапазон) — позволяет визуализировать диапазон кадров, задаваемый в полях, расположенных справа; Frames (Кадры) — визуализируется список кадров, указанных через запятую, и (или) диапазон кадров, указанных через дефис (например, 1, 5,10100 означает, что будут визуализироваться 1,5 и с 10 по 100 кадры).
Затем укажите значения следующих параметров: •
Every Nth Frame (Каждый кадр под номером) — позволяет задать интервал кадров визуализации, доступный в режимах Active Time Segment (Текущий
Глава 4. Основы визуализации
164
промежуток времени) и Range (Диапазон) (по умолчанию просчитывается каждый кадр); •
File Number Base (База номеров файлов) — значения, используемые для формирования имен файлов визуализируемой последовательности.
2. В области Output Size (Выходные настройки размера) укажите параметры выходного изображения: • из раскрывающегося списка в верхней части области выберите один из вариантов размеров кино-, фото- и видеокадров или вариант Custom (Пользовательская), позволяющий задавать значения Aperture Width (mm) (Ширина апертуры), Image Aspect (Пропорции изображения) и Pixel Aspect (Пропорции пиксела); •
задайте значения ширины и высоты изображения визуализации, используя параметры Width (Ширина) и Height (Высота);
•
с помощью четырех кнопок с предустановленными значениями ширины и высоты в пикселах можно быстро задать соответствующие значения для визуализации.
3. В области Options (Режимы) установите или снимите следующие флажки: •
Atmospherics (Атмосферные эффекты) — включение/выключение режима визуализации эффектов внешней среды (туман, объемное освещение и горение);
•
Effects (Эффекты) — включение/выключение режима визуализации эффектов (например, Blur (Размытие));
•
Displacement (Смещение) — включение/выключение режима визуализации карт смещения;
•
Video Color Check (Контроль цветности) — включение/выключение режима контроля соответствия цветов визуализируемого изображения стандартам телевещания PAL и NTSC; • Render to Fields (Визуализировать полукадры) — режим визуализации изображения в виде четных или нечетных строк, необходимых для воспроизведения анимации на телевизоре; •
Render Hidden Geometry (Визуализировать скрытые объекты) — включение/ выключение режима визуализации объектов сцены, невидимых в окнах проекции;
•
Area Lights/Shadows as Points (Площадное освещение/тени в виде точечных) — режим, при котором все площадное освещение и тени визуализируются так, как если бы это были точечные источники света (позволяет значительно ускорить время просчета визуализации во время отладки);
•
Force 2-Sided (Отображать обе стороны) — включение/выключение режима визуализации обеих сторон (увеличивает время расчетов; может понадобиться при визуализации импортированных из других программ объектов с хаотичным расположением нормалей);
•
Super Black (Сверхчерный) — включение/выключение режима ограничения уровня черного цвета (используется для приложений видеомонтажа).
Параметры визуализации
165
4. Настройте параметры области Advanced Lighting (Улучшенное освещение): •
Use Advanced Lighting (Использовать улучшенное освещение) — включение/выключение режима расчетов трассировки лучей и диффузного отражения;
•
Compute Advanced Lighting when Required (При необходимости рассчитать улучшенное освещение) — включение/выключение режима расчетов диффузного отражения во время визуализации (обычно при визуализации последовательности рассчитывается диффузное отражение только для первого кадра).
5. В области Render Output (Результат визуализации) установите параметры вывода визуализации: •
Files (Файлы) — вызывает окно Render Output File (Результирующий файл визуализации) для ввода имени и выбора необходимого формата файла;
•
Save File (Сохранить файл) — сохраняет результаты визуализации в файле с указанным именем; • Devices (Устройства) — позволяет записать результат визуализации на внешний носитель (например, цифровой видеомагнитофон или ленточный накопитель); • Rendered Frame Window (Окно кадров визуализации) — кроме записи в файл или на внешний носитель, выводит результаты визуализации в одноименное окно; •
Net Render (Сетевая визуализация) — включает режим просчета последовательности кадров компьютерами, расположенными в локальной сети;
•
Skip Existing Images (Пропускать существующие изображения) — включает/ выключает режим пропуска визуализации ранее созданных изображений.
В 3ds Max 8 появилась возможность вместе с сохранением последовательности файлов создавать Image File List (Список файлов изображений), позволяющий получить непосредственный доступ к этой последовательности. Список может быть одного из двух форматов: Autodesk ME Image Sequence File (IMSQ) и Legacy 3ds Max Image File List (IFL). Формат можно выбрать, установив переключатель в области Render Output (Результат визуализации) в соответствующее положение.
Default Scanline Renderer Свиток Default Scanline Renderer вкладки Renderer (Визуализатор) используется для настройки визуализатора, встроенного в 3ds Max (рис. 4.4). Для настройки общих параметров сканирующего визуализатора выполните следующие действия. 1. В области Options (Режимы) установите или снимите следующие флажки: •
Mapping (Карты текстур) — включение/выключение режима визуализации материалов и текстур; • Shadows (Тени) — прорисовка теней от объектов сцены;
Глава 4. Основы визуализации
166 •
Enable SSE (Включить SSE) — использование SSE-инструкции для ускорения расчетов;
•
Auto-Reflect/Refract and Mirrors (Автоотражение/преломление и зеркальное отображение) — просчет отражений в зеркальных и преломляющих материалах;
•
Force Wireframe (Каркасы объектов) — визуализация всех объектов в виде каркасов (значение параметра Wire Thickness (Толщина каркаса) указывает толщину линий в пикселах).
2. В области Antialiasing (Сглаживание) настройте параметры сглаживания: •
Antialiasing (Сглаживание) — сглаживание границ изображения;
•
Filter (Фильтр) — раскрывающийся список с 12 алгоритмами сглаживания текстур;
•
Filter Maps (Фильтрация текстурных карт) — фильтрация текстурных карт (фильтрация улучшает отображение материалов, использующих текстурные карты, но увеличивает время визуализации);
•
Filter Size (Размер фильтра) — позволяет увеличить или уменьшить степень размытия растровых изображений.
3. В области Global SuperSampling (Глобальное сверхразрешение) установите или снимите флажки: •
Disable all Samplers (Выключить все фильтры сглаживания) — выключение всех алгоритмов сглаживания, присутствующих в настройках материалов и текстур;
•
Enable Global Supersampler (Включить глобальное сверхразрешение) — включает алгоритм сглаживания для всех материалов, присутствующих в сцене.
4. Области Object Motion Blur (Размытие объекта от движения) и Image Motion Blur (Размытие изображения от движения) позволяют настроить параметры размытия объектов или изображения, характерного для анимации движения: •
Apply (Применить) — визуализация размытия;
•
Duration (frames) (Длительность (кадров)) — интервал времени, в течение которого будет выполняться размытие (при значении, равном 1, размытие будет проходить от середины предыдущего кадра до середины следующего);
•
Samples (Выборка) — количество пикселов из состава копий, попадающих в итоговый кадр визуализации;
•
Transparency (Прозрачность) — включается при размытии объектов, имеющих прозрачность; увеличивает общее время визуализации, по умолчанию снят;
•
Duration Subdivisions (Количество копий в шлейфе) — количество копий размытого объекта в течение интервала размытия;
•
Apply To Environment Map (Применять к картам внешней среды) — режим, при котором размывается изображение фона.
5. Область Auto Reflect/Refract Maps (Карты автоотражения/преломления) содержит параметр Rendering Iterations (Количество итераций визуализации), который указывает кратность отражений одних объектов, использующих карты отражения/преломления в других.
167
Виртуальный буфер кадров
6. Переключатель Color Range Limiting (Ограничение цветового диапазона) позволяет понизить цветовой диапазон ярких бликов на поверхности объектов с использованием одного из двух способов: •
Clamp (Ограничить яркость) — интенсивность всех оттенков цвета будет ограничена диапазоном от 0 до 1; • Scale (Масштабировать) — все три компонента цвета будут масштабироваться так, чтобы интенсивность максимального из компонентов оказалась равной 1.
_-
Default ScanbneRendefer
Г
Options!
'
f/ Mapping
~" -~~~
™
*™ •*
К? Auto-Reflect/Reftact and Minors
i P' Shadows
Г* Force Wireframe
; •Г Antialiasing; Enable SSE
Wire Thickness:
P Antialiasing
filer [дТёа
Г? FMefMaps
JT5
t!
Filer Size: ГГ
Compiles Antialiasing using а variable size atea Niter.
Global SuperSampling
Г Г
D t e W
Enable Global Supetsample
- Object Motion Вкл. P 1 ApPb" Sample»: Г ш
Duration [(rames) |j
[05
Z
Dutatiort Subdivision*: P
$i
j f/ App^i
Duration [frames):
tj
j Г" Tfanspaiencii
Г" Appji to Eny»onfnert Map
r Image Moton Blur
r Auto Reffect/fiefract Map* i Rendering Iterations: fT~
fBTS
j p Color Ranae Limiting — t : I •* Pamp ^ Scale
• Memory Management Г" Conserve Memory
Рис. 4 . 4 . СВИТОК Default Scanline Renderer вкладки Renderer (Визуализатор) окна Render Scene (Визуализация сцены)
Виртуальный буфер кадров После запуска визуализации на экране появится активное по умолчанию окно Rendered Frame Window (Окно кадров визуализации), отображающее процесс вывода изображения (рис. 4.5).
168
Глава 4. Основы визуализации
if) I .mi.i «»it!, frame 0 (1:1)
У йй ГЦ [т] т « • X | RGB Alpha
;
:
•
:
*
•
3 СП
••
Рис. 4.5. Окно Rendered Frame Window (Окно кадров визуализации)
Панель инструментов, представленная в верхней части окна Rendered Frame Window (Окно кадров визуализации), служит для выполнения следующих задач: •
Q Save Bitmap (Сохранить растровое изображение) — сохраняет визуализированное изображение в файл;
• g& Clone Rendered Frame Window (Копия окна визуализации) — создает копию окна визуализации (при этом вы можете выполнить новую визуализацию в основном окне и сравнить результат с предыдущим); • ПйГ Enable Red/Green/Blue Channel (Включить красный/зеленый/синий канал) — включает или выключает отображение красного, зеленого или синего каналов цветности; •
« Display Alpha Channel (Показать альфа-канал) — задает отображение альфаканала;
•
т Monochrome (Монохромный) — включает отображение результата визуализации в оттенках серого;
•
X Clear (Очистить) — очищает окно визуализации.
Программа 3ds Max позволяет отображать в окне Rendered Frame Window (Окно кадров визуализации) растровые изображения и последовательность кадров таких изображений. Для загрузки изображения в окне кадров визуализации выполните команду File • View Image File (Файл • Просмотр растрового изображения). При просмотре последовательности кадров появляются дополнительные кнопки навигации по кадрам.
Использование модуля RAM Player (RAM-проигрыватель) Модуль RAM Player (RAM-проигрыватель) (рис. 4.6) используется для загрузки в память компьютера отдельных кадров или последовательности кадров для последующего их сравнения или просмотра в виде анимации с заданной частотой кадров в секунду (fps).
Использование модуля RAM Player (RAM-проигрыватель)
____B___H___23Z1
©Frame: t o f t
ChannelA: c£ & X £ |
1 Channel B: Cgr %
CharnwlAeiacl'.Mibi Oiamiel 6: B4(*.K
y-
X
: » , :
У
A D* в - m «I ч. •
l Г iTiels]
400»266 •
_
_
_
_
_
•MHHH • ' • •
_
IS-
Mfii»i> 0 МБ M«Mv OMB
-.'•••
liilllj
•• •
••#;-"
V;
21 ::. : y -
1,
Рис.
J:'...]o.iu.L.
169
„
;-• • ......_j
4.6. Окно модуля RAM Player (RAM-проигрыватель)
Модуль RAM Player (RAM-проигрыватель) имеет два канала (Channel А (Канал А) и Channel В (Канал Б)) и позволяет загружать в эти каналы две различных последовательности растровых изображений, отдельные кадры или анимацию для их одновременного воспроизведения. Щелчок на кнопке мыши в окне просмотра каналов с последующим перетаскиванием позволяет установить и перемещать границу разделения двух каналов. В верхней части окна RAM Player (RAM-проигрыватель) находится панель инструментов с набором кнопок для управления окном проигрывателя: •
G^ Open Channel (Открыть канал) — открывает стандартное окно выбора файла для загрузки в Channel А (Канал А) или Channel В (Канал Б);
• ^ Open Last Rendered Image (Открыть последнее визуализированное изображение) — загружает последнее визуализированное изображение в выбранный канал; •
X Close Channel (Закрыть канал) — выгружает изображение или анимацию из текущего канала; • 0 Save Channel (Сохранить канал) — открывает окно диалога сохранения файла и позволяет сохранить как отдельные кадры и их последовательность, так и анимацию; • А|В Horizontal/Vertical Split Screen (Разделить экран по горизонтали/вертикали) — переключает два варианта совместного отображения каналов на горизонтальное или вертикальное; !30 jr] Frame Rate Control (Контроль частоты кадров) — раскрывающийся список с вариантами возможной установки частоты смены кадров в секунду; ЕЦ Double Buffer (Двойной буфер) — синхронизирует отображение анимации в обоих каналах.
170
Глава 4. Основы визуализации
Окружение и атмосферные эффекты Использование Environment (Окружающая среда) и Effects (Эффекты) позволяет создавать общее настроение, повышая реализм сцены. Элементы управления атмосферой предлагают широкий набор эффектов, включая туман, дымку, огонь, дым и т. д. Окно Environment and Effects (Окружающая среда и эффекты) позволяет настраивать параметры отображения окружающей среды и дополнительных эффектов (рис. 4.7). t u t _j-~
|3 Environment and Effects Environment
| Effects
I -
Common Parameters
1 г Background Color:
Environment Map:
Г
Use Map
None is .. R •I ** obal Lighti
Ambient
Tint-
1
Levei.
[To • • -
if +
;
- —
Ш
Exposure Control
•1 +
Atmosphere
Рис. 4.7. Вкладка Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Чтобы получить доступ к настройкам окружающей среды, выполните команду Rendering • Environment (Визуализация • Окружающая среда). В результате откроется окно Environment and Effects (Окружающая среда и эффекты) на вкладке Environment (Окружающая среда). Рассмотрим свитки настроек данного окна.
Common Parameters (Общие параметры) В свитке Common Parameters (Общие параметры) (см. рис. 4.7) вкладки Environment (Окружающая среда) задаются параметры отображения внешней среды. • В области Background (Фон) можно настроить следующие элементы. •
Color (Цвет) — цвет фона окружающей среды.
•
Environment Map (Карта текстуры окружающей среды) — щелчок на кнопке с надписью None (Отсутствует) вызывает окно Material/Map Browser (Окно выбора материалов и карт), служащее для загрузки любой из доступных текстурных карт или материала в качестве фона изображения. Для последующего редактирования такой карты (материала) необходимо перетащить ее на образец материала в окне Material Editor (Редактор материалов), выбрав при этом Instance (Привязка) в качестве метода копирования.
Окружение и атмосферные эффекты • •
171
Use Map (Использовать карту текстуры) — включает/выключает использование карты при визуализации.
Область Global Lighting (Глобальная освещенность) позволяет управлять параметрами общего освещения сцены. •
Tint (Оттенок) — образец цвета, устанавливающий оттенок света всех источников света сцены, кроме параметра Ambient (Цвет подсветки).
•
Level (Уровень) — параметр, изменяющий уровень силы света для всех источников света сцены, кроме Ambient (Цвет подсветки) (при значении, равном 1, сила света не меняется).
•
Ambient (Цвет подсветки) — образец цвета, которым будут равномерно окрашены объекты сцены.
Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции) Свиток Exposure Control (Контроль экспозиции) позволяет изменять параметры общей освещенности сцены за счет настройки выходных уровней и цветового диапазона так, как если бы использовалась настройка экспозиции фотоаппарата (рис. 4.8).
. j logarithmic Exposure Control •: Active . Ptocess Background and Environment Maps Render Pievtew Loaartl rune E xpoojre Control Parameters Brightness J67 4 Contrast
(ТЭТ)
Mid Tones:
f677
Physical Scale
;
; г :, г Desalfjrate t o w Level* : г AEfeci tndtrect Ont^ Cdai Coftecfciori- [ ^
Рис. 4 . 8 . Свитки Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
С его помощью можно, например, осветлить слишком темные сцены без изменения настройки источников света. Небольшое окно предварительного просмотра позволяет увидеть все изменения, которые производятся при помощи параметров свитка Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции).
Atmosphere (Атмосфера) Свиток Atmosphere (Атмосфера) (рис. 4.9) дает доступ к четырем типам атмосферных эффектов: Fire Effect (Эффект огня), Fog (Туман), Volume Fog (Объемный туман) и Volume Light (Объемный свет).
172
Name: | Fire Efleci
Глава 4. Основы визуализации
Merge
Рис. 4 . 9 . Свиток Atmosphere (Атмосфера) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Для выбора атмосферного эффекта и управления им при помощи настроек свитка Atmosphere (Атмосфера) выполните следующие действия. 1. Щелкните на кнопке Add (Добавить). 2. В открывшемся окне Add Atmospheric Effect (Добавить атмосферный эффект) выберите из списка тип атмосферного эффекта и щелкните на кнопке О К для подтверждения выбора. В результате выбранный эффект добавится в список Effects (Эффекты). При необходимости добавьте таким же образом другие эффекты. 3. Для удаления эффекта из списка Effects (Эффекты) выделите его и щелкните на кнопке Delete (Удалить). 4. Установка флажка Active (Активный) включает эффект в итоговую визуализацию сцены. 5. С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в списке. Конечный результат зависит от того, как расположены эффекты в списке, так как визуализация эффектов производится последовательно, начиная с верхнего. 6. Кнопка Merge (Присоединить) позволяет присоединить к текущей сцене эффекты, подгружаемые из других сцен. 7. Используя поле Name (Имя), можно переименовать любой эффект в списке.
Настройка атмосферных эффектов Атмосферные эффекты являются визуальными эффектами, позволяющими имитировать такие природные явления, как дым, огонь, туман, облака, вспышки взрыва и т. п. Эффекты, примененные к сцене, становятся видимыми только после визуализации. Зона действия атмосферных эффектов может быть ограничена различными способами: ближней и дальней границами, границей светового луча, настройками параметров. Чтобы ограничить действие эффектов Fire Effect (Эффект огня) и Volume Fog (Объемный туман), применяется габаритный контейнер. Габаритный контейнер задает границы пространства сцены, в пределах которого будет формироваться эффект. Для создания габаритного контейнера необходимо щелкнуть на кнопке Helpers (Вспомогательные объекты) вкладки Create (Создание) командной панели и выбрать из раскрывающегося списка Atmospheric Apparatus (Атмосферная оснастка) (рис. 4.10).
Окружение и атмосферные эффекты
173
% м ж Ф gт i%
JAtmosphenc Apparatus
d
Object Type >
ВадСшто
, -
SpheteG
MameendCeto
ИИНЯЯИИ Рис. 4.10. Типы га 6s ОИТНЬ x контейн 3D0B
Свиток Object Type (Тип объекта) содержит три кнопки для создания габаритных контейнеров разной формы: BoxGizmo (Параллелепипед Гизмо), CylGizmo (Цилиндр Гизмо) и SphereGizmo (Сфера Гизмо). После создания габаритного контейнера, к нему можно применить стандартные преобразования перемещения, вращения и масштабирования.
Эффект Fire Effect (Эффект огня) После добавления эффекта Fire Effect (Эффект огня) в список Effects (Эффекты) свитка Atmosphere (Атмосфера) окна Environment and Effects (Окружающая среда и эффекты) настройки данного эффекта появляются в свитке Fire Effect Parameters (Параметры эффекта огня) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты) (рис. 4.11). Gizmos:
~~~~~
•
Pick Gcmo * Colors:
«
ImeiCafar
I
Smoke Сок»
Flare Type <"• Т«иИ St»teh:fTo
]
~ QutoCotat
flan»Sac p50
* fieball
"~ C|
RegJaJy: Щ
Jj
Denrtjt ff5
.JTo
^J
fBT3
Jj
Motion: •
О«:(0ТГ
^1
Рис. 4 . 1 1 . СВИТОК Fire Effect Parameters (Параметры эффекта огня) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Глава 4. Основы визуализации
174
Свиток Fire Effect Parameters (Параметры эффекта огня) содержит следующие области. • Gizmos (Габаритные контейнеры) — предоставляет возможность выбрать габаритный контейнер (кнопка Pick Gizmo (Указать контейнер)) или удалить его из списка (кнопка Remove Gizmo (Удалить контейнер)). • Colors (Цвета) — дает возможность настраивать цвета компонентов пламени на основе трех образцов цвета: Inner Color (Внутренний цвет), Outer Color (Наружный цвет) и Smoke Color (Цвет дыма). • Shape (Форма) — позволяет настраивать тип пламени, используя следующие параметры: •
переключатель Flame Type (Тип пламени), который имеет два положения: Tendril (Язык) — генерируются языки пламени, характерные для эффекта горения свечи, костра и т. п.; Fireball (Огненный шар) — тип пламени округлой формы, обычно применяемый для имитации взрывов;
•
параметр Stretch (Растягивание) — задает длину растяжения пламени в пределах габаритного контейнера;
•
параметр Regularity (Регулярность) — позволяет указать, как пламя будет заполнять габаритный контейнер.
• Characteristics (Характеристики) содержит четыре параметра:
•
•
•
Flame Size (Размер пламени) — устанавливает размер отдельных языков пламени внутри габаритного контейнера (для достижения лучшего результата рекомендуется использовать значения в пределах от 15 до 30);
•
Flame Detail (Детализация пламени) — контролирует величину изменения цвета и резкость на границах каждого цвета;
•
Density (Плотность) — позволяет задавать прозрачность и яркость эффекта горения;
•
Samples (Выборка) — устанавливает частоту дискретизации эффекта.
Motion (Движение) представлена двумя параметрами: •
Phase (Фаза) — контролирует частоту изменения эффекта (если установлен флажок Explosion (Взрыв), то Phase (Фаза) контролирует стадии от образования пламени до образования дыма, используя значения от 0 до 300);
•
Drift (Дрейф) — управляет визуализацией пламени вдоль оси Z габаритного контейнера.
Explosion (Взрыв) позволяет настраивать параметры взрыва: •
Explosion (Взрыв) — включает анимацию размера, плотности и цвета, основываясь на анимации параметра Phase (Фаза);
•
Setup Explosion (Настройка взрыва) — открывает окно Setup Explosion Phase Curve (Настройка кривой фаз взрыва), в котором можно задать параметры кривой для начала и окончания взрыва;
•
Smoke (Дым) — включает создание дыма в процессе взрыва, основанном на значениях параметра Phase (Фаза);
•
Fury (Темп взрыва) — задает скорость мерцания вспышки взрыва.
Окружение и атмосферные эффекты
175
Эффект Fog (Туман) Эффект Fog (Туман) основывается назначениях Environment Range (Диапазон окружающей среды) съемочной камеры. В связи с этим для применения эффекта тумана сцена должна визуализироваться с использованием вида из камеры. Настроить параметры атмосферного эффекта Fog (Туман) можно в свитке Fog Parameters (Параметры тумана) (рис. 4.12). ....:
Fog Parameters
Fog: Coin:
E nvffonment Color Map:
Г* U se M ap
None Environment Opacity Map: Г" Use Map None P Fos Background
Tiipe: *
SiamJatl
<* Layesed
Standard *
•
Рис. 4 . 1 2 . Свиток Fog Parameters (Параметры тумана) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Рассмотрим настройки свитка Fog Parameters (Параметры тумана). •
•
В области Fog (Туман) устанавливаются следующие параметры: •
Color (Цвет) — отвечает за выбор цвета тумана;
•
Environment Color Map (Карта цвета окружающей среды) — позволяет выбрать карту текстуры для использования ее в качестве цвета тумана;
•
Environment Opacity Map (Карта прозрачности окружающей среды) — дает возможность использовать текстурную карту для управления плотностью тумана;
•
Fog Background (Туман фона) — включает/выключает применение эффекта тумана к фону сцены;
•
Туре (Тип) — переключатель между двумя типами тумана: Standard (Стандартный) и Layered (Слоистый).
Область Standard (Стандартный) содержит параметры стандартного тумана: •
Exponential (Экспоненциально) — позволяет управлять плотностью тумана по мере удаления от камеры;
•
Near (Ближе) и Far (Дальше) — позволяют задавать процент плотности тумана на ближней и дальней границах, определяемых в настройках камеры.
Глава 4. Основы визуализации
176
• Область Layered (Слоистый) управляет настройками слоистого тумана: •
Тор (Верх) — устанавливает верхнюю границу слоя тумана;
•
Bottom (Низ) — задает нижнюю границу слоя тумана;
•
Density (Плотность) — определяет плотность тумана;
•
Horizon Noise (Шум горизонта) — добавляет шум в туман на линии горизонта, что повышает реалистичность эффекта;
•
Size (Размер) — задает значение коэффициента масштаба для области шума;
•
Falloff (Спад) — позволяет переключаться между тремя параметрами затухания плотности тумана: Тор (Сверху), Bottom (Снизу) и None (Отсутствует);
•
Angle (Угол) — устанавливает угол действия области шума над линией горизонта;
•
Phase (Фаза) — позволяет анимировать область шума.
Эффект Volume Light (Объемный свет) Эффект Volume Light (Объемный свет) имитирует прохождение светового луча в непрозрачной атмосфере (туман, дым, пыль и т. п.). Параметры Volume Light (Объемный свет) появляются в свитке Volume Light Parameters (Параметры объемного света) (рис. 4.13) после добавления этого эффекта в список Effects (Эффекты) свитка Atmosphere (Атмосфера) окна Environment and Effects (Окружающая среда и эффекты).
fo5
:
Alien. MiA.ffS
;
Fie Shadow: Г tuw г М ш < ~ Нф * Uwlehi Sap flange !
Г NpoeOn Amowcffo
"*j
Г LiofcToLis^l !
tj(» « REOUII» f FrecW Г ТшЫаже Г" invert |
oh:|To
t\
<-*;ГГ
*J ]
ftort Г B«* Г Ult С Щф С to» I" 6<*lm:
Рис. 4.13. Свиток Volume Light Parameters (Параметры объемного света) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Окружение и атмосферные эффекты
177
С помощью свитка Volume Light Parameters (Параметры объемного света) можно настроить параметры в следующих областях: •
Lights (Источники света) позволяет выбрать источник света (кнопка Pick Light (Указать источник света)) либо удалить его из списка (кнопка Remove Light (Удалить источник света).
• Volume (Объем) управляет характеристиками светового луча: •
Fog Color (Цвет тумана) и Attenuation Color (Цвет затухания) — образцы цвета, позволяющие задавать основной цвет светового луча и цвет, на который он будет изменяться по мере удаления от источника света;
•
Exponential (Экспоненциально) — экспоненциально увеличивает плотность тумана по мере удаления от источника света;
•
Density (Плотность) — управляет плотностью тумана;
•
Max Light (Максимальная яркость) — ограничивает максимальную яркость тумана, нарастающую по мере удаления от источника света;
•
Min Light (Минимальная яркость) — определяет настройки уровня подсветки;
•
Atten. Mult. (Усилитель затухания) — управляет эффектом затухания цвета;
•
Filter Shadows (Фильтрация теней) — позволяет улучшить качество визуализации объемного света за счет повышения количества отсчетов в выборке; может принимать одно из четырех положений: Low (Низкое), Medium (Среднее), High (Высокое) и Use Light Smp Range (Использовать область усреднения источника света).
• Attenuation (Затухание) содержит два счетчика, позволяющие задавать Start (Начальная) и End (Конечная) границы затухания эффекта (значения базируются на границах ближней и дальней зоны источника света). •
Noise (Шум) позволяет настраивать режим шума в луче света: •
Noise On (Включить шум) — включает/выключает эффект шума;
•
Amount (Величина) — процентное отношение шума в составе тумана (может принимать значения от 0 (отсутствие шума) до 1 (максимальный шум);
•
Link To Light (Связать с источником) — связывает эффект шума с системой координат источника света;
•
Туре (Тип) — позволяет выбрать один из трех типов шума: Regular (Повторяющийся), Fractal (Фрактальный) и Turbulence (Турбулентный);
•
Invert (Инвертировать) — установка флажка позволяет инвертировать эффект шума;
•
Noise Threshold (Порог уровня шума) — отвечает за ограничение нижней (Low (Нижнее значение)) и верхней (High (Верхнее значение)) границ шума;
•
Uniformity (Однородность) — управляет однородностью тумана;
•
Levels (Уровни) — задает количество итераций алгоритма шума;
•
Size (Размер) — определяет размер клубов тумана или дыма;
178
Глава 4. Основы визуализации •
Phase (Фаза) — при анимации позволяет управлять скоростью изменения шума;
•
Wind Strength (Сила ветра) — задает силу ветра;
•
Wind from the: (Ветер с:) — позволяет выбрать одно из шести направлений ветра.
ПРИМЕЧАНИЕ Практическое применение эффекта Volume Light (Объемный свет) описано в разд. «Объемный свет» гл. 5.
Эффект Volume Fog (Объемный туман) По своим параметрам Volume Fog (Объемный туман) во многом напоминает объемный свет. Настройки этого эффекта находятся в свитке Volume Fog Parameters (Параметры объемного тумана) (рис. 4.14). >
_-^_>m_
Volume Fog Parameter?
jj
j-Gizmos: i
j |
Pick Gizmo > Rs
i
i
|
jjHj '
Soften Gamo Edges:f5T~~ ;
Соки:
._ i
Exponential
Density: 120 0 Step Size: J4 0 MaxSieps |100 Fog Background
?до«; « fiegM* <~ fractal f Twrbutence Г invert j Noise Threshold: H^i-ffO Jj j tj SizKjioB
uwfao fcTo Wmd lion» the.
Front
r
;
Phase[Fo
Wind Strength-fcTo
t\ Jj I С
|j
Beck Г Left Г fl^ht Г Top f" Bottom jj ]
Рис. 4.14. Свиток Volume Fog Parameters (Параметры объемного тумана) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
Свиток Volume Fog Parameters (Параметры объемного тумана) позволяет настроить параметры в следующих областях. • Gizmos (Габаритные контейнеры) — предоставляет возможность выбрать габаритный контейнер (кнопка Pick Gizmo (Указать контейнер)) либо удалить его из списка (кнопка Remove Gizmo (Удалить контейнер)). Soften Gizmo Edges (Сглаженные края габаритного контейнера) — счетчик в диапазоне от 0 до 1, позволяющий задавать размытость краев эффекта тумана. Не рекомендуется
179
Окружение и атмосферные эффекты
использовать в качестве значения 0, так как это может стать причиной жестких, ступенчатых краев. • Volume (Объем) — позволяет настраивать параметры Color (Цвет), Exponential (Экспоненциально) и Density (Плотность), аналогичные настройкам объемного света. Кроме этого данная область содержит такие параметры: •
Step Size (Размер шага) — позволяет управлять степенью неоднородности тумана;
•
Max Steps (Максимальное количество шагов) — ограничивает количество просчетов выборки тумана;
•
Fog Background (Туман фона) — позволяет применять эффект тумана к фоновому изображению.
• Noise (Шум) — по своим параметрам практически аналогична рассмотренной выше области для объемного света.
Оптические эффекты Оптические эффекты выступают как часть процесса визуализации, позволяя повысить реалистичность трехмерных сцен. Доступ к группе оптических эффектов можно получить при помощи вкладки Effects (Эффекты) окна диалога Environment and Effects (Окружающая среда и эффекты) (рис. 4.15). Щ Environment and Effects
•
Environment ] Effects \ Effects Effects _ens Effects Blur Brightness and Contrast Coloi Balance Depth of Field File Output
* p
j |
F7 Active \:
Move Up j Move Down|
vlotion Blur Hair and Fur
Zl Merge
Name, j Film Grain
All
С Cuftent
.1 i
Effects: «
I
Show Original [ Update Scene j
|j
Add... Delete
j
Г" Interactive Update Effect
Current^ Updating:
Grain: j 0,2
Cj
f~ Ignore Background
Рис. 4.15. Вкладка Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты)
Глава 4. Основы визуализации
180
Для выбора оптических эффектов и настройки их параметров в свитке Effects (Эффекты) выполните следующие действия. 1. Щелкните на кнопке Add (Добавить). В результате откроется окно диалога Add Effect (Добавить эффект), в котором можно выбрать один из следующих эффектов: Hair and Fur (Волосы и шерсть), Lens Effects (Эффекты линзы), Blur (Размытие), Brightness and Contrast (Яркость и контраст), Color Balance (Цветовой баланс), Depth of Field (Глубина резкости), File Output (Вывод в файл), Film Grain (Зернистость) и Motion Blur (Размытие движения). 2. В окне Add Effect (Добавить эффект) выберите из списка тип требуемого эффекта и щелкните на кнопке О К для подтверждения выбора. В результате выбранный эффект добавится в список Effects (Эффекты). При необходимости добавьте таким же образом другие эффекты. 3. Для удаления эффекта из списка Effects (Эффекты) выделите его и щелкните на кнопке Delete (Удалить). 4. Установите флажок Active (Активный), чтобы включить эффект в итоговую визуализацию сцены. 5. С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в списке. 6. Кнопка Merge (Присоединить) позволяет присоединить к текущей сцене эффекты, подгружаемые из других сцен. 7. Используя поле Name (Имя), вы можете переименовать любой эффект списка. 8. В области Preview (Просмотр) настройте параметры, влияющие на предварительный просмотр эффектов: •
установите переключатель Effects (Эффекты) в одно из двух положений: АН (Все) — для предварительного просмотра всех эффектов списка или Current (Текущий) — для просмотра только выделенного;
•
установите флажок Interactive (Интерактивный), чтобы изменения параметров эффектов сразу отображались в окне визуализации;
•
щелкните на кнопке Show Original (Показать оригинал) для просмотра сцены без применения эффектов;
•
щелчок на кнопке Update Scene (Обновить сцену) обновляет изображение в окне визуализации с учетом выполненных изменений параметров эффектов и самой сцены;
•
щелчок на кнопке Update Effect (Обновить эффект) обновляет визуализируемое изображение в том случае, если снят флажок Interactive (Интерактивный).
Фильтры Lens Effects (Эффекты линзы) Находящаяся в верхней части списка группа Lens Effects (Эффекты линзы) является наиболее часто применяемой в визуализации сцен с дополнительными эффектами. В эту группу входят фильтры, имитирующие оптические эффекты реальных съемочных камер: Glow (Сияние), Ring (Круг), Ray (Луч), Auto Secondary (Вторичные
Окружение и атмосферные эффекты
181
автоблики), Manual Secondary (Вторичные блики ручной настройки), Star (Звезда), и Streak (Полоса). Для доступа к списку эффектов линзы необходимо выделить в списке Effects (Эффекты) строку Lens Effects (Эффекты линзы). В результате в нижней части окна Environment and Effects (Окружающая среда и эффекты) появится свиток Lens Effects Parameters (Параметры эффектов линзы) (рис. 4.16). Lens Effects Parameters Glow Ring Ray Auto Secondary Manual Secondary Star Streak
Рис. 4.16. Свиток Lens Effects Parameters (Параметры эффектов линзы) вкладки Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты)
Для выбора необходимого фильтра выделите его имя в списке слева и щелкните на кнопке со стрелкой, указывающей вправо. В результате выделенный фильтр переместится в правое окно. Для удаления выбранного фильтра из просчетов переместите его обратно — из правого окна в левое. Настройки общих параметров для всех фильтров находятся в свитке Lens Effects Globals (Глобальные настройки эффектов линзы) (рис. 4.17). Lens Eflecls Q obals Patameteis
Scene I
ve
:
Seed ТШГ~ •' Angle 1 0 0
:,' Intensity 1 1 0 0 0
:
Squeeze J 0 0
i\ :
Рис. 4.17. Свиток Lens Effects Globals (Глобальные настройки эффектов линзы) вкладки Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты)
Вкладка Parameters (Параметры) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) содержит следующие настройки: • Load (Загрузить) — позволяет загрузить сохраненные ранее параметры фильтров данной группы; • Save (Сохранить) — вызывает окно Save Lens Effects file (Сохранить файл эффектов линзы), в котором вы можете указать имя файла и путь для его сохранения; • Size (Размер) — задает размер участка изображения, подверженного влиянию фильтра (определяется в процентах от всего визуализируемого изображения); • Intensity (Интенсивность) — управляет общими параметрами яркости и непрозрачности эффектов линзы;
Глава 4. Основы визуализации
182
• Seed (Случайная выборка) — задает случайное число для генерации эффектов линзы без изменения начальных параметров; • Angle (Угол) — задает значения угла поворота эффекта линзы относительно начального положения при повороте съемочной камеры; • Squeeze (Сдавливание) — управляет изменением пропорций области эффекта, растягивая его по горизонтали (при положительных значениях счетчика) или по вертикали (при отрицательных); •
Lights (Источники света) — содержит две кнопки: Pick Light (Указать источник света), позволяющую выбрать источник света в окне проекции, и Remove (Удалить), удаляющую из списка выделенный источник света.
Настройки вкладки Scene (Сцена) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) позволяют более тонко настраивать параметры линзовых эффектов, влияющих на их отображение в сцене. Среди данных настроек присутствуют режим воздействия на альфа-канал, действие эффекта в зависимости от расстояния до камеры или расположения их по оси Z (глубины сцены) и некоторые другие. При настройке эффектов линзы обычно используются параметры по умолчанию. Рассмотрим общие параметры, характерные для настройки фильтров группы Lens Effects (Эффекты линзы), на примере фильтра Glow (Сияние). Фильтр Glow (Сияние) позволяет создавать эффект светящегося ореола вокруг любых выбранных объектов. Одной из задач, выполняемых при помощи этого фильтра, является создание эффекта свечения неоновой рекламы. При выборе фильтра Glow (Сияние) становится доступным свиток Glow Element (Элемент сияния) (рис. 4.18) с настройками его параметров. Stow Element
j•
Options \ '•:
Name, folow Size 130 0 "
S> On Z\
Intern*)) J1100
W Gto« Behind II l
Г
Squeeze
Г Radial Color
Occlusion j 100 0 U«? Soiree Color (1515
•••-•-
FaMf Curve
None
'
Г
•DrcuiarCotof
Мк [ТГб *J None ve
Г~
None
-
,
:
1
Рис. 4.18. Свиток Glow Element (Элемент сияния) настроек эффекта Glow (Сияние)
Окружение и атмосферные эффекты
183
Свиток Glow Element (Элемент сияния) содержит две вкладки: Parameters (Параметры) и Options (Режимы). Для настройки элементов вкладки Parameters (Параметры) выполните следующие действия. 1. Установите или снимите флажок On (Включить) в зависимости от того, должен или нет просчитываться эффект во время визуализации изображения. 2. Задайте размер области действия эффекта, используя параметр Size (Размер). 3. С помощью параметра Intensity (Интенсивность) установите уровень яркости и непрозрачности каждого отдельного эффекта. 4. Установите флажок Glow Behind (Сияние позади), чтобы эффект проявлялся позади объектов сцены. 5. Используя счетчик Occlusion (Перекрытие), укажите, в какой мере на эффекте должно сказываться влияние аналогичного параметра из Lens Effects (Эффекты линзы) вкладки Scene (Сцена). 6. Установив флажок Squeeze (Сдавливание), включите режим растяжения области действия эффекта, заданного в свитке Lens Effects (Эффекты линзы) вкладки Parameters (Параметры). 7. Параметр Use Source Color (Использовать цвет источника) позволяет задать долю использования цвета объекта или источника света по отношению к указанным цветам: Radial Color (Цвет вдоль радиуса) или Circular Color (Цвет вдоль окружности). Значение, равное 0, позволяет использовать только цвета, указанные в образцах, а значение, равное 100, использует только цвет источника. Промежуточные значения генерируют смешанные цвета. 8. В области Radial Color (Цвет вдоль радиуса) настройте параметры внешней и внутренней области эффекта сияния: •
при помощи образцов цвета укажите цвет внешней и внутренней области эффекта сияния;
•
щелкните на кнопке None (Отсутствует), если нужно выбрать в качестве образца цвета карту текстуры;
•
нажмите кнопку FaLLoff Curve (Кривая спада), чтобы настроить кривую влияния цвета вдоль радиуса с использованием более чем одного цвета или текстурной карты.
9. Область Circular Color (Цвет вдоль окружности) позволяет использовать четыре образца цвета, которые будут располагаться по окружности внешней части эффекта. Параметр Mix (Смешивание) задает степень смешивания цветов группы Circular Color (Цвет вдоль окружности). Действие остальных кнопок не отличается от рассмотренных для области Radial Color (Цвет вдоль радиуса). 10. При помощи кнопки Size Curve (Кривая размера) настройте в области Radial Size (Радиальный размер) кривую распространения эффекта относительно объекта или источника света, которому этот эффект назначен. Щелчок на кнопке с надписью None (Отсутствует) позволяет загрузить в качестве управляющей областью эффекта карту текстуры.
184
Глава 4. Основы визуализации
На рис. 4.19 показана вкладка Options (Режимы) свитка Glow Element (Элемент сияния). Glow Element :. Pwameters j Options j П - А и * Element To: ' (• LigMs
I? Inege
! Г ObiecliD |1
;_
Г
1
Г Whole :
Г StartsK>fi JjT T~ AJpha Г° Jj ' г unciamp [To~" : и г г Hi Гшго'о si lOO Si J j Z U job J). • IF M
Г P«i»Alpha
, ; Г Edge Г Fain»
Г 6iisWt Г Hue fo
;
||
-Additional Effects-•
• Рис. 4 . 1 9 . Вкладка Options (Режимы) свитка Glow Element (Элемент сияния)
Для настройки параметров вкладки Options (Режимы) выполните следующие действия. 1. В области Apply Element To (Применить элемент к) установите или снимите следующие флажки: •
Lights (Источники света) — применение эффекта к источникам света, выбранным в области Lights (Источники света) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) вкладки Parameters (Параметры);
•
Image (Изображение) — применение эффекта к визуализированному изображению с использованием параметров области Image Sources (Источники изображения);
•
Image Centers (Центры изображения) — применяется к центру объекта (или группе объектов) с учетом настроек области Image Filters (Фильтры изображения).
2. В области Image Sources (Источники изображения) настройте параметры источников сияния. •
Object ID (Идентификатор объекта) — позволяет применять эффект к отдельным объектам сцены с назначенным каналом G-Buffer (G-буфер). G-буфер — это буфер графики, который может быть присвоен объекту в области Rendering Control (Управление визуализацией) окна Object Properties (Свойства объекта), вызываемого командой Properties (Свойства) контекстного меню объекта. Для применения эффекта к отдельным объектам сцены номера их каналов G-буфера должны совпадать с номерами в счетчике Object ID (Идентификатор объекта).
Окружение и атмосферные эффекты
185
•
Effects ID (Идентификатор канала эффектов) — указывает на то, что эффекты линзы будут применяться к объекту или части объекта с назначенным в окне Material Editor (Редактор материалов) номером Material Effects Channel (Канал эффектов материала), который соответствует каналу, установленному в поле Effects ID (Идентификатор канала эффектов).
•
Unclamp (Неограниченный цвет) — это цвет более яркий, чем белый цвет (со значениями всех параметров, равными 255). Параметр Unclamp (Неограниченный цвет) позволяет задавать минимальное значение, при достижении которого будет применяться эффект сияния к участкам изображения. При значении, равном 1, эффект будет применяться ко всем пикселам изображения, значения которых больше 255.
•
Surf Norm (Нормаль поверхности) — эффект сияния будет применяться к участкам поверхности, нормали которых находятся по отношению к камере в пределах углов, заданных при помощи параметра Surf Norm (Нормаль поверхности).
•
Whole (Вся сцена) — эффект сияния будет применен ко всей сцене с учетом значений параметров области Image Filters (Фильтры изображения).
•
Alpha (Альфа-канал) — позволяет применять эффект сияния к альфа-каналу изображения.
•
Z Hi (Верхний предел Z-буфера) и Z Lo (Нижний предел Z-буфера) — задают значения ближней и дальней границ диапазона сцены, базирующихся на расстоянии от съемочной камеры, в пределах которого будет рассчитываться эффект.
3. Задайте значения параметров, определяющих степень применения эффектов линзы, в области Image Filters (Фильтры изображения): •
АН (Все) — эффект сияния применяется ко всем пикселам сцены;
•
Edge (Ребро) — эффект будет применяться к краям областей пикселов, вызывая мягкий эффект гало по обе стороны от контуров;
•
Perim Alpha (Периметр альфа-канала) — эффект сияния проявится только на внешних границах объекта, определяемых при помощи альфа-канала;
•
Perim (Периметр) — эффект сияния подобен предыдущему, но применяется к объектам, не имеющим альфа-канала, и основывается на интерференции ребер объектов;
•
Bright (Яркость) — позволяет применять эффект только к тем областям, яркость которых выше, заданным этим параметром;
•
Hue (Цветовой тон) — эффект будет применяться только к тем областям, цветовой тон которых указан в поле образца цвета.
4. При помощи настроек области Additional Effects (Дополнительные эффекты) примените к эффектам линзы различные текстурные карты (например, Noise (Шум)). Установка флажка Apply (Применить) активизирует выбранную карту текстуры, а кнопка Radial Density (Радиальная плотность) позволяет настраивать кривую аналогично параметру Radial Falloff (Радиальный спад).
186
Глава 4. Основы визуализации
Остальные фильтры, которые доступны в окне Add Effect (Добавить эффект), позволяют получать следующие эффекты. •
•
Blur (Размытие) — позволяет применять размытие ко всей сцене и только к объектам сцены, исключая фон, базируясь на значениях яркости или используя для этого текстурную карту. С помощью эффекта Blur (Размытие) можно размыть изображение тремя способами: •
Uniform (Равномерный) — размытие применяется равномерно ко всему изображению;
•
Directional (Направленный) — создается эффект направленного размытия, подобно тому, при помощи которого изображают движение;
•
Radial (Радиальный) — радиальное размытие сцены, направленное в определенную точку.
Brightness and Contrast (Яркость и контраст) — настраивает параметры яркости и контрастности изображения. Может применяться для согласования визуализированных объектов сцены с фоновым изображением.
• Color Balance (Цветовой баланс) — управляет балансом цветовых составляющих изображения сцены. •
Depth of Field (Глубина резкости) — позволяет управлять размытием изображения по мере удаления от камеры. Для настройки расфокусировки изображения могут использоваться параметры области Focal Parameters (Параметры фокусировки), позволяющие задавать диапазон действия эффекта или использовать значения съемочной камеры. Данный фильтр позволяет имитировать съемку реальной камерой или фотоаппаратом.
•
File Output (Вывод в файл) — сохраняет визуализированное изображение сцены до того, как к нему будут применены какие-либо другие оптические эффекты, размещенные в списке ниже этого фильтра.
•
Film Grain (Зернистость) — имитирует естественную зернистость фото- или кинопленки.
•
Motion Blur (Размытие движения) — применяется для размытия движущихся объектов сцены, позволяя повысить реализм анимации за счет имитации эффекта размытия реальных съемочных камер.
•
Hair and Fur (Волосы и мех) — эффект, который появился в версии программы 3ds Max 8 и предназначен для визуализации волос. При помощи панели эффектов обеспечивается контроль над параметрами визуализации, размыванием движения, тенями и взаимодействием с другими объектами. Основные параметры эффекта сосредоточены в свитках настроек модификатора Hair and Fur (Волосы и мех).
Модуль Video Post (Видеомонтаж) Программный модуль Video Post (Видеомонтаж) предназначен для обработки визуализированных изображений с целью получения таких эффектов, как блики или свечение, создания межкадровых переходов, добавления внешних изображений и многого другого.
187
Модуль Video Post (Видеомонтаж)
Для доступа к модулю Video Post (Видеомонтаж) выполните команду Rendering • Video Post (Визуализация • Видеомонтаж). В результате откроется окно (рис. 4.20). Панель инструментов
Временная шкала
И Video Post
J8P.
1Я1 • ;••• Q u e u e
;•• Ц ] Adobe Ptemiec Transition F -
I
L « p Image Alpha - Щ goodyeai.ipg L. g j . Oulpute ipg
\Ш ^/Outftto. pan event
Окно очереди событий
jjS:O"
£100
! W;B40
Строка состояния
1
H:480
Окно шкалы времени
Рис. 4.20. Окно Video Post (Видеомонтаж)
В левой части окна Video Post (Видеомонтаж) размещается список элементов очереди событий видеомонтажа (VP Queue (Очередь видеомонтажа)), в правой части — окно шкалы времени (VP Timeline (Временная шкала видеомонтажа)), а сверху и снизу — панель инструментов и строка состояния.
Панель инструментов Video Post (Видеомонтаж) Панель инструментов Video Post (Видеомонтаж) содержит следующие кнопки: •
D New Sequence (Создать цепочку) — создает новую цепочку событий и ставит ее в новую очередь;
•
й£ Open Sequence (Открыть цепочку) — загружает сохраненную ранее цепочку видеомонтажа;
•
Ш Save Sequence (Сохранить цепочку) — сохраняет цепочку видеомонтажа на диске;
•
Hf Edit Current Event (Редактировать текущее событие) — открывает окно, в котором можно отредактировать текущее событие;
•
X Delete Current Event (Удалить текущее событие) — удаляет текущее событие;
•
О Swap Events (Переставить события) — меняет местами положение двух выделенных событий очереди;
•
& Execute Sequence (Выполнить цепочку) — запускает процесс визуализации изображения, заданного цепочкой событий видеомонтажа;
• |°-° Edit Range Bar (Редактировать диапазон действия) — позволяет редактировать диапазон времени действия события;
188
Глава 4. Основы визуализации
•
|sr Align Selected Left (Выровнять выделенные диапазоны влево) — выравнивает влево диапазоны действия выделенных событий;
•
=§| Align Selected Right (Выровнять выделенные диапазоны вправо) — выравнивает вправо диапазоны действия выделенных событий;
•
|ss[ Make Selected Same Size (Уравнять выделенные диапазоны) — делает диапазоны действия выделенных событий одинаковыми по продолжительности;
•
-\» Abut Selected (Состыковать выделенные диапазоны) — выравнивает конец одного выделенного события относительно начала другого;
•
lf@ Add Scene Event (Добавить событие-сцену) — добавляет изображение окна проекции в очередь видеомонтажа;
•
Щ Add Image Input Event (Добавить событие ввода изображения) — позволяет добавлять в качестве событий внешние изображения;
•
§ Add Image Filter Event (Добавить событие фильтрации изображения) — добавляет фильтры для обработки изображения;
•
Щ Add Image Layer Event (Добавить событие композиции изображений) — позволяет объединять несколько событий очереди, расположенных друг за другом;
•
Qj, Add Image Output Event (Добавить событие вывода изображения) — позволяет направить визуализированное изображение в файл или на внешнее устройство;
•
Ш Add External Event (Добавить внешнее событие) — добавляет в сцену событие, вызывающее для обработки изображения внешнюю программу;
•
£J Add Loop Event (Добавить событие-цикл) — позволяет настраивать циклическое повторение другого события очереди.
Очередь видеомонтажа Окно очереди видеомонтажа, расположенное в левой части окна Video Post (Видеомонтаж), представляет собой список событий, выполняемых последовательно сверху вниз. Если в списке присутствуют события, являющиеся дочерними по отношению к другим событиям сцены, то сначала выполняются они. На рис. 4.21 показан список событий очереди, в котором события будут выполняться в следующем порядке. . 1. Визуализируется вид из камеры (событие-сцена CameraOl). 2. Добавится внешний файл goodyear.jpg (событие ввода изображения). 3. К изображению файла goodyear.jpg будет применен фильтр Lens Effects Glow (Эффекты линзы, сияние) (событие фильтрации изображения). 4. Визуализация вида из камеры и внешний файл goodyear.jpg объединятся в одно изображение с использованием текстурной маски, указанной в событии Alpha Compositor (Альфа-объединитель) (событие композиции изображений). 5. Полученное изображение будет записано в файл с названием Outpute.jpg (Событие вывода изображения).
Модуль Video Post (Видеомонтаж)
189
Queue Щ^ Alpha Compositof | \-!$ CametaOl L A Lens Effects Glow ! -Щ goodyearjpg H j . Outpute.jpg
Рис. 4 . 2 1 . События очереди видеомонтажа
Таким образом, положение события в списке важно с точки зрения конечного результата. Событие можно удалить или переместить на новое место в очереди, щелкнув на его имени и перетащив в нужное место списка. Формирование последовательного списка событий происходит тогда, когда при добавлении событий в списке ничего не выделено. Чтобы добавить дочернее событие, необходимо выделить событие списка, которое должно стать родительским, и только после этого добавлять новое событие. События композиции изображений и события-циклы всегда добавляются как родительские события, а внешние события как дочерние.
События и фильтры видеомонтажа Модуль Video Post (Видеомонтаж) позволяет оперировать следующими типами событии. • Scene Event (Событие-сцена) — позволяет выбрать окно проекции, которое будет использовано для визуализации в очереди видеомонтажа. Для событиясцены можно настроить следующие параметры: •
назначить визуализатор из списка установленных;
•
настроить общие параметры визуализатора (такие, как визуализация эффектов, визуализация полями, смещения и т. д.);
•
включить или выключить из итоговой визуализации показ материалов, расчет теней, отражения и т. д.;
•
включить или выключить сглаживание и фильтрацию текстурных карт.
• Image Input Event (Событие ввода изображения) — позволяет добавлять в сцену статичное или анимированное изображение. В отличие от события-сцены это может быть ранее сохраненное на диске изображение или изображение, полученное с внешнего устройства. Для использования в качестве события ввода изображения можно использовать любые форматы графических файлов, поддерживаемых 3ds Max. Данное событие обычно используется для последующего применения к нему фильтров или в составе событий композиции. Событие ввода изображения позволяет настраивать следующие основные параметры: •
выравнивание, размер и диапазон кадров входящего изображения;
•
начало и конец действия события в рамках шкалы времени видеомонтажа.
• Image Filter Event (Событие фильтрации изображения) — позволяет применять фильтры для обработки событий-сцен или событий ввода изображения. Обычно
Глава 4. Основы визуализации
190
события фильтрации изображений являются родительскими по отношению к изображениям, к которым они применяются. Для использования доступны следующие типы фильтров. •
Contrast (Контраст) — настраивает контрастность и яркость изображения при помощи вызываемого окна Image Contrast Control (Контроль контрастности изображения).
•
Fade (Наплыв) — позволяет постепенно уменьшать или увеличивать интенсивность изображения. Применяется для создания переходов между отдельными изображениями или анимацией.
•
Image Alpha (Альфа-канал) — переопределяет альфа-канал изображения, к которому он применяется, на канал маски, заданный в настройках фильтра. Если маска не определена, то фильтр не оказывает действия. Настройка фильтра не требуется. Обычно применяется для отсечения ненужных участков изображения с целью последующего применения с событиями композиции.
•
Lens Effects (Эффекты линзы) — группа фильтров, позволяющая имитировать следующие эффекты: Flare (Блики) — блики на линзах объектива съемочной камеры; Focus (Фокусировка) — эффект размытия объектов, основанный на расстоянии от съемочной камеры; Glow (Сияние) — сияние вокруг объектов, к которым применяется данный фильтр; Highlight (Сверкание) — создание зеркальных бликов в виде звездочек.
•
Negative (Негатив) — инвертирует цвета изображения; эффект напоминает негатив цветной фотопленки.
•
Pseudo Alpha (Мнимый альфа-канал) — создает альфа-канал для изображений, не имеющих его, на основе цвета первого пиксела (первый пиксел — в верхнем левом углу изображения). Все пикселы изображения, имеющие такой же цвет, будут прозрачными. Обычно применяется для композиции изображений, не имеющих альфа-канала.
•
Simple Wipe (Шторка) — создает эффект открытия или закрытия изображения черной шторкой. Настройки данного фильтра позволяют управлять направлением движения шторки и режимом открытия/закрытия. Обычно этот эффект применяется в сочетании с событием Alpha Compositor (Альфа-объединитель) для создания эффекта наплыва одного изображения на другое.
•
Starfield (Звездное поле) — генерирует звездное небо с возможностью применения эффекта размытия. Для применения данного эффекта необходимо использовать вид из камеры.
• Image Layer Event (Событие композиции изображений) — событие, позволяющее объединять два изображения посредством фильтров. Оно всегда является родительским по отношению к двум дочерним изображениям, которые в свою очередь могут быть родительскими и иметь дочерние. Процесс объединения изображений может контролироваться при помощи маски прозрачности, задаваемой в области Mask (Маска). Доступны следующие типы фильтров-объединителей.
Модуль Video Post (Видеомонтаж)
191
•
Adobe Premiere Transition Filter (Фильтр переходных эффектов Adobe Premiere) — применяется для подключения фильтров межкадровых переходов программы Adobe Premiere. Для доступа к этим фильтрам необходимо указать путь в окне Adobe Premiere Transition Filter Setup (Настройка фильтров переходных эффектов Adobe Premiere).
•
Alpha Compositor (Альфа-объединитель) — объединяет два изображения, при этом для управления прозрачностью используется альфа-канал верхнего изображения.
•
Cross Fade Transition (Микширование наплывом) — создает переходы, при которых одно изображение проявляется на фоне другого. Время перехода определяется диапазоном действия события в окне шкалы времени.
•
Pseudo Alpha (Мнимый альфа-канал) — аналогично одноименному событию фильтрации изображения позволяет объединять два изображения, не имеющих альфа-канала.
•
Simple Additive Compositor (Суммирующий объединитель) — фильтр, аналогичный Cross Fade Transition (Микширование наплывом), но позволяющий использовать интенсивность второго изображения для определения прозрачности. Используется, когда изображение не имеет альфа-канала.
•
Simple Wipe (Шторка) — позволяет открывать/закрывать одно изображение другим, используя эффект шторки. Применяется для создания переходных эффектов.
•
External Event (Внешнее событие) — добавляет в очередь событие, которое вызывает внешнее приложение, предназначенное для обработки изображения.
•
Loop Event (Событие-цикл) — задает циклическое повторение других событий в итоговой визуализации. Всегда является родительским по отношению к применяемым событиям.
•
Image Output Event (Событие вывода изображения) — позволяет направить результат выполнения очереди событий для записи в файл или на внешнее устройство. Возможна запись в любой из графических форматов, поддерживаемых 3ds Max. Обычно является последним в очереди событий и при необходимости может повторяться неоднократно для записи в разные форматы графических файлов.
Часть 2
Практический курс Глава 5. Освещение Глава 6. Практическое моделирование Глава 7. Текстурирование Глава 8, Визуализация
До сих пор речь шла об интерфейсе программы и методах работы — теперь же вы с головой окунетесь в мир моделирования. Все упражнения, представленные в книге, не зависят друг от друга, поэтому вам необязательно выполнять их последовательно. Каждое упражнение посвящено определенной теме создания трехмерной графики. Опыт практической работы с программой показал, что каждое упражнение рождает новые идеи, которые могут быть в дальнейшем использованы в ваших собственных работах. Все главы сопровождаются файлами упражнений, которые находятся на прилагаемом к книге компакт-диске. Там же можно посмотреть и цветные иллюстрации.
Глава 5
Освещение • Основы освещения в трехмерной графике • Луч лазера • Объемный свет • Использование базовых источников света в интерьере
к Основы освещения в трехмерной графике
195
Правильное освещение значительно усиливает впечатление от простой сцены. Оно не только позволяет лучше передать форму предметов, но и создает общее настроение в сцене. При помощи ярких цветов и обилия света можно получить эффект праздника, а приглушенный свет и затененные предметы создадут ощущение напряженности и тревоги. Свет — это мощный инструмент в руках разработчика трехмерной графики, нужно только уметь правильно им пользоваться. В этой главе вы научитесь правильно ставить свет и строить тени, а также познакомитесь с объемным (видимым) светом.
Основы освещения в трехмерной графике Правильно выставленный свет может значительно улучшить посредственную сцену, и наоборот, если источники света расставлены произвольным образом, даже хорошо смоделированная сцена покажется «бедной». Грамотное освещение определяет общую атмосферу изображения. При помощи света можно передать настроение, напряженность, радость, тоску, подчеркнуть достоинства и скрыть недостатки, а также сделать многое другое. Существует несколько вариантов освещения. Наиболее часто встречаются два из них: трехточечное и местное (зонное). Местное применяется для освещения отдельных участков сцены и используется чаще всего в случае, когда сцена большая и ее невозможно эффективно осветить при помощи трехточечного освещения. Трехточечное освещение является базовым в трехмерном моделировании. В его основе лежат три источника света: ключевой, контурный и заполняющий (иногда можно встретить другие определения). Ключевой свет является основным. Обычно это самый яркий и освещающий большую часть сцены свет. Кроме того, это тот источник света, благодаря которому предметы в сцене отбрасывают тень. Контурный свет используется для разделения предметов и фона, что в свою очередь определяет глубину пространства. Такой источник света обычно находится позади объектов сцены и по интенсивности слабее ключевого света.
СОВЕТ Технические приемы и принципы работы с источниками света в трехмерных сценах не отличаются от используемых в фотографии, кино, театре и т. д. При желании больше узнать о типах освещения и их применении вы можете воспользоваться соответствующей литературой. Освещение часто является фундаментом для цветового моделирования, придающего сцене акцент и глубину. Предметы в сцене не будут выглядеть плоскими, если их прорисовать светотенью, то есть характером распределения освещенности по форме в зависимости от положения ее различных поверхностей по отношению к источнику света. Чтобы предметы выглядели объемными, на них должны
196
Глава 5. Освещение
присутствовать свет, блик, полутон, а на самой затененной части поверхности — собственная тень (рис. 5.1). Последняя всегда в той или иной степени подсвечена светом, отраженным от других предметов, так называемым рефлексом. Наконец, предметы отбрасывают от себя на соседние предметы падающую тень, которая обычно бывает темнее собственной тени. Только при правильном соотношении этих световых фаз можно с предельной правдоподобностью передать объем предмета.
Полутон Рефлекс Собственная тень Рис. 5 . 1 . Градации светотени
В природе каждый объемный предмет определенного цвета ограничивается кривыми или плоскими поверхностями, которые при освещении попадают в разные световые и цветовые условия. Лучи света, падая на различные поверхности предметов, освещают их неравномерно, отчего поверхности выглядят различными по тону и цвету. Одни части поверхности получают больше света, другие — меньше. Степень освещенности предмета изменяется, прежде всего, в зависимости от расстояния до источника света: чем ближе находится источник света, тем сильнее освещение. Степень освещенности поверхности зависит от угла падения лучей света, а также от фактуры и цвета самой поверхности. Гладкая, полированная поверхность лучше отражает свет, чем шероховатая или матовая. Поверхность темного цвета поглощает больше света, чем светлая. На очень темных и на очень светлых поверхностях светотеневые градации видны плохо, так как глаз не способен различать переходы слишком слабых (рис. 5.2) или сильных (рис. 5.3) световых оттенков.
Основы освещения в трехмерной графике
197
Рис. 5.2. Затемненная поверхность предмета
Рис. 5.3. Засвеченная поверхность предмета
Задача разработчика трехмерной графики состоит в том, чтобы найти правильное соотношение световых фаз за счет настроек и расположения источников света в пространстве виртуальной сцены, а также использования ее общей освещенности и создания эффекта глобального освещения. На предметах со сложным рельефом или орнаментом наиболее ясно детали видны в полутени, в тени же их четкость понижена. Собственная тень всегда в той или иной степени подсвечена светом, отраженным от других предметов. Падающая тень не имеет резких разграничений с собственной тенью. Тональности их сближены, контуры основания предмета сливаются с горизонтальной плоскостью. Чем ближе к предмету падающая тень, тем она темнее. Такая закономерность сохраняется на переднем плане. Внутри и на дальнем плане она высветляется рефлексами от окружения (рис. 5.4).
Рис. 5.4. Падающая тень
198
Глава 5. Освещение
Рефлексы не только высветляют тени, но и придают им свой цветовой оттенок. Свет, полутень, тень имеют на поверхности предмета определенное местоположение, а блик — нет, так как зависит не только от направления источника света, но и местоположения камеры (точки в пространстве, с которой мы видим предмет). На предметах с блестящими (глянцевыми) поверхностями блики и рефлексы ярче и определеннее по своим границам, чем на матовых и шероховатых. Форма и цвет их находятся в прямой зависимости от формы и цвета прямого или отраженного источника света. Чтобы лучше понять принцип действия источников света, создайте сцену. Используйте для этого простые примитивы Plane (Плоскость) и Teapot (Чайник). Расположите камеру и источники света так, как показано на рис. 5.5 и 5.6.
Рис. 5.5. Вид сцены в окне проекции Тор (Сверху)
Рис. 5.6. Вид сцены в окне проекции Front (Спереди) Рассмотрим более подробно процесс создания сцены, с которой вы будете работать в дальнейшем. Последовательность создания любой сцены приблизительно такова: сначала создаются объекты, затем располагается и настраивается камера и только после этого ставится свет. Прежде всего создадим плоскость, на которой будет располагаться чайник. Для этого выполните в главном меню команду Create • Standard Primitives • Plane (Создать • Стандартные примитивы • Плоскость) и в окне проекции Тор (Сверху) постройте плоскость произвольного размера.
Основы освещения в трехмерной графике
199
Для создания примитива Teapot (Чайник) выполните команду Create • Standard Primitives • Teapot (Создание • Простые примитивы • Чайник). В данном случае размер и плотность сетки чайника не имеют значения. Единственное требование, чтобы он располагался на плоскости и был сопоставим с ней по размерам.
СОВЕТ Возможно, вам будетудобнее использовать для создания объекта вкладку Create (Создание) командной панели.
Камера создается аналогичным способом. Выполните команду Create • Cameras • Target Camera (Создание • Камеры • Направленная камера). После того как построен объект и в сцене установлена камера, направленная на объект-чайник, можно переходить к созданию источников света. Прежде чем создавать источники света, нужно отметить, что освещение сцены зависит также от настроек подсветки в окне Environment (Окружающая среда), которые равномерно распределяют начальный уровень освещенности всех объектов. Начинать расстановку источников света в сцене следует с основного освещения, то есть с ключевого. Примерно 80 % сцены будет освещено именно этим источником света, поэтому необходимо правильно расположить его. Он должен в целом освещать всю сцену (или нужную часть). Такой источник света не должен быть слишком ярким, чтобы не засветить предметы, или темным, иначе исчезнет объем на визуализированном изображении. На рис. 5.7 показано, что получилось у меня после визуализации сцены с одним ключевым источником света. В данном случае я использовал Target Spot (Направленный с целью) с затуханием, чтобы оттенить задний план, на котором ничего нет (если бы в глубине сцены присутствовали другие объекты, то необходимо было бы их показать, увеличив световое пятно). Для его построения выполните команду Create • Lights • Standard Lights • Target Spotlight (Создание • Источники света • Стандартные источники света • Направленный с целью).
f '
" • •
• ••
:
V •"
. •:
ш
Рис. 5.7. Сцена, освещенная ключевым источником света
200
Глава 5. Освещение
Первое, что бросается в глаза при взгляде на готовое изображение, — отсутствие падающей тени, непонятное положение чайника в пространстве (он то ли стоит на плоскости, то ли висит в воздухе). Активизируйте в настройках источника света тень. Для этого в области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света в нижней части командной панели установите флажок On (Включить). Это позволит источнику света генерировать простые тени от объектов сцены (рис. 5.8).
Рис. 5.8. Появилась тень, и положение чайника на плоскости стало более естественным
Теперь чайник не висит в воздухе, а стоит на плоскости. Но вместе с тем он стал сливаться с тенью, в результате чего частично пострадало восприятие объема. Добавим в сцену источник света для контурного освещения. Для этой цели используем еще один Target Spot (Направленный с целью) (на рис. 5.5 и 5.6 он расположен справа от камеры). Естественно, что интенсивность его несколько ниже, чем ключевого источника, так как этот источник света является второстепенным и его основная задача в данном случае «оторвать» чайник от фона. Чтобы дать общее представление о том, какая интенсивность построенных источников света у меня в сцене, приведу значения параметров Multiplier (Яркость): для контурного источника света — 0,52, для ключевого света — 1,3. Произведите последнюю настройку для данного источника света, сняв флажок Specular (Цвет блеска), который находится в свитке Advanced Effects (Дополнительные эффекты). Для наших целей достаточно, чтобы этот источник света освещал область диффузного отражения, не создавая области зеркального отражения. В жизни это обычно отраженный свет от других предметов, который не имеет большой интенсивности и не способен генерировать яркие блики. Как только вы добавили этот источник света, объекты приобрели объем, а сцена — пространство (рис. 5.9). Применим небольшой трюк, который поможет улучшить восприятие предмета и сделать его цвет более естественным. Для этого сделаем источник контурного света цветным, что поможет передать цвет, отраженный от поверхности, на которой
Основы освещения в трехмерной графике
201
стоит чайник. Естественно, применяемый к источнику света цвет должен соответствовать цвету той поверхности, которая будет отражать свет (в нашем случае это плоскость, на которой стоит чайник). Цвет этой поверхности красно-коричневый, значит именно такой цвет должен присутствовать в свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) (рис. 5.10).
Рис. 5.9. Контурное освещение придало чайнику объем и отделило его от фона
тшшшшшшШш Рис. 5.10. Цвет, добавленный источнику света, придал чайнику более естественную окраску
ПРИМЕЧАНИЕ Для просмотра цветных иллюстраций к уроку воспользуйтесь прилагаемым к книге компакт-диском. Файлы урока, а также иллюстрации находятся в папке СН05.
Общее восприятие картины немного портит то, что на чайнике слишком темная собственная тень. Исправить положение поможет третий источник света — заполняющий. Его назначение — смягчить тени и полутени на предмете. Как и контурный, заполняющий свет не должен быть ярким и не должен создавать на поверхности объектов блики. В данном случае для построения источника освещения воспользуемся точечным источником света Omni (Всенаправленный). Для этого выполните команду
202
Глава 5. Освещение
Create • Lights • Standard Lights • Omni (Создание • Источники света • Стандартные источники света • Всенаправленный). Данный источник освещения должен находиться между двумя существующими источниками и быть позади камеры. Как уже говорилось выше, назначение его в том, чтобы равномерно заполнить светом промежуток между самым ярким местом на объекте и его собственной тенью. Как и для контурного, запретите в настройках заполняющего источника света создание области зеркального отражения, сняв флажок Specular (Цвет блеска). После этого можно посмотреть на результаты сделанных настроек (рис. 5.11).
Рис. 5 . 1 1 . В сцену добавлен заполняющий свет
Правильное расположение теней очень влияет на восприятие сцены зрителем. Управление тенями играет ключевую роль в использовании источников света. С чрезмерным или недостаточным количеством теней сцена не будет выглядеть реалистичной и убедительной. Отбрасывание теней представляет собой сложный процесс, именно тени добавляют в завершенную сцену реализм. Тени, построенные посредством трассировки лучей, требуют большое количество времени для визуализации, a Shadow Map (Тип отбрасываемой тени) в дополнение к используемому времени визуализации — еще и ресурсов памяти. Ограничение падения точечного света только той областью, которая требует теней, сэкономит время визуализации. Уменьшение количества объектов, отбрасывающих тени, при помощи настроек объекта или источника света также сократит расходы ресурсов на визуализацию. По умолчанию источники света работают с тенью Shadow Map (Тип отбрасываемой тени). Это относительно быстрая для просчета тень, но вместе с тем и наименее точная с точки зрения трассировки лучей и качества. Более правильную с физической точки зрения тень дает Ray Traced Shadow (Трассированная тень), но она. так же как и тень Shadow Map (Тип отбрасываемой тени), не становится светлее по мере удаления от предмета. Появление типа Area Shadow (Площадная тень) решило эту проблему. В некоторой степени недостатком Shadow Map (Тип отбрасываемой тени) и Area Shadow (Площадная тень) является значительное увеличение времени просчета сцены, особенно если в ней используется несколько источников света с такой
Основы освещения в трехмерной графике
203
тенью, а у Area Shadow (Площадная тень) указано большое значение размытия тени на краях. До создания таких теней существовали подключаемые модули или сценарии, которые генерировали по кругу дополнительные источники света на небольшом расстоянии друг от друга. Таким образом тени, создаваемые многими источниками, перекрывались при визуализации и давали размытый контур. Существует более простой и, что самое приятное, легкоуправляемый способ, который, однако, имеет некоторые ограничения. Он заключается в том, чтобы назначить источнику света с отрицательным значением параметра Multiplier (Яркость) созданную пользователем текстурную карту Projector Map (Карта проектора). Для построения такой карты нужно выделить источник света, который будет отбрасывать тень, и в любом окне проекции (например, в окне Left (Слева)) выбрать вид из этого источника. Для этого щелкните на названии окна проекции правой кнопкой мыши, в результате чего появится контекстное меню (рис. 5.12), в котором следует выбрать нужный источник света (в моем случае это SpotOl), выполнив команду Views • SpotOl (Вид • Объект SpotOl). CametaOl Smooth* Highlights у Wireframe Other Transparency
Show Safe Frame Viewport Clippmg Texture Correction DisableView
Cunfigure
Рис. 5.12. Контекстное меню для выбора вида отображения
Если вы все сделали правильно, то в окне проекции будет такой вид, как будто мы смотрим из камеры (рис. 5.13). Далее нужно исключить из визуализации все объекты, которые не будут отбрасывать тень. Сцена содержит всего два геометрических объекта: Plane (Плоскость) и Teapot (Чайник), но их может быть гораздо больше. Чтобы исключить объект из визуализации, выполните следующие действия. 1. Щелкните на нужном объекте правой кнопкой мыши. 2. В появившемся контекстном меню выберите пункт Properties (Свойства). В результате откроется окно Object Properties (Свойства объекта).
204
Глава 5. Освещение
3. Снимите флажок Renderable (Визуализируемый) в области Rendering Control (Управление визуализацией). 4. Щелкните на кнопке О К для подтверждения выполненных изменений.
Рис. 5.13. Вид со стороны источника света SpotOI
СОВЕТ Можно исключить объекты из визуализации и другим способом. Для этого выделите все «ненужные» геометрические объекты и щелкните на них правой кнопкой мыши. В появившемся контекстном меню выберите пункт Hide Selection (Спрятать выделенное).
Визуализируйте стандартными средствами вид из окна, в котором установлен источник света, с типовым значением разрешающей способности 800 х 600. После этого сохраните изображение в файл в формате, поддерживающем альфаканал (например, TIFF). Откройте сохраненный файл в программе растровой графики, например Adobe Photoshop, и, выделив альфа-канал, залейте его белым цветом. Если фон не черного цвета, то инвертируйте выделение и залейте все остальное черным цветом (то есть объекты сцены должны быть белыми, а фон черным, как показано на рис. 5.14).
Рис. 5.14. Карта теней на начальном этапе
Основы освещения в трехмерной графике
205
Как только вы это сделаете, можно переходить к созданию размытых краев на изображении. Это можно сделать разными способами, например воспользоваться программой Photoshop, где использовать для выделения градиентную маску, а затем применить фильтр размытия по Гауссу. Важно, чтобы по мере удаления от основания объекта (от плоскости, на которой стоит чайник и на которую он будет отбрасывать тень) размытие становилось более заметным (рис. 5.15).
Рис. 5.15. Законченная карта теней
Как только размытие будет готово, сохраните его в любом удобном для вас формате и продолжите работу в 3ds Max. Вернувшись в программу, нужно клонировать источник света, благодаря которому образуется тень (в данном случае это ключевой свет). Для этого выполните следующие действия. 1. Выделите источник света, который необходимо клонировать. 2. Выполните команду Edit • Clone (Правка • Клонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при дублировании объектов, установив переключатель в положение Сору (Независимая копия объекта). 3. В окне Clone Options (Параметры клонирования) также задайте объекту значимое имя, чтобы впоследствии было легче выбирать его из списка, например shadow. После этого активизируйте источник света (если он до сих пор не выбран) и разверните свиток Advanced Effects (Дополнительные эффекты), где в качестве Projector Map (Карта прожектора) выберите вашу карту тени (рис. 5.16).
S o f t e n » £%!:100 Р Diffuse Г Speette Г АяЫег* О * Protector Map:
-~~—~~з \
Р Map.pSII (oh05_1B.jpsf)jlj
:_~
.1
1"
Рис. 5.16. Свиток Advanced Effects (Дополнительные эффекты) для карты теней
206
Глава 5. Освещение
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите отрицательное значение параметра Multiplier (Яркость) (у меня эта величинаР ав4
Ю
СВещеНИЯ ч а й н и к
ч т о б ы те
ко на п л о ^ п ^ Г ° ( нь ложилась не на него, а только на плоскость). Для этого щелкните в свитке General Parameters (Общие параметры) на кнопке Exclude (Исключение) и в появившемся окне ЕхсЫе/ ndude (Включение/исключение) исключите чайник изi визуализации ч 17 визуализации (п„г (рис. 5.17).
Рис. 5.17. Окно Exclude/Include (Включение/исключение) с исключенным из освещения чайником
Теперь можно выполнить финальную визуализацию сцены (рис. 5.18).
Рис. 5.18. Результат финальной визуализации сц|,ены (
Луч лазера
207
Конечно, кроме достоинств, этот метод имеет и недостатки, один из которых — невозможность формирования падающих на объект теней от самого себя (как в данном случае с ручкой крышки). Однако часто можно добиться великолепных результатов при минимальных затратах сил, времени и компьютерных ресурсов.
ПРИМЕЧАНИЕ В папке CH05/Max/base_light прилагаемого к книге компакт-диска содержится файл сцены данного упражнения, который называется basejight.max.
Луч лазера Если вы решили создать заставку в стиле «Звездных войн» или нестандартно анимировать надпись, то вам не обойтись без такого эффекта, как луч лазера. В этом небольшом упражнении мы научимся создавать такой луч простыми средствами 3ds Max. Начнем с моделирования объектов сцены. Для этого постройте в начале координат примитив Teapot (Чайник), выбрав из главного меню Create • Standard Primitives • Teapot (Создать • Стандартные примитивы • Чайник) с параметрами, показанными на рис. 5.19. Parameters
Segments ( Т Г
}.
t]
I
b? Smooth -Teapot Pat's V? Body
1 • i
P Handle P Spout
WШ F Generate Mapping Coords,
Рис. 5.19. Свиток Parameters (Параметры) примитива Teapot (Чайник)
Излучение лазера можно представить в виде плотного луча направленного света, поэтому для его имитации как нельзя лучше подойдет направленный источник света с цилиндрическим излучением — Target Direct (Нацеленный направленный источник света).
СОВЕТ Вторым возможным вариантом создания такого луча может служить примитив Cylinder (Цилиндр), которому необходимо присвоить соответствующий материал.
208
Глава 5. Освещение
Для построения источника света, имитирующего луч, выполните следующие действия. 1. Выполните следующую команду главного меню: Create • Lights • Standard Lights • Target Directional (Создать • Светильники • Стандартные Светильники • Нацеленный направленный). 2. Постройте в окне проекции Тор (Сверху) источник света таким образом, чтобы луч проходил через примитив Teapot (Чайник). Сразу подкорректируйте положение источника света и его цели и в других окнах проекций. 3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение равное 5, а цвет луча сделайте ярко-красным (Red (Красный) — 255; Green (Зеленый) — 0; Blue (Синий) — 0) (рис. 5.20).
NearAttenuationГ to* Start: [ОЙ j]| Г Show End: ЩсГ" " -РагАвешайопи$е Slat 180.0 ||j Stow E«d:pOO0~:
Рис. 5.20. Свиток Intensity/Color/Attenuation (Интенсивность/цвет/затухание) с настройками для источника света
4. В свитке Directional Parameters (Параметры направленного источника света) задайте параметру Hotspot/Beam (Яркое пятно/луч) значение 0,5, a FaUoff/Field (Край пятна/область) — 2,5. Если сейчас выполнить визуализацию (например, нажав сочетание кравиш Shift+Q), то результатом будет небольшой красный круг на черном фоне. Это связано с тем, что единственный источник света, который мы используем в сцене, не освещает ничего, кроме небольшого участка на поверхности примитива Teapot (Чайник). В связи с этим необходимо добавить в сцену как минимум еще один источник — ключевой свет с небольшим значением параметра Multiplier (Усилитель), что позволит частично осветить объекты, а затем получить более контрастный луч лазера. ПРИМЕЧАНИЕ В предыдущем разделе мы рассматривали принципы создания и расстановки источников света в сцене. Используя полученные знания, вы можете создать не только ключевой, но и заполняющий свет, а также настроить тени, используя кроме объекта Teapot (Чайник) стандартный примитив Plane (Плоскость).
209
Луч лазера
На рис. 5.21 представлена визуализация сцены после добавления плоскости и двух источников света.
Рис. 5 . 2 1 . Визуализация сцены с расставленными источниками света
Перейдем к построению видимого луча света. Для этого выделите направленный источник света DirectOl и в свитке Atmospheres & Effects (Атмосфера и эффекты) командной панели щелкните на кнопке Add (Добавить). В открывшемся окне Add Atmosphere or Effect (Добавить атмосферу или эффект) выберите строку Volume Light (Объемное освещение) и щелкните на кнопке ОК (рис. 5.22). В результате этих действий в списке свитка Atmospheres & Effects (Атмосфера и эффекты) отобразится строка Volume Light (Объемное освещение).
•
Рис. 5.22. Окно Add Atmosphere or Effect (Добавить атмосферу или эффект)
Для настройки параметров эффекта щелкните в нижней части свитка Atmospheres & Effects (Атмосфера и эффекты) на кнопке Setup (Настройки), в результате чего откроется окно Environment and Effects (Окружающая среда и эффекты).
СОВЕТ Окно Environment and Effects (Окружающая среда и эффекты) можно также открыть, выполнив команду Rendering • Environment (Визуализация • Внешняя среда) главного меню или нажав клавишу 8. В этом случае выбор эффекта и источника света производится непосредственно в свитках Atmosphere (Атмосфера) и Volume Light Parameters (Параметры объемного освещения).
210
Глава 5. Освещение
В области Volume (Объем) свитка Volume Light Parameters (Параметры объемного освещения) окна Environment and Effects (Окружающая среда и эффекты) задайте параметру Density (Плотность) значение 12 (рис. 5.23). * ••Lights:
Volume tight Faaroeteis
Pick Light
f
; Remove Light flDrectoi
Volume:
~
FogCoioi
Attenuation Cob:
Г Exponential Density jTSO
Jj
Max LightX [ЖЙ
;j
Min Light Х.ЩГ t t e Attenuation Ш я ABen. M A fj!5 "z ] Filter Shadows \ С Low Г Medium *"" High ** Use Light Smp Range Г
p Agto
Рис. 5.23. Настройки цвета и плотности светового луча
В принципе, на этом можно было бы закончить настройки параметров, однако существует область параметров, на которую хотелось бы обратить ваше внимание, — это Noise (Зашумление). Иногда требуется создать эффект прохождения светового луча в задымленной или туманной среде. Именно настройка параметров области Noise (Зашумление) позволяет добиться такого эффекта. Примените этот эффект к лучу, для чего выполните следующие действия. 1. В области Noise (Зашумление) свитка Volume Light Parameters (Параметры объемного освещения) установите флажок Noise On (Включить шум). 2. Установите переключатель типа зашумления в положение Turbulence (Турбулентный). 3. Задайте параметру Levels (Уровни) значение 6, a Size (Размер) — 15. Сейчас можно выполнить окончательную визуализацию (рис. 5.24).
Рис. 5.24. Окончательная визуализация луча лазера
В этом небольшом упражнении вы научились делать лучи прожектора видимыми. Используя данный метод, можно добиться потрясающих эффектов не только для
Объемный свет
211
статичных, но и для анимированных сцен. Например, таким образом можно анимировать разрезание лазером, луч прожектора, устремленный в ночное небо, полет трассирующей пули или луч солнца. ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке CH05/Max/laser содержится файл сцены данного упражнения, который называется laser_beam.max.
Объемный свет Очень часто в процессе моделирования для придания сцене каких-то индивидуальных особенностей приходится применять различные трюки и эффекты. Одним из таких приемов является Volume Light (Объемный свет). Наверное, любой человек хотя бы раз в жизни наблюдал, как солнечный луч, проходя через оконное стекло запыленной комнаты, выхватывает из атмосферы взвешенные частицы пыли, создавая тем самым светящуюся область пространства. Это и есть эффект объемного освещения. Пытаясь воссоздать интерьер заброшенной комнаты или мастерской художника, в окно которой пробиваются лучи утреннего солнца, вы не обойдетесь без объемного освещения. Оно также применяется для создания эффектных рекламных надписей и т. д. В этом упражнении будет рассмотрено создание витража наподобие тех, которые до сих пор еще можно увидеть в окнах старинных церквей. ПРИМЕЧАНИЕ Слово витраж происходит от французского vitrage (стекло), и обозначает окна, иногда огромного размера, состоящие из кусочков разноцветного стекла, которые соединены свинцовыми элементами. Эти сверкающие прозрачные цветные стекла составляют какой-нибудь орнамент, иногда даже целые сюжетные картины.
Вам не понадобится моделировать отдельные части витража, так как создатели программы 3ds Max 8 позаботились о том, чтобы упростить данную задачу. Достаточно будет использовать растровое изображение s t a i n g l a s s . jpg, которое находится на прилагаемом к книге компакт-диске в папке CH05\Max\volume_light. Прежде всего необходимо построить модель комнаты с окном. Для этого подойдет примитив Box (Параллелепипед) с пропорциями, соответствующими комнате, которую вы хотите моделировать. ПРИМЕЧАНИЕ Вы можете пропустить описание процесса моделирования комнаты и загрузить с прилагаемого к книге компакт-диска готовую модель, которая находится в папке по адресу CH05\Max\vo!ume_light. Файл сцены называется volume_light_start.max.
Глава 5. Освещение
212
Чтобы создать параллелепипед, выполните команду Create • Standard Primitives • Box (Создание • Простые примитивы • Параллелепипед). После построения объекта, имитирующего внешнюю стену комнаты, вам понадобится еще один для внутренней стены (объемные стены нужны для последующего применения булевой операции для вырезания окна). Чтобы не строить второй параллелепипед, клонируем первый. Для этого, выделив объект, выполните команду Edit • Clone (Правка • Клонировать) и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Сору (Независимая копия объекта). Далее, не снимая выделения с вновь созданного объекта, щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов. Кнопка станет оранжевой. Щелкните мышью на объекте и немного уменьшите его, переместив указатель вниз.
СОВЕТ Копировать объект можно также, если активировать инструмент масштабирования и, удерживая клавишу Shift, щелкнуть на объекте и переместить указатель вниз. После этого появится окно Clone Options (Параметры клонирования), где следует выбрать тип создаваемых при дублировании объектов. Не снимая выделения с вновь созданного параллелепипеда, примените к нему модификатор Normal (Нормаль). Для этого выберите его в раскрывающемся списке вкладки Modify (Изменение) командной панели. В свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали) (рис. 5.25).
'•8 .
UH
^
К? Яр Nwnals
Рис. 5.25. Настройки модификатора Normal (Нормаль)
После этого выделите внутреннюю и внешнюю стены и соедините их. Для этого перейдите на вкладку Utilities (Утилиты) командной панели и щелкните на кнопке Collapse (Свернуть). Раскроется свиток Collapse (Свернуть), в котором нажмите кнопку Collapse Selected (Свернуть выделенное). ПРИМЕЧАНИЕ Если выбрав Utilities (Утилиты), вы не видите кнопки Collapse (Свернуть), то щелкните на кнопке More (Дополнительно) и выберите Collapse (Свернуть) из списка.
Объемный свет
213
Теперь создайте еще один параллелепипед по форме окна и расположите его в пространстве так, чтобы он пересекался со стеной, в которой будет располагаться окно. Выделите комнату. Перейдите на вкладку Create (Создание) командной панели, щелкните на кнопке Geometry (Геометрия), выберите из раскрывающегося списка строку Compound Objects (Составные объекты) и нажмите кнопку Boolean (Булев). В результате появятся настройки булевых операций (рис. 5.26).
[Compound Objects
Pick Booleert | Pick Opeiand В С Reference
<~ Copy
*
<~ Instance
Move
Paamelere ; : bpeiantb
il f
|A. Inner wall
Рис. 5.26. Панель с настройками булевых операций
В свитке Pick Boolean (Указать булев) щелкните на кнопке Pick Operand В (Указать операнд Б) и выберите параллелепипед, построенный по форме окна. В результате этих операций в стене образуется оконный проем. Чтобы видеть интерьер комнаты, расположите внутри нее камеру и источник света (например, Omni (Всенаправленный)). Снаружи напротив окна нужно установить еще один источник света. Это должен быть Target Spot (Направленный с целью), расположенный в пространстве таким образом, чтобы лучи света, проходя через окно, падали на пол комнаты (рис. 5.27).
Рис. 5.27. Взаимное расположение камеры и источников света в сцене
214
Глава 5. Освещение
Чтобы «застеклить» окно, воспользуйтесь примитивом Plane (Плоскость), подогнав его размер под форму оконного проема. После этого можно переходить к настройкам объемного света. Сделайте световое пятно на полу комнаты от направленного источника света, находящегося за окном. Для этого создайте новый материал с текстурной картой витража и присвойте его окну следующим образом. 1. В окне Material Editor (Редактор материалов) выберите свободный материал. 2. Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур). 3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) дважды щелкните на строке Bitmap (Растровое изображение). 4. В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением витража. 5. Вернитесь к настройкам материала, щелкнув на кнопке Go to Parent (Перейти к составному материалу). 6. Щелкните на кнопке Filter Color (Светофильтр) в свитке Maps (Карты текстур) и повторите п. 3 и 4 операции.
СОВЕТ Если необходимо создать две одинаковые карты текстуры, то можно щелкнуть на кнопке с загруженной картой и перетащить ее на кнопку, в которую необходимо вставить карту. 7. Вернитесь к настройкам материала. 8. Установите флажок 2-Sided (Двусторонний) в свитке Shader Basic Parameters (Основные параметры затенения). 9. Задайте параметру Opacity (Непрозрачность) значение равное 50, что позволит свету проходить через окно в комнату (рис. 5.28). Перед тем как выполнить первую визуализацию, настройте тени для источника света, который светит в окно, и цвет окружающей среды. Чтобы увидеть на полу световое пятно, необходимо включить отбрасывание теней при помощи данного источника света, причем тени должны быть типа Ray Traced Shadows (Трассированные тени). Чтобы витраж не казался темным и за ним угадывался яркий солнечный день, нужно в настройках окружающей среды изменять фоновый цвет на белый или светло-желтый. Для этого выполните команду Rendering • Environment (Визуализация • Окружающая среда). Откроется окно Environment and Effects (Окружающая среда и эффекты), где в свитке Common Parameters (Общие параметры) вкладки Environment (Окружающая среда) (рис. 5.29) сделайте необходимые изменения.
215
Объемный свет Shades Basic Parameter q
Г Wire
F 2-Sided
Г* Face Map Г" Faceted Btnn Basic Pwametets Self-lllumination
Г Соки ITocTij
Ambient:
|
M ;
Specula:
Specula Highlights Specular level:
fWjj
Glossiness [ 3 T " j ! So&erv foT" Z i +
Extended Parameters
•i
SupefSampbng
-
Map» Amount
Map
Г* Ambient Cotor... |100 j j
i
P
Diffuse Color... .JTGO" ZS
Мер Й6 (ttanglass.ipgj_
Г
SpeculaColoi . . p o o " ; !
More
f~ Specular level . J T o T e 5
None
Г* Glossiness . . . .[ibd" i
None
Г Г
None None
SelHIiumination. JTOO"; Opacty fToo":
| 7 Fitei Coloi Г" 6..—
J1GO J j Г5п—-!
Map MS tstainglass.jPB} н™«
j
\ !
Рис. 5.28. Настройки материала витража
Effects Сеть 'Юп Parameters
i:
Рис. 5.29. Свиток Common Parameters (Общие параметры) вкладки Environment (Окружающая среда)
После всех настроек можно визуализировать сцену. Если все было сделано правильно, то должно получиться цветное световое пятно на полу комнаты (рис. 5.30). Осталось добавить изображению объемный свет. Для этого необходимо сделать два изменения: добавить источнику света Projector Map (Карта прожектора) и эффект Volume Light (Объемный свет).
216
Рис. 5.30. Результат визуализации витража с трассированными тенями
Чтобы добавить Projector Map (Карта прожектора), выделите в сцене объект DirectOl
н Г Г Т * """^ " ' ***"* Advanced № н а
к
н
(Д о
п
к
^ ^ е
'
р
"
й
В результате откроется окно Material/Map Browser (Окно выбора материалов и в котором дважды щелкните на Bitmap (Растровое изображение) и ^ Г айл с изображением витража. Это позволит сделать лучи объемного цветными Цветными (в соответствии с растровой картой) (рис. 5.31).
Contrast: [ Ш Г Soften Ш. ЕфкГШГ F Diffuse F Specular Г" Ambient On|i г Projector Map:-
p
Map:pJ9(staing)tes.jpg|j|
т
е
^
( Д
°
П
~ ь н ы е эффекты) настроек источника света,
217
Объемный свет Atmosphere Effects: Add.
W Active
Mage
Name; jVolume Light Vofcime light Parameters plights;"— PfckUght
Lr~~
| Remove light iJDireclO.1
4
Volume; FegCOfat:
Attenuation Сок»
Г
Exponential
Density. [To Мак Light S: Щ?
t Jj
Min Light % JtTcT " ;| Use Attenuation Color Attea Mult: [Г§7 i ', Fite Shadows: I Г Low Г Medium ^ High « Lfse Light Srep Range
L
$тфVdkme, St. П
t j P" Auto
Рис. 5.32. Свитки настроек объемного освещения для осветителя DirectOI
После этого выполните финальную визуализацию (рис. 5.33).
Рис. 5.33. Результат финальной визуализации &£)
218
Глава 5. Освещение
ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке CH05/Max/volume_light содержится файл сцены данного упражнения, который называется volume_light_end.max. При желании вы можете использовать дополнительные настройки и получить новые эффекты. Например, применив Noise (Шум), можно получить эффект прохождения лучей света сквозь дым, а при помощи затухания добиться более реалистичного восприятия картины.
Использование базовых источников света в интерьере Современные визуализаторы, такие как mental ray, VRay, Final Render, Maxwell и др., могут использовать в расчетах глобальное освещение, что существенно облегчает работу, связанную с освещением, и повышает степень реалистичности визуализированных изображений. Со временем мы все больше и больше предоставляем программному обеспечению решать, как будет освещена и как будет выглядеть сцена при финальной визуализации. Все меньше времени мы затрачиваем на размещение и настройку источников света, и все еще значительное время требуется программе для того, чтобы рассчитать освещенность. Сейчас достаточно поместить в сцену один источник света, имитирующий солнце, и вся сцена будет заполнена отраженным светом — совсем как в жизни. Однако еще не так давно, выполняя визуализацию интерьера (или другую серьезную работу), приходилось настраивать десятки источников света, чтобы получить приемлемый результат. Использование базовых источников света является основополагающим в изучении и понимании освещения сцены. В данном разделе мы рассмотрим принципы расстановки и настройки источников света программы 3ds Max 8 для освещения интерьера и создания эффекта глобального освещения. В качестве примера я собираюсь использовать вариант визуализации интерьера кухни, выполненный при помощи подключаемого визуализатора VRay (рис. 5.34).
Рис. 5.34. Модель интерьера кухни, визуализированная при помощи модуля VRay ^ )
Использование базовых источников света в интерьере
219
Освещение сцены стандартными источниками света отличается от того, которое рассчитывается с учетом GI (Global Illumination) (Глобальное освещение). В этом упражнении мы попытаемся максимально имитировать GI, которое учитывает в своих расчетах отраженный свет. Для выполнения урока нам понадобится сцена, которую можно найти на прилагаемом к книге компакт-диске в папке CH05\Max\kitchen, файл называется k i t c h e n s t a r t . m a x . ВНИМАНИЕ Сцена, расположенная на компакт-диске, имеет свыше 600 000 полигонов. По этой причине на компьютерах со старыми видеоадаптерами изображение может медленно прорисовываться в окнах проекций. Чтобы ускорить прорисовку, можно спрятать неиспользуемые объекты или установить в настройках отображения режим Bounding Box (Габаритный контейнер). Для этого необходимо выполнить команду Customize • Viewport Configuration (Настройка • Конфигурирование окна проекции) главного меню и установить переключатель Rendering Level (Уровень визуализации) в соответствующее положение (рис. 5.35). Viewport Configuration Rendefing Method
j
Layout |
• Rendering Level С Smooth * Highlights
г
\
r
с с с a
Facets Ftat
гp
Lit Wireframes Wkeframe Bounding Box
p p
W Edged Faces " Transparency ~"™~" Г Smote
г гp
Facets + HighSghts
*
ftegions
Adaptive Degradation
Rendering Options
г
Smooth
С None
Safe Frames
Disable View Disable Textures 1 -: •.-. u s Certsotai Z-buff er Wieframe Objects Force 2-Sided Default Lighting в 1 Light
f
2Ughts
Shade Selected Faces Use Selection Brackets
i г Display Selected with Edged Faces г—Viewport CJpping Jj 1 1 Fast View Nth Faces: {5
p Apply To * Active Viewport Only f All Viewports С All but Active
Perspective U ser View Field Of View: |15.522
;j
Рис. 5.35. Окно Viewport Configuration (Конфигурирование окна проекции)
Начните упражнение с того, что откройте в программе 3ds Max 8 сцену и выделите стены, пол и потолок помещения. Для этого можно воспользоваться окном Select Objects (Выбор объектов), для вызова которого нажмите клавишу Н. В этом окне выберите из списка два объекта с именами Walls (Стены) и Ceiling (Потолок) и нажмите Select (Выделить) для подтверждения выбора. Затем в любом из окон проекций щелкните на выделенном объекте правой кнопкой мыши и выберите из
220
Глава 5. Освещение
контекстного меню строку Hide Unselected (Спрятать невыделенное). В результате у вас должны остаться в сцене только два объекта, имитирующие стены, пол и потолок кухни. Первое, что необходимо выполнить, настраивая освещение внутренних помещений при помощи стандартных источников света, — это создать общую освещенность сцены. Такая освещенность задает общее настроение в сцене и помогает зрителю определить время суток. Например, для яркого солнечного дня характерны теплые тона, а для искусственного освещения лампами дневного света — холодные. Создайте всенаправленный источник света, для чего выполните команду Create • Lights • Standard Lights • Omni (Создать • Источники света • Стандартные источники света • Всенаправленный) главного меню и в окне проекции Тор (Сверху) щелкните в левой половине модели кухни — именно там будем настраивать освещение сцены.
СОВЕТ Выполняя создание и настройку источников света, мы будем использовать вид из камеры Base view, установленной в сцене (показывает вид, представленный на рис. 5.34). В связи с этим я бы не рекомендовал менять положение вида из камеры, что позволит в дальнейшем контролировать процесс визуализации. Теперь необходимо выполнить предварительную настройку источника света. С учетом того, что мы будем создавать дневную освещенность с использованием солнечного света и гамма цветов пола, мебели и стен, которая преобладает в сцене, является в большей степени зеленовато-коричневой, значит и цвет окружающего освещения должен быть именно таким. Чтобы настроить созданный источник света, сделайте следующее. 1. Выделите построенный источник света и перейдите на вкладку Modify (Изменение) командной панели. 2. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 0,9 и выберите цвет со следующими характеристиками: Red (Красный) — 223; Green (Зеленый) — 210; Blue (Синий) - 191.
ПРИМЕЧАНИЕ Выбор цвета определяется не только общей цветовой гаммой интерьера, но и временем суток, которое нужно воспроизвести, созданием эффекта отраженного света, а также глобальной освещенностью сцены. 3. В области Far Attenuation (Затухание вдали) свитка Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите флажки Use (Использовать) и Show (Показывать), что позволит управлять распространением освещения в пространстве
Использование базовых источников света в интерьере
221
и сделать затемненными углы комнаты. Значения этих параметров должны быть такими, чтобы начало области затухания находилось внутри комнаты на небольшом расстоянии от внутренних стен, а окончание области затухания — за пределами кухни на значительном расстоянии. Например, значение Start (Начало) равно 3600 мм, a End (Конец) — 8500 мм. 4. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка) (рис. 5.36).
Show
Г Show £nd: 10.0
W Show
End' j 8500.0
*j
;
Advanced Effects Surfao
I. rn. P Ofcs* p P Ambient 0ф ~ Rojectoi Hap Г
Map:
.None
Рис. 5.36. Настройки источника света общей освещенности
ВНИМАНИЕ Установка флажка Ambient Only (Только подсветка) является очень важным фактором, так как именно этот параметр определяет то, каким образом будет использоваться источник света. В результате предметы сцены будут освещены равномерным светом с постепенным ослабеванием в зоне, определенной значениями параметров области Far Attenuation (Затухание вдали).
5. Перейдите в окно проекции Front (Спереди) и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) [ц[, масштабируйте источник света по вертикали. Это необходимо для того, чтобы граница начала затухания оказалась между полом и потолком комнаты. 6. Переместите источник света OmniOl вверх так, чтобы большая часть освещения попадала на потолок (рис. 5.37). Это вызвано тем, что потолок белого цвета и для передачи его освещенности требуется значительная интенсивность источника, в то время как пол будет дополнительно освещаться солнечным светом, проходящим через окна, и большая контрастность только усилит эффект солнечного освещения.
222
Глава 5. Освещение
~4-
Т:
J
(..1 - - - v, Jm
^ ^
\ ,;
Рис. 5.37. Расположение в сцене источника света OmniOl
Проведите тестовую визуализацию вида из камеры, для чего выполните команду Rendering • Render (Визуализация • Визуализировать) главного меню, в области Output Size (Выходной размер) открывшегося окна выберите требуемый размер и щелкните на кнопке Render (Визуализировать). СОВЕТ Изменяя размер итогового изображения, старайтесь сохранять отношение высоты к ширине, равное 1,77778, что позволит иметь такие же пропорции, как и у оригинального изображения.
Сравните полученное изображение с оригиналом и убедитесь в том, что цвет и яркость света созданного источника света соответствуют поставленным задачам. На рис. 5.38 показано визуализированное изображение помещения, которое должно получиться после настройки источника света OmniOl. Обратите внимание на следующие советы по настройке окружающего света. • Располагая источник света в комнате, смещайте его относительно центра ближе к потолку и стене, где расположены окна. Потолок, как правило, светлее стен и пола, а стена, на которой расположены окна, получает больше отраженного света, попадающего через эти окна в комнату. По мере удаления от окон свет постепенно затухает.
Использование базовых источников света в интерьере
223
Настраивайте области затухания источника света с таким расчетом, чтобы углы и удаленные от дневного света участки комнаты имели значительные затемнения. При необходимости масштабируйте источник света, чтобы получить желаемые области затухания. Задавайте такой цвет источнику, чтобы он создавал не только общее настроение в картине, но и имитировал отраженный свет. В нашем случае преобладание деревянной мебели и пола создает теплую светло-коричневую гамму, а зеленый цвет рабочей области кухни привносит этому тону зеленоватый оттенок. Устанавливайте такое значение параметра Multiplier (Усилитель) источника света, которое создаст освещение, похожее на освещение итогового изображения. Причем созданное освещение должно быть немного темнее итогового, так как в сцену еще будут помещены локальные источники света, которые увеличат общее освещение сцены.
Рис. 5.38. Помещение кухни, освещенное всенаправленным источником света
Если результат настройки общего освещения вас удовлетворил, можно переходить к созданию источника направленного света, имитирующего солнце. Для этого выполните следующие действия. 1. Выполните команду Create • Lights • Standard Lights • Target Directional (Создать • Источники света • Стандартные источники света • Нацеленный направленный) и в окне проекции Тор (Сверху) постройте светильник так, чтобы излучатель находился за пределами левой стены с окнами, а цель, на которую он направлен, — внутри помещения. 2. В окне проекции Front (Спереди) скорректируйте положение источника света так, чтобы угол, образованный источником света и полом комнаты, составлял около 35-40° (рис. 5.39).
224
Глава 5. Освещение
Рис. 5.39. Расположение направленного источника света в окне проекции Front (Спереди)
3. Перейдите на вкладку Modify (Изменить) командной панели и в свитке Intensity/ Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 2 и выберите цвет с такими параметрами: Red (Красный) - 233; Green (Зеленый) - 249; Blue (Синий) - 250. Настройка параметров свитка Intensity/Color/Attenuation (Интенсивность/цвет/ затухание) позволит создать яркий пучок света, проходящий через окна кухни и оставляющий на полу световое пятно. Светло-голубой цвет источника света создает дополнительный эффект отраженного неба. Выполните тестовую визуализацию и убедитесь, что все настройки сделаны правильно (рис. 5.40). .г.!.;:-:;:;.;.:-".::;;;;. ;. .
ШШ Рис. 5.40. Сцена, освещенная двумя источниками света
Использование базовых источников света в интерьере
225
Солнечный свет, попадающий в комнату, оставляет не только яркое световое пятно на полу и предметах быта, но и усиливает освещение предметов, расположенных в непосредственной близости от окна. В нашем случае это означает, что как минимум стены в оконном проеме и потолок должны получить дополнительное освещение.
ПРИМЕЧАНИЕ Для достижения максимальной реалистичности солнечного света необходимо освещать дополнительным светом не только оконные проемы и потолок, но и пол, а также предметы, расположенные в непосредственной близости от окна. В большинстве случаев для этого достаточно одного всенаправленного источника света, который будет оказывать влияние на определенные объекты. Это не входит в задачу данного урока, поэтому можете выполнить такую дополнительную настройку самостоятельно. Чтобы осветить оконный проем, необходимо построить два источника света: один для освещения простенков, а второй — для оконного переплета. 1. Постройте нацеленный источник света, для чего выполните команду Create • Lights • Standard Lights • Free Spotlight (Создать • Источники света • Стандартные источники света • Направленный без цели) и в окне проекции Right (Справа) щелкните мышью в середине оконного проема. 2. В онке проекции Тор (Сверху) разместите построенный источник света так, чтобы он находился внутри комнаты на небольшом расстоянии от оконного проема. 3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) настроек свободного источника задайте параметру Multiplier (Усилитель) значение равное 0,6. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка), как мы уже это делали для всенаправленного источника света. 4. В свитке Spotlight Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение равное 0,71 (рис. 5.41).
Рис. 5 . 4 1 . Свиток Spotlight Parameters (Параметры прожектора) с настройками нацеленного источника света
5. Параметрам Hotspot/Beam (Яркое пятно/луч) и Fallout/Field (Край пятна/поле) задайте такие значения, чтобы освещение простенков начиналось от угла, не затрагивая стен кухни. В моем случае это 144,5 и 147,4 соответственно. В вашем
226
Глава 5. Освещение
случае могут быть несколько иные значения, которые зависят от удаленности источника света от оконного проема, на который он светит. 6. В свитке General Parameters (Общие параметры) щелкните на кнопке Exclude (Исключение) и в открывшемся окне Exclude/Include (Включение/исключение) выберите из списка, расположенного слева, объект Curtains (Шторы). Щелкните на кнопке » для перемещения его в список объектов, на которые не должен влиять источник света. Размещенный в окнах проекций и настроенный источник света FspotOl должен выглядеть, как показано на рис. 5.42.
Рис. 5.42. Расположение источника света FspotOl в окне проекции Perspective (Перспектива)
Если сейчас выполнить тестовую визуализацию, можно обратить внимание на то, что не только простенки приобрели соответствующее освещение, но и оконная рама стала белого цвета, то есть пересвечена. Исправить положение поможет создание источника света с отрицательным значением параметра Multiplier (Усилитель). В данном случае оптимальным будет использование источника света с параллельными лучами, чтобы освещение по всей поверхности оконной рамы оставалось равномерным. Для построения такого источника света сделайте следующее. 1. Выполните команду Create • Lights • Standard Lights • Directional (Создать • Источники света • Стандартные источники света • Направленный источник света) и в окне проекции Right (Справа) щелкните кнопкой мыши в середине оконного проема (в месте расположения светильника FspotOl). 2. В окне проекции Тор (Сверху) переместите источник света по оси X так, чтобы он занял свое положение в середине оконного проема.
Использование базовых источников света в интерьере
227
3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение -0,45. 4. В свитке Directional Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте такое же значение, как и для предыдущего светильника, — 0,71. Настройте также значения параметров Hotspot/Beam (Яркое пятно/луч) и Fallout/Field (Край пятна/поле) таким образом, чтобы светильник охватывал всю поверхность оконной рамы. В моем случае эти значения равны 670 и 720 соответственно. Выполните тестовую визуализацию и оцените результат настроек источников света для освещения окна (рис. 5.43).
Рис. 5.43. Визуализация вида из камеры с установленными светильниками для дальнего окна
Если все сделано правильно, то можно переходить к созданию источника света, который будет играть роль засветки от окна на потолок.
ПРИМЕЧАНИЕ Для большего контроля над созданием и настройкой светового пятна на потолке последний был выделен в отдельный объект, что позволило освещать эту область модели независимо от других объектов. Если вы когда-нибудь рассматривали потолок своей квартиры в солнечный день, то могли обратить внимание, что свет от окна распределяется в виде трапеции и затухает по мере удаления вглубь комнаты. Такой эффект может создать нацеленный источник света. Для его построения сделайте следующее. 1. Выполните команду Create • Lights • Standard Lights • Target Spotlight (Создать • Источники света • Стандартные источники света • Направленный с целью) и в окне проекции Тор (Сверху) щелкните кнопкой мыши с внешней стороны
Глава 5. Освещение
228
оконного проема и, переместив указатель мыши по другую сторону окна в помещение кухни, щелкните еще раз для создания цели. 2. Расположите построенный источник света и его цель в окне проекции Front (Спереди) так, чтобы он светил через оконный проем на потолок (рис. 5.44). ;:
.
i
,
.
•
,.
Рис. 5.44. Расположение источника света, направленного на потолок
3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 0,75. В области Decay (Ослабление) выберите из списка Туре (Тип) строку Inverse (Обратное), а параметру Start (Начало) задайте значение 900. Таким образом, по мере удаления от источника света освещенность потолка будет ослабевать. Кроме того, для источника света можно выбрать светло-голубой цвет, что соответствует дневному свету в яркий солнечный день. 4. В свитке Spotlight Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение 0,78. Для параметров Hotspot/Beam (Яркое пятно/луч) и Fallout/Field (Край пятна/поле) выберите такие значения, чтобы освещение потолка начиналось недалеко от места пересечения его со стеной и, расширяясь, уходило в глубь комнаты. В окне проекции Тор (Сверху) границы светового пятна должны определять угол распространения света, начиная от оконного проема. В моем случае эти значения равны 30 и 65 соответственно.
ПРИМЕЧАНИЕ Обычно значения затухания света и светового пятна подбираются опытным путем в зависимости от положения и поворота источника света в пространстве, а также от расстояния до объекта, на который он светит.
Использование базовых источников света в интерьере
229
5. В свитке General Parameters (Общие параметры) щелкните на кнопке Exclude (Исключение) и в открывшемся окне Exclude/Include (Включение/исключение) выберите из списка, расположенного слева, объекты Carniz (Карниз) и Ceiling (Потолок). Щелкните на кнопке » для перемещения этих объектов в правый список. Здесь также установите переключатель в положение Include (Включить) для использования этих объектов в освещении. Все остальные объекты сцены будут игнорированы. 6. В области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света установите флажок On (Включить) и выберите из раскрывающегося списка строку Shadow Map (Карта тени). 7. Перейдите к свитку Shadow Map Params (Параметры карты тени) и задайте параметру Sample Range (Диапазон выборки) значение 40, что позволит получить мягкие размытые тени от карнизов на потолке. После того как будут выполнены предварительные настройки, скопируйте три только что созданных источника света, предназначенных для освещения окна и потолка, для второго окна кухни. Это можно сделать, воспользовавшись командой главного меню Edit • Clone (Правка • Клонировать). В появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при дублировании объектов Instance (Привязка), что позволит в дальнейшем изменять параметры освещения сразу двух окон. Теперь нужно выполнить тестовую визуализацию, перед которой следует отобразить карниз и шторы, чтобы увидеть, как освещение окна выглядит в целом. Для этого перейдите на вкладку Display (Отображение) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В появившемся окне Unhide Object (Отобразить объекты) выберите два объекта: Carniz (Карниз) и Curtains (Шторы). Визуализируйте вид из камеры и сравните с результатом, который получил я. Он показан на рис. 5.45.
'"
-• v Si*
Рис. 5.45. Визуализация сцены с установленными источниками света для окон кухни
230
Глава 5. Освещение
На представленном изображении явно виден недостаток освещенности стены рядом со шторами. Дело в том, что солнечный свет, попадая через окно на белые шторы, неминуемо вызовет отражение света, которое создаст светлые области на стене в местах расположения штор. Осветлить стены можно при помощи всенаправленного источника света. 1. Выполните команду Create • Lights • Standard Lights • Omni (Создать • Источники света • Стандартные источники света • Всенаправленный) и в окне проекции Right (Справа) щелкните в середине одной из штор. В окне проекции Тор (Сверху) переместите его по оси X так, чтобы он занял свое место между шторой и стеной. 2. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 0,15. В области Far Attenuation (Затухание вдали) установите флажки Use (Использовать) и Show (Показывать). 3. При помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) масштабируйте источник света в вертикальной и горизонтальной плоскости так, чтобы область распространения света оказалась немного больше шторы (рис. 5.46). •
Рис. 5.46. Форма и положение в пространстве источника света Omni02 4. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка), чтобы получить равномерно ослабевающее освещение стены в местах размещения штор. 5. Копируйте источник света OmniO2, чтобы разместить аналогичное освещение по всем сторонам, где находятся шторы. Как при настройке освещения оконных проемов, в окне Clone Options (Параметры клонирования) установите переключатель Object (Объект) в положение Instance (Привязка), что в дальнейшем позволит редактировать параметры сразу всех источников света, расположенных в районе штор.
Использование базовых источников света в интерьере
231
СОВЕТ Одним из быстрых способов создания копий является перемещение объекта в окне проекции с нажатой клавишей Shift.
Выполните тестовую визуализацию и при необходимости подкорректируйте параметры источников света. Освещенность сцены должна быть такой, как показано на рис. 5.47.
Рис. 5.47. Сцена с дополнительными источниками света, расположенными позади штор
Рассмотрим еще одну особенность применения стандартных источников света для освещения объектов сцены. На сей раз создадим эффект затенения, который можно наблюдать позади предметов, расположенных в непосредственной близости от стен. Чтобы продолжить упражнение, перейдите на вкладку Display (Отображение) командной панели. В свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В появившемся окне Unhide Object (Отобразить объекты) выберите объект Picture (Картина). Если сейчас выполнить визуализацию, то окажется, что созданные источники света не влияют на отображение картины, и она скорее напоминает аппликацию, чем объемный предмет. Вокруг картины должна быть тень, так как она расположена близко к стене и помещена в черную рамку. Эту тень несложно создать при помощи направленного света с отрицательным значением параметра Multiplier (Усилитель). 1. В окне проекции Right (Справа) создайте источник света Directional (Направленный) и расположите его в середине картины. В окне проекции Тор (Сверху) переместите его по оси X так, чтобы он расположился впереди картины на небольшом расстоянии. 2. В свитке Directional Parameters (Параметрами направленного источника света) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение 0,75. Параметрами Hotspot/Beam (Яркое
232
Глава 5. Освещение
пятно/луч) и Fallout (Край пятна/поле) подберите такие значения, чтобы световой луч находился на краях либо внутри картины, а край пятна — на небольшом расстоянии от нее (рис. 5.48). В моем случае эти значения равны 218 и 273 соответственно.
тшшшЯЯ
Рис. 5.48. Направленный источник света, расположенный перед объектом Picture (Картина)
3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значние -0,1. 4. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка). Если сейчас выполнить визуализацию, то вы увидите что картина, висящая на стене, приобрела объем, которого ей не хватало. Аналогичным способом выполняется установка и настройка источника света между холодильником и стеной (рис. 5.49).
ВНИМАНИЕ Дальнейшие настройки освещения сцены потребуют значительно большего времени для визуализации, что может вызвать проблемы обновления окон проекций на слабых компьютерах. По этой причине рекомендую для выполнения упражнения использовать только часть объектов, присутствующих в сцене. Чтобы вы могли создавать и настраивать источники света в собственных сценах, необходимо рассмотреть еще два способа настройки стандартных источников.
233
Использование базовых источников света в интерьере
Рис. 5.49. Визуализация с затенением, созданным источниками света с отрицательным значением параметра Multiplier (Усилитель)
Откройте спрятанные в самом начале упражнения объекты сцены и выполните тестовую визуализацию. Внимательно рассмотрите полученное изображение и сравните его с оригинальным (см. рис. 5.34), выполненным при помощи визуализатора VRay. Первое, что бросается в глаза, — это отсутствие у визуализированного изображения теней, позволяющих подчеркнуть объем предметов, присутствующих в сцене (рис. 5.50). Свет, проходящий на кухню через окна, должен усиливать освещенность фасадов кухни и затенять боковые стороны. Это же правило относится и ко всем остальным предметам сцены.
IP
jjgjljllp
4ТШ
|]
Рис. 5.50. Визуализация сцены без настроек освещения мебели и бытовых приборов
Первое, что необходимо сделать, — использовать источник света с отрицательным значением параметра Multiplier (Усилитель) для затенения боковых сторон объектов
234
Глава 5. Освещение
аналогично тому, как мы делали для картины, висящей на стене. В данном случае источник света должен располагаться правее и немного ниже всех объектов таким образом, чтобы в зоне его действия оказались нижние плоскости подвесных шкафчиков, боковые стенки и стол со стульями (рис. 5.51).
I '"•ЩЖ
••:'.
• ' :
"
•
.
'
. •
Рис. 5 . 5 1 . Расположение направленного источника света, затеняющего стороны объектов, противоположных стене с окнами
Кроме того, для данного источника света следует исключить из освещения объекты Walls (Стены) и Celling (Потолок). Сделать это можно, щелкнув в свитке General Parameters (Общие параметры) на кнопке Exclude (Исключить). Откроется окно Exclude/Include (Включение/исключение), в котором следует переместить из левого списка в правый объекты, на которые не должно распространяться освещение. Следующим шагом будет моделирование еще одного источника света, на сей раз создающего мягкую подсветку со стороны окон и размытые тени вокруг объектов сцены. В роли такого источника снова будет выступать Target Directional (Нацеленный направленный). Постройте уже известным вам способом источник света. Расположите его со стороны окон и направьте на кухонную мебель. Ширина светового пятна должна быть такой, чтобы покрыть всю ширину от холодильника до противоположной стены (рис. 5.52).
Использование базовых источников света в интерьере
235
Рис. 5.52. Расположение направленного источника света для создания дополнительной подсветки кухонной мебели
Настройте следующие параметры источника света. 1. В свитке General Parameters (Общие параметры) построенного источника света щелкните на кнопке Exclude (Исключение). В открывшемся окне Exclude/Include (Включение/исключение) выберите из списка, расположенного слева, объекты, которые необходимо исключить из освещения. В нашем случае это Walls (Стены), Table&Chairs (Стол и стулья), Curtains (Шторы) и Ceiling (Потолок). 2. В области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света установите флажок On (Включить) и выберите из раскрывающегося списка строку Shadow Map (Карта тени). 3. В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите значение параметра Multiplier (Усилитель) 0,2. Небольшое значение этого параметра объясняется тем, что мы создаем иллюзию непрямого освещения, и нет необходимости высвечивать объекты. 4. В свитке Advanced Effects (Дополнительные эффекты) задайте параметру Soften Diff. Edge (Размытие краев диффузного света) значение 100, что позволит смягчить границы диффузного отражения и подсветки. 5. В области Object Shadows (Тень объекта) свитка Shadow Parameters (Параметры тени) задайте параметру Dens. (Плотность) значение -0,3 и измените цвет тени на белый или светло-серый. СОВЕТ Отрицательное значение параметра плотности карты тени и белый цвет позволят получить инверсную тень, имеющую равномерное распределение затенения во внутренней ее части, чего не удастся достичь обычным способом.
236
Глава 5. Освещение
6. Разверните свиток Shadow Map Params (Параметры карты тени) и задайте параметру Sample Range (Диапазон выборки) значение 40, а параметру Size (Размер) — 600, что позволит получить мягкие размытые края. После установки всех настроек выполните тестовую визуализацию и оцените полученный результат. Изображение, которое получилось у меня после создания и настройки вышеописанного источника света, представлено на рис. 5.53.
-
i • I
if
!
Я
к,
. •
•:
111 I ЩЩ
S £
'
•
•
•
•
•
Рис. 5.53. Визуализированное изображение с тенями и дополнительной подсветкой
Изображение стало выглядеть значительно лучше, но все еще не хватает общей глубины тени и теней от мелких и тонких объектов, например ручек шкафчиков. ПРИМЕЧАНИЕ На самом деле небольшие объекты также отбрасывают тень, но использованный нами Sample Range (Диапазон выборки) оказывает такое влияние на размытие тени, что она становится практически незаметной.
Для усиления затененных участков необходимо установить еще как минимум два Directional (Направленный источник света) параметра Multiplier (Усилитель) с отрицательным значением. Их следует расположить в проеме между шкафчиками над вытяжкой (направленный вниз) и возле правой стороны холодильника (вертикальный источник света, направленный в сторону кухни). Тень для мелких предметов можно создать двумя способами. • Сделать источник света со значением параметра Multiplier (Усилитель), близким к нулю (чтобы не оказывать дополнительное влияние на общую освещенность сцены) и с отрицательным значением параметра Dens. (Плотность), расположенным в свитке Shadow Parameters (Параметры тени).
Использование базовых источников света в интерьере
237
• Создать два источника света, один из которых является копией другого с той лишь разницей, что его значение противоположно значению параметра Multiplier (Усилитель), а в области Shadows (Тени) свитка General Parameters (Общие параметры) снять флажок On (Включить). Рассмотрим первый вариант, как более простой и менее очевидный. Создайте новый Target Directional (Нацеленный направленный) или скопируйте последний построенный. Размеры и расположение в сцене должны быть приблизительно такими, как и у предыдущего источника света. Таким образом, строящиеся тени будут соответствовать размытым, построенным ранее. Задайте параметру Multiplier (Усилитель), расположенному в свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание), значение 0,01. Осталось настроить параметры тени. Для этого выполните следующие действия. 1. В области Shadows (Тени) свитка General Parameters (Общие параметры) установите флажок On (Включить) и выберите из раскрывающегося списка строку Area Shadows (Площадная тень). 2. В области Object Shadows (Тень объекта) свитка Shadow Parameters (Параметры тени) задайте параметру Dens. (Плотность) значение -0,1 и измените цвет тени на белый или светло-серый. 3. Параметрам свитка Area Shadows (Площадная тень) укажите значения, представленные на рис. 5.54. г -
.
AreaSfiadows
-Basic Options[Rectangle Light Г
2 Sided Shadows
• Anitaliasing Options Shadow Integrity: (T Shadow Quality: P ^
rj
Sample Spiaad: |ШГ" ?j Shadow Вia*10.0 t j Jitter Amount, j 3.01 Jj Area Usjht Dimensions Length: J400,0mr £ j Width: |400.0mr J]
i
i!^^l!-.,!..'!.'.'.liZ-iil Рис. 5.54. Параметры свитка Area Shadows (Площадная тень) для точной настройки теней
После изменений настроек источника света можно выполнить окончательную визуализацию (см. рис. 5.34). Подведем итоги выполненного упражнения. Одна и та же сцена может быть освещена различными способами, причем если у вас нет в наличии модулей для визуализации с использованием глобального освещения или вы не умеете ими пользоваться, то вполне можно обойтись стандартными источниками света. Кроме того,
238
Глава 6. Практическое моделирование
такое решение подразумевает творческий подход и максимальную свободу использования света. Не лишним будет сказать, что тестовая сцена с использованием визуализатора VRay на компьютере с 2 Гбайт оперативной памяти и процессором 3,2 ГГц просчитывалась 1 час и 28 минут, а с использованием стандартных источников света — 7 минут. ПРИМЕЧАНИЕ Если у вас возникли затруднения с расстановкой или настройкой источников света, то вы можете загрузить файл kitchen_end.max, который находится на прилагаемом к книге компакт-диске в папке CH05\Max\kitchen, и проанализировать настройки установленных в сцене источников света.
Глава 6
Практическое моделирование • Натюрморт • Моделирование лофт-объектов • Моделирование штор • Полигональное моделирование телефонной трубки • Моделирование микроволновой печи • Комплексный подход к моделированию: создание крана для ванной
240
Глава 6. Практическое моделирование
Нет ничего более увлекательного при работе с программами трехмерного моделирования, чем создание объектов сцены. Именно в процессе моделирования обретают форму фантазии и мечты. Нет необходимости говорить о том, что для создания модели, способной удивить зрителя, надо обладать большим терпением и определенным багажом знаний. В этой главе вы научитесь основным приемам моделирования, начиная с простых упражнений и постепенно переходя к решению более сложных задач. Мы рассмотрим сплайновое, полигональное, Surface- и NURBS-моделирование. Полученные в этой главе знания помогут вам создавать более сложные модели, о которых пойдет речь в следующих главах. Эти базовые знания станут основой для моделирования автомобиля и головы персонажа, о которых пойдет речь в третьей части книги.
Натюрморт Изучая моделирование трехмерных объектов, мы стремимся создавать большие и сложные работы, но оказывается, что простыми средствами можно добиться вполне приемлемых результатов. Ключ к успеху не только в том, чтобы модель или сцена была сложной, но и в том, как подать эту сцену, как расположить источники света и выполнить текстурирование. Рассмотрим упражнение по моделированию натюрморта простыми и доступными всем средствами программы 3ds Max. На рис. 6.1 показан результат визуализации сцены, выполненной с использованием инструментов и модификаторов, доступных еще во второй версии программы.
Рис. 6.1. Натюрморт
Если внимательно посмотреть на эту сцену, то можно увидеть, что все объекты выполнены на основе примитивов или при помощи стандартных модификаторов
Натюрморт
241
и не представляют большой сложности для исполнения. Центральное место композиции занимает бронзовая ваза — с нее и начнем моделирование. Вы уже знаете, что проще всего симметричные предметы, имеющие ось вращения, строить с использованием модификатора Lathe (Вращение). Не станет исключением и ваза для фруктов. Начнем моделирование с построения ее профиля при помощи сплайна. Для этого сделайте следующее. 1. Выполните команду Create • Shapes • Line (Создать • Формы • Линия) и в окне проекции Front (Спереди) начните построение сплайна формы вазы (рис. 6.2).
СОВЕТ Начинайте построение формы профиля для тела вращения с вертикальной линии, определяя таким образом начальную и конечную точку сплайна, постепенно добавляя новые вершины (команда Refine (Уточнить)) и редактируя их положение в пространстве. Кроме того, можно строить профиль, последовательно создавая вершины от начала до конца. В этом случае необходимо следить за тем, чтобы первая и последняя вершины сплайна находились на оси вращения, для чего используйте привязки к сетке.
Рис. 6.2. Профиль будущей вазы
2. Примените к построенному сплайну модификатор Lathe (Вращение), для чего выполните команду Modifiers • Patch/Spline Editing • Lathe (Модификаторы • Редактирование патчей/сплайнов • Вращение). 3. В области Align (Выравнивание) свитка Parameters (Параметры) щелкните на кнопке Min (Минимум), чтобы установить ось вращения по левой стороне объекта.
242
Глава 6. Практическое моделирование
ПРИМЕЧАНИЕ Вполне возможно, что вам понадобится выбрать другой тип выравнивания, все зависит от того, как построена кривая профиля. 4. Параметру Segments (Сегменты) свитка Parameters (Параметры) задайте значение от 30 до 40, чтобы избежать неровностей на краях построенного объекта. 5. При необходимости перейдите в стеке модификаторов на уровень редактирования кривой и, нажав кнопку Show end result on/off toggle (Показать конечный результат вкл/выкл), которая находится под стеком модификаторов, измените форму кривой так, чтобы получить приемлемый результат (рис. 6.3).
шШШШШШттхШттттттШЩ
Рис. 6.3. Ваза, построенная при помощи модификатора Lathe (Вращение)
Ваза построена, пришло время наполнить ее фруктами. Вспомните процесс моделирования яблока, рассмотренный во второй главе. В том случае мы строили параметрический объект Sphere (Сфера) и при помощи плавного выделения изменяли положение выделенных вершин, чтобы получить форму яблока. После этого для придания модели большей реалистичности применили модификатор Noise (Шум). Еще одним простым способом построения модели яблока может быть применение модификатора Lathe (Вращение), который мы только что использовали для создания вазы. Для построения модели яблока сделайте следующее. 1. В окне проекции Front (Спереди) постройте сплайн формы яблока уже известным вам способом (рис. 6.4). 2. Примените к сплайну модификатор Lathe (Вращение), выполнив команду Modifiers • Patch/Spline Editing • Lathe (Модификаторы • Редактирование патчей/ сплайнов • Вращение).
Натюрморт
243
Рис. 6.4. Профиль для построения модели яблока
3. В свитке Parameters (Параметры) настроек модификатора задайте значения параметров, аналогичные тем, которые применялись для построения вазы. 4. При необходимости вернитесь на уровень редактирования вершин сплайна и уточните форму профиля. 5. Примените к объекту модификатор Noise (Шум) для создания неровностей на поверхности модели, для чего из списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Noise (Шум). 6. В свитке Parameters (Параметры) настроек модификатора Noise (Шум) задайте параметру Scale (Масштаб) значение равное 100, а параметрам X, Y и Z области Strength (Численность) — 175, 140 и 135 соответственно (рис. 6.5).
Рис. 6.5. Модель яблока после применения модификатора Noise (Шум)
244
Глава 6. Практическое моделирование
Осталось добавить яблоку небольшой черенок. 1. Создайте объект Cylinder (Цилиндр), для чего выполните команду Create • Standard Primitives • Cylinder (Создание • Стандартные примитивы • Цилиндр) и в окне проекции Тор (Сверху) постройте цилиндр в месте крепления черенка к яблоку. 2. В окне проекции Front (Спереди) при помощи инструмента Select and Move (Выделить и переместить) переместите построенный объект в вертикальной плоскости так, чтобы он занял свое место в углублении яблока. 3. При необходимости уточните значения радиуса и высоты цилиндра в свитке Parameters (Параметры). Они должны иметь пропорции, соответствующие размеру яблока. 4. В свитке Parameters (Параметры) настроек цилиндра задайте параметру Height Segments (Сегменты по высоте) значение, равное 10. Это позволит в дальнейшем получить равномерный изгиб объекта. 5. Примените к построенному цилиндру модификатор Taper (Заострение), выбрав его из списка модификаторов вкладки Modify (Изменение) командной панели. 6. Закончите построение черенка применением модификатора Bend (Изгиб) (рис. 6.6).
Рис. 6.6. Модель яблока с черенком Таким образом, мы построили модель яблока. Однако для создания натюрморта одной модели будет мало. При помощи модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) это можно легко исправить, создав яблоко другой формы.
245
Натюрморт
1. Скопируйте модель яблока вместе с черенком, для чего выделите оба объекта и, удерживая нажатой клавишу Shift, в окне проекции Тор (Сверху) переместите объекты в сторону. В появившемся окне Clone Options (Параметры клонирования) укажите Сору (Копия). 2. Выделите модель яблока и примените к ней модификатор FFD Box (Произвольно деформируемый контейнер (прямоугольный)), для чего выполните команду Modifiers • Free Form Deformers • FFD Box (Модификаторы • Произвольные деформации • Произвольно деформируемый контейнер (прямоугольный)). 3. В области Dimensions (Размеры) свитка FFD Parameters (Параметры произвольно деформируемого контейнера) щелкните на кнопке Set Numbers Of Points (Установить количество точек) и в появившемся окне Set FFD Dimensions (Установить размеры произвольно деформируемого контейнера) задайте всем параметрам значение 5. 4. В стеке модификаторов перейдите на уровень редактирования подобъектов Set Volume (Установить объем) и, используя инструмент масштабирования Select and Uniform Scale (Выделить и равномерно масштабировать) | Ер,, откорректируйте форму произвольно деформируемого контейнера так, чтобы она в общих чертах повторяла форму яблока (рис. 6.7).
-
FThi-
ЬпеСЕ j Modifier List В FFD(box) 5x5x5 I — Control Points i — Lattice L ~ Set. Volume <j> В Noise
ф • Lath» Line
(TO Parameters Dimensions
-
5*5x5 Set Number ol Points Display: P
Lattrce
Г" Source Volume
Рис. 6.7. Форма произвольно деформируемого контейнера (а) и окно стека модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) (б)
5. В окне стека модификаторов перейдите на уровень редактирования подобъектов Control Points (Контрольные точки) и выделите в верхнем ряду четыре вершины, равноудаленные от центра в один ряд. 6. Используя инструмент Select and Move (Выделить и переместить) |*$?, переместите выделенные точки немного вверх, формируя модель яблока в области черенка (рис. 6.8).
246
•
:
•••••••••••
- - "
: i :
•:.
-
....
,
v
_
.
•••:•
'.•
Рис. 6.8. Результат формирования верхней части яблока
7. Выделите в нижнем ряду такие же четыре точки произвольно деформируемого Р И Т И Т е ИХНеМН0Г ШИЗ П ЛУЧеНИЯ Р
2Г;
Т
°
^ °
™-
Рис. 6.9. Окончательная модель модифицированного яблока
Теперь можно сгруппировать яблоко и черенок (в первом и втором
™Х?ВГ°ЖНОСТЬ
МаН
™ > - Р — группой иР сделать S E
йТ
Натюрморт
247
СОВЕТ Сделав две-три копии объекта, можно изменить форму этих копий, вернувшись к параметрам модификатора Noise (Шум) или FFD Box (Произвольно деформируемый контейнер (прямоугольный)) в стеке модификаторов и сделав там соответствующие изменения. Создадим модель груши. Процесс построения этой модели совершенно такой же, как и яблока: начинаем с построения профиля при помощи сплайна, затем применяем модификатор Lathe (Вращение) и, наконец, уточняем форму модели при помощи модификатора Noise (Шум) или FFD Box (Параметры произвольно деформируемого контейнера (прямоугольного)) (рис. 6.10).
Рис. 6.10. Модель груши Рассмотрим процесс построения винофадной фозди. На самом деле нам понадобится создать лишь стебель и одну ягоду, скопировав которую, получим целую фоздь. Для построения модели винограда сделайте следующее. 1. В окне проекции Тор (Сверху) постройте сферу, для чего выполните команду Create • Standard Primitives • Sphere (Создание • Стандартные примитивы • Сфера).
ПРИМЕЧАНИЕ При построении сплайнов для вазы, яблока и груши мы не учитывали реальные размеры этих объектов, а лишь ориентировались на их пропорции. По этой причине и с виноградом необходимо поступить точно так же. По размеру сфера должна соответствовать размеру ягоды винограда и быть сопоставима с размерами созданных ранее объектов.
248
Глава 6. Практическое моделирование
2. Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) ; Щ, масштабируйте сферу в вертикальной плоскости так, чтобы она приобрела вытянутую форму (рис. 6.11). При желании ее можно уточнить, используя дополнительно модификаторы поверхности.
Рис. 6 . 1 1 . Форма ягоды винограда, построенная из сферы
3. В окне проекции Front (Спереди) известным вам способом постройте сплайн, который послужит формой пути лофт-объекта для хвостика, находящегося в верхней части ягоды (рис. 6.12).
Рис. 6.12. Форма сплайна пути для построения лофт-объекта
249
Натюрморт
4. В окне проекции Тор (Сверху) постройте окружность, которая будет являться формой поперечного сечения хвостика, для чего выполните команду Create • Shapes • Circle (Создание • Формы • Окружность). 5. Выделите сплайн пути (если он не выделен) и выполните команду Create • Compound • Loft (Создание • Составные объекты • Лофтинговые). 6. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на окружности. 7. Перейдите на вкладку Modify (Изменение) командной панели и в свитке Deformations (Деформации) щелкните на кнопке Scale (Масштаб), в результате чего откроется окно Scale Deformation (Деформация масштаба). 8. Измените форму кривой графика так, чтобы сплайн в окне проекции приобрел нужную форму (рис. 6.13). (9 Scale Delormatkm(X)
в X ZHL
Г..
______
J
fD«s to move. Cbkifek <x * a o «o»R box tc (
^
Рис. 6.13. Окно Scale Deformation (Деформация масштаба) с уточненной формой хвостика В результате ягода винограда должна выглядеть, как показано на рис. 6.14.
.
Рис. 6.14. Ягода винограда
250
Глава 6. Практическое моделирование
Как и в случае с яблоком и грушей, сгруппируйте хвостик и ягоду винограда, а затем создайте примерно 20-25 копий модели. Распределите созданные объекты в пространстве так, чтобы получалась гроздь винограда, лежащая на блюде. Более сложным объектом для моделирования может показаться банан. Но и здесь можно обойтись построением лофт-объекта с последующей деформацией масштаба, аналогично тому, как мы делали для винограда. Чтобы построить модель банана, сделайте следующее. 1. В окне проекции Тор (Сверху) постройте сплайн пути, который представляет собой немного искривленную линию. 2. В окне проекции Front (Спереди) постройте форму поперечного сечения, для чего выполните команду Create • Shapes • NGon (Создать • Формы • Многоугольник). 3. Параметру Sides (Количество сторон) свитка Parameters (Параметры) настроек многоугольника задайте значение 6 (рис. 6.15).
Рис. 6.15. Сплайны форм пути и поперечного сечения для построения модели банана
4. Постройте лофт-объект, для чего выделите сплайн пути и выполните команду Create • Compound • Loft (Создание • Составные объекты • Лофтинговые). 5. В свитке Creation Method (Метод создания) настроек лофт-объекта нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на многоугольнике. 6. В свитке Deformations (Деформации) настроек лофт-объекта на вкладке Modify (Изменение) командной панели щелкните на кнопке Scale (Масштаб). В результате откроется окно Scale Deformation (Деформация масштаба). 7. При помощи редактирования кривой измените форму сплайна так, чтобы получился банан (рис. 6.16). Редактируя сплайн, контролируйте изменение формы объекта в окнах проекций. 8. Чтобы сгладить резко очерченные грани модели, необходимо применить модификатор Relax (Ослабление), для чего выполните команду Modifiers • Free Form Deformers • FFD Box (Модификаторы • Произвольные деформации • Произвольно деформируемый контейнер (прямоугольный)).
251
Натюрморт
9. В свитке Parameters (Параметры) настроек модификатора Relax (Ослабление) подберите такие значения параметров Relax Value (Величина ослабления) и Iterations (Количество итераций), чтобы получилось небольшое сглаживание на краях (рис. 6.17). © Scale Deformalmn(X)
j D*ag to move. Ш-click or drag tegion box to *cb if
Рис. 6.16. Окно Scale Deformation (Деформация масштаба) с измененной формой банана
iiilii
] Loft02 Modifier List Relax
Parameteis
RetanVatie ftffi P
Keep Boundary Pts Fixed
Г~ Save Outer Coiners
Рис. 6.17. Банан, полученный с использованием составных объектов (а), и его параметры (б)
В качестве самостоятельного задания самостоятельно создайте дополнительные объекты сцены. Например, сферу можно использовать для моделирования нескольких объектов: апельсина, мандарина, вишен, клубники и даже половинки лимона и киви. При этом для создания мандарина необходимо применить инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), чтобы
252
Глава 6. Практическое моделирование
сжать сферу в вертикальной плоскости, а половинка киви получается после задания параметру Hemisphere (Полусфера) свитка Parameters (Параметры) настроек сферы значения, равного 0,5. СОВЕТ Мандарин, как и некоторые другие объекты, можно построить путем редактирования вершин на уровне подобъектов модификатора Edit Mesh (Редактирование поверхности). В большинстве случаев такой подход дает максимальный контроль над созданием объектов сцены и, как следствие, лучший результат.
На рис. 6.18 представлен натюрморт, который получился после добавления дополнительных объектов.
•
•
H si .fc
-II
чЗк
ill
iti III
.
|
•ив
|
^
|
*
щ
• lii
i.w1
.
. .
.
' -'•.. : .... : .
•
...'...•
I
Siiiiiiil
%
:
.
-
•
•
•
;
"
:
•
• .
•
HI 1 •
;
'. * t,.
У*
ш
Щ11
illillll Рис. 6.18. Сцена с расставленными объектами
Подводя итоги, можно заметить, что очень часто использования стандартных параметрических объектов и простых методов редактирования вполне достаточно для создания хорошей сцены. В следующей главе, посвященной работе с редактором материалов, мы рассмотрим текстурирование созданной в данном упражнении сцены. ПРИМЕЧАНИЕ
На прилагаемом к книге компакт-диске в папке CH06\Max\fruits находится файл сцены fruits.max.
Моделирование лофт-объектов
253
Моделирование лофт-объектов Допустим, необходимо создать объект, напоминающий машиностроительную деталь. Можно моделировать при помощи разбиений, но, как мне кажется, намного легче и проще будет сделать это при помощи лофтинга. Что же такое лофт-объекты? Представьте корпус корабля, разделенный шпангоутами (поперечными ребрами). Это и есть классический пример лофтинга, где в качестве формы пути выступает киль, а поперечных сечений — шпангоуты. Создание лофтобъектов происходит аналогичным способом. Сначала создается сплайн, являющийся путем, на который нанизывается любое количество поперечных сечений (форм). При построении лофт-объектов можно использовать практически любую форму для поперечного сечения или пути. Если соблюдать некоторые несложные ограничения, можно добиться впечатляющих результатов. Рассмотрим эти ограничения. Что касается формы пути, есть лишь одно ограничение — она может состоять только из одного сплайна. Если при попытке использовать сплайн в качестве формы пути 3ds Max отказывается его воспринимать, это первый признак того, что форма содержит более одного сплайна. Ко всем формам поперечного сечения применяются два ограничения: • должны содержать одинаковое количество сплайнов; • должны иметь одинаковый порядок вложения. Если первая форма на пути содержит три сплайна внутри другого сплайна (рис. 6.19), то все последующие формы также должны содержать три сплайна внутри другого сплайна. Впрочем, это ограничение можно обойти, используя разомкнутый внешний сплайн.
Рис. 6.19. Вложенные сплайны Основной недостаток разомкнутых сплайнов — они не могут иметь крышки на концах объектов. По этой причине, если возникает необходимость закрыть торцы такого объекта, то приходиться использовать модификатор Edit Mesh (Редактирование поверхности) с последующим редактированием вручную или назначать модификатор
Глава 6. Практическое моделирование
254
Cap Holes (Накрытие отверстий). Можно также применять деформацию масштабирования для лофт-объекта, изменяя параметр деформации до 0 % на концах объекта, или любым доступным способом. Часто форма ведет себя необъяснимо из-за эффектов трансформаций, применяемых к исходным объектам. Они игнорируются впоследствии при создании лофт-объекта. Такие трансформации, как Move (Перемещение), Rotate (Вращение) и Scale (Масштабирование), не передаются с формой в лофт-объект (это концептуально заложено в потоковой схеме объекта). Если вам все-таки необходимо (в чем я очень сомневаюсь) произвести какие-либо трансформации, то выполняйте их после применения модификатора XForm (Преобразование). Кроме этого, можно изменять форму лофтинга на уровне подобъектов внутри самого лофт-объекта. Формы можно строить в любом окне проекции, однако полезно придерживаться следующих правил: • форма пути для горизонтальных объектов строится от основания объекта до его верха или от задней части к передней; • формы поперечных сечений строятся в тех окнах проекций, которые наиболее согласуются с видом объекта сверху или спереди. Таким образом, лучше всего строить формы пути и поперечного сечения в разных окнах проекций. Рассмотрим пример создания простого лофт-объекта — карандаша. Для этого в окне проекции Front (Спереди) создайте четыре сплайна (хотя можно обойтись и тремя) (рис. 6.20).
Рис. 6.20. Сплайны, определяющие профиль модели карандаша
Четвертый сплайн — копия шестиугольника со сдвинутыми вверх манипуляторами Безье во всех шести точках сплайна. На рис. 6.21 в окне проекции Тор (Сверху) изображена форма, которая получилась у меня. В окне проекции Тор (Сверху) также следует построить сплайн, который будет формой пути для карандаша. ' . - ' • • •
Ш
•-
Рис. 6 . 2 1 . Форма сплайнов в окне проекции Тор (Сверху)
Моделирование лофт-объектов
255
После построения всех сплайнов можно приступать к созданию лофт-объекта. Для этого выполните следующие действия. 1. В окне проекции Тор (Сверху) выделите сплайн пути (прямую). 2. На вкладке Geometry (Геометрия) командной панели выберите из раскрывающегося списка Compound Objects (Составные объекты). 3. Щелкните на кнопке Loft (Лофтинговые), чтобы активизировать режим построения лофтинговых объектов. 4. В свитке Creation Method (Метод создания) щелкните на кнопке Get Shape (Взять форму), после чего указатель мыши перейдет в режим выбора. 5. Щелкните кнопкой мыши на первой форме поперечного сечения (окружности большего диаметра). В результате лофт-объект примет форму цилиндра. 6. В свитке Path Parameters (Параметры пути) введите значение Path (Путь) равное 5. Так мы определили местоположение второго сечения. 7. Снова нажмите кнопку Get Shape (Взять форму) и выберите вторую форму (плоский шестиугольник, расположенный слева). После этого лофт-объект станет шестигранной формы. 8. Задайте параметру Path (Путь) значение 85 (расстояния по умолчанию вводятся в процентах от всего пути). 9. Щелкните на кнопке Get Shape (Взять форму) и выберите в окне проекции Front (Спереди) правый шестигранник. 10. Задайте параметру Path (Путь) значение 100 и выберите последнюю форму — маленькую окружность. Теперь лофт-объект похож на карандаш (рис. 6.22).
Рис. 6.22. Карандаш, построенный при помощи объекта Loft (Лофтинговые)
ПРИМЕЧАНИЕ При необходимости обратитесь к файлу упражнения pencil.max, расположенному в папке CH06\Max\lofts прилагаемого к книге компакт-диска.
256
Глава 6. Практическое моделирование
Прежде чем приступить к моделированию следующего объекта более сложной формы, необходимо рассмотреть, как согласовать первые вершины каждой формы поперечного сечения. Любой сплайн имеет первую вершину, которая обозначается квадратиком в точке ее расположения. Чтобы не происходило скручивание лофт-объекта от формы к форме, необходимо выровнять первые вершины. Делается это одним из двух способов: • назначением первой вершины в необходимом месте; • вращением сплайна вокруг своей оси в режиме SubObject (Подобъект) модификатора Loft (Лофтинговые), то есть когда он уже принадлежит лофт-объекту (помните, трансформации в лофт-объект не передаются, поэтому нет смысла вращать сам сплайн). Возьмем для примера два сплайна (окружность и квадрат) и посмотрим, как выглядят несогласованные и согласованные первые вершины у лофт-объекта. На рис. 6.23, а изображено расположение первых вершин по умолчанию, а на рис. 6.23, б — результат такого расположения вершин.
Рис. 6.23. Сплайн с несогласованными вершинами (а) и лофт-объект, построенный на основе такого сплайна (б)
Если согласовать расположение первых вершин, то получится правильная форма (рис. 6.24).
Рис. 6.24. Сплайн с согласованными вершинами (а) и лофт-объект, построенный на основе такого сплайна (б)
Моделирование лофт-объектов
257
Иначе говоря, если соединить первые вершины, начиная от основания к верху объекта, воображаемыми отрезками, то должна получиться прямая линия. Перейдем к созданию более сложных форм лофт-объектов. Одним из классических примеров сложного объекта является вилка. В данном случае кроме того, что сплайн имеет более сложную форму, присутствует большее количество сплайнов внутри формы поперечного сечения. Особенность построения такого лофт-объекта заключается в том, что нужно подогнать количество сплайнов внутри каждого поперечного сечения по максимальному количеству сплайнов в форме. Например, в вилке максимальное количество сплайнов поперечного сечения — три (в зубцах вилки — по одному на каждый зубец). Чтобы получить более сглаженную форму, я использовал четыре сплайна (средний овал разделен на два сплайна). Исходя из этого, все остальные формы также должны иметь по четыре сплайна. ВНИМАНИЕ Если в процессе построения сложного сплайна появляется перекрученная поверхность, это первый признак того, что расположенные рядом формы имеют различный порядок следования подобъектов. Для лофт-объектов с количеством сплайнов внутри формы больше одного сплайны всех форм должны иметь одинаковый порядок следования сплайнов и вершин. Иначе говоря, лофт-объект строится от первого сплайна: первой вершины формы к первому сплайну, первой вершине второй формы и т. д. На рис. 6.25 показаны формы поперечных сечений в окне проекции Front (Спереди). :•:.<
.
.
::.:;:<:•::,
. , . : • . .
•:;.;
Рис. 6.25. Формы поперечных сечений, подготовленные для моделирования вилки
На окружностях, образующих ручку, в режиме редактирования Vertex (Вершина) необходимо добавить дополнительные точки, а затем разделить сплайн на четыре части (выделить нужные точки и применить к ним команду Break (Разбить)). То же самое необходимо сделать и с прямоугольником. В процессе создания лофтобъекта можно редактировать как расположение поперечных сечений вдоль пути, так и их форму. Вместе с тем вы можете уточнять форму сплайна пути, поэтому совсем не обязательно все тщательно подгонять с самого начала. ПРИМЕЧАНИЕ Для более детального ознакомления с формами объекта и расположением сплайнов на форме пути обратитесь к файлу упражнения fork, max, расположенному в папке CH06\Max\lofts прилагаемого к книге компакт-диска.
258
Глава 6. Практическое моделирование
На рис. 6.26 показана схема расположения поперечных сечений на сплайне.
Рис. 6.26. Вилка, построенная при помощи лофт-объекта
Еще одной замечательной особенностью лофт-объектов является то, что при помощи комбинации разомкнутых и замкнутых сплайнов можно строить поверхности с разрезами и разрывами. Если необходимо построить поверхность с множеством отверстий, то нужно разделить замкнутые формы на равное количество сплайнов (не забывая о согласовании первых вершин и порядке следования сплайнов внутри формы). На рис. 6.27 показаны сплайны, из которых я смоделировал лофт-объект с разрывом посередине.
1
Рис. 6.27. Сплайны формы, подготовленные для моделирования детали с дырой
Рисунок 6.28 дает представление о взаимном расположении сплайнов формы, нанизанных на сплайн пути, и визуализированном изображении лофт-объекта с дырой. ПРИМЕЧАНИЕ В папке CH06\Max\lofts прилагаемого к книге компакт-диска находится файл сцены hole.max.
Еще одним классическим примером лофт-объекта является ложка. Несмотря на то что на первый взгляд она мало напоминает лофт-объект, ее достаточно просто строить при помощи команды Fit (Деформации подгонки). Деформация подгонки имеет несколько ограничений (однако это не мешает ей оставаться быстрым и мощным средством для построения объектов сложной формы): • формы подгонки должны быть одиночными замкнутыми сплайнами; • искривленные сегменты не должны расширяться за пределы первой и последней вершины формы на оси X;
259
Моделирование лофт-объектов
• формы подгонки не должны иметь подрезаний, то есть если зрительно провести вертикальную линию, проходящую через сплайн, то она не должна разрезать форму более чем в двух местах; • формы вида сверху и вида сбоку должны иметь одинаковую длину. Последнее требование не является обязательным, так как 3ds Max может автоматически масштабировать вторую форму, подогнав ее под длину первой, однако в результате могут возникнуть непредвиденные искажения.
. • •
•
:
.
,
,
.
:
.
.
.
.
.
.
.
.
.
. . .
•
:
:
• ••
Illl
•
II тт
—
1
111
•*—. '—1
с
•f
: •
• • • .
. : • ' . • • .
Щ
' • :
.
:
Рис. 6.28. Схема расположения сплайнов вдоль пути (а) и результат визуализации объекта с дырой (б)
Для построения модели ложки выполните следующие действия. 1. В окне проекции Тор (Сверху) постройте две формы подгонки — контуры будущей ложки: вид сверху и сбоку. 2. В этом же окне проекции постройте прямую — форму пути (рис. 6.29).
Рис. 6.29. Формы подгонки для построения модели ложки
260
Глава 6. Практическое моделирование
3. В окне проекции Left (Слева) постройте три формы поперечного сечения (на самом деле при построении таких объектов их может быть сколько угодно) (рис. 6.30).
•в Рис. 6.30. Формы поперечного сечения модели ложки
4. Постройте лофт-объект по классической схеме (как строили карандаш): выделив сплайн пути, нажмите кнопку Get Shape (Взять форму), после чего щелкайте кнопкой мыши на сплайнах поперечных сечений, не забывая при этом смещать положение точки пути. В результате должна получиться форма, показанная на рис. 6.31.
Рис. 6.31. Начальная форма ложки после применения сплайнов поперечного сечения
Для последующего моделирования ложки сделайте следующее. 1. В свитке Deformation (Деформация) щелкните на кнопке Fit (Подогнать), в результате чего появится окно деформации подгонки. 2. В окне деформации подгонки нажмите кнопку Make Symmetrical (Сделать симметричным) \ •%, чтобы запретить симметричное построение для обеих осей. 3. Щелкните на кнопке Display X Axis (Отобразить ось X) j T*, чтобы загрузить форму подгонки по оси X. 4. Нажмите Get Shape (Взять форму) v*f и в окне проекции Тор (Сверху) выберите форму ложки (рис. 6.32).
Рис. 6.32. Форма ложки в окне подгонки деформации по оси X
Моделирование лофт-объектов
261
5. Проделайте вышеописанные действия для формы подгонки по оси Y, выбрав при этом сплайн вида сбоку. 6. При необходимости уточните положение точек на профилях (их также можно добавить или удалить). На рис. 6.33 показано окончательное изображение визуализированной модели ложки.
Рис. 6.33. Готовая модель ложки ПРИМЕЧАНИЕ В папке CH06\Max\lofts прилагаемого к книге компакт-диска находится файл сцены spoon.max.
Вернемся к построению лофт-объектов с разомкнутым внешним сплайном. На рис. 6.34 представлены две формы поперечного сечения, каждая из которых состоит из трех сплайнов.
"ТТ Рис. 6.34. Две формы с разомкнутым сплайном
При построении этих форм использовались скругленные прямоугольники и сплайны окружностей. Прямоугольники имеют разрывы в точках, расположенных на сплайне справа (могут быть в любом месте, но обязательно согласованы). Чтобы выполнить разрыв сплайна, выделите точку на сплайне, затем в свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить). Сам лофт-объект строится обычным способом — при помощи сплайна пути и сплайна формы (рис. 6.35). Остановимся подробнее на моделировании лофт-объектов с возвратными путями. Данный способ позволяет во многих случаях избежать булевых операций с объектами и получить предсказуемую и легко настраиваемую модель.
262
Глава 6. Практическое моделирование
Рис, 6.35. Деталь, построенная с использованием разомкнутых сплайнов
В качестве объекта для моделирования возьмем головку для накидного гаечного ключа. Начнем моделирование с создания сплайнов. Для этого выполните следующие действия. 1. В окне проекции Тор (Сверху) постройте две окружности диаметром 70 и 50. Для этого выполните команду Create • Shapes • Circle (Создание • Формы • Окружность), после чего щелкните в окне проекции Тор (Сверху) и переместите указатель в сторону для построения окружности. 2. Для моделирования прямоугольника выполните команду Create • Shapes • Rectangle (Создание • Формы • Прямоугольник) и постройте в окне проекции Тор (Сверху) прямоугольник размером 50 х 50. 3. Для создания внутреннего отверстия понадобится сплайн Star (Звезда) с параметрами, показанными на рис. 6.36. Он строится аналогично предыдущим объектам.
Radius I p o o
'
Points р б Distortion:foo
I HtetRitSuslfoT"
|j |
:J |
Рис. 6.36. Настройки сплайна Star (Звезда)
4. Постройте сплайн возвратного пути. Для этого в окне проекции Front (Спереди) поставьте точку, которая будет служить основанием сплайна, затем точку вверху и опять у основания. В итоге внизу получатся две точки (первая и последняя), а вверху одна (там сплайн меняет направление на противоположное). На предложение объединить вершины ответьте отрицательно.
СОВЕТ Чтобы легче было строить точки, воспользуйтесь привязкой к сетке. Для этого щелкните на кнопке Snaps Toggle (Переключение п р и в я з о к ) ) ^ правой кнопкой мыши и установите флажок Grid Points (Точки сетки).
Моделирование лофт-объектов
263
На рис. 6.37 показаны сплайны, построенные для моделирования детали.
Рис. 6.37. Сплайны для построения ключа
Помните, что обязательно нужно согласовывать первые вершины. Желательно, чтобы количество сегментов (вершин) у всех сплайнов формы сечения также совпадало (для получения сглаженной формы). Чтобы количество сегментов было одинаковым во всех сплайнах, выполните следующие действия. 1. Конвертируйте все формы в Editable Spline (Редактируемый сплайн) командой Convert To • Convert to Editable Spline (Преобразовать • Преобразовать в редактируемый сплайн) контекстного меню. 2. Выделите сегменты объекта Star (Звезда) (потому что этот сплайн содержит наибольшее количество сегментов) и в свитке Selection (Выделение) посмотрите статистику выделенных сегментов. Их количество — 32. Именно к такому количеству сегментов нужно привести остальные сплайны. 3. Выделите прямоугольник и затем в режиме редактирования подобъектов Seg ment (Сегмент) — все его сегменты (четыре). После этого в поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) наберите цифру 7 и щелкните на кнопке Divide (Разделить). В результате в квадрате получится 32 сегмента. 4. Проведите те же операции для двух оставшихся окружностей. 5. Согласуйте все первые вершины, для чего выставьте их у всех сплайнов, например, справа. Теперь можно приступать к построению лофт-объекта. Схема распределения путей такова: • О % — большая окружность; , 0 - 7
0/
Г
ш 27 % — большая окружность; • 27,1 % — меньшая окружность (уменьшается диаметр поверхности детали); • 50 % - меньшая окружность; • 50,1 % — квадрат (в этом месте путь меняет направление на противоположное и получается внутреннее отверстие); • 75 % — квадрат; • 75,1 % — звезда (отверстие из квадратного превращается в многогранное); • 99,9 % - звезда; • 100 % — большая окружность (закрываем пустоту между внешним и внутренним отверстиями).
Глава 6. Практическое моделирование
264
Чтобы закончить построение объекта, внесите следующие изменения. В свитке Skin Parameters (Параметры поверхности) снимите флажки Cap Start (Закрыть начало) и Contour (Контур). Готовый лофт-объект показан на рис. 6.38.
а
"ШШШШШШЯЯШШЯШШ б
Рис. 6.38. Схема расположения сплайнов вдоль пути (а) и сам объект (б)
ПРИМЕЧАНИЕ Файл упражнения detale.max находится в папке CH06\Max\lofts прилагаемого к книге компакт-диска. Подводя итоги, стоит сказать, что при помощи лофт-моделирования можно создавать не только простые, но и достаточно сложные геометрические формы. Кроме того, осталась нерассмотренной такая возможность, как анимация пути, но это тема для отдельного упражнения.
Моделирование штор Моделирование любого объекта сцены должно начинаться с предварительного анализа. Такой подход позволяет экономить и время, и ресурсы компьютера. Итак, что же такое шторы с точки зрения трехмерного объекта? Наверное, проще всего представить штору как прямоугольник с вертикальными складками. В связи с этим встает следующий вопрос: а как же проще всего получить такие складки? При ответе на этот вопрос вы должны определиться в том, насколько хорошо вы знаете возможности программы и какие способы моделирования предпочитаете. Например, я знаю как минимум четыре способа моделирования шторы. • Моделирование профиля при помощи сплайнов с последующим применением модификатора Extrude (Выдавливание) или объекта Loft (Лофтинговые) и последующим редактированием поверхности при помощи модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) для придания шторе окончательного вида. • Создание объекта Plane (Плоскость) со значительным количеством вертикальных полигонов, затем редактирование положения вершин в пространстве и применение модификатора MeshSmooth (Сглаженная поверхность) для сглаживания
Моделирование штор
265
граней. В данном случае вы можете максимально контролировать итоговую геометрию, но теряете значительное количество времени по сравнению с предыдущим вариантом. • Моделирование на основе NURBS-объекта с использованием верхнего и нижнего профилей и последующим применением команды Ruled Surface (Поверхность по краям). Именно использование двух профилей позволяет получить более естественное изображение подвешенной к карнизу шторы. • Создание Surface-поверхности. В этом случае также используются два сплайна профиля: верхний и нижний, с последующим применением модификаторов CrossSection (Поперечное сечение) и Surface (Поверхность). Рассмотрим два последних варианта.
Первый вариант Как я уже говорил выше, для моделирования NURBS-поверхности понадобится создать два профиля. Построение необходимо проводить в окне проекции Тор (Сверху), а в качестве кривой должна использоваться CV Curve (CV-кривая), для построения которой выполните команду главного меню Create • NURBS • CV Curve (Создать • NURBS • CV-кривая). Я думаю, вы знаете, как выглядят шторы, поэтому не стану рассказывать вам о том, что они собой представляют и каким образом крепятся. Замечу лишь, что в верхней части складки обычно более плотные, что обусловлено способом крепления шторы к карнизу (кольца, зажимы и т. д). В нижней части штора свободно свисает под воздействием силы гравитации, а те физические законы, которые заставляют ткань распрямляться, в некоторой степени сглаживают неровности, создаваемые в местах крепления. Таким образом, складки нижней части шторы должны в целом соответствовать верхним, но иметь более свободную форму (рис. 6.39).
Рис. 6.39. Форма CV-кривых для верхнего и нижнего края шторы
На самом деле верхняя кривая (на рис. 6.39 она белая) может выглядеть иначе. Я в данном случае предположил, что в качестве шторы у меня используется гладкое полотно (не имеющее декоративной отделки), которое крепится к карнизу зажимами (без создания предварительных складок). В результате если немного собрать такую штору, то как раз получится волна.
Глава 6. Практическое моделирование
266
СОВЕТ После создания сплайнов их кривизну можно редактировать при помощи изменения положения вершин в пространстве, для чего на вкладке Modify (Изменить) командной панели необходимо перейти в режим редактирования Curve CV (Управляющие вершины кривой) (рис. 6.40).
МФШТ1 :JCutveO2
~
Л
d
Modifier List В NURBS Curve \— Point — Curve
• • • • : •
#
* 1И i V 8 1 :•••>
.
.
•
Рис. 6.40. Уровень подобъектов Curve CV (Управляющие вершины кривой) для редактирования кривой
При желании можно создать эффект подвешенной ткани. Обычно в области изгиба ткани, максимально удаленном от места крепления, возникает провисание. Такое провисание ткани легко получить путем выделения среднего ряда вершин (в местах крепления к карнизу) и небольшого смещения их вверх (рис. 6.41).
Рис. 6 . 4 1 . Результат перемещения среднего ряда управляющих вершин верхнего сплайна
Моделирование штор
267
Кривые готовы. Не забывайте о том, что они должны быть расположены в одной плоскости относительно вертикали и расстояние между ними должно составлять высоту шторы. Осталось совсем немного — создать поверхность между двумя кривыми. Для этого как нельзя лучше подойдет инструмент Ruled Surface (Поверхность по краям), но прежде необходимо объединить построенные кривые в один объект. Сделать это можно путем присоединения одной кривой к другой. Для этого выделите одну кривую, нажмите кнопку Attach (Присоединить), расположенную в свитке General (Общие), и щелкните в окне проекции на второй кривой. Щелкните на кнопке Create Ruled Surface (Создать поверхность по краям) [£}', расположенной на плавающей палитре инструментов NURBS1, и выберите в окне проекции одну кривую, а затем вторую. В результате вышеописанных операций вы получите готовую поверхность шторы (рис. 6.42).
Рис. 6.42. Штора, построенная по двум кривым
ПРИМЕЧАНИЕ После создания поверхности можно продолжить редактировать кривые, поэтому, если вас не удовлетворяет получившийся результат, вы можете изменить форму кривых, контролируя при этом общую форму поверхности шторы.
«Плавающую» палитру NURBS можно вызвать щелчком на кнопке NURBS Creation Toolbox (Панель инструментов создания NURBS-объекта), расположенной в свитке General (Общие) настроек NURBS-кривой на вкладке Modify (Изменение) командной панели.
268
Глава 6. Практическое моде;
Этим можно было бы ограничиться, но я хотел бы еще в общих чертах описать, как изменить геометрию шторы, если она собрана у основания или в другой части. Наверное, вы уже успели заметить, что NURBS-поверхность не имеет других контрольных точек, кроме тех, которые расположены на сплайнах в верхней и нижней частях шторы. Этого явно недостаточно для того, чтобы редактировать поверхность в горизонтальной плоскости. В связи с этим первое, что необходимо сделать, — это добавить управляющие вершины в среднюю часть. Для этого выполните следующие действия. 1. В стеке модификаторов перейдите на уровень редактирования подобъектов Surface (Поверхность). 2. Выделите поверхность и в свитке Surface Common (Общие свойства поверхности) щелкните на кнопке Make Point (Создать точку) (рис. 6.43), в результате чего откроется окно Make Point Surface (Создать точки поверхности).
Рис. 6.43. Свиток Surface Common (Общие свойства поверхности) настроек построенной шторы
3. Значение параметра Number In U (Количество по горизонтали) окна Make Point Surface (Создать точки поверхности), определяющего количество точек поверхности по горизонтали, оставьте заданным по умолчанию. Параметру Number in V (Количество по вертикали) задайте значение в пределах от 10 до 20 в зависимости от стоящей перед вами задачи. Я задал значение, равное 14. Этого вполне достаточно, чтобы собрать штору в нижней ее части. После того как будут добавлены точки поверхности, их можно редактировать, для чего необходимо перейти на уровень подобъектов Point (Точка) и воспользоваться инструментами перемещения, масштабирования и поворота.
Моделирование штор
269
На рис. 6.44 представлена штора, которую я получил при помощи перемещения точек и использования параметра Soft Selection (Плавное выделение).
Рис. 6.44. Модель шторы после редактирования вершин
Второй вариант Второй вариант моделирования шторы в общих чертах напоминает описанный выше, но имеет свои особенности. Как и в первом варианте, необходимо построить кривую, которая будет являться профилем модели шторы. Чтобы ее создать, необходимо воспользоваться командой главного меню Create • Shapes • Line (Создать • Формы • Линия) и построить кривую в окне проекции Тор (Сверху). Скопируйте построенную кривую со смещением по вертикали и отредактируйте ее форму так, чтобы получить геометрию нижнего края.
ВНИМАНИЕ Копирование используется для того, чтобы сохранить одинаковое количество вершин обоих сплайнов — это важно! Если вы решите вместо копирования строить вторую кривую, то позаботьтесь о том, чтобы количество вершин обоих сплайнов было одинаковым. Для продолжения моделирования нужно, как и в предыдущем случае, чтобы оба сплайна принадлежали одному объекту. Сделать это просто: достаточно выделить один из сплайнов, затем в свитке Geometry (Геометрия) его настроек нажать кнопку Attach (Присоединить) и в окне проекции щелкнуть на втором сплайне. После этого можно перейти к созданию поверхности, которая строится при помощи двух модификаторов: CrossSection (Поперечное сечение) и Surface (Поверхность) (рис. 6.45).
270
Глава 6. Практическое моделирование
•
j LineOI I Modifier List
Ф Surface <4> OossSection fl Line
d
•» fiT I \/ e
Steps f?
Рис. 6.45. Стек модификаторов шторы
В результате применения модификаторов вы получите поверхность шторы, а после небольшого редактирования вершин сплайнов — оригинальную форму. Как и в предыдущем варианте, вы можете редактировать не только вершины верхнего и нижнего рядов, но и всю поверхность. Необходимо лишь применить к объекту соответствующий модификатор, например Edit Patch (Редактирование кусков) или Edit Poly (Редактирование полигонов). На рис. 6.46 представлен второй вариант модели шторы.
Рис. 6.46. Второй вариант модели шторы
Полигональное моделирование телефонной трубки
271
ПРИМЕЧАНИЕ Для ознакомления с первым и вторым вариантами модели шторы вы можете обратиться к файлам curtain v1 .max и curtain v2.max, расположенным в папке CH06\Max\curtain прилагаемого к книге компакт-диска.
Полигональное моделирование телефонной трубки В этом упражнении рассмотрим создание модели телефонной трубки при помощи полигонального моделирования (рис. 6.47).
Рис. 6.47. Модель телефонной трубки <*р Начнем моделирование с построения примитива Box (Параллелепипед). Для этого сделайте следующее. 1. Выполните команду Create • Standard Primitives • Box (Создание • Простые примитивы • Параллелепипед). 2. Щелкните в левом верхнем углу окна проекции Тор (Сверху) и, удерживая кнопку мыши, переместите указатель в правую нижнюю половину окна, построив таким образом прямоугольник произвольного размера. 3. Отпустите кнопку мыши и переместите указатель вверх, чтобы создать толщину параллелепипеда. 4. В свитке Parameters (Параметры) укажите габариты объекта и количество его сегментов по длине, ширине и высоте (рис. 6.48).
272
Глава 6. Практическое моделирование
h:f5Hi
\
Jj
WtcfifrjlSO 0
£
H«ght.|3CTB
Jj
length Seg^p
jj
Width SegsJ Height Segs:|T P Generate Mapping Cbor*. ] Г fiealWwHMap Size
Рис. 6.48. Параметры примитива Box (Параллелепипед) для построения трубки телефона
Телефонная трубка имеет изгиб. Чтобы создать его, примените модификатор Bend (Изгиб), выполнив команду Modifiers • Parametric Deformers • Bend (Модификаторы • Параметрические деформации • Изгиб). В результате в стеке модификаторов появится требуемый элемент. Задайте его параметры согласно изображенным на рис. 6.49.
Рис. 6.49. Параметры модификатора Bend (Изгиб)
Больше свойства параметрического объекта вам не понадобятся. Дальнейшая работа будет проходить на уровне редактирования подобъектов — вершин, ребер, полигонов и т. д. Чтобы преобразовать объект в редактируемую поверхность, щелкните на параллелепипеде правой кнопкой мыши. Появится контекстное меню, в котором выполните команду Convert To • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность).
ПРИМЕЧАНИЕ Если вы работаете в более ранних версиях программы, где еще нет Editable Poly (Редактируемая полигональная поверхность), то используйте для тех же целей Editable Mesh (Редактируемая поверхность). Однако при этом некоторые функции будут недоступны. Перейдите на_уровень редактирования вершин, для чего щелкните на кнопке Vertex (Вершина) ..;" в свитке Selection (Выделение). После этого в окне проекции Left (Слева) отредактируйте три верхних ряда вершин так, чтобы получился изгиб трубки в поперечном сечении (рис. 6.50).
Полигональное моделирование телефонной трубки
273
Рис. 6.50. Редактирование изгиба верхней части трубки
Далее создайте таким же способом изгибы формы на торцах трубки с той лишь разницей, что основание, которым трубка ставится на базу, должно быть выгнуто меньше, нежели верх (рис. 6.51).
Рис. 6 . 5 1 . Редактирование вершин в окне проекции Тор (Сверху)
Чтобы скруглить объект, перейдите на уровень редактирования граней. Для этого нажмите кнопку Edge (Ребро) ] в свитке Selection (Выделение). Перед тем как начать выделение граней, установите флажок Ignore Backfacing (Без обратной ориентации), что позволит избежать случайного выбора граней, лежащих на противоположных сторонах геометрии. Для выделения необходимых ребер, удерживая клавишу Ctrl, щелкайте поочередно на одном из ребер каждой стороны. Таким образом вы добавите их к выделению. После этого в свитке Selection (Выделение) нажмите кнопку Loop (Петля), чтобы автоматически выбрать остальные ребра (рис. 6.52).
пмвинн Рис. 6.52. Выделенные ребра верхних и боковых граней для формирования фаски
274
Глава 6. Практическое моделирование
Помните, что в процессе выбора ребер нужно контролировать область выделения во всех окнах проекций. После выделения необходимых ребер можно применить к ним команду Chamfer (Фаска). Для этого выполните следующие действия. 1. Разверните свиток Edit Edges (Редактирование ребер) настроек объекта. 2. Щелкните на кнопке Settings (Настройки) рядом с кнопкой Chamfer (Фаска). 3. В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение 4. 4. Подтвердите внесенные изменения, щелкнув на кнопке ОК. В результате этих действий на краях появятся закругления. Их можно увидеть, установив для объекта сглаживание. Для этого в свитке Subdivision Surface (Поверхность с разбиением) установите флажок Use NLJRMS Subdivision (Использовать NURMS-разбиения), а в области Display (Отображение) задайте параметру Iterations (Количество итераций) значние 2. Поверхность станет сглаженной (рис. 6.53).
Рис. 6.53. Поверхность после применения фаски и сглаживания
Повторим те же действия для нижних ребер. 1. Выберите ребра, расположенные по периметру нижней плоскости. 2. Вызовите окно Chamfer Edges (Фаска ребер). 3. Задайте параметру Chamfer Amount (Величина фаски) значение 2. 4. Подтвердите внесенные изменения, щелкнув на кнопке ОК. В результате вы получите скругления на нижней части трубки, но с меньшим радиусом (рис. 6.54). Мы сделали приблизительную форму трубки телефона. Теперь нужно добавить вершины для редактирования. Сделать это можно разными способами, но мы воспользуемся самым простым и удобным в данном случае — секущей плоскостью. Для выполнения сечения поверхности плоскостью выполните следующие действия.
Полигональное Моделирование телефонной трубки
275
Рис. 6.54. Фаска на нижних гранях трубки
1. Вернитесь на уровень редактирования вершин, щелкнув на кнопке Vertex (Вершина) I./ в свитке Selection (Выделение). 2. В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость). В результате кнопка подсветится цветом, а в горизонтальной плоскости объекта появится секущая плоскость. 3. На панели инструментов щелкните на кнопке Angle Snap Toggle (Переключатель угловых привязок) \ф^, что позволит проще поворачивать на заданные углы. 4. Щелкните на кнопке Select and Rotate (Выделить и повернуть) lQ И поверните секущую плоскость на 90° (рис. 6.55).
Рис. 6.55. Положение секущей плоскости относительно объекта-трубки
5. Нажмите кнопку Slice (Срез) в свитке Edit Geometry (Редактирование геометрии). 6. Щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии), чтобы отключить создание сечений. Прежде чем наращивать плотность сетки полигонов, необходимо отредактировать положение вершин в пространстве с учетом добавленных. Для этого в окне проекции Front (Спереди) переместите группы вершин, сформировав таким образом область расположения динамика. Перд этим не забудьте снять флажок Ignore Backfacing (Без обратной ориентации), чтобы можно было выбирать группы вершин по всему сечению (рис. 6.56).
276
Глава 6. Практическое моделирование
Рис. 6.56. Отредактированная поверхность после разреза секущей плоскостью
Для формирования мест под кнопки вам понадобится сделать еще пять сечений плоскостью в окне проекции Front (Спереди). СОВЕТ Обратите внимание, что я не стал делать эти сечения вместе с первым. Это усложнило бы редактирование положения вершин, которых было бы намного больше. Если есть возможность, всегда старайтесь максимально сформировать форму объекта при минимальном количестве полигонов. Это не только упрощает работу, но и позволяет получить более сглаженные формы.
Как делать сечения, вы уже знаете. На рис. 6.57 показана та часть трубки, на которой нужно их сделать. Расстояния между ними должны быть приблизительно одинаковыми.
Рис. 6.57. Дополнительные сечения для формирования мест под кнопки
Перейдем к формированию углубления, в которое обычно встраивается дисплей. У меня трубка старого образца, поэтому на этом месте находится всего лишь логотип фирмы Panasonic и индикатор разрядки батареи. Чтобы сформировать углубление, выполните следующие действия. 1. Перейдите на уровень редактирования вершин. 2. Установите флажок Ignore Backfacing (Без обратной ориентации), чтобы случайно не выбрать лишние вершины. 3. В окне проекции Bottom (Снизу) передвиньте три средние вершины вправо так, чтобы сформировать изгиб нижней части углубления (рис. 6.58).
Полигональное моделирование телефонной трубки
277
Рис. 6.58. Начало формирования углубления
4. Перейдите на уровень редактирования полигонов, щелкнув на кнопке Polygon (Полигон) j щ в свитке Selection (Выделение). 5. Выделите четыре полигона, расположенные левее места изгиба. 6. В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Настройки) рядом с кнопкой Inset (Смещение внутрь). 7. В появившемся окне Inset Polygons (Сместить полигоны внутрь) задайте параметру Inset Amount (Величина смещения) значение 1,5. 8. Подтвердите внесенные изменения, щелкнув на кнопке ОК. В результате будут построены новые полигоны, смещенные внутрь (рис. 6.59).
Рис. 6.59. Полигоны для формирования углубления
Чтобы закончить формирование углубления, выполните следующие действия. 1. Не снимая выделения с полигонов, щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание). 2. В открывшемся окне Extrude Polygons (Выдавить полигоны) задайте параметру Extrude Height (Высота выдвливания) значение -7. 3. Подтвердите внесенные изменения, щелкнув на кнопке ОК.
278 — —
Глава 6. Практическое моделирование
4- Перейдите на уровень редактирования вершин, нажав кнопку Vertex (Вершина) р ; | . . в свитке Selection (Выделение). 5
(Спе
рИС.
Р а д и ) ^редактируйте положение вершин, как по-
Рис. 6.60. Положение вершин, формирующих углубление
Если сейчас посмотреть на созданное углубление, то можно увидеть, как его внут ренние грани формируют скругления большого радиуса. В нашем лучае н Х
к " т е В й У ? т Г ь Г Г Р а ™ П ° П б Р И М е Т Р У Д ° Л Ж Н Ы о б Р а з о в ы в а т ь четкую границу плос
костей. Чтобы это сделать, нужно увеличить плотность сетки в местах изгибов Повысить плотность полигонов можно несколькими способами, но я воспользу юсь уже знакомым вам методом формирования фаски на уровне ребер. Для построения такой фаски выделите внутренние грани по периметру углубления, исключая сторону изгиба, и примените к ним Chamfer Edges (Фаска ребер) Введите значение Chamfer Amount (Величина фаски) равное 0,5. В результате углубление примет более реалистичный вид (рис 6 61) результате уг
5
'""""""• - 5 * » - й * ж » ; Ш К Э !
ШйтвШ
Рис. 6 . 6 1 . Формирование фаски внутри отверстия
Впечатление о проделанной работе портят внешние углы, которые имеют слишком большой радиус закругления. Чтобы избавиться от этого, примените к
Полигональное моделирование телефонной трубки -
279
•
$
Рис. 6.62. Обработка угла Теперь можно переходить к формированию углубления в месте нахождения динамика. Легче всего его создать при помощи булевой операции Cut (Вычитание), но, как правило, это искажает полигональную сетку модели, превращая ее в «месиво» из вершин, ребер и полигонов и затрудняя дальнейшее редактирование. Данную операцию можно было бы применить в конце моделирования, но нужно еще сделать отверстия для кнопок, отделку и т. д., поэтому выполним углубление, сформировав его в существующей сетке. Чтобы облегчить построение окружности, создайте в окне проекции Bottom (Снизу) сплайн Circle (Окружность) с радиусом равным 17. Для этого выполните команду Create • Shapes • Circle (Создание • Формы • Окружность), затем в окне проекции Bottom (Снизу) щелкните мышью на месте расположения будущего углубления и переместите указатель в сторону, формируя окружность (рис. 6.63). В настройках окружности задайте параметру Radius (Радиус) значение 17.
Рис. 6.63. Положение шаблона-окружности для формирования углубления в трубке телефона После появления шаблона, по которому можно выверять форму углубления, нужно увеличить плотность сетки полигонов в этом месте. Для этого воспользуйтесь инструментом Cut (Вычитание). Его можно активизировать в свитке Edit Geometry (Редактирование геометрии) на любом из уровней подобъектов, щелкнув на кнопке Cut (Вычитание). В результате кнопка изменит свой цвет, указывая, что она находится в активном режиме. После этого щелкните на ребре или вершине объекта и, не
280
Глава 6. Практическое моделирование
отпуская кнопку мыши, переместите указатель до другого ребра или вершины. Пунктирная линия вслед за указателем определит место, где будет создано новое ребро. Для выключения режима вычитания щелкните правой кнопкой мыши. Чтобы получить отверстие, нужно выполнить разрезы в несколько приемов, промежуточно редактируя вершины. Первые разрезы показаны на рис. 6.64.
Рис. 6.64. Разрезы, сделанные для формирования углубления
К диагональным разрезам добавьте разрезы по периметру отверстия. Отредактируйте положение вершин, но не старайтесь делать это максимально точно, так как после очередных разрезов положение вершин придется уточнять снова (рис. 6.65). §^:•;.;•:
X
w
z*^~*i~"*
'.У " !
I;-;"---
•'. .
,
-'4Y'f
. . .
••
•
-
•
••.•••••.-•,•,
.
-:
• \
•
• 'MVI
, .
;
f
b s . :••-'•?'••::
/
II
• •'''•
•::.:•:;>•:••
i *.
.
•':
" »
>;
f: 5,ll:
..,„.•••'
.л
•• \
v\ 1
' > « ,
•
: ' •
•' ••
' "'".• 'A'
• шш . .
Рис. 6.65. Добавлены новые разрезы по периметру окружности
Чтобы получить максимально ровный и сглаженный круг, нужно выполнить еще по одному разрезу внутри сформированных лучей, исходящих из центра окружности. После этого можно переходить к окончательному редактированию вершин. Сейчас их положение должно быть определено шаблоном-окружностью, на котором они находятся, а расстояния между соседними вершинами по возможности должны быть одинаковыми. После того как будут расставлены вершины, можно сформировать внутреннее кольцо ребер. Для этого выделите внутренние полигоны и примените команду Inset (Смещение внутрь) описанным выше способом, но только с величиной сдвига, равной половине радиуса круга (рис. 6.66).
Полигональное моделирование телефонной трубки
281
Рис. 6.66. Формирование внутренних полигонов углубления
Перед тем как перейти к формированию мест под кнопки, выполните сдвиг вершин, расположенных внутри окружности так, чтобы сформировалась небольшая выемка. К внешнему кольцу из ребер примените Chamfer Edges (Фаска ребер) с очень маленькой величиной среза, чтобы по периметру углубления образовалась фаска (рис. 6.67).
Рис. 6.67. Окончательный вид углубления в телефонной трубке
Теперь займемся углублениями для кнопок. Прежде чем выдавливать рельеф, нужно построить форму кнопок. Кнопки пульта мы сделаем как отдельные объекты, например, с помощью примитива ChamferBox (Параллелепипед с фаской). Из шести построенных ранее сечений для формирования кнопок выделите четыре внутренних поперечных ряда ребер и примените к ним Chamfer Edges (Фаска ребер) с величиной среза 4,5, что задаст ширину посадочного места (рис. 6.68).
Рис. 6.68. Применение Chamfer Edges (Фаска ребер) для начала формирования места под кнопки
Глава 6. Практическое моделирование
282
Выполните те же действия по отношению к продольным ребрам в области построения кнопок. Для этого примените к ним Chamfer Edges (Фаска ребер), но только с величиной среза 6,5. В результате данных операций будет сформирована область выдавливания (рис. 6.69).
iiiilfflШШ :«:••••.:•.:•••:.• .:.: ; v •. ••.:•.•
;
''?'--Z\ v$
•
.:••
•••
• • . :
:
; •
1
>-
1
eSSSBP
Рис. 6.69. Применение Chamfer Edges (Фаска ребер) для продольных ребер Таким образом мы создали общую форму отверстий под кнопки. Размер отверстий по длине примерно в полтора раза превышает ширину, что может сказаться на последующем сглаживании, если не разделить широкие стороны пополам. Воспользуйтесь командой Cut (Вычитание) и сделайте продольные разрезы, соединив противоположные вершины полей, где будут кнопки (рис. 6.70).
Рис. 6.70. Дополнительные разрезы в области расположения кнопок Кнопки имеют скругленные грани, что относится и к отверстиям, в которых они будут находиться. Их можно сделать, сначала выдавив отверстия, затем выделив внутренние вертикальные грани и применив Chamfer Edges (Фаска ребер). Но можно поступить по-другому — применив к угловым вершинам Chamfer Vertices (Фаска вершин) 1 перед выдавливанием. Можете попробовать оба метода, я опишу первый вариант. Чтобы сделать отверстия под кнопки телефонной трубки, выполните следующее. 1. Выделите все полигоны, относящиеся к будущим отверстиям кнопок. Чтобы вызвать окно Chamfer Vertices (Фаска вершин), следует щелкнуть на кнопке, расположенной рядом с кнопкой Chamfer (Фаска) в свитке Edit Vertices (Редактирование вершин).
Полигональное моделирование телефонной трубки
283
2. В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание). В результате появится окно диалога Extrude Polygons (Выдавить полигоны). 3. В окне диалога Extrude Polygons (Выдавить полигоны) выставьте величину выдавливания —4. 4. Подтвердите внесенные изменения, щелкнув на кнопке ОК. Теперь необходимо сформировать скругления внутренних углов. Для этого выполните следующие действия. 1. Перейдите на уровень редактирования граней, для чего в свитке Selection (Выделение) щелкните на кнопке Edge (Ребро)
Продолжим формирование фасок отверстий. Выделите по одному верхнему ребру в каждом отверстии и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате должны выделиться все ребра, очерчивающие верхний край отверстия. Примените к ним Chamfer Edges (Фаска ребер) со значением параметра Chamfer Amount (Величина фаски) 0,1. После того как будет сделана фаска для верхних ребер, перейдите на уровень редактирования полигонов, щелкнув на кнопке Polygon (Полигон) Ц . Внутренние полигоны все еще должны быть выделены, если это не так, выделите их снова. После этого в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Detach (Отделить) и в появившемся окне выберите метод отделения Detach to Element (Отделить в элемент). То, что должно получиться после редактирования полигонов, показано на рис. 6.71.
•
Рис. 6 . 7 1 . Окончательно сформированные углубления для кнопок
284
Глава 6. Практическое моделирование
Теперь нужно сделать сами кнопки. Для этой цели используйте примитив ChamferBox (Параллелепипед с фаской) с параметрами, показанными на рис. 6.72. Parameters
|
Leneth: [ТГ7 Width РП
Ffet
Щ j
Width Seps: Height Sa»: JT Filet Sags pf Iv" Smooth W Generate Mapping Coord Г
Real-WorHMapSure
Рис. 6.72. Параметры объекта ChamferBox (Параллелепипед с фаской), использованного для формирования кнопок
Можно не изменять созданную кнопку, а можно преобразовать ее в Editable Mesh (Редактируемая поверхность) и немного поменять положение вершин, чтобы получить небольшое закругление верха кнопки. После того как будет сформирована одна кнопка, сделайте ее копии для всех имеющихся углублений (рис. 6.73).
Рис. 6.73. Окончательный вид кнопок
Функциональные кнопки (меньшие по размеру) создаются таким же способом. Теперь пора переходить к антенне, формированию мест для функциональных кнопок, отделке и фирменной надписи Panasonic. Начнем с антенны. Для ее моделирования создайте примитив Box (Параллелепипед), выполнив команду Create • Standard Primitives • Box (Создание • Простые примитивы • Параллелепипед), и настройте его параметры, как показано на рис. 6.74. Для дальнейшей работы построенный параллелепипед необходимо преобразовать в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши и в открытом контекстном меню выполните команду Convert То • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность).
Полигональное моделирование телефонной трубки
1епд»:[ТП5 WidthpHO) Length Segsp
285
S)
£j
W«*hSe9$:fi HeigHSegsfi
tj:t ;
P Genetate Mapping Coads, Г ReaWoddMapSrae ;
Рис. 6.74. Параметры примитива Box (Параллелепипед), предназначенного для моделирования антенны
Перейдите на уровень редактирования граней, щелкнув в свитке Selection (Выделение) на кнопке Edge (Ребро) <;.'. После этого выделите все боковые грани и примените к ним Chamfer Edges (Фаска ребер) со значением параметра Chamfer Amount (Величина фаски) 2. Затем выделите верхние грани и постройте еще одну фаску, указав величину среза 0,1. На уровне редактирования полигонов при помощи команды Inset (Смещение внутрь) сформируйте внутренний ряд ребер для последующего их выдавливания. Для этого выполните следующие действия. 1. Перейдите на уровень редактирования полигонов, щелкнув на кнопке Polygon (Полигон) • в свитке Selection (Выделение). 2. Выделите наружный торцевой полигон. 3. Щелкните на кнопке Settings (Настройки) рядом с кнопкой Inset (Смещение внутрь), находящейся в свитке Edit Polygons (Редактирование полигонов). 4. В появившемся окне Inset Polygons (Сместить полигоны внутрь) задайте параметру Inset Amount (Величина смещения) значение 1,2 (рис. 6.75).
ШШШШШШ Рис. 6.75. Формирование внутреннего ряда граней при помощи Inset (Смещение внутрь)
При помощи секущей плоскости или вручную разделите моделируемый объект на две части по широкой стороне. Это облегчит процесс дальнейшего формирования закруглений на антенне. Затем вернитесь на уровень Edit Polygons (Редактирование полигонов) и при выделенном торцевом полигоне примените к нему команду
286
Глава 6. Практическое моделирование
Bevel (Выдавливание со скосом). Для этого вызовите окно Bevel Polygons (Выдавливание со скосом полигонов), щелкнув на кнопке Settings (Настройки) рядом с кнопкой Bevel (Выдавливание). Задайте параметрам Height (Высота) и Outline Amount (Величина смещения) значения, показанные на рис. 6.76. Bevel Polygons HeigW:
Bevel Type * Group . Г Local Noimal
Г Apply
Outline Amount
pi
; Cancel
Рис. 6.76. Параметры выдавливания верхней части антенны
После того как будет сформирована, внешняя часть антенны, отредактируйте ее окончание, сделав на торцевых ребрах фаску и передвинув вдоль оси антенны наружу центральные вершины для формирования скругления (рис. 6.77).
Рис. 6.77. Окончательный вид антенны
Сделаем небольшое декоративное расширение в середине трубки. Для этого выделите средние ребра на боках трубки и примените к ним Chamfer Edges (Фаска ребер) со значением Chamfer Amount (Величина фаски), равным 2 (рис. 6.78).
Рис. 6.78. Применение Chamfer Edges (Фаска ребер) для формирования продольного шва
287
Полигональное моделирование телефонной трубки
Выделите серединный шов по всему периметру модели и примените к нему Extrude Edges (Выдавить ребра), щелкнув на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание). В появившемся окне Extrude Edges (Выдавить ребра) следует ввести значения, показанные на рис. 6.79. Extrude Edqes Е htiusion Height Too
j]
ExtruwnSa» Width,
(a?
:J OK.
Cancel
Рис. 6.79. Окно Extrude Edges (Выдавить ребра) с параметрами первого выдавливания
Щелкните на кнопке Apply (Применить), чтобы выполнить первое выдавливание. Затем, не меняя выделение и не закрывая окно Extrude Edges (Выдавить ребра), введите в поля новые значения высоты и ширины выдавливания (рис. 6.80).
Рис. 6.80. Окно Extrude Edges (Выдавить ребра) с параметрами второго выдавливания
Щелкните на кнопке О К для применения изменения. При кажущейся сложности задачи для построения профиля стыка понадобилось всего две операции. Сделайте тестовую визуализацию трубки (рис. 6.81).
^К
.*
Рис. 6 . 8 1 . Трубка с боковым швом
В трубке есть еще некоторые детали, которые необходимо смоделировать (например, функциональные кнопки, кнопку включения-выключения и т. д.), но я не стану описывать процесс их создания, так как он ничем не отличается от того, который мы рассмотрели для основных кнопок трубки.
288
Глава 6. Практическое моделирование
Смоделируем место для функциональных кнопок, выполнив следующие действия. 1. Добавьте еще один поперечный разрез у основания трубки. 2. В продольной плоскости разрежьте полигоны, лежащие по бокам. В результате должен получиться прямоугольник, сформированный ребрами (рис. 6.82).
Рис. 6.82. Ребра, формирующие площадку для функциональных кнопок
3. Примените к этим ребрам команду Extrude Edges (Выдавить ребра) так же, как для бокового шва. В результате у вас получится такой же шов, как и боковой, с той лишь разницей, что окажутся сильно сглаженными внутренние углы прямоугольника. Чтобы избавиться от этого эффекта, добавьте угловым ребрам Chamfer Edges (Фаска ребер) (рис. 6.83).
Рис. 6.83. Окончательный вид места для функциональных кнопок
Последний штрих — создание надписи на корпусе трубки. Ее нужно делать в последнюю очередь, так как после создания объекта ShapeMerge (Объединенные с формой) стек разрушится, и вы не сможете больше редактировать простую форму. Для создания текста сделайте следующее. 1. Выполните команду Create • Shapes • Text (Создание • Формы • Текст). 2. В области Text (Текст) свитка Parameters (Параметры) наберите, например, Panasonic.
Полигональное моделирование телефонной трубки
289
3. Задайте параметру Size (Размер), определяющему величину шрифта, значение 25 и выберите гарнитуру Arial Black. 4. Щелкните кнопкой мыши в окне проекции Тор (Сверху) для завершения создания текста (рис. 6.84).
Рис. 6.84. Расположение объекта Text (Текст) над корпусом трубки
Чтобы отобразить текст на поверхности трубки, выполните следующие действия. 1. Выделите модель телефонной трубки. 2. Перейдите на вкладку Create (Создание) командной панели, нажмите кнопку Geometry (Геометрия), в раскрывающемся списке выберите строку Compound Objects (Составные объекты) и щелкните на кнопке ShapeMerge (Объединенные с формой). 3. В свитке Pick Operand (Указать булев) нажмите кнопку Pick Shape (Указать форму), после чего щелкните на надписи Panasonic. В результате надпись спроецируется на поверхность трубки (рис. 6.85).
Рис. 6.85. Надпись, спроецированная на поверхность телефонной трубки
Далее выполните команду Modifiers • Mesh Editing • Edit Mesh (Модификаторы • Редактирование поверхности • Редактирование поверхности). Затем перейдите на уровень подобъектов редактирования полигонов, щелкнув в свитке Selection (Выделение) на кнопке Polygon (Полигон) Ц . Сейчас нужно выдавить надпись. По умолчанию она должна быть выделена, поэтому просто щелкните на кнопке Extrude (Выдавливание) и укажите величину выдавливания 0,5 (рис. 6.86).
290
Глава 6. Практическое моделирование
Рис. 6.86. Надпись на трубке, сделанная при помощи команды Extrude (Выдавливание)
На этом моделирование трубки телефона можно считать законченным. СОВЕТ Если у вас возникли трудности с моделированием, обратитесь к файлу phone.max, расположенному в папке CH06\Max\phone прилагаемого к книге компакт-диска.
Моделирование микроволновой печи Рассматривая процесс создания освещения в разд. «Использование базовых источников света в интерьере», мы использовали в сцене модели мебели и бытовой техники. Одним из таких объектов была микроволновая печь, о моделировании которой пойдет речь в данном упражнении. Модель, которую мы будем строить, имеет средний уровень детализации и позволяет углубить знания по технике моделирования полигональных объектов, полученные из предыдущих разделов. На рис. 6.87 показан результат визуализации микроволновой печи, которую нам предстоит моделировать.
Рис. 6.87. Результат визуализации микроволновой печи <*J5
Моделирование микроволновой печи
291
Минимум, который нам необходимо знать, прежде чем приступать к моделированию, — это габаритные размеры микроволновой печи. В нашем случае они составляют 325 х 280 х 455 мм. Начнем с моделирования корпуса. Для этого нужно построить примитив Box (Параллелепипед), выполнив команду Create • Standard Primitives • Box (Создание • Стандартные примитивы • Параллелепипед). Параметрами ширины, длины и высоты параллелепипеда будут габариты микроволновой печи (рис. 6.88).
Box
Ш 11Г Paiametets I w g t e j 325.0mm
t
W(dih:J4550mm" i .
P
Generate Mopping C o t » *
Г" Real-Woild Map Size
Рис. 6.88. Свиток Parameters (Параметры) настроек примитива Box (Параллелепипед)
Расположите этот параллелепипед в начале координат. СОВЕТ Согласно хорошему тону в моделировании считается, что построение самостоятельных объектов должно вестись в нулевой отметке системы координат. Такое расположение модели бывает полезным для создания симметричных копий объекта или просто привязки к координатной сетке. Построенный объект можно переместить в начало координат достаточно простым способом. Для этого можно выделить объект и, активизировав инструмент Select and Move (Выделить и переместить) 1«$» на главной панели инструментов, щелкнуть правой кнопкой мыши на стрелках, расположенных справа от полей X, Y и Z в нижнем поле экрана (рис. 6.89). В результате этих действий все значения параметров станут равны 0. S Rendering Time ЕПаЗЗ
Щ х|-БЭ.013mmiJY:j-165.995mi Jjzl0.0mm :
'^£ш<т^~ Add Time Teg
Рис. 6.89. Строка состояния с координатами положения объекта в пространстве
292
Глава 6. Практическое моделирование
Дальнейшее редактирование параллелепипеда рассмотрим ниже, а пока продолжим моделирование. Построим улучшенный примитив Chamfer Box (Параллелепипед с фаской), который будет выступать в качестве базовой формы для лицевой панели микроволновой печи. Чтобы его построить, воспользуемся командой главного меню Create • Extended Primitives • Chamfer Box (Создание • Улучшенные примитивы • Параллелепипед с фаской). Его размеры должны быть меньше габаритов корпуса, к тому же его грани должны быть немного закруглены. На рис. 6.90 представлен сам объект и его размеры. ICksmteiBoxU? |Modtabst
F
ChamfeiBoK
•»
It
—5
~j
'- О
Lsngdv ( Wi*e 1454.6mm ; j Heoht i 25.0mm
jj
|T
:
(TS
:|
Width Segs.
f
Smwih
1У Ganatate М
Рис. 6.90. Объект ChamferBox (Параллелепипед с фаской) (а) и его параметры (б)
Обратите внимание на то, что параметр Width Segs (Сегментов по ширине) стал равен 3, a Fillet Segs (Сегментов закругления) — 10. Это объясняется необходимостью увеличения количества полигонов для дальнейшего редактирования объекта. На этом параметрические свойства обоих объектов нам больше не понадобятся, и их можно конвертировать в Editable Poly (Редактируемая полигональная поверхность). Это проще всего сделать, щелкнув на объекте правой кнопкой мыши и выбрав из контекстного меню строку Convert To • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). Для дальнейшей работы нам понадобится только объект с именем ChamferBoxOl, который мы продолжим редактировать на уровне подобъектов. Следовательно, корпус микроволновой печи, построенный ранее (иначе говоря, объект BoxOl), необходимо спрятать. Для этого достаточно выделить его, щелкнуть на нем правой кнопкой мыши и выбрать пункт контекстного меню Hide Selection (Спрятать выделенное). Продолжим моделирование. Выделите ChamferBoxOl и перейдите на уровень редактирования полигонов. В окне проекции Left (Слева) выделите закругление, расположенное со стороны корпуса (рис. 6.91), и удалите его.
Моделирование микроволновой печи
293
Рис. 6 . 9 1 . Полигоны, выделенные для удаления
Таким образом мы уменьшим общее количество полигонов в сцене и немного упростим работу с объектом. Закруглим верхнюю и нижнюю части лицевой панели для придания ей нужной формы. Для изменения формы объекта перейдите на уровень редактирования вершин и выделите в окне проекции Left (Слева) два внутренних горизонтальных ряда вершин (рис. 6.92).
:
Рис. 6.92. Внутренние вершины, выделенные для редактирования
294
Глава 6. Практическое моделирование
Раскройте свиток Soft Selection (Плавное выделение) и установите флажок Use Soft Selection (Использовать плавное выделение). Параметрам Falloff (Спад) и Pinch (Сужение) задайте значения 13 и 1 соответственно (рис. 6.93). •••••••:
•
'.
' . • • ' • . .
v .
••
.•••.•
Use Soft Selection Г" Edge Distance: |* F
Affect Backfacmg Falloff j 13.0mm Pinch: [ТВ Bubble ГОТО
13,0mm
0,0mm
13,0mm
Shaded Face Toggle
,
\ Г Lock Soft Selection Pant Soft Selection Paint
j
Elui
Revert ; . ; • . . . . . . . . , • • • : : : ; • . . • • . ; . . : , :
Selection Value ITS Brush Size
I j I:
j 20,32m Jj
Рис. 6.93. Настройки свитка Soft Selection (Плавное выделение) и отображение выделенных вершин в окне проекции
ПРИМЕЧАНИЕ Если вы использовали иные размеры микроволновой печи, то вам придется задать другие значения параметров плавного выделения. Обратите внимание на то, чтобы самые крайние вершины остались синего цвета — это означает, что они не будут задействованы в трансформациях.
Щелкнитемна кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) | Щ главной панели инструментов и масштабируйте выделенные вершины по оси Y (по вертикали) до 93 % (увидеть процент масштабирования можно в поле, расположенном рядом с параметром Y в строке состояния) (рис. 6.94). Теперь необходимо разделить лицевую панель на две части: дверцу и панель управления. Именно для этого при построении объекта Chamfer Box (Параллелепипед с фаской) мы задали два разбиения по ширине. Воспользуемся ими. Перейдите на уровень редактирования вершин. В окне проекции Front (Спереди) выделите и переместите левый вертикальный внутренний ряд вершин так, чтобы он оказался на расстоянии 3-4 мм от правого. Это и будет то расстояние, которое образуется между дверцей и панелью управления. Выделите оба вертикальных ряда и переместите их немного вправо так, чтобы они находились на расстоянии 1/4 от правого края (рис. 6.95).
Моделирование микроволновой печи
295
Рис. 6.94. Скругление, полученное при помощи масштабирования вершин
Рис. 6.95. Положение внутренних рядов вершин
Чтобы завершить создание шва, необходимо выполнить еще несколько простых операций. 1. Перейдите на уровень редактирования полигонов и выделите полигоны между двумя вертикальными рядами вершин, которые только что редактировались. 2. В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке рядом с Extrude (Выдавливание).
296
Глава 6. Практическое моделирование
3. Параметру Extrusion Height (Высота выдавливания) открывшегося окна Extrude Polygons (Выдавливание полигонов) задайте значение 17, после чего нажмите ОК (рис. 6.96).
oil
Extrude Polygons s: -ExSiusiorfT^pe - - - - i j
j-17,0mm
*
Sreup
Г
l o c a l Normal
Г
By Polygon
Apply
Extrusion Height.
|
i;
|
OK
Cancel
Ш Рис. 6.96. Полигоны, выдавленные при помощи команды Extrude (Выдавливание)
Не снимая выделения с полигонов, активизируйте окно проекции Front (Спереди), щелкнув в нем правой кнопкой мыши. В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке View Align (Выровнять по окну), в результате чего полигоны выровняются в плоскости проекции (рис. 6.97).
Рис. 6.97. Выровненные в плоскости полигоны
297
Моделирование микроволновой печи СОВЕТ
Еще одним способом выравнивания полигонов в одной плоскости является команда Make Planar (Привести к плоскости) из свитка Edit Geometry (Редактирование геометрии).
Дальнейшее редактирование объекта будет относиться к его левой части, то есть к дверце, поэтому можно спрятать все лишние элементы. Для этого на уровне редактирования полигонов выделите часть объекта, относящуюся к панели управления, и только что построенный шов, а затем щелкните на кнопке Hide Selected (Спрятать выделенное) в свитке Edit Geometry (Редактирование геометрии). Продолжим моделирование. Дверца имеет прямоугольное окошко с закругленными углами — его нам сейчас и предстоит строить. Однако сначала необходимо создать шаблон, по которому будет выполняться построение. Это достаточно просто выполнить: в окне проекции Front (Спереди) постройте прямоугольник при помощи команды Create • Shapes • Rectangle (Создание • Формы • Прямоугольник) и в свитке Parameters (Параметры) задайте значения параметров, показанные на рис. 6.98. • ..-•. О ЕЗITI {RectangleOI
d
JModitoiLisI Rectangle
-*» .,)[
V 6 1
' +
Rendeiing
' t
Interpolation
h -
Parameters
a i
Lengttt|220.0mm Width.] 30>.0mm jj Comer Rai*u»j 15.0mm
11 S
Рис. 6.98. Расположение прямоугольника относительно дверки микроволновой печи (а) и его параметры (б)
Сейчас, имея шаблон формы окна дверцы, можно сделать соответствующие разрезы на фронтальной плоскости панели. Для этого перейдите на уровень редактирования полигонов и выделите большой внутренний полигон (позади прямоугольника), а затем щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии). В результате чего кнопка выделится цветом, а в окнах проекций появится секущая плоскость. При помощи инструментов поворота и перемещения расположите секущую плоскость в вертикальной плоскости напротив правой стороны прямоугольника (рис. 6.99), после чего щелкните на кнопке Slice (Сечение).
298
Глава 6. Практическое моделирование
Рис. 6.99. Положение секущей плоскости относительно прямоугольника
Переместите секущую плоскость к левой стороне прямоугольника и выполните аналогичный разрез. Поверните секущую плоскость в горизонтальном направлении и проделайте эти же операции над верхней и нижней сторонами прямоугольника. В результате центральный полигон будет иметь четыре новых разреза (рис. 6.100).
Рис. 6.100. Разрезы, выполненные в средней части дверцы
Для скругления углов необходимо перейти на уровень редактирования вершин и выделить четыре угловых вершины, образованных новыми разрезами. После это-
299
Моделирование микроволновой печи
го в свитке Edit Vertices (Редактирование вершин) необходимо щелкнуть на кнопке, расположенной рядом с Chamfer (Фаска). Параметру Chamfer Amount (Величина фаски) открывшегося окна Chamfer Vertices (Фаска вершин) задайте такое значение, чтобы линия, образованная новыми вершинами, касалась закругления сплайнового прямоугольника (рис. 6.101).
Рис. 6 . 1 0 1 . Новые вершины, образованные при помощи инструмента Chamfer (Фаска)
Щелкните на кнопке Apply (Применить) и задайте такое новое значение параметру Chamfer Amount (Величина фаски), чтобы новые образованные отрезки вновь касались кривой шаблона (рис. 6.102). У-: •'.">•.
ш Ар*
'«IS
Рис. 6.102. Новые точки, образовывающие угол
_J :
300
Глава 6. Практическое моделирование
При желании на данном этапе моделирования можно не изменять количество вершин. Однако если вы хотите получить более сглаженное закругление угла, то необходимо увеличить количество разбиений. Построив закругления, можно сохранить полученное расположение вершин. Однако я предпочитаю иметь более упорядоченную и оптимизированную геометрию, поэтому, используя команду Target Weld (Объединить целевую) из свитка Edit Vertices (Редактирование вершин), я соединил все свободные вершины в угловой точке (рис. 6.103).
Рис. 6.103. Угол после редактирования вершин
ВНИМАНИЕ Хочу напомнить, что все это время мы работали с точками одновременно в четырех углах лицевой панели двери. Для продолжения формирования окна в дверце микроволновой печи необходимо выдавить построенный полигон. Для этого перейдите на уровень редактирования полигонов и выделите большой центральный полигон с закругленными углами, после чего примените к нему команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания 10-20 мм (рис. 6.104). После выдавливания выделенный полигон можно удалить, создав таким образом сквозное отверстие, которое впоследствии закроем плоскостью с текстурой решетки и стекла. Создавая модели окружающих нас предметов, мы стараемся сделать их максимально похожими на оригиналы, но часто забываем о мелочах, которые усиливают
Моделирование микроволновой печи
301
такое сходство при визуализации. В жизни почти нет предметов с абсолютно ровными и острыми углами. То же самое касается окна в дверце микроволновой печи. Если не оставлять края ровными, а сделать фаску, то при визуализации такая форма значительно выиграет. В этом месте получатся блики, которые подчеркнут геометрию.
Ktrude Polygons
Belli! •
:
•
;
Extrusion Type
Extrusion Height:
# Group
j-i 0.0mm
t\
<* Local Noimal
Г Cancel - •
<
- '
<
••'•
•:-..,.
> - J , ; • : • ' • ' " " . . ' . _ . ;
•
•••••,..•-.
...••:
: ;
:--
. . . . .
...
..••..
•
•••
: • : • • • :
.
•
•
•
.
.
.
•
:
•
Рис. 6.104. Формирование углубления для окна
Для получения фаски необходимо перейти на уровень редактирования ребер и выделить все ребра, образующие внешний край отверстия. СОВЕТ Чтобы быстро выделить все ребра по кругу, можно выделить одно ребро, а затем в свитке Selection (Выделение) щелкнуть на кнопке Loop (Петля). В результате выделятся сразу все ребра, расположенные по периметру углубления.
В свитке Edit Edges (Редактирование ребер) щелкните на кнопке рядом с Chamfer (Фаска) и задайте параметру Chamfer Amount (Величина фаски) появившегося окна значение 1,5. Щелкните на кнопке Apply (Применить), а затем повторите создание фаски, выбрав значение равным 0,5. Таким образом вместо одного ребра, формирующего угол, вы получите четыре (рис. 6.105). Сформировав фаску, можно считать работу над дверцей законченной. Теперь можно перейти к моделированию панели управления, расположенной в правой части фасада микроволновой печи. Для этого необходимо открыть спрятанную ранее часть объекта и описанным выше способом спрятать отредактированную дверцу.
302
Глава 6. Практическое моделирование
Рис. 6.105. Фаска, сформированная при помощи инструмента Chamfer (Фаска)
ПРИМЕЧАНИЕ Напомню, что спрятать выделенные объекты можно при помощи кнопок Hide Selected (Спрятать выделенное) из свитка Edit Geometry (Редактирование геометрии), а отобразить все спрятанные объекты — используя кнопку Unhide All (Отобразить все).
На панели управления микроволновой печи находятся: ручки управления таймером и мощностью, а также кнопка для открывания двери, которые нам сейчас предстоит моделировать. Как и в случае с окном дверцы, предварительно построим шаблоны из стандартных форм, по которым будем проводить моделирование. Для этого нам понадобятся два сплайна Circle (Окружность) радиусом 27 мм и один сплайн Rectangle (Прямоугольник) с закругленными углами (рис. 6.106). Моделирование углублений для ручек управления и кнопки открывания дверцы начнем с построения разрезов секущей плоскостью. ПРИМЕЧАНИЕ Мы не собираемся анимировать создаваемый объект, поэтому можно упростить моделирование и не строить отдельные объекты (например, кнопку открывания дверцы), а лишь имитировать их.
Прежде чем выполнять разрезы секущей плоскостью, перейдите на уровень редактирования полигонов и выделите центральный полигон, а в свитке Edit Geometry (Редактирование геометрии) нажмите кнопку Slice Plane (Секущая плоскость). В окне проекции Front (Спереди) разместите секущую плоскость так, чтобы она
303
Моделирование микроволновой печи
совпадала с одной из сторон прямоугольника, затем щелкните на кнопке Slice (Сечение) для создания разреза. Повторите аналогичные действия для оставшихся сторон прямоугольника (рис. 6.107).
JRectangletG
3
Modifier List Rectangle
•т
V S
+
Rendering
+
Intefpojation Pararaetas Length: j 30.0mm
jj
Width j 68 Omm
Cj
Corner Radius:! 8,0mm
а
£•
б
Рис, 6.106. Расположение сплайнов на панели управления (а) и параметры прямоугольника (б)
Рис. 6.107. Центральный полигон, разрезанный для построения кнопки открывания дверки
304
Глава 6. Практическое моделирование
После этого сделайте еще три горизонтальных разреза по обе стороны от окружностей и между ними (рис. 6.108).
Рис. 6.108. Расположение горизонтальных разрезов
ВНИМАНИЕ Первым делается разрез между окружностями, чтобы определить расстояние от разреза до края окружности. Именно на такое расстояние необходимо сместиться от внешнего края окружности при втором и третьем разрезах. Построение закруглений вокруг кнопки открывания двери будут аналогичными тому, что мы уже делали на дверце, поэтому лишь напомню последовательность выполнения операций. 1. Перейдите на уровень редактирование вершин. 2. Выделите четыре угловые вершины и дважды (можно и больше, если хотите получить более сглаженное закругление) выполните команду Chamfer (Фаска). 3. При желании отредактируйте положение образованных вершин так, чтобы они сходились в одной или двух точках угла (рис. 6.109). Кнопка, которую мы создаем, имеет небольшое декоративное углубление в середине. Для его моделирования нам нужно построить ребра во внутренней части кнопки. Горизонтальные ребра выполним при помощи команды Connect (Соединенные)
Моделирование микроволновой печи
305
из свитка Edit Vertices (Редактирование вершин). Для этого необходимо выделить две горизонтальные точки (рис. 6.110) и щелкнуть на кнопке Connect (Соединенные). Проделайте такую же операцию и с двумя другими горизонтальными точками во внутренней части кнопки.
Рис. 6.109. Расположение граней, формирующих кнопку открывания двери
;:,.... '
шшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшшш, Рис. 6.110. Внутренние вершины, соединенные при помощи команды Connect (Соединенные)
В вертикальной плоскости нам не удастся применить команду Connect (Соединенные), потому что между точками проходят ребра. По этой причине воспользуемся
306
Глава 6. Практическое моделирование
инструментом Cut (Вычитание) из свитка Edit Geometry (Редактирование геометрии) и дважды разрежем внутреннее пространство по вертикали (рис. 6.111).
Рис. 6 . 1 1 1 . Разрезы, выполненные в вертикальной плоскости
Для формирования углубления понадобится еще некоторое количество ребер. Сделаем это в три приема. 1. Выделите внутренний полигон, образованный разрезами, и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке рядом с Inset (Смещение внутрь). В появившемся окне задайте параметру Inset Amount (Величина смещения) значение 3. 2. Не снимая выделения с построенного полигона, щелкните на кнопке, расположенной рядом с Tessellate (Разбиение) в свитке Edit Polygons (Редактирование полигонов). В открывшемся окне установите переключатель в положение Face (Грани) и щелкните на кнопке ОК (рис. 6.112). 3. Сдвиньте выделенные полигоны на небольшое расстояние внутрь, чтобы образовалось небольшое прямоугольное выдавливание. При выделенных полигонах щелкните дважды на кнопке Grow (Увеличить) в свитке Selection (Выделение) для увеличения выделения до границ контура кнопки. После этого щелкните правой кнопкой на объекте и выберите из контекстного меню строку Convert to Edge (Преобразовать в ребра). Чтобы активными остались только внешние границы выделения, удерживая нажатой клавишу Alt (в результате чего возле указателя появится знак -), снимите выделение с внутреннего пространства. Далее примените к выделенным ребрам команду Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) 0,8 (рис. 6.113).
307
Моделирование микроволновой печи
Tessellate Selection Туре: Г Edge *
Face
Рис. 6.112. Дополнительные ребра внутри клавиши
;m
Chamfer Edges Chamfef Amount j 0.8mm Apply
J
Open
OK
Cancel
Рис. 6.113. Применение команды Chamfer (Фаска) к выделенным ребрам
Далее необходимо сделать углубление по периметру кнопки — создать шов между клавишей и корпусом. Сделать это совсем просто: достаточно выделить внутренние полигоны, образованные построенными ребрами, и применить к ним команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с высотой выдавливания 5 мм (рис. 6.114).
308
Глава 6. Практическое моделирование
/ • •
. : •
•
•
•
•
.
.
.
;
-
.
.
.
.
•
,
;
i f Ktrude Polygons •
•• :
: V
E3I
" ExtfusionTi'pe
™
ft Gtouo
] -5.0mm
Г
LocelNoimel 1
f
ByPt*a*> Apply
OK
;
j
jj
Cancel
Рис. 6.114. Полигоны, выдавленные в области шва
После выдавливания вернитесь на уровень редактирования ребер (у вас должны остаться выделенными ребра по обе стороны шва) и создайте для выделенных ребер закругление, используя все тот же инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) 0,15. Это позволит получить закругления на краях, а следовательно, и более реалистичный вид модели после визуализации (рис. 6.115). .,,;,
' '•• • ••
Л
;
•'•.:-',1"
-
:
''•• ' ^ •; • • , :'\f': "'
: : : i
'
:
"
Рис. 6.115. Визуализированная модель передней панели микроволновой печи на данном этапе моделирования
Моделирование микроволновой печи
309
СОВЕТ Время от времени выполняйте тестовую визуализацию моделируемого объекта — это поможет оперативно выявить возможные ошибки.
Займемся отверстиями, в которых будут находиться ручки управления. Несмотря на то что их создание может показаться сложным, сделать это достаточно легко. Для этого в очередной раз обратимся к инструменту Chamfer (Фаска), но прежде нам необходимо провести небольшую подготовительную работу — разделить полигоны внутри будущих отверстий. Для создания дополнительных ребер внутри полигонов выполните следующие действия. 1. Перейдите на уровень редактирования полигонов и выделите два полигона, расположенных позади сплайнов. 2. В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке, расположенной рядом с Tessellate (Разбиение). 3. В открывшемся окне Tessellate Selection (Разбиение выделения) установите переключатель в положение Face (Грани) и щелкните на кнопке ОК. В результате этих операций каждый полигон будет поделен на четыре части (рис. 6.116).
Рис. 6.116. Разбиение полигонов командой Tessellate (Разбиение)
Перейдите на уровень редактирования вершин и выделите две вершины, находящиеся в середине окружностей. После этого примените к ним инструмент Chamfer (Фаска) с такой величиной параметра Chamfer Amount (Величина фаски), чтобы образовавшиеся ребра по меньшей стороне (в нашем случае боковые) касались сплайнов окружности (рис. 6.117).
310
Глава 6. Практическое моделирование
Chamfer Vertices Chamfer Amount: j 42.497mrr ; Appfy
Г" Open 0
Cancel
Рис. 6.117. Положение вершин после применения инструмента Chamfer (Фаска)
Для продолжения деления ребер при помощи инструмента Chamfer (Фаска) необходимо привести положение сторон внутренних полигонов к такому состоянию, при котором все четыре ребра внутренних полигонов будут соприкасаться со сторонами сплайна окружности. Боковые стороны объекта удовлетворяют такому требованию, поэтому остается скорректировать положение вершин по вертикали. Для этого выделите четыре вершины, относящиеся к одной из окружностей, и при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) Ц масштабируйте их по вертикали. После этого выполните те же операции и для второй окружности (рис. 6.118). Перейдите снова на уровень редактирования вершин и, выделив все восемь вершин, которые образовались после применения инструмента Chamfer (Фаска), повторите создание фаски от трех до четырех раз (в зависимости от того, какая детализация вам необходима) (рис. 6.119). СОВЕТ Чтобы строящаяся окружность была правильной формы, необходимо при делении вершин при помощи инструмента Chamfer (Фаска) придерживаться двух правил: ребра, образованные делением вершин, должны касаться шаблона окружности, а вершины по возможности находиться на одинаковом расстоянии друг от друга.
На рис. 6.120 показан фрагмент панели управления после объединения вершин при помощи команды Target Weld (Объединить целевую) из свитка Edit Vertices (Редактирование вершин).
Моделирование микроволновой печи
311
ПРИМЕЧАНИЕ Напоминаю, что это необязательные действия, но я предпочитаю по возможности оптимизировать геометрию и упорядочивать расположение вершин.
Рис. 6.118. Положение скорректированных вершин
Рис. 6.119. Окружность, образованная при помощи инструмента Chamfer (Фаска)
312
Глава 6. Практическое моделирование ••'••'•
щ
•;••;
'••••
: - Й . - .
Рис. 6.120. Положение вершин после оптимизации
В дальнейшем нам понадобится закруглить границы окружности, поэтому позаботимся о выделении необходимых ребер заранее следующим образом. 1. Перейдите на уровень редактирования полигонов и в окне проекции Front (Спереди) выделите два полигона в центре окружностей. 2. Щелкните на выделении правой кнопкой мыши и в контекстном меню выберите строку Convert to Edge (Преобразовать в ребра). В результате этих операций выделяются ребра по границам выделенных ранее полигонов. 3. Сохраните выделение, чтобы можно было работать с ним в будущем, и объедините выделенные ребра в именованную группу. Для этого укажите любое имя (лучше значимое, то есть такое, которое в будущем позволит быстро вспомнить, что вы выделяли) в поле Named Selection Set (Название выделенной области) главной панели инструментов (рис. 6.121), после чего подтвердите сделанные изменения нажатием клавиши Enter.
Рис. 6 . 1 2 1 . Раскрывающийся список Named Selection Sets (Название выделенной области)
Сейчас можно вернуться к выделенным полигонам и продолжить их редактирование. Нам необходимо выдавить окружности с целью получения углубления под ручками регулировки уровня мощности и таймером. Чтобы сделать это, достаточно воспользоваться инструментом Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания 5 (рис. 6.122). Как и в предыдущих случаях, на краях образованных углублений необходимо создать фаску. Для этого перейдите на уровень редактирования ребер. Если у вас снялось
Моделирование микроволновой печи
313
выделение с ребер, образующих верхний край углублений, то воспользуйтесь именованным списком, а затем примените к выделению инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) 0,6 (рис. 6.123).
Рис. 6.122. Выдавливание внутренних полигонов окружностей при помощи команды Extrude (Выдавливание)
Рис. 6.123. Визуализация выполненных углублений для ручек управления
Приступим к моделированию ручек управления, например, при помощи примитива Cylinder (Цилиндр). Для его построения необходимо выполнить команду
314
Глава 6. Практическое моделирование
Create • Standard Primitives • Cylinder (Создание • Стандартные примитивы • Цилиндр) с размерами, позволяющими расположить его внутри образованного углубления, и количеством сторон, близким к тому количеству ребер, которое получилось на границе образованных углублений (рис. 6.124).
|:
CylinderO!
ИИ
Modifier List Cylinder
* Ifil
§1 1II1EI
a
R«iiut: 126,0mm
^j
Height 15.0mm Height Segments: |1 Cap Segments: Sides: [30
11
штжШжтШЙШШ
Smooth Г I
Slice On
!
L ....
Рис. 6.124. Положение цилиндра (а) и его параметры (б)
Дальнейшая работа предполагает редактирование объекта на уровне подобъектов, поэтому необходимо конвертировать цилиндр в Editable Poly (Редактируемая полигональная поверхность). Кроме того способа конвертации, который мы применяли ранее (использование контекстного меню объекта), эту же операцию можно выполнить при помощи стека модификаторов. Для этого щелкните правой кнопкой мыши на типе объекта в стеке модификаторов и в появившемся списке выберите Editable Poly (Редактируемая полигональная поверхность). Перейдите на уровень редактирования вершин и в свитке Selection (Выделение) установите флажок Ignore Backfacing (Без обратной ориентации). Это позволит выбирать только вершины, находящиеся с лицевой части объекта. Чтобы построить ручку необходимой формы, нам понадобится добавить новые ребра цилиндру в его фронтальной части. Для этого будем выделять попарно противоположные вершины, расположенные в вертикальной плоскости, и соединять их при помощи команды Connect (Соединенные) из свитка Edit Vertices (Редактирование вершин). Нам понадобится соединить все вершины в вертикальной плоскости кроме двух пар, расположенных по краям (рис. 6.125). Для дальнейшего редактирования объекта нужны еще три горизонтальных разреза в середине цилиндра (рис. 6.126), которые необходимо выполнить при помощи инструмента Cut (Вычитание) из свитка Edit Geometry (Редактирование геометрии).
315
Моделирование микроволновой печи
и. б.ч4.
Рис. 6.125. Ребра, добавленные командой Connect (Соединенные)
:
'••:••
:
'
: • • • , . -
•;••
:
,
/
•
'"
>
: • К
Ч
W
М ...
1*
М
1
I. X
>
Рис. 6.126. Горизонтальные разрезы объекта
Разрезав объект по горизонтали, перейдите на уровень редактирования полигонов. В окне проекции Front (Спереди) выделите два средних ряда полигонов, начиная со второго и заканчивая предпоследним, а затем примените к выделенным полигонам команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) на величину выдавливания 1,5 мм (рис. 6.127).
316
Глава 6. Практическое моделирование
Рис. 6.127. Полигоны, выдавленные в средней части ручки
Теперь изменим положение вершин в пространстве. Нам необходимо расположить передний ряд только что построенных полигонов так, чтобы он образовывал полукруг (рис. 6.128). Легче всего это сделать в окне проекции Тор (Сверху), выделяя попарно вершины и двигаясь от края к центру.
Рис. 6.128. Расположение вершин в окне проекции Тор (Сверху)
СОВЕТ Если у вас недостаточно опыта, вы можете воспользоваться шаблоном, по которому можно выравнивать вершины. В данном случае необходимо построить шаблон окружности в окне проекции Тор (Сверху).
Моделирование микроволновой печи
317
Немного отредактируем вершины, находящиеся в средней части образованного выступа ручки. Для этого выполните следующие действия. 1. В окне проекции Front (Спереди) выделите средний ряд вершин выступающих вперед полигонов. 2. В окне проекции Тор (Сверху) сместите их по координате Y на -2. 3. Вернитесь в окно проекции Front (Спереди) и выделите два внешних ряда вершин выступающих вперед полигонов. 4. При помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) выполните масштабирование по оси X на величину 95 % (рис. 6.129). Это необходимо сделать для того, чтобы выступающая часть ручки получила требуемое закругление.
Рис. 6.129. Форма ручки управления после редактирования вершин
Осталось только сделать фаску по краю ручки и разбить геометрию. Чтобы сделать первое, перейдите на уровень редактирования ребер и выделите одно из ребер, лежащих на внешней окружности ручки управления, а затем щелкните на кнопке Loop (Петля) из свитка Selection (Выделение), в результате выделятся все ребра, лежащие на окружности. Примените инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) 0,6.
318
Глава 6. Практическое моделирование
Чтобы разбить геометрию и получить сглаженный результат, необходимо в свитке Subdivision Surface (Поверхности с разбиением) установить флажок Use Nil RMS Subdivision (Использовать NURMS-разбиения) и задать количество подразделений равное 2 (рис. 6.130).
Рис. 6.130. Готовая ручка панели управления
Копируйте созданную ручку, используя команду главного меню Edit • Clone (Правка • Клонировать), и разместите ее во втором отверстии панели управления. Таким образом, мы закончили моделирование лицевой панели микроволновой печи. Вернемся к самому началу. Еще нужно создать модель корпуса. Параллелепипед для него уже построен. Командой Unhide All (Отобразить все) контекстного меню откройте все ранее спрятанные объекты. Выделите параллелепипед, построенный для корпуса, и преобразуйте его в Editable Poly (Редактируемая полигональная поверхность). Перейдите на уровень редактирования ребер и в окне проекции Тор (Сверху) выделите два ребра, расположенных по бокам объекта в верхней его части. Дважды примените к вьщеленным ребрам фаску со значениями параметра Chamfer Amount (Величина фаски) 8 и 2,5 (рис. 6.131). Если бы дверца была непрозрачной, то моделирование корпуса на этом можно было бы считать законченным, но в данном случае необходимо выдавить фронтальный полигон, чтобы в корпусе образовалось внутреннее пространство. Для этого перейдите на уровень редактирования полигонов и в окне проекции Front (Спереди) выделите большой полигон лицевой части корпуса, после чего выполните команду Inset (Смещение внутрь) с величиной смещения 3,5 мм (рис. 6.132). Используя инструмент Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания -320 мм, сформируйте внутреннее пространство корпуса микроволновой печи.
319
Моделирование микроволновой печи
Рис. 6.131. Фаска в верхней части корпуса
:.
;
.
.:
.•.
.
i||||||||liili
illliilji Inset Polygons
liliiiii
Inset AroounS
Cancel
Рис. 6.132. Создание смещения Чтобы закончить моделирование, постройте плоскость, закрывающую окно двери. Для этого выполните команду Create • Standard Primitives • Plane (Создание • Стандартные примитивы • Плоскость). На рис. 6.133 представлена окончательная модель микроволновой печи.
320
Глава 6. Практическое моделирование
Рис. 6.133. Результат визуализации готовой модели микроволновой печи
ПРИМЕЧАНИЕ Для анализа готовой модели микроволновой печи вы можете загрузить файл сцены из папки CH06\Max\microwave прилагаемого к книге компакт-диска. Файл называется microwave.max.
В следующей главе мы рассмотрим принципы текстурирования микроволновой печи с использованием процедурных карт и идентификаторов материала.
Комплексный подход к моделированию: создание крана для ванной Я уже неоднократно говорил, любое моделирование должно начинаться с анализа будущей модели. Самым простым (и, наверное, самым правильным) спобом анализа является попытка мысленно разделить сложную модель части, для каждой из которых можно применить свой способ моделирования. Именно такой подход к моделированию я называю комплексным. Рассмотрим простой пример — нам необходимо создать модель магнитофона. Выполнив предварительный анализ, можно предположить, что большинство частей являются стандартными (Standard) или улучшенными (Extended) примитивами. Некоторые детали магнитофона могут потребовать более сложного подхода к моделированию, например создания составных объектов (Compound Objects). И лишь в редких случаях, когда нужно иметь полный контроль над геометрией, моделиро-
Комплексный подход к моделированию: создание крана для ванной
321
вание идет за счет наращивания полигонов или уточнения формы на уровне подобъектов по пути «от простого к сложному». Если обобщить вышесказанное, то можно сделать вывод, что комплексный подход к моделированию — это такой подход, при котором сложная модель мысленно разбивается на более простые геометрические формы, для моделирования которых применяются различные средства (использование примитивов, полигональное моделирование, NURBS-моделирование, лофт-моделирование и т. д.). В данном разделе рассмотрим комплексный подход к моделированию на примере крана для ванной (рис. 6.134).
Рис. 6.134. Визуализация модели крана для ванной комнаты <
Первое, что я сделал, прежде чем начать моделирование, — пошел в ванную комнату и произвел необходимые замеры.
СОВЕТ Если у вас есть возможность получить точные размеры объекта, который вы собираетесь моделировать, никогда не пренебрегайте такой возможностью — это поможет не только получить более реалистичную модель, но и сократить время моделирования. Замеры получены, с чего начинать? Вопрос скорее риторический, потому что начинать можно с любой детали (если у вас есть размеры, то вам нет необходимости привязываться к базовой геометрии). Я предпочитаю начинать моделирование с основных форм, постепенно «наращивая» детали. Воспользуемся именно этим способом. Начнем с корпуса крана. Он имеет довольно сложную форму. Казалось бы здесь не обойтись без NURBS- или Surface-моделирования либо без использования составного объекта. Однако, как показала практика, самым простым способом моделирования в данном случае является полигональное с последующим разделением полигонов.
322
Глава 6. Практическое моделирование
ПРИМЕЧАНИЕ В процессе написания данного раздела я пробовал создавать корпус при помощи полигонального, NURBS- и Surface-моделирования. В результате этих экспериментов сделал вывод: если вам не нужны точные размеры и идеальная форма, то быстрее и проще всего работать с полигональной моделью.
Построим объект Box (Параллелепипед) с параметрами, представленными на рис. 6.135.
|В<мО2
У в IВ Patametgts Length:| 19Й 0mm ; |
Length Segsj 7 WtdthSegs.fi HegbtSegs • " • . • : : •
а
v
P Generate MapptrflCoatds
б
Рис. 6.135. Параллелепипед (а) и его параметры (б)
Обратите внимание на то, что количество сегментов параллелепипеда установлено равным 7, что обусловлено количеством точек, в которых объект меняет свою форму. Построение параллелепипеда и создание нужного количества сегментов — это все, что нам нужно от стандартного примитива. Далее необходимо конвертировать объект в Editable Poly (Редактируемые полигоны), для чего щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert То • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). Перейдите на уровень редактирования подобъектов Polygon (Полигон) I В • выделите четыре полигона — крайние фронтальные и соответствующие им полигоны с противоположной стороны объекта (рис. 6.136). После выделения полигонов перейдите на вкладку Modify (Изменить) командной панели и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке, расположенной рядом с кнопкой Inset (Смещение внутрь). В результате появится окно Inset Polygons (Сместить полигоны внутрь), в нем задайте параметру Inset Amount (Величина смещения) значение 0,5 (рис. 6.137). Подтвердите внесенные изменения, щелкнув на кнопке ОК.
Комплексный подход к моделированию: создание крана для ванной
323
Рис. 6.136. Выделенные полигоны
Apply
Рис. 6.137. Окно Inset Polygons (Сместить полигоны внутрь)
Сейчас можно включить NURMS-сглаживание и посмотреть результат выполненного редактирования. Напомню, что сделать это можно, установив в свитке Subdivision Surface (Поверхности с разбиением) флажок Use NURMS Subdivision (Использовать NURMS-разбиения), а в области Display (Отображение) задайте параметру Iteration (Количество итераций) значение 2 (рис. 6.138). :••.-••-.
V
:..---;,-•-
Smoothflew»
W ShornC*gfc_.Н О**» Itetabonsc |2
Si
Smsolhness, 11.0
tj
Smoolhness,( epfliateSy Smoothing S*O Malenafe pdate Options
V/
WhenBendeting Manuafti Update
II
Рис. 6.138. Деталь крана после применения NURMS-разбиения
324
Глава 6. Практическое моделирование
Далее необходимо добавить заготовке небольшую «бочковатость» по краям. Именно в этих местах будут крепиться вентили кранов горячей и холодной воды. Сделать это довольно просто — достаточно разрезать три торцевых полигона с двух сторон. Чтобы выполнить такие разрезы, сделайте следующее. 1. На уровне редактирования полигонов выделите шесть полигонов (по три с каждой стороны), образующих торцы детали. 2. В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость) и в окнах проекций разместите секущую плоскость так, чтобы она, располагаясь вертикально, проходила через середину детали (рис. 6.139).
Рис. 6.139. Положение секущей плоскости 3. Нажмите кнопку Slice (Сечение) для создания новых граней, после чего щелкните на кнопке Slice Plane (Секущая плоскость), чтобы выключить режим секущей плоскости. 4. Перейдите на уровень редактирования вершин и сдвиньте наружу на расстояние 3 мм по две построенные вершины торцевых полигонов. На рис. 6.134 видно, что корпус крана имеет заметное утолщение в середине и некоторое сужение ближе к краям. Изменить форму таким образом довольно просто — достаточно передвинуть и масштабировать группы вершин.
ВНИМАНИЕ Проводить трансформации необходимо, именно выделяя группу и масштабируя ее относительно центра, а не перемещая отдельные вершины (в противном случае будет сложно сохранить симметрию).
Комплексный подход к моделированию: создание крана для ванной
325
На рис. 6.140 показана модель после того, как вершины в средней части были масштабированы и перемещены.
I
Рис. 6.140. Модель после выполненных трансформаций
Обратите внимание, что в местах будущего крепления кранов геометрия полученного объекта не представляет собой правильную окружность. Это как раз тот случай, о котором я говорил в самом начале раздела, имея в виду то, что метод полигонального моделирования имеет относительную точность форм. Немного улучшить форму позволит еще одно смещение ребер внутрь четырех полигонов, с которыми мы работали в начале раздела. Выделите их снова и еще раз примените к ним Inset (Смещение внутрь), но уже с большим значением параметра Inset Amount (Величина смещения), например 5 (рис. 6.141).
Рис. 6 . 1 4 1 . Окружности, полученные после второго смещения граней
326
Глава 6. Практическое моделирование
Переходим к моделированию средней части корпуса крана. В этом месте к корпусу крепятся ручка переключения душа, кран и стойка для размещения душа. Нам необходимо создать утолщения в месте крепления этих элементов. Два из них (вертикальные) имеют один размер, а фронтальное (для крепления ручки) немного меньший. Логично сначала построить их одинаковыми, а потом один из них уменьшить. Для придания детали нужной формы выделите три средних полигона (два вертикальных и один фронтальный) и примените к ним Bevel (Скос) из свитка Edit Polygons (Редактирование полигонов), как показано на рис. 6.142.
Haght
Bevel Type *"* Grow
I100
£"* Local Normal
Outline Amount;
*
pi
By Polygon Apply
OK
SI e]
1
Caned ....
••
•
! '
s I
Рис. 6.142. Начало формирование средней части
Сразу же, не снимая выделение с выдавленных полигонов, еще раз примените Bevel (Скос) с небольшим значением параметра Height (Высота), завершив таким образом построение средней части корпуса крана (рис. 6.143). Осталось масштабировать часть корпуса крана, к которой будет крепиться ручка переключения душ/кран. Воспользуйтесь для этого инструментом Select and Uniform Scale (Выделить и равномерно масштабировать). На этом построение корпуса крана можно считать законченным (рис. 6.144). Перейдем к моделированию кранов. Начнем с создания крепления. Внешне оно напоминает гайку, у которой вытянута одна сторона. Думаю, что в данном случае самым простым способом моделирования будет использование Surface-поверхности. Начнем с построения сплайнов. Для формы гайки лучше всего подойдет сплайн формы NGon (Многоугольник).
Комплексный подход к моделированию: создание крана для ванной
327
Bevel Polygons Beve* Type
j
<*" 5rouo С Local Noima^
Apply
|
Outline Amount
(
Cancel
i
Рис. 6.143. Создание еще одного скоса для выступающих частей корпуса крана
Рис. 6.144. Окончательный вид корпуса крана
1. Выполните команду главного меню Create • Shapes • NGon (Создание • Формы • Многоугольник) и постройте в окне проекции Front (Спереди) многоугольник с шестью сторонами и радиусом 16 мм. 2. Создайте еще один шестиугольник радиусом 13 мм, в настройках которого установите флажок Circular (Окружность).
328
Глава 6. Практическое моделирование
3. Выделите один из построенных многоугольников и преобразуйте его в Editable Spline (Редактируемый сплайн), а затем присоедините к нему второй многоугольник при помощи команды Attach (Присоединить). 4. Перейдите на уровень редактирования Segment (Сегмент), выделите все сегменты обоих сплайнов и разбейте их. Для этого задайте счетчику, расположенному справа от кнопки Divide (Разделить), значение равное 1 и щелкните на кнопке Divide (Разделить) для разбиения каждого выделенного сегмента на две части (рис. 6.145).
NGonOl
-з
j Modifier List В Editable Spline Vertex ^ — Segment Spline
•v,
•И I H I V 6
DlYldB
I (1
Detaeh:
I Г Г
|] Same Stiff й и м •'••
ПСад
So V
Рис. 6.145. Многоугольники с разделенными сегментами
Разбиение сплайнов необходимо для того, чтобы иметь возможность имитировать на гайке скос. ВНИМАНИЕ Первые вершины обоих сплайнов должны находиться на одной стороне (это важно для дальнейших построений, иначе произойдет скручивание поверхности объекта).
Копируйте созданные сплайны, для чего перейдите на уровень подобъектов Spline (Сплайн) и в окне проекции Тор (Сверху), удерживая нажатой клавишу Shift, переместите оба сплайна по координате Y на 10 мм. Кроме того, нам понадобится еще одна окружность меньшего диаметра, для построения копии которой выделите сплайн окружности и переместите его еще на 20 мм относительно предыдущих. Не снимая выделение, уменьшите его при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать). Теперь необходимо изменить форму двух шестигранников для соответствия их строящемуся объекту. Для этого выделите вершины, находящиеся в серединах сег-
Комплексный подход к моделированию: создание крана для ванной
329
ментов (те, которые были построены путем разделения сегментов), и немного сместите их в противоположные стороны (рис. 6.146). iie^-nS:
• .•
Рис. 6.146. Положение и форма сплайнов, подготовленных для создания модели гайки
После редактирования положения вершин шестигранников и размера окружностей можно переходить к построению поперечных сечений. В ранних версиях 3ds Max Cross Section (Поперечное сечение) существовала лишь в виде отдельного модификатора, но в последних версиях программы она стала частью редактора сплайнов. Воспользуемся ею для построения поперечных сечений и поверхности. 1. Выделите объект, состоящий из сплайнов, и перейдите к свитку Geometry (Геометрия) настроек объекта на команной панели. В области New Vertex Type (Тип новых вершин) установите переключатель в положение Smooth (Сглаживание).
ВНИМАНИЕ Все построенные сплайны должны принадлежать одному объекту. 2. В свитке Geometry (Геометрия) нажмите кнопку Cross Section (Поперечное сечение), в результате чего она выделится цветом. 3. В окне проекции Left (Слева) щелкните на сплайне меньшего радиуса, затем на втором сплайне и на следующем за ним шестиграннике (рис. 6.147). Щелкните правой кнопкой мыши для завершения построения поперечных сечений.
330
Глава 6. Практическое моделирование
Рис. 6.147. Поперечные сплайны для правой части гайки 4. В области New Vertex Type (Тип новых вершин) установите переключатель в положение Linear (Линейная) и продолжите построение поперечных сплайнов для оставшейся части объекта. 5. Создайте поверхность, для чего примените к объекту модификатор Surface (Поверхность), выполнив команду главного меню Modifiers • Patch/Spline Editing • Surface (Модификаторы • Редактирование патчей/сплайнов • Поверхность). 6. При необходимости в свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали). После этого получится почти готовая гайка. Ей лишь недостает четкости граней. Это легко исправить, установив для этой части модели отдельную группу сглаживания. Для этого примените к объекту модификатор Edit Mesh (Редактирование поверхности), перейдите на уровень редактирования полигонов и выберите полигоны, расположенные между двумя шестиугольниками. В области Smoothing Groups (Сглаживание) свитка Surface Properties (Свойства поверхности) щелкните на кнопке Clear All (Очистить все).
СОВЕТ При желании можно применить к объекту модификатор Shell (Раковина) для придания толщины. В результате этих действий гайка примет окончательный вид (рис.6.148). Теперь построим четыре гайки: три одинаковых стандартных гайки и одну со скосом, находящуюся у основания крана.
331
Комплексный подход к моделированию: создание крана для ванной
Рис. 6.148. Готовая модель гайки Их следует моделировать описанным выше способом (кроме того, вы можете немного изменить копию созданной гайки), поэтому не стану повторяться, а лишь покажу, как должны выглядеть сплайны и готовая поверхность новых гаек (рис. 6.149).
•
i Е •
1
•
:
"
:
"
•
•:
"
;
..
-
.
.
.
•
.
.
L
1 Я
Рис. 6.149. Форма сплайнов малой гайки
332
Глава 6. Практическое моделирование
Как видно на рис. 6.149, для этого типа гаек нужны пять сплайнов: четыре попарно зеркально отраженных и один (окружность меньшего диаметра) дублирован с масштабированием для придания утолщения на гайке (можно вместо этого использовать модификатор Shell (Раковина)). Две такие гайки будут располагаться с противоположной стороны корпуса крана для крепления к стене, а одна — в верхней части для крепления стойки (рис. 6.150).
Рис. 6.150. Корпус крана с гайками
Для нижней гайки характерно небольшое заужение геометрии к низу. Его можно получить, просто переместив последний сплайн на некоторое расстояние вниз и немного уменьшив его размер (рис. 6.151). Между нижней гайкой и корпусом должна располагаться втулка, роль которой в данном случае играет параметрический объект Cylinder (Цилиндр). Прежде чем приступить к более сложному моделированию, построим два декоративных элемента, закрывающих места крепления крана к стене. В нашем случае это может быть либо объект, выполненный методом вращения (при помощи модификатора Lathe (Вращение)), либо просто немного деформированная половина сферы. Я решил воспользоваться вторым способом, как более простым. Согласно моим измерениям диаметр окружности «чашки» составляет 70 мм, соответственно необходимо построить половину сферы (в настройках объекта Sphere (Сфера) установить флажок Hemisphere (Полусфера)) радиусом 35 мм и масштабировать ее по оси вращения (ось Z) (рис. 6.152). Дальнейшее моделирование может показаться вам более сложным. Это объясняется тем, что моделировать придется при помощи NURBS. В 3ds Max это процедура
Комплексный подход к моделированию: создание крана для ванной
333
не из легких из-за некоторых ограничений, которые необходимо учитывать при моделировании. Возможно, у вас появится закономерный вопрос: а зачем тогда пользоваться этой технологией, если все можно сделать при помощи полигонального моделирования? Ответ прост: потому что при правильном использовании форм, которые описываются неоднородными рациональными В-сплайнами (NURBS), результат окажется лучше (более сглаженные формы), к тому же его быстрее можно достичь.
Рис. 6 . 1 5 1 . Модифицированная гайка нижней части крана
Рис. 6.152. Корпус крана с гайками и декоративными элементами
334
Глава 6. Практическое моделирование
Перейдем к моделированию кранов. По сути это будут поверхности, созданные при помощи вращения кривых, с построения которых мы и начнем. В окне проекции Тор (Сверху) постройте NURBS-кривую размером 20 х 17 мм, как показано на рис. 6.153. Для этого воспользуйтесь командой Create • NURBS • CV Curve (Создание • NURBS • CV-кривая).
:
:
•••:••
'
; ; - i
••• •• ? • ' • , " . :
, - - \ }
Object Type .
^utoGrid
;:•'
Г"
j
.:' VS.* "]':, PcwtCurvs' j
CV Curve
\
Ыалпе and Color ;: | Curved
Г•
Keyboatd Entry
j
ueateCV Curve
Steps: p Г
^j i• • .
Ф Adaptive I P ;
Diaw In АЙ Viewports
Automatic Repaiamefi?ation
Рис. 6.153. CV-кривая, построенная в окне проекции Тор (Сверху) Чтобы создать поверхность, примените к построенной кривой инструмент Create Lathe Surface (Создать поверхность вращением), расположенный на «плавающей» панели NURBS. В результате должен получиться объект, напоминающий по форме бочонок (рис. 6.154).
Ports A -0 ^
5ff ffi
ii /-' S К ShJ fl V
И :* «5 15" "9
Рис. 6.154. Основание ручки
Комплексный подход к моделированию: создание крана для ванной
335
Теперь нужно создать еще один объект таким же способом, то есть вращением кривой профиля. На сей раз это будет кривая каплевидной формы, построенная при помощи CV Curve (CV-кривая) (рис. 6.155).
•
Рис. 6.155. Форма кривой части ручки
После создания кривой примените к ней инструмент Create Lathe Surface (Создать поверхность вращением), расположенный на «плавающей» панели NURBS. ПРИМЕЧАНИЕ Неискушенному пользователю может показаться, что легче и привычнее сделать такой объект, используя стандартные способы построения сплайнов и применяя модификатор Lathe (Вращение), в настройках которого переключать Output (Результат) установлен в положение NURBS. Такой подход вполне подходит для объектов, которые не будут редактироваться как NURBS-поверхность. В противном случае возможно возникновение проблем, которые при дальнейшем редактировании поверхности могут вызвать значительные затруднения или сбой в работе программы.
Продолжим моделирование. Теперь нужно сделать три копии только что построенного объекта. Эти копии нужно будет расположить по периметру корпуса ручки при помощи инструмента Array (Массив), поэтому сначала необходимо установить опорную точку (Pivot Point) в середину построенного ранее корпуса. Чтобы это сделать, нужно перейти на вкладку Hierarchy (Иерархия) командной панели и нажать кнопку Pivot (Опора). В свитке Adjust Pivot (Настройка опоры) следует щелкнуть на кнопке Affect Pivot Only (Только опора) и переместить в окне проекции Front (Спереди) опорную точку в середину корпуса ручки (рис. 6.156).
336
Глава 6. Практическое моделирование
CurveO2
||
~~РШ~~
К МЩ
\ Link Wo
Hvot
j
Affect Obmct Only Affect H batchy Q i * Alignment- -"• Center to Object ASgn to Object:
|
AligntoW«ld
I
Рис. 6.156. Опорная точка, размещенная в середине корпуса ручки Теперь можно создать массив из построенной детали. Для этого выполните команду главного меню Tools • Array (Инструменты • Массив), в результате чего откроется окно, в котором необходимо установить параметры, как показано на рис. 6.157.
-Array Transformation: Screen Coordinates (Use Pwot Point Center)
—~~—~-~—
Incremental X
:
Z
Y
-—
Totals X
Y
P
il P
*l P
«IП* мте [Л F^
:J Г"
•! Г
pto
tj jiff
^ fS57
j j r n в^е ГГ ГО
^J |ao
:
1100.0
t j j 100.0 ' t j [100.0
Typfi of Object—
; ^ сои.
t i f T Scale
> |
~ A r r ^ Dimensions — Count
* ID f4
tj
X
Incremental Row Offsets Y Z
«Instance Г Rsfeence
Reset AS Parameter
Cancel
Рис. 6.157. Настройки, выполненные в окне Array (Массив) В результате этих действий у вас должно получиться три копии объекта, расположенные по периметру корпуса. Остается только добавить фаску, чтобы поверхности объектов, составляющих ручку крана, выглядели более естественно, плавно перетекая одна в другую. Но прежде чем это делать, необходимо повернуть среднюю часть (корпус) на 45° (рис. 6.158). Это делается для того, чтобы шов, образованный
•
Комплексный подход к моделированию: создание крана для ванной
337
кривой вращения (белая линия, идущая от центра), не попадал в места пересечения объектов, в противном случае возникнут проблемы с созданием фаски.
Рис. 6.158. Взаимное расположение объектов, составляющих ручку
Сделайте копию средней части ручки и одной из пристыкованных деталей, чтобы впоследствии создать ручку переключения душ/кран. Переходим к созданию фаски. Прежде всего необходимо объединить все детали, относящиеся к ручке, в один объект. Для этого нужно выделить корпус (или любую другую деталь ручки) и, нажав в свитке General (Общие) кнопку Attach (Присоединить), выбрать в окне проекции все необходимые детали, относящиеся к ручке. Только после этого можно воспользоваться инструментом Create Fillet Surface (Создать поверхность-фаску) р ^ «плавающей» палитры NURBS. Выделив инструмент создания фаски, щелкните на одном из внешних объектов ручки (в результате он изменит цвет), а затем на корпусе. В результате получим фаску, параметры которой необходимо уточнить в свитке Fillet Surface (Поверхность-фаска). Задайте значения величины фаски при помощи параметров Start Radius (Начало радиуса) и End Radius (Конец радиуса) (у меня они равны 3,5). В областях Trim First Surface (Обрезать первую поверхность) и Trim Second Surface (Обрезать вторую поверхность) установите флажки Trim Surface (Обрезать поверхность) (рис. 6.159). Возможно, при обрезании поверхности (Trim Surface) вам понадобится установить флажки Flip Trim (Обратить обрезание) или Flip Normals (Обратить нормали) — все будет зависеть от того, как вы построили поверхность и как ее рассчитывает программа. Создание фаски необходимо повторить для всех деталей рукоятки крана. Чтобы закончить с этой деталью, добавим к фронтальной части улучшенный примитив OilTank (Цистерна) с небольшой фаской, выполненной при помощи выдавливания ребер. Для этого используем модификатор Edit Mesh (Редактирование поверхности) (рис. 6.160).
338
Глава 6. Практическое моделирование - _-____FrfetSuto____j; Start Яасйиё^^^2>- -Т End Radius' p * Ij' - Radius Interpolation
[
L ^
Br
Ни
—: ;
Seeds Surface 1 X
[0394
:
•
Surface 1Y: рГГЛ
:
Surface 2 X fO645
:
Trtm First Surface
Г
FlipTrm
-TrrmSecondSurface—~—:
О
i
;
FJipTtim
б
а
Рис. 6.159. Параметры фаски (а) и сопряжение двух деталей полученных с ее помощью (б) •• ••;••; ;<••?•• ' i j ' S , ; ; ^ / . . :
v
•
II
ff
''•_ ' " ' ' I B : *
•
: . • • : • •
1
к. .J Рис. 6.160. Готовая модель ручки
Ручка переключения на душ/кран делается из созданной ранее копии двух объектов. Это всего лишь немного модифицированная форма рычага переключения. ПРИМЕЧАНИЕ Напоминаю, что вы можете в любой момент перейти на уровень редактирования вершин и изменить форму кривой, использованной для тела вращения. Это можно сделать даже после создания фаски и обрезания поверхности.
•
Комплексный подход к моделированию: создание крана для ванной
339
Сейчас можно посмотреть на полученную модель крана в целом (рис. 6.161).
Рис. 6 . 1 6 1 . Результат визуализации части крана
Прежде чем начинать моделирование стойки, которая представляет собой, пожалуй, самую сложную с точки зрения формы деталь крана, создадим трубку в его нижней крана. Самый простой способ построения в данном случае — использование лофтинга с небольшим редактированием формы профиля. В окне проекции Left (Слева) постройте сплайн длиной 360 мм и загибами на концах по 80 мм (это будет сплайн пути), а в окне проекции Тор (Сверху) — окружность диаметром 18 мм для формы поперечного сечения (рис. 6.162). Чтобы получить лофт-объект, необходимо выделить сплайн пути и выполнить команду главного меню Create • Compound • Loft (Создание • Составные объекты • Лофтинговые). В результате на командной панели появятся настройки лофт-объекта. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Тор (Сверху) щелкните на построенной ранее окружности. В результате этих операций у вас должен получиться объект в виде изогнутой трубки.
СОВЕТ При необходимости можно скорректировать форму лофт-объекта путем редактирования вершин сплайна пути или радиуса окружности. Но это еще не все. Нам нужно создать утолщение на конце трубки (в том месте, где крепится сетка фильтра). Это проще всего сделать при помощи редактирования деформации масштаба. Чтобы получить доступ к этим параметрам, щелкните
340
Глава 6. Практическое моделирование
на кнопке Scale (Масштаб) в свитке Deformations (Деформации) настроек лофтобъекта. В результате откроется окно Scale Deformation (Деформация масштаба). В нем необходимо добавить в самом конце шкалы (а соответственно, и на самом лофт-объекте) несколько точек и отредактировать их положение так, чтобы профиль кривой повторял форму наконечника трубки (рис. 6.163).
Рис. 6.162. Форма сплайна пути
1 8 IX I SO •
-
85
|90
10 | * j
]95
.
•••-
*
!
1!
1 D tag in any direction to pen £ dit Wetdow.
j
г~ г~
'1Ш
J
jji
Рис. 6.163. Окно Scale Deformation (Деформация масштаба)
ПРИМЕЧАНИЕ Более подробно о том, как работать с лофт-объектами, рассказано в разд. «Моделирование лофт-объектов» данной главы.
Комплексный подход к моделированию: создание крана для ванной
341
После всех вышеописанных операций должен получиться объект, показанный на рис. 6.164.
Рис. 6.164. Результат визуализации созданной части крана
Моделирование держателя для душа может вызвать определенные затруднения, поэтому рекомендую очень внимательно отнестись к этой части раздела. Начнем с того, что уберем со сцены все объекты, кроме верхней гайки (она нам понадобится для того, чтобы иметь возможность привязаться к размеру ее внутреннего отверстия). В окне проекции Тор (Сверху) постройте окружность с диаметром, соответствующим внутреннему диаметру гайки. После создания сплайна конвертируйте его в NURBS, для чего щелкните на нем правой кнопкой мыши и выполните команду Convert To • Convert to NURBS (Преобразовать • Преобразовать в NURBS) контекстного меню. Используя «плавающую» палитру инструментов NURBS, примените к окружности инструмент Create Extrude Surface (Создать поверхность выдавливанием) Щ$ на высоту (значение параметра Amount (Величина) настроек кривой на командной панели) 65 мм. После выдавливания скопируйте полученный объект и поверните его на 90°. Таким образом получим ответвление в стойке для присоединения гибкого шланга (рис. 6.165). Чтобы получить сглаженное соединение двух поверхностей, присоедините командой Attach (Присоединить) одну поверхность к другой и создайте между ними фаску, как это было описано выше для ручек. В результате у вас должно получиться основание держателя (рис. 6.166).
342
Глава 6. Практическое моделирование
Рис. 6.165. Начало моделирования стойки
Рис. 6.166. Держатель после создания фаски
Перейдем к построению верхней части держателя. Ее форма является относительно сложной с точки зрения моделирования стандартными средствами, но можно воспользоваться небольшой хитростью — создать этот объект методом лофтинга.
Комплексный подход к моделированию: создание крана для ванной
343
В окне проекции Front (Спереди) постройте сплайн пути, а в окне Left (Слева) — два сплайна поперечного сечения (рис. 6.167).
Рис. 6.167. Форма сплайнов пути и профиля в окнах проекции фронтального вида (а) и вида слева (б)
Создайте лофт-объект, для чего выделите сплайн пути и выполните команду Create • Compound • Loft (Создание • Составные объекты • Лофтинговые). В результате этих операций на командной панели появятся настройки лофт-объекта. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и выберите в одном из окон проекций прямоугольник в качестве начальной формы поперечного сечения. После этого в свитке Path Parameters (Параметры пути) задайте параметру Path (Путь) значение 5, затем, щелкнув на кнопке Get Shape (Взять форму), выберите прямоугольник еще раз. Продолжите формирование объекта, задав параметру Path (Путь) значение 15 и выбрав модифицированный прямоугольник (с изогнутыми сторонами). Повторите эту же операцию для пути со значением 85 %. И, наконец, последнее: значение пути равно 95 %, и в качестве формы пути используется правильный прямоугольник (рис. 6.168). ПРИМЕЧАНИЕ Возможно, при построении лофт-объекта у вас окажутся перевернутыми сплайны поперечных сечений. Чтобы это исправить, можно выделить форму поперечного сечения на уровне подобъектов Shape (Форма) лофт-объекта и поворачивать ее до правильного положения в пространстве.
344
Глава 6. Практическое моделирование
Теперь необходимо изменить контуры объекта так, чтобы он стал больше похож на реальный держатель. Для этого воспользуемся деформацией масштабирования из свитка Deformations (Деформации). Щелкните на кнопке Scale (Масштаб), в результате чего откроется окно Scale Deformation (Деформация масштаба), в котором нажмите кнопку Display Y Axis (Показать ось Y) и отожмите Make Symmetrical (Сделать симметричным), чтобы деформация происходила только по оси Y. Добавьте кривой, расположенной в окне Scale Deformation (Деформация масштаба), по четыре точки, симметрично расположенных относительно центра, и одну в середине кривой. После этого скорректируйте их положения так, как показано на рис. 6.169.
Рис. 6.168. Лофт-объект, построенный в верхней части держателя душа
яга 13!
d) scale DeformationCY)
;*%. !и~* X
в ix
jjtr
Otagtacontaliyin Edit Window to scale diijj
Рис. 6.169. Окно Scale Deformation (Деформация масштаба)
Комплексный подход к моделированию: создание крана для ванной
345
В результате этих действий у вас должен получиться почти готовый элемент верхней части опоры (рис. 6.170).
Рис. 6.170. Держатель после применения деформации масштаба
Далее необходимо сделать углубления в верхней части держателя. Обычно я выполняю подобную работу при помощи редактирования полигональной поверхности на уровне подобъектов. Но есть более простой, хотя и не самый лучший путь — булева операция вычитания. СОВЕТ Я настоятельно рекомендую не злоупотреблять булевыми операциями, так как геометрия, получаемая после таких вырезаний, становится почти непригодной для дальнейшего редактирования. Кроме того, такая операция иногда приводит к аварийному завершению программы. В связи с этим перед применением булевых операций необходимо сохранить файл и проверить объекты на наличие ошибок (можно воспользоваться модификатором STL Check (STL-тест)). Применять булевы операции лучше всего на завершающей стадии моделирования объекта.
Постройте цилиндр с радиусом 12,5 мм и расположите его в верхней части держателя так, чтобы ось цилиндра совпадала с его верхней кромкой (рис. 6.171). Выделите держатель и выполните команду Create • Compound • Boolean (Создание • Составные объекты • Булев). В свитке Pick Boolean (Указать булев) щелкните на кнопке Pick Operand В (Указать операнд Б) и в одном из окон проекций
346
Глава 6. Практическое моделирование
выберите построенный цилиндр в качестве второго операнда. В результате у вас должна получиться геометрия верхней части держателя, как показано на рис. 6.172.
Рис. 6 . 1 7 1 . Объекты, подготовленные для булевой операции вычитания
Рис. 6.172. Модель на данном этапе
Займемся моделированием ручки душа. Здесь форма объектов сама подсказывает способы моделирования: наконечник с сеткой необходимо выполнять при помощи NURBS, среднюю часть как Surface-поверхность, а конечную — вращением сплайна.
Комплексный подход к моделированию: создание крана для ванной
347
СОВЕТ Большая часть построенных объектов не нужна для продолжения моделирования, поэтому имеет смысл спрятать их при помощи команды Hide (Спрятать), оставив лишь верхнюю часть стойки. Перейдем к построению NURBS-кривых. Основная форма, завершающаяся сеткой, напоминает колокольчик размерами 50 х 55 мм. Ее мы сейчас и построим (рис. 6.173).
•
•
• • /
••.
;
•:•••••:
•
••;•
•.
•
.
,
.
•
.
.
"
.
• -
•:..•,•
' " • " • • :
:
.:'••'
••
" • •
- . . . • - -
'
%
•
"
?
,
"
•
Рис. 6.173. Форма CV-кривой
Постройте NURBS-кривую и примените к ней инструмент Create Lathe Surface (Создать поверхность вращением) «плавающей» палитры инструментов NURBS так же, как это описано выше для ручек кранов. В результате у вас должен получиться объект, изображенный на рис. 6.174. Построение второй CV-кривой у вас не должно вызвать проблем, так как мы уже не раз выполняли такое построение, кроме того данная кривая имеет простую форму (рис. 6.175). СОВЕТ При работе с CV Curve бывает сложно создавать прямые углы или небольшие закругления, потому что NURBS старается сгладить кривую, расположенную между точками. Чтобы этого избежать, можно располагать ближе соседние точки, а также применять к ним весовой коэффициент (параметр Veight (Вес) в свитке CV уровня подобъектов Curve CV), что я в данном случае и сделал для угловой точки.
348
Глава 6. Практическое моделирование
Рис. 6.174. Поверхность, построенная вращением
Рис. 6.175. CV-кривая для формы вращения
Как и в предыдущих случаях, необходимо выполнить сглаженное объединение двух построенных объектов. Как вы уже знаете, чтобы построить фаску между двумя объектами, необходимо в первую очередь присоединить одну поверхность к другой (воспользовавшись иструментом Attach (Присоединить)}, а затем применить инструмент Create Fillet Surface (Создать поверхность-фаску) | ^ «плавающей» палитры NURBS. В результате должна получиться законченная верхняя часть ручки душа (рис. 6.176).
Комплексный подход к моделированию: создание крана для ванной
349
Рис. 6.176. Построенная часть ручки душа
Для построения средней пластмассовой части ручки снова обратимся к Surfaceповерхности. В данном случае это будет оптимальный и самый быстрый способ решения проблемы, связанной с нестандартной формой объекта. Начните с того, что в окне проекции Left (Слева) постройте окружность, используя сплайн NGon (Многоугольник) радиусом 10 мм. При этом для получения окружности необходимо в свитке Parameters (Параметры) настроек многоугольника установить флажок Circular (Окружность) (рис. 6.177). ВНИМАНИЕ Сплайн Circle (Окружность) имеет четыре сегмента, а нам для построения поперечного сечения ручки душа необходимо шесть. В связи с этим окружность должна быть создана именно при помощи сплайна NGon (Многоугольник), который позволяет задавать произвольное количество сегментов сплайна. Скопируйте данную или постройте новую окружность, но с радиусом 14 мм. Дальнейшая модификация окружностей не представляет сложности, но будьте внимательны при ее выполнении. 1. Выделите большую окружность (если она еще не выделена). 2. Щелкните на ней правой кнопкой мыши и преобразуйте ее в Editable Spline (Редактируемый сплайн). 3. Перейдите на уровень редактирования вершин и выделите все вершины, относящиеся к сплайну (их должно быть шесть).
350
Глава 6. Практическое моделирование
щт\ NGon I Modifier List NGon
В I Щ •f
Rendering
jf -
Interpolation Parameters
j: j• j
Radius:) 10.0 Jj | ** Inscribed С CifcumsCTtbed . Sides: f Corner Radius: I 17 Circular
Рис. 6 . 1 7 7 . Окружность, построенная при помощи сплайна NGon (Многоугольник)
4. Примените к ним Fillet (Закругление), для чего в свитке Geometry (Геометрия) введите в поле рядом с кнопкой Fillet (Закругление) значение 1 (на рис. 6.178 это внешние парные вершины). 5. Перейдите на уровень редактирования сегментов и выделите шесть больших сегментов сплайна, принадлежащих окружности. 6. В поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) установите значение 1 и щелкните на кнопке Divide (Разделить). В результате большие сегменты разделятся по середине на две части. 7. Перейдите на уровень редактирования вершин и выделите те шесть вершин, которые образовались в результате выполнения предыдущей операции. 8. Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), масштабируйте все выделенные вершины к центру так, чтобы они расположились на линии меньшего сплайна (рис. 6.178). Выполните описанные операции для меньшего сплайна, за исключением того, что для выполнения команды Divide (Разделить) необходимо выделять не большие сегменты, а маленькие, а также того, что смещения вершин не требуется (рис. 6.179). Для построения формы ручки нам потребуется всего пять сплайнов, поэтому после того как будет скорректирована их форма, необходимо копировать сплайны меньшего диаметра для получения еще трех таких же окружностей. Расположите их в окне проекции Тор (Сверху) так, чтобы большой сплайн с криволинейной формой находился в середине построенного ранее держателя, а по краям располагались по два меньших сплайна окружности. Причем размеры второго и четвертого сплайнов
Комплексный подход к моделированию: создание крана для ванной
351
f
Рис. 6.178. Внешняя окружность после редактирования вершин
Рис. 6.179. Расположение вершин на меньшей окружности
необходимо немного увеличить. Это нужно для того, чтобы ручка слегка изгибалась по всей длине (рис. 6.180).
352
Глава 6. Практическое моделирование
Рис. 6.180. Расположение сплайнов в окне проекции Тор (Сверху)
Прежде чем перейти к созданию поверхности, необходимо построить поперечные сплайны, соединяющие только что построенные формы поперечного сечения. Аналогичные действия мы выполняли уже не раз, поэтому я лишь вкратце напомню последовательность их выполнения и укажу особенности моделирования. 1. Используя команду Attach (Присоединить), объедините все сплайны в один объект. 2. В два этапа постройте поперечные сечения при помощи команды CrossSection (Поперечное сечение) из свитка Geometry (Геометрия): 1) установите переключатель области New Vertex Type (Тип новых вершин) в положение Smooth (Сглаживание) и создайте поперечные сечения для средней части между вторым, третьим и четвертым сплайнами; 2) измените тип строящихся вершин на Linear (Линейная) и закончите построения на краях. ПРИМЕЧАНИЕ Построение поперечных сечений в два этапа позволяет избежать искривления поверхности на краях и в то же время сглаживает кривые в середине (рис. 6.181).
После применения модификатора Surface (Поверхность) к построенным сплайнам должна получиться поверхность средней части ручки, изображенная на рис. 6.182. Создадим небольшую деталь, расположенную в месте крепления гибкого шланга. Ее можно сделать при помощи формы вращения. Можно также воспользоваться примитивом Cylinder (Цилиндр), для которого следует немного подкорректировать положение вершин, предварительно применив к нему модификатор Edit Mesh (Редактирование поверхности). Я решил воспользоваться вторым вариантом и построил цилиндр с тремя сегментами по высоте и диаметру немного большим, чем
Рис. 5.18. Финальная визуализация сцены, выполненная с использованием стандартных источников света и карты тени
Рис. 5.33. Визуализация витражного окна с применением эффекта объемного света
Рис. 5.34. Изображение интерьера, выполненное с использованием модуля VRay
Рис. 6.47. Визуализированная модель телефонной трубки, выполненная при помощи полигонального моделирования
Рис. 6.87. Модель микроволновой печи, выполненная и визуализированная стандартными средствами 3ds Max
Рис. 6.134. Визуализация крана для ванной комнаты, выполненная с использованием комплексного моделирования
Рис. 7.18. Визуализация натюрморта, выполненного с использованием параметрических объектов и стандартных источников света
Рис. 7.45. Модель игрушечного ослика
Визуализация флакона туалетно
1уля VRay
Рис. 9.108. Визуализация модели автомобиля стандартными средствами программы 3ds Max
Рис. 10.62. Визуализация автомобиля при помощи модуля VRay с использовани фотографии заднего плана
Рис. 11.104. Модель ресниц, выполненная с использованием модификаторов формы, анимации и контроллера поворота
с. 11.122. Модель женской головы без текс
11.131. Визуализация модели головы с настройками материала по умолчанию
Рис. 11.132. Визуализация модели головы после применения карты Falloff (Спад)
133. Изображение модели головы, полученное при помощи подключаемо
Рис. 11.140. Окончательная визуализация модели головы с использованием эффекта Hair and Fur (Волосы и мех) для генерации волос
Комплексный подход к моделированию: создание крана для ванной
353
ручка в месте их соединения. Затем, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), сделал нужную форму (рис. 6.183).
Рис. 6.181. Форма сплайнов поперечного сечения
Рис. 6.182. Результат визуализации средней части ручки душа
354
Глава 6. Практическое моделирование
Рис. 6.183. Форма детали у основания ручки Мы построили модель почти всего крана, осталось создать шланг для душа. Начнем с моделирования наконечников, которые крепятся к корпусу стойки и ручке душа при помощи резьбы. В данном случае, как и в предыдущем, можно воспользоваться примитивом Cylinder (Цилиндр) с последующей модификацией на уровне подобъектов или построить объект методом вращения профиля (рис. 6.184).
Рис. 6.184. Форма наконечника шланга
СОВЕТ Вы вполне можете обойтись построением трех цилиндров различного диаметра без последующего их редактирования.
Комплексный подход к моделированию: создание крана для ванной
355
Точно такой же наконечник шланга должен крепиться и к стойке держателя. Нам достаточно просто скопировать уже построенный и поместить в нужное место (рис. 6.185).
Рис. 6.185. Держатель и ручка вместе с наконечниками
Задача построения металлического шланга кажется сложной, однако решается весьма простым способом — созданием лофт-объекта на основе сплайна Helix (Спираль) и небольшого профиля (рис. 6.186). Высота спирали, ее радиусы и количество оборотов должны быть такими, как показано на рис. 6.186.
T
•
JHelixOI
„rl
[Modifier List Helk
ЕЭ Г +
Rendering
j- -
Радаяйиз
t
Radius 2" |6.7 Height j900,0 Ткет jTOO'd
*
CW
Г CCW
{
Рис. 6.186. Форма сплайна (а) и параметры спирали (б), подготовленные для построения лофт-объекта
356
Глава 6. Практическое моделирование
ПРИМЕЧАНИЕ Не забывайте, что создание сплайнов форм пути и профиля проводится в двух различных окнах проекций. В данном случае спираль строится в окне проекции Тор (Сверху), а форма профиля — в окне проекции Front (Спереди). На рис. 6.187 показаны основные параметры получившегося объекта и то, как он должен выглядеть.
Г СарёЫ Г Cap End * Moiph Г bnd Options
Shape Sfeps P
*
Path Steps.[Г~~~ ; Г* Optimize Shapes
Г W W vS Г* Г I? P
i,i
мИ„
Adaptive Path Steps Contour* Эапкпд Cofist^rft-CfDSSi'SftcEion bneat WetpcSalon FbpNoifflais Quad Sides Tfw^cemDeatede
Displ^ p Skin R Skin Bi Shaded
Рис. 6.187. Внешний вид полученного лофт-объекта (а) и его параметры (б)
Построив объект при помощи лофтинга, мы получили шланг нужного профиля, однако совершенно прямой, следовательно, его нужно изогнуть. На самом деле это не такая сложная задача, как кажется. Для ее решения необходимо построить сплайн, который бы соответствовал нужной форме и являлся кривой, по которой впоследствии будет деформироваться шланг. Кривая должна начинаться и заканчиваться в середине построенных ранее наконечников (рис. 6.188).
Рис. 6.188. Форма кривой для деформации шланга
Комплексный подход к моделированию: создание крана для ванной
357
Для дальнейшего построения формы сделайте следующее. 1. Выделите построенный лофт-объект и примените к нему модификатор деформации по пути, выполнив команду Modifiers • Animation • Path Deform (WSM) (Модификаторы • Анимация • Деформация по траектории). 2. В свитке Parameters (Параметры) настроек модификатора щелкните на кнопке Pick Path (Указать путь) и выберите в окне проекции сплайн, соответствующий форме, по которой будет деформироваться шланг. 3. В этом же свитке щелкните на кнопке Move to Path (Передвинуть на путь), чтобы лофт-объект принял форму сплайна (рис. 6.189).
т: "3 PathOe(ormBindng[WS
6 ES Parameters Path Defo I Path: Linem Pick Path Percent [OO Stteteh ( T o Rotation ffi Twist | o.O
Г X Г У № Z Г Flip
а
б
Рис. 6.189. Построенный объект (а) и его стек модификаторов (б) Это все, что требовалось сделать для построения модели крана для ванной комнаты. Осталось только открыть все спрятанные ранее объекты и визуализировать модель целиком (рис. 6.190). После того как модель создана, можно заняться оптимизацией геометрии, созданием материалов и наложением текстур. В завершение раздела хотелось бы подвести итоги и дать несколько советов. Начнем с того, что целью раздела было показать преимущество комплексного подхода к моделированию объектов сложной формы, в чем, я надеюсь, вы убедились сами на данном примере. В процессе моделирования крана мы применяли полигональное, NURBS- и Surface-моделирование, использовали параметрические объекты и формы, работали с объектами, полученными методом вращения формы и выдавливания и, наконец, закончили назначением модификатора анимации формы по пути. Все это в целом помогло нам в работе над сложной моделью, выполнение которой при помощи какой-либо одной техники потребовало бы значительно больших усилий.
358
Глава 6. Практическое моделирование
Рис. 6.190. Результат визуализации построенного крана
В процессе моделирования крана не стояла задача оптимизации геометрии, поэтому конечный объект получился со значительным количеством полигонов. Если вам нужно создать самостоятельный объект (без окружения), то количество полигонов не является критическим, но если объект является частью какой-то сцены, то его необходимо оптимизировать. Чтобы сделать это, в первую очередь убедитесь в том, что вам не понадобится редактировать объект (еще лучше, если вы сделаете резервную копию файла), затем сверните стек всех объектов до состояния Editable Mesh (Редактируемая сетка). Для NURBS-объектов можно предварительно настроить аппроксимацию поверхности и затем привести к редактируемой сетке. Кроме того, создание объектов с использованием методов разбиения сетки ведет к избыточному созданию полигонов по всей поверхности, даже там, где они не нужны для передачи формы (например, на ровных плоских участках). В таком случае для уменьшения количества полигонов можно использовать модификатор Optimize (Оптимизация).
ПРИМЕЧАНИЕ Для анализа готовой модели крана вы можете загрузить файл сцены shower.max из папки CH06\Max\shower прилагаемого к книге компакт-диска.
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
359
Использование модификатора Cloth (Ткань) для симуляции поведения тканей В завершение данной главы рассмотрим работу с новым модификатором Cloth (Ткань), появившимся в 3ds Max 8. В отличие от одноименного оператора модуля reactor этот модификатор в первую очередь призван облегчить создание и анимацию одежды моделируемых персонажей. Данный модификатор имеет достаточно широкие возможности, которые можно довольно долго описывать, я же хочу показать, как при помощи модификатора Cloth (Ткань) можно легко и просто создавать объекты, имитирующие поведение ткани. Мы рассмотрим, как создать два объекта: скатерть и развевающийся флаг. Для создания модели скатерти нам понадобится простая сцена, состоящая из двух объектов: столешницы и скатерти. Для построения первого объекта воспользуйтесь параметрическим объктом Box (Параллелепипед) (Create • Standard Primitives • Box (Создать • Стандартные примитивы • Параллелепипед)). В качестве второго объекта будет использован объект формы Rectangle (Прямоугольник) (Create • Shapes • Rectangle (Создать • Формы • Прямоугольник)). Создайте оба объекта в окне проекции Тор (Сверху). Расположите прямоугольник относительно объекта столешницы сверху и центрируйте по осям X и Y (рис. 6.191).
Рис, 6.191. Взаимное расположение объектов в сцене
ПРИМЕЧАНИЕ Для создания ткани можно также воспользоваться параметрическим объектом Plane (Плоскость) с достаточным количеством сегментов подлиней ширине (допустим, 50), однако использование сплайнов позволяет получить дополнительные возможности: создание объектов произвольной формы (например, скатерть с фигурными краями), внутренние швы и разрезы. Особенно это актуально при создании одежды.
Глава 6. Практическое моделирование
360
На основе объекта Rectangle (Прямоугольник) необходимо создать поверхность. Самый легкий способ — преобразовать прямоугольник в полигональную поверхность. Однако при этом мы потеряем дополнительные возможности объекта формы. Лучшим выбором в данном случае будет использование модификатора Garment Maker (Моделирование одежды), который появился в восьмой версии 3ds Max вместе с модификатором Cloth (Ткань). Чтобы присвоить этот модификатор, выделите в одном из окон проекций прямоугольник и выполните команду главного меню Modifiers • Cloth • Garment Maker (Модификаторы • Ткань • Моделирование одежды). Обратите внимание, что два из четырех углов стали закругленными. Избавиться от этого можно, выполнив разбиение вершин этих углов, что приведет к созданию самостоятельных сплайнов на уровне подобъектов формы. Для этого перейдите в стеке модификаторов на нижний уровень (то есть выделите в стеке строку Rectangle (Прямоугольник)), щелкните на раскрывающемся списке Modifier List (Список модификаторов) и выберите из списка модификатор Edit Spline (Редактирование сплайна) (рис. 6.192).
тж
PIT!
RectangleOI | Modifier List Ф §
•
Garment Maker
d
Q Edit Spline Rectangle
•m I я
: •• a
Рис. 6.192. Положение модификатора Edit Spline (Редактирование сплайна) в стеке
Для редактирования прямоугольника перейдите на уровень подобъектов Vertex (Вершина), для чего щелкните в настройках модификатора Edit Spline (Редактирование сплайна) на кнопке Vertex (Вершина) в свитке Selection (Выделение) или нажмите «горячую» клавишу 1. Выделите все четыре вершины прямоугольника, перейдите к свитку Geometry (Геометрия) и щелкните на кнопке Break (Разбить). После этого выйдите из режима редактирования вершин, повторно щелкнув на кнопке Vertex (Вершина), и вернитесь к модификатору Garment Maker (Моделирование одежды). Для продолжения работы необходимо обновить созданную модификатором поверхность и увеличить ее топологию. Для этого в свитке Main Parameters (Основные параметры) настроек модификатора Garment Maker (Моделирование одежды) щелкните на кнопке Mesh It (Расчитать сетку) и увеличьте значение параметра Density (Плотность) до 2.
ВНИМАНИЕ Увеличение количества треугольников, образующих поверхность объекта, позволит создать более естественное поведение ткани. Однако на компьютерах с низкой про-
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
361
изводительностью это может вызвать длительные расчеты динамики ткани и даже зависания. По данной причине на таких компьютерах лучше не задавать параметру Density (Плотность) значение больше 1. В результате выполнения описанных действий все углы станут ровными, а плотность сетки повысится, что позволит получить сглаженные складки поверхности ткани. На рис. 6.193, а показан фрагмент прямоугольника с примененным модификатором Garment Maker (Моделирование одежды) до редактирования, а на рис. 6.193, б — после.
Рис. 6.193. Фрагмент прямоугольника до редактирования (а) и после (б) Применим к прямоугольнику модификатор Cloth (Ткань), выполнив команду главного меню Modifiers • Cloth • Cloth (Модификаторы • Ткань • Ткань). Для настройки поведения ткани выполните следующие действия. 1. В свитке Object (Объект) настроек модификатора Cloth (Ткани) щелкните на кнопке Object Properties (Свойства объекта). 2. В появившемся окне Object Properties (Свойства объекта) выберите из списка доступных объектов прямоугольник (объект с именем RectangleOl) и установите переключатель в положение Cloth (Ткань). 3. В области Cloth Properties (Свойства ткани) из раскрывающегося списка Presets (Предустановки) выберите строку Default (Исходный) (рис. 6.194).
362
Глава 6. Практическое моделирование
Object Properties <* Property 1 f Property 2
f* Inactive AddDbjecK...
Remove
0
RectangleOI
Cloth Г" Use Pane! Properties Cloth P«spe г Presets'-
Load
| Default
zl
U Bend
> tj Thickness
VBend U В-Curve VB-Cutve U Stretch V Stretch
P
foo foo
J5O0 [Sao
Shear |5O0 Densuy Damping Plasticity
Save... j i ......
[ГОГ—:
ito ^i joss—: Djn Fric. lai :
t\ Repulsion «] ^J ii
A» Res
Static Fric.
F5
fb~005
l{
U Scale [To
рп jo.o'
»|
V Scale pTo
| Based on: Default
1
:.l Se» Fric. Г5~о j j Seam Force 15000.0
ll
Г" Ansotropic Г" Use Edge Sprmgs
Г
Oepth
Offset
[To | _
t
t_
1 t ~*i
Use Cloth Depth/Offset Г" Use Solid Fiiction
j •
Г" Keep Shape j 100,i£| Layer
f
Collision Object
r Collision Propetties i Depth Cancel
(ТУ '
Dyn. static Fric fa
Рис. 6.194. Настройка свойств объекта RectangleOI
Чтобы использовать в расчетах поведения ткани поверхности стола (в нашем случае — это построенный ранее параллелепипед) в свитке Object (Объект) настроек модификатора Cloth (Ткань) щелкните на кнопке Add Objects (Добавить объекты) и в появившемся окне Add Objects to Cloth Simulation (Добавить объекты к расчетам динамики ткани) выберите объект BoxOl и нажмите кнопку Add (Добавить). 5. Для объекта BoxOl установите переключатель в положение Collision Object (Объект столкновения) и оставьте значения, принятые по умолчанию (рис. 6.195). 6. Щелкните на кнопке ОК для закрытия окна Object Properties (Свойства объекта). Все готово к расчетам динамики ткани. Чтобы запустить эти расчеты, необходимо в области Simulation (Моделирование) свитка Object (Объект) щелкнуть на кнопке Simulate (Моделирование) или на кнопке Simulate Local (Локальное моделирование) (если не планируете создавать анимацию поведения ткани во времени).
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
363
ПРИМЕЧАНИЕ После запуска расчета динамики вы можете в любое время остановить его и выполнить дополнительную настройку свойств объектов, например изменить плотность сетки модификатора Garment Maker (Моделирование одежды). В этом случае необходимо вернуть ползунок таймера анимации на первый кадр (если вы не использовали локальные расчеты динамики) и щелкнуть на кнопке Erase Simulation (Очистить моделирование) в свитке Object (Объект).
Objects in Simulation Add0bieds
-..
jRectangleOI
r
Remove
* Piopertjii Г Property 2
С Inactive j
•••
Use \ г Presets•
J J:ixi
i bit-,? \
У Bend VBend UB-Cuiva V B-Cwve U Stretch V Stretch Shear Density Damping
i
Plasteity Based on: delaul
Г
г * Colisbn ONect p Cdision Properties
j Depth
fT
Рис. 6.195. Настройка свойств объекта Вох01
На рис. 6.196 показан результат расчета динамики ткани. ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке CH06\Max\table-cloth находится файл table-cloth, max, который вы можете загрузить для просмотра и анализа выполненной анимации. Обратите внимание, что расчет динамики поведения ткани выполнялся с одновременным сохранением анимации, поэтому увидеть результат можно, запустив кнопкой Play Animation (Воспроизвести анимацию) просмотр анимации в окне проекции или передвинув ползунок таймера анимации на последний кадр.
364
Глава 6. Практическое моделирование
Рис. 6.196. Результат расчетов модификатора Cloth (Ткань)
Рассмотрим еще один вариант использования модификатора Cloth (Ткань): создадим модель развевающегося флага. В этом нам поможет замечательная особенность данного модификатора, позволяющая взаимодействовать со стандартными объектами категории Force (Сила). Как всегда начнем с построения объектов. Для имитации флага нам понадобятся два объекта: Plane (Плоскость), имитирующий полотно флага, и Wind (Ветер), который будет удерживать флаг в горизонтальном положении (по умолчанию на объекты, к которым применен модификатор Cloth (Ткань), действует сила тяжести). Для построения плоскости переключитесь в окно проекции Front (Спереди) и выполните команду главного меню Create • Standard Primitives • Plane (Создать • Стандартные примитивы • Плоскость). В свитке Parameters (Параметры) построенного объекта установите желаемые размеры флага и увеличьте значения параметров Length Segs (Сегментов по длине) и Width Segs (Сегментов по ширине) до 20-25. Это позволит получить более естественную деформацию ткани. Для построения объекта, имитирующего ветер, необходимо выполнить команду главного меню Create • SpaceWarps • Forces • Wind (Создать • Пространственные деформации • Силы • Ветер) и в окне проекции Тор (Сверху) построить значок ветра, развернув его по направлению к флагу (рис. 6.197). Назначьте плоскости модификатор ткани. Для этого в одном из окон проекций выделите плоскость и выполните команду главного меню Modifiers • Cloth • Cloth (Модификаторы • Ткань • Ткань). Настройте модификатор следующим образом.
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
365
Рис. 6.197. Взаимное расположение плоскости и значка ветра
1. Перейдите на уровень редактирования подобъектов модификатора Cloth (Ткань), для чего щелкните на плюсике, расположенном слева от имени модификатора в стеке, и выделите строку Group (Группа). 2. Выделите слева верхнюю и нижнюю боковые вершины и щелкните на кнопке Make Group (Создать группу) в свитке Group (Группа). В результате откроется окно Make Group (Создать группу), в котором необходимо указать имя группы. Таким образом мы создадим группу из двух точек, которые будут крепиться к древку флага и не будут участвовать в расчетах динамики. 3. После создания группы щелкните на кнопке Drag (Помеха) в свитке Group (Группа). При этом созданная группа должна быть активной (рис. 6.198). 4. Выйдите из режима редактирования подобъектов, для чего щелкните в стеке модификаторов на строке Cloth (Ткань). 5. В свитке Object (Объект) щелкните на кнопке Cloth Forces (Силы, воздействующие на ткань). 6. В левой части открывшегося окна Forces (Силы) щелкните на строке WindOl и нажмите кнопку >, в результате чего WindOl переместите в список Forces in Simulation (Симуляция сил). 7. Вернитесь к свитку Object (Объект) натроек модификатора Cloth (Ткань) и щелкните на кнопке Object Properties (Свойства объекта). 8. В открывшемся окне Object Properties (Свойства объекта) выделите строку PlaneOl и установите переключатель в положение Cloth (Ткань).
366
Глава 6. Практическое моделирование
;*|Р1апеО1 Modifier List В Cloth \-~- Group j I '
Panel Seams Faces
2 Vertices 5 ejected Рис. 6.198. Свиток Group (Группа) с созданной группой из двух точек
9. Из ракрывающегося списка в области Cloth Properties (Свойства ткани) выберите строку Silk (Шелк). Таким образом, объекту Plane (Плоскость) будут присвоены свойства шелковой ткани (рис. 6.199). 10. Подтвердите выполненные изменения щелчком на кнопке ОК. Все предварительные настройки произведены, осталось только увеличить силу ветра и запустить выполнение расчетов динамики ткани. Для этого выделите в одном из окон проекций значок ветра и в свитке Parameters (Параметры) настроек данного объекта увеличьте значение параметра Strength (Мощность) до 5. Чтобы запустить расчет динамики, вернитесь к модификатору Cloth (Ткань) и в свитке Object (Объект) щелкните на кнопке Simulate (Моделирование). На рис. 6.200 представлен флаг, полученный при помощи модификатора Cloth (Ткань).
Использование модификатора Cloth (Ткань) для симуляции поведения тканей Object Properties s in Simulation Remove
tractive Ш Ь . Г , Use Pane! Properties Ooth Properties ••
•
• • • •••
Load.. '. Save.
Sill
U Bend V8snd UB-Curve VB-Curve LtStieteb VStetoh Shea
* Property 1 r Property 2
(15.0 j j Thickness Щ Щ 115.0 "" t\ Repulsion [To Cjj ffl Й Air Res [0.015 ^ f^O ^ j DyaFric. [OJ ^ 125.0 i< StaticFiic. Г°~2 ij| J25.0 Zj Self Fric. Щ i]i ! |Ж0 :1 Seam Force j5000.0 t
Oempi
" 3 (001 S] VScaleJ1.0 ^j Rastictty Щ i Depth |1.O jj Based o n ; » Oitel [To ^j ,;: Г An«ottopfc Г Use Ctoth D eptWQffset • f~ Use Edge Springs Г" Use Solid f Notion Г* Reap Shape |100.I t\ Lajra pT~ t j
p Cefeion Properties — Cancel
I Depth
Г
:
шгл
I
: Static Fric. j
Dyri Fric. ]
Рис. 6.199. Свойства ткани, настроенные для объекта Planed
Рис. 6.200. Флаг, полученный при помощи модификатора Cloth (Ткань)
367
368
Глава 6. Практическое моделирование
Мы рассмотрели только малую часть того, что можно сделать при помощи модификатора Cloth (Ткань). Симуляция реального поведения ткани требует более детальных настроек с большим количеством экспериментов. В качестве самостоятельного задания вы можете попробовать выполнить расчеты с другими видами ткани и даже составить и сохранить свои собственные настройки для их последующего применения. ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке CH06\Max\flag находится файл flag.max, который вы можете загрузить для просмотра и анализа выполненной анимации.
1Л 3В3
/
Текстурирование • Материал, имитирующий хром • Текстурирование натюрморта • Текстурирование микроволновой печи • Сложное текстурирование • Создание стеклянного флакона при помощи подключаемого визуализатора VRay
370
Глава 7. Текстурирование
Можно сделать замечательную модель, потратив много времени на создание деталей. Можно безукоризненно выставить свет и сделать многое другое, чтобы улучшить работу, но без хороших текстур вы не сможете добиться реалистичности. Создание материала, как правило, долгий и кропотливый процесс со множеством экспериментов. Иногда приходится потратить не один час на то, чтобы сделать приемлемую текстуру. Редактор материалов в 3ds Max настолько хорош, что позволяет получить практически любую текстуру, — все зависит только от ваших знаний и воображения. Работа по созданию материалов не ограничивается возможностями программы 3ds Max, вам не обойтись без программ растровой графики. Кроме того, существуют программы, позволяющие рисовать непосредственно на трехмерных объектах. В этой главе вы познакомитесь с тем, как создавать реалистичные материалы и текстуры средствами программы 3ds Max.
Материал, имитирующий хром В этом разделе рассмотрим, как при помощи небольшого трюка можно создать вполне приемлемый материал хрома. Хромированные детали очень эффектно смотрятся, поэтому их часто применяют в трехмерной сцене. Прежде чем говорить о создании материала, необходимо определиться с понятием хрома. Что такое хром? Это материал с высокой отражающей способностью и контрастностью, поэтому первое правило, которое нужно помнить при его использовании: для хромированного объекта важно окружение, то есть те предметы, которые будут отражаться в хроме. В данном случае возможно два варианта: • смоделировать окружение (если его нет); • создать иллюзию присутствия рядом других предметов при помощи соответствующих текстурных карт. Второе правило реалистичного хрома заключается в том, что объект, которому присваивается хромированный материал, должен иметь сглаженные формы. Например, на примитиве Box (Параллелепипед) значительно сложнее создать реалистичный хром, нежели на ChamferBox (Параллелепипед с фаской). Рассмотрим создание материала хрома при помощи процедурной карты, то есть исключительно средствами программы 3ds Max . Первое, что для этого понадобится, — объекты, с которыми вы будете работать. Для их создания сделайте следующее. 1. Выполните команду Create • Extended Primitives • Torus Knot (Создание • Сложные примитивы • Тороидальный узел).
Материал, имитирующий хром
371
2. Щелкните в окне проекции Тор (Сверху) и создайте примитив Torus Knot (Тороидальный узел). 3. На небольшом расстоянии от первого постройте еще один примитив Torus Knot (Тороидальный узел). Два объекта нужны, чтобы они отражались друг в друге. 4. Для создания плоскости, на которой будут располагаться эти объекты, выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость). 5. Щелкните в левом верхнем углу окна проекции Тор (Сверху) и переместите указатель мыши в нижний правый угол так, чтобы построенные ранее примитивы оказались на плоскости (рис. 7.1).
Рис. 7 . 1 . Два примитива Torus Knot (Тороидальный узел) и примитив Plane (Плоскость)
Теперь можно переходить к непосредственному созданию материала. Идея использования карты Gradient Ramp (Усовершенствованный градиент) основывается на простом наблюдении. В хромированном предмете, лежащем на плоскости, отражаются три пространства: •
снизу отражается плоскость, на которой лежит предмет;
•
сверху — потолок, небо, то есть что-нибудь светлое;
•
стороны отражают окружающие предметы и пространство, уходящее вдаль (эти отражения по большей части темные благодаря «жестким» отражениям).
Для построения материала хрома нужна бело-черно-белая текстура, которую легко создать и контролировать при помощи карты Gradient Ramp (Усовершенствованный градиент). Чтобы ее создать, выполните следующие действия. 1. Откройте Material Editor (Редактор материалов), щелкнув на кнопке ®§, находящейся на панели инструментов, или выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов). 2. Выберите ячейку со свободным материалом. 3. Разверните свиток Maps (Карты текстуры), щелкните на кнопке None (Отсутствует) рядом с картой Reflection (Отражение).
372
Глава 7. Текстурирование
4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Gradient Ramp (Усовершенствованный градиент). 5. Настройте параметры материала, как показано на рис. 7.2. *5> JMap«18
t«fert йаир }
СояЛаы Texture <* Environ Mapping: |Sphericaf Environment
Pltat
V:po3s Blur: pC6
Til
j ] ]To
1
Minor Tile
P ;j Г
: ] 81« offset f o B
j£j
Г U. 15 V:fcT3
:
:
Relate |
R-2S5,G-255.B«255
•»
tnteipolatiDn: Solid
Рис. 7.2. Параметры настроек карты Gradient Ramp (Усовершенствованный градиент)
Разберем подробнее настройки этой карты. Прежде всего нужно в раскрывающемся списке Gradient Type (Тип градиента) выбрать значение Linear (Прямой), а в Interpolation (Интерполяция) — строку Solid (Постоянная). После этого назначьте два цвета: белый и черный (или близкий к черному). Для этого дважды щелкните на ползунке под шкалой градиентного перехода и в открывшемся окне Color Selector (Выбор цвета) выберите нужный цвет. Соотношение цветов должно быть близким 1:2, то есть белый цвет должен занимать в два раза больше места, чем черный. Затем нужно повернуть карту на 90°, задав значение W для Angle (Угол) равным 90, и установить флажок Mirror (Зеркальное отображение) для координаты U. Чтобы избежать резкого перехода на стыке цветов, можно увеличить значение параметра Blur (Размытие). Можно также использовать карту Noise (Шум), чтобы еще больше сгладить резкий переход. В результате вышеописанных операций у вас должна получиться процедурная карта, подобная показанной на рис. 7.3.
Рис. 7.3. Процедурная карта Gradient Ramp (Усовершенствованный градиент) после выполнения всех настроек
Материал, имитирующий хром
373
В свитке Coordinates (Координаты) необходимо задать способ использования карты, установив переключатель в положение Environment (Окружающая среда), а из списка Mapping (Проекция), который определяет способ наложения координат, выбрать Spherical Environment (Сферическая фоновая), так как вы создаете карту для окружения. На этом с основными настройками можно закончить. Следующим шагом разработки материала хрома является создание материала Raytrace (Трассировка), который в качестве карты окружения будет использовать созданную вами градиентную карту. Для этого выполните следующие действия. 1. Щелкните на кнопке выбора материала — Gradient Ramp (Усовершенствованный градиент). 2. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт текстур) выберите из списка карту Raytrace (Трассировка). 3. Ответьте утвердительно на предложение оставить созданную карту Gradient Ramp (Усовершенствованный градиент) в качестве подматериала. В результате в свитке Maps (Карты текстур) стандартного материала в качестве карты Reflection (Отражение) будет загружена карта Raytrace (Трассировка). Можно ограничиться этим, но мы создадим еще материал Raytrace (Трассировка). Отличие карты Raytrace (Трассировка) от материала Raytrace (Трассировка) заключается в том, что материал имеет больше параметров и позволяет получить лучшее качество при визуализации. Для создания материала Raytrace (Трассировка) выполните следующие действия. 1. Выберите в окне Material Editor (Редактор материалов) ячейку со свободным материалом. 2. Щелкните на кнопке Standard (Стандартный) для выбора материала. 3. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт текстур) выберите из списка материал Raytrace (Трассировка). 4. Скопируйте карту Gradient Ramp (Улучшенный градиент), щелкнув правой кнопкой мыши на кнопке Gradient Ramp (Улучшенный градиент), созданной ранее, и из появившегося списка выберите способ копирования Сору (Независимая копия объекта). 5. В свитке Raytrace Basic Parameters (Базовые параметры трассируемого материала) материала Raytrace (Трассируемый) щелкните правой кнопкой мыши на кнопке Environment (Окружающая среда) и из появившегося списка выберите Paste (Copy) (Вставить (копию)). 6. Измените параметры материала Raytrace (Трассировка) так, как показано на рис. 7.4. При желании можно увеличить значение параметра Index Of Refr (Коэффициент преломления). В качестве типа затенения из списка Shading (Затенение) выбран Metal (Металл) — это также необязательно, но создает более жесткие цветовые переходы, характерные для хрома.
374
Глава 7. Текстурирование
%
Ambient; ! ? •
flay&ace
| ,
j
Lumrcsilv P •
•
•
,
Рис. 7.4. Настройки параметров материала Raytrace (Трассировка) для хрома
Более важным в настройках является параметр Reflect (Отражение), который управляет отражательной способностью материала. В данном случае нужно выбрать светло-серый или серо-голубой цвет (для придания этого оттенка хрому). Назначьте материал объектам (рис. 7.5).
Рис. 7.5. Объекты сцены после применения материала хрома
Немного усложним объекты и добавим надпись, сделанную при помощи карты Bump (Рельефность) и объекта Text (Текст). Результат показан на рис. 7.6. Добавлю, что визуализация проводилась стандартным визуализатором программы 3ds Max 8 без применения глобального освещения, каустики и других специальных эффектов, придающих изображению более реалистичный вид. В данной сцене использовалось только трехточечное освещение с применением Area Shadow (Область тени). Еще один способ создания материала хрома — с помощью специальных растровых карт, имитирующих хромированный материал. Как правило, материал на основе таких карт имеет не очень реалистичный вид. Однако у этого способа есть и свои плюсы — минимальное время на настройку и визуализацию. Его использование оправдано для объектов на заднем плане.
Материал, имитирующий хром
375
Рис. 7.6. Результат просчета при помощи стандартного визуализатора с применением параметра Area Shadow (Область тени)
Неплохого качества визуализации можно достичь, используя HDRI (Hight Dinamic Range Images — изображение с большим динамическим диапазоном) в качестве карты для материала хрома. Улучшить конечное изображение можно также, применив подключаемый модуль визуализации — VRay. На рис. 7.7 показана та же сцена, визуализированная при помощи VRay без источников света, но с использованием глобального освещения.
Рис. 7.7. Сцена, визуализированная при помощи подключаемого модуля VRay
Разница заметна, но если для вас имеет значение время визуализации, вы работаете на компьютере со слабым процессором или в сцене большое количество полигонов, то применение стандартного визуализатора вполне приемлемо. При использовании стандартного визуализатора сцена просчитывается быстрее примерно в полтора раза.
376
Глава 7. Текстурирование
На рис. 7.8 представлен фрагмент полученного примитива Torus Knot (Тороидальный узел) с надписью.
Рис. 7.8. Фрагмент примитива Torus Knot (Тороидальный узел) с надписью
Вы можете также попробовать сделать хром на основе карты Swirl (Завихрение) или Noise (Шум). Более сложных эффектов можно достичь, используя различные комбинации процедурных карт.
Текстурирование натюрморта В разд. «Натюрморт» предыдущей главы мы простыми средствами моделирования создали сцену, представляющую собой натюрморт из фруктов, ягод и цитрусовых. Рассмотрим некоторые способы текстурирования объектов этой сцены стандартными средствами 3ds Max 8. Для выполнения упражнения вам понадобится продолжить работу с созданной в предыдущей главе моделью натюрморта. Вы также можете загрузить сцену f r u i t s _ s t a r t .max, расположенную на прилагаемом к книге компакт-диске в папке CH07\Max\fruits. Прежде чем мы приступим к непосредственному текстурированию объектов сцены, мне бы хотелось напомнить вам о том, что для правильного отображения материалов, содержащих текстурные карты, все моделируемые объекты нуждаются в проекционных координатах. Исключение составляют параметрические объекты,
377
Текстурирование натюрморта
в свойствах которых есть предустановленные проекционные координаты (в свитке Parameters (Параметры) настроек объекта установлен флажок Generate Mapping Coords. (Генерировать координаты проецирования)); объекты, созданные при помощи некоторых модификаторов (например, Loft (Лофтинговые)), или в том случае, когда материал использует процедурные карты (то есть карты текстур, генерируемые программно). Начнем текстурирование с простого объекта — апельсина. Фактура этого объекта не требует обязательного применения текстурной карты, ее можно создать при помощи процедурной карты Noise (Зашумление). Для текстурирования апельсина сделайте следующее. 1. Откройте редактор материалов, для чего выполните команду Rendering • Material Editor (Визуализация • Редактор материалов) или нажмите клавишу М. 2. Выберите ячейку со свободным материалом. 3. В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) для выбора базового цвета апельсина. 4. В открывшемся окне Color Selector (Выбор цвета) установите значения составляющих цвета RGB: Red (Красный) - 230, Green (Зеленый) - 130 и Blue (Синий) - 50. 5. В области Specular Highlight (Зеркальные блики) свитка Blinn Basic Parameters (Базовые параметры раскраски по Блинну) установите значение Specular Level (Уровень блеска) равным 30, a Glossiness (Глянец) — 10 (рис. 7.9). linri Basic Parameters r SelH Rumination
| Г Cola fO
i;
Opacity: рГбсГ~1
'Speed»: r Speculai Highlights Specular Levet Щ~
t\
Gbssiness: |10
;|
Soften: pfxT t| Рис. 7.9. Свиток Blinn Basic Parameters (Вазовые параметры раскраски по Блинну) настроек материала апельсина
6. В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с картой Bump (Рельефность). 7. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Шум). 8. В свитке Noise Parameters (Параметры зашумления) карты Noise (Шум) установите значение параметра Size (Размер) равным 2. 9. В свитке Maps (Карты текстур) настраиваемого материала установите значение величины рельефности -50 (рис. 7.10).
Глава 7. Текстурирование
378
__J
Maps Amount
Г
Ambient Color..
.|W:j
г Dilfuse C o l o r . . . poo"; г Specular Color . |т* Specular Level fTO":! г Glossiness . . . г Self•Illumination . [ w :s~~ г Opacity
г
Fillet Cola . . .
.|"5Гг Е Bump г Reflection . . . . Поо";| г
Map
None None None None None
]
None None
h1«p«Z8J Noise) None
J
|
Klnna
Рис. 7.10. Свиток Maps (Карты текстур) настроек материала апельсина
Для присвоения материала объектам сцены сделайте следующее. 1. Щелкните на кнопке Select by Name (Выделить по имени) §Ы главной панели инструментов и в появившемся окне Select Objects (Выбор объектов) выберите из списка объекты Orange_OO и 0range_01. 2. В редакторе материалов щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) % . После присвоения объектам материала необходимо выполнить тестовую визуализацию и при необходимости подкорректировать параметры материала. При желании можно улучшить отображение апельсина, создав на основе выполненного материала составной материал Blend (Смешанный). Для этого сделайте следующее. 1. Щелкните в окне редактора материала на кнопке Standard (Стандартный) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Blend (Смешанный). В открывшемся окне установите переключатель в положение Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 2. В свитке Blend Basic Parameters (Базовые параметры смешанного материала) щелкните на кнопке первого материала и перетащите его на второй, а в качестве метода копирования укажите Сору (Копия). 3. Выберите темно-оранжевый цвет диффузного рассеивания второго материала — это создаст на поверхности апельсина цветовые переходы. 4. В качестве маски используйте карту Noise (Шум). На рис. 7.11 представлена схема материала Blend (Смешанный) для текстурирования апельсина.
ПРИМЕЧАНИЕ При необходимости вы можете открыть файл с именем fruits_end.max, расположенный на прилагаемом к книге компакт-диске в папке CH07\Max\fruits, и проанализировать параметры составного материала.
Текстурирование натюрморта
379
to Material/Map Navigator (07 Delairt (Blend 1
: 9 Material 1 07 • Default (Standard ) '. -^Burnp Map«28 (Nose) I « Material 2: 07 • Default (Standard) i : Ш Bump Map «28 (Noise) •-•a Mask. Map «38 (Noise)
Рис. 7 . 1 1 . Схема материала Blend (Смешанный), назначенного апельсину
Аналогичным образом создается материал для модели мандарина с той лишь разницей, что цвет диффузного рассеивания должен имеет оттенок, ближе к оранжевому, а карта рельефности меньшее значение, так как поверхность мандарина имеет менее выраженную рельефность. Рассмотрим текстурирование яблока с применением текстурной карты. Речь идет об использовании растрового изображения в качестве карты диффузного рассеивания, значит объекту потребуются проекционные координаты. С этого и начнем. 1. Используя кнопку главной панели инструментов Select by Name (Выделить по имени) i^l, выберите из списка три объекта AppleYellow. 2. Перейдите в режим Isolation Mode (Режим изолирования), для чего нажмите сочетание клавиш Alt+Q, что позволяет спрятать все объекты сцены, за исключением выделенного. 3. Выполните команду Group • Open (Группа • Открыть), чтобы получить доступ к объектам группы. 4. В одном из окон проекций выделите яблоко и примените к нему модификатор UVW-проекции, для чего выполните команду Modifiers • UV Coordinates • UVW Map (Модификаторы • UV-координаты • UVW-проекция). 5. В области Mapping (Проекционные координаты) свитка Parameters (Параметры) установите переключатель в положение Spherical (Сферические). Таким образом, объекту были присвоены сферические проекционные координаты. Сейчас можно переходить к непосредственному созданию материала с текстурной картой яблока и назначению его объекту. 1. В окне Material Editor (Редактор материалов) выберите свободный материал. 2. Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур). 3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение). 4. В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением текстуры яблока. На прилагаемом компакт-диске это Apple Ye 11 Тех. j p g в папке СН07\МАХ\fruits.
380
Глава 7. Текстурирование
5. Присвойте материал модели яблока, перетащив его мышью из окна редактора материалов на объект в окне проекции, либо при выделенном объекте щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) j£p, находящейся на панели инструментов окна Material Editor (Редактор материалов). Черенок яблока небольшого размера и находится в сцене на значительном расстоянии от камеры, поэтому для его текстурирования можно было бы использовать материал с коричневым цветом диффузного рассеивания. Однако я хочу показать возможность применения для такого рода текстурирования процедурной карты Gradient Ramp (Улучшенный градиент). Создадим материал с такой картой и присвоим его корешку. 1. В одном из окон проекций выделите черенок яблока и примените к нему модификатор UVW-проекции, для чего выполните команду Modifiers • UV Coordinates • LJVW Map (Модификаторы • UV-координаты • UVW-проекция). 2. В области Mapping (Проекционные координаты) свитка Parameters (Параметры) настроек модификатора установите переключатель в положение Cylindrical (Цилиндрические), как наиболее подходящее для данной формы объекта. 3. В области Alignment (Выравнивание) установите переключатель в положение X и щелкните на кнопке Fit (Подогнать) для выравнивания габаритного контейнера вдоль корешка. 4. В окне Material Editor (Редактор материалов) выберите свободный материал. 5. Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур). 6. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Gradient Ramp (Улучшенный градиент). 7. В свитке Coordinates (Координаты) настроек градиента задайте значение W для Angle (Угол) равным -90. 8. В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) настройте отображение цветов градиента на цветовой шкале. Для этого дважды щелкните на левом ползунке, чтобы вызвать окно Color Selector (Выбор цвета). 9. Выберите цвет со следующими значениями: Red (Красный) — 112, Green (Зеленый) - 122 и Blue (Синий) - 0. 10. Для правого ползунка установите такие значения составляющих цвета RGB: Red (Красный) — 79, Green (Зеленый) — 35 и Blue (Синий) — 0. 11. В раскрывающемся списке Interpolation (Интерполяция) выберите строку Ease In (Усилить) для задания способа перетекания цвета между соседними ползунками цветовой шкалы (рис. 7.12). 12. Присвойте полученный материал черенку яблока, перетащив его из окна редактора материалов на объект в окне проекции. Теперь можно закрыть группу и выполнить тестовую визуализацию. Если вас удовлетворяет результат, можно переходить к текстурированию других яблок и груш, которое выполняется аналогичным образом (рис. 7.13).
381
Текстурирование натюрморта Gradient Ramp Parameters
,
R-m,G.122.B»UPos-0
Gradient Type. Lineal
»1
Irteipotatm:
Ease In
• Noise | AireuntpTo
I
5 ;j
S
Regular ^
S«e;fUi
| j Phase; fOO
LwW
;|
Fractal С
Turbulence
:] UvetepTT
Рис. 7.12. Свиток Gradient Ramp Parameters (Параметры улучшенного градиента) настроек материла черенка яблока
Рис. 7.13. Тестовая визуализация с материалами для яблок и груш
Перейдем к настройке материала вазы, имитирующего бронзу. Создание этого материала будет полностью основано на применении процедурных карт. 1. В редакторе материалов выберите ячейку со свободным материалом. 2. В свитке Shader Basic Parameters (Базовые параметры раскраски) выберите из раскрывающегося списка строку Metal (Металл). 3. В области Specular Highlight (Зеркальные блики) свитка Metal Basic Parameters (Базовые параметры раскраски металла) задайте параметру Specular Level (Уровень блеска) значение 80, a Glossiness (Глянец) — 70.
382
Глава 7. Текстурироеание
4. Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур). 5. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Зашумление). 6. В свитке Noise Parameters (Параметры зашумления) карты Noise (Зашумление) установите переключатель Noise Type (Тип шума) в положение Fractal (Фрактальный). 7. В этом же свитке задайте параметру Size (Размер) значение 15; в области Noise Threshold (Порог уровня шума) параметру High (Высокое) задайте значение 0,8, a Low (Низкое) — 0,4 (рис. 7.14). Noise Parameters Noise Туре: Г
Regular
Nose Threshold Иф.Щ Size:) 15,0
JJ
Low; fO~4
^ ^ ^ ^ ^ ^
Swap i
•••••"
I;
<* Fractal
<* Tmbutence
Jj
tevel$:f3J
tj
%\
Phase) 0.0
jj
Map*
Color «1 Щ
Ц
None
Cdbt 82 Щ
Щ
уоле
'
Ip
'
I pr
Рис. 7.14. Настройки свитка Noise Parameters (Параметры зашумления)
8. Щелкните на образце цвета Color #1 (Цвет 1) и в появившемся окне Color Selector (Выбор цвета) установите значения составляющих цвета RGB: Red (Красный) — 85, Green (Зеленый) — 57 и Blue (Синий) — 44. 9. Цвет образца Color #2 (Цвет 2) должен быть черным. 10. Перейдите от компонентного уровня на более высокий, используя кнопку Go to Parent (Перейти к составному материалу) & • 11. В свитке Maps (Карты текстур) настраиваемого материала щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) и, не отпуская кнопку мыши, перетащите карту Noise (Зашумление) на кнопку рядом с Bump (Рельефность), а в качестве способа копирования выберите Instance (Привязка). 12. Здесь же в свитке Maps (Карты текстур) настраиваемого материала установите значение величины рельефности 15. 13. Щелкните на кнопке рядом с Reflection (Отражение) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient (Градиент). 14. В свитке Coordinates (Координаты) карты Gradient (Градиент) установите переключатель в положение Environ (Фон) и выберите из списка строку Shrink-wrap Environment (Обтягивающая фоновая). 15. В свитке Gradient Parameters (Параметры градиента) щелкните на кнопке, расположенной справа от Color #1 (Цвет 1), и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Зашумление).
383
Текстурирование натюрморта
16. Установите такие же параметры карты зашумления, как мы задали для цвета диффузного рассеивания (см. п. 8 и 9). Щелкните на кнопке Go to Parent (Перейти к составному материалу) & . 17. Скопируйте карту зашумления для Color #1 (Цвет 1) в Color #3 (Цвет 3) (рис. 7.15).
•а Refleotiore
\
HIT*.
{Map «36
zl
Gradient
J:
СаокШю
T e n u r e * Enwon Mapping: jShrink-wrapEnvironmenl^J j W Shew Игр on Back [ Г UteR^WoridScale DfFtef Tina D Tia
U:[oS
С! fT5
:
Игр О в т е Г" M««T8e M
;
Angle
t] Г
ij г
Cotof2 Position: frj5
^j
6t«fentTjipe: * Lima Г Radial •Noise; AtnountJoTO See:j 1.0
»™" i\
*"
—
™
>
* Regular Г Fractal Г Turbulence j
Jj Phase:10.0
»j Leveis:[Trr
Jj
Рис. 7.15. Параметры карты Gradient (Градиент) для карты отражения
18. Перейдите от компонентного уровня на более высокий, используя кнопку Go to Parent (Перейти к составному материалу) Щ,, и установите значение величины карты Reflection (Отражение) 50. 19. Примените созданный материал к объекту Vase. Осталось рассмотреть материалы для листиков и винограда, остальные материалы настраиваются аналогично рассмотренным выше. Лист винограда, лежащий на столе, выполнен на основе параметрического объекта Plane (Плоскость) с одной лишь целью — упростить процесс моделирования и текстурирования. Рассмотрим процесс создания материала листа на основе текстур диффузного рассеивания и прозрачности. 1. В окне Material Editor (Редактор материалов) выберите свободный материал. 2. Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).
384
Глава 7 . Текстурирование
3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение). 4. В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением текстуры листа. На прилагаемом компакт-диске это файл G r a p e s . j p g в папке CH07\MAX\f r u i t s . 5. В свитке Maps (Карты текстур) щелкните на кнопке рядом с Opacity (Непрозрачность) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение). 6. В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением маски прозрачности листа. На прилагаемом компакт-диске это файл GrapesMask. j p g в папке CH07\MAX\f r u i t s . 7. В свитке Shader Basic Parameters (Базовые параметры раскраски) установите флажок 2-Sided (Двусторонний), чтобы лист, который изгибается, при визуализации был виден с обеих сторон. 8. Примените материал листа к объекту Grape_Leaf. Выполните тестовую визуализацию и проверьте, все ли правильно было настроено в материале листа (рис. 7.16).
Рис. 7.16. Визуализация натюрморта на данном этапе текстурирования
Перейдем к созданию материала для винограда. Ягода винограда состоит из двух объектов: черенка и непосредственно ягоды. Как текстурировать черенок, мы уже рассматривали на примере яблока, поэтому сразу перейдем к созданию материала для ягоды.
Текстурирование натюрморта
385
1. В окне Material Editor (Редактор материалов) выберите свободный материал. 2. Щелкните на кнопке Standard (Стандартный) для вызова окна Material/Map Browser (Окно выбора материалов и карт). 3. Выберите из списка материал Raytrace (Трассируемый). 4. В свитке Raytrace Basic Parameters (Базовые параметры трассируемого материала) установите флажок 2-Sided (Двусторонний). 5. Щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) для выбора базового цвета ягоды винограда. 6. В открывшемся окне Color Selector (Выбор цвета) укажите значения составляющих цвета: Red (Красный) — 108, Green (Зеленый) — 107 и Blue (Синий) — 10. 7. Щелкните на образце цвета рядом с Reflect (Отражение) для установки отражательной способности материала. 8. В открывшемся окне Color Selector (Выбор цвета) задайте значения составляющих цвета: Red (Красный) — 42, Green (Зеленый) — 42 и Blue (Синий) — 42.
ПРИМЕЧАНИЕ Настраивая цвет отражающей способности материала, имейте в виду, что чем ярче цвет, тем более отражающим будет материал, и наоборот. Если образец цвета будет черным, то материал не будет отражать. 9. Щелкните на образце цвета рядом с Transparency (Прозрачность) для настройки прозрачности материала. 10. В открывшемся окне Color Selector (Выбор цвета) установите значения составляющих цвета: Red (Красный) — 60, Green (Зеленый) — 60 и Blue (Синий) — 60. 11. В области Specular Highlight (Зеркальные блики) свитка Raytrace Basic Parameters (Базовые параметры трассируемого материала) задайте параметру Specular Level (Уровень блеска) значение 78, a Glossiness (Глянец) — 52. 12. Щелкните на кнопке рядом с Environment (Внешняя среда) и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение). 13. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу Lake_mt. j p g из папки CH07\MAX\f r u i t s . 14. Нажмите кнопку Go to Parent (Перейти к составному материалу) ^ . 15. В свитке Extended Parameters (Дополнительные параметры) установите значения составляющих образца цвета RGB для Translucency (Просвечивание) и Fluorescence (Флуоресценция): Red (Красный) — 140, Green (Зеленый) — 140 и Blue ( С и н и й ) - 3 5 . В результате параметры материала Raytrace (Трассируемый) должны быть такими, как показано на рис. 7.17.
386
Глава 7. Текстурирование
Примените материал к соответствующим объектам сцены и выполните тестовую визуализацию.
Rayttace
*S* l G l a P e
у
R ajarace Basic Parameters „ j K* 2SidHi J — Г Wire
ShaSng-jPhong АгаЫег* рЩ Diffuse: R e f t e l
i
Г* Face Mao Г Faceted
Lummsiij.: l ? | щ
| Ttanspafenci»: Р Д
i-:|H8B J
Index of Reft.
И 5^
:
SpeculeHigWishl Speoula Color
Specra! Effects Exlta lighting
Wite 5гге:ПТ
Fluorescence Fluor. В
Рис.
7 . 1 7 . Параметры материала Raytrace (Трассируемый)
Создание материалов для оставшихся объектов сцены выполните в качестве самостоятельного задания. Окончательная визуализация натюрморта представлена на рис. 7.18.
Рис.
7 . 1 8 . Визуализация натюрморта <*£)
Текстурирование микроволновой печи
387
ПРИМЕЧАНИЕ Для анализа параметров материалов сцены вы можете использовать файл fruitsend.max, расположенный в папке CHOAMax\fruits прилагаемого к книге компакт-диска.
Текстурирование микроволновой печи Еще один объект, создание которого рассмотрено в предыдущей главе, требует текстурирования — микроволновая печь. На этом примере рассмотрим принципы создания сложной процедурной карты, применения архитектурных материалов, а также способ наложения материала на часть объекта.
ПРИМЕЧАНИЕ Для выполнения урока загрузите построенную вами в предыдущей главе модель микроволновой печи или используйте файл урока microwave_start.max, расположенный на прилагаемом к книге компакт-диске в папке CH07\Max\microwave_texturing. Начнем с простых материалов: стекла и материала корпуса микроволновой печи. Материал стекла можно создать как минимум двумя способами: • при помощи стандартного материала с картами отражения и преломления; • использовать материал Raytrace (Трассируемый); это более ресурсоемко, однако в таком случае доступно большее количество настроек и получается более качественный результат при визуализации. Воспользуемся вторым способом, для чего выполните следующие действия. terial EEditor 1. Откройте редактор материалов, выполнив команду Rendering • Material (Визуализация • Редактор материалов) или нажав клавишу М. 2. Выберите ячейку со свободным материалом.
3. Щелкните на кнопке Standard (Стандартный) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт). 4. Выберите из списка материал Raytrace (Трассируемый). 5. Снимите флажок Reflect (Отражение) и в появившемся поле укажите значение отражения равное 20. 6. Снимите флажок Transparency (Прозрачность) и в появившемся поле укажите значение прозрачности равное 90 (рис. 7.19). 7. Назначьте объекту материал glass, выбрав его из списка, предварительно щелкнув на кнопке главной панели инструментов Select by Name (Выделить по имени). Выполните тестовую визуализацию, а чтобы определить отражательную способность стекла создайте перед дверцей любой примитив, который мог бы отражаться в стекле. При необходимости откорректируйте значения параметров Specular Level (Уровень блеска) и Glossiness (Глянец).
388
Глава 7. Текстурирование ! X:\ # j
Ol
, 104- Default Rayttace Basic Parameters
Lunwiosity
Ambient
Transtarency
Г~Щ~~1
WwmfRnlr
MJ Speculalevet J ® 3 Glossiness: RC 5J
Г" Envirannwrt..
J J
None None
Рис. 7.19. Настройки материала стекла
Для материала корпуса я использовал архитектурный пластик.
ВНИМАНИЕ В более ранних версиях программы архитектурных материалов не было. Во многих случаях архитектурные материалы с параметрами по умолчанию дают весьма неплохой результат. Применим такой материал к корпусу и лицевой панели нашей модели. 1. Выберите ячейку со свободным материалом. 2. Щелкните на кнопке Standard (Стандартный) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт). 3. Выберите из списка материал Architectural (Архитектурный). 4. В свитке Templates (Образцы) выберите из раскрывающегося списка строку Plastic (Пластик). 5. В свитке Physical Qualities (Физические характеристики) щелкните на образце цвета рядом с Diffuse Color (Цвет рассеивания) для выбора базового цвета корпуса. 6. В открывшемся окне Color Selector (Выбор цвета) выберите белый цвет (рис. 7.20). 7. Примените полученный материал ко всем объектам, которые должны иметь белый цвет. Аналогичным образом можно создать материал для поверхности стола, на котором стоит микроволновая печь. •
Выполните тестовую визуализацию. На данном этапе изображение должно выглядеть, как показано на рис. 7.21.
389
Текстурирование микроволновой печи
Н»5ИЫХ
#|A
& §3
«SSJS _»j
*%, (Body
Afchttectuai
J
Templates
Jj
dj
(Plastic Physical Qualities Diffuse Color.
jTOoo J80.0 |o.o (oo
.Diffuse Map; ShMna* Transparency:
i Ttamlucency:
4; ZJ
j'
^Jf/ *Jf? ;]Г? :]R
None
j
None None None
|
None
I
index of Refraction Lumsriance cd/m?: Г
2-Sided Г
Raw Diffuse Tsxlue
.•
.
I
.
Рис. 7.20. Параметры материала пластика
'
,••
• ..:
'
,:
-
:
• :
.,
,,,
1
. с : : " . ' : : :
•
. , :
.'.:.
| |
Рис. 7 . 2 1 . Результат визуализации микроволновой печи на данном этапе текстурирования
Если вы могли заметить, на панели управления оригинального изображения (см. рис. 6.87 О ) микроволновой печи есть индикаторы. Создадим их. 1. В окне проекции выделите лицевую панель микроволоновои печи. 2. Перейдите на уровень редактирования полигонов и выделите все полигоны, расположенные в непосредственной близости от углублений под ручками управления (рис. 7.22).
390
Глава 7. Текстурирование
Рис. 7.22. Выделенные полигоны для последующего текстурирования
3. Перейдите на уровень редактировния полигонов. 4. В области Material (Материал) свитка Polygon Properties (Свойства полигона) задайте параметру Set ID (Установить идентификатор материала) значение 2 и нажмите Enter. 5. Примените к выделенным полигонам модификатор UVW-проекции, выполнив команду Modifiers • UV Coordinates • UVW Map (Модификаторы • UV-координаты • UVW-проекция). 6. В области Mapping (Проекционные координаты) свитка Parameters (Параметры) установите переключатель в положение Planar (Плоские). Таким образом, мы выделили область панели управления микроволновой печью в отдельный идентификатор материала, чтобы независимо от остальной поверхности панели применить к нему маску на основе черно-белой текстуры. По этой же причине нам понадобилось использование модификатора, накладывающего проекционные координаты. В связи с этим необходимо отредактировать материал корпуса. 1. В редакторе материалов выберите архитектурный материал, созданный ранее для корпуса, ручек и лицевой панели. 2. В окне Material Editor (Редактор материалов) щелкните на кнопке Architectural (Архитектурный) для вызова окна Material/Map Browser (Окно выбора материалов и карт). 3. Выберите из списка материал Multi/Sub-Object (Многокомпонентный). В открывшемся окне установите переключатель в положение Keep old material as submaterial? (Оставить старый материал в качестве компонента?), в результате чего старый материал займет верхнюю кнопку материалов в свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала).
Текстурирование микроволновой печи
391
4. Щелкните на первой кнопке с именем архитектурного материала (у меня — Body (Architertural)) и, не отпуская кнопку мыши, перетащите его на вторую кнопку, а в качестве метода копирования укажите Сору (Копия). Таким образом, мы создали материал для второго идентификатора со свойствами первого материала. Если вам в дальнейшем понадобится изменять параметры архитектурного материала для корпуса, то менять их необходимо сразу у двух материалов. 5. Щелкните на кнопке с именем второго материала для перехода к его настройкам. 6. В окне Material Editor (Редактор материалов) нажмите кнопку типа материала и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Blend (Смешанный). В открывшемся окне установите переключатель в положение Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 7. В свитке Blend Basic Parameters (Базовые параметры смешанного материала) щелкните на кнопке второго материала и установите черный цвет диффузного отражения (это будет цвет надписи на панели управления). 8. Нажмите кнопку Go to Parent (Перейти к составному материалу) & • 9. Щелкните на кнопке Mask (Маска) и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение). 10. В окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу f ace_mask. j p g из папки CH07\MAX\microwave_texturing. 11. Примените полученный материал к лицевой панели микроволновой печи и выполните тестовую визуализацию. Таким образом, мы создали на основе архитектурного материала многокомпонентный материал, структура которого представлена на рис. 7.23. ©Material/Map Navigator
flE» * л
.1Г. змгаитяи
: 9 П) Body (Architectural) L a (2): Body ( Blend ) • •• 9 Material 1: Body (Architectural) L »
r
Material 2: Material S3 ( Standard )
:
—Ш Mask: Map BO (face_mask.ipg)
Рис. 7.23. Структура материала для корпуса и лицевой панели микроволновой печи
Более сложным с точки зрения настроек можно считать материал сетки, расположенной за стеклом двери. Для материала сетки можно было бы нарисовать текстурную карту, но я предпочитаю пользоваться процедурными картами — это позволяет получить максимально четкое и качественное изображение, ведь такие карты генерируются программно. Вот и в данном случае карта прозрачности материала сетки построена на основе карт Gradient Ramp (Улучшенный градиент).
392
Глава 7 . Текстурирование
1. В окне редактора материалов выберите ячейку со свободным материалом. 2. В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) и в открывшемся окне Color Selector (Выбор цвета) установите цвет близкий к черному. Это будет основной цвет решетки. 3. Перейдите к свитку Maps (Карты текстур) и щелкните на кнопке рядом с Opacity (Непрозрачность). 4. В окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Mix (Смешивание). У нас будет две карты смешивания, поэтому стоит дать им значимые имена. Назовите эту карту Base level. 5. В свитке Mix Parameters (Параметры смешивания) настроек карты Base level щелкните на кнопке с именем None (Отсутствует), расположенной рядом с Color #1 (Цвет 1). 6. В окне Material/Map Browser (Окно выбора материалов и карт) снова выберите из списка карту Mix (Смешивание). Назовите эту карту Net. 7. В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кнопке с именем None (Отсутствует), расположенной рядом с Color #1 (Цвет 1). В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент). 8. Установите параметры этой карты согласно рис. 7.24. Обратите внимание, что в поле Gradient Type (Тип градиента) установлен тип Radial (Радиальный), что позволяет создавать круги черного цвета, повторяющиеся 70 раз по горизонтали и 60 по вертикали (это определяет параметр Tiling (Повтор)).
3
jSetka 01
Gradient Ramp
4
Coordinates
# Теми» Г Environ Mapping: JExplicit Map Channel
3
!
17 She* Map », Bask Г Use RwVWorld Scale OKsat Tiins
ij
I
ttfOO t] [ Щ V:foo ; j (боо * uv t vw f wu
film: (To
Map Channei J1 Minor Tile
t ] Bit»offeet |Щ)
Gradient Type- jRadiai
^1
Angle
^J Г R U:|0"0 U Г P vfao w f°^ %
" £j | jj j Si I I
Interpolation: Isolid
Рис. 7.24. Параметры первой карты Gradient Ramp (Улучшенный градиент)
Текстурирование микроволновой печи
393
9. Перейдите от карты Gradient Ramp (Улучшенный градиент) к карте Mix (Смешивание) с именем Net, используя кнопку Go to Parent (Перейти к составному материалу) .Ц,. 10. В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кнопке, расположенной рядом с Color #1 (Цвет 1), и, не отпуская кнопку мыши, перетащите ее на кнопку, расположенную рядом с Color #2 (Цвет 2), а в качестве метода копирования выберите Сору (Копия). 11. Щелкните на вновь созданной копии карты Gradient Ramp (Улучшенный градиент) и в ее свитке Coordinates (Координаты) установите смещение (Offset (Смещение)) по горизонтали (U) равное 0,009 (рис. 7.25) .01 |SetkaO2
Gradient Ramp
Cootdifiates *
Twture <" EwitQft Mapping: j Explicit Map Channel
F
Show Map on 8.K-
Г
Use ReatWoftl Scale Qtfset Tiling
№|'Ь'Ш V:p
* uv Blu: (TO
Map Channel: [T
t] [ШГ *j (ЩО
Mine» life
_*] jj
Angle
i\ Г i? ujoTT :j Cj Г Г? V:[0T~~^j W:
vw с wu зУ Bk» offset fol5
Jj
l°-°
Rotate J
Noise
Stadient Rams PawwWatt B-255J3»255.B-ZK. Pes-0
I j
Gradient Type: JHadial ]
M
Рис. 7.25. Параметры второй карты Gradient Ramp (Улучшенный градиент)
Таким образом, мы имеем две карты Gradient Ramp (Улучшенный градиент), создающие сетку из кругов черного цвета с той лишь разницей, что вторая карта имеет смещение по горизонтали на величину половины круга. Создадим еще одну карту Gradient Ramp (Улучшенный градиент), которая будет играть роли маски, смешивающей окружности двух предыдущих карт таким образом, что у первой карты будут видны четные горизонтальные ряды, а у второй — нечетные. 1. Вернитесь к карте Mix (Смешивание) с именем Net, используя кнопку Go to Parent (Перейти к составному материалу) $$ . 2. В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кнопке, расположенной рядом с Mix Amount (Доля в смеси), и в окне диалога Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент).
394
Глава 7 . Текстурирование
3. Установите параметры этой карты согласно рис. 7.26.
*
ТвхИи» f
Enwon Mapping: |Explicit Map Channel
jjjj
Map Channel: JT Г
U»fSeal-W«l
Ottsw
v[ooi Blur f t B
sJ (To
:
;: Г
" j j Bk» offset [ И
;|
flatale
|
Noise Siatfenl RampPerametets Я-аб-О.В-О.Рю-О
МяроЬйа* j solid
r.
3
pJ
Рис. 7.26. Параметры карты Gradient Ramp (Улучшенный градиент), играющей роль маски
Обратите внимание, что Gradient Type (Тип градиента) этой карты — Linear (Линейный). Кроме того, карта повернута на 90°, чтобы создаваемые черно-белые полосы располагались горизонтально, а их повторяемость (Tiling (Повтор)) установлена в соответствии с количеством рядов окружностей. Если применить созданную карту к объекту Reshetka, то при визуализации должно получиться изображение, показанное на рис. 7.27.
Рис. 7.27. Результат визуализации материала сетки
Текстурирование микроволновой печи
395
Сейчас полученная карта заполняет все пространство объекта, но решетка окна должна быть лишь частью, ограниченной прямоугольником. Сделать такое ограничение можно, снова используя карту Gradient Ramp (Улучшенный градиент) в качестве маски для первой карты смешивания с именем Base level. 1. Используя кнопку Go to Parent (Перейти к составному материалу) £%, перейдите к карте Mix (Смешивание) с именем Base level. 2. В свитке Mix Parameters (Параметры смешивания) карты Base level щелкните на кнопке с именем None (Отсутствует), расположенной рядом с Color #2 (Цвет 2). В окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент). 3. Установите белый цвет шкалы градиента по всей длине. Таким образом мы создадим карту, которая будет выступать в качестве фонового цвета. 4. Нажмите кнопку Go to Parent (Перейти к составному материалу) Ц,. 5. В свитке Mix Parameters (Параметры смешивания) щелкните на кнопке, расположенной рядом с Mix Amount (Доля в смеси), и в окне Material/Map Browser (Окно выбора материалов и карт) еще раз выберите из списка карту Gradient Ramp (Улучшенный градиент). 6. Установите параметры этой карты согласно рис. 7.28.
МкАтоиг*
Т ] Gradient Ramp j
[Rectangle Cooidnates
P Г
.
Texture ^ Environ Mapping j Explicit Map Channel
J^j
SHs.Ms;--r.S'nc'i UseReal-WoAtSoale Offset Tijna
^j
U:f0j V:|03
<: * ОУ <^ W
:в)иг рта—ц
MapChannet:|1 Hnror Tite
Angle
Jj Г Р U:jOO"il |i Г f/ Vp5T~~5|
U 1'i.iT t] |T0
W:|O0
Г WU
рГ5
^J
:
flrtale
.J
No Gradient Ranp Parameters
i
R-0.G»O.B*O, Pos-0
Рис. 7.28. Параметры карты Gradient Ramp (Улучшенный градиент)
Обратите внимание, что Gradient Type (Тип градиента) этой карты — Box (Параллелепипед). Это позволяет получить маску прямоугольной формы. На этом создание материала для решетки можно считать завершенным. На рис. 7.29 показана схема этого материала.
396
Глава 7. Текстурирование
Default (Standard) »
Э
<~Щ та
ираод Color 1 Net | Mix ] Color 1: Setka 01 (Gradient Ramp) Color 2: Setka 02 (Gradient Ramp) MixAmount Mask (GradientRamp] Color 2 Fon ( Gradient Ramp)
• M'^M
MixAmount Rectangle ( Gradient Ramp ]
Рис. 7.29. Схема материала решетки
И, наконец, на рис. 7.30 представлен фрагмент модели микроволновой печи вместе с текстурами.
I
Рис. 7.30. Фрагмент модели микроволновой печи вместе с текстурами
ПРИМЕЧАНИЕ Чтобы проанализировать настройки материалов сцены, вы можете использовать файл microwave_end.max, расположенный на прилагаемом к книге компакт-диске в папке CH07\Max\microwave_texturing.
Сложное текстурирование
397
Сложное текстурирование Не стоит пугаться названия упражнения. Оно подразумевает, что мы будем говорить о текстурировании сложных объектов, а не о том, насколько сложно это сделать. В понятие «сложные объекты» я включаю такие объекты, при текстурировании которых недостаточно применить один из типов стандартного проецирования (планарный, цилиндрический, кубический). Обычно такие объекты требуют совместного использования нескольких типов проецирования и (или) коррекции наложения текстурных координат вручную при помощи модификатора Unwrap UVW (Расправить UVW-проекцию) или дополнительных подключаемых модулей (например, программы Deep Paint). На примере данного упражнения рассмотрим возможность текстурирования сложных объектов только средствами 3ds Max, не прибегая к помощи сторонних программ. На рис. 7.31 представлена модель резиновой детской игрушки, с которой вам предстоит работать.
Рис. 7.31. Модель игрушки
Прежде чем переходить к текстурированию, нужно провести предварительный анализ модели. Это необходимо по двум причинам: • для правильного текстурирования модели нужно понять, на какое минимальное количество элементов (групп выделения) нужно разделить объект, чтобы применить к этим группам стандартные типы проецирования; • нужно определиться с количеством материалов, которые будут использоваться в данном объекте.
398
Глава 7. Текстурирование
Поясню подробнее. Любой сложный предмет можно разложить на более простые. Например, у вас есть модель деревянной стремянки (лестницы). Если ни один из известных вам типов проецирования текстурных координат, таких, как планарное, прямоугольное, цилиндрическое или любое другое, не может дать желаемого результата, то стоит разделить ее на две вертикальные жерди и некоторое количество поперечных ступенек. Тогда сразу становится очевидной возможность применения прямоугольного проецирования текстурных координат. Оно как нельзя лучше будет отвечать форме составляющих лестницу деталей. Для объяснения второй причины возьмем модель персонажа, одетого в шорты и майку. Очевидно, что в данном случае необходимы как минимум три текстурные карты (голова, майка и шорты), а учитывая обувь, текстуру рук, ног и деталей головы — может быть, и больше трех. Существует два подхода к созданию материала для такой модели. • Модель может иметь один материал с одной текстурой, на которой расположены сразу все текстурируемые элементы (голова, майка, шорты и т. д.), что очень часто используется для визуализации в реальном времени (например, в компьютерных играх). • Использование составного материала типа Multi/Sub-Object (Многокомпонентный), позволяющего применить к объекту сразу несколько материалов. При этом объект разделяется на несколько Material ID (Идентификатор материала), что позволяет работать с отдельным материалом (например, при замене текстуры майки не придется менять всю текстуру модели). Второй подход в отличие от первого позволяет более гибко работать с отдельными материалами и применять процедурные карты (то есть карты текстур, генерируемые программно). Модель игрушки, представленной на рис. 7.31, можно резделить на шесть составляющих ее частей по форме, близкой к стандартным для проецирования: • основание модели — планарное проецирование; • тело — цилиндрическое; • грива — сферическое; • ноги — цилиндрическое; • голова — сферическое; • уши — планарное. Далее можно действовать одним из следующих способов. • Для выделенных частей модели последовательно добавлять в стек модификатор Mesh Select (Выделение поверхности) и UVW Map (UVW-проекция) в зависимости от типа наложения соответствующей выделенной геометрии. ш Сразу применить модификатор Unwrap UVW (Расправить UVW-проекцию) и все действия по наложению проекционных координат проводить только с его помощью.
Сложное текстурирование
399
В данном разделе рассмотрим смешанный способ наложения проекционных координат: когда работа ведется попеременно то с настройками одного, то другого модификатора. ПРИМЕЧАНИЕ С выходом восьмой версии программы 3ds Max практически всю работу по наложению проекционных координат (за исключением назначения выделенным подобъектам идентификаторов материала) можно выполнять, используя модификатор Unwrap UVW (Расправить UVW-проекцию). В данном разделе мы рассмотрим способ, при котором это упражнение можно выполнить и в предыдущих версиях программы, начиная с пятой. Загрузите файл donkey. max, который находится в папке СН07 \Max\donkey прилагаемого к книге компакт-диска. ПРИМЕЧАНИЕ Если вы решите воспользоваться в работе моделью, не забудьте преобразовать ее в Editable Mesh (Редактируемая поверхность) или Editable Poly (Редактируемая полигональная поверхность). Это необходимо, если у вас до сих пор была модель типа Patch (Патч-поверхность) или Surface (Поверхность). После этого у вас будет полигональная модель, и вы сможете работать в режиме редактирования полигонов (именно они нужны для создания выделений). Выделите основание модели. Для этого выполните следующие действия. 1. Выделите модель ослика, щелкнув на ней в любом из окон проекций. 2. Щелкните на плюсике перед названием объекта в стеке на командной панели (в моем случае — Editable Mesh (Редактируемая поверхность)) и в развернувшемся списке выберите Polygon (Полигон), чтобы перейти в режим редактирования полигонов. СОВЕТ Для быстрого перехода в режим редактирования подобъектов существуют «горячие» клавиши: Vertex (Вершина) — 1, Edge (Ребро) — 2, Face (Грань) — 3, Polygon (Полигон) — 4, Element (Элемент) — 5. 3. В свитке Selection (Выделение) установите флажок Ignore Backfacing (Без обратной ориентации), чтобы случайно не выделить лишние полигоны. 4. Переключитесь в окно проекции Bottom (Снизу), щелкнув на названии окна проекции правой кнопкой мышкой и в появившемся контекстном меню выполнив команду Vews • Bottom (Вид • Снизу). Выделите основание модели (рис. 7.32). Разверните свиток Surface Properties (Свойства поверхности) настроек объекта на командной панели и посмотрите, какой идентификатор материала присвоен
400
Глава 7. Текстурирование
выделенным полигонам. Если отличный от заданного по умолчанию (то есть не равен 1), то наберите в поле Set ID (Установить идентификатор материала) цифру 1 и нажмите Enter. Чтобы упростить дальнейшее выделение полигонов, присвойте выделению значимое имя. Для этого введите его в поле Named Selection Sets (Название выделенной области) на панели инструментов, после чего подтвердите сделанные изменения нажатием клавиши Enter. Примените к выделению планарное проецирование. Для этого используйте модификатор UVW Map (UVW-проекция) (рис. 7.33).
Рис. 7.32. Модель ослика с выделенным основанием
v tf Мь «© В j Donkey
•
!Modifier List <4> D UVW Mapping В Editable Mesh 1—Vertex i- Frin*
1 I
tJ zl -* i f f f i v e (2 г -
Parameters Mapping: *
Planar
Рис. 7.33. Стек модификаторов с примененным модификатором UVW Map (UVW-проекция)
Обратите внимание, в какой плоскости расположен Gizmo (Габаритный контейнер) модификатора. У меня указано выравнивание по оси Y.
Сложное текстурирование
401
Прежде чем перейти к наложению проекционных координат на другие элементы модели, нужно разрушить стек модификаторов, щелкнув правой кнопкой мыши и выбрав команду Collapse (Свернуть) (это необязательное действие, но если периодически не разрушать стек, то это приведет к дополнительному расходованию ресурсов компьютера), и скрыть выделение, выполнив следующее. 1. В любом окне проекций щелкните на модели правой кнопкой мыши. 2. В появившемся контекстном меню выполните команду Convert To • Convert to Editable Mesh (Преобразовать • Преобразовать в редактируемую поверхность). 3. Не снимая выделение с основания модели, щелкните на кнопке Hide (Спрятать) в свитке Selection (Выделение), чтобы спрятать выделенные полигоны (они в ближайшее время не понадобятся, но могут мешать выделению других). В результате этих действий в стеке модификаторов останется только строка Editable Mesh (Редактируемая поверхность). Текстурные координаты, которые были присвоены основанию модели, сохранятся вместе с геометрией. Перейдем к туловищу модели. Для этого выполните следующие действия. 1. Выделите полигоны, необходимые для наложения проекционных координат. СОВЕТ Контролируйте процесс выделения полигонов во всех окнах проекций. Это поможет избежать выделения лишних полигонов и увидеть невыделенные.
2. Присвойте выделению идентификатор материала 2. 3. Присвойте выделению значимое имя, например body. 4. Примените к объекту модификатор UVW Map (UVW-проекция) с цилиндрическим типом проецирования. 5. Установите выравнивание Gizmo (Габаритный контейнер) модификатора по оси X при помощи переключателя Aligment (Выравнивание). 6. В области Alignment (Выравнивание) щелкните на кнопке Fit (Подогнать), чтобы Gizmo (Габаритный контейнер) трансформировался по форме выделения. 7. В стеке модификаторов щелкните на плюсике рядом с именем модификатора, затем выберите строку Gizmo (Габаритный контейнер) — так вы перейдете в режим редактирования габаритного контейнера. 8. Вращайте габаритный контейнер так, чтобы зеленая вертикальная линия, указывающая место стыка текстуры, находилась сзади (рис. 7.34). Теперь нужно посмотреть на то, как выглядят получившиеся развертки текстурных координат. Для этого разрушьте стек модификаторов и добавьте в него модификатор Unwrap UVW (Расправить UVW-проекцию). В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVWпроекцию) щелкните на кнопке Edit (Правка), после чего откроется окно Edit UVWs
402
Глава 7. Текстурирование
(Редактирование UVW) для редактирования текстурных координат. На данном этапе окно Edit UVWs (Редактирование UVW) нужно лишь для контроля правильности наложения текстурных координат. На рис. 7.35 показан фрагмент окна Edit UVWs (Редактирование UVW) с выбранным для показа вторым идентификатором материала.
Рис. 7.34. Модель ослика с примененным к туловищу цилиндрическим проецированием
Рис. 7.35. Развертка цилиндрического проецирования для туловища модели ослика
Сложное текстурирование
403
На данном этапе не стоит выполнять какие-либо действия в редакторе текстурных координат. Это лучше сделать после присвоения координат проецирования всем элементам. Удалите модификатор Unwrap UVW (Расправить UVW-проекцию) из стека модификаторов (он применялся только для того, чтобы можно было убедиться в правильности присвоения проекционных координат). После этого снова перейдите к выделению полигонов (на сей раз гривы ослика), предварительно спрятав выделенные полигоны туловища. После выделения нужных полигонов примените к выделению модификатор UVW Map (UVW-проекция) со сферическим типом проецирования (рис. 7.36). На этот раз задача усложняется. Нужно не просто применить сферическое проецирование, но и правильно его расположить на выделении. Для этого выполните следующие действия
Рис. 7.36. Модель ослика с примененным к гриве сферическим проецированием
1. Выберите режим редактирования габаритного контейнера, щелкнув на плюсике рядом с названием модификатора и далее на строке Gizmo (Габаритный контейнер). 2. Вращайте габаритный контейнер так, чтобы зеленая вертикальная линия, указывающая место стыка текстуры, оказалась в передней части выделения, а наклон центральной оси габаритного контейнера соответствовал наклону выделения.
404
Глава 7. Текстурирование
3. Передвиньте габаритный контейнер так, чтобы его ось оказалась впереди выделения. После этого проверьте правильность наложения проекционных координат, присвоив модификатор Unwrap UVW (Расправить UVW-проекцию), как вы уже это делали для туловища ослика. Развертка гривы ослика должна выглядеть так, как показано на рис. 7.37.
Рис. 7.37. Развертка сферического проецирования для гривы модели ослика
Если у вас нет опыта работы с такого рода наложением проекционных координат, то требуемый результат может сразу не получиться, но нужно стремиться к тому, чтобы форма развертки не была «рваной» и соответствовала форме выделения. Выделите поочередно правые и левые ноги. Для них применим цилиндрическое проецирование с крышками на торцах. Последовательность выполнения действий та же, что и в предыдущих случаях. Не забудьте назначить выделению идентификатор материала и контролировать выделение в окнах проекций (рис. 7.38). Развертку для ног ослика делать значительно сложнее, чем в предыдущих случаях, поэтому наберитесь терпения и выполните все действия тщательно. От наложения проекционных координат будет зависеть внешний вид модели. Перейдем к наложению текстурных координат для головы. Надеюсь, к этому времени вы уже поняли принцип работы с модификаторами и развертками, поэтому не стану вновь повторяться, а лишь представлю вашему вниманию положение Gizmo (Габаритный контейнер) модификатора UVW Map (UVW-проекция) со сферическим типом проецирования (рис. 7.39). Обратите внимание, что зеленая линия, означающая место стыка текстурной карты, обращена в противоположную от лицевой части сторону, и ее ось повернута так, чтобы максимально широко развернуть текстуру. На рис. 7.40 представлена развертка текстурных координат для головы ослика.
Сложное текстурирование
405
ч / 4i/ [
)
Рис. 7.38. Развертка цилиндрического проецирования для ног ослика
Рис. 7.39.Модель ослика с примененным к голове сферическим проецированием
Рис. 7.40. Развертка сферического проецирования для гривы модели ослика
406
Глава 7. Текстурирование
С ушами модели проделайте описанные выше действия следующим образом. 1. Выделите полигоны, составляющие одно ухо. 2. Присвойте выделению идентификатор материала. 3. Примените модификатор UVW Map (UVW-проекция) с планарным типом проецирования. 4. Применив модификатор Unwrap UVW (Расправить UVW-проекцию), проверьте правильность наложения текстурных координат. 5. При необходимости сделайте соответствующие правки, вернувшись к редактированию Gizmo (Габаритный контейнер) модификатора UVW Map (UVW-проекция). После выполненных операций развертка для ушей ослика должна выглядеть так, как показано на рис. 7.41 (в данном случае имеется в виду форма развертки, а не масштаб и положение в пространстве).
Рис. 7 . 4 1 . Развертка пленарного проецирования для ушей модели ослика
Когда модели назначены все проекционные координаты, нужно разложить созданные развертки в пределах одной текстурной карты. Сделать это можно двумя способами: автоматически и вручную. Чтобы закончить создание проекционных координат для модели ослика, выполните следующие действия. 1. Откройте все ранее спрятанные полигоны, для чего щелкните на кнопке Unhide ALL (Показать все) в свитке Selection (Выделение) настроек объекта Editable Mesh (Редактируемая поверхность). 2. Примените к модели ослика модификатор Unwrap UVW (Расправить UVWпроекцию). 3. В свитке Parameters (Параметры) настроек модификатора Unwrap UVW (Расправить UVW-проекцию) щелкните на кнопке Edit (Редактировать). 4. Выполните в появившемся окне правки текстурных координат команду Tools • Pack UVs (Инструменты • Разместить UV-проекции), в результате чего развертки
407 заполнят свободное пространство в пределах текстурной карты (рис 7 42) двигать и масштабировать придется вручную. 'А^.
Рис. 7.42. Окончательный вид развертки текстуры для модели Теперь создадим текстуру д л я модели. Обычно графики0''
Н
° МОЖН°
ИСП
°ЛЬ30ВаТЬ
Л ю б
Ую
ослика
я делаю это в программе Adobe программу редактирования
к ^ о Т я и н я т ? Н У Ж Н ° М а К С И М а л ь н о Увеличить окно редактирования текстурных координат и сделать копию экрана, нажав на клавиатуре клавишу Print Screen
e 3 T 0 O T В 0 6 P h t 0 S h 0 P Н ВЫЙ ДОКУ г Р - м ^ а м и не менее T S f ;(я; обычно ' ' использую ° °размер 1000»х 1000 ^ „ или 1024 х 1024) P
Д К У М 6
Т С
R
Ш 0 б р а Ж е Н И е клавиш ' н а ж а в сочетание клавиш Ctrl+V (стандартное со сочетание клавиш для вставки содержимого буфера обмена).
Выполните команду Select • Color Range (Выделение > Цветовой диапазон) и выделите черный цвет фона, после чего удалите его, нажав клавишу Delete (Уд1,ить)
Рис. 7.43.
Заготовка текстуры
408
Глава 7. Текстурирование
Нарисуйте на нижнем слое текстуру для модели ослика. Добавляйте слои, цвета, используйте выдавливание и т. д. — и вы сможете получить великолепную модель. Я всего лишь немного растушевал изображение, чтобы слегка оживить модель (рис. 7.44). Последнее, что осталось сделать, — создать материал и назначить ему в качестве карты цвета созданное растровое изображение. Для этого в 3ds Max 8 выполните следующие действия.
I
I
Рис. 7.44. Текстурная карта цвета для модели ослика
1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке ®§, находящейся на панели инструментов, либо выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов), или нажав клавишу М. 2. Выберите ячейку со свободным материалом. 3. В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с кнопкой Diffuse Color (Цвет рассеивания). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). 5. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту для канала цвета. 6. Присвойте материал модели ослика, перетащив его мышью из окна редактора материалов на объект в окне проекции либо при выделенном объекте щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) фэ , находящейся на панели инструментов окна Material Editor (Редактор материалов). Чтобы модель выглядела более реалистично, сделайте текстурные карты для выдавливания и глянца ее поверхности. То, что получилось у меня, показано на рис. 7.45.
Создание стеклянного флакона при помощи подключаемого визуализатора VRay 4 0 9 Конечно, для создания красивой реалистичной модели требуется достаточно много времени. Рисование текстур порой занимает не меньше времени, чем само моделирование объекта.
ПРИМЕЧАНИЕ Законченная модель ослика с присвоенными проекционными координатами находится на компакт-диске, прилагаемом к книге, в папке CH07\Max\donkey. Файл сцены называется donkey_end.max. Если вам что-то было непонятно, загрузите сцену и проанализируйте ее содержимое.
Рис. 7.45. Результат финальной визуализации модели ослика с картой цвета <
Создание стеклянного флакона при помощи подключаемого визуализатора VRay Любой дизайнер, в том числе работающий с трехмерной фафикой, должен творчески подходить к работе. Того, что я собираюсь показать в этом упражнении, вполне хватит для выполнения работы на среднем уровне, а насколько вы сможете ее улучшить, зависит только от вашего желания и стремления к совершенству. Кроме того, в этом упражнении описывается процесс создания материалов и визуализация объекта при помощи подключаемого модуля VRay. Информация о VRay содержится на сайте производителя по адресу http://www.chaosgroup.com, там же можно скачать демонстрационную версию визуализатора.
410
Глава 7 . Текстурирование
Наряду с созданием материалов хрома, золота и воды, каждый профессиональный дизайнер трехмерной графики должен уметь делать материал стекла. Этой теме посвящено много книг, я лишь попытаюсь высказать свое мнение, затронув теорию и практику моделирования стекла и жидкости. Начнем, как всегда, с теории. Посмотрите на модели, приведенные на рис. 7.46.
: j"—"""-'-•;
-
Как видите, стекло характеризуется большим количеством отражений и преломлений. Создание реалистичной модели заключается в том, чтобы правильно (или максимально приближенно) передать эти свойства. Кроме того, желательно имитировать эффект каустики, получаемый при прохождении света через преломляющие среды.
•
ii
!
г
—*•" I,
т т
•liiriiii •
•:,•
"
••••••
, •
-
•
•
.
.
.
•
.•
:
.
.
•
•
.
•
•
•
™Ч1Вв1й&4..
Z^:AI
,
• •
0!И1ЧП
••
•
••
•
;
:
.
•
.
•
. • • • • •
. / • • • :
"
••
.
•
•
•
-
.
•
"
•
~»-r н а ш
•
.
•
.
.
•
•
Рис. 7.46. Пример визуализации флакона туалетной воды <S£)
Попробуем разобраться с преломлениями светового потока. Численная величина этого явления определяется коэффициентом преломления. Не стану утомлять вас формулами и графиками, скажу лишь, что для понимания данного явления вы должны знать о том, что преломления светового луча возникают на границах
Создание стеклянного флакона при помощи подключаемого визуализатора VRay 4 1 1 двух сред с различной плотностью, имеющих разную скорость светового потока (например, воздух — вода, вода — стекло). Для получения эффекта преломления в компьютерной графике необходимо выполнение двух условий: •
визуализация должна проводиться при помощи метода трассировки лучей;
•
материалы, используемые в сцене, должны иметь различный коэффициент преломления.
В данном разделе мы не будем стремиться полностью повторить реальные преломления, так как мы работаем в виртуальном мире. Однако это не значит, что нельзя использовать реальные коэффициенты. В табл. 7.1 представлены коэффициенты преломления основных материалов. Конечно, иногда в угоду красивой картинке можно немного отойти от правил физики (например, я иногда для стекла использую больший коэффициент). Таблица 7 . 1 . Коэффициенты преломления различных сред
Материал
Коэффициент преломления
Вакуум
1,00
Воздух
1,00029
Вода
1,333
Алкоголь
1,329
Стекло
1,44-1,90
Янтарь
1,54
Кварц
1,55
Рубин
1,76-1,77
Хрусталь
2,00
Алмаз
2,417-2,419
Перейдем к созданию геометрии объекта. Загрузите файл p a r f u m e .max, который находится на прилагаемом к книге компакт-диске по адресу CH07\Max\parf ume. Если вы решите сделать геометрию самостоятельно, обратите внимание на следующие требования к созданию реалистичного стекла и жидкости: •
необходимо моделировать как емкость, так и ее наполнение с учетом толщины материала;
412
Глава 7. Текстурирование
• грани флакона не должны совпадать с гранями жидкости, находящейся в нем; • геометрия должна иметь сглаженные углы, хотя подойдет и граненая поверхность (это необходимо, чтобы облегчить создание эффектов отражения, преломления и бликов); • в сцене должны быть предметы, которые будут отражаться в флаконе (в крайнем случае можно использовать карту окружения). На практике это будет выглядеть так, как показано на рис. 7.47. Перейдем к созданию материалов. Прежде всего сделаем материал стекла. Можно воспользоваться материалом из библиотеки VRayMtl, но мне бы хотелось кроме красивых отражений и преломлений получить еще и блики на стекле. Для таких целей я обычно использую стандартный материал с картой VRayMap (Растровая карта VRay) в качестве карт Reflection (Отражение) и Refraction (Преломления).
Рис. 7.47. Модель флакона с жидкостью
Для создания материала стекла выполните следующие действия. 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке ®§ , находящейся на панели инструментов, либо выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов). 2. Выберите ячейку со свободным материалом. 3. В свитке Shader Basic Parameters (Базовые параметры раскраски) установите флажок 2-Sided (Двусторонний), что является желательным для прозрачных материалов. 4. В свитке Extended Parameters (Дополнительные параметры) установите значение параметра Index of Refraction (Коэффициент преломления) равным 1,8. 5. В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с картой Reflection (Отражение). 6. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту VRayMap (Растровая карта VRay). 7. Повторите два последних пункта для выбора VRayMap (Растровая карта VRay) в качестве карты Refraction (Преломления) (рис. 7.48).
Создание стеклянного флакона при помощи подключаемого визуапизатора VRay 4 1 3
Более качественного результата можно добиться, применив в качестве основного материала Double Sided (Двусторонний). В этом случае используется материал Standard (Стандартный) в качестве Facing Material (Лицевой материал) и Back Material (Оборотный материал), с той лишь разницей, что можно независимо управлять их свойствами (например, для внутреннего материала использовать приглушенные блики и отражения). Но как всегда за качество приходится платить, в частности, ощутимым увеличением времени визуализации. В связи с этим я остановлюсь на более простом варианте, а вы, если хотите, можете попробовать использовать Double Sided (Двусторонний). Я задал параметру Index of Refraction (Коэффициент преломления) значение 1,8. Это как раз тот случай, когда лучше использовать коэффициент больше единицы. В результате преломления в стекле будут выглядеть более эффектными. Параметру Specular Level (Уровень блеска) следует задать значение больше 100 (у меня этот параметр составляет 130), чтобы получить на стекле блики. "a.fti. SUndattl Shadei Вesic Parameter* 2
Phong
Г
Wire
Г
Face Map
" F "г-Stded"" Г
Faceted
Phong Basic Parameter? ' """"• sSHi Ambient Diffuse ^ Specular
Specular Level JTSiT; DSsriess f50
t
Soften: JUT" i Extended -Advanced Transparency — falle* Tsue. |: < * tn « Fier i;-: ;
^
QtR
Amtftj—;
Г
Subtracfive
с
Addlrve
lndei*of Refraction, j i 8 ; Reilectiori Dimm«g
:
Dim l e v e t
Red. LeYst jTcT" -
Maps Amount I Г
AmoieriCoiw...J100
Map
:
W fleflection ..
(ТШ";
Maptti (уВауМар)
¥> Redaction
ГШГ;
Мар#2 (VRajWap)
Г" Displacement
. J100
J
Wone
Рис. 7.48. Настройки материала стекла
Настройки карт Reflection (Отражение) и Refraction (Преломления) представлены на рис. 7.49 и 7.50. В VRayMap (Растровая карта VRay) цвет параметра Filter color
414
Глава 7. Текстурирование
(Светофильтр) влияет на силу эффекта — чем светлее цвет, тем большей отражательной способностью или прозрачностью будет обладать материал. Parameters * flellect <~ fleliact •
Environment map;
< f Reflection p * a w ; j Filter c o t e ШШ :
f" Reflect on back side
SubdiY!
J100 0
;
Cutg» thresh
pO
t!
Enit color
Рис. 7.49. Параметры карты отражения для VRayMap (Растровая карта VRay)
r~ Г Glossy Мая depth
po~
fog color
Cutotl thresh
[1ГГ
Fogmultipfei
EMI cotot
Рис. 7.50. Параметры карты преломления для VRayMap (Растровая карта VRay)
Для карты отражения Filter color (Светофильтр) нужно задать темно-серый цвет, чтобы получить мягкие блики. Этот параметр тесно связан с Specular Level (Уровень блеска), находящимся в свитке Phong Basic Parameters (Базовые параметры по Фонгу), поэтому при настройках желательно учитывать тот и другой одновременно. Для параметра Filter color (Светофильтр) карты преломления необходимо задать светло-серый цвет, чтобы получить прозрачность стекла. Этот же параметр, как говорилось выше, влияет на прозрачность и преломления.
Создание стеклянного флакона при помощи подключаемого визуализатора VRay 4 1 5 Я намеренно не привожу точных значений перечисленных параметров цвета, так как степень яркости цвета будет зависеть от окружения, источников света в сцене и т. д. Главное — понять принцип работы, тогда вы сами сможете подбирать нужные вам параметры. Перейдем к настройкам визуализатора. 1. Откройте окно Render Scene (Визуализация сцены), щелкнув на кнопке «^ , находящейся на панели инструментов, либо выполнив команду Rendering • Render (Визуализация • Визуализировать). 2. Щелкните на вкладке Common (Общие) и в свитке Assign Renderer (Назначить визуализатор) выберите VRay, нажав кнопку с изображением многоточия в строке Production (Производитель) и щелкнув два раза в появившемся окне на соответствующей строке. 3. Щелкните на вкладке Renderer (Визуализатор) и в свитке GLobal switches (Глобальные переключатели) снимите флажок Default lights (Освещение по умолчанию). 4. В свитке VRay:: Indirect illumination (GI) (VRay:: непрямое освещение (GI)) задайте параметрам значения, которые показаны на рис. 7.51.
Minute: I -3
i
MsxraM:|~5
ij
; \ <* Direc* compulation Subdivs: p ;
OUtwukcfffT" i j HSph. subdivs- |20~ : NmthissfrrffT"
i , Iritep «mule*: [20
Disi t h i s * | U T ~ i ! Shaw samples Г
Г
:
Show cate phase R Show Л е й light Г
Depth (3 r
"(
Gtobel photon map
\ If tadtance map pwsets
GloWptotonmap
Рис. 7 . 5 1 . Свиток VRay:: Indirect illumination (GI) (VRay:: непрямое освещение (GI)) настроек визуализатора VRay в окне Render Scene (Визуализация сцены)
5. В свитке Environment (Окружающая среда) установите флажок Override MAX's (Аннулировать настройки МАХ) в области GI Environment (GI окружающая среда) и выберите для параметра Color (Цвет) светло-серый цвет. 6. В области Reflection/refraction (Отражение/преломления) свитка Environment (Окружающая среда) установите флажок Override MAX's (Аннулировать настройки МАХ) и также задайте Color (Цвет) светло-серый цвет. Обратите внимание, какие значения имеют параметры в свитке Indirect illumination (GI) (Непрямое освещение (GI)). Это тестовые настройки, но на данном этапе их вполне достаточно. Кроме того, необходимо отключить Default lights (Освещение по умолчанию) и ввести в сцену свой источник света. Я использовал источник света, который добавляет в 3ds Max визуализатор VRay, не столько для освещения (так как сцену засвечивает цвет окружающей среды), сколько для эффекта каустики.
416
Глава 7. Текстурирование
Необходимо добавить несколько слов по поводу глубины просчета преломлений. Возможно, вам потребуется знать минимальное количество таких преломлений для экономии ресурсов компьютера. Посчитать их не сложно. Я использовал 10 (с запасом), хотя для флакона с духами будет достаточно пяти (рис. 7.52).
Рис. 7.52. Схема прохождения светового луча через стекло и жидкость
Пришло время сделать тестовую визуализацию. Результат проведенной работы будет примерно такой, как показано на рис. 7.53 (представлен только результат визуализации стекла).
Рис. 7.53. Результат тестовой визуализации стекла
Чтобы увеличить плотность стекла по краям для придания изображению естественности, можно попробовать добавить в прозрачность карту FaLloff (Спад). Для этого выполните следующие действия. 1. В свитке Maps (Карты текстур) материала стекла щелкните на кнопке Refraction (Преломление), чтобы получить доступ к настройкам карты преломления. 2. В свитке Parameters (Параметры) карты VRayMap (Растровая карта VRay) щелкните на кнопке None (Отсутствует) рядом с Filter color (Светофильтр). 3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Falloff (Спад).
Создание стеклянного флакона при помощи подключаемого визуализатора VRay
417
4. Задайте параметрам карты Falloff (Спад) значения, показанные на рис. 7.54. Falofl Parameters
...
J:
:
j
ПЖГ|1
None
1 Ibltjnoor:
None
P f?
FaWfljpe; I Perpendicular / Parallel
i
JjJ
I
F a M Direction: jViewmg Direction (Camera Z-Axis] _ 4 - -
. .
• -
-
•
Рис. 7.54. Свиток Falloff Parameters (Параметры спада) для карты преломления стекла
Свиток Falloff Parameters (Параметры спада) содержит область Front : Side (Спереди : сторона), настройки которой определяют прозрачность в середине и по краям. В данном случае прозрачность в середине объекта выше, что объясняется применением светло-серого цвета (почти полная прозрачность). Соответственно для краевых эффектов применен серый цвет. Чтобы прозрачность исчезала только к границам, я использовал кривую, с помощью которой сместил непрозрачность к краям. Результат показан на рис. 7.55.
••-.
' • '
: ' •
•
'
"
'
.
Рис. 7.55. Результат визуализации после применения карты Falloff (Спад)
Пришло время заняться материалом жидкости. Он делается аналогично материалу стекла с той разницей, что используется другой коэффициент преломления (я установил 1,32, как для спиртосодержащих жидкостей) и цвет духов определяется цветом параметров Filter color (Светофильтр) и Fog color (Цвет дымки) для карты преломлений VRayMap (Растровая карта VRay) (рис. 7.56).
Sfossiness: - Subtfos Fs>geolo< FosmuKfplet
fTooT" t j Щ ;| -' : ?: *''; *":"1 JUT tj
Ma« depth Cutoff iNesh Ел» cote
p^
tf
Рис. 7.56. Настройки карты Refraction (Преломления) для жидкости
418
Глава 7. Текстурирование
Прежде чем визуализировать флакон с жидкостью, необходимо отключить у этих объектов способность принимать тени. Для этого щелкните на объекте правой кнопкой мыши. В результате появится контекстное меню, в котором выберите пункт Properties (Свойства). В области Rendering Control (Управление визуализацией) открывшегося окна Object Properties (Свойства объекта) снимите флажок Receive Shadow (Принимать тени) и щелкните на кнопке ОК. Визуализируйте флакон вместе с его содержимым (рис. 7.57).
Рис. 7.57. Результат визуализации флакона вместе с жидкостью
Можно поэкспериментировать с настройками стекла и жидкости, ее цветом и прозрачностью, но моя задача показать последовательность действий, а что и как улучшить, решайте сами. Нет предела совершенству, настраивать параметры можно еще очень долго, добиваясь сходства с реальными объектами. Вернемся к упражнению. Добавим в визуализацию каустику. Это делается одним из двух способов в настройках визуализатора: • указывается, какой источник света будет генерировать каустику; • включается просчет каустики. Чтобы активизировать просчет каустики выполните следующие действия. 1. Откройте окно Render Scene (Визуализация сцены), щелкнув на кнопке Sjj^ , находящейся на панели инструментов, либо выполнив команду Rendering • Render (Визуализация • Визуализировать). 2. Перейдите на вкладку Renderer (Визуализатор) и в свитке System (Системное) щелкните на кнопке Light settings (Параметры источника света). 3. В открывшемся окне VRay lights properties (VRay свойства источников света) выберите из списка источник света VRay light (Источник света VRay) и установите для него флажок Generate Caustics (Генерировать каустику). 4. В свитке Caustics (Каустика) установите флажок On (Включить). Установки оставьте заданными по умолчанию. Визуализируйте изображение с активизированной каустикой (рис. 7.58).
Создание стеклянного флакона при помощи подключаемого визуализатора VRay 4 1 9
Рис. 7.58. Изображение наполненного флакона с эффектом каустики
Добавьте в сцену окружение в виде каких-нибудь объектов, которые могли бы отражаться в стекле. Вместо этого можно применить текстурную карту, но объекты в сцене дают более естественные отражения.
•**:
•<•
Рис. 7.59. Результат финальной визуализации наполненного флакона с окружением
ПРИМЕЧАНИЕ Если у вас возникли трудности в процессе выполнения упражнения, то загрузите сцену perfume_end.max из папки CHOAMax\parfume прилагаемого к книге компакт-диска.
Это упражнение — только руководство к действию. Чтобы добиться хорошего результата, вам придется не один раз провести тестовую визуализацию и изменить настройки материала. Я надеюсь, что сумел раскрыть основы данного процесса, — остальное за вами.
Глава 8
Визуализация • Интеграция трехмерной графики и фотографии • Маскирование объектов • Объекты в фокусе камеры
Интеграция трехмерной графики и фотографии
421
Существует много вариантов, позволяющих получить хорошее изображение при визуализации, но при этом всегда найдется способ, чтобы улучшить его. В данной главе мы поговорим о том, как это сделать. Для этого мы рассмотрим методы работы с фотографиями, исследуем возможность улучшения визуализации за счет создания глубины резкости изображения.
Интеграция трехмерной графики и фотографии Когда я работал в рекламном агентстве, специализирующемся на наружной рекламе, мне часто приходилось иметь дело с проектами, требующими размещения рекламных конструкций на фотографии. В этом упражнении мы поговорим о рекламной конструкции и способе ее подачи в программе 3ds Max 8. На примере создания стелы для банка я объясню процесс построения целостного изображения на основе трехмерной графики и фотографии. Предположим, у вас есть идея для проекта, ее конструктивное решение. Но заказчику мало просто описать проект, он хочет видеть его таким, каким он будет в жизни. Попробуем выполнить пожелание заказчика. Все начинается с фотографии. Прежде всего нужно определить, какого качества необходимо распечатать проект для заказчика. Это служит отправной точкой для задания разрешения при сканировании (если, конечно, вы не пользуетесь цифровым фотоаппаратом). Если фотография имеет размер 9 х 12 см, а вывести на печать нужно формат А4, я сканирую с разрешением 300 dpi и предпочитаю работать с форматом TIFF. Получив цифровое изображение, можно считать подготовительную часть законченной (рис. 8.1).
• ы .ШШШШШ Рис. 8 . 1 . Отсканированное изображение, которое будет использоваться в качестве фона
Глава 8. Визуализация
422
Теперь надо разместить фотографию в качестве фонового изображения в окне проекции Perspective (Перспектива), а также в качестве карты окружающей среды, что позволит не только видеть фотографию в окне проекции, но и визуализировать ее. Для этого сделайте следующее. 1. Выполните команду Rendering • Environment (Визуализация • Окружающая среда). 2. В свитке Common Parameters (Общие параметры) открывшегося окна Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке None (Отсутствует). 3. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Bitmap (Растровое изображение). Откроется окно Select Bitmap Image File (Выбор растрового изображения). 4. Укажите путь к файлу фонового изображения и щелкните на кнопке Open (Открыть) (рис. 8.2), после чего закройте окно Environment and Effects (Окружающая среда и эффекты). Common Pawnees 8ack0ound
Ш global lighting tw-
ЕптаоптегЛ Map:
!«? Use Map •
MapBI Ibackgmund|P8)
Level
Ambent ^M>
Рис. 8.2. СВИТОК Common Parameters (Общие параметры) после добавления файла фонового изображения
СОВЕТ В окне Select Bitmap Image File (Выбор растрового изображения) не спешите, выбрав файл, щелкать на кнопке Open (Открыть). Обратите внимание на строку статистики внизу окна. Вам понадобится указанное там разрешение изображения в пикселах. Именно этот размер лучше всего выставлять для визуализации проекта как оптимальный с точки зрения качества. Иногда в процессе работы требуется небольшая коррекция растрового изображения, которую можно выполнить, не выходя из 3ds Max и не загружая его в программы редактирования растровых изображений. Для этого достаточно скопировать карту фонового изображения из свитка Common Parameters (Общие параметры) окна Environment and Effects (Окружающая среда и эффекты) в Material Editor (Редактор материалов). Для копирования сделайте следующее. Откройте редактор материалов, выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов) или нажав клавишу М. Щелкните на кнопке с названием файла фонового изображения в окне Environment and Effects (Окружающая среда и эффекты) и, не отпуская кнопку мыши, перетащите ее в любую свободную ячейку образца материала окна Material Editor (Редактор материалов), а в качестве метода копирования установите Instance (Привязка).
Интеграция трехмерной графики и фотографии
423
При необходимости редактирования изображения откройте свиток Bitmap Parameters (Параметры растрового изображения) или Output (Результат) в окне Material Editor (Редактора материалов). При помощи этих свитков можно подкорректировать размер выходного изображения, провести цветокоррекцию, изменить яркость, насыщенность и другие параметры растрового изображения. Теперь нужно разместить это же растровое изображение в окне проекции и изменить параметры визуализации. Для этого сделайте следующее. 1. Выполните команду Views • Viewport Background (Вид • Фон окна проекции). 2. В появившемся окне Viewport Background (Фон окна проекции) установите флажки Use Environment Background (Использовать фон окружающей среды) и Display Background (Показать фон). 3. В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) строку Perspective (Перспектива) (рис. 8.3). 4. Закончив настройку, щелкните на кнопке ОК.
P UwEn«onm«rt Background
•AntrWion Synchronistic
(7 Display Background
С
At'(
b' < • '• " s
-
(
''
Apply Scwce afjd Display lo • -, e
*.АеЙуеО*;1
Рис. 8.З. Окно Viewport Background (Фон окна проекции) с настройками для фонового изображения
5. Выполните команду Rendering • Render (Визуализация • Визуализировать), в результате чего откроется окно Render Scene (Визуализация сцены). 6. В области Output Size (Выходной размер) свитка Common Parameters (Общие параметры) укажите значение ширины и высоты в пикселах в соответствии
424
,_{;,.
Глава 8. Визуализация
с размером фонового изображения (помните, я советовал при открытии файла обратить внимание на размер изображения). После выполнения данных действий, в окне проекции Perspective (Перспектива) появится фотография в качестве фонового изображения. Проанализируем фоновое изображение. Первое, что нужно сделать, — определить точку в пространстве, с которой производилась съемка (это необходимо для правильной постановки камеры в сцене), а также сделать анализ света и тени (пригодится для выставления источников света). Начнем с камеры. Фотоаппарат находился на уровне глаз фотографа, значит, и камеру в сцене надо разместить на высоте 1600-1700 мм (за нулевую отметку земли возьмем начало координат по оси Z). Чтобы проще было согласовывать объекты сцены с фоновым изображением, лучше использовать Target Camera (Направленная камера). Target (Цель) камеры будет находиться несколько выше самой камеры, так как фотография, предположительно, была сделана под небольшим углом. Идеальный вариант — знать реальные размеры объектов на фотографии, например столбов, и расстояние от них до точки съемки, чтобы максимально верно выставить камеру и объекты сцены. Что же касается освещения на фотографии, то судя по теням от машины и столба, можно предположить, что солнце находилось слева и немного впереди.
СОВЕТ Особую роль в работе такого рода играет последовательность действий. В данном примере можно было сначала построить всю геометрию (плоскость земли и саму стелу) согласно реальным размерам, и только потом начинать работу с фотографией. Но гораздо чаще приходится строить объекты, используя фотографию, то есть заниматься непосредственной подгонкой изображения (например, добавить несколько мелких деталей в интерьер комнаты).
Допустим, что у вас уже есть модель стелы и сейчас нужно только экспортировать ее в сцену.
ПРИМЕЧАНИЕ Вы можете загрузить объекты сцены из файла stela_start.max, расположенного в папке CH08\Max\Stela прилагаемого к книге компакт-диска.
Чтобы показать тень, падающую от стелы на землю, необходимо построить плоскость. Для этого выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость). В окне проекции Тор (Сверху) щелкните кнопкой мыши в верхнем левом углу и, удерживая ее нажатой, переместите указатель в правый нижний угол, построив таким образом плоскость (рис. 8.4).
425
Интеграция трехмерной графики и фотографии
•
•
Рис. 8.4. Взаимное расположение объектов сцены
Плоскость нужна для того, чтобы отобразить на ней тень от стелы, поэтому она должна находиться на уровне земли и быть не меньше, чем предполагаемая тень. Кроме того, я использую грани плоскости для выравнивания ее относительно точек схода. Построив плоскость и установив на нее стелу, можно считать работу с геометрией законченной. Теперь перейдем к построению камеры, для чего сделайте следующее. 1. Выполните команду Create • Cameras • Target Camera (Создание • Камеры • Направленная камера) главного меню. 2. В окне проекции Тор (Сверху) щелкните немного левее стелы и переместите указатель мыши в направлении, противоположном фронтальной стороне стелы. Поле того как вы отпустите кнопку мыши, камера будет построена. 3. Не снимая выделения с камеры, щелкните правой кнопкой мыши на кнопке Select and Move (Выделить и переместить) («$», расположенной на панели инструментов. 4. В открывшемся окне Move Transform Type-In (Ввод значений перемещения) задайте абсолютное значение по оси Z равным 1700 (расстояние от земли до камеры). Камера займет свое положение в пространстве по оси Z, и двигать ее в этой плоскости больше не следует (рис. 8.5). Щ)Ноче Transform Type-In i Absolute World —
-Offss»:Scie№
j
X: 1-9477 743
|
Y|-17595 762
tj
i
ZJJ1700 0
t;
J
,xioo Y.JOO
.
.
.
'
•
h
'
Z:JOO 7
Look At ; D * i 13860 045
t j ЯЛ10.0
т.-
Рис. 8.5. Окно Move Transform Type-In (Ввод значений перемещения) со значением высоты камеры над землей
Глава 8. Визуализация
426
Теперь окно проекции Perspective (Перспектива) можно заменить окном вида из камеры. Для этого щелкните правой кнопкой мыши на названии окна (в левом верхнем углу) и в появившемся контекстном меню выберите Views • Camera (Вид • Камера). Продолжим настройку положения камеры в пространстве. Для согласования линии горизонта камеры с горизонтом на фотографии надо включить показ горизонта камеры в окне вида из камеры. Для этого выполните следующие действия. 1. Выделите камеру в окне проекции Тор (Сверху). 2. Щелкните на вкладке Modify (Изменение) Щ командной панели, в результате чего появится доступ к настройкам параметров камеры. 3. В свитке Parameters (Параметры) установите флажок Show Horizon (Показать горизонт). В окне проекции появится черная горизонтальная линия, указывающая на положение линии горизонта в пространстве. На рис. 8.6 показаны составляющие правильной настройки камеры и освещения для фонового изображения. Тенеобразующий светильник
Линия горизонта камеры
Точка схода Плоскость
Рис. 8.6. Схема положения объектов сцены относительно изображения фона
Для наглядности (это не обязательно) я провел две линии: параллельно бордюрному камню и по краю газона (они обычно параллельны). На пересечении мы получили точку схода, а следовательно, и линию горизонта фотографии. Используя инструмент Select and Move (Выделить и переместить) [**Г, передвиньте Target (Цель) камеры по оси Z так, чтобы черная горизонтальная линия (горизонт
Интеграция трехмерной графики и фотографии
427
камеры) совпал с точкой схода. Затем переместите камеру по осям X и Y, чтобы стела заняла то место, которое для нее предназначено, то есть справа от дороги, на газоне. Стелу предполагается расположить перпендикулярно дороге, следовательно, стелу можно установить по левой грани плоскости. Кроме того, она размещена в пространстве так, что ее боковая грань расположена параллельно дороге. На рис. 8.7 показано окончательное расположение камеры и источников света в окне проекции Тор (Сверху).
Рис. 8.7. Расположение объектов сцены в окне проекции Тор (Сверху)
В сцене будет три источника света: два Omni (Всенаправленный) и Target Direct (Нацеленный направленный). В качестве источника света, который будет генерировать тени, я выбрал Target Direct (Нацеленный направленный), как наиболее близкий по теням к солнцу (у солнца лучи почти параллельны, как и у этого источника света). Он размещен в сцене согласно ранее проведенному анализу фотографии, то есть слева и немного впереди. Для этого источника света сделайте следующее. 1. Выделите Target Direct (Нацеленный направленный) в окне проекции Тор (Сверху). 2. Щелкните на вкладке Modify (Изменение) Щ командной панели, в результате чего появится доступ к настройкам параметров источника света. 3. В области Shadows (Тени) свитка General Parameters (Общие параметры) установите флажок On (Включить). 4. В свитке Shadow Map Params (Параметры карты тени) задайте параметру Size (Размер) значение 1000, что позволит генерировать тень с более ровными краями.
428
Глава 8. Визуализация
Теперь нужно назначить плоскости материал Matte/Shadow (Матовое покрытие/тень). Он позволяет принимать объектам тени, при этом оставаясь невидимым. Чтобы присвоить плоскости данный материал и настроить его параметры, выполните следующие действия. 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке <|£ | находящейся на панели инструментов, либо выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов). 2. В окне Material Editor (Редактор материалов) выберите любую свободную ячейку образца. 3. Щелкните на кнопке Standard (Стандартный). 4. В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень). 5. В свитке Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) настройте параметры материала, как показано на рис. 8.8. Matte/Shadow Basic Parameters
Г
i --.
Майе Г
Opaque Alpha
Г Apply Atmosphere
* At Background Depth
-Shadow F Receive Shadows
W Affect Alpha
Shadow Brightness [OX" t}
Cofor
-Reflection Amount: f~~
Map:
i
P" Additive Reflect»
None
j p
Рис. 8.8. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для плоскости
6. Для присвоения материала плоскости перетащите материал из окна Material Editor (Редактор материалов) на плоскость в окне проекции. Визуализируйте сцену (рис. 8.9). В данном случае тень от стелы падает на ровную поверхность земли, а что если тень падает на стену здания с колоннами, окнами и пилястрами? При решении такой задачи нужно имитировать выступы и впадины (достаточно сделать это приблизительно), и на достаточном расстоянии от камеры вы не заметите неточности в форме тени. Сложнее, если объект показан крупным планом. Чтобы он не казался инородным телом, необходимо подобрать параметр сглаживания при визуализации. Это же относится и к подбору цвета для источников света (надо постараться попасть в цветовую гамму фотографии).
429
Маскирование объектов
.-
Рис. 8.9. Результат визуализации стелы на фоне растрового изображения
Маскирование объектов Техника использования маскированных объектов позволяет создавать визуализацию с помощью фонового изображения и объектов сцены. Простым примером может служить создание анимации, при которой объект сцены — самолет — вылетает из-за скалы, расположенной на фотографии, использованной в качестве фонового изображения. Рассмотрим похожий пример с использованием автомобиля. Нам понадобится фотография для фонового изображения (рис. 8.10) и модель автомобиля.
Рис. 8.10. Растровое изображение, взятое для использования в качестве фона
430
Глава 8. Визуализация
ПРИМЕЧАНИЕ Все необходимое для выполнения задания можно найти на прилагаемом к книге компакт-диске в папке CH08\Max\Mask. Файл сцены называется mask_start.max.
Как установить растровое изображение в качестве фона в окно проекции и подключить его для последующей визуализации, было подробно рассмотрено в двух предыдущих разделах, поэтому я напомню только последовательность работы. 1. Выполнив команду Rendering • Environment (Визуализация • Окружающая среда), загрузите растровое изображение фона для использования его при визуализации. 2. Для показа фона в окне проекции Perspective (Перспектива) или вида из камеры выполните команду Views • Viewport Background (Вид • Фон окна проекции). 3. Задайте разрешение для визуализации соответственно размерам фонового изображения (как минимум должно соответствовать отношению высоты к ширине, в противном случае будут искажения). 4. Экспортируйте в сцену объекты для работы (в данном случае автомобиль), для чего выполните команду File • Merge (Файл • Присоединить) и выберите в окне диалога Merge File (Присоединить файл) файл с моделью автомобиля (рис. 8.11).
Рис. 8 . 1 1 . Окно вида из камеры с фоновым изображением и моделью автомобиля
На рис. 8.11 уменьшенная копия модели автомобиля висит над террасой. Такое впечатление создается из-за того, что ограждение террасы оказалось за автомобилем, а также из-за отсутствия тени, которая помогает ориентироваться в трехмерном пространстве.
Маскирование объектов
431
Чтобы исправить положение, вам понадобится построить плоскость и согласовать ее положение в пространстве с положением автомобиля. Плоскость нужна для того, чтобы автомобиль отбрасывал на нее тень. Для ее построения выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость) и расположите плоскость в окне проекции Тор (Сверху) под моделью автомобиля. Назначьте плоскости материал Matte/Shadow (Матовое покрытие/тень) с установленным флажком Receive Shadows (Принимать тень) (рис. 8.12).
Рис. 8.12. Модель автомобиля с плоскостью на фоне растрового изображения
Теперь необходимо построить геометрический объект, который по форме будет соответствовать тем участкам растрового изображения, которые надо открыть на фото (пока они скрыты моделью автомобиля). ВНИМАНИЕ Если в качестве фона вы планируете использовать анимацию, то объекты, играющие роль масок, должны быть объемными копиями объектов на фотографии. В противном случае маскирование не будет использовано при повороте или движении камеры.
Все, о чем я буду говорить дальше, подходит только для статичных (неподвижных) сцен. Дальнейшее построение можно вести тремя способами. • Если форма маскирующего объекта, которую надо создать, несложная, ее можно строить прямо в окне вида из камеры.
432
Глава 8. Визуализация
•
Если форма сложная, то необходимо вставить растровое изображение в качестве фона в окно проекции и, используя масштабирование, приблизить его настолько, чтобы было удобно работать с мелкими деталями. После создания такого объекта, нужно уточнить его положение в пространстве относительно вида визуализации.
•
Можно создать сплайны в программах векторной графики (например, таких, как CorelDRAW или Adobe Illustrator) и импортировать их в 3ds Max.
Воспользуемся первым способом. В качестве объекта, маскирующего автомобиль, я использовал сплайны, к которым затем применил модификатор Edit Mesh (Редактирование поверхности). Чтобы ничего не мешало в работе, можно скрыть все ненужные в данное время объекты (автомобиль, плоскость, камера и источники света). Для этого выделите все объекты сцены, щелкнув на кнопке Select by Name (Выделить по имени) | ^ . В появившемся окне Select Objects (Выбор объектов) нажмите кнопку All (Все), а затем — Select (Выделить). В свитке Hide (Спрятать) вкладки Display (Отображение) | | р щелкните на кнопке Hide Selected (Спрятать выделенное). Прежде чем приступить к построению сплайнов, очерчивающих форму деталей растрового изображения (в данном случае это ограждение террасы), нужно выполнить подготовительные действия. 1. В окне проекции Front (Спереди) постройте объект сетки, выполнив команду Create • Helpers • Grid (Создание • Вспомогательные объекты • Координатная сетка). 2. Выделите созданный объект сетки в окне проекции вида из камеры и выполните команду Tools • Align to View (Инструменты • Выровнять по окну проекции). 3. В открывшемся окне Align to View (Выровнять по окну проекции) установите переключатель в положение Align Z (Выровнять по оси Z) (рис. 8.13) и щелкните на кнопке О К для подтверждения принятых изменений. HE3I
Align to View ___
[ С AlignX e AtgilY i FFIp
OK * AiiflnZ
I 1
Cancel
1
Рис. 8.13. Окно Align to View (Выровнять по окну проекции) с настройками для выравнивания сетки
4. Для увеличения рабочей области при выделенном окне проекции вида из камеры щелкните на кнопке Maximize Viewport Toggle (Увеличение окна проекции до размеров экрана) Щ в правом нижнем углу окна программы. 5. Сделайте активной плоскость сетки. Для этого выделите объект сетки и выполните команду главного меню Views • Grid • Activate Grid Object (Вид • Координатная сетка • Активировать объект сетки).
Маскирование объектов
433
После выполнения этих действий можно приступать к построению сплайнов. Я использовал объекты Rectangle (Прямоугольник), которые затем присоединил к одному объекту и к которым применил булевы операции для создания цельного сплайна.
ВНИМАНИЕ Объект, который мы строим, должен находиться перед автомобилем, то есть в окне проекции вида из камеры он должен перекрывать автомобиль. После редактирования сплайна необходимо применить к нему модификатор Edit Mesh (Редактирование поверхности), выполнив команду Modifiers • Mesh Editing • Edit Mesh (Модификаторы • Редактирование поверхности • Редактирование поверхности). В результате должен получиться полигональный объект, закрывающий ограждение террасы (рис. 8.14).
Рис. 8.14. Окно вида из камеры с полигональным объектом, построенным на объекте сетки
Теперь можно приступать к созданию и наложению на построенный объект материала Matte/Shadow (Матовое покрытие/тень). 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке • § , находящейся на панели инструментов, либо выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов). 2. Выберите ячейку со свободным материалом. 3. Щелкните на кнопке Standard (Стандартный).
434
Глава 8. Визуализация
4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень). 5. В свитке Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) настройте параметры материала, как показано на рис. 8.15. Matte/Shadow Basic Parameter; ма =
:
I -
Маке =
Г Г OpaqueAlpha Atmosphere» At Back^ound Depth
-Shadow:
Г
-
—
Receive Shadows
Г
Shadow Brightness: JO 0 ' i\
Affect Alpha
Cola:
W Additive Reflection None
Рис. 8.15. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для объекта маскирования
Осталось только открыть спрятанные ранее объекты и визуализировать вид из камеры. Для этого в свитке Hide (Спрятать) вкладки Display (Отображение) командной панели щелкните на кнопке Unhide All (Показать все), а затем — на кнопке панели инструментов Quick Render (Production) (Быстрая визуализация (итоговая)) *ф. В результате должно получиться изображение, показанное на рис. 8.16.
Рис. 8.16. Окончательная визуализация автомобиля с использованием фонового изображения
Объекты в фокусе камеры
435
ПРИМЕЧАНИЕ Для просмотра и анализа выполненной работы вы можете загрузить готовую сцену mask_end.max из папки CH08\Max\Mask прилагаемого к книге компакт-диска.
Объекты в фокусе камеры Вы когда-нибудь задумывались над тем, почему иногда сцены, созданные в программах трехмерного моделирования, выглядят неестественными? Объяснить это можно несколькими причинами — начиная от неверно выставленного освещения и заканчивая неправильным наложением текстур. В данном разделе я хочу затронуть тему глубины резкости и фокусного расстояния. Ни для кого не секрет, что, глядя на фотографию, экран телевизора или просто какие-либо предметы на улице или дома, мы не видим все одинаково четким. Это связано с особенностью строения глаза, устройством фотоаппарата и камеры. Однако, невзирая на такой очевидный факт, многие пренебрегают глубиной резкости в своих работах. Разберемся, что такое глубина резкости и фокусное расстояние применительно к сценам в программе 3ds Max. На примере данного упражнения мы рассмотрим четыре подхода к решению этой задачи. • Использование размытия при помощи Video Post (Видеомонтаж). • Использование фильтра Depth of Field (Глубина резкости), который относится к Rendering Effects (Эффекты визуализации). • Альтернативный метод, который я однажды использовал для выполнения одного из рекламных проектов, связанного с оптикой. Суть его состоит в том, чтобы визуализировать последовательность кадров, изменяя положение камеры в пространстве (Target (Цель) камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга • Использование возможностей настройки объекта камеры. Сначала необходимо создать какую-нибудь сцену для последующей работы. Постройте на плоскости колоннаду из 15 колонн (рис. 8.17). ПРИМЕЧАНИЕ Сцену, подготовленную для данного задания, можно загрузить из файла focus_start.max, расположенного в папке CH08\Max\Focus прилагаемого к книге компакт-диска.
Установите в сцене Target Camera (Направленная камера). Для этого выполните команду Create • Cameras • Target Camera (Создание • Камеры • Направленная камера) и в окне проекции Тор (Сверху) постройте камеру, направленную на середину колоннады.
436
Глава 8. Визуализация
"ЛИ
Рис. 8.17. Окно проекции Perspective (Перспектива) со сценой урока
По поводу создания камеры в сцене хотелось бы сделать небольшое отступление. Некоторые дизайнеры в 80 % случаев работают с перспективой, отодвигая роль камеры на задний план. Я абсолютно не согласен с таким мнением. Кроме того, что камера позволяет более гибко настраивать сцену, вид из камеры получается более естественным, не говоря уже о многих других положительных сторонах ее применения. Итак, у нас есть сцена и камера. Обратите внимание, что я установил Target (Цель) камеры на колонну, находящуюся в центре (выделенную цветом), чтобы при настройках глубины резкости, где используются параметры камеры, эта колонна всегда оставалась в фокусе. Я буду настраивать глубину резкости именно по этой колонне — так проще сравнить результаты всех методов. Чтобы выполнить размытие объектов сцены при визуализации, используя Video Post (Видеомонтаж), сделайте следующее. 1. Выполните команду Rendering • Video Post (Визуализация • Видеомонтаж). 2. В открывшемся окне Video Post (Видеомонтаж) щелкните на кнопке Add Scene Event (Добавить событие-сцену) Ifu. 3. В появившемся окне Add Scene Event (Добавить событие-сцену) в раскрывающемся списке выберите вашу камеру и щелкните на кнопке ОК. 4. Щелкните на кнопке Add Image Filter Event (Добавить событие фильтрации изображения) § . 5. В области Filter Plug-In (Модули фильтров) появившегося окна Add Image Filter Event (Добавить событие фильтрации изображения) выберите строку Lens Effects Focus (Эффекты линзы, фокусировка) и щелкните на кнопке ОК.
Объекты в фокусе камеры
437
В результате левая часть окна Video Post (Видеомонтаж) примет вид, показанный на рис. 8.18. i
j
.
».. Video Post
•
Queue CameiaOl ~ ' S ' Lens Effects Focus г -
!i 'I
t
iU Рис. 8.18. Фрагмент окна Video Post (Видеомонтаж) Дальнейшие действия заключаются в настройке параметров фильтра Lens Effects Focus (Эффекты линзы, фокусировка). 1. В левой части окна Video Post (Видеомонтаж) щелкните дважды на строке Lens Effects Focus (Эффекты линзы, фокусировка). 2. В открывшемся окне Edit Filter Event (Редактирование события фильтрации) щелкните на кнопке Setup (Настройка), чтобы открыть окно настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка). 3. Чтобы увидеть в окне настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) вашу сцену, щелкните на кнопке VP Queue (Очередь видеомонтажа), в результате чего она изменит цвет, а затем нажмите кнопку Preview (Просмотр). При этом в окно предварительного просмотра загрузится вид окна из камеры. 4. Установите переключатель в левой части окна настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) в положение Focal Node (Центр фокусировки), что позволит выбрать объект, который будет являться центром фокусировки. При установке переключателя в положение Scene Blur (Размытие сцены) эффект размытия применяется ко всей сцене в целом, а в положении Radial Blur (Радиальное размытие) размытие сцены происходит радиально, от центра к ее краям. 5. Чтобы указать объект, который будет все время оставаться в фокусе, щелкните на кнопке Select (Выбор) и в появившемся окне Select Focal Object (Выбор объекта фокусировки) выберите из списка колонну, находящуюся в центре (выделенную цветом) (Column22). 6. Измените настройки следующих параметров (в окне просмотра, которое обновляется автоматически, вы увидите сделанные изменения): •
Affect Alfa (Воздействовать на альфа-канал) — воздействие размытия на альфа-канал изображения при 32-битной глубине цвета; Horiz/Vert Focal Loss (Расфокусировка по горизонтали/по вертикали) — величина размытия сцены по горизонтали и вертикали в диапазоне от 0 до 100;
•
Focal Range (Диапазон фокусировки) — определяет, на каком расстоянии от центра (объекта) начинается размытие;
438 •
Глава 8. Визуализация Focal Limit (Предел расфокусировки) — расстояние, на котором происходит максимальное размытие сцены.
7. Щелкните на кнопке ОК для подтверждения сделанных изменений. Для визуализации сцены щелкните на кнопке Execute Sequence (Выполнить цепочку) $£. В открывшемся окне Execute Video Post (Выполнить видеомонтаж) настройте параметры выходного изображения и щелкните на кнопке Render (Визуализировать). На рис. 8.19 показана сцена с размытием, полученным с использованием модуля Video Post (Видеомонтаж).
•
Рис. 8.19. Размытие сцены, выполненное в Video Post (Видеомонтаж)
ПРИМЕЧАНИЕ Сцену, выполненную при помощи модуля Video Post (Видеомонтаж), можно загрузить из файла focus_v1.max, который находится в папке CH08\Max\Focus прилагаемого к книге компакт-диска. Продолжим разбираться с глубиной резкости и фокусным расстоянием на примере второго способа. Для размытия сцены сделайте следующее. 1. Выполните команду Rendering • Effects (Визуализация • Эффекты). 2. В открывшемся окне Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке Add (Добавить). 3. В появившемся окне Add Effect (Добавить эффект) выберите из списка Depth of Field (Глубина резкости) и щелкните на кнопке ОК для подтверждения выбора.
Объекты в фокусе камеры
439
После активизации фильтра станет доступным свиток Depth of Field Parameters (Параметры глубины резкости), который позволяет настраивать глубину резкости в сцене. Параметры фильтра Depth of Field (Эффект глубины резкости) во многом повторяют настройки Lens Effects Focus (Эффекты линзы, фокусировка), поэтому я остановлюсь только на некоторых из них. •
Pick Cam. (Указать камеру) области Cameras (Камеры) позволяет выбрать одну или несколько камер непосредственно в окне проекций.
•
Если в области Focal Point (Точка фокусировки) переключатель установлен в положение Focal Node (Центр фокусировки), то можно выбрать объект для центра фокусировки. Для этого необходимо нажать кнопку Pick Node (Указать центр фокусировки), а затем щелкнуть на объекте в любом из окон проекций. Если в области Focal Point (Точка фокусировки) переключатель установлен в положение Use Camera (Использовать камеру), то можно воспользоваться фокусным расстоянием камеры.
•
В области Focal Parameters (Параметры фокусировки) можно установить переключатель в положение Use Camera (Использовать камеру), тогда характеристики глубины резкости (диапазон и пределы) будут определяться параметрами выбранной камеры.
Измените настройки и выполните визуализацию для просмотра результатов. В области Focal Parameters (Параметры фокусировки) я установил переключатель в положение Use Camera (Использовать камеру) и увеличил значения параметров Horiz Focal Loss (Расфокусировка по горизонтали) и Vert Focal Loss (Расфокусировка по вертикали) до 20. На рис. 8.20 представлено изображение, получившееся у меня при визуализации.
Рис. 8.20. Сцена с использованными эффектами визуализации
440
Глава 8. Визуализация
ПРИМЕЧАНИЕ Сцену, выполненную при помощи Environment and Effects (Окружающая среда и эффекты), можно загрузить из файла focus_v2.max, находящегося в папке CH08\Max\Focus прилагаемого к книге компакт-диска.
Перейдем к описанию более сложного, но более правильного с физической точки зрения способа создания размытия. • Два предыдущих способа хороши своей простотой, но они не совсем верно передают эффект глубины резкости. В итоге размытие появляется там, где его не должно быть. Поэтому, когда мне понадобилось делать рекламный плакат, я стал искать альтернативу этим двум методам. Надо заметить, это было время, когда работа велась во второй версии программы 3ds Max и еще не было глубины резкости в настройках камеры, которая появилась только с выходом четвертой версии и решала аналогичные задачи на приемлемом уровне. Решение проблемы, как оказалось, лежало на поверхности: достаточно было подумать о физических свойствах и принципе работы фотоаппарата. Оно заключается в том, чтобы визуализировать последовательность кадров, изменяя положение камеры в пространстве (цель камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга. Используя ту же сцену с камерой, построим дополнительный объект — окружность. Для этого выполните команду Create • Shapes • Circle (Создание • Формы • Окружность). Радиус окружности должен быть небольшим (у меня он равен 5), хотя сейчас это неважно — позже все равно нужно будет подбирать его под величину размытия. После создания сплайна расположите его так, чтобы камера оказалась внутри окружности, а сам сплайн стал перпендикулярен линии от камеры к ее цели. Выстраивать с абсолютной точностью, применяя дополнительные средства выравнивания, не нужно, достаточно воспользоваться инструментами трансформации Select and Move (Выделить и переместить) и Select and Rotate (Выделить и повернуть). В итоге должно получиться изображение, как на рис. 8.21.
Рис. 8 . 2 1 . Окружность, выровненная относительно камеры
Объекты в фокусе камеры
441
Следующим шагом будет привязка камеры к сплайну. Для этого выделите камеру и выполните команду Animation • Constraints • Path Constraint (Анимация • Ограничения • Ограничение по пути). В окне проекции Front (Спереди) щелкните на окружности, выбрав ее в качестве сплайна пути. После этого камера сместится в начало сплайна. Щелкните в правом нижнем углу программы на кнопке PLay Animation (Воспроизведение анимации) Н Для просмотра анимации движения камеры. В окне вида из камеры вы можете проанализировать максимальное размытие, которое получится при применении этого способа. Я, просмотрев анимацию, уменьшил радиус круга до 2,5 для получения более естественного размытия. Здесь наблюдается прямая зависимость: чем больше смещение объектов в процессе выполнения анимации, тем сильнее будет их размытие в итоговой сцене. После того как вы определитесь с величиной размытия, можно приступать к визуализации. Для этого сделайте следующее. 1. Выполните команду Rendering • Render (Визуализация • Визуализировать). 2. В появившемся окне Render Scene (Визуализация сцены) установите переключатель в положение Active Time Segment (Текущий промежуток времени), чтобы задействовать всю шкалу анимации. 3. Для создания эффекта размытия достаточно 10 кадров, поэтому если у вас шкала 100 кадров, задайте параметру Every Nth Frame (Каждый кадр под номером) значение 10.
СОВЕТ Если вам необходимо улучшить качество выходного изображения, увеличьте количество визуализируемых кадров. 4. В области Render Output (Результат визуализации) установите флажок Save File (Сохранить файл) и щелкните на кнопке Files (Файлы). 5. В открывшемся окне Render Output File (Результирующий файла визуализации) укажите директорию на диске, куда будут сохраняться кадры, а также тип файла. 6. Щелкните на кнопке Render (Визуализировать) для начала визуализации и сохранения последовательности кадров. Для этого способа создания размытия вся работа в программе 3ds Max закончена. Осталось только собрать все визуализированные кадры. Для этого я воспользовался программой Adobe Photoshop (вы же можете использовать любую другую программу редактирования растровых изображений). После загрузки всех 10 кадров в Adobe Photoshop надо выбрать любой кадр (файл) и перенести на него изображения с девяти оставшихся. Для этого активизируйте инструмент Move (Перемещение) на панели инструментов и, удерживая нажатой клавишу Shift (что обеспечит полное совпадение слоев), перетаскивайте изображения
442
Глава 8. Визуализация
на выбранный файл. В результате получится изображение, состоящее из 10 слоев. После этого каждому слою, исключая нижний, задайте значение параметра Opacity (Непрозрачность) равным 35 % (подбирается опытным путем). Затем сохраните все как один файл (рис. 8.22).
Рис. 8.22. Эффект глубины резкости, выполненный альтернативным способом
ПРИМЕЧАНИЕ Сцену, созданную при помощи альтернативного способа, можно загрузить из файла focus_v3.max, который находится в папке CH08\Max\Focus прилагаемого к книге компакт-диска.
Если сравнить данный способ с предыдущими, то можно отметить несравненно лучший результат. В последних версиях программы 3ds Max добиться такого же результата можно значительно более простым способом. Все то, что с таким трудом мы проделывали в предыдущем методе, нашло свое отражение в свитке Depth of Field Parameters (Параметры глубины резкости) настроек камеры. Рассмотрим подробнее эти возможности. Обратимся к области Multi-Pass Effect (Многопроходный эффект) свитка Parameters (Параметры) настроек камеры. Здесь нужно установить флажок Enable (Использовать) и выбрать в раскрывающемся списке строку Depth of Field (Глубина резкости) или Motion Blur (Размытие движения), чтобы активизировать соответствующий процесс. Если в этой области щелкнуть на кнопке Preview (Просмотр), то можно увидеть результат размытия в окне проекции.
Объекты в фокусе камеры
443
В области Focal Depth (Глубина фокусировки) свитка Depth of Field Parameters (Параметры глубины резкости) настроек камеры можно установить флажок Use Target Distance (Использовать фокусное расстояние). В таком случае цель камеры будет использоваться как точка, вокруг которой происходит размытие сцены. Если снять флажок, то станет доступным для редактирования параметр Focal Depth (Глубина фокусировки). Область Sampling (Экземпляры) содержит следующие настройки: •
Display Passes (Показать проходы) — позволяет показать проходы1 в окне проекции;
•
Use Original Location (Использование первичного положения) — определяет, что проходы будут начинаться с первоначального положения камеры;
• Total Passes (Общее количество проходов) — указывает количество проходов для генерации эффекта; • Sample Radius (Радиус выборки) — сдвигает сцену на указанное значение при создании размытия (увеличение этого значения ведет к усилению эффекта); • Sample Bias (Смещение выборки) — смещает действие эффекта (размытия) к началу или к концу проходов (по умолчанию находится посередине). •
В области Pass Blending (Смешивание проходов) можно управлять параметрами сглаживания мультипроходной визуализации (в окне проекции результата сглаживания не видно): •
Normalize Weights (Нормализовать удельный вес) — уменьшает артефакты при визуализации, увеличивая тем самым степень размытия;
•
Dither Strength (Сила вибрации) — управляет количеством полутонов в мультипроходах;
• Tile Size (Повторяемость размера) — задает размер перекрытия слоев, используемых в передаче полутонов. Я подробно остановился на параметрах свитка Depth of Field Parameters (Параметры глубины резкости), чтобы вы могли осознанно настраивать размытие сцены, используя возможности программы. Свиток Motion Blur Parameters (Параметры размытия движения) почти полностью повторяет вышеперечисленные настройки. На рис. 8.23 представлен результат визуализации, выполненной при помощи настроек в свитке Depth of Field Parameters (Параметры глубины резкости) для присутствующей в сцене камеры. Чтобы визуализировать один кадр, визуализатор выполняет серию проходов, то есть промежуточных визуализаций со сдвигом камеры но кругу, «складывая» их в одном кадре (полупрозрачные изображения наслаиваются друг на друга и там, где изображения не совпадают, появляется размытие).
444
Глава 8. Визуализация
Рис. 8.23. Сцена, визуализированная при использовании параметров камеры Depth of Field (Глубина резкости)
ПРИМЕЧАНИЕ Сцену, использующую настройки свитка Depth of Field Parameters (Параметры глубины резкости) направленной камеры, можно загрузить из файла focus_v4.max, расположенного в папке CH08\Max\Focus прилагаемого к книге компакт-диска.
Таким образом, улучшить визуализированное изображение сцены можно разными способами, но не забывайте про глубину резкости, особенно если вы моделируете большие пространства или нужно сконцентрировать внимание зрителя на одном предмете в сцене.
i
Часть 3
Усложненное моделирование Глава 9. Моделирование автомобиля Глава 10. Текстурирование автомобиля Глава 1 1 . Моделирование головы
Для выполнения заданий, содержащихся в данной части книги, вам необходимо обладать запасом знаний начального уровня, которые вы приобрели, изучая разделы предыдущих частей. Задания глав третьей части книги сложны для изучения, но вместе с тем наиболее интересны, например, по моделированию и конечному результату. В главах этой части рассмотрены разработка и текстурирование модели автомобиля, а также два способа моделирования головы со средним уровнем детализации. Для выполнения описанных действий кроме знания инструментов и методов моделирования вам необходимо обладать некоторой долей фантазии, а также развитым пространственным мышлением, чтобы не запутаться в большом количестве вершин, ребер и полигонов строящейся модели. Кроме того, при моделировании головы пригодится умение рисовать и образно мыслить.
•
Глава 9
Моделирование автомобиля • Виртуальная студия — начало всех начал • Создание автомобильного диска при помощи NURBS-моделирования • Моделирование колеса автомобиля при помощи полигонов • Моделируем BMW
-
448
Глава 9. Моделирование автомобиля
Моделирование автомобиля является одной из самых интересных задач, которые могут стоять перед пользователем программы 3ds Max. В то же время эта задача достаточно сложна для неискушенных в моделировании читателей, поэтому к изучению упражнений этой главы рекомендуется приступать, предварительно ознакомившись с главой, посвященной моделированию более простых объектов. Моделирование автомобиля описано максимально подробно и сведено к выполнению простых операций, однако конечный результат зависит от того, насколько развито у пользователя чувство объема и пространства. Развить его можно, лишь выполняя реальные работы. Упражнения этой главы построены так, что в результате их последовательного выполнения вы смоделируете автомобиль BMW пятой серии.
Виртуальная студия — начало всех начал Без преувеличения можно сказать, что с виртуальной студии начинаются многие глобальные проекты, а уж о моделировании техники и персонажей говорить не приходится. Мне известно как минимум три способа создания виртуальной студии для последующего моделирования объектов сложной геометрической формы. Попробуем разобраться в достоинствах и недостатках каждого из этих способов. Все начинается с подготовки изображений для виртуальной студии. Их можно найти как в Интернете, так и в печатных изданиях. Я использовал каталог баварской фирмы BMW. Такой способ имеет преимущество перед поиском изображения в Интернете: можно отсканировать рисунок с достаточно высоким разрешением. Перед использованием в редакторе трехмерной графики изображение необходимо отредактировать. Этот процесс одинаков для всех изображений независимо от того, каким образом в дальнейшем они будут использоваться. Для моделирования автомобиля нам понадобится как минимум три вида: сбоку, спереди и сзади. Конечно, желательно также иметь и вид сверху, но, в крайнем случае, можно обойтись без него. В рассмотренном далее примере использованы материалы, которые я собрал для моделирования автомобиля марки BMW, вы можете работать с любым другим изображением — главное принцип их подготовки.
ПРИМЕЧАНИЕ При желании вы можете воспользоваться материалами, находящимися на прилагаемом к книге компакт-диске в папке CH09\MAX\Car blueprint. Для редактирования сканированных изображений понадобится любая программа для работы с растровыми изображениями, например Adobe Photoshop. На рис. 9.1 представлено изображение автомобиля марки BMW пятой серии, с которым я буду работать.
Виртуальная студия — начало всех начал
449
Рис. 9 . 1 . Исходное изображение автомобиля BMW в нескольких видах
Первое, что нужно сделать, — выровнять изображения (обычно в одном файле представлены несколько видов машины) по горизонтали и вертикали. Затем следует сделать фон изображения светло-серым. Это нужно для того, чтобы при последующей работе в 3ds Max с подобъектами белого цвета, они не сливались с фоном изображения. После этого следует расставить направляющие так, чтобы они прошли по габаритам автомобиля, — это в дальнейшем поможет разрезать изображение на нужные части. Чтобы затемнить фон изображения и расставить направляющие, сделайте следующее. 1. Выполните команду Image • Adjustments • Brightness/Contrast (Изображение • Корректировка • Яркость/контрастность), в результате чего откроется окно Bri g htness/Co ntrast (Яркость/контрастность). 2. Параметру Brightness (Яркость) задайте значение, равное -40 (рис. 9.2). Brightness/Contrast Brightness
Рис. 9.2. Окно Brightness/Contrast (Яркость/контрастность) программы Adobe Photoshop
3. Если в окне программы Adobe Photoshop отсутствуют линейки в верхней и левой частях окна, то откройте их — удерживая клавишу Ctrl, нажмите клавишу R. 4. Для создания горизонтальной направляющей щелкните кнопкой мыши на верхней линейке и, удерживая кнопку нажатой, перетащите направляющую на место изображения, обозначающее габариты автомобиля.
450
Глава 9. Моделирование автомобиля
5. Для создания вертикальной направляющей нужно щелкнуть на линейке в левой части окна и перетащить указатель на изображение. Положение направляющих показано на рис. 9.3.
Рис. 9.3. Положение направляющих на изображении
Теперь нужно проверить размеры видов спереди и сзади (они должны быть равны по ширине и высоте). Сделать это довольно просто — достаточно с помощью инструмента выделения [~] , расположенного на панели инструментов, обвести прямоугольник, образованный направляющими, ограничивающими вид автомобиля спереди, и посмотреть размеры в окне Info (Информация) (рис. 9.4), затем то же сделать с видом машины сзади.
ря fuh л • +.
ш
К 1
X i Y t
cj"
л
м,
Р
W ! Н 1
* 1
К ! 305 138
Рис. 9.4. Окно Info (Информация) с размерами выделенного фрагмента
Если размеры различаются, то нужно их подкорректировать. То же самое делается по отношению к видам сбоку и сверху (такого рода сравнение и корректировку можно сделать, используя прозрачные слои). Далее все очень просто — изображение необходимо разрезать на части и сохранить на диске. Для этой цели вы можете воспользоваться любым доступным вам способом, можно, например, использовать интегрированное в Adobe Photoshop приложение ImageReady. При помощи команды Create Slices From Guides (Разрезать, используя направляющие) данной программы можно разрезать картинку по направляющим, после чего остается только сохранить нужные изображения.
Виртуальная студия — начало всех начал
451
На рис. 9.5 показан результат выполнения описанных выше операций.
Рис. 9.5. Проекции автомобиля, отредактированные в программе Adobe Photoshop
Конечно, эту работу можно проделать в других программах и не так, как описано, главное, чтобы в итоге вы получили отдельные изображения проекций автомобиля, сопоставимые по размерам. ПРИМЕЧАНИЕ Почти все, изложенное выше, можно проделать и в окне Material Editor (Редактор материалов) программы 3ds Max: загрузить изображение в качестве материала Diffuse Color (Цвет рассеивания), затем, используя инструмент Cropping/Placement (Обрезка/размещение), вырезать только ту часть изображения, которая нужна для наложения на плоскость в качестве текстуры.
Не забывайте о том, что при сохранении изображений предпочтительно давать им значимые имена, чтобы потом не путаться. Изображения такого рода я сохраняю в формате PNG, так как он обеспечивает максимальное качество при минимальном размере. На этом работу с программой редактирования растровой графики можно считать законченной. Переходим к 3ds Max.
Первый способ построения студии Первая и самая простая виртуальная студия — это когда в качестве фонового изображения в окнах проекций используются соответствующие проекции автомобиля следующим образом.
452
Глава 9. Моделирование автомобиля
1. Выполните команду Views • Viewport Background (Вид • Фон окна проекции), в результате чего откроется окно Viewport Background (Фон окна проекции). 2. В области Background Source (Источник фона) щелкните на кнопке Files (Файлы), появится окно Select Background Image (Выбор изображения фона). 3. Укажите путь к файлу, который будет служить изображением фона (например, вид автомобиля сверху). 4. Установите переключатель Aspect Ratio (Пропорции) в положение Mach Bitmap (По изображению). 5. Установите флажки Display Background (Показать фон) и Lock Zoom/Pan (Согласовать масштаб/прокрутку). 6. В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) значение Тор (Сверху), тоесть окно вида сверху. 7. Закончив настройку, щелкните на кнопке ОК. 8. Повторите вышеописанные действия для окна проекции фронтального и бокового видов (рис. 9.6).
Рис. 9.6. Виртуальная студия, размещенная в окнах проекций
Чтобы выровнять изображения в окнах проекций относительно друг друга, необходимо снять флажок Lock Zoom/Pan (Согласовать масштаб/прокрутку) в окне Viewport Background (Фон окна проекции) для окна проекции Front (Спереди) (в нашем случае там оно больше, чем нужно) и изменить масштаб изображения.
Виртуальная студия — начало всех начал
453
СОВЕТ Управлять привязкой объекта к фоновому изображению проще всего, используя сочетание клавиш Ctrl+Alt+B.
Достоинством этого способа является то, что в сцене нет дополнительной геометрии, а также то, что такую студию относительно легко создать. Пожалуй, на этом все достоинства заканчиваются. Недостатков больше. Кроме того, что изображения после их загрузки необходимо приводить к общим размерам, в процессе работы они деформируются или смещаются. Кроме того, в окна можно загрузить только три изображения (окно перспективы не считается — оно необходимо для работы с геометрией и общего контроля), а изображений, которые могут быть использованы, — шесть. Таким образом, это не самый лучший метод, поэтому я не рекомендую его для серьезной работы.
Второй способ построения студии Второй способ создания виртуальной студии — это построение пересекающихся (крестообразный способ) (рис. 9.7, сверху) или примыкающих друг к другу (Г-образный способ) (рис. 9.7, снизу) объектов Plane (Плоскость). Эти два способа очень похожи, поэтому я выделил их в одну категорию.
Рис. 9.7. Два варианта виртуальной студии с использованием плоскостей: крестообразный (сверху) и Г-образный (снизу)
Как видите, здесь присутствуют примитивы Plane (Плоскость), размеры которых соответствуют изображениям (или реальным размерам объекта). Создадим реальную студию на основе подготовленных изображений для нашего автомобиля.
Глава 9. Моделирование автомобиля
454
Сначала обратимся к размерам автомобиля, благо они присутствуют на чертеже. Это поможет нам при моделировании (всегда проще оперировать реальными размерами). Итак, высота машины — 1435 мм, ширина — 1981 мм, а длина — 4775 мм. Исходя из этих размеров, построим три примитива Plane (Плоскость) следующим образом. 1. Щелкните в окне проекции Front (Спереди) для активизации окна. 2. Выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость), в результате чего в правой части окна программы откроется вкладка Create (Создание) с активной панелью создания плоскости. 3. В свитке KeyboardEntry (Ввод с клавиатуры) задайте параметру Length (Длина) значение равное 1435, a Width (Ширина) — 1981 (рис. 9.8). Keyboards пйу
':
Create
Рис. 9.8. Свиток KeyboardEntry (Ввод с клавиатуры) с размерами плоскости для фронтального вида
4. Щелкните на кнопке Create (Создать) для завершения построения плоскости. 5. Чтобы построить вторую плоскость, щелкните в окне проекции Тор (Сверху) для его активизации. 6. В свитке KeyboardEntry (Ввод с клавиатуры) задайте параметру Length (Длина) значение 4775, a Width (Ширина) - 1981. 7. Щелкните на кнопке Create (Создать) для завершения построения второй плоскости. 8. Выделив окно проекции Left (Слева), в свитке KeyboardEntry (Ввод с клавиатуры) задайте параметру Length (Длина) значение 1435, a Width (Ширина) — 4775. 9. Щелкните на кнопке Create (Создать) для завершения построения третьей плоскости. В результате выполнения описанных выше действий вы получите пересекающиеся в начале координат плоскости, составляющие геометрию виртуальной студии (см. рис. 9.7, сверху).
СОВЕТ Построение плоскостей в начале координат в дальнейшем облегчит вам создание зеркального отображения деталей автомобиля.
Виртуальная студия — начало всех начал
455
После построения геометрии можно приступить к присвоению плоскостям текстур. 1. Откройте окно Material Editor (Редактор материалов), выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов) или нажав клавишу М. 2. Выберите любую свободную ячейку образца. 3. Щелкните на кнопке None (Отсутствует) рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Bitmap (Растровое изображение). 5. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу изображения автомобиля сверху и щелкните на кнопке Открыть для завершения выбора файла. 6. В поле области Self-Illumination (Собственное свечение) свитка материала Blinn Basic Parameters (Базовые параметры раскраски по Блинну) укажите значение 100, что позволит более четко отобразить текстуру на плоскости (рис. 9.9). : •
г
'
8inn Basic Parameters ""srSetf-llluminaton
* *
• •
! rcd«fioo~:
Difluse Г ' ' Я | ;j
- Speeufa. j
U\"
й'"' ' |
Speoiat Highlights jj
;SpecularUvefc JO
;
j;
:
;
Glo«siness; fo
Soften: } o T " Jj
if
^
. • \
\
Ш
Рис. 9.9. Свиток материала Blinn Basic Parameters (Базовые параметры раскраски по Блинну) с настройками для материала виртуальной студии
7. Щелкните на материале кнопкой мыши и, удерживая ее нажатой, перетащите на плоскость в окне проекции, предназначенную для текстуры вида автомобиля сверху. После того как вы отпустите кнопку мыши, плоскости будет присвоен созданный ранее материал. 8. На панели инструментов окна Material Editor (Редактор материалов) щелкните на кнопке Show Map in Viewport (Показать карту текстуры в окне проекции) ijjljjjjf, чтобы увидеть текстуру, присвоенную плоскости. Вполне возможно, что после присвоения плоскости созданного материала текстура окажется повернутой относительно оси плоскости (рис. 9.10). Чтобы исправить положение текстуры на плоскости, в свитке Maps (Карты текстур) окна Material Editor (Редактор материалов) щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания), появятся настройки карты цвета рассеивания. В свитке Coordinates (Координаты) введите значение Angle (Угол) по оси W, равное 90 (у вас это может быть ось V или U) (рис. 9.11).
456
Глава 9. Моделирование автомобиля
Рис. 9.10. Плоскость с перевернутым изображением автомобиля на виде сверху
Testise С Environ Mapping (Explicit Map Channel P? Show M*tp c« E зек Г UseReal-WortdSeafe Offset Tiling
;
# UV *~ W
ffiiuK |T0
M«c» Tile
Г WU
* j Blur offset: Щ
jjj
Map Channel: f T
W:f§O0 ;j
Rotate
Рис. 9 . 1 1 . Свиток Coordinates (Координаты) со значением угла поворота по оси W равным 90
Для присвоения материала двум другим плоскостям выполните аналогичные действия с той разницей, что для каждой плоскости должна выбираться своя растровая текстура, а ее размещение контролироваться сообразно положению остальных. На видах сбоку и сверху передняя часть автомобиля должна быть направлена в одну сторону. Для построения плоскости вида автомобиля сзади выполните следующие действия. 1. Удерживая нажатой клавишу Shift, щелкните на плоскости с текстурной картой автомобиля вида спереди и сдвиньте ее на небольшое расстояние по оси X. В результате откроется окно Clone Options (Параметры клонирования). 2. Выберите в качестве способа копирования Сору (Независимая копия объекта) и щелкните на кнопке ОК. 3. Создайте новый материал с текстурной картой вида автомобиля сзади и присвойте его вновь созданной плоскости (рис. 9.12).
Виртуальная студия — начало всех начал
457
Рис. 9.12. Виртуальная студия, построенная из пересекающихся плоскостей
Для окончания работы с виртуальной студией выполните следующие действия. 1. Щелкните правой кнопкой мыши на названии окна проекции Perspective (Перспектива). Появится контекстное меню окна проекции. Выберите в нем пункт Configure (Конфигурировать). Появится окно Viewport Configuration (Конфигурирование окна проекции). 2. В области Rendering Options (Параметры визуализации) установите флажок Force 2-Sided (Изображать обе стороны) и нажмите кнопку ОК. 3. Выделите все три плоскости. В окне проекции щелкните вне объектов сцены и, удерживая нажатой кнопку мыши, перетащите указатель по диагонали через объекты, создавая таким образом область выделения. 4. Щелкните на выделении правой кнопкой мыши. Появится контекстное меню, в котором выберите пункт Properties (Свойства). 5. В области Interactivity (Интерактивность) открывшегося окна Object Properties (Свойства объекта) установите флажок Freeze (Фиксировать), а в области Display Properties (Свойства отображения) снимите флажок Show Frozen in Gray (Показывать зафиксированное серым). 6. Щелкните на кнопке ОК для подтверждения сделанных изменений. Что дают эти действия? Во-первых, вы установили возможность отображения двух сторон для плоскости. В противном случае при повороте плоскости в окне проекции вы не увидите обратной стороны, которая по умолчанию не отображается. Во-вторых, вы заблокировали виртуальную студию от случайного смещения во время работы.
458 ПРИМЕЧАНИЕ В 0 П Р 0 С Ы П
ZHTKT
Л
диска
°
°
с о з д а н и ю ст
Ж е Н Н 0 М У В П Э П К е CH09
У Д " и , обратитесь к файлу упражнеMA \ > < \ S t u d i o прилагаемого к книге
ss
SS' ^S5SSSiS 5S£ Такая виртуальная студия, несомненно, лучше предыдущей С ней проще пабо
В этом случае и приходит на помощь третий способ построения студии Сначала данный способ появился у меня как модификация второго способа" но потом в процессе работы, он сформировался в самостоятельный и, на мой взгляд опти' мальныи для такого рода моделирования. Рассмотрим его подробнее Для разработки студии создайте примитив Box (Параллелепипед), длина ширина и высота которого будут соответствовать размерам вашего объекта 1. Выполните команду Create • Standard Primitives • Box (Создание • Простые
ВРеЗУЛЬТЗТеЧеГ НЭ К Й c "" ™™^ ^ ° ™ ™™ ™ панели S TT(Создание) ° 'Т с настройками создания параллелепипеда
Т
В Р е З У Л Ь Т З Т е ЧеГ НЭК
Й
2. В свитке Keyboard Entry (Ввод с клавиатуры) задайте параметрам следующие значения: Length (Длина) - 4775, Width (Ширина) - 1981 Height (Высота^ 1435 3
'
ran"
Н а КН
°ПКе
СГеа
'е
( С 0 3 Д а Н И е
> Д Л Я завершения построения параллеле-
4. Примените к объекту модификатор Normal (Нормаль), для чего выполните ко
Г Г
Ген0 Editin? ;NormalMod1fer < ^ ^ ™ p H , рГкГров: Нормаль). В настройках модификатора установите Флажок
™
)
:
Рис. 9.13. Параллелепипеде перевернутыми нормалями
Р У И
1
Ф Л а К
Виртуальная студия — начало всех начал
459
Не лишним будет после построения параллелепипеда заблокировать его от случайного смещения (как это делается, рассмотрено выше на примере второго варианта студии). Теперь можно переходить к наложению текстур на плоскости параллелепипеда. Для этого сделайте следующее. 1. Откройте окно Material Editor (Редактор материалов), выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов) или нажав клавишу М. 2. В окне Material Editor (Редактор материалов) выберите любую свободную ячейку образца. 3. Щелкните на кнопке Standard (Стандартный). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Multi/Sub-Object (Многокомпонентный). Щелкните на кнопке О К для подтверждения выбора. 5. В свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала) нажмите кнопку Set Number (Установить количество) и задайте количество материалов равным количеству плоскостей параллелепипеда, то есть 6. 6. Назначьте материалам различные цвета, чтобы увидеть, какой плоскости будет соответствовать тот или иной материал (рис. 9.14). Mutti/Sub 6
5 el Number
ID
Name j
Д|[Г [bottom Щ Г2~~ jTop pi (Right
аг аи?Рис.
Add
Stdi-Maten^
D. t e t t
ПгиШ
Ma'etal 825 (Siandaid! Q P
i
MaterialШ (Standard) H P ; • M«t«tal»27 t Standard)г В Р Maletial828 [Standard|Qp
:
| Front
Ма»и18И (Standard) [ | p j ||
flack
Material 830 (5tand»d) Ц P '
9 . 1 4 . Свиток Multi/Sub-Object Basic Parameters (Основные параметры
многокомпонентного материала)
7. Для присвоения материала параллелепипеду перетащите образец материала из ячейки на объект в окне проекции. В окне проекции стороны параллелепипеда окрасятся в цвета, соответствующие ранее созданному материалу. Все это делалось только с одной целью — идентифицировать стороны параллелепипеда, чтобы знать, какой стороне какой материал соответствует. Далее мы будем работать с окном Asset Browser (Окно просмотра ресурсов), для вызова которого перейдите на вкладку Utilities (Утилиты) командной панели
460
Глава 9. Моделирование автомобиля
(не путайте ее с командой меню UtiLities (Утилиты) из редактора материалов) и щелкните на кнопке Asset Browser (Окно просмотра ресурсов).
ВНИМАНИЕ Если вы не видите в свитке Utilities (Утилиты) кнопки Asset Browser (Окно просмотра ресурсов), то щелкните на кнопке More (Дополнительно) для открытия окна с полным списком утилит, где выберите необходимую. В левой части окна Asset Browser (Окно просмотра ресурсов) укажите путь к файлам видов автомобиля. В правой части появятся значки с изображением этих видов (рис. 9.15). t Asset Browser Не F t e thumbnails Display Favorites Browse Щ
f 3 QD
П Address: F:\CH09\MAX\Car blueprint
IS И CHOI 3-1 СЭ СН02 ф £э сноз m i p СНОБ ffi j£} CH06 BacKpg
Fiont.jpg
lopjpg
Рис. 9.15. Окно Asset Browser (Окно просмотра ресурсов)
Сейчас вам пригодятся разноцветные материалы, которые создавались ранее, чтобы знать, какую текстуру на какую сторону куба накладывать. Делается это просто: нужно мышью перетащить текстуру из окна Asset Browser (Окно просмотра ресурсов) на соответствующую кнопку материала Multi/Sub-Object (Многокомпонентный) в свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала) окна Material Editor (Редактор материалов). Например, если у вас нижняя часть параллелепипеда зеленого цвета, то и текстура вида сверху предназначается для материала с зеленым цветом. Конечно, можно накладывать текстуры и традиционным способом — непосредственно из окна Material Editor (Редактор материалов), но, мне кажется, так проще. Если после присвоения материалу текстур вы не видите их на параллелепипеде в окнах проекций, то щелкните на кнопке Show Map in Viewport (Отобразить карту
Виртуальная студия — начало всех начал
461
в окне проекций) ijgj. После этого внимательно посмотрите положение текстур на параллелепипеде — скорее всего не все текстурные карты будут располагаться на плоскостях так, как нам необходимо. У меня некорректно отобразился вид сверху и одна сторона (рис. 9.16).
Рис. 9.16. Виртуальная студия с присвоенными текстурными картами по умолчанию
Это легко исправить — достаточно изменить координаты наложения текстуры. Как это сделать, рассматривалось выше на примере второго способа построения студии. Напомню лишь, что это делается в свитке Coordinates (Координаты) с помощью параметра Angle (Угол). Мне для текстуры вида сбоку понадобилось изменить величину угла V на 180°, а для вида сверху — W на 90° (рис. 9.17).
Рис. 9.17. Окончательный вид виртуальной студии
462
Глава 9. Моделирование автомобиля
Этот вариант, на мой взгляд, лучший из тех, которые мы рассмотрели. У него нет явных недостатков, с ним легко работать, и такая студия максимально удобна для моделирования. Наконец, последняя деталь в создании студии, но далеко не последняя по значимости. Чтобы текстурные карты в окнах проекций выглядели с максимальным качеством, нужно изменить настройки отображения в окнах проекций. Для этого сделайте следующее. 1. Выполните команду Customize • Preferences (Настройка • Параметры). 2. В открывшемся окне Preference Settings (Параметры установок) перейдите на вкладку Viewports (Окна проекции), щелкните на кнопке Configure Driver (Настроить драйвер) (в моем случае это OpenGL), после чего появится окно Configure (Конфигурировать). 3. Установите флажки Match Bitmap as Close as Possible (По изображению насколько возможно точно) (рис. 9.18). Appearance Preferences \
Г" EnabteAntialiasedLnetinWirefiaraeViwB Background Textute Size •>•
•••• •• -™. Ы atch В itrnap as P Close as Possible
512
Match Bitmap as I* Close as Possible
МфМар Lookup *
Рис.
Nearest Г
Linear
! «
Nor*
<"* Nearest
f
Linear
9.18. Параметры настройки драйвера отображения
На этом создание виртуальной студии можно считать законченным. ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папках CH09\MAX\Studio находится файл данного упражнения studio_v3.
Создание автомобильного диска при помощи NURBS-моделирования Ни для кого не секрет, что работать в 3ds Max, используя технологию NURBS, не просто. Не потому, что это сложная для освоения часть программы, — просто не без основания считается, что 3ds Max не совсем корректно работает с данной технологией. Должен заметить, что некоторые объекты все же легче и быстрее смоделировать именно так, нежели при помощи сплайнов, сеток или полигонов, причем выглядеть при визуализации они будут ничуть не хуже, а порой даже лучше.
Создание автомобильного диска при помощи NURBS-моделирования
463
Как обычно, для работы вам понадобится фотография, карандашный набросок или воображаемая модель объекта, который предстоит моделировать. Прежде чем начинать моделирование, вы должны представлять себе то, что должно получиться в конце работы. В данном разделе мы будем моделировать диск автомобиля Koenigsegg CC (рис. 9.19).
Рис. 9.19. Фотография автомобильного диска, предназначенного для моделирования
Моделировать данный диск при помощи сплайнов или полигонов достаточно затруднительно, а используя NURBS, можно построить его без особого труда. Форма диска сама подсказывает путь, по которому лучше идти. Можно положить в основу объект, сделанный при помощи модификатора вращения, а затем прорезать в нем отверстия. Пользователям, знакомым с основами моделирования, покажется логичным построить кривую формы вращения традиционным способом при помощи сплайна, а затем преобразовать его в NURBS-кривую. Не торопитесь так поступать. За этим, казалось бы, правильным решением могут скрываться «подводные камни», которые нужно научиться обходить для успешной работы. На рис. 9.20 представлены три NURBS-кривые, выполненные различными способами и имеющие в основе построения шесть точек с одинаковыми координатами.
Рис. 9.20. Три NURBS-кривые, выполненные различными способами
Первая кривая была создана при помощи стандартного метода построения сплайнов. Чтобы создать такую кривую, выполните команду Create • Shapes • Line (Создание •
464
Глава 9. Моделирование автомобиля
Формы • Линия), а затем преобразуйте ее в NURBS-кривую, щелкнув правой кнопкой мыши на сплайне и выбрав в контекстном меню Convert To • Convert to NURBS (Преобразовать • Преобразовать в NURBS). В результате вы получите NURBS-кривую, имеющую избыточное количество контрольных точек. Кроме того, кривая состоит из отдельных, ограниченных фиолетовыми точками, отрезков. Они образовались в местах расположения угловых вершин (типа Corner (Угол)). Если вы сейчас попробуете применить к этой кривой команду Create Lathe Surface (Создать поверхность вращением) из области Surfaces (Поверхности) «плавающей» панели NURBS, то не сможете этого сделать, так как вращение будет применяться к отдельным отрезкам, а не к кривой в целом. Отсюда вытекает первое правило: если сплайн строится для последующего преобразования в NURBS, он не должен содержать угловых точек. Вторая и третья кривые были созданы при помощи команд Create • NURBS • Point Curve (Создать • NURBS • Точечная кривая) и Create • NURBS • CV Curve (Создать • NURBS • CV-кривая) соответственно. В этом случае получаются две кривые, в основу которых положены разные способы интерполяции. Предпочтительнее строить CV Curve (CV-кривая), так как она получается более сглаженной. Можно использовать любой способ, только не забывайте, что не стоит применять угловые точки. Кроме использования NURBS-кривых для создания объекта методом вращения можно строить его обычным способом, применяя модификатор Lathe (Вращение вокруг оси) с последующим преобразованием в NURBS. Именно этим способом начните строить диск. Для этого сделайте следующее. 1. Выполните команду Create • Shapes • Line (Создание • Формы • Линия). 2. В окне проекции Тор (Сверху) постройте кривую, которая будет являться формой вращения (рис. 9.21).
Рис. 9 . 2 1 . Кривая формы вращения для построения автомобильного диска
3. Примените к построенному сплайну модификатор создания формы вращением: в любом окне проекции выделите кривую и выполните команду Modifiers • Patch/ Spline Editing • Lathe (Модификаторы • Редактирование патчей/сплайнов • Вращение). 4. В области Align (Выравнивание) свитка Parameters (Параметры) настроек модификатора щелкните на кнопке Min (Минимум).
Создание автомобильного диска при помощи NURBS-моделирования
465
5. В области Output (Результат) установите переключатель в положение NURBS. 6. При необходимости установите флажок Flip Normals (Обратить нормали). У вас получится общая форма диска (рис. 9.22).
Рис. 9.22. Заготовка для автомобильного диска, полученная вращением сплайна формы
При необходимости подкорректируйте геометрию. Выберите в стеке модификаторов строку Line (Линия) и уточните положение точек или сегментов кривой в пространстве. После того как основная геометрия выверена, можно приступать к построению окружности, которая в дальнейшем послужит формой для вырезания отверстий в диске. Для этого сделайте следующее. 1. Выполните команду Create • Shapes • Circle (Создание • Формы • Окружность) и постройте окружность в окне проекции Front (Спереди) перед диском (проконтролируйте результат в окне проекции Тор (Сверху)). 2. Преобразуйте окружность в Editable Spline (Редактируемый сплайн), для чего щелкните на ней правой кнопкой мыши и в появившемся контекстном меню выберите Convert To • Convert to Editable Spline (Преобразовать • Преобразовать в редактируемый сплайн). 3. Выделите нижнюю вершину окружности и передвиньте ее немного вниз, как показано на рис. 9.23.
Рис. 9.23. Положение и форма окружности относительно диска
466
Глава 9. Моделирование автомобиля
Дальнейшее построение будет связано с созданием копий окружности. Чтобы сделать копии окружности и расположить их внутри диска по кругу, необходимо переместить в его центр точку вращения сплайна. Сделать это можно, выполнив следующие действия. 1. Выделите окружность и перейдите на вкладку Hierarchy (Иерархия) Jsi^ командной панели. 2. В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате чего появится возможность редактировать положение опорной точки в пространстве. 3. Переместите опорную точку так, чтобы она заняла положение в центре диска (рис. 9.24).
Рис. 9.24. Положение опорной точки окружности в пространстве 4. Еще раз щелкните на кнопке Affect Pivot Only (Только опора) для отмены режима редактирования опорной точки. Теперь все готово для копирования окружностей. Лучше и проще всего воспользоваться для этих целей инструментом Array (Массив). Для этого выполните следующие действия. 1. Выделите окружность в окне проекции Front (Спереди). 2. Выполните команду Tools • Array (Инструменты • Массив) или щелкните на кнопке Array (Массив) •*•*• '. 3. В открывшемся окне Array (Массив) задайте угол поворота, количество объектов копирования и способ копирования, как показано на рис. 9.25. 4. Щелкните на кнопке О К для подтверждения выполненных изменений. После этих действий вы получите пять окружностей, расположенных по кругу. Теперь нужно сделать небольшую, но очень важную операцию с группой окружностей. Кнопка Array (Массив) находится на панели Extras (Дополнительно), которую можно вызвать, щелкнув правой кнопкой мыши на главной панели инструментов и выбрав в появившемся списке одноименную команду.
Создание автомобильного диска при помощи NURBS-моделирования
467
Выделите все окружности и поверните их вокруг точки вращения так, чтобы ни одна из окружностей не пересекала сплайн, который является контуром для объекта вращения диска. В вашем случае он расположен горизонтально справа от центра в месте построения формы вращения.
; Alley Tianstamation ScfeenCooKirietestUwPwofPoinlCenietl Incremental
и_ v 2 . (B'6nm";i |6.& • i. | 0 W
Totals
x j ; ГГ Move > Г
у
:
= P
z Jj I
^urtls
|p?
tj f
J : r~i
t j_«j
i« e r p
: [To
;j p6oo~t л,,.»
| |Ж5
jj fTBo5
: jra.o
; fT" seal» ;.>.j I
:. Г"
t ! Г"
fioM
-
f^0"
Incremental Row Off wts X
Y
Z
Reset Ad Paameieis
Рис. 9.25. Окно Array (Массив) с настройками копирования окружности
ПРИМЕЧАНИЕ В этом месте диск имеет шов (фактически его мы невидим). При проецировании сплайнов на поверхность диска шов разделит проекцию попавшей на него окружности на два независимых сплайна. Это в дальнейшем может не только затруднить работу, но и в некоторых случаях сделать ее невозможной.
На рис. 9.26 показано окно проекции Front (Спереди) после поворота сплайнов.
Рис. 9.26. Окончательное положение окружностей относительно диска
ПРИМЕЧАНИЕ Вы можете загрузить из папки CH09\Max\NURBS_disk прилагаемого компакт-диска сцену disk_start.max с построенными окружностями и диском и начать работу с этого места.
468
Глава 9. Моделирование автомобиля
Для дальнейшей работы необходимо преобразовать диск в объект NURBS-noверхность. Щелкните на диске правой кнопкой мыши и в появившемся контекстном меню выберите Convert To • Convert to NURBS (Преобразовать • Преобразовать в NURBS). Далее необходимо сделать то же самое по отношению к пяти окружностям, для чего можно выделить сразу все сплайны и ко всем одновременно применить Convert To • Convert to NURBS (Преобразовать • Преобразовать в NURBS). Следующим шагом будет присоединение сплайнов к NURBS-объекту и проецирование их на поверхность. 1. Выделите диск (если он не выделен). 2. В свитке General (Общие) настроек объекта на командной панели щелкните на кнопке Attach (Присоединить) и в окне проекции Front (Спереди) последовательно выберите все пять окружностей. Теперь окружности принадлежат диску и их можно спроецировать на поверхность. 3. В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) jgj для вызова «плавающей» палитры инструментов NURBS. 4. На «плавающей» палитре NURBS щелкните на кнопке Create Vector Projected Curve (Создать проекцию кривой по вектору) Бр , в результате чего кнопка изменит цвет. 5. В окне проекции Front (Спереди) выберите окружность и щелкните на поверхности диска рядом с ней. На плоскости диска появится кривая, лежащая на поверхности. •
ВНИМАНИЕ Проецировать кривую на поверхность необходимо только в окне проекции Front (Спереди), в противном случае проекции будут иметь искажения. 6. В свитке Vector Projected Curve (Проекция кривой по вектору) вкладки Modify (Изменение) командной панели установите флажок Trim (Обрезать) и при необходимости флажок Flip Trim (Обратить обрезанное). В результате на поверхности диска появится отверстие (рис. 9.27).
Рис. 9.27. Диск с прорезанным отверстием
Создание автомобильного диска при помощи NURBS-моделирования
469
7. Повторите действия по выделению, проецированию и вырезанию отверстия для оставшихся четырех окружностей (рис. 9.28).
Рис. 9.28. Диск со всеми прорезанными отверстиями
В дальнейшем для создания объемности диска вам понадобятся еще пять окружностей. Конечно, можно сделать еще одну поверхность внутри диска, таким образом сформировав внутреннюю сторону, но она там не будет видна и поэтому достаточно придать отверстиям толщину. Для упрощения дальнейшей работы необходимо временно отключить отображение поверхности: в области Display (Отображение) свитка General (Общие) снимите флажок Surfaces (Поверхности). Можно также удалить сплайны окружностей, если вы не собираетесь редактировать форму отверстий. Кроме того, желательно оптимизировать сплайны, формирующие отверстия, так как после построения они имеют избыточное количество вершин. Чтобы оптимизировать сплайны, выполните следующие действия. 1. Перейдите на уровень подобъектов Curve (Кривая), для чего щелкните на плюсике возле NURBS Surface (NURBS-поверхность) в стеке модификаторов и выберите нужную строку (рис. 9.29).
& Г н
Disk Modifier List
В NURBS Surface t— Surface I — Curve CV
'—От» •» i. -
и
Ц
ШШШКШт ' ••• a
E
CwveComraon
j г Selection-
:
I
Рис. 9.29. Переход в режим редактирования подобъектов Curve (Кривая) для объекта Disk
2. Выделите кривую, очерчивающую отверстие.
470
Глава 9. Моделирование автомобиля
3. В свитке CV Curve (CV-кривая) щелкните на кнопке Rebuild (Перестроить). 4. В открывшемся окне Rebuild CV Curve (Перестроить CV-кривую) установите переключатель в положение Tolerance (Отклонение), задайте данному параметру значение 0,1 и щелкните на кнопке ОК (рис. 9.30).
Рис. 9.30. Окно Rebuild CV Curve (Перестроить CV-кривую)
5. Выполните аналогичные действия для оставшихся кривых. Продолжим моделирование и построим новые сплайны окружностей. Все делается аналогично с той разницей, что сейчас они не будут проецироваться на поверхность, а сами будут являться контуром будущей поверхности. Напомню последовательность действий. 1. В окне проекции Front (Спереди) постройте окружность, по положению и размерам равную одному из отверстий. 2. Преобразуйте ее в Editable Spline (Редактируемый сплайн). 3. Отредактируйте положение сплайна и его вершин так, чтобы он находился позади передней поверхности диска, а в окне проекции Тор (Сверху) был изогнут внутрь (рис. 9.31). После построения и редактирования положения внутренней окружности в пространстве, копируйте ее при помощи команды Array (Массив), предварительно выставив ось вращения в середину диска. Как это делается, было рассмотрено выше на примере внешних окружностей. Сейчас вновь созданные окружности необходимо присоединить к диску при помощи команды Attach (Присоединить). Подобная операция уже была описана, поэтому не буду повторяться. После того как вы присоедините окружности к диску, можно придать толщину отверстиям следующим образом. 1. В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) |Щ для вызова «плавающей» палитры NURBS с инструментами создания кривых и поверхностей. 2. На «плавающей» палитре NURBS щелкните на кнопке Create U Loft Surface (Создать поверхность методом U-лофтинга) | jfjj, в результате чего кнопка изменит цвет. 3. В окне проекции Front (Спереди) щелкните на одной из пяти окружностей, описывающей границу отверстия, а затем на сплайне позади этого отверстия. В результате между отверстием и сплайном будет построена новая поверхность. 4. Щелкните правой кнопкой мыши для завершения выбора сплайнов.
Создание автомобильного диска при помощи NURBS-моделирования
471
Рис. 9 . 3 1 . Положение и форма отредактированной окружности для построения глубины отверстий диска
5. В свитке U Loft Surface (Поверхность U-лофтинга) установите флажок Auto Align Curve Starts (Автоматически выравнивать начала кривых) и при необходимости — Flip Normals (Обратить нормали) (рис. 9.32).
.
1
5/ Auto Align Curve Slaits
Г" oosetea
;
1
Рис. 9.32. Свиток с настройками отображения построенной поверхности
6. Повторите вышеописанные действия для оставшихся четырех отверстий.
472
Глава 9. Моделирование автомобиля
На данном этапе еще не поздно подкорректировать кривые окружностей и их положение в пространстве, если в этом есть необходимость. Я отодвинул кривые окружностей немного вглубь диска, чтобы увеличить толщину стенок отверстий (рис. 9.33).
Рис. 9.33. Диск с построенными стенками отверстий Чтобы края отверстий выглядели, как на реальном диске, им нужно придать некоторую округлость. Для этого выполните следующие действия. 1. В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) ijg для вызова «плавающей» палитры NURBS с инструментами создания кривых и поверхностей. 2. Щелкните на кнопке Create Fillet Surface (Создать поверхность-фаску) •**») «плавающей» палитры NURBS, в результате чего кнопка изменит цвет. 3. В окне проекции Front (Спереди) щелкните на поверхности диска, а затем на плоскости толщины отверстия. В результате на границе двух плоскостей будет построена фаска. 4. В свитке Fillet Surface (Поверхность-фаска) задайте значения величины фаски в Start Radius (Начало радиуса) и End Radius (Конец радиуса) (у меня они равны 7). В областях Trim First Surface (Обрезать первую поверхность) и Trim Second Surface (Обрезать вторую поверхность) установите флажки Trim Surface (Обрезать поверхность) (рис. 9.34). 5. Повторите вышеописанные действия для оставшихся четырех отверстий. На рис. 9.35 показано, как выглядит диск после добавления фасок ко всем отверстиям. Осталось добавить диску прокладку, гайку для крепления и на этом работу можно считать завершенной. Гайка — деталь несложная, но все-таки опишу в общих чертах принцип ее моделирования. За основу я взял шестигранник с закругленными краями (Create • Shapes • NGon (Создание • Формы • Многоугольник)), к которому применил модификатор выдавливания (Modifiers • Mesh Editing • Extrude (Модификаторы • Редактирование поверхности • Выдавливание)). Отверстия были оставлены открытыми, а в качестве типа результирующей поверхности выбрана NURBS-поверхность. После этого я создал форму вращения (Create • NURBS • CV Curve
Создание автомобильного диска при помощи NURBS-моделирования
473
Filet Surface Start Radius: JT6 t End Radius: j Radius Interpolation
г ....
& ....
I Surface IX: Surface 1Y: : Surface ZX: (ТТзГ | Surface 2Y;
filST
j-Trim First Surface f? Trim Surface | Г
FlipTfim
г Trim Second Surface J*/ Trim Surface Г* Flip Turn Г" Яр Normals
Рис. 9.34. Свиток Fillet Surface (Поверхность-фаска) с настройками фаски отверстия диска
Рис. 9.35. Вид диска с фасками
(Создание • NURBS • CV-кривая)) и применил к ней команду Create Lathe Surface (Создать поверхность вращением) «плавающей» панели NURBS. В результате получилась поверхность, закрывающая гайку сверху (рис. 9.36).
474
Глава 9. Моделирование автомобиля
Рис. 9.36. Объекты, предназначенные для моделирования гайки
Далее я спроецировал сплайн NGon (Шестиугольник) на поверхность крышки и обрезал лишние части. Затем, применив команду Attach (Присоединить), объединил две поверхности в одну и добавил фаску, щелкнув на кнопке Create Fillet Surface (Создать поверхность-фаску). Прокладка под гайкой — примитив Cylinder (Цилиндр). То, что получилось после финальной визуализации диска, показано на рис. 9.37.
Рис. 9.37. Результат финальной визуализации автомобильного диска, выполненного при помощи NURBS-моделирования
ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию модели автомобильного диска, то обратитесь к файлу упражнения disk_end.max, расположенному в папке CH09\Max\NURBS_disk прилагаемого к книге компакт-диска.
Моделирование колеса автомобиля при помощи полигонов
475
Моделирование колеса автомобиля при помощи полигонов В этом разделе описано моделирование при помощи полигонов автомобильного колеса с диском более сложной формы, а также шины с геометрическим протектором. Прежде чем приступить к моделированию, нужно иметь представление о том, что вы должны получить в итоге. Форму будущей модели диска и протектора я увидел в рекламном проспекте (рис. 9.38).
Рис. 9.38. Фотография автомобильного диска, взятого в качестве образца для моделирования
Начните моделирование с построения в окне проекции Front (Спереди) примитива Tube (Труба). Для этого сделайте следующее. 1. Выполните команду Create • Standard Primitives • Tube (Создание • Простые примитивы • Труба). В результате откроется доступ к настройкам примитива на вкладке Create (Создание) командной панели. 2. В свитке Keyboard Entry (Ввод с клавиатуры) введите значения: Inner Radius (Внутренний радиус) — 196, Outer Radius (Внешний радиус) —220, Height (Высота) — 140. 3. Щелкните на кнопке Create (Создание) для построения объекта в окнах проекций. 4. В свитке Parameters (Параметры) настроек объекта на командной панели задайте параметру Height Segments (Сегменты по высоте) значение 5, a Sides (Количество сторон) — 20 (по 4 на группу спиц). Построенная геометрия находится в начале координат, что имеет важное значение для последующего моделирования. Теперь нужно заблокировать ее от случайного смещения или поворота. Для этого выполните следующие действия. 1. Перейдите на вкладку Hierarchy (Иерархия)
Глава 9. Моделирование автомобиля
476
2. Щелкните на кнопке Link Info (Данные о связях). 3. В свитке Locks (Блокировки) установите флажки в областях Move (Перемещение) и Rotate (Вращение). Продолжим моделирование. Преобразуйте параметрический объект Tube (Труба) в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши, в результате чего появится контекстное меню, в котором выполните команду Convert To • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). Дальнейшие преобразования будут проходить на уровне подобъектов. Начните с уточнения положения внутренних рядов вершин. 1. Перейдите на уровень редактирования вершин, для чего при выделенном объекте щелкните на кнопке Vertex (Вершина) и / свитка Selection (Выделение) или нажмите 1 на клавиатуре. 2. В окне проекции Left (Слева) выделите четыре внутренних ряда вершин и примените к ним команду Select and Uniform Scale (Выделить и равномерно масштабировать), для чего щелкните на одноименной кнопке [ gj^ на панели инструментов. 3. Масштабируйте вершины по оси X так, как показано на рис. 9.39.
t i t if
S2S
' 1 *ft
. "•
-ii'4'
Рис. 9.39. Положение вершин в пространстве окна проекции Left (Слева)
Выдавите полигоны внутри диска, чтобы получить дополнительную геометрию. Для этого выполните следующее. 1. Перейдите на уровень редактирования ^юлигонов, щелкнув при выделенном объекте на кнопке Polygon (Полигон) j Щ в свитке Selection (Выделение) или нажав на клавиатуре 4. 2. Щелкните на кнопке типа выделения на панели инструментов и активизируйте Circular Selection Region (Круглая область выделения) О . В окне проекции Front (Спереди) выделите внутренние полигоны, начиная с середины объекта. 3. Активизируйте прямоугольное выделение, щелкнув на кнопке Rectangular Selection Region (Прямоугольная область выделения) |". : . В окне проекции Left (Слева), удерживая нажатой кнопку Alt, снимите выделение с крайних рядов (рис. 9.40).
Моделирование колеса автомобиля при помощи полигонов
477
Рис. 9.40. Объект с выделенными полигонами внутренней области
4. В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). 5. В открывшемся окне Edit Polygons (Редактирование полигонов) задайте значение величины выдавливания 20, а тип выдавливания — Local Normal (Локальные нормали). 6. Щелкните на кнопке О К для завершения выдавливания. Сделайте углубление по внешнему периметру диска (операция скорее номинальная: после того как на диск «наденется» шина, его не будет видно). Для этого выделите полигоны внешнего радиуса, находящиеся в середине, и масштабируйте их внутрь объекта (рис. 9.41).
Рис. 9 . 4 1 . Сформированное посадочное место под шину
Следующим шагом будет построение фаски на гранях диска: двух с большей величиной и одной с меньшей, чтобы получить закругление на краю диска. Для этого выполните следующие действия. 1. Щелкните на кнопке Edge (Ребро) | в свитке Selection (Выделение) или нажмите на клавиатуре 2. 2. Выделите по одному ребру во втором и третьем от края внутреннем ряду, затем щелкните на кнопке Loop (Петля) для выделения всех ребер по окружности (рис. 9.42).
478
Глава 9. Моделирование автомобиля
Рис. 9.42. Ребра, подготовленные для создания фаски
3. Щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска). 4. В открывшемся окне Chamfer Edges (Фаска ребер) выставьте значение величины фаски 2. 5. Щелкните на кнопке О К для завершения создания фаски. 6. Способом, описанным выше, выделите внешний ряд ребер и примените к нему инструмент создания фаски с величиной 4 (рис. 9.43).
Рис. 9.43. Фаски, примененные к внутренним ребрам для закругления геометрии диска
На этом все операции, связанные с геометрией, можно считать законченными. Исходя из того, что диск симметричен, оставьте для моделирования только одну половину. В окне проекции Front (Спереди) выделите полигоны правой стороны диска и удалите их, а чтобы видеть, как проходит моделирование в целом, сделайте зеркальную копию оставшейся половины. Для этого выполните команду Tools • Mirror (Инструменты • Зеркальное отображение), в результате чего откроется окно Mirror (Зеркальное отображение). В нем выставьте в качестве оси зеркального отображения X, а в качестве метода копирования выберите Instance (Привязка). Сейчас все действия в левой части диска будут отображаться в образце справа. Приступим к моделированию спиц. Если присмотреться к форме диска на фотографии, то можно заметить, что в ней много симметричных деталей, поэтому моделировать нужно только одну часть, а затем копировать ее. Начните строить только
479
Моделирование колеса автомобиля при помощи полигонов
одну спицу. Для начала формирования спицы в верхней части диска разрежьте три полигона, расположенных рядом (рис. 9.44).
•
Рис. 9.44. Полигоны, разрезанные для начала формирования спицы
Чтобы сделать разрезы, щелкните на кнопке Cut (Вычитание) в свитке Edit Geometry (Редактирование геометрии), а затем в окне проекции Front (Спереди) или Perspective (Перспектива) выполните разрезание. Выделите два созданных полигона (расположенный на боковой поверхности и на фаске) и сделайте выдавливание с уменьшением, для чего щелкните на кнопке Settings (Установки) рядом с кнопкой Bevel (Выдавливание со скосом). В результате откроется окно Bevel Polygons (Выдавливание со скосом полигонов). В нем выставьте значение для высоты 4, а для величины смещения — 1,5 и щелкните на кнопке О К для создания скоса. Результат данных действий показан на рис. 9.45.
Рис. 9.45. Полигоны, сформированные при помощи команды Bevel (Выдавливание со скосом)
Выделите два нижних полигона для формирования спицы по направлению к центру диска. Выделенные полигоны необходимо выдавить. Для этого щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). В результате откроется окно Edit Polygons (Редактирование полигонов). В нем выставьте значение высоты выдавливания 40, а тип выдавливания — Local Normal (Локальные нормали) и щелкните
480
Глава 9. Моделирование автомобиля
на кнопке Apply (Применить) три раза для создания трех групп выдавливания. После создания новых полигонов перейдите на уровень редактирования вершин (нажмите на клавиатуре 1) и уточните их положение в пространстве согласно фотографии (см. рис. 9.38). Геометрия созданной спицы должна быть такой, как показано на рис. 9.46.
Рис. 9.46. Средняя часть спицы, сформированная выдавливанием
Выполните еще одно выдавливание на высоту 30. После этого сформируйте закругление в месте соединения двух соседних спиц. Для этого выделите три полигона, расположенных у основания спицы с внутренней стороны (рис. 9.47), и выдавите их на высоту 15.
Рис. 9.47. Полигоны, выделенные у основания спицы для последующего выдавливания
Не снимая выделение с полигонов, нажмите клавишу Delete для их удаления. Это необходимо сделать, чтобы иметь возможность впоследствии соединить две соседних спицы в один объект и объединить вершины. Перейдите на уровень редактирования вершин и, выделив конечные вершины, уточните их положение в пространстве. Они должны быть расположены так, чтобы сформировалось закругление между соседними спицами с понижением плоскости, а конечные вершины находились на границе объекта, то есть значение координаты по оси X должно быть равно 0 (рис. 9.48).
Моделирование колеса автомобиля при помощи полигонов
481
II Рис. 9.48. Полигоны, формирующие закругление между двумя спицами
На этапе моделирования спицы осталось сделать фаску на краях ребер с внешней стороны, чтобы после применения сглаживания сохранить форму изгиба поверхности. Для этого выполните следующие действия. 1. Перейдите на уровень подобъектов Edge (Ребро), щелкнув на значке ; <;/ свитка Selection (Выделение) настроек объекта на командной панели или нажав на клавиатуре 2. 2. Выделите все внешние ребра и щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска). 3. В открывшемся окне Chamfer Edges (Фаска Ребер) параметру величины фаски задайте значение 0,5. 4. Щелкните на кнопке 0К для завершения операции создания фаски. Присоедините вторую половину диска к первой, чтобы продолжить моделирование двух спиц как одного объекта. Для этого щелкните на кнопке Make unique (Сделать уникальным) V на вкладке Modify (Изменение) командной панели, а затем на кнопке Attach (Присоединить) и в любом окне проекции на правой половине диска. Сейчас две половины диска принадлежат одному объекту, но все еще являются двумя отдельными элементами. Чтобы соединить их полностью, нужно объединить вершины в месте стыка этих элементов. Для этого перейдите в режим редактирования Vertex (Вершина) и выделите все вершины, находящиеся в месте соединения двух половин диска, после чего щелкните на кнопке Weld (Объединить). После соединения двух половинок можно визуализировать объект, но прежде нужно выполнить сглаживание. Для этого в свитке Subdivision Surface (Поверхность с разбиением) установите флажок Use NURMS Subdivision (Использовать NURMS разбиения), а в области Display (Отображение) задайте параметру Iteration (Количество итераций) значение 2. Затем можно визуализировать изображение в окне проекции Front (Спереди) (рис. 9.49). Смоделируем отверстия под крепеж. Для этого активизируйте инструмент Cut (Вычитание) в свитке Edit Geometry (Редактирование геометрии) и разрежьте полигон, находящийся между спицами (рис. 9.50).
482
Глава 9. Моделирование автомобиля
Рис. 9.49. Визуализированный фрагмент диска со сглаживанием
Рис. 9.50. Разрезы, определяющие форму отверстия
Чтобы завершить формирование отверстия, выделите его внутренние полигоны и примените операцию Extrude (Выдавливание) с высотой выдавливания 15. Для получения сглаженных краев примените к ребрам на границе окружности Chamfer Edges (Фаска ребер). После этих операций должен получиться один элемент диска. Всего их пять, следовательно, нужно снова делать копии. Оставьте для работы необходимую вам часть объекта, а все остальное удалите (рис. 9.51).
Рис. 9 . 5 1 . Пятая часть диска, подготовленная для копирования
Моделирование колеса автомобиля при помощи полигонов
483
Перед копированием нужно снять блокировку объекта от поворота (в самом начале задания мы заблокировали диск от случайного перемещения). Для этого выполните следующие действия. 1. Перейдите на вкладку Hierarchy (Иерархия) Jigj командной панели. 2. Щелкните на кнопке Link Info (Данные о связях). 3. В свитке Locks (Блокировки) снимите флажки в области Rotate (Вращение). После этого выделите элемент диска и щелкните на кнопке панели инструментов Array (Массив). В появившемся одноименном окне задайте угол поворота, количество копий и метод копирования, как показано на рис. 9.52.
Inctewtti:
x
v
'
•
Г г' -'•; '
• ••' •
:
•
Totals
x
у
г
10 torn Jj iOiOmm g jO.OmS"" J | | T Моте Ш ,'
^rfoW-Jj
le Ш P 1| p i} ^tm-ttfC. W.E IW"?J Г7^":!
I ; dm»» )У Be-0ii«M
РИС. 9.52. Окно Array (Массив) с настройками копирования элемента диска
В результате создания копий при помощи вращения получился диск, состоящий из пяти самостоятельных элементов, наследующих трансформации друг друга. Сейчас нужно уточнить положение вершин в средней части диска. Для этого достаточно настроить положение вершин в пространстве для одного элемента, а все остальные наследуют эти трансформации. Необходимо также удалить нижние боковые полигоны, чтобы объединить вершины соседних элементов. То, что получилось после редактирования вершин у меня, представлено на рис. 9.53.
Рис. 9.53. Объект, полученный при копировании одного элемента диска
484
Глава 9. Моделирование автомобиля
Постройте сопряжение между элементами, для которых необходимо выполнить выдавливание боковых полигонов в месте их соединения. После этого снова уточните положение вершин в пространстве, используя фотографию автомобильного диска (см. рис. 9.38). Когда будут сформированы переходы между элементами, их можно объединить в один объект. Для этого щелкните на кнопке Make unique (Сделать уникальным) V под стеком модификаторов на вкладке Modify (Изменение) и на кнопке Attach (Присоединить) свитка Edit Geometry (Редактирование геометрии). Затем в любом окне проекции последовательно щелкните на всех копиях начального объекта для их присоединения (рис. 9.54).
Рис. 9.54. Фрагмент диска после объединения элементов
После объединения элементов в один объект в центре образовалось отверстие, которое необходимо закрыть и выполнить выдавливание для формирования углубления с фаской. Для этого сделайте следующее. 1. В свитке Selection (Выделение) настроек объекта на командной панели нажмите кнопку Border (Граница) rQ . 2. В окне проекции Front (Спереди) щелкните на границе отверстия для выделения ребер, окаймляющих отверстие. 3. В свитке Edit Borders (Редактирование границ) нажмите кнопку Сар (Накрыть), в результате чего отверстие будет закрыто полигонами. 4. Выделите средний полигон и выдавите его внутрь на небольшое расстояние. 5. Выполните фаску для верхних ребер отверстия. Результат описанных действий представлен на рис. 9.55.
Рис. 9.55. Средняя часть диска
Моделирование колеса автомобиля при помощи полигонов
485
Осталось совсем немного — добавить мелкие детали, и диск будет готов. Для болтов крепления диска я использовал примитив Cylinder (Цилиндр) с шестью гранями без сглаживания. В центр поместил полусферу, трансформированную по оси Z. Эта полусфера будет служить основой для размещения логотипа. Для гаек, расположенных по периметру, был также использован примитив Cylinder (Цилиндр). Он подошел и для прокладок под гайки. Окончательный вид диска представлен на рис. 9.56.
Рис. 9.56. Окончательная визуализация диска
Для завершения моделирования автомобильного колеса не хватает только шины. Надеюсь, что после построения диска ее моделирование не покажется вам сложным. Спрячьте построенный вами диск, чтобы ничто не мешало работе. Выделите его со всеми дополнительными элементами и щелкните правой кнопкой мыши, в появившемся контекстном меню выберите пункт Hide Selection (Спрятать выделенное). Как обычно, для объектов, которые имеют повторяющиеся или симметричные детали, моделировать будем только уникальную для них часть. В данном случае это небольшая часть протектора. Начнем его создание с построения плоскости. Для этого выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость). В окне проекции Тор (Сверху) постройте произвольную плоскость и в свитке Parameters (Параметры) задайте ее параметрам такие значения, как показано на рис. 9.57. Дальнейшее моделирование будет происходить на уровне подобъектов, для чего необходимо преобразовать плоскость в объект Editable Poly (Редактируемая полигональная поверхность), щелкнув правой кнопкой мыши на объекте и выбрав
486
Глава 9. Моделирование автомобиля
в появившемся контекстном меню Convert To • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). После этого щелкните на кнопке Vertex (Вершина) I./ в свитке Selection (Выделение) настроек плоскости на командной панели и в окне проекции Тор (Сверху) измените положение вершин, как показано на рис. 9.58.
'> Render Muitcpliras Scaterj'V.O
" :j
P—si F
Beneiate Mapping Cooris.
Г
Beaf-Woild Map Size
Рис. 9.57. Свиток Parameters (Параметры) настроек плоскости, с которых начинается моделирование шины
б Рис. 9.58. Редактирование вершин объекта в вертикальной (а) и горизонтальной (б) плоскостях
Перейдите на уровень редактирования полигонов, для чего в свитке Selection (Выделение) настроек плоскости на командной панели щелкните на значке Polygon (Полигон) i Щ . Выделите те полигоны, которые должны будут формировать выступающие части протектора шины. После этого примените к выделенным полигонам выдавливание с заданным значением. Для этого щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). В открывшемся окне Edit Polygons (Редактирование полигонов) параметру высоты выдавливания задайте значение 4, в качестве типа выдавливания выберите Local Normal (Локальные нормали) и нажмите кнопку ОК (рис. 9.59). После выполнения стандартных операций необходимо подкорректировать положение вершин в пространстве. В данном случае нужно понизить протектор по направлению к внешнему краю (рис. 9.60).
Моделирование колеса автомобиля при помощи полигонов
487
Рис. 9.59. Фрагмент шины с выдавленными полигонами
шишшвшшшяшяшшшяшшяяяшяш Рис. 9.60. Элемент шины после корректировки высоты протектора
Как только вы скорректируете положение вершин в пространстве, изогните боковую часть элемента шины, чтобы придать ей нужную форму. Для этого проще всего воспользоваться модификатором изгиба. Выполните команду Modifiers • Parametric Deformers • Bend (Модификаторы • Параметрические деформации • Изгиб). В свитке Parameters (Параметры) настроек модификатора Bend (Изгиб) задайте параметрам такие значения, как показано на рис. 9.61.
-Bern)Axis;- •
\ C X
* Y
с Z
Limits I* Um8 Effect • Upp«lWtjOQr j ;
Рис. 9 . 6 1 . Параметры модификатора Bend (Изгиб) для элемента шины
На этом моделирование одиночного элемента можно считать законченным. Теперь необходимо выполнить его зеркальную копию с последующим присоединением ее к основному объекту. Перед тем как что-либо делать, нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность) (как это делается, вы уже знаете). Затем в окне проекции Тор (Сверху) выделите объект и щелкните на кнопке Mirror (Зеркальное отображение) Щ . В появившемся окне в качестве оси для зеркального отображения выберите XY, а в качестве способа копирования — Сору (Независимая копия объекта). После зеркального отображения объекта выполните подгонку положения копии так, чтобы копия встала в место соединения двух половинок протектора (рис. 9.62).
Глава 9. Моделирование автомобиля
488
,
,
•
•
•
•
•
•
;
:
:
Рис. 9.62. Элемент шины с зеркальной копией
Создав копию и уточнив положение относительно оригинала, необходимо присоединить ее к оригиналу. Для выполнения этих действий щелкните на кнопке Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии) основного объекта, а затем на копии в любом из окон проекций. Но это еще не все. Нужно объединить и вершины, лежащие на стыке двух элементов. Для этого, находясь на уровне редактирования вершин, выделите средний ряд вершин и щелкните на кнопке Weld (Объединить), находящейся в свитке Edit Vertices (Редактирование вершин). В результате этих действий вы получили один полный элемент шины, который сейчас необходимо размножить. Выполните эту операцию при помощи инструмента Array (Массив). 1. Выделите объект в окне проекции. 2. Выполните команду Tools • Array (Инструменты • Массив). 3. В открывшемся окне Array (Массив) укажите смещение по оси X равное 40 (это ширина элемента, заданная при его построении), а количество копий — 50. 4. Щелкните на кнопке 0К для подтверждения сделанных изменений. Вы получите 50 последовательно расположенных элементов, которые нужно объединить в один объект. Снова обратитесь к команде Attach (Присоединить), но сейчас щелкните на кнопке Attach List (Присоединение по списку), находящейся рядом с кнопкой Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии). Откроется окно Attach List (Присоединение по списку), в котором щелкните на кнопке АН (Все) для выбора всех копий элемента шины. Как и прежде, соседние вершины присоединенных объектов необходимо объединить, для чего в режиме редактирования Vertex (Вершина) выделите все вершины объекта и щелкните на кнопке Weld (Объединить) в свитке Edit Vertices (Редактирование вершин). После присоединения отдельных элементов и объединения вершин в местах стыков примените модификатор Bend (Изгиб), чтобы свернуть объект в кольцо. В параметрах модификатора параметру Angle (Угол) задайте значение 360, а ось — X. Вы получите почти готовую шину, останется только нарастить боковые грани (рис. 9.63).
Моделирование колеса автомобиля при помощи полигонов
489
Рис. 9.63. Автомобильная шина после применения модификатора Bend (Изгиб)
Перед наращиванием боковых граней нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность) и объединить вершины в месте стыка. Далее щелкните на кнопке Border (Граница) Q в свитке Selection (Выделение). В окне проекции Front (Спереди) щелкните в стороне от объекта и, не отпуская кнопку мыши, переместите указатель на противоположную сторону окна по диагонали, выделяя все открытые ребра (в данном случае это внутренние ребра шины с обеих сторон). Щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов i jj^ и, удерживая нажатой клавишу Shift, дважды скопируйте ребра, чтобы нарастить стороны шины. У вас получится законченная модель шины. Сейчас можно открыть ранее спрятанный диск и привести при необходимости шину к общему с ним масштабу. На рис. 9.64 показано то, что получилось у меня.
Рис. 9.64. Результат окончательной визуализации автомобильного колеса
490
Глава 9. Моделирование автомобиля
ПРИМЕЧАНИЕ Если у вас возникли вопросы при создании модели автомобильного колеса, загрузите для анализа файл сцены polydisk.max, расположенный в папке CH09\Max\Poly_disk прилагаемого к книге компакт-диска.
Моделируем BMW Моделирование автомобиля, пожалуй, самое сложное задание из представленных в этой книге. Если у вас недостаточно опыта работы в программе 3ds Max, начинать его желательно после освоения упражнений по моделированию полигонами. Моделировать автомобиль можно разными способами. Все они имеют свои плюсы и минусы. Я не стану подробно останавливаться на каждом, а только опишу их в общих чертах. • NURBS-моделирование. В примерах по моделированию в 3ds Max встречается крайне редко. Моделировать сложно, хотя модель в конечном итоге получается достаточно сглаженная. •
Патч-моделирование. При достаточных навыках в работе таким образом можно выполнять моделирование автомобилей любой сложности. Патчи имеют некоторые особенности, знание которых необходимо для нормальной работы. Кроме того, построение кривизны поверхности сводится к редактированию не только положения вершин в пространстве, но и манипуляторов, что дополнительно усложняет задачу.
•
Моделирование сплайнами с последующим применением модификатора Surface (Поверхность). Этот способ напоминает патч-моделирование. Я применяю его для моделирования автомобилей со сложной и сглаженной геометрией. Метод очень удачен, но требует подготовки и хорошего пространственного мышления: нужно размещать в пространстве большое количество вершин кривой и уметь работать с манипуляторами.
•
Низкополигональное моделирование. При таком моделировании за основу берется объект Box (Параллелепипед) с достаточным количеством разбиений и при помощи модификатора Edit Mesh (Редактирование поверхности) изменяется положение вершин, они подгоняются под форму автомобиля. Моделирование ведется по принципу от простого к сложному (добавляются грани, полигоны, уточняется геометрия и т. д.). После создания общей формы, объекту присваивается модификатор MeshSmooth (Сглаженная поверхность).
•
Полигональное моделирование. Это, скорее, разновидность низкополигонального моделирования с той разницей, что, применяется метод наращивания полигонов по форме модели с использованием Editable Poly (Редактируемая полигональная поверхность). На сегодняшний день это самый удобный способ создания полигональной модели.
В этом задании будет использоваться последний способ моделирования как самый распространенный и наиболее простой. Преимущество этого метода заключается
Моделируем BMW
491
в том, что мы строим полигоны лишь там, где они необходимы, имея в своем арсенале максимальный набор инструментов для работы с полигональной моделью. В заданиях по моделированию телефонной трубки, микроволновой печи и колеса мы уже использовали этот способ, и вы должны были приобрести начальные навыки работы с Editable Poly (Редактируемая полигональная поверхность). Поэтому материал будет подан в сжатом виде, лишь с описанием техники моделирования. Как обычно, моделирование начинается с создания виртуальной студии. Способы ее построения были рассмотрены в начале главы, поэтому будем считать, что студия у вас уже есть. Если это не так, то загрузите файл studio_v3 .max из папки CH09\Max\Studio прилагаемого к книге компакт-диска. О виртуальной студии мы говорили неоднократно, и способы ее построения подробно рассмотрели в отдельном разделе, но все же хочется еще раз вернуться к этой теме и дать несколько рекомендаций. • Виртуальная студия должна находиться в начале координат, то есть значения ее координат по осям X, Y и Z должны быть равными 0. Это значительно упростит зеркальное отображение объектов моделирования (фары, зеркала, колеса и т. д.), а также половины кузова автомобиля. • Студия должна быть заблокирована от случайного смещения. Для этого щелкните на объекте-студии правой кнопкой мыши и в появившемся контекстном меню выберите строку Properties (Свойства). Откроется окно Object Properties (Свойства объекта), в котором установите флажок Freeze (Фиксировать) и снимите Show Frozen in Gray (Показывать зафиксированное серым). Каким бы методом вы ни моделировали автомобиль, исходя из того, что он симметричен, достаточно создать лишь половину объекта, а потом сделать зеркальную копию. Моделировать автомобиль начните с построения объекта Plane (Плоскость) в районе переднего крыла автомобиля. Для этого выполните команду Create • Standard Primitives • Plane (Создание • Простые примитивы • Плоскость) и в окне проекции Front (Спереди) постройте небольшую плоскость, которая будет отправной точкой всего моделирования (рис. 9.65).
Рис. 9.65. Плоскость, с которой начинается построение модели автомобиля
Для удобства работы измените способ отображения объекта. Для этого щелкните на плоскости правой кнопкой мыши и в появившемся контекстном меню выберите
492
Глава 9. Моделирование автомобиля
строку Properties (Свойства). В области Display Properties (Свойства отображения) открывшегося окна Object Properties (Свойства объекта) установите флажок See-Through (Видеть сквозь). После этого вы сможете видеть ту часть виртуальной студии, которая скрывается за моделируемым объектом. Больше свойства параметрического объекта Plane (Плоскость) вам не понадобятся. Дальнейшее моделирование будет проводиться на уровне редактирования подобъектов (вершин, граней, полигонов). Для доступа к этому уровню необходимо преобразовать объект в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши, в появившемся контекстном меню выполните команду Convert То • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). ВНИМАНИЕ Почти все команды моделирования, которые будут использоваться в данном упражнении, находятся на вкладке Modify (Изменение) настроек объекта Editable Poly (Редактируемая полигональная поверхность) командной панели. По этой причине уточнения будут даваться только по свиткам, к которым будем обращаться. Во всех остальных случаях будет приводиться полное описание доступа к инструментам, модификаторам или свойствам объекта. В процессе моделирования вам придется часто переключаться на уровень подобъектов между вершинами, гранями и полигонами. Запомните пять «горячих» клавиш для переключения между режимами редактирования подобъектов: • Vertex (Вершина) — клавиша 1; • Edge (Ребро) - 2; •
Border (Граница) — 3;
•
Polygon (Полигон) - 4;
•
Element (Элемент) — 5.
Кроме того, для команды Select Object (Выделить объект) зарезервирована клавиша Q, для Select and Move (Выделить и переместить) — W, для Select and Rotate (Выделить и повернуть) — Е, а для Select and Uniform Scale (Выделить и равномерно масштабировать) — R. ПРИМЕЧАНИЕ Более подробно с клавиатурными комбинациями можно ознакомиться в приложении 2. Вернемся к моделированию. После преобразования плоскости в Editable Poly (Редактируемая полигональная поверхность) перейдите на уровень редактирования вершин (при выделенном объекте нажмите на клавиатуре 1) и уточните положение вершин в пространстве, используя для контроля окно проекции Front (Спереди) (рис. 9.66, а) и Left (Слева) (рис. 9.66, б).
Моделируем BMW
493
Рис. 9.66. Положение начального полигона в окнах проекций Front (Спереди) (а) и Left (Слева) (б)
Очень важно контролировать положение вершин во всех окнах проекций. Это поможет избежать появления искривлений, которые могут быть не видны при использовании одного или двух окон проекций. Далее при помощи выдавливания боковых ребер продолжаем строить крыло машины. Для этого можно воспользоваться командой Extrude (Выдавливание), но более простой метод построения дополнительных ребер (а следовательно, и полигонов) — копирование их с клавишей Shift. Делается это следующим образом. 1. Перейдите на уровень редактирования ребер (нажмите на клавиатуре 2). 2. Нажмите и удерживайте клавишу Shift. 3. Выделите ребро со стороны, в которую собираетесь наращивать рельеф. 4. Удерживая нажатой кнопку мыши, переместите ребро в сторону на расстояние необходимое для построения новых контрольных точек. 5. Отпустите кнопку мыши, в результате чего будет построен новый полигон. 6. При необходимости уточните положение вершин в пространстве. Используя вышеописанный способ копирования ребер, нарастите геометрию крыла автомобиля (рис. 9.67).
Рис. 9.67. Положение полигонов, огибающих арку от бампера до порога, в окне проекции Front (Спереди) (а) и Left (Слева) (б)
494
Глава 9. Моделирование автомобиля
СОВЕТ При моделировании автомобиля я предпочитаю придерживаться того правила, что отдельные детали кузова должны моделироваться как самостоятельные элементы. Это, на мой взгляд, упрощает моделирование и дальнейшее текстурирование автомобиля. Обычно это элементы, которые и у реального автомобиля являются самостоятельными (крылья, капот, двери, багажник, бамперы и т. д.) Продолжите строить полигоны. Дойдя до бампера с левой стороны и порога с правой, нарастите ребра в стороны, не забывая контролировать положение полигонов во всех окнах проекций (рис. 9.68).
чттш Рис. 9.68. Положение полигонов в окнах проекций Front (Спереди) (а) и Тор (Сверху) (б) после их наращивания в стороны
Сейчас самое время посмотреть на то, что у нас получается. Для этого я пользуюсь нехитрым приемом: делаю визуализированную копию моделируемого объекта и добавляю к ней модификатор MeshSmooth (Сглаженная поверхность). 1. Удерживая нажатой клавишу Shift (как при копировании ребер), щелкните на моделируемом объекте и перетащите его на значительное расстояние в сторону. 2. После того как вы отпустите кнопку мыши, появится окно Clone Options (Параметры клонирования), в котором на вопрос о способе копирования укажите Reference (Подчинение). 3. В стек модификаторов копии добавьте модификатор MeshSmooth (Сглаженная поверхность), выполнив команду Modifiers • Subdivision Surfaces • MeshSmooth (Модификаторы • Поверхности с разбиением • Сглаженная поверхность). 4. Из списка Subdivision Method (Метод разбиения) одноименного свитка настроек модификатора MeshSmooth (Сглаженная поверхность) выберите NURMS, а в свитке Subdivision Amount (Величина поверхности с разбиением) задайте параметру Iterations (Количество разбиений) значение 2. 5. Щелкните на объекте правой кнопкой мыши, выберите в появившемся контекстном меню команду Properties (Свойства) и в области Display Properties (Свойства отображения) открывшегося окна Object Properties (Свойства объекта) снимите флажок See-Through (Видеть сквозь). После создания экземпляра и выполнения вышеописанных действий поместите его в окно проекции Perspective (Перспектива). Сейчас вы сможете, работая с полигонами
495
Моделируем BMW
на низком уровне (то есть до сглаживания), видеть сглаженную модель и лучше контролировать процесс построения геометрии (рис. 9.69).
Рис. 9.69. Копия моделируемого объекта со сглаживанием
СОВЕТ К сожалению, удобство, связанное с возможностью просмотра сглаженного изображения одновременно с моделированием, занимает дополнительные компьютерные ресурсы (в оперативной памяти хранится информация о выполненных операциях не только для основного объекта, но и для экземпляра). В связи с этим, как только вы почувствуете, что компьютер стал работать медленнее, удалите копию. Вместо этого при необходимости можно контролировать форму объекта, установив в свитке Subdivision Surface (Поверхности с разбиением) флажок Use NURMS Subdivision (Использовать NURMS-разбиения) с теми же параметрами, что и у модификатора MeshSmooth (Сглаженная поверхность).
Продолжите наращивание геометрии. Сделайте ряд полигонов по верху объекта до излома крыла и ряд по краю арки. •
ВНИМАНИЕ Когда необходимо наращивать более одного полигона, обязательным условием является выделение для копирования сразу всех ребер. Это связано с тем, что раздельное копирование не только замедлит процесс построения геометрии, но и построит разделенные полигоны. В таком случае необходимо объединить (команда Weld (Объединить)) совпадающие вершины соседних полигонов (если, конечно, раздельное построение не предусмотрено характером моделирования).
При моделировании нужно обходиться минимальным количеством полигонов, но при этом достаточным для правильной передачи формы модели. Вершины полигонов старайтесь располагать в местах изменения формы и не забывайте контролировать их положение в пространстве (рис. 9.70).
496
Глава 9. Моделирование автомобиля
Рис. 9.70. Полигоны, достроенные над аркой и по верху крыла
Обратите внимание, что ребра, находящиеся на стыках полигонов, располагаются с учетом изменения геометрии автомобиля. Кроме того, между аркой и дверью необходимо разделить полигоны на две части, так как большие полигоны не способны передать изгиб крыла по длине. Выполните это деление при помощи инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактирование геометрии). Чем больше расстояние между ребрами соседних полигонов, тем более плавную кривую построит программа при сглаживании внутреннего угла. Верно и обратное. По этой причине, если вы хотите сделать излом в каком-то месте поверхности, то нужно построить близко лежащие грани. Это мы сейчас и проделаем для геометрии крыла. Прежде всего нужно выделить грань, по которой будет уточняться геометрия. Перейдите на уровень редактирования ребер (нажмите на клавиатуре цифру 2). Выделите одно из ребер по линии будущего излома геометрии. В свитке Selection (Выделение) щелкните на кнопке Loop (Петля), в результате чего выделятся все ребра, находящиеся на одной линии с выделенным. Для придания изгибу более заметного излома примените к выделенным ребрам Chamfer (Фаска), разделив таким образом выделенные ребра на две части. Сделать это можно, выполнив следующие действия. 1. В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска). 2. В открывшемся окне Chamfer Edges (Фаска ребер) задайте параметру величины фаски значение 3. 3. Щелкните на кнопке О К для завершения операции создания фаски. Теперь изгиб крыла над аркой имеет более естественные очертания (рис. 9.71). Напомню, что в окне проекции Perspective (Перспектива) представлен экземпляр объекта, с которым вы работаете, однако к нему уже применено сглаживание. Продолжите наращивание полигонов вправо: сначала до места соединения передней и задней дверей, затем до места соединения задней двери и крыла.
Моделируем BMW
497
Рис. 9 . 7 1 . Ребра, сформированные фаской в окнах проекций User (Пользовательская) (а) и Perspective (Перспектива) (б)
Обратите внимание, что в окне проекции Тор (Сверху) боковая линия геометрии автомобиля в местах расположения дверей почти ровная, поэтому, чтобы передать форму кузова, вам достаточно построить вертикальные ребра в местах стыковки дверей (рис. 9.72).
Рис. 9.72. Достроены два ряда полигонов, описывающих форму дверей
Принципы построения заднего крыла такие же, как и переднего, — ребра строящегося объекта должны пройти по характерным изломам крыла, огибая арку заднего колеса. Затем продолжите построение полигонов вплоть до дверей багажника, огибая заднюю фару. Высота строящихся полигонов должна быть ограничена сверху линией излома геометрии кузова, а снизу бампером. СОВЕТ При построении такой сложной модели, как автомобиль, вы вряд ли дважды столкнетесь с одинаковой геометрией кузова. При этом существует простое правило: построение ребер должно вестись с учетом элементов кузова и его формы. На практике это выглядит примерно так: все, что в автомобиле открывается, может быть выполнено отдельными элементами и, соответственно, должно иметь ребра на краях. Ребра также обязательны там, где необходимо сделать излом геометрии.
При построении изгиба заднего крыла в районе фары обратите внимание на форму закругления. Кроме работы в окне проекции Front (Спереди) важно контролировать положение вершин в пространстве, используя окна проекции Тор (Сверху) и Right (Справа) (рис. 9.73).
498
Глава 9. Моделирование автомобиля
^б)П°СТРОеНИе
П 0 Л И Г 0 Н 0 В
продолжается в окнах проекций Front (Спереди) (а) и Right
Далее достройте полигоны до боковых окон. Принцип построения все тот же- выделите грани по всей длине и, удерживая нажатой клавиш'shift скопируйте их а затем уточните положение вершин в пространстве. копируйте их, Чтобы закончить построение общей формы боковой геометрии кузова, сделайте прош ч н о Z Z T Н 3 К Р Ы Л Ь Я Х И Д В б р К а Х а в Т 0 М 0 б и л я - Э т а -Фация выполняет я аналогично созданию излома над арками крыльев автомобиля, описанному ранее Отличие состоит в том, что сначала при помощи инструмента Chamfer (Фаска) из свитка™ Edges (Редактирование ребер) строятся разделенные ребра с параметром Chamfe
ются о т ( м о Т И Н а Ф а С К И > 1 0 ^
В ВВДУ Ч Т 6СЛИ Р З З М е
' °
Р Ы -шеТмодели отлич -
ются от моей, то и величина будет другой). После этого выделяется верхний ряд ребер, полученных при помощи фаски, и еще раз применяется Chamfer (ФаскаГно со }> значением параметра Chamfer Amount (Величина фаски) 3. После построения двух дополнительных рядов ребер необходимо уточнить поло жение в пространстве нижнего ряда, чтобы создать криволине^уГповерхность боковой стороны автомобиля. Для этого можно воспользоваться редактировав ем на уровне вершин (для переключения нажмите на клавиатуре ?) для чего выделите вершины нижнего ряда (из построенных с помощью Cham е^Фаска)) и в окне проекции Left (Слева) сместите их немного внутрь автомобиля рис 974)
Рис. 9.74. Положение и форма излома геометрии кузова поверхности ' проходящего по боковой
499
Моделируем BMW
В процессе построения новых ребер методом создания фаски на границе примыкания горизонтальных ребер к арке переднего крыла появятся артефакты. Это связано с тем, что в данных точках сходятся по пять ребер и в результате применения инструмента Chamfer (Фаска) из свитка Edit Edges (Редактирование ребер) появляется избыточное количество вершин. Решить возникшую проблему можно с помощью команды Weld (Объединить) следующим образом. 1. Перейдите на уровень редактирования вершин. 2. Выделите две вершины, подлежащие объединению. 3. В свитке Edit Vertices (Редактирование вершин) щелкните на кнопке Settings (Установки) рядом с кнопкой Weld (Объединить). 4. В открывшемся окне Weld Vertices (Объединить вершины) задайте значение величины приращения так, чтобы в окне проекции две выделенные вершины объединились в одну. 5. Щелкните на кнопке О К для завершения объединения. 6. Повторите те же действия для двух других точек (рис. 9.75).
а
б
Рис. 9.75. Вершины на стыке шести ребер до (а) и после (б) их слияния
На рис. 9.76 показан вид боковой поверхности экземпляра моделируемого объекта со сглаживанием.
Рис. 9.76. Боковая поверхность кузова автомобиля со сглаживанием
500
Глава 9. Моделирование автомобиля
СОВЕТ Часто в процессе моделирования по той или иной причине необходимо вернуться к предыдущему состоянию моделирования, и не всегда в этом может помочь команда Undo (Отменить). Поэтому возьмите за правило сохранять рабочий файл после выполнения ключевых задач или через определенные промежутки времени. Лучше всего, если будет использоваться для сохранения команда Save As (Сохранить как) с увеличением имени файла (достаточно в окне Save File As (Сохранить файл как) щелкнуть на кнопке со знаком +).
Дальнейшее построение кузова автомобиля связано с моделированием рамки над дверями, затем можно будет перейти от нее к крыше. Построение начинается сразу с двух сторон путем наращивания полигонов. Думаю, двух рядов полигонов вполне хватит, чтобы передать форму рамки. В ее построении нет особых сложностей, необходимо лишь отметить, что от заднего крыла отходит больше двух полигонов. Их нужно привести в соответствие (по количеству) с теми, которые расположены спереди. Это делается путем объединения вершин. Кроме того, добавьте еще одно горизонтальное ребро в место стыковки рамки с задним крылом — туда, где виден небольшой излом формы (рис. 9.77).
Рис. 9.77. Положение и форма полигонов, формирующих рамку кузова в окнах проекций Front (Спереди) (а) и Right (Справа) (б)
Дальнейшее построение крыши автомобиля не должно составить труда, поэтому вернемся к нему позже, а пока на примере создания порога я хочу показать, как можно строить сочленения отдельных элементов кузова. Когда-то, в самом начале работы в программе 3ds Max, я строил швы и сочленения элементов кузова автомобиля путем применения команды Bevel (Выдавливание со скосом) из свитка Edit Polygons (Редактирование полигонов) к полигонам, проходящим по линии шва. После применения модификатора MeshSmooth (Сглаженная поверхность) к таким швам углы закруглялись даже там, где они должны быть прямыми. Чтобы избавится от этого эффекта, я добавлял ребра, увеличивал вес вершин и т. п. Но все эти меры ведут к увеличению количества полигонов и деформируют форму, поэтому со временем я нашел другое решение.
Моделируем BMW
501
Итак, мы продолжаем строить кузов, а точнее, порог. Выделите нижний ряд ребер и скопируйте его три раза (именно столько рядов полигонов необходимо, чтобы передать небольшое углубление в пороге). После построения новых полигонов (рис. 9.78) уточните положение вершин в окнах проекций Left (Слева) и Тор (Сверху).
Рис. 9.78. Дополнительные полигоны, построенные для формирования порога
То, о чем я буду говорить далее, важно понять и научиться делать правильно, так как от этого будет зависеть, насколько хорошо будут смотреться швы автомобиля. Начнем с выделения трех нижних рядов полигонов, чтобы сформировать из них отдельный элемент. Выделите три нижних ряда полигонов и щелкните на кнопке Detach (Отделить), расположенной в свитке Edit Edges (Редактирование ребер). В появившемся окне Detach (Отделить) установите флажок Detach to Element (Отделить в элемент). Это позволит выделить полигоны в отдельный элемент, принадлежащий моделируемому объекту. Щелкните на кнопке О К для подтверждения выбора и закрытия окна диалога. СОВЕТ Есть несколько способов упростить навигацию по увеличивающемуся в процессе моделирования количеству вершин, ребер и полигонов. Можно прятать неиспользуемые в работе объекты, использовать плоскости отсечения, режим Isolation Mode (Режим изолирования) и скрывать неиспользуемые элементы на уровне редактирования подобъектов.
После выделения порога в отдельный элемент (именно с ним предстоит работать) спрячьте все лишнее. Для этого перейдите на уровень редактирования подобъектов Element (Элемент), используя «горячую» клавишу 5. Выделите порог автомобиля и в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Hide Unselected (Спрятать невыделенное). После выполнения этих операций на экране остается только порог. В окне проекции Front (Спереди) выделите вершины, принадлежащие верхнему ряду, и немного (на 3-5 мм) сместите их вниз. Это необходимо для того, чтобы между
502
Глава 9. Моделирование автомобиля
порогом и дверями образовалась небольшая щель. После этого нужно придать порогу толщину. Выделите открытые грани, для чего на уровне подобъектов Border (Граница) щелкните в любом месте по краю порога. В результате выделятся все ребра по периметру. После этого выполните уже знакомую вам операцию копирования граней на величину около 20 мм со смещением внутрь автомобиля. ПРИМЕЧАНИЕ Значение, на которое изменяется смещение при копировании, можно проследить в строке состояния, расположенной в нижней части окна программы. Для формирования углубления в средней части порога выделите два больших продольных ребра и переместите их немного внутрь. Осталось еще одно копирование ребер для формирования порога — нужно выделить верхний внутренний ряд (из тех, которые были построены последними) и скопировать его по оси Y примерно на 20 мм вверх. Это необходимо для того, чтобы закрыть изнутри образовавшееся продольное отверстие между порогом и дверью (при помощи смещения вершин вниз). Последнее, что нужно сделать перед тем как закончить моделировать порог, — выделить передние грани, образующие внешний край, добавить к выделению ребра в углах и ко всему выделению применить Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) равным 1 (рис. 9.79).
Рис. 9.79. Каркасный вид порога автомобиля после добавления полигонов и создания фаски
Если то, что получилось у вас, отличается от изображения на рис. 9.79, то вернитесь назад при помощи команды Undo (Отменить) и проверьте, правильно ли были выделены грани. Это, как правило, самая распространенная ошибка при построении сглаженных углов. На самом деле операции с гранями не так сложны, как кажется, — главное понять принцип, по которому делаются фаски. На рис. 9.80 показан результат визуализации боковой стороны автомобиля. На примере моделирования порога мы рассмотрели один из способов создания элементов кузова автомобиля. Опишу еще один способ моделирования автомобильных швов на примере создания двери.
1
Моделируем BMW
503
Рис. 9.80. Результат визуализации боковой стороны автомобиля вместе с построенным порогом
ВНИМАНИЕ При построении закруглений на краях нужно всегда учитывать особенности механизма сглаживания, который в расчетах использует расстояние между соседними рядами ребер (минимум три ряда на угол). На практике это выглядит так: чем ближе расположены ребра, образующие угол, тем меньше радиус закругления получится при сглаживании. Наилучший результат получается, если ребра, образующие закругление, расположены на одном расстоянии от угла.
Учитывая особенности сглаживания, описанные выше, необходимо на боковой поверхности автомобиля добавить вертикальные разрезы так, чтобы по обе стороны от границ дверей получилось по вертикальному ряду ребер. Сделать это можно разными способами, но самый простой — разрезать поверхность при помощи инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактирование геометрии) (рис. 9.81).
иг Рис. 9 . 8 1 . Расположение вертикальных ребер в местах соединения дверей
Начнем построение швов с выделения по одному ребру в трех вертикальных рядах, ограничивающих две двери: между передним крылом и передней дверью, между передней и задней дверями и между задней дверью и задним крылом. После этого щелкните на кнопке Loop (Петля), расположенной в свитке Selection (Выделение), чтобы выделить все ребра, составляющие вертикальные ряды. Проверьте, действительно ли все ребра, относящиеся к одному ряду, выделились. Возможно,
504
Глава 9. Моделирование автомобиля
что при моделировании создались смежные ребра и соответственно сдвоенные вершины. В этом случае выделение в таком месте прервется, и продолжить его можно будет, добавив оставшиеся ребра вручную. Вершины придется объединить при помощи команды Weld (Объединить), чтобы избежать искажения геометрии. Если вы выделили все необходимые для работы ребра, нажмите на клавиатуре Пробел, чтобы заблокировать выделенные ребра от случайного изменения. После этого примените команду Extrude Edges (Выдавить ребра) из свитка Edit Edges (Редактирование ребер) с высотой выдавливания 0 и шириной 10 (рис. 9.82).
Рис. 9.82. Начало построения дверного шва
Высота, указываемая в окне Extrude Edges (Выдавить ребра), в данном случае должна всегда быть нулевой, а ширина у вас может быть и другой — все зависит от масштаба модели и ширины требуемого шва. Обычная технология построения шва подразумевает применение не Extrude Edges (Выдавить ребра), a Chamfer (Фаска). Однако в результате вместо трех получается всего два ребра, что усложняет дальнейшую работу. То, что предлагаю я, позволит вам с минимальными затратами построить достаточно удачный шов. Не спешите щелкать на кнопке О К после введения нужных значений. В данном случае вам понадобится продолжить работу в окне Extrude Edges (Выдавить ребра), поэтому нажмите кнопку Apply (Применить), после чего можно ввести новые значения для следующей пары ребер. В этот раз используйте отрицательную высоту выдавливания (у меня это значение равно -5) и меньшее значение для ширины (у меня — 3). В результате вы сделали шов, используя всего две операции выдавливания (рис. 9.83).
•
Рис. 9.83. Автомобильный шов в каркасном виде (а) и после визуализации (б), полученный при помощи двух операций выдавливания
Моделируем BMW
505
При желании, добавив еще две операции, вы можете улучшить внешний вид шва. У меня никогда не возникало необходимости в таком улучшении, так как в своих работах я не использую визуализацию с большим приближением, а на расстоянии они практически не отличаются друг от друга. Однако вам это, возможно, понадобится, поэтому я расскажу, как сделать такой шов. Сейчас дверной шов представлен минимально возможным количеством полигонов (имейте это в виду, если для вас критично общее количество полигонов). Если к этому добавить еще одно выдавливание, а затем применить фаску, то получится более правильный с точки зрения геометрии шов (внутри он будет прямоугольным). Для построения такого шва выполните следующие действия. 1. Не меняя выделения (у вас до сих пор должны быть выделены три средних ряда ребер), щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). 2. В открывшемся окне Extrude Edges (Выдавить ребра) укажите параметру величины выдавливания значение -10 (это значение определяет общую глубину шва), а ширины — 4. 3. Щелкните на кнопке О К для завершения операции выдавливания. 4. В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска). 5. В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение 10. 6. Щелкните на кнопке 0К для завершения создания фаски (рис. 9.84). ;'••"•••
•
••••
•
,
• : *
1i/ i К?
••••
•••
•
•
• .
••-..
а
I
о
Рис. 9.84. Каркасный вид улучшенного шва (а) и результат его визуализации (б)
Перед тем как приступить к следующей фазе моделирования, не забудьте снять блокировку с выделения, для чего еще раз нажмите на клавиатуре Пробел. ПРИМЕЧАНИЕ При моделировании автомобиля совсем не обязательно вести построение в той последовательности, в которой это делаю я. Главное, чтобы ваша последовательность действий была логически оправдана (например, нелогично делать ручки дверей, не создав самих дверей).
506
Глава 9. Моделирование автомобиля
После того как вы закончили с построением дверных швов, можно переходить к моделированию капота. Для этого необходимо нарастить полигоньт при пом ОЩ1 " Ге
^характерный изло?ГлТ' °
Г^'^ТТЛ^У-
в местах
Рис. 9.85. Линии построения
М6ТР
™
aBTOMo6
H™. Черезвеськапотп7о
P^^HS^^JSST
1 ос
геометрии капота в окне проекции Left (Слева)
научились делать закругления на гранях элементов автомобиля закруглите грани капота и элемента кузова, расположенному ниже фары (рис 9 86)!
Рис. 9.86. Результат визуализации фрагмента капота с фасками
"
п о с т р о е н и е
р е ш е т к и
р а д и а т о р а
-
Д л я
э т о г о
в ь п ю л н и т е
1. Выделите ребра расположенные по периметру отверстия, для чего
ГГ^Г
ъектовBorder(Граница) ищелкните
-
25
2. Примените к выделенным ребрам команду Сар (Накрыть), щелкнув на одно именной кнопке в свитке Edit Borders (Редактирование границ^ ЭтоГоздаст по лигон, закрывающий отверстие. ^ " и ц , . о i о создаст по3.
C e Д лaйтeзaкPытoeoтвepcтиeoтдeльнымэлeмeнтoм,ДЛячeгoвcвиткeEditGeometrv (Редактирование геометрии) щелкните на кнопке Detach (Отделить)
Моделируем BMW
507
Дальнейшее редактирование будет проходить на уровне подобъектов Polygon (Полигон). Выделите вновь созданный полигон и примените к нему последовательно четыре операции Bevel (Выдавливание со скосом) со следующими значениями параметров, заданных в окне Bevel Polygons (Выдавливание со скосом полигонов): • Height (Высота): 3, Outline Amount (Величина смещения): -3; • Height (Высота): 0, Outline Amount (Величина смещения): -15; • Height (Высота): -3, Outline Amount (Величина смещения): -3; • Height (Высота): -15, Outline Amount (Величина смещения): -0. После этого уточните положение точек в правом верхнем углу (там обводка немного расширяется). Если вы все сделали правильно, то результат должен соответствовать изображению, показанному на рис. 9.87, а. После добавления боксов в качестве вертикальных перегородок решетки получим окончательный вид (рис. 9.87,6).
Рис. 9.87. Решетка автомобиля, представленная каркасом в окне проекции Left (Слева) (а) и визуализированная после добавления вертикальных перегородок (б)
Займемся построением двери багажника. После того как вы построили боковую сторону автомобиля, капот и научились делать толщину элементов и швы, ее создание не должно вызвать затруднений. Здесь все просто: построение ведется путем наращивания полигонов от крыла до середины автомобиля (рис. 9.88).
а Рис. 9.88. Геометрия багажника в окнах проекций Right (Справа) (а) и Front (Спереди) (б)
508
Глава 9. Моде/
Далее постройте швы двери. Для этого создайте шов либо как описано на примере построения боковых дверей, либо сделав дверь как отдельный элемент (при помо1 ( ТДеЛИТЬ)) И Д СТР0ИВТ ЛЩИНУДВе и на
'ХГ^Т
°
°
°
Р
небольшой элемент над углублением для регистрационного номера автомобиля (можно сделать его как отдельный объект из параллелепипеда). при визуализации должны выглядеть примерно так, как показано
Рис.
9.89.
Результат визуализации багажника после создания толщины
Перейдем к построению крыши, лобового стекла и стекла двери багажника В данном случае также не должно возникнуть проблем. Построения ведутся от краев элементов до середины автомобиля (напомню, что виртуальная студия расположена в начале координат и граница строящихся элементов должна проходить по оси Y с координатой 0). При построении лобового стекла заведите передние нижние по лигоны под капот, опустив их на небольшое расстояние относительно капота. Еще раз напомню: контролируйте построения во всех окнах проекций Крыша
окне
Моделируем BMW
509
После построения крыши задача немного усложнится — нужно создать хромированную окантовку верха дверей. Для моделирования окантовки выполните следующие действия. 1. Перейдите в режим редактирования Edge (Ребро). 2. Выделите ребра по периметру примыкания окантовки к крыше. 3. В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Create Shape From Selection (Создать форму из выделенного) для преобразования выделенных ребер в сплайны (это будет самостоятельный объект). 4. Выделите построенный сплайн, в свитке Geometry (Геометрия) настроек сплайна на командной панели рядом с кнопкой Outline (Контур) укажите величину контура 25. 5. Нажмите на клавиатуре Enter для создания контура (рис. 9.91).
Рис. 9 . 9 1 . Сплайны обводки, построенные из выделенных ребер
После построения сплайна преобразуйте его в Editable Poly (Редактируемая полигональная поверхность). Далее сделайте разрывы геометрии в местах стыковки дверей, чтобы там впоследствии сформировались швы. После выполнения подготовительной части можно придать окантовке толщину (не буду повторяться, так как эта операция делалась не раз и должна быть вам знакома). В качестве стоек я использовал параллелепипеды — просто придал им нужную форму, немного передвинув вершины. То, что должно получиться, показано на рис. 9.92.
Рис. 9.92. Результат визуализации стоек и окантовки двери
510
Глава 9. Моделирование автомобиля
Достройте стекла боковых дверей. Для этого используйте примитив Plane (Плоскость) (если вы планируете делать открывающиеся двери, постройте для каждой из них отдельную плоскость), а затем уточните положение вершин в пространстве. Перейдем к построению бокового зеркала. Трудности при его создании связаны с тем, что зеркало имеет сложную форму, которую нужно моделировать, а информации по ней (я имею в виду чертежи) недостаточно. При построении зеркала я использовал примитив Box (Параллелепипед) с двумя дополнительными гранями по вертикали: одной вдоль и одной по горизонтали. После построения параллелепипеда я преобразовал его в Editable Poly (Редактируемая полигональная поверхность) и все дальнейшие построения вел при помощи инструмента Bevel (Выдавливание со скосом) и перемещения вершин в пространстве. Там, где было необходимо, я добавлял ребра. Углы закруглял с помощью фасок. Зеркало я сделал как отдельный элемент, что позволило получить ровную отражающую поверхность. Элемент, к которому крепится зеркало, был сделан из отдельного параллелепипеда с последующим присоединением его к зеркальному отображению при помощи команды Attach (Присоединить) (рис. 9.93).
Рис. 9.93. Каркасный вид зеркала в окнах проекций
Теперь построим заднюю фару и стекло фары. Эти элементы создаются аналогично, поэтому я опишу только построение задней фары. Я делаю это одним из двух следующих способов. • Строю новый объект Plane (Плоскость) с количеством разбиений, соответствующих примыкающей геометрии. Это делается, чтобы выставить вершины в местах расположения вершин примыкающей геометрии (в частности, крыла и багажника).
Моделируем BMW •
511
Выделяю ребра на крыле и багажнике, чтобы в дальнейшем построить на их основе самостоятельный сплайн (как в случае с обрамлением двери), а уже из сплайна — геометрию. Этот способ хорош, если геометрия вокруг строящегося объекта достаточно сложна и может вызвать затруднения с расположением вершин.
Используя один из вышеописанных способов, постройте заднюю фару, состоящую из двух элементов (один элемент относится к заднему крылу, другой — к двери багажника). После создания геометрии придайте ей толщину. Для этого выделите ребра по периметру и скопируйте их вглубь автомобиля на 20 мм. Для закругления граней примените Chamfer (Фаска) (рис. 9.94).
а
б
Рис. 9.94. Расположение ребер на модели задней фары в окнах проекций Perspective (Перспектива) (а) и Front (Спереди) (б)
Затененные полигоны по периметру фары не что иное, как геометрия, построенная для закрытия щели, образованной между фарой и кузовом (при моделировании фары как отдельного элемента). Теперь перейдем к построению переднего и заднего бамперов. Для создания переднего бампера я использовал наращивание рельефа путем построения новых полигонов (копирование ребер с нажатой клавишей Shift), начиная от арки. Сначала построение велось путем создания общей формы (рис. 9.95, сверху) с последующим уточнением элементов бампера и разбиением его на отдельные части (рис. 9.95, снизу).
Рис. 9.95. Начало построения бампера (сверху) с последующим уточнением геометрии (снизу)
512
Глава 9. Моделип
Решетку, расположенную внутри бампера, постройте из отдельных параллелепипедов с последующим преобразованием в Editable Poly (Редактируемая полигональная поверхность) и уточнением положения вершин относительно всей
;Г:ГТПеаП
па-
Рис. 9.96. Результат визуализации бампера с дополнительными элементами
п " Т ! ± ! " е 1 ! 1 Р ° И Т С Я a Hf°™4Ho переднему. В нем меньше деталей и его го-
щщящш
•
Рис. 9.97. Задний бампер в каркасном виде (сверху) и результат его визуализации (снизу)
— л я ,
н у ж н о
с м о д е
.
Днище и арки автомобиля строились рились как отдельные элементы. Для создания аоок б находящиеся по крТм к крыпереднего и заднего колеса выделите открытые ребра, ла, и скопируйте их внутрь на 1/5 от общей ширины автомобиля. Послее эТго эТго построите ту часть днища автомобиля, иля, которая которая расположена расположена между между арками арками и кузовом Построение ведется ведется, как и прежде прежде, ме методом копирования ребер Затем Р е Н Н И Р О Н Ы ЭР0КП ЛИГ0Н рр заполните П ЛИГ0НаМИ ° < я " Р ° ™ треугольные полигоны в ^ ПР0СТ <<3аК ыть>> их S o l ; JS ° Р ' применив Сар (Накрыть) из свитка Edit Borders (Редактирование границ)). Конечно, при визуализации днища не видно
Г
°
<
л
Моделируем BMW
513
а геометрия арок не критична, так как закрыта колесом, но аккуратность в работе еще никому не мешала. Как выглядит сетка полигонов на днище и в арках автомобиля, представлено на рис. 9.98.
•
Рис. 9.98. Схема расположения полигонов днища и арок в окне проекции User (Пользовательская)
Перейдем к построению дверных ручек. Такие детали автомобиля, как дверные ручки и крышка бензобака, можно моделировать двумя следующими способами. • При первом способе в окне проекции вида перпендикулярного поверхности, на которой нужно построить элемент кузова, строится сплайн, соответствующий по форме этому элементу (например, для крышки бака — прямоугольник с закругленными углами). Затем при помощи построения объекта типа ShapeMerge (Объединенные с формой) этот сплайн проецируется на поверхность. Геометрия становится «разрезанной» по форме сплайна и готова для дальнейшей модификации. Этот способ подходит, когда поверхность, которую нужно «разрезать», не имеет большого количества разбиений, иначе появляется избыточное количество вершин, которые усложняют моделирование. • Второй способ моделирования подразумевает построение всех контуров элемента за счет разрезания полигонов и манипуляции вершинами. Он более трудоемкий, но позволяет получить контроль над всей геометрией строящегося элемента. В данном случае наиболее подходящим будет второй способ из-за избыточного количества горизонтальных ребер в области построения. Начните с построения сплайна по форме будущей ручки двери. Конечно, это делать необязательно, но, создав сплайн, что не отнимет много времени, можно визуально контролировать форму строящегося элемента. Затем, используя сплайн в качестве шаблона, сделайте разрезы полигонов, напротив которых расположен сплайн (рис. 9.99).
514
Глава 9. Моделирование автомобиля
Рис. 9.99. Четыре разреза, выполненные по габаритам сплайна
После этого достройте минимально необходимое количество ребер и вершин для получения закругленных краев. Для этого воспользуйтесь инструментами Cut (Вычитание), Chamfer (Фаска) и Weld (Объединить) из свитка Edit Vertices (Редактирование вершин). На рис. 9.100 представлено расположение ребер, которое получилось у меня.
Рис. 9.100. Схема расположения ребер, формирующих элемент ручки двери
После корректировки формы дверной ручки сплайн, по которому она строилась, можно спрятать или удалить. Можно также спрятать внутренние полигоны ручки, выделив их в отдельный элемент. Далее все как обычно: выделите ребра по периметру образовавшегося отверстия и скопируйте их внутрь. После этого выделите ребра, расположенные на гранях отверстия, и примените к ним инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски) равным 1. После создания отверстия для ручки пора перейти к моделированию самой ручки двери. Для этого откройте ранее спрятанную внутреннюю часть и воспользуйтесь тем же методом копирования полигонов с последующим построением фаски по ребрам, образующим прямой угол. Но прежде разделите внутреннюю часть ручки на два элемента (как это существует в реальном автомобиле) и добавьте посередине нижнего углубление, построив ряд полигонов, смещенных относительно края (рис. 9.101).
Моделируем BMW
515
Рис. 9 . 1 0 1 . Дверная ручка, представленная в каркасном виде в окнах проекций Front (Спереди) (а) и Perspective (Перспектива) (б)
Ручку второй двери моделировать значительно проще. Достаточно скопировать внутреннюю часть уже построенной, уточнить ее положение в пространстве относительно второй двери и затем в окне проекции Front (Спереди) при помощи инструмента Cut (Вычитание) построить по сплайну разрезы в поверхности двери, как это уже делалось для задней двери. После уточнения положения вершин в пространстве выделите внутреннюю часть и удалите. В результате образуется отверстие для ручки. Далее выделите ребра по периметру отверстия и, скопировав их внутрь, придайте объем. Как и раньше, к ребрам, образующим грань, примените Chamfer (Фаска) для их закругления. Расположите внутреннюю часть ручки относительно отверстия и сделайте последние уточнения геометрии, при необходимости подкорректировав положение вершин. Если все проделано правильно, у вас должна получиться ручка двери, показанная на рис. 9.102.
Ш1ЁШ
••
Рис. 9.102. Результат визуализации ручек двери
Когда речь идет о моделировании автомобиля с высокой степенью детализации, многие мелкие детали, представленные в низкополигональной модели текстурами, необходимо строить при помощи геометрии. Займемся моделированием таких незначительных деталей, присутствие которых сделает модель более интересной и реалистичной, — сделаем противотуманные и основные фары, указатели поворота, молдинги и ограждение. Для построения противотуманной фары нужно предварительно смоделировать посадочное место. Для этого выделите элемент решетки переднего бампера и, спрятав все остальное, разрежьте плоскость так, как показано на рис. 9.103, а. Затем, выделив внутренние полигоны, примените к ним команду Extrude (Выдавливание) с величиной -100 (рис. 9.103, б).
516
Глава 9. Моделирование автомобиля
Рис. 9.103. Место для противотуманной фары до выдавливания полигонов (а) и после (б)
После этого выделите наружные грани и сделайте фаску для придания им закругления. Постройте фару, используя примитив Sphere (Сфера) со значением параметра Radius (Радиус) равным 40, а количеством сегментов — 19. Преобразуйте сферу в Editable Poly (Редактируемая полигональная поверхность). На уровне полигонов выделите до середины левую сторону сферы и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), сожмите ее по оси X примерно в четыре раза. Затем снимите выделение с внешнего ряда полигонов (в окне проекции Front (Спереди) или Тор (Сверху), удерживая нажатой клавишу Alt, обведите те полигоны, с которых нужно снять выделение) так, чтобы остались только те, которые в дальнейшем будут образовывать стекло. Примените к выделенным полигонам команду Bevel (Выдавливание со скосом) с размером -1,5 и высотой - 1 . Выделите построенный скос в отдельный объект, используя команду Detach to Element (Отделить в элемент). Увеличив количество разбиений полигонов для обводки вокруг стекла, получим окончательную форму противотуманной фары (рис. 9.104).
ШИН! Рис. 9.104. Внешний вид противотуманной фары в окне проекции Perspective (Перспектива)
Перейдем к моделированию передних фар. Чтобы не повторять сделанную работу, скопируйте противотуманную фару и масштабируйте ее в окне проекции Left (Слева). Блок-фара имеет три самостоятельных рефлектора со стеклами-рассеивателями, значит, копий должно быть три. Они расположены уступами, повторяя форму изгиба стекла, закрывающего блок-фару. Блок-фаре необходимо сделать корпус. Смоделируйте самую примитивную форму, напоминающую корпус фары (рис. 9.105), и на этом можно закончить.
517
Моделируем BMW
Рис. 9.105. Внешний вид блок-фары в окне проекции Perspective (Перспектива)
Вдоль боковых сторон автомобиля расположены декоративные элементы — молдинги. Для их построения нужно создать дополнительные ребра. Сделайте разрез через две двери с заходом на переднее крыло. После этого выделите полигоны, составляющие молдинг, и разделите выделение на отдельные элементы (два на дверях и один на крыле). Создайте фаски. Аналогичным образом сделайте сигнал поворота, расположенный на переднем крыле (рис. 9.106). ff§!~sa Щ~ :
:
:
.
. .
лт*•
Рис. 9.106. Результат визуализации фрагмента автомобиля с элементами боковой отделки
Элементы ограждения на крыше автомобиля можно не моделировать, но если вы хотите это сделать, то самым простым способом будет построение этих элементов при помощи примитива Box (Параллелепипед). Параллелепипед должен иметь 10 сегментов по длине, чтобы можно было сделать закругления на краях и небольшой изгиб по длине. Параллелепипед необходимо конвертировать в Editable Poly (Редактируемая полигональная поверхность) и дальнейшее построение вести на уровне подобъектов. Методом выдавливания полигонов строятся опоры. Там, где необходимо, строится фаска для придания формы (рис. 9.107).
Рис. 9.107. Элемент ограждения на крыше автомобиля
518
Глава 9. Моделирование автомобиля
Дополнительно нужно смоделировать заднюю и передние щетки, номерные знаки, эмблемы и большую часть внутреннего наполнения машины. Все это необходимо, чтобы автомобиль имел законченный вид. Однако это выходит за рамки данного раздела. Если вы прошли все вышеописанные стадии моделирования, для вас не должно составить труда самостоятельное выполнение этих деталей. После создания всех необходимых элементов автомобиля нужно собрать их воедино. Для построения цельного кузова автомобиля примените к построенной половине модификатор Symmetry (Симметрия) или сделайте копию при помощи Mirror (Зеркальное отображение). Таким же образом копируйте все симметричные элементы автомобиля, сделанные как отдельные объекты моделирования. После добавления автомобилю колес, текстурирования и фона вы можете получить изображение, аналогичное показанному на рис. 9.108.
Рис. 9.108. Результат окончательной визуализации автомобиля стандартными средствами с использованием фотографии заднего плана &£)
ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию модели автомобиля, обратитесь к файлу саг.глах, расположенному в папке СНОЭ\Мах\Саг прилагаемого к книге компактдиска, и проанализируйте готовую модель или ее отдельные элементы.
Глава 10
Текстурирование автомобиля • Основы текстурирования автомобиля • Текстурирование деталей автомобиля • Визуализация автомобиля с использованием VRay
520
Глава 10. Текстурирование автомобиля
После построения модели автомобиля необходимо ее текстурировать. Именно удачные текстуры придают модели вид, который может претендовать на реалистичность. Текстурирование — задача не менее сложная и увлекательная, чем моделирование. В данной главе я хочу высказать свою точку зрения на текстурирование модели, в частности, такой сложной, как автомобиль. Для простоты восприятия глава разделена на три раздела. В первом рассматриваются общие вопросы и текстурирование кузова. Второй описывает текстурирование отдельных элементов, и, наконец, третий рассказывает о визуализации автомобиля с использованием подключаемого модуля VRay. Текстурирование неразрывно связано с визуализацией, поэтому речь пойдет и о визуализации, и о текстурировании. Почему именно с визуализацией? Вы когда-нибудь обращали внимание, что на современных компьютерах даже сложная геометрия без текстур визуализируется достаточно быстро? Но стоит ввести в сцену материалы с трассируемыми отражениями, глобальное освещение или мягкие тени, как время визуализации увеличивается в несколько или даже в десятки раз.
Основы текстурирования автомобиля Когда речь идет о текстурировании, прежде чем что-то начинать делать, необходимо определиться, для каких целей нужна модель. Если для игр или Интернета, то лучше всего подойдет низкополигональная модель с качественными текстурами, скрывающими недочеты подобного моделирования (кроме того, модели для визуализации в реальном времени (Real Time)1 чаще всего имеют одну текстуру на весь объект). Если размер (я имею в виду количество полигонов) и время визуализации не принципиальны, то больше внимания стоит уделить качеству модели, материалам и текстурам. При текстурировании модели я придерживаюсь той точки зрения, что все, что можно сгенерировать при помощи процедурных карт и окрасить при помощи материалов, должно быть сделано именно так. Такие материалы дают максимальное качество, возможность быстро изменять параметры и не занимают дисковое пространство. Естественно, все должно быть в разумных пределах. Например, я не стал бы делать регистрационный номер на автомобиле методом моделирования с последующим наложением материалов, если он не будет основной деталью изображения. Не следует уделять слишком пристальное внимание и материалам, находящимся в салоне автомобиля, которые будут едва видны через стекла. Очень часто при попытке сделать реалистичные материалы процессор нагружается настолько, что тестовая визуализация длится часами. Хочу предостеречь вас от этого. Всегда существует возможность оптимизировать сцену. Например, исключить 1
Визуализация в реальном времени применяется в играх и программах, позволяющих интерактивное управление. Суть ее состоит в том, что объекты визуализируются почти мгновенно (без больших затрат времени на просчеты). При этом используются низкополигональные модели, а текстуры не могут быть составными. Они должны иметь небольшой объем и уже сразу содержать тени, отражения и т. д.
Основы текстурирования автомобиля
521
из визуализации колеса, которые расположены с противоположной стороны автомобиля, но у которых протектор на шине состоит из большого количества полигонов, а для диска используется такой материал, как Raytrace (Трассировка), и т. д. Прежде чем приступить к непосредственному выполнению практической задачи, обратимся к теории. Что делает модель автомобиля реалистичной? Прежде всего материалы и отражения, затем свет и тени, которые помогают ощутить объем, и, конечно, окружение. Возьмем две фотографии автомобилей. На рис. 10.1 (см. также цветное изображение chl0_01. jpg на прилагаемом к книге компакт-диске в папке CH1O\JPG) представлена фотография автомобиля с «жесткими» отражениями, что, с одной стороны, привносит некоторый хаос, а с другой — позволяет лучше ощутить пространство.
Рис. 1 0 . 1 . Фотография автомобиля с «жесткими» отражениями
На фотографии видно, как отражаются в капоте деревья, небо, а на крыле и пороге — трава. Такие отражения могут появиться, только если краска покрыта слоем лака и отполирована. Создавая их на вашей модели, нужно иметь в виду, что вся геометрия должна быть построена безукоризненно, иначе в отражениях проявятся все неровности кузова. На второй фотографии (рис. 10.2) у автомобиля более «мягкое» распределение цвета по поверхности. Отражения не такие «жесткие» и почти незаметны, но вместе с тем видна глубина цвета, а выглядит автомобиль ничуть не хуже предыдущего. Судя по тени, падающей от автомобиля, фотография сделана в солнечный день, а отсутствие ярко выраженных отражений говорит о том, что поверхность имеет матовую основу.
522 ГнТмпТ 1 5 " 0 6 р а С п р е д е л е н и е ц в е т а п о поверхности создает целостное восприятие автомобиля, отчего он только р™"ие только выигрывает выигрывает.
Рис. 10.2. Фотография автомобиля с «мягким» распределением отражений
В качестве исходной модели для текстурирования я буду использовать модель BMW пятой серии (рис. 10.3), вы же можете применить другую модель или BMW из предыдущего упражнения по моделированию автомобиля
i . 1 .. '
it*/
Щ
iiili
flfe-
s v
'
"• , * - * * * '
>
—
•?.
•• •
""
"s...
lljtftliitlli
iiiliИНН Рис. 10.3. Модель автомобиля без текстур
• ;
I
F:
Sv \ J . . ; - . "' less
1 >* ill •I
• :
Основы текстурирования автомобиля
523
Начните с расстановки освещения. Это первое, на что нужно обратить внимание при текстурировании. В данном случае вполне подойдет трехточечное освещение с ключевым тенеобразующим источником света. Сразу же настройте свет так, чтобы он не требовал значительной коррекции в процессе работы. Изменения настроек освещения, которые могут потребоваться в дальнейшем, должны быть незначительными, так как свет влияет на восприятие материалов и текстур, что, в свою очередь может потребовать повторной настройки этих компонентов. Прежде чем заняться материалом для кузова автомобиля, присвойте какую-нибудь текстуру плоскости, на которой он стоит. Это может быть земля, асфальт или дорожная плитка, как в моем случае.
ПРИМЕЧАНИЕ Создание плоскости, на которой стоит автомобиль, имеет важное значение для текстурирования. Это связано с тем, что полированная поверхность автомобиля должна отражать окружающие предметы. Часть окружения можно создать при помощи текстурных карт, но поверхность, на которой стоит автомобиль, лучше делать при помощи редактирования на уровне подобъектов, так как, кроме участия в отражениях, она принимает тени от объектов, создавая глубину пространства. Напомню, как присваиваются текстуры объектам. 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке Jj§ , находящейся на панели инструментов, либо выполнив команду Rendering • Material Editor (Визуализация • Редактор материалов), либо нажав клавишу М. 2. В окне Material Editor (Редактор материалов) щелкните на любой незадействованной ячейке с образцом материала. 3. В свитке Maps (Карты текстур) нажмите кнопку None (Отсутствует) рядом с картой Diffuse Color (Цвет рассеивания). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). В результате откроется окно Select Bitmap Image File (Выбор растрового изображения). 5. Выберите текстурную карту с изображением плитки. В данном случае будет рассмотрено создание материала для кузова и лобового стекла автомобиля, поэтому все остальные объекты можно убрать со сцены, чтобы исключить их визуализацию. На рис. 10.4 представлены объекты сцены, с которыми мы будем работать. Теперь создайте простой материал для кузова следующим образом. 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке ®§ ( находящейся на панели инструментов, либо нажав клавишу М. 2. Щелкните на любой незадействованной ячейке с образцом материала.
524
Глава 10. Текстурирование автомобиля
3. В качестве тонированной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения) строку Multi-Layer (Многослойная раскраска).
Рис. 10.4. Кузов автомобиля, подготовленный для текстурирования
ПРИМЕЧАНИЕ Можно воспользоваться и другой тонированной раскраской, например Phong (По Фонгу), но в таком случае придется в качестве цвета рассеивания применять карту Falloff (Спад), а у Multi-Layer (Многослойная раскраска) данная возможность заложена в базовых параметрах. Именно эта тонированная раскраска лучше всего позволяет управлять двумя независимыми подсветками и создавать вид окрашенной поверхности, покрытой воском или лаком. В свитке Multi-Layer Basic Parameters (Основные параметры многослойной раскраски) задайте значения параметров раскраски, показанные на рис. 10.5. Mufti-layer B*sic Parameteis SetMBumiration
J»
Diffuse Diffuse ШЛА 120 :
Г ' Opacfy; Roughness: fo
\m"i I
M
r Fitst Specular Layer
Color £* Level [51 |
:
Glossiness f34
t;
:!
AnisO»roB>: f32
J
!I
OlBntefo«: fti
|j
•
; S econd Spenjlat Lejiet -
It
Colo»: 1
p—4 VM:::-.
Glossiness fo
ismm J35 R Oiienlafcm
.••• •••:i
;
ij f "
Рис. 10.5. Свиток Multi-Layer Basic Parameters (Основные параметры затенения) со значениями параметров раскраски
Основы текстурирования автомобиля
525
Задайте для параметров цвета свитка Multi-Layer Basic Parameters (Основные параметры затенения) следующие значения: • Ambient (Цвет подсветки): Red (Красный) — 17, Green (Зеленый) — 36, Blue (Синий) - 54; •
Diffuse (Цвет рассеивания): Red (Красный) — 3, Green (Зеленый) — 59, Blue (Синий) - 129;
• Color (Цвет) в области First Specular Level (Первый слой отражения): Red (Красный) - 200, Green (Зеленый) - 191, Blue (Синий) - 237; • Color (Цвет) в области Second Specular Level (Второй слой отражения): Red (Красный) - 82, Green (Зеленый) - 116, Blue (Синий) - 227. Обратите внимание, что вряд ли вид визуализированного вами автомобиля будет в точности соответствовать тому, что получится у меня. Я никогда не копирую старые настройки материалов, так как в другой сцене они обычно выглядят иначе. В связи с этим попробуем разобраться с настройками этого материала, чтобы понять, как он работает, и уметь создавать такие материалы самостоятельно. Цвет диффузного рассеивания Diffuse (Цвет рассеивания) — основной цвет, определяющий цвет материала. От него зависит то, какого цвета будет кузов автомобиля. Выбирается из возможных цветов заводской раскраски. Цвет окружающей среды Ambient (Цвет подсветки) — это обычно цвет, совпадающий с цветом диффузного рассеивания, но я предпочитаю использовать более темные тона (чаще всего черный). Параметры этого цвета не критичны. Параметр Color (Цвет) в области First Specular Leyer (Первый слой отражения) определяет глянец поверхности автомобиля. Он создает впечатление окрашенной поверхности, находящейся под слоем лака. По тону он должен быть близок к цвету диффузного рассеивания, но значительно ярче его. Параметр Color (Цвет) области Second Specular Layer (Второй слой отражения) задает цвет в местах бликов. Он должен содержать в себе цвет диффузного рассеивания, но стремиться к белому. Остальные параметры — Level (Уровень), Glossiness (Глянец), Anisotropy (Анизотропия) и Orientation (Ориентация) — могут различаться в зависимости от геометрии и источников света. В основном они контролируют положение и размер бликов на поверхности объекта. Счетчик Diffuse Level (Уровень рассеивания), который расположен под параметром цвета диффузного рассеивания, позволяет дополнительно контролировать уровень яркости основного цвета. Кроме этого, вы можете применить в качестве карты Reflection (Отражение) карту Falloff (Спад) (рис. 10.6), использующую в качестве подматериала карту Raytrace (Трассировка). Материал усложняется картой Falloff (Спад) в качестве карты Reflection (Отражение), но с ее помощью можно получить контроль над интенсивностью отражений на поверхности. Настройки этой карты представлены на рис. 10.7.
526
Глава 10. Текстурирование автомобиля
««color. ...|Т0Г:
None Hone
\ P Refection Щ~ % ; Г Refraction ... Щ" S УС Displacement . J100 ' *
Map «78 j Faltaft ) None More
Рис. 10.6. Фрагмент свитка Maps (Карты текстур) с картой Falloff (Спад) в качестве карты Reflection (Отражение)
•S«fe None jg., ,,д ] |86.0 '•$} Fate» 1 ц ж
Map #78 f Каунасе j Pwpendicular / Parallel
[viewing Direction (Camera Z-Axis) ^ J Mode
I
:
MixCuve
Рис. 10.7. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)
Цвета области Front: Side (Перед: сторона) — градации серого такие, как и на рис. 10.7. График Mix Curve (Кривая смешивания) определяет степень участия обеих карт в отражении по мере удаления от середины объекта к его сторонам. Настройки карты Raytrace (Трассировка), являющейся составной частью карты Falloff (Спад), представлены на рис. 10.8. Они не имеют почти никаких изменений относительно установок по умолчанию, кроме цвета окружающей среды в области Background (Фон), который я сделал светло-голубым. После создания и настройки материала можно применить его к элементам кузова автомобиля. Для этого щелкните в окне Material Editor (Редактор материалов) на ячейке образца материала кузова и перетащите его в окно проекции на объект,
Основы текстурирования автомобиля
527
который надо текстурировать. Затем можно провести тестовую визуализацию. Для этого выполните команду Rendering • Render (Визуализация • Визуализировать). В появившемся окне Render Scene (Визуализация сцены) выберите окно проекции и щелкните на кнопке Render (Визуализировать). В результате получится визуализированное изображение кузова автомобиля с материалом (рис. 10.9). Local Options
Raytiace» Patameteis Ttace Mode
Enable Raytracmg
С Auto Detect
Raytrace Atmospherics
*
Enable Self Reflect / Retract Reflect / Redact Metenal IDs
Refection
<" Redaction Locai Exclude..
Рис. 10.8. Свиток Raytracer Parameters (Параметры трассировки) настроек карты Raytrace (Трассировка)
Рис. 10.9. Визуализированное изображение с примененным материалом для кузова
Вполне возможно, вы обратили внимание, что на моем изображении отсутствуют блики. Пусть это вас не смущает — просто я отключил их в настройках источников света. Я предпочитаю выставлять блики позже при помощи специально созданных для этого источников света, когда можно управлять их местоположением на поверхности объекта и интенсивностью вне зависимости от основных источников света. Проанализируем то, что получилось при визуализации. Цвет покрытия кузова соответствует тому, который предполагался для этого материала, но отражений попрежнему не хватает. Появились отражения на боковых дверках, бампере и немного на капоте, но этого мало для реалистичной модели. Чтобы усилить ощущение пространства, нужно добавить отражения кузову автомобиля.
528
Глава 10. Текст\ фирование
•
•
. •
iiiii
•
Рис. 10.10. Отражения, полученные при помощи карты окружения
Можно создать окружение, то есть построить дополнительно геометрию (деревья здания, людей и т. д.), которые будут отражаться в кузове и стеклах—~ -•-
•
:.::,,'"•
>Ц
Рис. 1 0 . 1 1 . Отражения на капоте, полученные от объектов сцены
Можно Можно построить построить полусферу, полусферу, накрывающую накрывающую автс автомобиль на значительном расстоявнутрь поместилась не только машина, нии (чтобы вн ^SZ^S
Основы текстурирования автомобиля
529
Рис. 10.12. Взаимное расположение объектов сцены при построении отражений от поверхности полусферы
Последний способ — организовать в сцене дополнительные плоскости с текстурами, которые будут отражаться в кузове автомобиля. Он допускает относительную свободу в распределении отражений по поверхности кузова автомобиля и их контроль. Именно четвертый метод будет рассмотрен немного позже как самый подходящий для этой задачи. Сейчас создадим еще один материал — стекло. Это позволит настраивать отражения не только на кузове, но и на стеклах автомобиля, которые также являются отражающей поверхностью и занимают значительное место в восприятии целостного изображения. Можно использовать прозрачное стекло, но я предпочитаю немного тонированное, чтобы скрыть объекты салона, сделанные с малым количеством полигонов и не перегружающие сцену. И лобовое, и заднее стекла имеют темную обводку по периметру, поэтому начните работу с присвоения этим объектам текстурных координат. Рассмотрим данный процесс для лобового стекла (для заднего он аналогичен). Выполните следующие действия. 1. В любом окне проекции выделите лобовое стекло (должно быть отдельным объектом или, как минимум, самостоятельным элементом с уникальным значением параметра ID (Идентификатор материала)). 2. Добавьте модификатор Unwrap UVW (Расправить UVW-проекцию), выполнив команду Modifiers • UV Coordinates • Unwrap UVW (Модификаторы • UV-координаты • Расправить UVW-проекцию). 3. Щелкните на кнопке Edit (Редактирование) в свитке Parameters (Параметры) настроек модификатора на командной панели, в результате чего откроется окно редактирования текстурных координат. 4. В меню окна редактирования текстурных координат выполните команду Mapping • Flatten Mapping (Проекционные координаты • Плоские проекционные координаты) и, не меняя настройки в появившемся окне, нажмите ОК. В результате этих операций в окне редактирования должна появиться развертка лобового стекла (рис. 10.13).
530
Глава 10. Текстурирование автомобиля
Рис. 10.13. Развертка проекционных координат лобового стекла автомобиля
Полученную развертку необходимо скопировать в любую программу, работающую с растровыми изображениями, где вы сможете сделать карту маски (например, Adobe Photoshop). СОВЕТ Если вы не пользуетесь программами захвата изображения с экрана, то можно скопировать при помощи буфера обмена, нажав клавишу Print Screen (расположена справа от ряда функциональных клавиш), и затем вставить экранную копию в файл при помощи сочетания клавиш Ctrl+V. Кроме того, можно воспользоваться инструментом Render UV Template (Визуализация образца UV) из меню Tools (Сервис) окна Edit UVWs (Редактирование UVW).
Используйте скопированное изображение в качестве слоя фона в программе растровой графики и сделайте маску для лобового стекла. Если помните, по периметру стекла идет темная, почти черная тонировка — именно ее необходимо сделать, создав отступы на небольшое расстояние от краев контура стекла (рис. 10.14).
щ
щя 1
Рис. 10.14. Текстурная маска для материала лобового стекла
Сохраните полученное изображение в цветовом режиме Grayscale в любом доступном формате.
Основы текстурирования автомобиля
531
В качестве материала для лобового стекла я использую Blend (Смешиваемый), где первый материала — тонированная окантовка стекла, второй — стекло, а маска (созданный в программе Adobe Photoshop файл G l a s s F r o n t . j p g ) управляет долей каждого материала в результирующем (рис. 10.15). 3 1 ; Blend
Material Я?М | Standard) R
i»
с МфОД(51шРмм.|>9)| P f
Interactive
Рис. 10.15. Настройки материала Blend (Смешиваемый) для лобового стекла
Рассмотрим материал стекла подробнее. Параметр Material 1 (Материал 1) определяет окантовку лобового стекла. Здесь используется материал Standard (Стандартный) с прозрачностью 80 и цветом, соответствующим тому, который вы хотите видеть на краях стекла. У меня это серо-коричневый цвет для Diffuse (Цвет рассеивания) и для Ambient (Цвет подсветки) с такими настройками: Red (Красный) — 107, Green (Зеленый) — 103, Blue (Синий) — 99. В качестве карты отражения я использовал карту Falloff (Спад), настройки которой идентичны установкам такой же карты, использованной при создании материала кузова, с той разницей, что величина параметра Reflection (Отражение) в данном случае составляет 45 (рис. 10.16).
Рис. 10.16. Настройки первого материала стекла
532
Глава 10. Текстурирование автомобиля
Параметр Material 2 (Материал 2) — средняя часть лобового стекла (его заполнение). Материал сделан по тому же принципу, что и окантовка, с той лишь разницей, что я использовал немного другой цвет, и величина прозрачности здесь составляет уже 35, а отражения — 80. Для Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) заданы следующие значения: Red (Красный) — 83, Green (Зеленый) — 72, Blue (Синий) — 49. Кроме того, я использую двусторонний материал, а в качестве тонированной раскраски стандартного материала — Phong (По Фонгу), и хотя большой разницы нет, раскраска по Фонгу позволяет получить более мягкое сглаживание. Если вы внимательно посмотрите на свиток Maps (Карты текстур), то заметите, что отсутствует карта преломления в строке Refraction (Преломления). Хотя стекло и является материалом, преломляющим свет, проходящий через него, но из-за его незначительной толщины и с учетом расстояния, с которого автомобиль будет визуализироваться, я не считаю нужным использовать в данном случае преломления. Эффект от их применения почти незаметен, а процессор получает ощутимую дополнительную нагрузку. При желании вы можете поэкспериментировать, используя карту Raytrace (Трассировка) или Reflect/Refract (Отражение/преломление). На рис. 10.17 показаны использованные мною настройки второго материала для лобового стекла автомобиля.
5рейЛ*Level " ,, SeR*n; ГОНГ %
г
ЯеЯве&я.,,,,рГ-;'
•ш^йШтшФг&г'*:
TesttT (FaWfJ
ZZ~—
I TF
1 II
Рис. 10.17. Настройки второго материала стекла
Продолжим разговор об организации сцены и вернемся к отражениям. Дальнейшую работу продолжите, используя четвертый способ получения отражений при помощи дополнительных плоскостей. Для этого поместите в сцену несколько примитивов Plane (Плоскость): один должен быть расположен сверху (имитировать небо), оставшиеся (от четырех до восьми) располагаться по сторонам автомобиля. Все плоскости должны находиться на небольшом расстоянии от автомобиля (рис. 10.18).
Основы текстурирования автомобиля
533
Рис. 10.18. Расположение плоскостей с текстурами отражения в окнах проекций программы 3ds Max
При создании плоскостей не забудьте проследить, чтобы их нормали были обращены к автомобилю. После этого присвойте плоскостям текстуры с изображениями, которые будут отражаться в автомобиле. Для всех плоскостей, кроме плоскости неба, я использовал одну фотографию, хотя можно и разные — дело вкуса. Перед визуализацией необходимо изменить параметры всех плоскостей. Для этого выполните следующие действия. 1. В любом окне проекции выделите все плоскости, построенные для генерации отражений. 2. Щелкните правой кнопкой мыши на выделении, в результате чего откроется контекстное меню. 3. Выберите пункт Properties (Свойства). 4. В области Rendering Control (Управление визуализацией) появившегося окна Object Properties (Свойства объекта) задайте параметрам объекта значения, показанные на рис. 10.19. Теперь можно провести тестовую визуализацию. Если использовались темные фотографии, то вам, возможно, понадобится скорректировать положение текстур и изменить значение параметра Self-Illumination (Собственное свечение). Иногда приходится менять положение плоскости, имитирующей небо, чтобы найти оптимальные отражения.
534 <•• Rendering CcHtitol VisKSty: j T 5 t W Renderable P Inheiit Visibility j Г VisHeloCamaa
Глава 10. Текстурирование автомобиля By Object
P Visible to Reflection/Redaction P* Receive Shadows • Г Cast Shadows P App^ Atmospherics Г Rends GcdudesJObjects j-G-Buffer j Obieot Channel: fo
%
Рис. 10.19. Настройка плоскостей отражения в области Rendering Control (Управление визуализацией) окна Object Properties (Свойства объекта)
После добавления плоскостей я поместил в сцену один источник света, который создает блики на бампере и передней части капота, а также дополнил автомобиль некоторыми деталями и провел тестовую визуализацию. На рис. 10.20 показано получившееся у меня изображение.
Рис. 10.20. Результат визуализации кузова и стекол автомобиля с отражениями
На рис. 10.20 изображена только первая тестовая визуализация. Чтобы получить хорошие реалистичные отражения, нужно не только подобрать соответствующие текстуры, но и правильно их разместить относительно поверхности автомобиля. Желательно, чтобы текстуры и их отражения соответствовали окружающей среде вашей сцены. ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке по адресу СН10\Мах находится файл Carjnaterials.mat, содержащий материалы кузова и стекла.
Текстурирование деталей автомобиля В предыдущем упражнении я постарался описать создание основных материалов для текстурирования модели автомобиля. Сейчас займемся созданием материалов
Текстурирование деталей автомобиля
535
для более мелких, но не менее важных деталей. Начнем с хромированных деталей кузова. Материал хрома хорошо получается тогда, когда он имеет не просто карту текстуры в качестве отражений, а действительно отражает окружающие предметы. Как вариант, можно использовать плоскости с текстурами для создания отражений, о чем говорилось в предыдущем упражнении. Для создания хрома выполните следующие действия. 1. Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке <*|* , находящейся на панели инструментов, либо нажав клавишу М. 2. Щелкните на любой незадействованной ячейке с образцом материала. 3. В качестве тонированной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения) строку Strauss (По Штраусу) (рис. 10.21). ^
|Chromrum_Details
^J
Standard
i.
Shader Basic Parameters ^
J Strauss
Г
Г
FaseMap
Faceted
Straus» Basic Parameters Соки: [ г Glossiness:! 80
|
i{
j
аШ
Metafrwss: rSb~~ t j
Extended Parameters SupeiSampeng Мэр* Amount |ГСок».,.. , Г Sfossine»
Мер None None None Nor* Hme time
Рис. 1 0 . 2 1 . Настройки материала хрома
Выбранный метод раскраски по Штраусу предназначен для имитации полированных металлических поверхностей с блеском. Особенность данного метода заключается в том, что в местах, где нет отражений, поверхность выглядит черной (это необходимо для передачи материала хрома). Для параметра Color (Цвет) этого материала я использовал светло-серый цвет, который, на мой взгляд, лучше всего подходит для правильной передачи хромированных деталей автомобиля.
Глава 10. Текстурирование автомобиля
536
Отражения генерируются картой Raytrace (Трассировка) с настройками по умолчанию. Имеет значение только величина параметра Reflection (Отражение). У меня это значение равно 60, у вас оно может быть другим (зависит от источников света и текстур, использованных для генерации отражений). После применения материала к хромированным объектам автомобиля можно сделать тестовую визуализацию фрагмента кузова с решеткой радиатора (рис. 10.22).
•IMlilM— Рис. 10.22. Результат визуализации хромированной решетки радиатора
Теперь рассмотрим карты выдавливания. На капоте и багажнике автомобиля находятся две эмблемы BMW, которые расположены в небольших углублениях кузова. Моделировать такие углубления при помощи геометрии нецелесообразно, а при помощи карты Bump (Рельефность) это можно сделать просто и быстро. Чтобы создать текстуру с картой выдавливания, выполните следующие действия. 1. Щелкните в окне Material Editor (Редактор материалов) на образце материала кузова и, удерживая нажатой кнопку мыши, перетащите его в свободную ячейку. 2. Присвойте этот материал капоту, перетащив его из Material Editor (Редактор материалов) на капот автомобиля в любом окне проекции. Если сейчас выполнить визуализацию, ничего не изменится, так как на капоте будет тот же материал, что и раньше. 3. В строке Bump (Рельефность) свитка Maps (Карты текстур) настроек материала капота щелкните на кнопке None (Отсутствует). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Усовершенствованный градиент). 5. Настройте параметры карты, как показано на рис. 10.23. 6. Установите значение величины выдавливания равное 6. Разберемся с настройками этой карты. Значение Radial (Радиальный) в списке Gradient Type (Тип градиента) необходимо, чтобы градиентная карта получилась в виде круга. Это карта выдавливания, поэтому используются градации серого цвета. Положение ползунков зависит от размера круга и текстурных координат, присвоенных капоту.
Текстурирование деталей автомобиля
537
|Мар)Шв Coordinates: *
Tenure f
Ermron Mapping: I Explicit Map Channel
(7 Show Map on Back Г Use Reaf-WorH Seeks Odse) Tins
MworTfe
u:foo—:: f T o " ; J Г Г V:f5j5
Jj pTJO
t\ Г
Г
jf
Ande
U:fao
;;
V:|O0
Jj
W; 1E
* UV Г VW. С WU Blw: [33
I °
i j Slur offset [OT05
^*| Z\
Map Channel 12
;j
U
Rotate }
..„..•.,
mz
Giadient Type: I Radial
R=70.G»7S5.B-7O.Po$-O
»| Intepolation: fTinear
Рис. 10.23. Настройки карты Gradient Ramp (Усовершенствованный градиент) для получения круглого выдавливания на капоте автомобиля
Для сглаживания краев применяется размытие. Отключите повторение текстуры, так как у вас только один круг с выдавливанием (снимите флажки Tile (Повторить) в свитке Coordinates (Координаты)). Что касается текстурных координат, то нужно применить к капоту модификатор UVW Map (UVW-проекция), после чего сдвинуть и масштабировать Gizmo (Габаритный контейнер) (на уровне подобъектов модификатора) так, чтобы текстура легла на капоте под значком логотипа (рис. 10.24).
Рис. 10.24. Положение текстуры на капоте автомобиля (а) и его визуализация (б)
Этот способ можно использовать и для других целей, например обозначить крышку бака или сделать на бампере элементы крепления. Таким образом вы сможете улучшить внешний вид модели, не прибегая к дополнительной геометрии. Рассмотрим вариант изготовления материала для передних и задних фар.
538
Глава 10. Текстурирование автомобиля
СОВЕТ Если в сцене фары не будут видны слишком близко, то вполне достаточно будет просто наложить текстуру. Однако если вы хотите иметь по-настоящему хорошее изображение, то придется моделировать почти все элементы реальной фары.
Начнем со стекла, закрывающего блок-фару (у вас может быть другая модель автомобиля, без такого стекла), — прозрачного и гладкого по всей поверхности. Исходя из этого, создадим простой прозрачный материал с высокой отражающей способностью для получения на поверхности бликов. В качестве тонированной раскраски стандартного материала из раскрывающегося списка свитка Shader Basic Parameters (Основные параметры затенения) выберите строку Anisotropic (Анизотропный). Я использовал анизотропную раскраску из-за ее возможности управлять положением и формой блика. Настройки материала стекла представлены на рис. 10.25. JGIass Top
3»andaid
Shader Basic Fajameteis Г Wire
Г 2-Sided
Г" Face Map Г" Faceted AntsoSropic В asic Paameteis SelHHurwiation : Г Color Jo
1
;
QpacitF j
Specular Level: |33
Jj
Slossiness f23
ij
Anisotropy: (To
;I
Orientation: (7~ Extended Parameters SuperSampJtog Map
i" F FilterColor .. . . П я Г : .
МзрШЭД tFaloff)
j
I
"ГВитр., ..рГ~; 5 R Reflection . ... JT5 i r- O J , J _ ГТпгг".!
None MspJ152 JfaWf] 'и—,
j j i
I I il
РИС. 10.25. Настройки материала наружного стекла блок-фары
В качестве Diffuse (Цвет рассеивания) и окружающей среды Ambient (Цвет подсветки) использован светло-коричневый цвет с настройками Red (Красный) — 101, Green (Зеленый) — 92, Blue (Синий) — 77. Можно было на этом закончить настройку материала, но я решил немного улучшить его, добавив в качестве цветового фильтра карту Falioff (Спад). Даже со стандартными настройками эта карта позволяет получить затемнения на краях, что придает стеклу более естественный вид. При
Текстурирование деталей автомобиля
539
помощи карты Raytrace (Трассировка) можно создать на поверхности отражения окружающих предметов. В этой карте настройки также не менялись. На рис. 10.26 показан результат визуализации фрагмента автомобиля со стеклянными фарами.
Рис. 10.26. Результат визуализации стекла фар
Займемся внутренним пространством фары. Начните с указателей поворота. Воспользуйтесь стандартным материалом, для чего выберите в окне Material Editor (Редактор материалов) ячейку со свободным образцом. В свитке Maps (Карты текстур) используйте две одинаковые карты Gradient Ramp (Усовершенствованный градиент) в качестве карт Diffuse Color (Цвет рассеивания) и Bump (Рельефность). Настройки карты, которую использовал я, показаны на рис. 10.27. '•-•Л ;
SradenlRamp
Mapping, j Planar fiom Gbiecl Xrt! _^J I
" Use Real-Wotd Scale OHset Tling
Minor Tile
Angle
• njM i j | l b ' ' " ' |J Г P= x|'o'.b • Y;|trji -j jTo ; j г w v-Щ Z: * ж r YZ r a Po
Blui: (To
; j Sluiollset: fo!5
Eradisnl Tfpe: Linear
J:
Rotate
:; \ : ? '
^ J Inlstpofatiori j Solid
Рис. 10.27. Настройки улучшенного градиента для карт Diffuse Color (Цвет рассеивания) и Bump (Рельефность)
Величина выдавливания этой карты в свитке Maps (Карты текстур) в моем случае равна 190. Параметры для использованных в градиенте цветов: светло-коричневый: R=22O, G=124, В=0; темно-коричневый: R=126, G=59, B=0. Обычно этих настроек более чем достаточно (рис. 10.28), но если вы хотите визуализировать отдельные элементы автомобиля, то вам, возможно, придется улучшить карту выдавливания, сделав более сложный градиент. Чтобы получить реалистичное изображение фары, нужно иметь рифленое стекло, хромированный корпус и нечто вроде лампочки (вместо нее может быть использован хромированный шар). Материал хрома у вас уже есть, поэтому повторяться не буду.
540
Глава 10. Текстурирование автомобиля
Если вы выполняли упражнение по моделированию автомобиля, то должны помнить о том, что модель фары состояла из корпуса, стекла и хромированной окантовки. Стекло — это полусфера, у которой в параметрах отключена возможность принимать и отбрасывать тени. Чтобы задать данные настройки, щелкните правой кнопкой мыши на объекте стекла фары и в появившемся контекстном меню выберите пункт Properties (Свойства). В области Rendering Control (Управление визуализацией) открывшегося окна Object Properties (Свойства объекта) снимите флажки Receive Shadows (Принимать тени) и Cast Shadows (Отбрасывать тени). На рис. 10.29 представлены настройки материала рифленого стекла для автомобильной фары.
Рис. 1 0 . 2 8 . Фрагмент фары с указателем поворота
'j
, JMaterral«223
| '.
Standard
Shader Basic ParamelKS
Ъ
' (вКГ—
Г Wire
Г
Z-Sded
Г Face Map Г" Faceted
:
i
:I
BtaBsttfa,m l » ^™^i
< • _
Sen I».™ ncJHpn
1 •
OMuse:
pr-j
-Sr»oularHighlighls Specular Uve& Г И Г t Sbssness: [ 7 § ~ : Softer: foT" t j Paramelers |
Advanced Transparency •• •• -•
1 < FiM «IB f Out AntfO Jj
* File: r Sub!rsctwe Г
-
Wire • Size: In
••RefleclicnDimming ™•
GilsUveSfCHJ
tj
Flail.Level Щ
C;
Maps Afnount
j I? Bunp Г" Вейесйот P Rerraclion
Рис.
Map
[250";
Map«59 (Checker 1
- jlOO t (25 i
None Map #56 (Raj*aoe)
10.29. Настройки материала стекла автомобильной фары
541
Текстурирование деталей автомобиля
Для Diffuse (Цвета рассеивания) и Ambient (Цвет подсветки) использован светлосерый цвет. Коэффициент преломления оставлен заданным по умолчанию, но при желании его можно увеличить до 2. Величина параметра Opacity (Непрозрачность) равна 50. Здесь тоже могут быть варианты, но разница значений должна быть небольшой. Чтобы получить на стекле рифленую поверхность, необходимо использовать в качестве карты Bump (Рельефность) карту Checker (Шахматная текстура). Параметры этой карты представлены на рис. 10.30. jjj
|Мар Й59
Sump:
Checker
Coordinates & Textile **" Environ Mappaisfl Explicit Map Channel
^J
W bhc/vvlv^p огчВзск
z\
Г
Map Channel: 11
W*#Re«WerMSe4ifc Ofeat Ting
Mirror Tile
F
Angle
U: j o.o
' ; ] I'i'i'.o"
ij Г
v:foo
:J Щ
:j г F v-Щ
* uv г vw f wu
и:|'щГ W:(oo
^ j Btir offset: fOXi
^J
Rotate
tj
г\ 5J i
Nase Checket Parameters Soften;
|0.0
Jj
Maps
Color 81:
None
Color tit
None
\F
Рис. 10.30. Параметры карты рельефности для стекла фары
В свитке Checker Parameters (Параметры шахматной текстуры) цвет Color #1 (Цвет 1) черный, a Color #2 (Цвет 2) — белый.
ПРИМЕЧАНИЕ Для карты Bump (Рельефность) обычно используется монохромное изображение (хотя может быть применена цветная карта). При этом 100 % черный цвет не влияет на величину выдавливания, в то время как белый создает максимальный эффект. Градации серого находятся между максимальным и минимальным выдавливанием в зависимости от интенсивности цвета. Величина эффекта рельефности при использовании карты Bump (Рельефность) ограничена, в связи с чем при необходимости большего выдавливания применяйте модификатор Displace (Смещение) или моделирование неровностей.
Вы можете задать свое количество повторений шахматного поля по вертикали и горизонтали (в поле Tiling (Повтор)), а также использовать любое графическое изображение рельефа в качестве текстуры. Эта же карта (рельефности) должна быть использована как составляющая карты Raytrace (Трассировка) для преломлений (рис. 10.31).
542
Глава 10. Текстурирование автомобиля
Refraction:
[Мар«56
Local Options F
Raytace arameters Trace Mode ^
Enable Raytracing
Auto Detect
** Reflection ! j 9
*
H e f t a d e n
Reflect / Refract Mateaal IDs
-Background f
Use Environment Settings
r R ay Antialiasing Globa|i Disabled
Рис. 1 0 . 3 1 . Параметры трассировки для карты Refraction (Преломление)
При текстурировании фары я пытался приблизиться к внешнему виду фар автомобиля BMW. Вам, возможно, понадобится делать другую форму и другие текстуры, если вы работаете с другой моделью или автомобилем другой марки. СОВЕТ Более сложный рисунок неровностей можно получить, используя рисованные карты выдавливания.
На рис. 10.32 показана визуализация фар после применения к ним материала стекла и хрома.
Рис. 10.32. Результат визуализации фар
Теперь можно визуализировать всю блок-фару вместе с геометрией кузова. Возможно, вам придется скорректировать интенсивность освещения или немного изменить параметры материала фары. Окончательная настройка материала проводится в процессе визуализации всех элементов автомобиля в целом. На рис. 10.33 представлен результат визуализации фрагмента передней части текстурируемого автомобиля.
Текстурирование деталей автомобиля
543
Рис. 10.33. Результат визуализации блок-фары вместе с передней частью автомобиля
Теперь займемся задними фарами. Из-за того, что форма рельефа этих фар значительно сложнее, чем передних, придется рисовать текстуру выдавливания. Но прежде нужно присвоить элементам текстурные координаты. Обычно я использую модификатор Unwrap UVW (Расправить UVW-проекцию). О том, как это делается, говорилось в предыдущем упражнении на примере лобового стекла, поэтому я лишь напомню последовательность работы. 1. Выделите заднюю фару (достаточно одной, затем можно будет сделать зеркальную копию относительно оси автомобиля). 2. Примените к выделению модификатор Unwrap UVW (Расправить UVW-проекцию). 3. Выполните развертку текстурных координат. 4. Сделайте снимок окна с разверткой при помощи клавиши Print Screen или любой программой захвата изображения экрана. 5. Вставьте изображение в нижний слой программы редактирования растровой графики (например, Adobe Photoshop) и создайте карту выдавливания. 6. Сохраните монохромное изображение в формате, доступном программе 3ds Max, например PNG (рис. 10.34). * * * * * *
* н
• !
••»••<
tilm
Рис. 10.34. Карта выдавливания для задней фары автомобиля
Форма и рисунок карты рельефа должны соответствовать задней фаре настоящего автомобиля. Кроме карты рельефа для материала стекла задней фары вам понадобятся две маски. Они необходимы, чтобы разделить цвета, присутствующие в фаре. Одну маску сделайте при помощи карты Gradient Ramp (Усовершенствованный градиент), а вторую выполните в виде черно-белого изображения в программе Adobe Photoshop. Первая будет разделять цвета по горизонтали, а вторая выделит белый (рис. 10.35).
544
Глава 10. Текстурирование автомобиля
Рис. 10.35. Маска для разделения цвета, выполненная в программе Adobe Photoshop
Данный материал будет немного сложнее предыдущих, но принцип его создания такой же. Как и в случае с передней фарой, нужно позаботиться, чтобы задняя фара имела корпус с хромированным материалом, а стекло не отбрасывало тени. Обычно внутреннее пространство корпуса фары разделено на части перегородками и, если выполнить их моделирование, можно улучшить вид будущей модели. Если вы не планируете визуализацию крупных планов, то моделировать внутреннее пространство не обязательно. На рис. 10.36 представлено изображение фрагмента окна Material Editor (Редактор материалов) с материалом стекла задней фары. «^ JBackJJ
(10)
Sta
3
S hader В asic Pafametas "7j Г Wue
j Phong
Tda"}.
I
P 2-Srfed
Phong Basic Paiameteis ite.r Self Ilkimmalion Ambient. Diffuse: Specula: "SpeafaHighiohts Glossiness: [ « P С Soft» f o T " ;
Faftjlf * in
Type: * R»« , '
С ОН Act».|0 t
j M
г SubKaolivs <~ Additive
IndesofReftaotran Г ? Г" Apply
Dim Level foil
»J
Stze-ГГсГ"; Pisel ' In: * <" Units
Relt Level: fTo
tj
Map
I F RKerCotol PIW"*: Mapt»178 ( M » l | P Bump j -70 ; bimp}8ack_Li3hl^Bump!PS>! Г Beflert'on . . . рГШ" : None '
17 Refraction
160 С
-
.. . .
л-....
Map 8175 (Baj*aceJ
.:
j
Р и с . 1 0 . 3 6 . Параметры материала стекла задней фары
Текстурирование деталей автомобиля
545
Рассмотрим более подробно, из чего состоит этот материал и его основные настройки. •
Значение параметра Index of Refraction (Коэффициент преломления) равно 2,5. Обычно для стекла это много, но с таким коэффициентом оно смотрится лучше.
•
Filter (Цвет фильтра) определяет цвет всего объекта. Цвет фары состоит из двух основных: красного и оранжевого, поэтому для их взаимного расположения на объекте использована карта Mix (Смешивание).
•
Карта Bump (Рельефность) создает на поверхности рельеф. Это монохромное изображение, созданное вами в программе Adobe Photoshop.
•
Карта Refraction (Преломление) делает стекло прозрачным.
Рассмотрим карту отдельно. В качестве цвета фильтра я решил использовать составную карту, хотя проще сделать трехцветную растровую карту. Проще, но не лучше, так как в процессе настройки материала такую карту приходится нескольку раз переделывать: в зависимости от настроек материала и освещения меняется цвет объекта при визуализации. Параметры карты цветового фильтра Mix (Смешивание) показаны на рис. 10.37. filtetColor:
Swap Mix Amount;
j i Map«17? (GradientRamp ]j|7 \
Рис. 10.37. Параметры первой карты смешивания
Эта карта разделяет геометрию на две части при помощи Gradient Ramp (Усовершенствованный градиент) (рис. 10.38). В верхней части — оранжевый цвет (параметр Color #1 (Цвет 1)) с настройками Red (Красный) — 244, Green (Зеленый) — 147, Blue (Синий) — 42. Нижняя часть задней фары темно-красного цвета. В ней присутствует белый параллелепипед, поэтому придется еще раз воспользоваться картой Mix (Смешивание). В данном случае образец цвета Color #2 (Цвет 2) не имеет значения, так как он определяется второй картой смешивания. Карта Gradient Ramp (Усовершенствованный градиент) содержит два цвета: черный и белый, которые задают область смешивания. Положение ползунков подбирается опытным путем так, чтобы линия соединения цветов оказалась в нужном месте. Кроме того, необходимо повернуть отображение карты на 90° по оси W. В карте Mix (Смешивание) должны быть определены два цвета. Маска регулирует, как они будут взаимодействовать между собой (рис. 10.39). Если помните, это составной цвет нижней части задней фары. Здесь Color #1 (Цвет 1) имеет параметры: Red (Красный) — 185, Green (Зеленый) — 24, Blue (Синий) — 0. Color #2 (Цвет 2) - белый.
546
Глава 10. Текстурирование автомобиля {Map И177
Mi* Amour*
^ j
Gradient Ramp
Coordinates *
Twture <~ Environ Mapping: [Explicit Map Channel
jj
W £l
%\ (To
У-Щ Slut; p i "
5] г P vfoo
| | : В!ш offset: JOO
jj
^J
Noise G radiant Ramp Paaraeters
R»0.G»O,B«O. Pos«0
• I GradentType: [Linear
_^J Inteipolarjon: Jsolid
Рис. 10.38. Параметры карты Gradient Ramp (Усовершенствованный градиент) \
JMapS178 MixPatametei Maps
Рис. 10.39. Параметры карты смешивания для второго цвета стекла
Карта Refraction (Преломление) почти не требует настроек. Вам только необходимо использовать в области Background (Фон) в качестве карты окружающей среды карту, подготовленную для выдавливания (рис. 10.40). ^ *
JMap8175
Raytface
Raytracer Parameters
v ч
r-Local Options
Trace Mode
P Emblefiaiitiacing
*~ Auto Detect
P flayireceAtmospherfcs P Enable Seif Reflect /Refract j Reflect / Refract Material IDs
Г
Г
ReSeetion Refiaction
Local Exclude...
Use Environrnent Settings
Рис. 10.40. Настройки карты преломления
Текстурирование деталей автомобиля
547
На рис. 10.41 представлена иерархия материалов, иллюстрирующая, как материалы взаимодействуют между собой и в какой последовательности накладываются. SMareriat/Мав Navigator 8cck_U (Standard)
^
Fi!te(Color: Map*t17G (Mill] -ЩColor2 Map 11178 (Mm) ; # M « Amount Map»179iBack.Fonar_Maskpg) -Ш M B Amount: Map t)177 (Gradient Ramp) 0 Bump bump (Back_Light_Bump pg) -Щ Relractron. Map «175 (Raytrace ) •S Background bump (Back_Light_Bump ipg)
Рис. 1 0 . 4 1 . Иерархия материала стекла задней фары
Визуализируем изображение. Нужный результат получился не сразу, но при помощи карты Mix (Смешивание) я быстро подобрал нужные цвета.
Рис. 10.42. Результат визуализации задней фары в составе кузова автомобиля
Последнее, о чем я хочу рассказать в этом упражнении, — текстурирование автомобильного колеса. Начнем с резины. На рис. 10.43 представлены настройки материала. Тонкость создания хорошего материала шины заключается в карте Falloff (Спад) для Diffuse Color (Цвет рассеивания). Не менее важно использовать карту Bump (Рельефность) для протектора (если вы не сделали его при помощи редактирования на уровне подобъектов) или для надписей на боковой стороне шины, но только карта Falloff (Спад) делает реалистичным материал резины. При помощи этой карты (рис. 10.44) можно получить на краях покрышки дымку, существующую на реальных колесах. Первый цвет определяет основной цвет шины. У меня это темно-серый цвет с параметрами: Red (Красный) — 72, Green (Зеленый) — 72, Blue (Синий) — 72. Второй цвет — цвет дымки. Его параметры Red (Красный) — 173, Green (Зеленый) — 180, Blue (Синий) — 182. Возможно, вам понадобится немного другой оттенок (все зависит от освещения), но принцип текстурирования от этого не меняется. Карту рельефа можно нарисовать в любой программе растровой графики или получить из фотографии шины. В любом случае это должно быть монохромное изображение, где градации цвета, отличного от черного, будут создавать на объекте рельеф (рис. 10.45).
548
Глава 10. Текстурирование автомобиля Г<е
"j
Slandaid
Shade' 8a$!C Parameters
Speeutar Level (Ti Qtossine» jo
Г
Wire
Г 2-Sicfed
Г
F3«kMsp
Г
Fao«tsd
; J
Soften £ «tended Parafnetftfs SuperSampiing Maps Amount
Map
r Amiswtwor-. poo"; P
OJtaseCdm .. . ,[TBO~ ;
W Bimp
.
.
[37~;
Map ЯВБ ( Falto»)
Mapi«5ttiie-te«jpg)
Рис. 10.43. Настройки материала шины Bjffuse Color:
* ^ ] Map «86
'
3
FaWf
Faltoff Paiawetets front Stde т
None
':
Nona
В
pK I Perpendicular 1 Parallel |
i£j
FaWfOrceclrarr jViewing Direction (CameraZ-Axis
Рис. 10.44. Параметры карты Fallout (Спад) для шины
Рис. 10.45. Карта рельефа для шины
На рис. 10.46 представлен результат визуализации шины с примененным к ней материалом.
Текстурирование деталей автомобиля
549
Рис. 10.46. Результат визуализации шины
Материал диска — хром, который вы делали в начале раздела. Если колесо не будет видно вблизи, то я использую текстурную карту в качестве отражений. Это экономит время визуализации, так как для просчетов карты Raytrace (Трассировка) требуются дополнительные компьютерные ресурсы. Иногда для дисков приходится применять логотипы и карты Bump (Рельефность). Я пользуюсь для этих целей материалом Blend (Смешиваемый), который по своим настройкам похож на рассмотренную выше карту Mix (Смешивание). В качестве примера рассмотрите настройки этого материала (рис. 10.47) для логотипа, выполненного на диске колеса. •
, (С nmt L >
,
Blend Base Parameters Г Interactive Material «27 (Standard I W * Mask; __ Map « ( L o g o png) MwAmourttj
\W Г
Inteiactee
:
Interactive
»j
Рис. 10.47. Параметры материала Blend (Смешиваемый)
Вторым материалом в данном случае является стандартный материал черного цвета, хотя может быть применена любая другая карта текстуры или материал. Mask (Маска) — это черно-белое растровое изображение логотипа (рис. 10.48). Именно она определяет взаимное смешивание двух материалов.
Рис. 10.48. Маска для смешивания двух материалов
550
Глава 10. Текстурирование автомобиля
На рис. 10.49 представлен фрагмент модели колеса с примененным материалом Blend (Смешиваемый).
Рис. 10.49. Фрагмент визуализации диска
ПРИМЕЧАНИЕ На прилагаемом к книге компакт-диске в папке СН10\Мах находится файл Car_details.mat с материалами деталей автомобиля и Wheel.mat с материалом шины и диска.
Визуализация автомобиля с использованием VRay Это упражнение является дополнением к заданию по текстурированию автомобиля и рассчитано на опытных пользователей 3ds Max. Я не привел подробного описания всего процесса, оставив вам свободу творчества. Вам понадобится установленный модуль VRay, демонстрационную версию которого можно найти на сайте производителя http://www.chaosgroup.com. В двух предыдущих разделах вы ознакомились с текстурированием автомобиля. Этого вполне достаточно, чтобы сделать хорошее изображение. По-настоящему великолепным оно станет после использования «мягких» теней, глобального освещения и постановки модели в окружающую среду. Вам придется запастись терпением, так как при использовании глобального освещения и трассируемых теней время визуализации возрастает в 5-10 раз, а количество тестовых визуализаций не уменьшится. Глобальное освещение привносит в сцену свою освещенность, поэтому необходимо пересмотреть расположение и установки источников света, находящихся в сцене, а также настройки некоторых материалов. В этом разделе рассмотрим лишь основные приемы работы, не заостряя внимания на таких деталях, как точная настройка визуализатора или материалов. Выбор визуализатора VRay основывается только на моей личной симпатии к нему за его скорость и качество визуализации. Аналогичного результата можно добиться и при использовании других модулей, включая стандартный визуализатор программы 3ds msx 7.5. Общий подход будет практически одинаковым. Как обычно, все начинается с поиска подходящей фотографии для фонового изображения. Лучше использовать те снимки, на которых легко определить точку съемки и линию горизонта. Легче всего строить отражения, если на фото есть ярко выраженные детали, например полоса дорожной разметки, дерево или фонарный столб, стоящие рядом автомобили или люди. Очень эффектно смотрится мокрый асфальт или лужи, в которых отражается модель. Все это помогает создавать впечатление
551
Визуализация автомобиля с использованием VRay
единого целого с фотографией. Для работы я использовал снимок из галереи фотографий ретроавтомобилей (рис. 10.50).
• . • .
. • : • • • •
.
• :
••
.•
.
•.
.'
: .
•
•
• ,
:
.
,
•
:
• • • .
.
V
.
•
.
:
•
. .
••.
•••
•••,
.
••••
• • • : • : , : : : : ' . < < . •
Рис. 10.50. Оригинальная фотография
Конечно, проще всего использовать фотографию, не требующую дополнительной обработки, но, как гласит пословица, нет худа без добра. По находящемуся на переднем плане автомобилю можно проанализировать свет, тень, блики и даже отражения. При помощи программы Adobe Photoshop я вычистил все, что мешало бы в работе (рис. 10.51).
Рис. 1 0 . 5 1 . Фотография, подготовленная для использования в качестве фона
552
Глава 10. Текстурирование автомобиля
Проанализировав фотографию, я пришел к выводу, что линия горизонта проходит по верхней ступеньке крыльца. На данном этапе это важно, так как вся дальнейшая настройка положения камеры будет связана с согласованием плоскости, на которой стоит автомобиль, с участком дороги на фотографии. ПРИМЕЧАНИЕ Более подробно использование объектов в качестве фона описано в разд. «Интеграция трехмерных изображений и фотографии» гл. 8. Все действия, связанные с расположением плоскости (а следовательно, и модели автомобиля), производятся только при помощи установки камеры в трехмерном пространстве сцены. Если вы проигнорируете это правило и будете подгонять геометрию (например, менять положение вершин), то в результате модель исказится. Внимательно проанализируйте фотографию, попробуйте определить точку съемки, обратите внимание на тени — это пригодится для ключевого источника света. На рис. 10.52 показан снимок окна проекции вида из камеры после того, как я установил фотографию в качестве фона, построил плоскость, на которой будет стоять автомобиль, и настроил положение камеры. .
•
Рис. 10.52. Положение плоскости и линии горизонта камеры в окне вида из камеры
Последовательность выполнения действий должна быть следующей. 1. Установите фотографию в качестве карты Environment (Окружающая среда). Это позволит видеть фотографию фона при визуализации. 2. Установите в окне Viewport Background (Фон окна проекции) флажок Use Environment Background (Использовать фон окружающей среды) — фотография появится в окне проекции вида из камеры. 3. В окне Render Scene (Визуализация сцены) задайте выходные размеры изображения в соответствии с размерами вашей фотографии в пикселах, чтобы при визуализации не возникли искажения фона. 4. Создайте камеру, и в свитке Parameters (Параметры) настроек камеры установите флажок Show Horizon (Показать горизонт). Это необходимо выполнить для согласования перспективы на фотографии и в сцене.
Визуализация автомобиля с использованием VRay
553
5. Постройте плоскость, которая будет принимать тень от автомобиля. 6. Найдите положение и фокусное расстояние камеры, при котором плоскость примет необходимое положение в пространстве. 7. Создайте в сцене ключевое освещение с учетом положения теней на фотографии. Обычно я использую Target Direct (Нацеленный направленный). Вернемся к рис. 10.51. Обратите внимание: плоскость, выставленная при помощи камеры, своими границами проходит параллельно линии разметки и бордюра, а линия горизонта камеры (черная линия) соответствует определенному ранее горизонту фотографии. Назначьте созданной плоскости материал VRayMtlWrapper (VRay-оберточный). Стандартный материал Matte/Shadow (Матовое покрытие/тень) для этих целей не подойдет, так как мы собираемся просчитывать сцену при помощи визуализатора VRay. На рис. 10.53 представлены настройки материала VRayMtlWrapper (VRayоберточный). jRoad_Vra)i
Вше material
__ VRayMtfWrappeH
fieadj/fajj
: rAddrtiona! surface properties ~ Generate® Г? |TS Receive Gf P J1 0
(Standard)
_____
—-• —
* i Seneretecaustics Г t\ Receive caustics Г Caustics mdttptier f
•Майе properties i Matte surface P
Alpha cortiibutionjTo"
Shadows W Affect a^*a F? Cdot Щ ; | Bnghtness J o l
Reflection amountГПГ" Reffectron amount [ i о Gl amountfiT
i\
щI
Рис. 10.53. Параметры материала VRayMtlWrapper (VRay-оберточный)
Основное предназначение построенной плоскости — принимать тень от автомобиля. Забегая вперед, скажу, что полоса дорожной разметки, которая присутствует на переднем плане, слишком коротка для нормального отражения в автомобиле. Мне пришлось увеличить размер той части плоскости, которая перекрывает дорогу, и использовать Base Material (Основной материал) со специально созданной текстурой (рис. 10.54). Текстура, присвоенная плоскости, должна повторяться по горизонтали, а не растягиваться на всю плоскость. При визуализации эта текстура будет видима только для отражений, соответственно, вы получите полноценное отражение дороги с линией разметки по всей длине боковой стороны автомобиля.
554
Глава 10. Текстурирование автомобиля
Рис. 10.54. Текстура асфальта с линией разметки
Теперь можно выполнить тестовую визуализацию, чтобы убедиться, все ли сделано правильно и, если это необходимо, подкорректировать положение или размер автомобиля (не забывайте, что это делается при помощи перемещения камеры). На рис. 10.55 показаны основные настройки окна параметров визуализатора. Перед первой визуализацией проследите, чтобы в сцене был установлен ключевой свет с настройкой генерации теней. В моем случае задача усложняется тем, что солнце на фотографии расположено сбоку и немного сзади автомобиля, оставляя в тени переднюю часть и сторону, обращенную к зрителю, — 2/3 автомобиля оказываются в тени. Еще одна трудность — применение темно-синего цвета для кузова. Попробуем справиться с этой задачей. Я давно обратил внимание, что сложнее всего передать серебристый и черный цвета автомобиля, на которых отражения пропадают, сливаясь с фоном. Данных настроек вполне достаточно, чтобы увидеть предварительный результат. Немного позже добавьте в настройки визуализатора в качестве карты окружающей среды и отражений карту HDRI. Эта карта нужна для более точной настройки визуализатора. На рис. 10.56 представлен результат первой визуализации. Разберемся в том, что получилось при визуализации. Автомобиль вписался в фон. Видно отражение от поверхности дороги, которую мы имитировали. Необходимо подкорректировать тень — она должна быть более темной под автомобилем и на краях. У полученного автомобиля слишком темные стекла. Материал стекла, сделанный в предыдущем уроке, использует в качестве отражений карту окружающей среды. Пока в стеклах нечему отражаться, поэтому они слишком темные. Чтобы имитировать небо, я сделал над автомобилем плоскость с текстурой облаков и уровнем Self-Illumination (Собственное свечение) 90. За автомобилем
Визуализация автомобиля с использованием VRay
555
необходимо установить вертикальную плоскость, которая позволит генерировать отражения на его кузове и стеклах (рис. 10.57). Materials I*
ReflectiorVwrjactiOT Г
Max depth j ~
I** Maps
fv* Filer map*
Max transp. levels f50 Transp. cutoif
10 001
Don't rendet finafinage (onfei compute SI maps) VRaj£: Image sampler (Artiafasins! f
Fixedrate
I
Г
;
С Simple )wo-lewel
t. >.., : I
Г
p Obtectoulline
Г
P
M n (ate:[^
*
ThieshofctjOl
Normals [o 1
Г Z-vak» [ВТ
* Adaptive subdivision Max. rate: $2
Г~ Material tD
Z\
; ] Multipass P Rand Г (lei VRajf. lnd»ect lunrmatiorijjl)
On I ? Reftactive Ш caustics First diffuse bounce • • '
Г
FtefteetiveGI«ausfcs ••>. Secondary bounces :
f* Direct conwutation
Г Hone *
iifadiance map Ma»
Muit!pii«:foT" : ;
Г
<~ Slobal photon map
J
HSphsubdtvs:i2C^
j]
Inlerp. saraples: f20
jj
Show cab, phase p Show direct Hah! Г
Direct computation Subdrvs. p : Depth p
f~ Slobal photon map |ferasSancemap presets: | Custom
Рис. 10.55. Настройки визуализатора VRay
Рис. 10.56. Результат тестовой визуализации
:
556
Глава 10. Текстурирование автомобиля
Рис. 10.57. Расположение в трехмерном пространстве плоскостей, генерирующих отражения
Плоскость, расположенная за автомобилем, по высоте и ширине должна быть такой, чтобы в окне вида из камеры она полностью перекрывала часть фотографии выше тротуара. К ней нужно применить модификатор Camera Map (Проекция камеры) (рис. 10.58) и ту же текстуру, что на фоне. Это позволит использовать фоновое изображение в качестве текстуры отражения, позиционируя плоскость относительно камеры.
: r Current Camera 0 Neot I | CaweaOl Pick Camera jfrChannet
* Map Channel; f i
'§1
•I) Г Vertex Color Channel
Рис. 10.58. Настройки модификатора Camera Map (Проекция камеры)
В настройках модификатора используйте именно ту камеру, которая настраивалась под фоновое изображение. Выполните еще одну тестовую визуализацию (рис. 10.59).
;: Рис. 10.59. Результат тестовой визуализации с отражениями
Визуализация автомобиля с использованием VRay
557
На капоте и лобовом стекле появились отражения кустов и здания, на крыше — задний план. Тень от автомобиля стала темнее и «гуще» в глубине из-за применения к источнику света Target Direct (Нацеленный направленный) тени VRayShadow (VRay тень) с параметром Area Shadow (Область тени). Однако есть недостаток — недостаточно отражений переднего плана. Отражение линии разметки на боковой стороне автомобиля требует такой же корректировки, как области тени на краях. Рассмотрим способ, который я часто использую для точной настройки материалов, теней и визуализации. Когда нужно выполнить некоторое количество тестовых визуализаций, а сцена перегружена объектами, я убираю из визуализации все, что не относится к окружающей среде. В качестве тестового объекта создаю сферу и применяю к ней нужный материал. После этого настраиваю освещение, тени и материалы и выполняю пробную визуализацию с малым разрешением. В итоге я экономлю время. Вернемся к переднему плану. По аналогии с плоскостью заднего плана можно поставить в сцену еще одну плоскость с текстурой, которая будет отражаться в автомобиле. Я решил использовать два дерева, точнее, две пересекающиеся плоскости с текстурами деревьев. Визуализируйте автомобиль вместе с интерьером (рис. 10.60).
Рис. 10.60. Результат визуализации автомобиля вместе с интерьером
Отражения на боковых стеклах и интерьер придали автомобилю более естественный вид. Осталось добавить несколько последних штрихов: дополнительную настройку тени и применение в глобальном освещении карт HDRI. Это позволит органично вписать модель в фотографию. На рис. 10.61 показаны настройки визуализатора, в которых присутствуют карты окружающей среды. VHay;. Environment Gl Envwonmen* |sk^ight)
ПТ
Map «189 (VRasiHDRI)
г ReflectonAeltsctionetcenwonmeni
; I? Overrate W t o Cote I I Mulbpta [ТВ
;
Map «189
Рис. 10.61. Настройки свитка VRay:: Environment (VRay:: окружающая среда)
558
Глава 10. Текстуриров;
В качестве карты VRayHDRI (VRay-изображейие с большим динамическим диапазоном) я использовал изображение с голубым небом, зеленью и участками серого как раз то, что нужно в данном случае. При помощи таких карт изображение принимает цветовую гамму фона, что очень важно для реалистичности На рис Ш 62 представлен результат окончательной визуализации модели
:•••::?
'
"'
Рис. 10.62. Результат окончательной визуализации автомоби
На этом упражнение по визуализации автомобиля закончено. Иногда я оставляю на несколько дней почти законченную настройку визуализации, а затем возвраща, раща Н П Ь 1 Т а Я С Ь П ° - НН 00 ВВ 00ММ У У ооссмыслить м ы с л и т ь сделанную работу. б Э п т м^^ Н ГГ ч П Ь 1 Т а Я С Ь П °Это помогает увидеть ошибки. Часто полезно показать работу посторонним людям и выслушать их замечания. Нет предела совершенству!
_
Глава 11
Моделирование головы • Моделирование головы при помощи модуля Surfacetools • Моделирование головы при помощи полигонов • Моделирование ресниц • Использование UV-проецирования для полигональной модели головы • Текстурирование головы человека • Создание волос
Глава 11. Моделирование головы
560
Моделирование головы не только интересное, но и сложное занятие, которое по плечу только опытным пользователям трехмерной графики. Все описанные в этой главе операции требуют предварительной подготовки. В двух первых разделах рассмотрено моделирование при помощи модуля Surfacetools и полигонального моделирования. Описаны принципы моделирования головы со средним уровнем детализации, достаточным для создания реалистичного образа. Последующие упражнения рассказывают о том, как создаются текстуры лица человека.
Моделирование головы при помощи модуля Surfacetools Модуль Surfacetools, разработанный Питером Ватье (Peter Watje) для компании Digimation, стал незаменимым средством для моделирования объектов органического происхождения. При работе с ним вы размещаете сплайны в соответствии с контурами модели, после чего применяете один из двух инструментов Surfacetools — модификатор поверхности Surface (Поверхность) — и превращаете сплайны в готовую модель. Как только вы начнете работать с этим модулем, вы поймете, насколько просто можно создавать сложные модели. Прежде чем перейти к моделированию головы, вам необходимо взять две фотографии головы: в фас и профиль.
ПРИМЕЧАНИЕ При выполнении заданий данной главы вы можете воспользоваться фотографиями, которые находятся в папке СН11\Мах прилагаемого к книге компакт-диска. На рис. 11.1 представлены фотографии, с которыми буду работать я.
а
б
Рис. 1 1 . 1 . Фотографии головы в фас (а) и профиль (б), подготовленные для моделирования
561
Моделирование головы при помощи модуля Surfacetools
Обратите внимание, что оба вида должны иметь одинаковый размер и пропорции (не забывайте о том, что мы моделируем в трехмерном пространстве). Кроме того, размер изображений должен быть достаточно большой, чтобы были хорошо видны детали (я использовал 1000 х 1100 пикселов). Только после того как будут выполнены все приготовления в программе редактирования растровых изображений, можно переходить к работе в 3ds Max. Практически любое моделирование такого рода начинается с создания виртуальной студии. Для данного случая подойдет самое примитивное пересечение двух плоскостей (рис. 11.2).
«»
.:•
Ж
Рис. 11.2. Виртуальная студия
Моделирование головы при помощи сплайнов можно вести несколькими способами. Они похожи друг на друга и отличаются только последовательностью моделирования и расположением кривых на поверхности объекта. Я постараюсь как можно доступнее описать весь процесс моделирования, то есть так, как выполняю его сам. Подход к моделированию достаточно прост: сначала создадим все необходимые сплайны в окне проекции Front (Спереди), а затем скорректируем их положение в окнах проекций Left (Слева) и Тор (Сверху), после чего применим модификатор создания поверхности Surface (Поверхность). Приступим к моделированию. Во-первых, так как мы имеем дело с симметричной моделью, достаточно построить только одну ее половину. Во-вторых, можно создать отдельные части головы и затем соединить их в единое целое. Я предпочитаю отдельно строить только ухо и волосы (если они делаются геометрией).
562
Глава 1 1 . Моделирование головы
Прежде всего выполните следующие действия. 1. Для активизации инструмента построения сплайна выполните команду главного меню Create • Shapes • Line (Создание • Формы • Линия). 2. Установите в свитке Creation Method (Метод создания) настроек объекта Line (Линия) переключатели Initial Type (Начальный тип) и Drag Type (Вершина при перетаскивании) в положение Smooth (Сглаживание) для построения сглаженных вершин в процессе создания сплайна (рис. 11.3).
Ш в, ш %
3
~]Splines
AJcCrid
•
Lme qrete
.
Ans j NSon | t**
!
Section
j
Г R«Cttngb j Elfpse
,.? o n H l Ste
j i
H*
,
Name andColot
+ >
Rendeiing InteipoWran Creaiiqn Method
: : il
r Can» * Smooth
!
<* Come) « Stnoplh
ь Рис. 11.3. Настройки для создания сплайна
3. Чтобы видеть вершины сплайна не только при построении, в свитке Display Properties (Свойства отображения) вкладки Display (Отображение) Щ[ командной панели установите флажок Vertex Ticks (Метки вершин) (рис. 11.4).
V, Г »j)i»(eS)*snls :.: I ? ShwiFraaaninBraj
Рис. 11.4. Настройки отображения вершин в свитке Display Properties (Свойства отображения)
Моделирование головы при помощи модуля Surfacetools
563
СОВЕТ Отображение вершин сплайна можно также задать в окне Object Properties (Свойства объекта) объекта Line (Линия).
Начнем с построения контура глаза (хотя можно начинать создание модели с любой ее части). Для этого при активном инструменте построения линии щелкните в окне проекции Front (Спереди) на левой части глаза и постройте восемь точек по периметру разреза глаза (рис. 11.5).
Рис. 11.5. Начало построения сплайнов в окне проекции Front (Спереди)
СОВЕТ Выполняя упражнение по моделированию головы, не ставьте перед собой задачу сделать модель, похожую на изображение на фотографии, — на данном этапе значительно важнее научиться правильно моделировать, поэтому просто постарайтесь довести работу до конца, что само по себе нелегко. На начальном этапе будет достаточно, если общие формы модели будут соответствовать действительности.
Далее нужно построить новые сплайны вокруг уже существующего, но прежде необходимо сделать так, чтобы новый сплайн принадлежал той форме, которая была уже построена. Для этого надо снять флажок Start New Shape (Начать новую форму) в свитке Object Type (Тип объекта) (рис. 11.6).
Рис. 11.6. Свиток настроек Object Type (Тип объекта)
564
Глава 1 1 . Моделирование головы
Можно построить еще один сплайн вокруг существующего. Для этого в окне проекции Front (Спереди), удерживая нажатой клавишу Shift, воспользуйтесь командой Scale (Масштабирование) контекстного меню и увеличьте копию сплайна. После этого на уровне редактирования вершин немного скорректируйте положение вновь созданных вершин. Новый сплайн можно также построить обычным способом (рис. 11.7).
Рис. 11.7. Второй сплайн, построенный методом копирования
В процессе построения сплайна не забывайте о том, что для поверхности такого типа предпочтительно использовать по четыре вершины для образования патча, поэтому старайтесь их строить осознанно и в тех местах, которые обеспечивают именно такое построение. Кроме того, как уже говорилось выше, сплайны должны повторять характерные линии строящейся модели. После того как вы создадите два сплайна по форме разреза глаза, постройте еще один вокруг глаза, но уже от середины переносицы, далее по линии брови до окончания глазной впадины и обратно (рис. 11.8).
Рис. 11.8. Третий сплайн, построенный вокруг глаза
Для дальнейшего построения сплайнов необходимо настроить привязки к вершинам. Для этого щелкните правой кнопкой мыши на кнопке Snap Toggle (Переключение привязок) 4& , в результате чего откроется окно Grid and Snap Settings (Настройки сетки и привязок). Установите флажки, как показано на рис. 11.9.
Моделирование головы при помощи модуля Surfacetools
Snaps
Options !
Home Slid
User Grids
565
:
| Standard
;
or BiiapbWs л г Pivol Perpendiculaf ь.г •f F Vertex ar
дг
Edge Fees
ar
GiidliniB
or
Tangent
J3 Г SP 0 Г
VГ
Bounding бок Endpoint Mrfpoinl
J:
CerterFace
Clear All
Рис. 11.9. Окно Grid and Snap Settings (Настройки сетки и привязок) с настройками привязок Соедините построенные вершины поперечными сплайнами (рис. 11.10). Для этого в области New Vertex Type (Тип новых вершин) свитка Geometry (Геометрия) настроек сплайна установите переключатель в положение Smooth (Сглаживание), а затем щелкните на кнопке Create Line (Создать линию), после чего начните построение сплайнов.
Рис. 11.10. Созданные поперечные сплайны
Спуститесь немного вниз и постройте горизонтальный сплайн, проходящий по верхней части крыльев носа до середины уха и сплайн по лобной кости вокруг глаза до пересечения с нижним сплайном. Не забывайте при этом выдерживать соответствие построенному количеству вершин (рис. 11.11). Соедините вершины двух вновь построенных сплайнов с вершинами созданных ранее (рис. 11.12). Напомню, что пока все построения ведутся только в окне проекции Front (Спереди). Постройте еще два сплайна в районе лобной кости. Количество вершин можно сократить до трех в верхнем и до четырех в нижнем сплайнах (рис. 11.13), так как в этом месте геометрия не имеет ярко выраженных изменений. Хочу напомнить, что мы строим модель одной половины головы, следовательно, крайние левые вершины сплайнов должны проходить по осевой линии, то есть через середину лба, носа, губ и подбородка.
566
Глава 1 1 . Моделирование головы
Рис. 1 1 . 1 1 . Добавлены два новых сплайна
Рис. 11.12. Построены поперечные сплайны
Рис. 11.13. Два сплайна, построенные в области лобной кости
Постройте сплайн по контуру верхней части головы и соедините его с существующими (рис. 11.14). Продолжите построение сплайнов в нижней части лица. Старайтесь строить вершины так, чтобы сплайны проходили по характерным линиям, образованным основанием и крыльями носа, а также губами и разрезом рта (рис. 11.15). Если бы мы стремились к большей детализации лица, то для формирования геометрии носа и губ пришлось бы значительно увеличить количество вершин, но в данном задании постараемся обойтись минимальным.
Моделирование головы при помощи модуля Surfacetools
567
Рис. 11.14. Сплайны, построенные по контуру головы
Рис. 11.15. Построение сплайнов в нижней части лица
Постройте еще некоторое количество кривых, чтобы закончить формирование каркаса из сплайнов для нижней части лица (рис. 11.16).
Рис. 11.16. Форма и расположение сплайнов в нижней части лица
До сих пор вы строили сплайны, опираясь лишь на их местоположение в двумерном пространстве (в окне проекции Front (Спереди)), не обращая внимания на то, как они связаны друг с другом и где находится начало и конец сплайна. Корректировка этих параметров важна для правильного построения поверхности. Обратите внимание, как выделенный сплайн в верхней части головы (у вас это может быть в другом месте) описывает форму лица (рис. 11.17).
568
Глава 1 1 . Моделирование головы
Рис. 11.17. Сплайн, описывающий форму лица
Сплайн начинается в области верхней части уха, доходит до середины нижней части глаза, далее пересекает его и поднимается к верхней точке осевой линии, а затем снова спускается к височной кости. Если применить модификатор Surface (Поверхность) к таким сплайнам, то на выходе получится много искажений поверхности, с трудом поддающихся корректировке. Следовательно, необходимо внести изменения в структуру сплайнов. Правильнее будет сделать так, чтобы сплайны разделялись на горизонтальные и вертикальные, проходя через все лицо. Чтобы скорректировать геометрию сплайнов, выполните следующие действия. 1. Выделите вершины там, где, по вашему мнению, должен заканчиваться сплайн (обычно на границах общей формы). 2. В свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить), в результате чего сплайн будет разбит в этом месте на две части. 3. В режиме редактирования подобъектов Segments (Сегменты) выделите те сегменты сплайнов, которые должны будут сформировать новый сплайн и подлежат объединению. 4. Инвертируйте выделение, нажав Ctrl+I. 5. В свитке Geometry (Геометрия) щелкните на кнопке Hide (Спрятать). В результате этих операций у вас останутся только выделенные сплайны (у меня это сплайны, описывающие контур лица) (рис. 11.18).
Рис. 11.18. Сплайны, выделенные для объединения
Моделирование головы при помощи модуля Surfacetools
569
6. После того как будут спрятаны все лишние кривые, выделите вершины в местах соединения отдельных сплайнов и объедините их, щелкнув на кнопке Weld (Объединить). В результате получится один непрерывный сплайн. 7. Откройте ранее спрятанные сплайны, щелкнув на кнопке Unhide All (Показать все). 8. Повторите те же операции разбиения и слияния для других сплайнов. На рис. 11.19 показано, как должны выглядеть некоторые построенные и отредактированные сплайны.
Рис. 11.19. Форма и расположение отредактированных сплайнов
Прежде чем перейти к расположению сплайнов в пространстве, произведем некоторые настройки, облегчающие процесс моделирования. 1. Задайте локальную систему координат, для чего в раскрывающемся списке Reference Coordinate System (Система координат) на главной панели инструментов выберите Local (Локальная). 2. Активизируйте перемещение по оси Z, для чего нажмите клавишу F7. 3. В свитке Selection (Выделение) настроек сплайна установите флажок Area Selection (Область выделения) (рис. 11.20), что поможет выбирать сразу две вершины в местах пересечения сплайнов.
i'|- Г lockHandte* 11 * Alike <* At ; I P Atea Selection. (13*1 ) I Г Segment End
;
\
?|
S led8i
* '' I
| | Г SbawVetlBiiNufftot ;
;••
.
^ - .
0 Vertices SelecM
Рис. 11.20. Настройки свитка Selection (Выделение)
570
Глава 1 1 . Моделирование головы
После дополнительных настроек можно передвигать вершины в окне проекции бокового вида по оси Z в направлении линии профиля. Передвинуть в новое положение необходимо все вершины, кроме тех, которые расположены на вертикальном сплайне, очерчивающем контур головы в окне проекции Front (Спереди) (это не относится к серединной линии). На рис. 11.21 показано начало данного процесса.
Рис. 1 1 . 2 1 . Начало корректировки положения вершин в окне проекции бокового вида
На данном этапе моделирования не стоит пытаться точно найти положение вершин в пространстве, для этого немного позже сделаем соответствующие уточнения. Продолжайте перемещать вершины в окне проекции вида сбоку до тех пор, пока не получится каркас из сплайнов, охватывающий лицевую часть (рис. 11.22). Продолжите наращивание сплайнов. На сей раз основные построения нужно вести в окне проекции вида сбоку. Включите привязку к вершинам и достройте сплайны на затылочной части головы. Здесь не требуется построения большого количества вершин — достаточно двух-трех дополнительных вершин на сплайн (рис. 11.23). Соедините вновь созданные точки вертикальными сплайнами (рис. 11.24). Теперь нужно скорректировать положение вновь построенных точек в пространстве и проанализировать состояние сплайнов. Сплайны, которые имеют начало или конец в середине сетки, нужно объединить со сплайнами, к которым они примыкают (так же, как для лицевой части головы).
571
Моделирование головы при помощи модуля Surfacetools
I
:
.r:::;;:' I •
1 -
i
::
Д?
дм»Д
j
•
в
•
•
•
•
•
•
•
^2
* ~^„
' ,...-Г~"'""*
Рис. 11.22. Положение сплайнов в пространстве на лицевой части головы
Рис. 11.23. Сплайны, построенные в окне проекции вида сбоку
Рис. 11.24. Соединенные вертикальные сплайны в окне проекции вида сбоку
i ^ i
572
Глава 11. Моделирование головы
После этого получится почти законченный каркас из сплайнов. На этом этапе моделирования можно посмотреть, какой будет поверхность разрабатываемой модели. Для этого выполните следующие действия. 1. Выделите в любом окне проекции каркас из сплайнов (это должен быть один объект). 2. Скопируйте его, для чего выполните команду Edit • Clone (Правка • Клонировать), и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при клонировании объектов Reference (Подчинение). 3. Присвойте копии модификатор Surface (Поверхность), выполнив команду Modifiers • Patch/Spline Editing • Surface (Модификаторы • Редактирование патчей/сплайнов • Поверхность). 4. При необходимости в свитке Parameters (Параметры) установите флажок Flip Normals (Обратить нормали). Выполненные действия приведут к тому, что в окнах проекций кроме студии будут присутствовать еще два объекта: каркас из сплайнов и его копия с поверхностью. Если позволяет производительность вашего компьютера, сделайте еще один симметрично отображенный экземпляр объекта с поверхностью, чтобы видеть всю геометрию головы (рис. 11.25).
Рис. 11.25. Модель головы с каркасом из сплайнов и поверхностью
После этого необходимо уточнить положение вершин в пространстве. Именно сейчас, когда видна вся поверхность, можно передвигать вершины каркасного объекта, чтобы привести геометрию головы к желаемому виду. После коррекции положения вершин в пространстве можно переходить к построению отверстия в носу. Для этого в нижнюю часть носа добавьте сплайны, как показано на рис. 11.26. Внутренний сплайн, образующий отверстие, скопируйте вверх (внутрь носа), чтобы впоследствии создать верхнюю часть отверстия. Соедините все точки при помощи дополнительных сплайнов. В нижней части носа при помощи команды Refine (Уточнить) создайте две дополнительные вершины, после чего соедините их сплайнами (рис. 11.27).
Моделирование головы при помощи модуля Surfacetools
573
Рис. 11.26. Форма сплайнов, формирующих отверстие в носу
Рис. 11.27. Фрагмент носа с поверхностью
Перед тем как перейти к моделированию уха, необходимо проанализировать всю поверхность и при необходимости внести изменения. Обратите внимание на характерные линии головы. Не забывайте контролировать весь процесс изменения положения вершин во всех окнах проекций. В районе серединной линии могут оставаться погрешности геометрии, связанные с тем, что обе половинки модели являются самостоятельными объектами. В остальном поверхность должна иметь законченный вид (рис. 11.28).
Рис. 11.28. Вид модели головы перед началом моделирования уха
574
Глава 11 • Моделирование головы
Моделирование уха — завершающий и, пожалуй, самый сложный этап. Сложность построения заключается в том, что в этой относительно небольшой форме сосредоточено большое количество сплайнов, и без соответствующего опыта моделирования трудно в них разобраться. На начальном этапе построения уха модель головы не понадобится и ее лучше спрятать. Чтобы сделать это, щелкните на модели правой кнопкой мыши и в появившемся контекстном меню щелкните на пункте Hide Selection (Спрятать выделенное). После этого в окне проекции вида сбоку постройте начальный сплайн для уха (рис. 11.29).
Рис. 11.29. Начальный сплайн для построения модели уха
Размер сплайна произвольный — на данном этапе это неважно, впоследствии вы сможете масштабировать так, как вам будет нужно. Добавьте внутрь первого еще один сплайн и, сдвинув его немного относительно первого (в окне проекции Front (Спереди)), соедините с первым (рис. 11.30).
Рис. 11.30. Взаимное расположение сплайнов уха в окне проекции Right (Справа) (а) и Front (Спереди)(б)
Постройте еще один сплайн, но уже не замкнутый, а от точек, лежащих на внутреннем сплайне. Снова соедините созданный сплайн отрезками с теми, которые были построены ранее. После этого скорректируйте положение точек в пространстве (рис. 11.31).
575
Моделирование головы при помощи модуля Surfacetools
'•'••••'•
"
'
'•'•'•
Рис. 1 1 . 3 1 . Начало формирования ушной раковины
Продолжите формирование ушной раковины. В окне проекции Тор (Сверху), удерживая нажатой клавишу Shift, скопируйте последний сплайн, немного сдвинув его вправо. После этого снова соедините отрезками новый сплайн с предыдущими (рис. 11.32).
•
!
J Рис. 11.32. Сплайны, описывающие внешний контур ушной раковины
576
Глава 1 1 . Моделирование головы
По тому же принципу постройте еще один сплайн. На этот раз он должен находиться с внутренней стороны ушной раковины. Проще всего сделать такой сплайн при помощи копирования с масштабированием. И, конечно, снова соедините вершины соседних сплайнов отрезками (рис. 11.33).
Рис. 11.33. Каркас из сплайнов, формирующих завиток ушной раковины
Постройте последний сплайн внутри уха для формирования противозавитка. Теперь можно скопировать объект Reference (Подчинение) аналогично тому, как это делали для головы, и применить модификатор Surface (Поверхность). Выполненные действия помогут вам увидеть все изменения, вносимые в модель уха, при этом вы можете продолжать работать со сплайнами (рис. 11.34).
Рис. 11.34. Модель уха после применения модификатора Surface (Поверхность)
Моделирование головы при помощи модуля Surfacetools
577
При построении сплайнов обращайте внимание на то, как они расположены в пространстве, для чего контролируйте построения во всех окнах проекций. Кроме того, время от времени поворачивайте модель в окне проекции Perspective (Перспектива) или User (Пользовательская), чтобы рассмотреть ее со всех сторон. При посгроении поперечных сплайнов не забывайте соединять вершины и объединять их при помощи команды Weld (Объединить). После того как соединятся все вершины, должно получиться примерно такое изображение, как показано на рис. 11.35.
i
• %
|| .
1'
1
Рис. 11.35. Поверхность модели уха после построения всех сплайнов
Дальнейшее моделирование заключается в том, что нужно скорректировать положение построенных вершин. При необходимости преобразуйте вершины в тип Bezier Corner (Угол Безье), чтобы при помощи манипуляторов Безье было удобнее изменять форму сплайна. Для этого выделите необходимые для преобразования вершины и щелкните на них правой кнопкой мыши. В появившемся контекстном меню щелкните на строке Bezier Corner (Угол Безье). Не вдаваясь в детали, постарайтесь передать общую форму ушной раковины (рис. 11.36).
Рис. 11.36. Готовая модель уха
578
Глава 11. Моделирование головы
Теперь можно присоединить ухо к голове. Откройте модель головы и сопоставьте ухо с ее размером и положением. Используя команды Scale (Масштабирование), Rotate (Вращение) и Move (Перемещение) контекстного меню, установите ухо на место (рис. 11.37).
Рис. 11.37. Положение модели уха относительно головы
СОВЕТ Вы можете воспользоваться студией в качестве заднего фона для установки положения модели уха относительно головы. Чтобы присоединить сплайны уха к модели головы, необходимо прежде всего сделать отверстие. Для этого выделите сплайны головы в том месте, где будет крепиться ухо, и удалите их (рис. 11.38). Затем в свитке Geometry (Геометрия) щелкните на кнопке Attach (Присоединить) и в любом окне проекции на сплайнах уха для их присоединения.
Рис. 11.38. Сплайны головы, которые необходимо удалить
После присоединения уха к голове объедините вершины (где нет возможности сделать это напрямую, добавьте сплайны).
Моделирование головы при помощи модуля Surfacetools
579
СОВЕТ Объединяя вершины, старайтесь двигать вершины уха к вершинам головы. Таким образом вы сохраните геометрию головы, которая должна быть выверенной к этому времени. На рис. 11.39 показана схема расположения сплайнов головы и уха после того, как были объединены их вершины.
Рис. 11.39. Расположение сплайнов в области уха
После того как модель уха будет присоединена к голове, можно удалить все копии с поверхностью (если вы не сделали это раньше), в результате чего у вас должна остаться только сплайновая модель половины головы. Сделайте симметричную копию сплайнов. Для этого на панели инструментов щелкните на значке Mirror (Зеркальное отображение) Щ и выберите тип Сору (Независимая копия объекта) создаваемых при дублировании объектов. Для присоединения копии щелкните в свитке Geometry (Геометрия) на кнопке Attach (Присоединить) и в окне проекции на созданной копии.
ВНИМАНИЕ После присоединения одной половины объекта к другой в районе серединной линии окажутся два сплайна, один их которых нужно удалить. Объедините вершины в районе серединной линии, для чего последовательно выделяйте вершины и в свитке Geometry (Геометрия) щелкайте на кнопке Weld (Объединить). После того как все вершины в районе серединной линии будут объединены, можно применить модификатор Surface (Поверхность). На рис. 11.40 показан окончательный вид визуализированной модели головы. В заключение хочется напомнить о том, что мы делали модель головы со средним уровнем детализации. Если вам нужна более точная копия, то необходимо увеличить количество сплайнов, используя тот же подход к построению модели.
580
Глава 1 1 . Моделирование головы
-
Рис. 11.40. Визуализация законченной модели головы
ПРИМЕЧАНИЕ Для ознакомления и анализа модели головы можно загрузить файл surfacejiead.max, который находится в папке СН11\Мах прилагаемого к книге компакт-диска.
Моделирование головы при помощи полигонов В предыдущем разделе вы познакомились с моделированием головы при помощи сплайнов. Продолжим эту тему и рассмотрим моделирование головы с использованием полигонов. Прежде всего, я хочу познакомить вас с пластической анатомией, то есть с тем, что образует внешние формы головы. Правильнее было бы начать с изучения черепа, затем мышц лица и т. д., однако задача данной книги — лишь практическое моделирование, поэтому я оставляю эти материалы для самостоятельного освоения. У каждого человека голова по своему строению и пропорциям индивидуальна, тем не менее можно вывести усредненную схему человеческого лица. Осевая линия (вертикальная) делит голову пополам. Линия, проходящая через ось глаз, делит общую высоту головы пополам. Зрительно нижняя часть нам кажется большей, это происходит из-за значительного количества «деталей» в этой части лица. Если принять ширину глаза за единицу измерения, то можно заметить, что высота головы укладывается
Моделирование головы при помощи полигонов
581
в семь таких единиц, а высота носа равна высоте уха, расстоянию от носа до подбородка и высоте лба до волос (каждый отрезок в отдельности равен двойной величине глаза). Расстояние между глазами, как и расстояние от глаз до крайних точек висков, равно величине глаза. Расстояние между крайними точками крыльев носа также равно этой величине. Расстояние от подбородка до линии рта в два раза больше, чем расстояние от линии рта до носа (Ь). Все приведенные выше измерения, конечно, являются схематичными — в жизни у каждого человека свои пропорции. Тем не менее, можно использовать эту схему как отправную точку для создания модели, внося изменения по мере построения индивидуальной модели головы (рис. 11.41).
Рис. 1 1 . 4 1 . Пропорции головы человека
Перейдем к моделированию. В данном разделе мы не будем применять виртуальную студию, а только используем вышеописанные пропорции и воображение. К тому же задача заключается не в том, чтобы сделать модель, похожую на кого-то. Прежде чем начать создание, поговорим немного о полигональном моделировании. Как понятно из названия, это моделирование при помощи полигонов. Сами по себе полигоны создают грубую, ломаную форму, поэтому неотъемлемой частью моделирования форм органического происхождения является сглаживание. Достигается оно как минимум двумя способами: применением к объекту модификатора MeshSmooth (Сглаженная поверхность) или моделированием посредством Editable Poly (Редактируемая полигональная поверхность). Это почти одно и то же, за исключением незначительных нюансов. Существенная разница заключается в требованиях к ресурсам компьютера — использование Editable Poly (Редактируемая полигональная
582
Глава 1 1 . Моделирование головы
поверхность) примерно в полтора раза больше нагружает компьютер. Поэтому, если это для вас существенно, я рекомендую моделировать посредством Editable Mesh (Редактируемая поверхность) с последующим сглаживанием. В данном задании я опишу моделирование при помощи Editable Poly (Редактируемая полигональная поверхность), как обладающее большими возможностями, но прежде расскажу о некоторых приемах работы с Editable Mesh (Редактируемая поверхность). Постройте примив Box (Параллелепипед). Его габариты должны приблизительно соответствовать пропорциям головы, а количество сегментов по длине, ширине и высоте задайте такое, как показано на рис. 11.42. г -
Parameters
LengthpOO Width) 500.0 Height (700.0 Length Segsp
J si ^
;(
t| j
Width Saesifi Height Sees.fg . P Generate Mat^wtflCooftis, Г
Real-World Map Size
j
Рис. 11.42. Параметры объекта Box (Параллелепипед)
Настоятельно рекомендую строить параллелепипед так, чтобы его ось совпадала с началом координат. Это облегчит работу с зеркальными копиями объектов. В результате построения примитива начальная геометрия для моделирования головы должна выглядеть так, как изображено на рис. 11.43.
Рис. 11.43. Параллелепипед, с которого начинается моделирование головы
На этом операции с параметрическим объектом закончены. Преобразуйте параллелепипед в объект Editable Mesh (Редактируемая поверхность). Для этого щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert To • Convert to Editable Mesh (Преобразовать • Преобразовать в редактируемую поверхность). После того как объект стал редактируемой поверхностью, вы сможете переключаться в режим редактирования подобъектов (вершин, ребер, полигонов).
Моделирование головы при помощи полигонов
583
Начните редактирование с того, что на уровне подобъектов Vertex (Вершина) передвиньте внутренние ряды вершин так, как показано на рис. 11.44.
Рис. 11.44. Положение вершин после того, как внутренние ряды были передвинуты вперед
Чтобы начать формирование шеи, переключитесь в режим редактирования Polygon (Полигон) и выделите четыре нижних полигона. Воспользуйтесь инструментом Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) командной панели и дважды выполните выдавливание (рис. 11.45). Таким образом вы подготовите объект для формирования шеи.
Рис. 11.45. Выдавленные полигоны для начала формирования шеи
Прежде чем продолжать моделирование, необходимо учесть некоторые моменты: • голова симметрична, следовательно, можно моделировать только ее половину; • иметь в окнах проекций при моделировании только половину объекта неудобно, поэтому необходимо воспользоваться экземпляром, чтобы видеть модель головы целиком; • для удобства работы с каркасом модели установите флажок Wire (Каркас) в свитке Shader Basic Parameters (Базовые параметры раскраски) окна Material Editor (Редактор материалов). Выделите в режиме редактирования Polygon (Полигон) левую сторону параллелепипеда и удалите ее. Для оставшейся части сделайте копию. Для этого выполните команду Edit • Clone (Правка • Клонирование) и в появившемся окне Clone Options
584
Глава 1 1 . Моделирование головы
(Параметры клонирования) выберите тип создаваемых при клонировании объектов Reference (Подчинение). Присвойте копии какое-нибудь значимое имя, например Surface, после чего примените к ней модификатор MeshSmooth (Сглаженная поверхность). В настройках модификатора из списка Subdivision Method (Метод разбиения) выберите NURMS, а параметру Iterations (Количество итераций), определяющему количество разбиений, задайте значение 2 (рис. 11.46).
||
Subdivision Method:
3
NURMS
o Whole Mesh Old Style Mapping SubdivisionAmount Iterations: [ 2
t\
Smoothness: J1 0
;j
Рис. 11.46. Параметры модификатора сглаживания поверхности
После того как экземпляру будет назначен модификатор сглаживания, можно сделать его зеркальную копию. Для этого щелкните на кнопке Mirror (Зеркальное отображение) Щ , находящейся на панели инструментов. В открывшемся окне в качестве типа объекта, создаваемого при дублировании, выберите Instance (Привязка). В результате получатся две сглаженные, зеркально расположенные половинки модели головы и еще одна без сглаживания (рис. 11.47).
Рис. 11.47. Взаимное расположение трех половинок одного объекта
Создайте и примените к параллелепипеду материал с настройками, позволяющими отображать объект в каркасном виде (рис. 11.48).
Моделирование головы при помощи полигонов
585
Shatter Basic Parameters Wire Г
Г 2-Srfed
I
Face Map Г Faceted
BlinnSasic Paameteis
Рис. 11.48. Настройки материала для отображения в каркасном виде
Используйте в качестве цвета диффузного отражения контрастные по отношению к объектам цвета (я, например, применил желтый на сером фоне). После назначения материала параллелепипеду объекты должны выглядеть, как показано на рис. 11.49.
Рис. 11.49. Отображение объектов в окне проекции Perspective (Перспектива) после применения материала
Чтобы убедиться в правильности настроек, выделите любую вершину объекта, представленного сеткой (у меня это BoxOl), и попробуйте переместить ее в стороны. Если вслед за вершиной начинают зеркально двигаться обе внутренние половинки, значит, все выполнено удачно, в противном случае проверьте, правильно ли сделаны копии основного объекта.
ПРИМЕЧАНИЕ Можно было обойтись и без третьего объекта, просто опустившись в стеке на уровень Editable Mesh (Редактируемая поверхность) и активизировав в стеке модификаторов Show End Result (Показать конечный результат). Но лично я на начальном этапе моделирования предпочитаю работать так, как описано выше. Все, о чем говорилось выше, относится к построению модели в Editable Mesh (Редактируемая поверхность). Если вы решите моделировать так же, как и я, в Editable Poly (Редактируемая полигональная поверхность), то необходимо вернуться к состоянию параллелепипеда до того, как он был преобразован в редактируемую поверхность,
586
Глава 1 1 . Моделирование головы
и конвертировать его в Editable Poly (Редактируемая полигональная поверхность). Напомню, что это можно сделать, щелкнув на объекте правой кнопкой мыши и выполнив в контекстном меню команду Convert To • Convert to Editable Poly (Преобразовать • Преобразовать в редактируемую полигональную поверхность). После преобразования сделайте зеркальную копию половинки объекта и в качестве типа объекта, создаваемого при копировании, выберите Instance (Привязка). В свитке Subdivision Surface (Поверхности с разбиением) настроек основного объекта установите флажок Use NURMS Subdivision (Использовать NURMS-разбиения), а в области Display (Отображение) параметру Iterations (Количество итераций) задайте значение 2 (рис. 11.50). -_
Subdivision Surface,
j-,
p
Smooth Result
P
Use NURMS Subdivision
X* Isoline Display W Show Cage.. : Display
Г Г
Iterations P Smoothness: f f n
Щ ;j|
Г" Smoothing Sroups Г~ Materials Update Options ^ Always f" When Rendering f" Manuals Update
Рис. 11.50. Свиток Subdivision Surface (Поверхности с разбиением) настроек основного объекта моделирования
Дальнейшая работа состоит в том, чтобы строить форму от общего к частному. Она напоминает работу скульптора, когда из глыбы мрамора постепенно вырисовывается форма будущей скульптуры. Только вместо инструментов скульптора мы будем использовать инструменты для работы с полигонами, ребрами и вершинами. Переместите вершины так, чтобы придать объекту грубую форму головы (рис. 11.51). Обратите внимание, что не следует передвигать в вертикальной плоскости те вершины, которые находятся на линии глаз, — это положение серединной линии головы, и с их помощью мы будем формировать глазные впадины и веки. Далее при помощи Slice Plane (Секущая плоскость) из свитка Edit Geometry (Редактирование геометрии) разделите половину объекта, с которым работаете, по вертикали на две части. Плоскость сечения должна проходить в области расположения носа (рис. 11.52).
Моделирование головы при помощи полигонов
587
Рис. 1 1 . 5 1 . Моделирование начинается с придания объекту общей формы головы
Рис. 11.52. Дополнительные ребра в области носа, полученные при помощи секущей плоскости
Применяя все тот же инструмент Slice Plane (Секущая плоскость), сделайте еще один разрез в области бровей. Этот разрез поможет вам сформировать надбровные дуги и теменную часть затылка (рис. 11.53). СОВЕТ Работая с секущей плоскостью, удобно использовать при поворотах команду Angle Snap Toggle (Переключатель угловых привязок), которая активируется нажатием на клавиатуре А.
588
Глава 1 1 . Моделирование головы
Работая с секущей плоскостью, не забывайте после каждого разреза уточнять положение вновь созданных вершин в пространстве. В противном случае после некоторого количества разрезов задать положение вершин станет значительно сложнее.
Рис. 11.53. Разрез, выполненный в области надбровных дуг
Следующий шаг — разрезание полигонов на фронтальной части модели немного ниже серединной линии для формирования скуловой части лица. Для этого воспользуйтесь инструментом Cut (Вычитание), расположенным в свитке Edit Geometry (Редактирование геометрии) командной панели. Как именно должен проходить разрез, показано на рис. 11.54.
Рис. 11.54. Разрез в области скуловой части лица
Теперь все готово и можно заняться формированием глаза. Для этого вам понадобится сделать еще несколько разрезов, формирующих области вокруг глаза.
Моделирование головы при помощи полигонов
589
Начните с диагональных разрезов, а затем используйте их для построения прямоугольника внутри. После выполнения разрезов скорректируйте положение вершин в окне проекции Front (Спереди) (рис. 11.55).
Рис. 11.55. Разрезы, выполненные в области глаза
Для придания глазу нужной формы вам понадобится сделать еще два вертикальных разреза, один из которых будет проходить через середину глаза (рис. 11.56), а другой — правее его.
Рис. 11.56. Вертикальный разрез, проходящий через середину глаза
Прежде чем продолжить дальнейшее построение формы глаза и делать новые разрезы, необходимо уточнить уже существующую геометрию. Как и в предыдущем задании по моделированию головы при помощи сплайнов, необходимо строить ребра в местах изменения поверхности. Таким образом будет легче получить желаемую форму с минимальным количеством полигонов. При построении разрезов в области надбровной дуги образовался треугольник, который в данном случае является лишним из-за того, что в этом месте будет проходить еще один горизонтальный разрез и появится избыточное количество ребер. По этой причине одно ребро необходимо удалить. Выделите ребро левой стороны треугольника (рис. 11.57, а) и удалите его, щелкнув на кнопке Remove (Удалить) в свитке Edit Geometry (Редактирование геометрии). После удаления ребра образуется прямоугольник с пятью вершинами. В отличие от сплаинового моделирования вы можете оставить пятую вершину как есть, но лучше придерживаться построения полигонов с четырьмя (реже с тремя) вершинами. При помощи инструмента Target Weld (Объединить целевую), находящегося в свитке Edit Geometry (Редактирование
590
Глава 1 1 . Моделирование головы
геометрии), объедините отдельно стоящую вершину с той, которая расположена слева от нее (рис. 11.57, б).
Рис. 11.57. Ребро, подлежащее удалению (а), и ребро, вершину которого необходимо объединить с находящейся слева (б)
Продолжим формирование надбровной дуги и глаза. Для этого сделайте вертикальный разрез в правой части глаза, идущий до подбородка, и горизонтальный по надбровной дуге. После этого можно удалить внутренние полигоны, расположенные внутри ребер, формирующих глаз, и уточнить положение вершин в пространстве (рис. 11.58). ,
.
.
•
•
, . ; • • • • : • • .
Рис. 11.58. Расположение ребер вокруг глаза
Чтобы продолжить формирование глаза, выделите открытые ребра и, удерживая нажатой клавишу Shift, при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать), находящегося на панели инструментов, дублируйте ребра внутрь отверстия два раза. Во второй раз сдвиньте ребра на незначительное расстояние и, не снимая выделения, переместите их внутрь модели для формирования века (рис. 11.59). Чтобы построить правильную с геометрической точки зрения поверхность модели в области глаза, необходимо увеличить сетку полигонов. В связи с этим продолжите наращивать в данном месте полигоны. Сделать это можно при помощи дополнительных разрезов вокруг глаза. Для придания более острой формы в местах крепления ресниц воспользуйтесь параметром Crease (Складка) для соответствующих ребер или примените инструмент для создания фаски (Chamfer (Фаска)) (рис. 11.60).
Моделирование головы при помощи полигонов
•:
,л '
- . . . - ; . . .
'
.
, . .
:
;
• • ; ; "
.-.
'•••
• . - ; . .
:
591
••.
":.':
^'
Рис. 11.59. Сглаженная форма модели в области глаза
Рис. 11.60. Дополнительные ребра в области глаза
Дальнейшее уточнение формы глаза необходимо проводить по сфере, имитирующей форму глазного яблока (само глазное яблоко вы можете смоделировать позже). Задача заключается в том, чтобы после уточнения положения вершин в пространстве нижнее и верхнее веки расположились по поверхности сферы (рис. 11.61). В процессе моделирования вам, возможно, придется еще не раз возвращаться к уточнению формы головы в области глаза, но на данном этапе той детализации, которую вы уже сделали, будет достаточно. Перейдем к формированию носа и губ. Для их построения вам понадобится сделать два разреза секущей плоскостью у основания носа и через середину губ.
592
Глава 1 1 . Моде
Напоминаю что согласно описанным ранее пропорциям высота нижней части лица Т а В Л е Т
£
Р а З М б Р а Г0Л
°
ВЫ И Р а В Н Э р а С С Т О Я Н И Ю о т
™Дбородка до основания
Рис. 1 1 . 6 1 . Форма глаза, уточненная по сфере
и с е р е д и н ы г у б ° С Т 0 Я Н И е М ° Д 6 Л И П°°Лв
В Ы П 0 Л н е н и я
Р а з Р е з о в в области основания носа
Прежде чем приступить к моделированию губ, вам нужно сделать разрезы полиго ней Г Г Н И Х - Д Г Э Т 0 Г 0 В 0 С П 0 Л Ь З У й т е с ь инструментом Си" (ВычитаниеГв верхней части разрез берет начало немного ниже основания носа, а заканчивается во впадине, формирующей подбородок, проходя через крайние точки губ (рис 11 63)
Рис. 11.63. Начало формирования рта
Моделирование головы при помощи полигонов
593
Если вы в дальнейшем собираетесь анимировать лицо, то обязательным условием для этого будет моделирование полости рта, что повлечет раздельное моделирование верхней и нижней губы. Чтобы создать разрез в области рта, выделите ребра, проходящие в середине губ, и щелкните в свитке Edit Edges (Редактирование ребер) на кнопке Split (Разделить). В результате ребра разделятся, и образуется по две пары вершин. Разведите соседние вершины в стороны так, чтобы образовалось отверстие, после чего отредактируйте их положение в пространстве (рис. 11.64).
шш II
4
шШШМИШШШШШШШШШШШКШШЯ* Рис.
11.64. Ребра, определяющие разрез рта
Чтобы правильно построить модель губ, необходимо добавить вертикальные полигоны в уголках рта. Это можно сделать, разделив ребра, проходящие от уголка рта и до затылка. Для этого выполните следующие действия. 1. Выделите одно ребро, следующее за уголком губ, и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате выделится весь ряд ребер вплоть до серединной линии. 2. Щелкните на кнопке Chamfer (Фаска) в свитке Edit Edges (Редактирование ребер) и в окне проекции Front (Спереди) или Perspective (Перспектива) постройте фаску для выделенных ребер (рис. 11.65).
Рис.
11.65. Фаска, построенная на ребрах, идущих от уголков губ
После этого вершины, относящиеся к разрезу губ, нужно объединить с вновь образованными снаружи, чтобы образовалось прямоугольное отверстие в уголках
594
Глава 1 1 . Моделирование головы
губ (рис. 11.66). Уточните также положение вновь созданных вершин в пространстве (как минимум необходимо раздвинуть их по высоте).
Рис. 11.66. Положение ребер в уголках губ после слияния вершин
Сделайте еще несколько разрезов, формирующих область губ. Первый вертикальный разрез должен пройти от глаза через крайнюю точку крыла носа и до разреза верхней губы (рис. 11.67, а). Второй — по линии формирования губ с таким расчетом, чтобы в уголках губ образовалось по одному дополнительному полигону (рис. 11.67,6).
Рис. 11.67. Вспомогательные разрезы для формирования области губ (а) и расположение ребер в уголках губ (б)
Не забывайте уточнять положение вновь сформированных вершин в пространстве, контролируя их во всех окнах проекций. Чтобы сделать линию губ более четкой, необходимо выделить ребра по периметру и построить Chamfer (Фаска) с небольшой величиной смещения. Для завершения моделирования губ на данном этапе нужно правильно расположить в пространстве вершины, формирующие их. Особое внимание уделите вершинам, расположенным в уголках губ. Возможно, вам придется затратить больше времени, чем вы предполагали, но не стоит продолжать моделирование, не получив удовлетворительного результата, в противном случае ошибки начнут накапливаться, и в итоге вид модели окажется далек от желаемого.
Моделирование головы при помощи полигонов
595
СОВЕТ Если у вас недостаточно знаний в пластической анатомии и опыта персонажного моделирования, воспользуйтесь зеркалом для подробного изучения отдельных частей лица в процессе моделирования. То, что на данном этапе получилось у меня, представлено на рис. 11.68.
Рис. 11.68. Размещение ребер, формирующих губы Теперь сформируем подбородок, для чего нужно сделать еще один дополнительный разрез. Он должен пройти от ребра, расположенного на уровне губ, до серединной линии и расположиться в выступающей части подбородка (рис. 11.69). Ребро, образовавшееся в процессе разреза и проходящее по диагонали через полигон, лежащий справа от губ, удалите при помощи кнопки Remove (Удалить).
Рис. 11.69. Ребра, формирующие подбородок Построим полость рта. Для этого выделите ребра, окаймляющие разрез губ и, удерживая нажатой клавишу Shift, сделайте три копии ребер внутрь. После этого объедините крайние вершины, чтобы образовалось замкнутое пространство, а промежуточные немного раздвиньте по вертикали для увеличения внутреннего пространства полости рта (рис. 11.70). Перейдем к построению носа. Прежде всего сделайте дополнительный вертикальный разрез от надбровной дуги до верхней губы (рис. 11.71). Затем так же, как и в случае с подбородком, удалите ребро, ставшее лишним после выполнения разреза.
596
Глава 1 1 . Моделирование головы
Рис. 11.70. Полость рта, сформированная при помощи копирования ребер
Рис. 11.71. Вспомогательный вертикальный разрез для моделирования носа Для формирования крыльев носа сделайте еще один разрез (рис. 11.72).
Рис. 11.72. Разрез, определяющий форму крыльев носа
После этих разрезов необходимо выделить полигоны, образующие спинку и крылья носа, чтобы применить к ним инструмент Extrude (Выдавливание). Результат показан на рис. 11.73. То, что получилось после выдавливания, еще мало похоже на будущий нос. Удалите полигоны, сформировавшиеся в процессе выдавливания с внутренней стороны носа по осевой линии. После сместите вновь созданные вершины. В области переносицы и в верхней части носа (со стороны глаза и щеки) вершины нужно
Моделирование головы при помощи полигонов
597
объединить, чтобы создать плавный переход от лобной кости к переносице. Затем расположите оставшиеся вершины в пространстве для придания поверхности объекта формы носа (рис. 11.74). Помните, что контролировать построения нужно во всех окнах проекций и время от времени поворачивать модель в окне проекции Perspective (Перспектива) или User (Пользовательская), чтобы рассмотреть ее в деталях.
Рис. 11.73. Положение полигонов, формирующих нос, после выдавливания
Рис. 11.74. Форма носа после предварительной корректировки вершин
Продолжая моделирование формы носа, сделайте дополнительные разрезы для увеличения плотности полигонов в нижней части (в области крыльев носа). Линия разреза пройдет по верхнему краю отверстия в носу и внешней части крыла носа. Чтобы получить округление носа в месте излома геометрии, необходим еще один разрез (рис. 11.75).
598
Глава 1 1 . Моделирование головы
Рис. 11.75. Два разреза, выполненные для увеличения количества полигонов у основания носа
После создания разрезов уточните геометрию носа при помощи перемещения вершин, формирующих его. Перейдем к моделированию отверстия в носу. Для его построения нужно выделить полигон в нижней части и дважды применить выдавливание. Первый раз на небольшую величину с уменьшением, чтобы сформировать край, а затем на высоту четверти носа (рис. 11.76).
Рис. 11.76. Отверстия в носу, выполненные при помощи выдавливания полигонов
Сделайте еще несколько сечений, чтобы построить складку, идущую от носа к уголкам губ (рис. 11.77).
• ,
Рис. 11.77. Разрезы для формирования складки
Моделирование головы при помощи полигонов
599
После этого удалите лишнее ребро, образованное в результате сечения.
СОВЕТ Не забывайте, что лучшего результата сглаживания можно достичь, имея минимальное количестве полигонов с тремя сторонами. Таким образом, во всех местах, где можно использовать полигоны с четырьмя сторонами вместо полигонов с тремя, нужно сделать соответствующие изменения.
После выполнения всех уточнений можно перейти к построению уха. Но прежде проверьте еще раз модель во всех окнах проекций, поверните ее в окне проекции Perspective (Перспектива) и рассмотрите со всех сторон. Очень важно делать это постоянно, в противном случае можно пропустить ошибки, которые чем дальше, тем сложнее будет исправить. Важно все рассматривать в целом, но не забывать уделять внимание и деталям. На рис. 11.78 показана модель на стадии начала построения уха.
Рис. 11.78. Результат визуализации модели головы перед началом построения уха
Построение уха, как и предыдущих деталей модели головы, начинается с разрезов. Сначала необходимо сформировать место, на котором ухо будет крепиться к голове. Для этого выполните разрезы полигонов, как показано на рис. 11.79.
Рис. 11.79. Разрезы, выполненные в местах крепления уха к голове
600
Глава 1 1 . Моделирование головы
По форме разрезы, расположенные внутри, должны напоминать немного наклоненный эллипс. Пока можно не обращать внимания на трехсторонние полигоны — позже их нужно будет модифицировать. В окне проекции Right (Справа) выделите полигоны, находящиеся внутри разрезов, и, щелкнув на кнопке Extrude (Выдавливание) в свитке Edit Polygons (Редактирование полигонов), выдавите выделенные полигоны на небольшую величину (рис. 11.80, а). Не снимая выделение, разверните их немного в сторону лица (рис. 11.80, б), используя инструмент Select and Rotate (Выделить и повернуть), находящийся на панели инструментов. ' '.';
""
'
.„/
Рис. 11.80. Полигоны уха, выдавленные при помощи команды Extrude (Выдавливание) (а) и повернутые в окне проекции Тор (Сверху) (б)
Почти весь процесс создания ушной раковины заключается в построении при помощи выдавливания новых полигонов и редактировании положения вершин в пространстве. Поэтому желательно удалить (обязательно при помощи кнопки Remove (Удалить) в свитке Edit Edges (Редактировать ребра)) ребро, проходящее внутри полигонов, образовывающих ухо. Того количества вершин, которое образовалось в процессе разрезания, вполне хватит для основания уха, но недостаточно для формирования ушной раковины. В связи с этим, прежде чем выполнять дальнейшие выдавливания рельефа и наращивать полигоны, необходимо немного увеличить количество вершин, определяющих форму уха. Для этого выделите три вершины, находящиеся со стороны лица в последнем ряду, и примените к ним Chamfer (Фаска) из свитка Edit Vertices (Редактирование вершин). В результате на верхней грани добавятся три вершины (рис. 11.81).
Рис. 1 1 . 8 1 . Новые вершины, образованные инструментом Chamfer (Фаска)
Моделирование головы при помощи полигонов
601
Продолжим выдавливание. На этот раз лучше всего воспользоваться инструментом Bevel (Выдавливание со скосом), чтобы не просто выдавить полигоны, но и раздвинуть их в стороны на небольшое расстояние, начав формирование завитка уха. СОВЕТ Того же результата можно достичь, выдавив полигоны при помощи инструмента Extrude (Выдавливание), с последующим масштабированием выдавленных полигонов при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать), находящегося на панели инструментов.
После выдавливания полигонов необходимо сдвинуть вершины переднего края уха. Это позволит начать формирование козелка (выступающей части уха, за которой находится ушное отверстие) (рис. 11.82).
Рис. 11.82. Расположение ребер после выполнения корректировки положения вершин в окнах проекций Right (Справа) (а) и Front (Спереди) (б)
Выполните еще два выдавливания внутренних полигонов для формирования завитка ушной раковины. Чтобы получить скругленную форму в середине завитка, можно воспользоваться вместо инструмента Extrude (Выдавливание) инструментом Bevel (Выдавливание со скосом), находящимся в свитке Edit Polygons (Редактирование полигонов) командной панели. При формировании новых полигонов необходимо немного увеличить ребра среднего ряда (рис. 11.83).
:
.
.
.
.
.
.
.
.
.
.
.
.
•
Рис. 11.83. Полигоны, формирующие внешнюю геометрию завитка уха
602
Глава 11. Моделирование головы
Теперь можно перейти от формирования внешней части ушной раковины к созданию полигонов ее внутренней части. Для этого постройте ряд полигонов со смещением внутрь, например, при помощи инструмента Bevel (Выдавливание со скосом). Не снимая выделения с полигонов в средней части уха, сделайте скос с нулевым значением по высоте и отрицательным значением величины смещения контура. Это позволит сделать ряд внутренних ребер завитка (рис. 11.84).
Рис. 11.84. Размещение полигонов ушной раковины в окне проекции User (Пользовательская)
Сделайте два разреза для формирования закругления козелка в его верхней части и объедините вершины у его основания, чтобы уменьшить плотность сетки полигонов. Внимательно осмотрите со всех сторон выдавленные полигоны и уточните положение вершин. На данном этапе моделирования уточнения должны носить общий характер, то есть нужно обратить внимание только на большие формы, не вникая в детали (рис. 11.85).
Рис. 11.85. Положение и форма ребер козелка после их редактирования
Выполните еще одно выдавливание центрального полигона, но с отрицательным значением. Эта операция позволит выполнить закругление завитка ушной раковины и положит начало построению полигонов внутренней части (рис. 11.86). Моделирование внутренней части ушной раковины требует дополнительных разрезов по линии излома. На рис. 11.87 показаны ребра, построенные при помощи инструмента Cut (Вычитание), и их расположение в пространстве.
Моделирование головы при помощи полигонов
603
Рис. 11.86. Начало формирования внутренней части уха
Рис. 11.87. Разрезы во внутренней части ушной раковины
Выделите еще раз внутренний полигон и сделайте последнее выдавливание на небольшую величину (рис. 11.88).
Рис. 11.88. Положение полигона внутренней части ушной раковины в окнах проекций Тор (Сверху) (а) и User (Пользовательская) (б)
Осталось самое сложное в моделировании ушной раковины — окончательное уточнение положения вершин в пространстве. Вы можете использовать для этого фотографии уха крупным планом, которые можно найти в Интернете. При уточнении формы ушной раковины необходимо сделать предварительное редактирование вершин на модели без сглаживания, и только после этого включить
604
Глава 1 1 . Моделирование головы
сглаживание полигонов и окончательно отредактировать. Еще раз напоминаю: все операции, связанные с перемещением вершин в пространстве, следует контролировать во всех окнах проекций. Модель уха, которая получилась у меня, представлена на рис. 11.89.
Рис. 11.89. Модель уха в окне проекции Right (Справа)
Напомню, что модель головы делается со средним уровнем детализации. Для получения большего контроля над формой уха (равно как и всей модели) необходимо увеличить количество контрольных вершин. Это позволит более точно передать его форму, но вместе с тем у человека, не имеющего достаточного опыта в моделировании, может вызвать дополнительные трудности. На рис. 11.90 представлен результат визуализация модели головы после объединения двух половинок при помощи модификатора Symmetry (Симметрия).
Рис. 11.90. Результат визуализации модели головы после применения модификатора Symmetry (Симметрия)
Моделирование ресниц
605
ПРИМЕЧАНИЕ Для анализа модели головы, выполненной при помощи полигонов, вы можете загрузить файл poly_head.max, который находится впапкеСН11\Мах прилагаемого к книге компакт-диска.
Моделирование ресниц Существует несколько способов создания ресниц для модели головы человека: начиная с использования текстурных карт и заканчивая моделированием каждой ресницы в отдельности. В данном разделе рассмотрим, как автоматизировать процесс создания ресниц для модели головы среднего и высокого уровня детализации. Для работы вам понадобится модель головы или фрагмент (рис. 11.91), который можно найти на прилагаемом к книге компакт-диске в папке СН11 \Мах. Файл называется e y e l a s h e s s t a r t , max.
Рис. 1 1 . 9 1 . Фрагмент модели головы, предназначенный для моделирования ресниц
ПРИМЕЧАНИЕ В данном случае я буду использовать фрагмент полигональной модели головы, хотя метод моделирования, описанный в данном упражнении, можно с таким же успехом применить для Surface- или NURBS-поверхности. Для дальнейшей работы понадобится сплайн, который следует разместить на поверхности модели в местах естественного роста ресниц. Проще всего получить такой сплайн, используя ребра, формирующие поверхность модели лица. Для этого
606
Глава 1 1 . Моделирование головы
выделите объект Face и перейдите на уровень редактирования ребер. Выделите ребро, расположенное на границе разреза глаза, и щелкните на кнопке Loop (Петля), расположенной в свитке Selection (Выделение). В результате этих действий должны выделиться все ребра вокруг глаза (рис. 11.92).
Рис. 11.92. Ребра, выделенные вокруг глаза после применения инструмента Loop (Петля)
Щелкните на кнопке Create Shape From Selection (Создать форму из выделения) из свитка Edit Edges (Редактировать ребра). В открывшемся окне Create Shape (Создать форму) необходимо установить переключатель типа создаваемого сплайна в положение Smooth (Сглаженный) (рис. 11.93).
;: Cwve Name: jShapeOT Shape Type « L
QK
Smooth Г Ltmat |
Carnal
Рис. 11.93. Окно Create Shape (Создать форму)
Выделите созданный сплайн и перейдите на уровень редактирования сегментов, щелкнув для этого на кнопке Segment (Сегмент) •• .••. в свитке Selection (Выделение). Выделите сегменты сплайна, расположенные в углах созданной кривой, и удалите их. Таким образом, у вас останется сплайн только там, где должны находиться ресницы (рис. 11.94). СОВЕТ Чтобы было удобнее работать со сплайнами и геометрией ресниц, можно при помощи команды Hide (Скрыть) спрятать все ненужные на данном этапе объекты.
Моделирование ресниц
607
Рис. 11.94. Форма сплайна после удаления угловых сегментов
Верхние и нижние ресницы отличаются по форме и расположению на поверхности век, поэтому построенный сплайн необходимо разделить на два самостоятельных сплайна — один для верхних ресниц, второй для нижних. Для этого перейдите на уровень редактирования подобъектов Spline (Сплайн) |v\, выделив нижнюю часть общего сплайна, и щелкните на кнопке Detach (Отделить) из свитка Geometry (Геометрия). Таким образом, у вас окажется два самостоятельных сплайна (рис. 11.95).
Рис. 11.95. Объект, разделенный на два самостоятельных сплайна
608
Глава 1 1 . Моделирование головы
ПРИМЕЧАНИЕ Для Surface-модели можно использовать сплайны поверхности. Для NURBS — кривые поверхности. Можно также построить самостоятельные сплайны, которые находятся на поверхности объекта в местах расположения ресниц. Каким образом это будет сделано — не имеет значения.
Перейдем к построению ресниц. Начнем с создания цилиндра. Расположите его недалеко от сплайнов, чтобы иметь возможность сопоставить размеры и положение в пространстве. В моем случае радиус цилиндра равен 0,005, а высота — 0,36 (если вы будете использовать собственную модель головы или ее фрагмент, то размеры строящегося цилиндра, скорее всего, будут другими). При построении цилиндра необходимо обратить внимание на значение параметра Height Segments (Количество сегментов по высоте) — он должен быть не менее 4, a Sides (Количество сторон) — иметь значение от 3 до 5. Кроме того, должен быть установлен флажок Smooth (Сглаживание) (рис. 11.96).
CylmderOI
d
Modifiei List Cinder
•*» Hi V Parameters Z>
Radius; fOJXK Height [036 Hetgh! Segments: [5 Cap Segments: f i
tj ~~ S] ~~*
Sides: [5
jj
№ Smooth Г
Slice On
17 GeneiateMapping Coords,
Рис. 11.96. Относительный размер (а) и свиток параметров строящегося цилиндра (б)
Заострите цилиндр, применив к нему модификатор Taper (Заострение) (11.97). Далее воспользуйтесь модификатором Bend (Изгиб) и изогните объект так, чтобы он стал похож на ресницу, расположенную на верхнем веке (рис. 11.98). Расположим созданную ресницу на построенном ранее сплайне, а затем размножим ее. Начнем с того, что выполним привязку ресницы к сплайну, затем анимируем ее масштаб по мере продвижения к наружной части века. Для этого в одном из окон проекций выделите построенную ресницу и выполните команду Animation • Constraints •
Моделирование ресниц
609
Path Constraint (Анимация • Ограничения • Ограничения пути). В качестве пути следования ресницы укажите в одном из окон проекций верхний сплайн.
jCylind«01
3 Ж Pi. J.S*.
^
Parameters
ГTapef' ' ~ Z Z Z Z — \
Amountij-O.g
; j
|
CuivejOO
Cj
I" Taper Амз; * Pnmaiy:^1 x С" У <* Z Eftect:*"" Х Г
Г
Y*
Lmit Effect j
Рис. 11.97. Полученный цилиндр (а) и настройки модификатора Taper (Заострение) (б)
Ш Ti |CylinderO1 JModilierList
9 о Bwd <4> • Taper
e i la
-й Nil ; Bend Angle [ М О (
Ditectran ] -90.0
С Jj
r Bend Anis
Г X
Г Y
Г
* Z
Limit Effect
'• Lower Lwnit 10 0
Рис. 11.98. Полученная ресница (а) и настройки модификатора Bend (Изгиб) (б)
В результате на командной панели откроется свиток с настройками параметров контроллера анимации. В свитке Path Parameters (Параметры пути) (рис. 11.99) установите флажок Follow (Следовать), благодаря чему модель ресницы будет все время располагаться перпендикулярно сплайну.
610
Глава 1 1 . Моделирование головы PUhPmtmtm Add Path Delete Path
-Target
Weight-
Waghtp^r
Jj
Path Options
;
X Along Path: |Ш) | | f ? Foltow I
[Щ \
Г Bank
Sank Amount [
S j •I l
Smoothness.] j •> AHovv1 Upside Down Constant Velocity Loop
Г~ Relative
X Г Y Г 2 Г flip
Рис. 11.99. Свиток Path Parameters (Параметры пути)
Если вы сейчас передвинете ползунок таймера в правую сторону шкалы кадров, то увидите, что модель ресницы начнет движение по кривой от начала сплайна (его первой точки) до его конца. Сделаем так, чтобы ресницы по мере удаления от начала сплайна становились длиннее и гуще. Для этого выполните следующие действия. 1. Щелкните на кнопке Auto Key (Автоключ), расположенной в правой нижней части окна программы, для автоматической записи ключей анимации. В результате кнопка станет красной, что указывает на ее активное состояние. 2. Выделите ресницу и перейдите в последний кадр анимации (у меня — сотый). 3. Выполните одно из двух действий: либо увеличьте высоту цилиндра в 1,3-1,5 раза в его свойствах, либо на столько же масштабируйте объект при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать). Еще раз щелкните на кнопке Auto Key (Автоключ), чтобы выключить запись ключей. Проверьте анимацию, щелкнув на кнопке Play Animation (Воспроизвести анимацию) (F), расположенной справа от кнопки записи ключей анимации. При воспроизведении анимации ресница должна не только двигаться по сплайну, но и увеличиваться в размере. Далее можно сделать так, чтобы ресницы ближе к внешнему краю века становились гуще.
Моделирование ресниц
611
ПРИМЕЧАНИЕ Для верхних ресниц это менее актуально, нежели для нижних, которых меньше, чем верхних, но ближе к внешнему краю века они обычно становятся гуще. Выполнение этих действий совсем не обязательно, однако может подчеркнуть форму глаза, особенно на женском лице. Для изменения густоты ресниц необходимо изменить скорость продвижения объекта по сплайну так, чтобы по мере удаления от начала происходило ускорение. Проще всего это сделать, откорректировав кривую в окне редактора кривых, которое можно вызвать кнопкой главной панели инструментов Curve Editor (Open) (Редактор кривых (открыть)) В левой части окна Track View — Curve Editor (Редактор треков — редактор кривых) выделите строку с именем Percent (Проценты), относящуюся к анимации ограничения по пути, после чего в правой части окна добавьте к кривой 3-4 новых ключа и определите их положение так, чтобы получилась изогнутая кривая (рис. 11.100). ©TrackWet» CurveEditor ;j$sd«s Settinoj Sfxlttter
tree!» £еу5 &rv*t
* \J \
bfi, * j
f: , i
' J Objects —|CylnderO1 |J5] Transform j - g g Positron I - И Position >0r7 I j...... [ g x Position I I- JTJY Position j i JT]Z Position : ВЦ Path Constraint Bank Amount J Smoothness I—g:WerghtO ! E]Avatable L_®—Weights -Hjgl Rotation ! J - ] X Rotation t
R
'1'Rotat10n
JS,
5»1Г
Рис. 11.100. Окно редактора кривых Если бы мы сейчас выполнили построение копий ресницы, то получили бы серию объектов, расположенных вдоль сплайна, ровно обрезанных и направленных перпендикулярно к сплайну пути. Такое положение не является естественным для ресниц, поэтому необходимо внести некоторое разнообразие, можно даже сказать, некоторый хаос. Это можно сделать при помощи двух контроллеров: поворота и масштаба следующим образом. 1. Переместите ползунок анимации на первый кадр и выделите в одном из окон проекций ресницу. 2. Выполните команду Animation • Rotation Controllers • Noise (Анимация • Контроллер поворота • Шум). Таким образом, от кадра к кадру будет хаотически изменяться положение ресниц в пространстве.
612
Глава 1 1 . Моделирование головы
3. Выполните команду Animation • Scale Controllers • Noise (Анимация • Контроллер масштаба • Шум). Кроме изменения положения будет произвольным образом изменяться и масштаб ресниц. ПРИМЕЧАНИЕ При желании вы можете изменить параметры контроллера шума для достижения максимально правдоподобного размещения и размера ресниц. Сделать это можно, например, двумя способами. Во-первых, при помощи изменения веса контроллера (значения параметра Weight (Вес) в свитке Scale List (Список масштаба) командной панели). Во-вторых, в окне с настройками свойств контроллера (рис. 11.101), которое вызывается из контекстного меню при щелчке правой кнопки мыши на имени контроллера (в списке свитка Assign Controller (Назначить контроллер) вкладки Motion (Движение) командной панели).
Noise Controller : CyllnderO! \Noise Scale Seed: Щ
; | X Strength: f50~0
: Г >0 :
:(Ш
•Гяга
FiactalNoee Roughness: [ Л
R j j
: ] r >o
5 г >o
RatnpmjCT Rampoutf
ChareolemticGfeph:
Рис. 1 1 . 1 0 1 . Параметры настройки контроллера масштаба
Теперь нужно скопировать объекты. Для этих целей воспользуемся командой главного меню Tools • Snapshot (Сервис • Снимок), предварительно выделив модель ресницы. В результате выполнения этой команды откроется окно Snapshot (Снимок), в котором необходимо установить переключатель в положение Range (Диапазон) и задать диапазон с нулевого по сотый кадр со значением параметра Copies (Количество копий) равным 100. Переключатель Clone Method (Метод клонирования) необходимо установить в положение Mesh (Сетка) (рис. 11.102).
Snap*ot
f " *OK t[
<~ Single
* Range
fromfo
-:
l a : [TOO
^_
Copies: [Too
^j
Cancel
|
Clone MethodС Copy Г
С Reference
Instance * Mesh :
лг-
Л1
,
1 ПО
i
rii-un
'
.
.
'I'.''"
1
•
nwannra Cn 1j n c h n t /Рим|1ЛГ\|/\
Моделирование ресниц
613
ВНИМАНИЕ Переключатель Clone Method (Метод клонирования) должен быть обязательно установлен в положение Mesh (Сетка), в противном случае строящиеся объекты будут наследовать свойства клонируемого объекта и не будут уникальными. Иначе говоря, вы не получите того разнообразия форм и положения ресниц, к которому мы стремимся.
Щелкните на кнопке ОК и вы увидите, как построятся 100 копий ресницы, расположенных по всему сплайну (рис. 11.103).
Рис. 11.103. Результат визуализации построенных ресниц
Создание нижних ресниц выполняется аналогичным образом с той лишь разницей, что их количество должно быть меньшим, например 70.
СОВЕТ В самом начале упражнения мы разделили сплайн на две части. В результате первая вершина нижнего сплайна оказалась справа. Для удобства в настройке и построении клонированных ресниц можно назначить первой левую вершину сплайна. Для этого выделите ее на уровне подобъектов и щелкните на кнопке Make First (Сделать первой) из свитка Geometry (Геометрия).
На рис. 11.104 представлен окончательный вид фрагмента модели лица с ресницами.
614
Глава 11. Моделирование головы
Рис. 11.104. Результат визуализации фрагмента лица с построенными ресницами (%£)
ПРИМЕЧАНИЕ Если у вас возникли трудности с построением ресниц, вы можете загрузить файл eyelashes_end.max, который находится в папке СН11\Мах прилагаемого к книге компакт диска.
Использование UV-проецирования для полигональной модели головы Вы потратили массу драгоценного времени, вы вложили огромное количество труда и терпения в эту работу, и, наконец, вот результат — готовая полигональная модель головы. Что же дальше? А дальше — присвоение объекту проекционных (текстурных) координат, их редактирование (обычно без этого не обходится) и создание самой текстуры или нескольких текстур для различных каналов. Существуют программы, облегчающие эту задачу. Deep Paint 3D фирмы Right Hemisphere, Body Paint 3D от MAXON (разработчика Cinema 4D), небольшая программа, специализирующаяся на присвоении проекционных координат объектам, — UVMapper Pro и др. О проекционных координатах мы уже говорили в разделах, посвященных простому и сложному текстурированию, в упражнении по текстурированию ослика. Изучение этих уроков поможет вам понять, что такое проекционные координаты и для чего
Использование UV-проецирования для полигональной модели головы
615
они применяются, а также научиться основам наложения проекционных координат применительно к объектам простой и сложной формы. В данном разделе я хочу рассказать о том, как присвоить проекционные координаты полигональной модели головы человека, используя собственные возможности программы 3ds Max 8. Итак, обратимся к модели. Если вы, как и я, моделировали голову при помощи полигонов, причем создавали только половину модели с последующим применением модификатора Symmetry (Симметрия), то используйте эту половинку для текстурирования (рис. 11.105).
Рис. 11.105. Половинка модели головы, предназначенная для наложения текстурных координат
Если вы, моделируя голову, успели соединить обе половинки модели, то выполните одно из следующих действий. •
Выделите и удалите одну из половинок симметричной модели. После присвоения проекционных координат вы снова сможете создать симметричную копию и присоединить ее.
•
Если модель в результате редактирования приобрела асимметрию, то есть одна половинка стала непохожа на другую (например, вы изменили форму подбородка или одного уха), то можно скопировать готовую модель головы и удалить половину копии. При этом главное и единственное требование — обе половинки должны иметь одинаковое количество полигонов (вершин). В результате, после назначения проекционных координат копии модели, можно будет сохранить созданные координаты в файл (такая возможность есть у модификатора Unwrap UVW (Расправить UVW-проекцию)), а затем подгрузить их в основную модель.
616
Глава 1 1 . Моделирование головы
ПРИМЕЧАНИЕ Вы можете воспользоваться моделью, которая находится на прилагаемом к книге компакт-диске в папке СН11\Мах. Файл сцены называется UV_map_start.max. Обратите внимание, что модель должна иметь максимально упрощенный вид. Для этого в свитке Subdivision Surfaces (Поверхности с разбиением) отключите использование NURMS-разбиений модели, для чего снимите флажок Use NURMS Subdivision (Использовать NURMS-разбиения). Для упрощения последующих трансформаций необходимо поместить модель в начало координат, причем в нулевой координате должен находиться осевой срез половинки модели (рис. 11.106).
Рис. 11.106. Расположение половины модели относительно оси координат
Желательно до начала проецирования определить проблемные зоны и назначить им собственные идентификаторы материала. Для головы это обычно полость рта (если вы ее моделировали), углубления в носу и уши. Иначе говоря, это те части геометрии модели, где полигоны перекрывают друг друга. Чтобы назначить идентификатор материала, выполните следующие действия. 1. Выделите модель и перейдите на уровень редактирования полигонов. 2. Выделите всю модель и присвойте ей идентификатор материала соответствующий 1, для чего задайте параметру Set ID (Установить идентификатор) свитка Polygon Properties (Свойства полигона) значение 1 (рис. 11.107) и нажмите Enter для подтверждения. 3. Любым доступным способом выделите необходимые полигоны внутри полости рта и присвойте им значение идентификатора материала 2. 4. Выделите полигоны, составляющие отверстие в носу, и присвойте им значение 3. 5. Выделите все ухо или только ту его часть, которая расположена со стороны головы. Назначьте уху идентификатор материала 4.
Использование UV-проецирования для полигональной модели головы
617
9jiOJ11!12J13 14 15|16 17 18 19 20 21 22 23J24 2S|2SJ 27 28,23 30 31132 SetedJySSJ
Clear All
Auift Smooth I145.0
Рис. 11.107. Свиток Polygon Properties (Свойства полигона) с назначенным идентификатором материала
ПРИМЕЧАНИЕ Назначение идентификаторов материала не является обязательным при работе с проецированием, однако таким образом можно облегчить выбор вершин при редактировании проекционных координат. После этого можно переходить к присвоению проекционных координат. Лучше всего сделать это следующим способом. 1. Назначить модификатор Unwrap UVW (Расправить UVW-проекцию). 2. Применить цилиндрическое или сферическое проецирование. 3. Подкорректировать проблемные места. Начнем с первого. Проследите за тем, чтобы у вас не было выделено подобъектов (полигонов, вершин и т. д.), в противном случае модификатор будет применен только к выделению. После этого выполните команду Modifiers • UV Coordinates • Unwrap UVW (Модификаторы • UV-координаты • Расправить UVW-проекцию) и перейдите на уровень редактирования подобъектов модификатора Face (Грань). Выделите все грани модели и назначьте им сферическую систему проецирования, щелкнув на кнопке Spherical (Сферическая) в свитке Map Parameters (Параметры проецирования) (рис. 11.108). Находясь на уровне редактирования подобъектов Face (Грани), при помощи инструмента Select and Move (Выделить и переместить) передвиньте в окне проекции Тор (Сверху) габаритный контейнер модификатора так, чтобы его ось выровнялась по срезу модели. После этого разверните контейнер так, чтобы зеленая линия, указывающая на шов карты текстурных координат, оказалась со стороны затылка.
618
Глава 1 1 . Моделирование головы
!;j Head - Modifier List > В Unwrap UVW
i-
Vertex
I
Edge
'•'-• Face
Editable Poly
-ft
': fl • i. V.: в: 1 й
J j ; Setectien Paratreters .
Plan» Cylindrical 1 Spherical
Рис. 11.108. Настройки модификатора Unwrap UVW (Расправить UVW-проекцию) в режиме редактирования Face (Грань)
Затем при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) масштабируйте контейнер по оси X так, чтобы он охватил весь объект (рис. 11.109).
Рис. 11.109. Габаритный контейнер модификатора Unwrap UVW (Расправить UVW-проекцию), выровненный по оси симметрии модели
Использование UV-проецирования для полигональной модели головы
619
СОВЕТ Чтобы быстро выполнить выравнивание относительно нулевой точки системы координат, необходимо на главной панели инструментов щелкнуть правой кнопкой мыши на Select and Move (Выделить и переместить), а затем в поле для ввода значения по координате X появившегося окна ввести 0. В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVW-npoекцию) щелкните на кнопке Edit (Правка), в результате чего откроется окно редактирования проекционных координат Edit UVWs (Редактирование UVW), где будет представлена развертка половинки модели головы (рис. 11.110). К ) Edit UVWs Fie
Ecffi
Select
Tools
Mapping
Options
Display
View
Рис. 11.110. Окно Edit UVWs (Редактирование UVW) с разверткой модели
На этом предварительная работа заканчивается, теперь можно приступить к редактированию проекционных координат модели.
СОВЕТ Если вы собираетесь привязывать проекционные координаты к существующей текстуре (например, выполненной на основе фотографии), то самое время загрузить ее в окно редактирования Edit UVWs (Редактирование UVW), используя раскрывающийся список в верхней части и выбрав в нем строку Pick Texture (Указать текстуру).
620
Глава 1 1 . Моделирование головы
Далее будет полезным внести некоторые изменения в окне Unwrap Options (Параметры проекции) (рис 11.111), вызываемом командой меню Options • Advanced Options (Дополнительные параметры), а именно: • в области Colors (Цвета) снимите флажок Show Grid (Показывать сетку); • если вы используете выполненную ранее текстуру, то обязательно следует задать ее размеры в области Display Preferences (Параметры отображения), указав в полях Render Width (Ширина визуализации) и Render Height (Высота визуализации) ширину и высоту текстуры. Unwrap Options tin» Cater
Handle Color
P Show Shared Subs $? Qtspiay Seams
SetecfonOdbt Gizmo Color тщ
Г" Show Grid Backstound Color jcross Hatch Horizontal/Vertical j * j Display Preferences
• Rente Widlhpffi }
Bender Height f256
tj 'jjj
Tifap
;;
Tie Brightness:! 0 5
Ip UseCusfomBifmapSiza [ Г Constant Update In Viewports
;
W TkBitmap p Aifecl Cental 7 Je
|Г Г
Sbcm HkjdenEdoei
Ытс. Ptftferences T~ Certei Pixel Snap F Snd Snap W Vertex Snap F EdpeSnao WeaThteshottfotii
Г Blend Tile To
GridSiza fOI Snap Sir (ТГ5
tj
tj
f Selection Pmlemnces IF j
So»SetectlortEdgeDistance рЙБ~ SinoJeCfcfeHitSae [4
*
SeiectedTiekSKe f2
tj Cancel
Delay's
Рис. 1 1 . 1 1 1 . Окно Unwrap Options (Параметры проекции) с настройками отображения
Прежде чем редактировать вершины, необходимо выделить в отдельные группы проблемные полигоны (помните, мы ранее назначили им идентификаторы материала, отличные от 1). Для этого выполните следующее. 1. В нижней части окна Edit UVWs (Редактирование UVW) щелкните на треугольничке справа от раскрывающегося списка и выберите цифру 2 (второй идентификатор материала соответствует полости рта). 2. Выделите все полигоны, оставшиеся в окне редактирования, и выполните команду меню Tools • Break (Сервис • Разбить). Таким образом полигоны будут выделены в отдельную группу (рис. 11.112).
Использование UV-проецирования для полигональной модели головы
621
©Edituvws File ate Select i ТотЬ Mapping Options Display view
4»
Sl j
Щ Horizontal Mip Vertical Mirror Horizontal Mirror Vertical
At+SNft+Ctrl+N At+Shift+Ctrl+M
Wetd Selected Target Weld
Qrl+W Ctrl+I
g^ZBBHB Detach Edge verts
В
Stiteh Selected... PacfcUV*... SketchVertices... Relax Dialog Render UVW Tefflplat
Рис. 11.112. Команда меню Break (Разбить), позволяющая отделить выделенные полигоны
3. Выполните операции выделения и отделения в самостоятельные группы полигонов для оставшихся идентификаторов материала (нос, ухо). 4. В раскрывающемся свитке идентификаторов выберите строку All IDs (Все идентификаторы материалов) для отображения всей проекции модели. 5. Используя инструмент Move (Переместить), переместите группы проблемных полигонов на свободное место в нижней части окна (рис. 11.113). СОВЕТ Чтобы облегчить процесс выделения групп полигонов, установите флажок Select Element (Выделить элемент) в области Selection Modes (Способы выделения) в нижней части окна Edit UVWs (Редактирование UVW).
Остается сделать совсем немного — откорректировать положение вершин в местах, где они пересекаются (обычно это рот, нос и ухо). Кроме того, не помешает изменить положение вершин в правом верхнем углу развертки (этого можно и не делать, но я предпочитаю уменьшить эффект растягивания текстуры). Переместить вершины можно очень просто — выделите вершину и при помощи инструмента Move (Переместить) переместите ее в нужное место. На рис. 11.114 представлена развертка с измененной границей контуров.
622
Глава 1 1 . Моделирование головы
Рис. 11.113. Элементы проекции, размещенные в окне Edit UVWs (Редактирование UVW)
Рис. 11.114. Развертка после редактирования контуров
Использование UV-проецирования для полигональной модели головы
623
Далее необходимо переместить вершины внутри проекции, чтобы исключить пересечение сетки проекционных координат. Это делается также при помощи инструмента Move (Переместить). Прежде чем редактировать отдельные вершины, можно распределить их в пределах контуров проекции. Для этого выполните в окне редактирования команду Tools • Relax Dialog (Сервис • Диалоговое окно расслабления), в результате чего откроется окно Relax Tool (Инструмент ослабления). В этом окне задайте параметру Iterations (Количество итераций) значение 3 (рис. 11.115).
Рис. 11.115. Окно Relax Tool (Инструмент ослабления)
Сейчас можно закончить корректировку положения вершин проекционных координат, вручную изменив положение вершин в перекрывающихся местах. ПРИМЕЧАНИЕ Как вы уже знаете, для получения наилучшего эффекта при текстурировании в окне редактирования проекционных координат необходимо избавиться от перекрывающихся полигонов. Для головы это обычно нос, губы, глаза и уши.
На рис. 11.116 представлен фрагмент отредактированной проекции текстурных координат модели головы.
624
Глава 11. Моделирование головы
Рис. 11.116. Фрагмент расправленной проекции координат модели головы
Для дальнейшего уточнения положения вершин в окне Edit UVWs (Редактирование UVW) необходимо создать и присвоить объекту какую-нибудь повторяющуюся текстуру, например Checker (Шахматная текстура). Такая текстура помогает увидеть места, в которых происходят растяжения или сжатия и от которых по возможности необходимо избавиться. Корректируя положение вершин в окне Edit UVWs (Редактирование UVW), следите за тем, как изменяется геометрия текстуры на объекте в окне проекции. При этом необходимо стремиться к тому, чтобы квадраты шахматного поля были максимально правильной формы (рис. 11.117). Теперь следует окончательно упаковать проекцию текстурных координат в пределах поля будущей текстуры.
ПРИМЕЧАНИЕ Если будущая текстура головы будет полностью симметричной, то какие-либо дополнительные действия с проекцией текстурных координат проводить нет необходимости. Однако если обе половинки лица будут различаться (например, из-за шрама или морщин), то необходимо выполнить действия, описанные ниже. Сейчас пришло время вернуться к модели. После того как половине модели были присвоены и отредактированы проекционные координаты, можно свернуть стек модификаторов (выполнить команду Collapse (Свернуть)) или, не сворачивая, добавить в стек модификатор Symmetry (Симметрия), а затем — модификатор Unwrap UVW (Расправить UVW-проекцию) (рис. 11.118).
Использование UV-проецирования для полигональной модели головы
625
Рис. 11.117. Модель головы с присвоенной текстурой Checker (Шахматная текстура)
Head I Modifier List
О Unwrap LI W • Symmetry И UnwiapUVW
d
Editable Poly
-Ш Рис. 11.118. Стек модификаторов модели головы на данном этапе редактирования
В настройках модификатора Unwrap UVW (Расправить UVW-проекцию) снова щелкните на кнопке Edit (Правка) свитка Parameters (Параметры). Теперь необходимо выделить часть сетки, принадлежащей левой половине модели (в настоящее время обе проекции находятся в одном месте), и отобразить ее зеркально, используя инструмент Mirror Horizontal (Отобразить по горизонтали) Щ\. После этого следует переместить проекцию в левую часть поля текстуры до совпадения серединных линий (рис. 11.119). Выполнив все вышеописанные операции, можно снова свернуть стек модификаторов или добавить новый модификатор, на сей раз MeshSmooth (Сглаженная поверхность) (рис. 11.120). Этот модификатор позволит дополнительно разделить полигоны для получения более сглаженной поверхности модели. Если вы свернули стек и вернулись к Editable Poly (Редактируемая полигональная поверхность), то объект сохранит все выполненные вами изменения, связанные
626
Глава 1 1 . Моделирование головы
Рис. 11.119. Окончательный вид проекции текстурных координат
i * & •© т т I 9 О 4aihSrn3Oih Р D Unwrap UVW р Н Symmetry i> p UrwapUVW ICdiiabiePc»
'
<
Рис. 11.120. Окончательный вид стека модификаторов модели головы
с наложением и редактированием проекционных координат. После этого можно повысить уровень сглаживания модели, применив NURMS Subdivision (NURMS-разбиения), можно перемещать подобъекты и даже редактировать их — проецирование сохранится. Однако я не советую этого делать. Лучше, чтобы все изменения были внесены в модель перед наложением и редактированием проекционных координат. На рис. 11.121 представлен окончательный вид модели головы со сглаживанием и присвоенными проекционными координатами.
Текстурирование головы человека
627
Рис. 1 1 . 1 2 1 . Модель головы с присвоенными ей проекционными координатами
ПРИМЕЧАНИЕ Для анализа присвоения проекционных координат модели головы вы можете загрузить файл UV_map_end.max, который находится в папке СН11\Мах прилагаемого к книге компакт-диска.
Текстурирование головы человека В предыдущем разделе мы рассмотрели один из способов присвоения текстурных координат полигональной модели головы человека. Создание такой п роекции является неотъемлемой частью процесса текстурирования, о котором пойдет речь в данном разделе. Текстурировать голову человека можно двумя способами: • с использованием фотографий в фас и профиль; • на основе одной или нескольких текстурных карт, выполненных в программе редактирования растровой графики. Рассмотрим второй вариант, как более сложный, но позволяющий получить максимальную свободу творчества. Кроме программы 3ds Max для работы нам понадобится Photoshop или любая аналогичная программа редактирования растровой графики, работающая со слоями.
Глава 11. Моделирование головы
628
Вы можете воспользоваться моделью головы с проекционными координатами, присвоенными в предыдущем разделе, или загрузить файл t e x t u r i n g _ s t a r t .max, расположенный в папке СН11\Мах прилагаемого к книге компакт-диска. На рис. 11.122 представлена модель женской головы, с которой мы будем работать. •
•
-
•
:
.
•б (| ; III! .
. • •: Ш '.
-.
- ' ' - :
: . ; ; ; "•'•• ; ; : : : ; ; ;
щ
1ЯШЭД!''. ;--~г
—~ж1'
•
•
•
•IfF
Piiii - ,
it • :. Рис. 11.122. Модель женской головы без текстур €^) Прежде чем перейти к непосредственному созданию текстурных карт для модели головы, необходимо получить сетку, образованную проекционными координатами модели. Она нужна в качестве шаблона, по которому мы будем выполнять текстурирование. Получить ее можно следующим образом. 1. Выберите в одном из окон проекций модель головы (объект Head). 2. В свитке Parameters (Параметры) настроек модификатора Unwrap UVW (Расправить UVW-проекцию) щелкните на кнопке Edit (Правка). 3. Выполните в открывшемся окне Edit UVWs (Редактирование UVW) команду меню Tools • Render UVW Template (Инструменты • Визуализация образца UVW). В открывшемся окне Render UVs (Визуализация UV) (рис. 11.123) установите желаемые размеры высоты и ширины (обычно не менее 1000 х 100 пикселов) и щелкните на кнопке Render UV Template (Визуализация образца UV). В результате откроется окно Render Map (Визуализация карты) (рис. 11.124) с изображением развертки текстурных координат. 4. Нажмите кнопку Save Bitmap (Сохранить растровый файл). Сохраните изображение, полученное при визуализации, на диск в любом доступном формате, желательно в том, который позволяет использовать альфа-канал (например, TIFF).
Текстурирование головы человека
629
||1024 11024
Width: Height
Guess Aspectfiз(ю F
Force 2-Sided
Kit
; f f j Alpha: (TO— Щ \ Moda (None
»j
! P Show Overlap • Edges
Q
Alpha jTB
t]
F Vnibls Edges
Рис. 11.123. Окно Render UVs (Визуализация UV) ©Render Map (.1:1) *
X
RGBAIphi
Рис. 11.124. Окно Render Map (Визуализация карты) с изображением развертки текстурных координат
630
Глава 1 1 . Моделирование головы
ПРИМЕЧАНИЕ Существуют специальные модификаторы, подключаемые модули и сценарии, позволяющие не только получить сетку проекционных координат, но и работать с текстурами. Вы можете воспользоваться одним из таких модулей, например Texporter или PSD Path Unwrapper. Откройте программу редактирования растровой графики. Все дальнейшие действия описаны для программы Photoshop, но можно воспользоваться любой программой, позволяющей работать со слоями. 5. Выполните команду Select • Color Range (Выделить • Цветовой диапазон) и в открывшемся окне Color Range (Цветовой диапазон) задайте параметру величины Fuzziness (Размытость) значение 100. 6. Щелкните на темно-сером цвете фона кнопкой мыши (ее указатель при этом примет вид пипетки) и нажмите ОК. 7. Нажмите на клавиатуре Delete (Удалить) для удаления области текстуры с выделенным цветом.
ПРИМЕЧАНИЕ После удаления фонового цвета изображения сетки не будет видно на фоновом слое, который, как и сетка, по умолчанию белого цвета. Если нужно проверить, правильно ли все сделано, измените цвет нижнего слоя на любой, отличный от белого. 8. Удалите нижний слой с именем Background (Фон). 9. Выполните команду меню Image • Trim (Изображение • Обрезать) и в открывшемся окне Trim (Обрезать) (рис. 11.125) установите переключатель Based On (Основанный на) в положение Transparent Pixels (Прозрачные пикселы).
•••• B a s e d O n
(• Transparent Pixels Г Top Left Pixel Color Г Bottom f
Cancel
Рис. 11.125. Окно Trim (Обрезать)
Таким образом, вы получили слой с сеткой проекционных координат, который будет выступать в качестве шаблона для последующего рисования текстуры. Все создаваемые в дальнейшем слои должны находиться ниже текущего, чтобы вы смогли все время видеть границы рисования.
Текстурирование головы человека
631
ВНИМАНИЕ Для изображения, сохраненного с альфа-каналом, необходимо на вкладке Channels (Каналы) выделить альфа-канал (удерживая нажатой клавишу Ctrl, щелкнуть кнопокой мыши на слое канала), инвертировать выделение (Shift+Ctrl+I) и удалить фон (Delete).
Создайте новый слой, назовите его Color и разместите ниже слоя с сеткой. Залейте его цветом фона — базовым цветом для лица. Я использовал цветовую палитру RGB со следующими значениями: R — 253, G — 191 и В — 154. При помощи рисования с применением различных оттенков цвета кожи создайте базовое изображение карты цвета. СОВЕТ Можно создать два слоя цвета для лица. Нижний цвет должен быть по тону темнее цвета лица, а верхний светлее. Используя прозрачность верхнего слоя, можно подобрать необходимый цвет. Кроме того, цифровые фотографии лица могут значительно облегчить выбор цвета при рисовании.
Обратите внимание на то, что в области щек цвет должен быть светлее, в то время как глазные впадины существенно темнее основного цвета. Цвет в области ушей имеет красноватый оттенок. На этой же текстуре можно нарисовать брови и ресницы, если вы не делали их при помощи геометрии. Когда будет все готово, отключите слой с сеткой и сохраните текстурную карту с именем Head_Color в любом доступном формате, например TIFF. На рис. 11.126 представлена текстурная карта цвета, выполненная в программе Photoshop.
Рис. 11.126. Текстурная карта цвета
632
Глава 1. Интерфейс программы
После создания карты цвета можно переходить к карте рельефа. Разберемся сначала, как работает такая карта. Прежде всего, вы должны знать, что для карты рельефа используется монохромное изображение с градациями цвета от белого до черного. Причем белый цвет позволяет получить возвышенности на поверхности объекта, а черный — понижения, при этом среднее значение (50%-ный серый цвет) не оказывает никакого эффекта на поверхность, к которой эта карта применяется. Таким образом, если нам необходимо получить на поверхности выпуклость, ее необходимо рисовать цветом светлее 50%-ного серого. Для вмятин цвет должен быть темнее этого значения. Продолжим рисование в Photoshop. Создайте новый слой и назовите его Bump. Используя инструмент Paint Bucket (Заливка), залейте созданный слой серым цветом (R — 128, G — 128, В — 128). Кожа человека имеет поры, создадим их при помощи фильтра Noise (Шум). Для этого выполните команду меню Filter • Noise • Add Noise (Фильтр • Шум • Добавить шум). В открывшемся окне Add Noise (Добавить шум) (рис. 11.127) установите флажок Monochromatic (Одноцветный) и задайте параметру Amount (Величина) значение в диапазоне от 4 до 8.
ок Oncel Preview
Amount: 5 - Dfstrfcution — <*• Uniform С Gaussian Monochromatic Рис. 11.127. Окно Add Noise (Добавить шум)
Таким образом, мы сделали заготовку для карты рельефа. Используя инструмент Brush (Кисть), нарисуйте морщины в области глаз и лба (если они есть у модели). Особое внимание уделите поверхности губ и бровей, если вы не использовали геометрию, причем для бровей необходимо применять светлые тона кисти. Работая над картой рельефа, обратите внимание на то, что поры не одинаковые на всей поверхности лица. Например, на кончике носа и щеках поры крупнее, чем в области подбородка и лба, а уши могут иметь едва различимые неровности.
633
Текстурирование головы человека СОВЕТ
Работая над текстурой, лучше всего создавать дополнительные слои для отдельных элементов. Это позволит при необходимости быстро редактировать их содержимое. Кроме того, может быть полезным использование прозрачности слоя или режима перекрытия.
На рис. 11.128 представлена карта рельефа, выполненная описанным выше способом.
V:::T::>:•.:-:•:.: " p :
.b v -
h
:
-
. • • :..
ilil» «Ш9ШШ
И!
.: ИИ 1
ail! !• I l l :•
']•..:
lllllllSllSlfilS i l l iiiliiiSiil! •u**,
.
• • .
•
•
•.•
•
.
•
•
iflHh
•
.
.
.
,J
iill
iiiiiipwiilf
Рис. 11.128. Текстурная карта рельефа, выполненная для модели головы
Сохраните полученную карту рельефа в отдельный файл Head_Bump. При текстурировании объектов органического происхождения необходимым является создание как минимум двух текстурных карт: цвета диффузного отражения и рельефа. Однако совсем не лишним будет создание еще одной карты — уровня блеска. Эта карта очень похожа на только что выполненную карту рельефа. Для нее используется тот же принцип построения монохромного изображения, где светлые места будут отражать свет, а темные — поглощать его. Причем чем ярче текстура, тем ярче будет блеск в этом месте. За основу для этой текстуры можно взять слой с картой рельефа. Создание такой карты не представляет сложности, особенно после того, как вы выполнили две предыдущие. Если вы обращали внимание, то должны были заметить, что самые яркие места на голове человека — это нос и лоб, в меньшей степени щеки, уши и шея. Это связано с тем, что подкожный жир, выступая на поверхность кожи, вызывает ее блеск. Кроме того, блестеть может не только жирная, но и влажная кожа. Например, губы имеют высокий уровень блеска благодаря тому, что они почти
634
Глава 11. Моделирование головы
всегда являются влажными. Кроме того, работая с текстурой головы женщины, нужно обратить внимание на то, что если на губы «наносится» помада, то она станет источником дополнительного блеска. Исходя из вышесказанного, создайте текстуру бликов с таким расчетом, чтобы по тону она была близкой к черному цвету, лишь места расположения предполагаемых бликов должны быть ярче (рис. 11.129).
Рис. 11.129. Текстурная карта уровня блеска
Сохраните полученную текстуру с именем Head_Specular. Текстуры выполнены, осталось только создать материал и применить его к модели головы. Перейдите в окно программы 3ds Max и загрузите модель головы, с которой вы делали шаблон сетки проекционных координат. Откройте редактор материалов и выберите свободный материал. Дальнейшие действия можно выполнять несколькими способами с использованием следующих материалов: Standard (Стандартный), Raytrace (Трассируемый) или Composite (Составной). Я опишу простой, но вполне приемлемый с точки зрения конечного результата способ на основе стандартного материала с применением карты FalLoff (Спад). ПРИМЕЧАНИЕ Для реалистичного материала кожи требуется создание достаточно сложных многослойных карт, имеющих, в свою очередь, собственные карты смешивания или спада.
Текстурирование головы человека
635
Чтобы создать материал для модели головы, выполните следующие действия. 1. В свитке Shader Basic Parameters (Базовые параметры раскраски) стандартного материала выберите из раскрывающегося списка строку Oren-Nayar-Blinn (По Оурену — Найару — Блинну). Данный вариант позволит получить большую свободу в настройках материала. 2. Разверните свиток Maps (Карты текстуры) и щелкните на кнопке с надписью None (Отсутствует) рядом с картой Diffuse Color (Цвет рассеивания). 3. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). 4. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту Head_Color. Перейдем к выбору карты рельефа. 1. Нажмите кнопку Go to Parent (Перейти к составному материалу) на панели инструментов редактора материалов. 2. Щелкните в свитке Maps (Карты текстуры) на кнопке None (Отсутствует) рядом с картой Bump (Рельефность). 3. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). 4. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту Head_Bump. И, наконец, загрузите карту блеска. 1. Щелкните на кнопке None (Отсутствует) рядом с картой Specular Level (Уровень блеска). 2. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). 3. В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту Head_Specular (рис. 11.130). Примените созданный материал к модели головы и выполните тестовую визуализацию. Если вы воспользовались файлом t e x t u r i n g _ s t a r t .max с прилагаемого к книге компакт-диска, то вам не нужно устанавливать и настраивать источники света — они присутствуют в сцене и настроены для работы с объектом. Если же вы решили использовать собственную модель для текстурирования, то начните с того, что установите в сцене не менее двух источников света и настройте их положение, интенсивность, способность генерировать тени и цвет (если используется). Это необходимо сделать до начала корректировки созданного материала потому, что источники света значительно влияют на отображение модели при визуализации. В этом случае предварительно настроенный материал после изменения освещенности сцены может потребовать полного изменения настроек.
636
Глава 1 1 . Моделирование головы tb х ,
Г• -Z
Extended Paramaten Map; Amour* Map f~ Ambient Cofa j 100 ; j lo I* DilluseCoto [Т5Г i j Map 81 IHeacLColot t)g) Г Speculai Coloi . (ToT j j i None ! Г Otassiness fWi) None ГТОГ jS Maptt3(Head_Spfcular|pg) : W Specular Level Г Se(-l(um«Blion j 100 t ; None ; Г Opacity. , .J100 t\ None ; Г" FiterCotor .. -. j 100 ;' None Г DillweLevel J100 :J None i Г ОШ. Ftoughness. [T6F ;! None i 17 Bump .... ,.po~":j Map«2iH=3d_Bumpra)
Рис. 11.130. Свиток Maps (Карты текстуры) с загруженными текстурными картами
На рис. 11.131 представлена тестовая визуализация с настройками по умолчанию.
Рис. 1 1 . 1 3 1 . Визуализация модели головы с настройками материала по умолчанию ё^)
Изображение, полученное при визуализации, благодаря созданным ранее текстурным картам уже сейчас имеет неплохой вид. Улучшить его, не прибегая к сложным настройкам текстурных карт, применению фотометрических светильников и визуализации путем трассировки лучей, можно, создав карту спада для цветового
Текстурирование головы человека
637
канала материала модели головы и повысив уровень рельефности (сейчас она почти незаметна). Для этого выполните следующие действия. 1. В редакторе материалов разверните свиток Maps (Карты текстур) для материала модели головы. 2. Щелкните на кнопке с именем карты цвета (Head_Color . j p g ) , в результате откроются настройки этой карты. 3. Щелкните на кнопке Bitmap (Растровое изображение). 4. В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Falloff (Спад) и на вопрос Keep old map as sub-map? (Оставить старую карту в качестве компонента?) ответьте утвердительно. 5. В появившемся свитке Falloff Parameters (Параметры спада) выберите из списка Falloff Type (Тип спада) строку Shadow/Light (Тень/Свет). 6. В этом же свитке щелкните на образце белого цвета и в появившемся окне Color Selector (Выбор цвета) установите «холодный» цвет в диапазоне от темно-зеленого до темно-коричневого. В моем случае это цвет с такими значениями: Red (Красный) — 90, Green (Зеленый) — 80 и Blue (Синий) — 55. Выполните тестовую визуализацию и обратите внимание на то, как изменился цвет в затененных участках объекта (рис. 13.132). Применение карты Falloff (Спад) позволило получить более естественный и глубокий цвет в области собственной тени.
Рис. 11.132. Визуализация модели головы после применения карты Falloff (Спад) (
638
Глава 1 1 . Моделирование головы
Улучшить конечное изображение и повысить его реалистичность можно, не только создавая сложные составные материалы, используя трассировку лучей и другие стандартные возможности программы 3ds Max, но и при помощи подключаемых модулей. Например, для визуализации изображения, представленного на рис. 11.133, был использован визуализатор VRay.
Рис. 11.133. Изображение, полученное при помощи модуля VRay <*£p
ПРИМЕЧАНИЕ Чтобы проанализировать созданный материал модели головы, вы можете загрузить файл texturing_end.max, который находится в папке СН11\Мах прилагаемого к книге компакт-диска.
Создание волос С выходом восьмой версии программы 3ds Max появилась возможность создавать различные прически для трехмерных персонажей, не прибегая к подключаемым модулям сторонних разработчиков. Выполняя предыдущие упражнения данной главы, вы научились моделировать и текстурировать голову человека. Остался последний шаг на пути к целостному портрету — волосы. Рассмотрим, как делаются волосы при помощи стандартного модификатора Hair and Fur (Волосы и мех).
Создание волос
639
Для выполнения упражнения откройте построенную и текстурированную ранее модель головы, которую можно найти на прилагаемом к книге компакт-диске в папке СН11\Мах. Файл называется texturing_end.max. Прежде чем применить модификатор построения волос, необходимо выполнить некоторые подготовительные операции. В первую очередь следует оставить для работы только один объект — модель головы. Для этого в любом из окон проекций выделите объект Head и, щелкнув на нем правой кнопкой мыши, выберите из списка контекстного меню строку Hide UnseLected (Спрятать невыделенное). Далее необходимо определить ту область модели головы, на которой эти волосы будут расти. Для этого можно воспользоваться модификатором Mesh Select (Выделение сетки), используя который следует выделить область, соответствующую естественному росту волос. Можно также построить сплайны, которые будут определять длину, направление и форму прически. Второй способ предполагает большую свободу в моделировании прически, поэтому им и воспользуемся. Прежде чем строить сплайны для формы волос, рассмотрим некоторые моменты, связанные с таким построением: • все сплайны должны принадлежать одному объекту; • начало сплайнов (первая точка) должно находиться в начале роста волос (волосы строятся от корней); • при построении волос модификатор Hair and Fur (Волосы и мех) производит линейную интерполяцию между соседними сплайнами, в связи с чем необходимо иметь достаточное количество сплайнов для создания прически нужной формы; • интерполяция ведется с учетом порядковых номеров сплайнов, поэтому сплайны необходимо либо строить в строгой последовательности, либо после построения изменить порядок их следования. Начните построение сплайнов, для чего выполните команду меню Create • Shapes • Line (Создание • Формы • Линия). Начните строить сплайн с лобной части головы и продлите его вниз вдоль правой стороны лица (рис. 11.134). СОВЕТ При создании сплайнов можно использовать минимальное количество вершин для построения базовой формы локона волос с последующим наращиванием вершин до необходимого количества.
Проконтролируйте положение сплайна во всех окнах проекций — он не должен пересекаться с поверхностью модели головы и иметь форму первого локона волос. Постройте новый сплайн на затылочной части головы или копируйте и подредактируйте созданный. Продолжите построение сплайнов с таким расчетом, чтобы по периметру головы расположилось от 10 до 15 сплайнов (рис. 11.135).
640
Глава 1 1 . Моделирование головы
• .
•
•
,
•
•
,
• •••
; •• j
•
•
'
•
•
•
•
,
•
•
.
, . .
'
; (
i
>
:
, '•'.^••*у'>
Рис. 11.134. Первый сплайн, определяющий форму волос
Рис. 11.135. Форма и расположение сплайнов относительно модели головы
Создание волос
641
После построения сплайнов убедитесь, что они принадлежат одному объекту и располагаются по номерам в порядке следования. Если этого не произошло в процессе построения (я при построении новых кривых копировал сплайны на уровне подобъектов), то выполните следующие действия. 1. Выделите первый сплайн, расположенный справа от лицевой части модели головы. 2. В свитке Geometry (Геометрия) щелкните на кнопке Attach (Присоединить), в результате она выделится цветом. 3. В окне проекции Тор (Сверху) последовательно выберите все построенные сплайны, продвигаясь по кругу вправо. Теперь можно применить модификатор для создания волос на основе сплайнов. Для этого выделите построенные сплайны и на командной панели выберите из списка модификаторов строку Hair and Fur (WSM) (Волосы и мех (WSM)). Прежде чем настраивать отображение, установим источник света, который будет генерировать тень от волос. ВНИМАНИЕ Для генерации теней модификатором Hairand Fur (Волосы и мех) используются только направленные источники света типа Target Spot (Направленный с целью) или Free Spot (Направленный без цели), к настройкам которых добавляется свиток с параметрами тени для волос.
Чтобы получить на модели головы тени от волос, выполните следующие действия. 1. В свитке Tools (Сервис) модификатора Hair and Fur (Волосы и мех) щелкните на кнопке Render Settings (Параметры визуализации), в результате откроется окно Environment and Effects (Окружающая среда и эффекты). 2. В одном из окон проекций выделите направленный источник света с именем hair_shadow (в вашем случае это может быть любой другой источник света данного типа). 3. В свитке Hair and Fur (Волосы и мех) окна Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке Add hair properties (Добавить свойства волос), в результате чего к настройкам выбранного источника света добавится свиток Hair Light Attr (Свойства источника света для волос). 4. Проследите за тем, чтобы в области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света был установлен флажок On (Включить), а в свитке Hair Light Attr (Свойства источника света для волос) — флажок Light hair (Освещать волосы). В данном свитке можно увеличить значение параметра Resolution (Разрешение), чтобы получить более качественные тени (рис. 11.136).
Глава 11. Моделирование головы
642
tight N » Г< Resolution 11200 } ; Fuzz
Рис. 11.136. Свиток Hair Light Attr (Свойства источника света для волос)
Вернитесь к настройкам модификатора Hair and Fur (WSM) (Волосы и мех (WSM)). Определите общие параметры модификатора в свитке General Parameters (Общие параметры), установив количество волос (Hair Count (Количество волос)), количество сегментов по длине волоса (Hair Segments (Количество сегментов)), толщину волоса (Root Thick (Толщина волоса) и толщину конца волоса Tip Thick (Толщина концов)) и т. д. Флажок Interpolate (Интерполяция) должен оставаться установленным, чтобы поверхность волос строилась с учетом интерполяции между сплайнами (рис. 11.137).
H«« Passes) 2 Dense
jj i
Scale Г Ш Г С RanaScata|io.o Root Thick 'Jjj Tip thick |O3 I Displacemeni ГД5 Intapolate F
t ';
J J
tj
j
Рис. 11.137. Свиток General Parameters (Общие параметры) настроек модификатора Hair and Fur (WSM) (Волосы и мех (WSM))
В свитке Material Parameters (Параметры материала) укажите параметры, которые будут влиять на отображение волос при визуализации. Образцы цвета Tip Color (Цвет концов) и Root Color (Цвет у корней) определяют соответственно цвет волос на концах и у корней. Параметр Hue Variation (Оттенки цвета) влияет на то, в какой степени цвет волос будет отличаться от указанного в образцах цвета. Параметры Specular (Цвет зеркального отражения) и Glossiness (Глянец) аналогично одноименным параметрам редактора материалов отвечают за блеск волос. Настройте также параметр Self Shadow (Собственная тень) и другие параметры свитка Material Parameters (Параметры материала) (рис. 11.138). Параметры свитков Frizz Parameters (Параметры вьющихся волос) и Kink Parameters (Параметры курчавости) можно использовать с целью получения вьющихся волос. Более важным с точки зрения общих настроек является свиток Multi Strand Parameters (Параметры локонов), позволяющий настраивать вид локонов, создавая пышность и хаотичность прядей волос. Здесь можно задать параметры плотности (Count (Количество)), расширения волос у основания (Root Splay (Расширение у основания)) и на концах (Tip Splay (Расширение на конце)), а также случайное распределение (Randomize (Случайное распределение)) (рис. 11.139).
643
Создание волос
t\m
Deducted A n * j 100.0 Root Color j Hue Variation j Value Variation j 100.0
t\__
Mutant Cotor |
Mi*ant % р о б
|J
Specular Glossiness
Zj_
Self Shadow 4U,u Geom Shadow J80.0
%
GeoraMatlD Г Г
"*i
Рис. 1 1 . 1 3 8 . Свиток с настройками параметров материала волос
Court I
Root Splay ( o i T ip Splay pO Randomize }0~б
Cj__ ; j С _..
;
Р и с . 1 1 . 1 3 9 . Свиток Multi Strand Parameters (Параметры локонов)
ПРИМЕЧАНИЕ Все вышеописанные настройки формы и отображения волос в значительной степени зависят от формы, длины и расположения сплайнов относительно друг друга. В связи с этим тонкая настройка параметров возможна только в процессе тестовой визуализации. При этом можно редактировать не только параметры модификатора, но и сами кривые на уровне подобъектов. Кроме построения сплайнов по периметру модели можно создать единичные сплайны для отдельных локонов (например, челки). В этом случае необходимо снять флажок Interpolate (Интерполяция) в свитке General Parameters (Общие параметры) и настроить отображение локона, используя свиток Multi Strand Parameters (Параметры локонов). На рис. 11.140 представлена модель головы с созданными волосами. В качестве самостоятельного задания можно рекомендовать создать прическу, используя выделенные полигоны на уровне редактирования подобъектов модификатора Hair and Fur (Волосы и мех) и окно Style (Стиль), которое вызывается кнопкой Style Hair (Стиль волос) свитка Tools (Сервис). Кроме того, в области Presets (Предустановки) этого же свитка существует возможность загрузки предварительно сохраненных и запись собственных стилей причесок. Эта возможность
644
Глава 1 1 . Моделирование головы
является хорошим способом создания базовых параметров для последующего их редактирования и точной настройки с учетом особенностей модели. •
••
V .
1
.
.
• • • . • : • .
•
•
•
.•
. . .
: • : •
Рис. 11.140. Результат визуализации модели головы вместе с волосами <<£>
ПРИМЕЧАНИЕ Модель головы с волосами представлена в файле hair.max, который находится в папке СН11\Мах прилагаемого к книге компакт-диска.
Заключение Позади 11 глав, проделана огромная работа по моделированию и текстурированию. Сейчас вы сами можете оценить, насколько путь, ведущий к созданию правдоподобной трехмерной модели, длинный и трудный. Но результат, которого вы достигнете в конце этого пути, с лихвой компенсирует все ваши усилия. После изучения простого и сложного моделирования вы будете готовы создавать свои собственные великолепные трехмерные сцены. Не торопитесь браться за работу над сложными заданиями, для выполнения которых у вас недостаточно знаний и опыта. Следствием этого будет разочарование и нежелание продолжать. Постепенное выполнение несложных работ, напротив, поможет вам приобрести практический опыт и почувствовать уверенность в своих силах. Только работая над конкретными заданиями, с каждым разом все более сложными, вы будете совершенствовать свое мастерство. Творческий рост происходит постепенно. На каждом этапе дизайнеру нужен небольшой толчок, чтобы перейти на новый, более высокий уровень. Надеюсь, в этой книге вы нашли те новые идеи, которые будут двигателем вашего творческого и профессионального роста. Пришло ваше время! Найдите достойное применение знаниям, приобретенным из этой книги.
Приложение 1
70 советов пользователям 3ds Max • Интерфейс и окна проекций • Работа с файлами • Моделирование • Анимация • М ате р и а л ы и те кету р ы • Источники света и камеры • Визуализация Разное -
Интерфейс и окна проекций
647
В то время, когда я начинал заниматься трехмерным моделированием, книг на эту тему практически не было, и приходилось во многом разбираться самостоятельно, собирая информацию в Интернете. Теперь, накопив достаточно опыта, я могу дать пользователям программы 3ds Max советы. Первое, что можно посоветовать начинающим пользователям, — тщательно изучить интерфейс программы (также пригодятся знания об освещении, композиции, фотографии и т. п.). Без базовых знаний осваивать редактор трехмерной графики достаточно сложно. После знакомства с интерфейсом программы и ее возможностями можно приступать к выполнению первых работ. Здесь нужно руководствоваться простой, но проверенной временем истиной: работа должна вестись по принципу «от простого к сложному». Не следует начинать моделирование сложной сцены, если вы с трудом справляетесь с простыми объектами. Лучше полностью смоделировать и визуализировать стул, чем пытаться создать модель персонажа и, столкнувшись с непреодолимыми (ввиду недостаточности знаний) трудностями, потерять веру в собственные силы. После первой публикации в Интернете моего упражнения по моделированию автомобиля ко мне пришло много писем с благодарностью, но были и такие, в которых задавалось большое количество вопросов по данной теме. При этом у меня ни разу не возникло ощущения того, что я что-то упустил или дал ложное пояснение. Чаще всего это вопросы либо невнимательно читавших урок и, как следствие, упустивших в тексте ответ на свой вопрос, либо людей, которые не знакомы даже с интерфейсом программы и спрашивающих о том, где найти ту или иную кнопку, модификатор и т. п. Я понимаю желание начинающих изучать программу сразу же выполнить сложную работу, но все должно развиваться последовательно: нельзя стать гонщиком, не научившись ездить на машине. Итак, дам некоторые советы по работе с 3ds Max.
Интерфейс и окна проекций Совет 1. Изучайте интерфейс программы и ее возможности — это поможет сэкономить массу времени. Не забывайте о сочетаниях клавиш. Когда речь идет о часто повторяющихся операциях, лучше всего использовать именно клавиатурные комбинации (основные клавиатурные комбинации описаны в приложении 2). Кроме того, можно присваивать свои собственные клавиатурные сочетания тем операциям, которые вы часто выполняете, но которые не имеют стандартных клавиатурных аналогов. Совет 2. Выполняя специальные задачи, создавайте собственные панели инструментов, пункты меню или квадратичные меню. Примером может служить панель инструментов для работы с полигональными моделями или специальными эффектами. Совет 3. Существует быстрый способ центрирования объектов в окне проекции. Для этого достаточно навести указатель мыши на требуемый объект и нажать клавишу I.
648
Приложение 1 . 70 советов пользователям 3ds Max
Совет 4. Если нажать клавишу Ctrl, Alt или Shift, а затем щелкнуть правой кнопкой мыши в окне проекции, то можно вызвать меню, в котором представлены команды для работы с выделенным объектами или подобъектами. Совет 5. Один из способов ускорения работы в окне проекции — использование средней кнопки мыши. Для масштабирования изображения используется колесо прокрутки, а для панорамирования — нажатие. Применение клавиш Ctrl, Alt или Shift в сочетании со средней кнопкой мыши повышает ее функциональность (например, удерживая нажатой клавишу Shift, можно перемещаться только горизонтально или вертикально). Совет 6. При работе над большими проектами ощущается постоянная нехватка рабочего пространства. Один из способов расширения площади, отводимой под окна проекции, — использование режима Expert Mode (Экспертный режим), который вызывается сочетанием клавиш Ctrl+X. В этом случае не лишним будет хорошее знание клавиатурных комбинаций. Совет 7. Когда в сцене появляется большое количество объектов, удобным и быстрым инструментом для навигации, доступа к свойствам этих объектов и создания связей является небольшая утилита Schematic View (Редактор структуры) (рис. П1.1), для вызова которой следует нажать кнопку Schematic View (Open) (Редактор структуры (открыть)) на панели инструментов. ! Schematic View I •:Ш
SeiKL Me» layout List Views Options
Рис. П 1 . 1 . Окно Schematic View (Редактор структуры)
Работа с файлами Совет 8. Устанавливая 3ds Max 8, позаботьтесь, чтобы на разделе жесткого диска, на который инсталлируется программа, было достаточно свободного места. Во время работы будут добавляться библиотеки текстур, подключаемые модули, пакеты обновления, наборы моделей и т. д., в результате чего может возникнуть нехватка дискового пространства. Совет 9. Можно ускорить процесс создания новых сцен с помощью предварительной настройки атрибутов сцены. Если создать пустую сцену и поместить в нее камеру и источники света (либо что-то еще, что вам требуется постоянно), а затем сохранить с именем m a x s t a r t . max и поместить файл в каталог scenes в корневой
649
Работа с файлами
директории 3ds Max, то при загрузке или выполнении команды Reset (Сбросить) произойдет загрузка этого файла. Совет 10. Устанавливая дополнительные модули, не забывайте, что при загрузке программы они находятся в оперативной памяти даже в том случае, если вы их не используете. В связи с этим никогда не оставляйте те модули, которые подключались для тестирования или которыми вы больше не пользуетесь. Как вариант можно создать несколько файлов инициализации ( p l u g i n . i n i ) для загрузки программы с необходимой конфигурацией (указаны пути только к необходимым наборам модулей, собранных в отдельные папки). На практике это могут быть несколько пунктов в меню Пуск или ярлыки на Рабочем столе с параметрами загрузки типа 3dsmax -p <имя копии файла plugin.ini> (рис. П1.2).
Общие 3cbfctat&
I ип объекта;
Приложение
Размещение: JDMiitodeskl\3dsMax8\3dsrnax.exe -р sphnes.ni
JDSAutodeskV3dsMax8\ BfeicTpbiH вызов: jCtrl + Alt + S JQKHO:
Развернцтое на весь экран | Конфигурация для работы со сплайнами
йайги
Отмена
|
Применить
Рис. П1.2. Настройка свойств ярлыка для вызова 3ds Max 8 с дополнительными модулями для работы со сплайнами
Совет 11. Как можно чаще сохраняйте файл, особенно при выполнении операций, способных вызвать аварийное завершение программы (например, булевы операции). Удобно использовать Incremental Save (Приращения при сохранении), чтобы всегда можно было вернуться к промежуточным файлам. Кроме того, не забывайте о существовании режима Auto Backup (Автоматическое сохранение) (по умолчанию включено), что позволит восстановить большую часть работы, потерянной при аварийном завершении работы (рис. Ш.З). Совет 12. Если вы собираетесь продолжить свой проект на другом компьютере или сохранить его в архив, то лучшим способом будет создание архива средствами самой программы 3ds Max (File • Archive (Файл • Архивировать)). Это позволит упаковать не только сцену с материалами, но и все сопутствующие текстурные карты с прописанными к ним путями.
650
Приложение 1 . 70 советов пользователям 3ds Max
' [ Log Fie Maintenance Р Convert BjsjKSths to UNC -,
р
BaelwraiSave
s Р Imsepnent («Save V
Oppress од Saws
f
Never delete tog
^
Maintain only p
rdajis
*
MaintainonV J256
Si
KB
**es
R-Seve Vewpoit Thumbrail Im ' P Save Schematic View
I
•;.'. P Seve Ffe Properties
P EirOfs _. W warnings
P C M * Obsolete Fie Message
P Info
P Reload tetfures on change
P Debug
fieceritFitet.B Fie Menu (9
£j frrpOft 0рЙШ8 •
rAuto Backup Zoom Events on Import
W Enable Number of Autobak ties: - Backup Interval (romutfts): •*";-
Auto Backuti File Wan»: pu" obak
Archive Syslern Progfatn; Jmaxzip
Рис. П1.3. Окно Preference Settings (Параметры установок) с настройками сохранения файлов
Совет 13. Установите флажок Save Viewport Thumbnail Image (Сохранить пиктограмму окна проекции) в окне Preference Settings (Параметры установок) (см. рис. П1.3). Это позволит вам при навигации по файлам видеть то, что в них находится. Совет 14. Для получения информации о сцене служит пункт Summary Info (Сводка) меню File (Файл). При помощи открывшегося окна вы можете получить информацию о количестве полигонов, присвоенных материалах, подключаемых модулях и т. д. Вы также можете сохранить эту информацию в текстовый файл для последующего анализа. Совет 15. Возможное решение для открытия проблемных файлов — загрузка их содержимого при помощи команды Merge (Присоединить) или XRef Objects (Ссылки на объекты) меню File (Файл) в новую сцену. Совет 16. Одним из быстрых способов открытия файлов сцен, присвоения материалов и т. д. является Asset Browser (Окно просмотра ресурсов) (рис. П1.4). В нем можно перетаскивать в окно проекции при помощи мыши как отдельные объекты, так и целые сцены, присваивать материалы или текстуры объектам сцены, просматривать пиктограммы сцен, выполнять операции с файлами и многое другое. Совет 17. Не забывайте сохранять файл или выполнять команду Edit • Hold (Правка • Зафиксировать) перед теми операциями, для которых недоступна команда Undo (Отменить) (например, перед Collapse (Свернуть)).
651
Моделирование ШAsset Browser «tef Thumbnails Display Favorites Browse
:» <• © i>] tfS
, Address:
-1 Щ BMW
' €3For
Sale
g g aBMW745i В Q BMW Combi ! ш ^ Geometr Ш Ц | Maps : Q Render : ffi gSl Шины
S i g j BMW_5 Tu™ng * j
±1
'J
1
j^JSIatlup \
Рис. П1.4. Окно Asset Browser (Окно просмотра ресурсов)
Моделирование Совет 18. Если необходимо изменить какую-либо величину для параметрического объекта, достаточно в поле параметра набрать г и число, на которое нужно изменить значение. Например, если набрать г50, то общее значение изменится на 50 (было 20 — станет 70). Совет 19. Если установить курсор в поле счетчика и нажать сочетание клавиш Ctrl+N, то откроется окно со своеобразным калькулятором, в котором можно выполнять простые математические вычисления, а результат автоматически заносить в поле параметра. Совет 20. Щелчок правой кнопкой мыши на стрелках счетчика позволяет обнулить его. Эта функция удобна, если вам необходимо задать нулевые значения (например, в окне трансформаций или поворота). Совет 21. Если во время построения сплайна вам понадобится удалить последнюю вершину или несколько вершин, то сделать это можно, не выходя из режима построения, воспользовавшись клавишей Backspace. Совет 22. Использование привязок (Snaps) может значительно упростить работу, когда выравниваются или передвигаются объекты или подобъекты. Совет 23. Иногда во время трансформации или поворота возникает необходимость изменения параметров привязок. Это можно сделать, не прерывая операции, нажав клавишу Shift и правую кнопку мыши, в результате чего появится контекстное меню, в котором можно выбрать новые параметры привязок. Совет 24. При работе в режиме редактирования иногда возникает необходимость относительного поворота или перемещения объектов. Чтобы выполнить такой по-
652
Приложение 1 . 70 советов пользователям 3ds Max
ворот, необходимо выделить объект и заблокировать его, используя клавишу Пробел. После этого следует установить в настройках привязок (окно диалога вызывается щелчком правой кнопки мыши на кнопке Snaps Toggle (Переключатель привязок)) флажок Use Axis Conctraints (Использовать осевые привязки) (рис. П1.5). ©Grid and Snap Settings Snaps 1 Options
Home Gild
User Grids 11
• Marker
(
Sag[20
[- General Snap Preview Radius: [30
" j j [pixel») j
Л |
£
Snap Radius:
(20
Jj
Angle:
15.0
tifrfcfl)
J10.0
;]B3
Snap to (Keen objects Ttanslalion
Рис. П1.5. Вкладка Options (Параменты) окна Grid and Snap Settings (Настройки сетки и привязок)
На панели инструментов выберите Use Transform Coordinate Center (Использовать начало координат) и перейдите в окно проекции для редактирования. В результате выполненных действий поворот объекта будет осуществляться вокруг точки привязки (например, вершины или опорной точки другого объекта). Совет 25. Иногда необходимо выделить ряд ребер, которые проходят по горизонтали или вертикали, не затрагивая другие, перпендикулярные им ребра. Такое выделение возможно с использованием направления движения указателя мыши, для чего предварительно должен быть установлен соответствующий флажок в настройках программы. Перемещение указателя слева направо приводит к выделению только тех ребер, которые попадают в область выделения. Если же выделять указателем в обратном направлении, то выделятся все ребра, которые затрагиваются областью выделения. Это же справедливо и по отношению к полигонам. Совет 26. В режиме редактирования подобъектов (вершины, ребра, полигоны и т. д.) полезно установить флажок Ignore Backfacing (Без обратной ориентации). Это позволит избежать случайного выделения подобъектов на противоположной стороне модели. Естественно, не забывайте снимать данный флажок, если вам необходимо выделить весь объект. Совет 27. Если у полигональной модели на уровне редактирования вершин выделить группу вершин и, удерживая нажатой клавишу Ctrl, перейти на уровень редактирования полигонов (в свитке Selection (Выделение) и щелкнуть на кнопке Polygon (Полигон)), то автоматически выделятся все полигоны, которым принадлежат ранее выделенные вершины. Это же правило справедливо и для других типов подобъектов. Совет 28. Чтобы редактируя полигональную модель иметь возможность передвигать вершины вдоль какого-либо ребра или в плоскости полигона, необходимо
653
Моделирование Preference Settings inverse Kinematics General
i
Gizmos
Files
i Scene Undo Levels:J20
Viewports Ref. Coord System
;
\ Г Constant
J;
MAXScript Gamma andtUT
Rediositj) Rendering
menial ray ;
Anrrrtahon
Ш Display P ЕпаЫе Viewport Tooltips W AutoPlay Preview File
-, rSubsMaterials
rPlug-inLoading, I
,~ Load Plug-ins ' When Used
i i
~ ^f-finP^^^iArt
P
Display Cross Hair Cursor
_ . Assign <* Automatical
|5* Display TopoJogyDependence Waminfl
~t
P SaveUt CmfigufatiorionExit
^
P
Display Stack Collapse Warning
P* Us» Large Toobat Buttons *
ntgnt'^Lett •> Crossing
W Hcaizontal Text in Vertical Toolbars
С Lef(->Right •> Dossing Paint Selection Brush Sue f ! 5 • Spinners—— Precision: Гз Snap: рГо
P
t\
i pwet
Color Selector, j Default Color Picket
•
'
FixedWidB4 Text Buttons: [76 FlyoutTime
J i Decmals
LaywOefaufts
С; Г UseSnap
P £efauft to By Layer for New Nodes P £Jew Lights Renderable By Layer
Г* Wrap Cursor Neai Spinner Command Panel Roiout Threshold:
Щ
-VartexNormalStjile
jj
t
;
Propagate Unhide/Unfreeze Commands to Layers? Г
Propagate^ Do Not Piopagate <* Ask j
Г~ Use Legacy R4 Vertex Normals f~ Use Real-World Texture Coordinates OK Cancer
Рис. П1.6. Окно Preference Settings (Параметры установок) с активированным выделением по направлению
в поле Constraints (Привязки) свитка Edit Geometry (Редактирование геометрии) настроек полигональной модели выбрать либо Edge (Ребро), либо Face (Грани) соответственно. Совет 29. В процессе редактирования подобъектов можно быстро вернуться к первоначальному положению выделенных элементов, для чего достаточно, удерживая нажатой левую кнопку мыши, щелкнуть правой. Совет 30. Если вы хорошо знакомы с возможностями программы, то всегда найдете 2-3 решения для моделирования одного и того же объекта. Ваша задача — выбрать тот вариант моделирования, который в данном случае будет наиболее оптимальным по скорости и качеству. Например, сложный объект, на моделирование которого при помощи полигонов понадобилось бы не меньше часа, можно смоделировать при помощи лофтинга за 10-15 минут. Совет 31. Если вам необходимо редактировать примитивы на уровне подобъектов, сохранив при этом параметрические свойства объекта, то применяйте модификаторы Edit Spline (Редактирование сплайна) или Edit Mesh (Редактирование поверхности). В противном случае следует преобразовать объект в Editable Spline (Редактируемый сплайн) и Editable Mesh (Редактируемая поверхность). Это поможет высвободить ресурсы компьютера.
654
Приложение 1 . 70 советов пользователям 3ds Max
Совет 32. При возможности всегда заменяйте геометрию модели текстурными картами. Например, для создания участка леса на втором плане вполне подойдет использование перекрещивающихся плоскостей с нанесенной на них текстурой деревьев в каналы основного цвета (Diffuse) и непрозрачности (Opacity). Совет 33. При создании объектов форм по возможности используйте Renderable Spline (Визуализируемый сплайн) вместо операций лофтинга. Такие объекты требуют меньше системных ресурсов и легче редактируются. Чтобы сплайн был виден в результате визуализации, необходимо произвести настройки в свитке Rendering (Визуализация) (рис. П1.7), например определить значение параметра Thickness (Толщина). I ? EwbteinHendew (У Enabfe In Viewport Г" Use Viewiport Settings P Qeneiiie Mapping Coords.
f
Vi^ivpoE!—* Render»~ Radial rKkwws Г
Г Auto Smooth
pfOO
tj
Рис. П1.7. Свиток Rendering (Визуализация) настроек сплайна
Совет 34. Не забывайте давать объектам сцены значимые имена, тогда при их большом количестве вам не придется гадать, что же скрывается под именем Вох25. Совет 35. Возьмите за правило вне зависимости от наполнения сцены моделировать объекты с минимальным, но достаточным количеством полигонов. Что это означает на практике? Все очень просто. Если, например, для ваших задач сфере достаточно 24 сегментов (и она будет выглядеть сглажено), а не 32, которые установлены по умолчанию, то именно 24 и нужно использовать. От количества полигонов в сцене напрямую зависит время визуализации, особенно если речь идет о трассируемых материалах и тенях. Кроме того, это упростит процесс визуализации анимации. Совет 36. Если сцена статична и вы не планируете делать анимацию, облеты камерой и т. п., то можно не моделировать заднюю (скрытую от взгляда) часть объекта. То же относится и к тем частям объектов, которые перекрывают друг друга. Совет 37. По возможности избегайте булевых операций, так как кроме усложнения топологии модели они создают проблемы с ее дальнейшим редактированием. Всегда можно найти альтернативу булевым операциям, и, хотя я не противник их
Моделирование
655
использования в работе, у меня сложился такой стиль моделирования, при котором я вообще их не использую. Если вам не обойтись без них, не забудьте перед применением булевой операции свернуть стек модификаторов, выполнив команду Collapse (Свернуть) контекстного меню, и проверить объект на ошибки при помощи модификатора STL Check (STL-тест). После этого сохраните или выполните команду Edit • Hold (Правка • Зафиксировать) и только тогда приступайте к булевым операциям. Совет 38. В 3ds Max создание NURBS-объектов не поставлено на должный уровень, как, например, в программах Rhino или Avid Studio Tools, но, если это возможно, предпочтительнее использовать именно NURBS-технологию для получения более сглаженных поверхностей (например, при использовании модификатора Lathe (Вращение)). Совет 39. Если вам по какой-либо причине нужно изменить масштаб объекта, это делается на уровне подобъектов при помощи Gizmo (Габаритный контейнер) модификатора XForm (Преобразование). Особенно это актуально для объектов формы, которые используются в качестве сплайна пути или поперечного сечения в лофт-объектах. Совет 40. Если вы делаете симметричную модель, то нет необходимости моделировать ее всю. Достаточно сделать только половину, а затем применить модификатор Symmetry (Симметрия). В ранних версиях программы 3ds Max необходимо сделать копию при помощи инструмента Mirror (Зеркальное отображение), присоединить ее (щелкнуть на кнопке Attach (Присоединить)), а затем объединить вершины в месте стыка двух половин. Совет 41. Если нужно сделать несколько копий одного и того же объекта, полезно выбирать варианты Instance (Привязка) или Reference (Подчинение). При последующем редактировании одного из объектов изменения будут происходить сразу во всех дубликатах. Совет 42. Когда в сцене присутствует большое количество объектов, гораздо проще продолжать моделирование или вносить исправления в объекты, используя Isolation Mode (Режим изоляции) (включается при помощи сочетания клавиш Alt+Q). Также иногда очень помогает при моделировании использование прозрачности объектов (сочетание клавиш Alt+X). Совет 43. Если в сцене присутствует некоторое количество объектов, то полезно прятать (при помощи команды Hide (Спрятать) вкладки Display (Отображение)) те объекты, которые в данный момент не нужны. Так будет проще разбираться с оставшимися объектами, и ускорится прорисовка окон проекций. Совет 44. Если вы используете NURMS Subdivision (NURMS-разбиения) для модификатора MeshSmooth (Сглаженная поверхность) или Editable Poly (Редактируемая полигональная поверхность), то задавайте нужное количество итераций для визуализации, при этом выключая или оставляя их минимальное количество для окон проекций (рис. П1.8). Это поможет не только уменьшить размер файла, но и ускорит прорисовку окон проекций.
Приложение 1 . 70 советов пользователям 3ds Max
656 ! -
SabdwisionSutCaca
|
! | 7 Swot* Result i J? UwNURMS Subdivision i
i Iterations (2
[ Sm
• Renoef
Г
Iterate* Jo
Рис. П1.8. Свиток Subdivision Surface (Поверхности с разбиением) с настройками отображения и визуализации разбиений
Анимация Совет 45. Если вы анимируете объект при помощи модификаторов, а производительность компьютера оставляет желать лучшего, то можно немного исправить создавшееся положение путем применения модификатора Point Cache (Точка кэша). Он позволяет сохранять анимацию вершин объекта вместо всех использовавшихся модификаторов. Таким образом, компьютер будет нагружаться гораздо меньше. Совет 46. Если щелкнуть правой кнопкой мыши на ползунке шкалы анимации, то появится окно Create Key (Создать ключ), при помощи которого можно скопировать трансформации выделенного объекта из одного кадра в другой. Совет 47. Если, удерживая нажатой клавишу Shift, щелкнуть правой кнопкой мыши на стрелках, расположенных справа от счетчика анимируемого параметра, то в строке треков будет автоматически создан ключ анимации этого параметра. Совет 48. Активизировав переключатель Key Mode Toggle (Переключение режима ключей) в правом нижнем углу окна программы, можно быстро перемещаться по ключевым кадрам при помощи ползунка таймера или соответствующих кнопок навигации. Совет 49. Если вы используете анимацию материала, то щелчок на кнопке Make Preview (Создать просмотр) в окне Material Editor (Редактор материалов) позволит создать и просмотреть эскиз анимации материала в ячейке образца в реальном времени. Таким же образом можно выполнить и просмотреть анимацию отдельной текстурной карты. Совет 50. Для анализа анимации объектов полезно включать режим отображения двойников (Ghosting (Двойник)). Двойники отображаются в каркасном виде до и после текущего кадра (рис. П1.9).
657
Материалы и текстуры
.
шШШттшшмяящмшяшящяяшяштвш) Рис, П1.9. Показ двойников в окне проекции Front (Спереди)
Совет 51. Включая воспроизведение анимации в окне проекции, не забывайте закрывать окно редактора материала, в противном случае программа будет пытаться обновлять образцы материалов с каждым кадром анимации. Совет 52. Для просмотра тестовой анимации используйте команду Make Preview (Создать просмотр) из пункта главного меню Animation (Анимация). Эта операция позволит вам проанализировать анимацию объектов в реальном времени.
Материалы и текстуры Совет 53. Используйте текстуры и карты выдавливания вместо сложной геометрии, если обратное не продиктовано самой задачей моделирования. Например, при моделировании стены с кирпичной кладкой логичнее наложить текстуру кирпичей, а швы между ними сделать при помощи текстуры выдавливания, а не моделировать кирпичики по отдельности. Менее очевидным является использование этих же приемов, например, для создания кильватерной волны вслед за яхтой. Совет 54. При использовании растровых изображений в качестве карт выдавливания задавайте параметру Blur (Размытие) значение 0,01, а в качестве размытия используйте небольшое значение параметра Blur Offset (Сдвиг смаза) (рис. П1.10). lit* |Мар815
Sump:
*
Т е Л л е <" Env»on
Mappins; JExplicit Map Channel
1»^ 3'*!>;^ Mrfj;- л В>ЙС1Ч Г
U»eR»atWo*fS«ate Otlset ting
О.рЙР Wfao
Bitmap
Jj pTJ ;; JTo
Map Channel: j 1 Миш Tie
3 21
Angte
j] Г 17 U:f61) : | Г F V:[o5 W:foo
Jj jj ;] |
Rotate
Рис. П1.1О. Настройка параметров размытия для карты выдавливания
658
Приложение 1 . 70 советов пользователям 3ds Max
Совет 55. При текстурировании объектов старайтесь как можно чаще использовать процедурные карты (иначе говоря, текстуры, которые создаются программно). Кроме получения максимально возможного качества вы избавитесь от необходимости держать на диске вместе с проектом лишние текстуры. Совет 56. Если вы используете текстуры для заднего фона, то их размер должен соответствовать выходному размеру изображения при визуализации (большее изображение качества не улучшит, но место на диске и в памяти будет занимать, а при меньшем произойдет потеря качества). Совет 57. При необходимости использования больших текстур, которые нельзя загрузить стандартным способом, установите в настройках программы (Customize • Preferences (Настройки • Параметры) вкладка Rendering (Визуализация)) в области Bitmap Pager (Пейджер растрового изображения) флажок On (Включить) (рис. П1.11). Preference Settings Inverse Kinematics General
I
Files
MAXSctipt
Gizmos
Viewports
-Video Cote Check---
0 Flag with black
,c с
Scslelurna
Rendering
Output Dithewig
I i Field Order
NTSC С PAL
Scale Saturation
r\\!;:f: Super Slack Threshold- Щ,
« Odd
F
»
Patetted
Even
-Background
Angle Separation:
i-~ Don't AnSalias Against Background
' f W a u l t Ambient LigbtColor~i rOutput File Sequencing— !
Animation
f ? True Color
rHotSpot/Fafcff— \
mental ray
fiadiosity
Gamma and LUT
~ Filter Background
Г" Nth Serial Numbenng j | Г* Use Environment Afcha
Render Tefmination Afert Г
Beep Frequency: \Щ
TPiaySound File, p
tj
Duration; f25B
_J| mil
™ —
—
Choose Sound...
Bitm^s Pager Ummum NUR^MT: (TO
17 On Page Size (kB); JT28
L
F On
Вitmap Size Threshold (kB): [5237 Memwy Pool (kB| 150000
< OK
Cancel
i
Р и с . П 1 . 1 1 . Вкладка Rendering (Визуализация) окна Preference Settings (Настройки)
Совет 58. Если по каким-либо причинам вам понадобилось вернуться к материалу, присвоенному объекту по умолчанию, это можно сделать при помощи утилиты UVW Remove (Удалить UVW).
659
Источники света и камеры
Источники света и камеры Совет 59. Не используйте параметры Area Shadow (Область тени) и Ray Traced Shadows (Трассированные тени) при промежуточных визуализациях, так как это значительно увеличивает время просчетов. Проводите тестовую визуализацию с минимальными размерами изображения, но достаточными для контроля над вводимыми изменениями. Для этих же целей используйте при возможности визуализацию фрагмента или выделенных объектов. Совет 60. Используйте Clipping Plane (Секущая плоскость) камер для исключения ненужных объектов из визуализации. Очень часто такой прием применяется для визуализации интерьеров, когда необходимо исключить из визуализации передние стены. Принцип секущих плоскостей также применяется для отдельно взятых объектов и в окнах проекций во время моделирования. Совет 61. При желании вы можете быстро добавить в сцену освещение, используемое по умолчанию, с целью создания базового освещения и последующего его редактирования. Для этого необходимо в настройках окна проекции установить использование двух источников света (рис. П1.12) и выполнить команду Views • Add Default Lights to Scene (Вид • Добавить в сцену встроенные источники света). wuurt Configuration Rendatmg Method
Layout
p'Rendering Levsl f Smcoth С Facets • HigMgJits t~ Facets
f FW Г- UWifefterWi r Wireframe Г BouncfnsjBm Г Edged Faces Transparency '" None * Simple г Best Appt> To * Active Viewport Oo^i <"* All Viewports <~ All but Active
Safe Rames
Regions
Adaptive Degradation
r'endetmg Gptioro 3 1 Г" Г P
Cusable T extuies Texture Correction 2-butIer Wtfefiaffie Objects ForceZSided Detail» Lighting^ <* 1 Light [ * 21ф%\ V/ Shade Selected Fates f? OseSeleclionBiaiAets
r
Г DsplaySeleotedwithEdBedFece P Viewport Clipping Г Fast View Nth Faces [5 t\
Perspective U»ef View Field Of View fSTo
:
Рис. П1.12. Установка использования двух источников света в окне Viewport Configuration (Конфигурирование окна проекции)
Совет 62. Повысить качество тени Shadow Map (Тип отбрасываемой тени) можно за счет увеличения параметра Shadow Map Size (Размер карты теней). Однако увеличение значения этого параметра вызывает создание более четких границ тени, что не всегда приемлемо. Для решения задачи необходимо также увеличить значение параметра Sample Range (Диапазон усреднения).
660
Приложение 1 . 70 советов пользователям 3ds Max
Визуализация Совет 63. Если в сцене используются Raytrace-просчеты, обычно для простых материалов и теней хватает глубины в два просчета (значение параметра Maximum Depth (Максимальная глубина) в Raytracer Global Parameters (Глобальные параметры трассировки)), хотя по умолчанию задано 9. Если же в сцене присутствуют прозрачные объекты, то глубина лучей просчитывается в зависимости от количества проходов луча через преломляющие среды. Например, для стакана это четыре (ближняя стенка стакана — внешняя и внутренняя ее поверхности, а также задняя стенка — внутренняя и внешняя поверхности). Совет 64. Если необходимо сделать размер выходного изображения больше чем 32 768 х 32 768 пикселов (предел в настройках визуализатора 3ds Max 8), то можно использовать окно Video Post (Видеомонтаж): с его помощью можно получить до 99 999 х 99 999 пикселов. Существуют также способы визуализации изображения частями с последующей их «склейкой». Совет 65. Часто при работе с большими проектами время визуализации может растянуться на часы и даже дни. Чтобы иметь возможность продолжить работу над текущим или другим проектом, необходимо использовать сетевую визуализацию. В этом случае визуализация будет проходить в фоновом режиме при помощи модуля Backburner, а вы сможете работать с 3ds Max в обычном режиме. Совет 66. Если вам необходимо последовательно визуализировать несколько видов из камеры, это можно выполнить одним из следующих способов. •
При помощи подключаемых модулей (например, RPManager).
•
Анимировав камеру так, чтобы в ключевых кадрах были необходимые виды, а затем установив параметры визуализации каждого ключевого кадра с сохранением последовательности кадров в файл.
•
При помощи модуля Video Post (Видеомонтаж). При этом для каждой камеры создаются события Add Scene Event (Добавить событие-сцену) и Add Image Output Event (Добавить событие вывода изображения), где выбирается камера для визуализации и файл для записи визуализированного изображения (рис. П1.13).
Рис. П1.13. Окно модуля Video Post (Видеомонтаж) с настройками последовательной визуализации вида четырех камер
Разное
661
Разное Совет 67. При использовании чертежей для моделирования объектов возникает проблема, связанная с отрисовкой их в окнах проекций. Стандартными способами можно повысить качество до определенных пределов. Как вариант можно использовать чертеж, выполненный в программах векторной графики и импортированный в 3ds Max как набор кривых. Совет 68. Одним из способов борьбы с аварийным завершением программы является переход на современную операционную систему (Windows 2000/XP). Именно старые операционные системы Windows 95/98 вызывают наибольшее количество сбоев. Совет 69. Рассмотрите возможность улучшения конфигурации компьютера. Безусловно, такие решения связаны с материальными затратами, но работать комфортно с 3ds Max 8 можно только на компьютерах с современной конфигурацией. Совет 70. Для решения возникающих вопросов обращайтесь к файлу справки — это самое полное собрание ответов на них. В заключение хочу отметить, что это только часть тех полезных мелочей, которые необходимо знать при работе с 3ds Max, чтобы облегчить процесс создания своих проектов.
•
Приложение 2
Основные сочетания клавиш 3ds Max 8 • Интерфейс программы • Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) • Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) • Клавиатурные комбинации для работы с NURBS-объектами
663
Интерфейс программы
Работа в программе станет значительно быстрее и эффективнее, если вы будете пользоваться сочетаниями клавиш для выполнения операций. Для быстрого ознакомления с основными клавиатурными комбинациями интерфейса программы выполните команду Help • HotKey Map (Справка • Карта сочетаний клавиш). В результате откроется интерактивное окно (рис. П2.1). 83
§Q Hotkey Map
Autodesk
AUTODESK* WSMfOC 8 © (t— disabls viewport ctrltd ™ select ootie ait+d = snaps use axi5 со nstra tuts
с с camera view sft(ft+c = hide ca meras drl*e = create сsmera from view alt+Cr cut(potv)
f« front vtew. shift+f и snow safeffarnes ctrt+f = cycle selection method
0CD , —ч
E
ctri+v^sfone
ca^sxi octXi ОСЮО
Рис. П 2 . 1 . Интерактивное окно карты клавиатурных комбинаций 3ds Max 8
Если передвигать указатель по клавиатуре, расположенной в правом нижнем углу, то автоматически будет меняться отображение клавиатурных комбинаций. При нажатии треугольника в правом нижнем углу вы будете последовательно переключаться между клавиатурными комбинациями. Для просмотра данного окна вам понадобится установленный Flash-проигрыватель. Ниже приведены основные сочетания клавиш, которые могут понадобиться при выполнении упражнений данной книги.
ПРИМЕЧАНИЕ Полный список сочетаний клавиш можно получить, выполнив команду Customize • Customize User Interface (Настройка • Настройка пользовательского интерфейса). В открывшемся окне следует перейти на вкладку Keyboard (Клавиатура). Здесь можно также переопределить сочетания клавиш.
Интерфейс программы Команда или операция
Комбинация клавиш
Align (Выровнять)
Alt+A
Angle Snap Toggle (Угловая привязка вкл/выкл)
А
Background Lock (Блокировать фон)
Alt+Ctrl+B
664
Приложение 2. Основные сочетания клавиш 3ds Max 8
Команда или операция
Комбинация клавиш
Change to Bottom View (Переключить на вид снизу)
В
Change to Camera View (Переключить на вид из камеры)
С
Change to Front View (Переключить на вид спереди)
F
Change to Isometric User View (Переключить на изометрический пользовательский вид)
и
Change to Left View (Переключить на вид слева)
L
Change to Perspective User View (Переключить на перспективный пользовательский вид)
Р
Change to Top View (Переключить на вид сверху)
Т
Cycle Subobject Level (Циклический выбор уровня выделения подобъектов)
Insert
Disable Viewport (Исключить проекцию)
D
Display Grids Toggle (Показать/скрыть координатную сетку в активном окне)
G
Display Select-By-Name Dialog (Показать окно диалога выбора объектов)
Н
Expert Mode Toggle (Включение/выключение экспертного режима)
Ctrl+X
Material Editor (Редактор материалов)
м
Maximize View Toggle (Развернуть/восстановить окно проекции)
Alt+W
Move Mode (Режим смещения)
W
Open File (Открыть файл)
Ctrl+O
Quick Rendering (Быстрая визуализация)
Shift+Q
Redo Scene Operation (Повторить операции над объектами сцены)
Ctrl+Y
Render Last (Повторить визуализацию)
F9
Render Scene (Визуализация сцены)
F10
Rotate Mode (Режим вращения)
E
Save File (Сохранить файл)
Ctrl+S
Scale Mode (Режим масштабирования)
R
See-Through Display Toggle (Видеть сквозь объект вкл/выкл)
Alt+X
Select Mode (Режим выделения)
Q
Selection Lock Toggle (Блокировать выделенный объект)
Пробел
Shade Selected Faces Toggle (Тонировать выделенные грани вкл/выкл)
F2
Сочетания клавиш для работы с Editable Poly
665
Команда или операция
Комбинация клавиш
Snap Toggle (Привязка вкл/выкл)
S
Undo Scene Operation (Отменить операцию над объектами сцены)
Ctrl+Z
Zoom Mode (Масштаб)
Z
Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) Команда или операция
Комбинация клавиш
Bevel Mode (Режим выдавливания со скосом)
Ctrl+V, Ctrl+B
Chamfer Mode (Режим фаски)
Ctrl+C
Cut Mode (Режим вычитания)
Alt+C
Detach (Отделить)
Ctrl+D
Edge Subobject Mode (Режим ребер)
2
Element Subobject Mode (Режим элементов)
5
Extrude Mode (Режим выдавливания)
Ctrl+E
Face Subobject Mode (Режим граней)
3
Polygon Subobject Mode (Режим полигонов)
4
Vertex Subobject Mode (Режим вершин)
1
Weld Selected (Объединить выделенное)
Ctrl+W
Weld Target Mode (Объединить указанные)
Alt+W
Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) Команда или операция
Комбинация клавиш
Bevel Mode (Режим выдавливания со скосом)
Shift+Ctrl+B
Chamfer Mode (Режим фаски)
Shift+Ctrl+C
Connect (Соединить)
Shift+Ctrl+E
Cut (Вычитание)
Alt+C
Edge Subobject Mode (Режим ребер)
2
Element Subobject Mode (Режим элементов)
5
666
Приложение 2. Основные сочетания клавиш 3ds Max 8
Команда или операция
Комбинация клавиш
Extrude Mode (Режим выдавливания)
Shift+E
Face Subobject Mode (Режим граней)
3
Grow Selection (Увеличить выделение)
Ctrl+Page Up
Hide (Спрятать)
Alt+H
Meshsmooth (Сглаженная поверхность)
Ctrl+M
Object Level (Режим объекта)
6
Polygon Subobject Mode (Режим полигонов)
4
Repeat Last Operation (Повтор последней операции)
;
Select Edge Loop (Выделить ребра по петле)
Alt+L
Unhide All (Показать все)
Alt+U
Vertex Subobject Mode (Режим вершин)
1
Weld Mode (Режим слияния)
Shift+Ctrl+W
Клавиатурные комбинации для работы с NURBS-объектами Команда или операция
Комбинация клавиш
CV Constrained Normal Move (Ограничение сдвига управляющих точек вдоль нормали)
Alt+N
CV Constrained U Move (Ограничение сдвига управляющих точек вдоль оси U)
Alt+U
CV Constrained V Move (Ограничение сдвига управляющих точек вдоль оси V)
Alt+V
Display Curves (Показывать кривые)
Shift+Ctrl+C
Display Lattices (Показывать решетки деформации)
Ctrl+L
Display Shaded Lattice (Показывать тонированную решетку деформации)
Alt+L
Display Surfaces (Показывать поверхности)
Shift+Ctrl+S
Display Trims (Показывать обрезки)
Shift+Ctrl+T
Lock 2D Selection (Заблокировать 2О-выделение)
Пробел
Switch to Curve CV Level (Перейти на уровень управляющих вершин кривой)
Alt+Shift+Z
Switch to Curve Level (Перейти на уровень кривой)
Alt+Shift+C
Switch to Point Level (Перейти на уровень точек кривой)
Alt+Shift+P
Switch to Surface Level (Перейти на уровень поверхности)
Alt+Shift+S
Switch to Top Level (Перейти на верхний уровень)
Alt+Shift+T
Приложение 3
Содержимое компакт-диска
668
Приложение 3. Содержимое компакт-диска
Для более полного восприятия содержания книги к ней прилагается компакт-диск. Названия папок на компакт-диске соответствуют номерам глав. Каждая папка, соответствующая главе, включает в себя вложенные папки со следующим содержимым. • JPG — цветные иллюстрации в формате JPG с номерами, соответствующими номерам иллюстраций в книге, помогут вам более полно представить то, что должно происходить в процессе выполнения упражнений. • Мах — файлы сцен упражнений, описываемых в книге. Вы можете обращаться к данным файлам, если что-то непонятно из описания в книге. Обратите внимание, что файлы сцен могут быть открыты только в программе 3ds Max не ниже версии 8. В папке Soft содержится установочный файл полнофункциональной демонстрационной версии программы 3ds Max 8, а в папке Дополнительные уроки — дополнительные упражнения, не вошедшие в книгу.
Верстак В. А.
3ds Max 8. Секреты мастерства (+CD) Заведующий редакцией Руководитель проекта Художник Корректоры Верстка
Д. Гурский Е. Каляева А. Татарко Д. Клевитский, Т. Лаврович Е. Зверев
Лицензия ИД № 05784 от 07.09.01. Подписано в печать 05.12.05. Формат 70Х100'/|6. Усл. п. л. 54.18. Тираж 4500 экз. Заказ № 6753. ООО «Питер Принт». 194044, Санкт-Петербург. Б. Сампсониевский пр., 29а. Налоговая льгота — общероссийский классификатор продукции ОК 005-93, том 2; 953005 — литература учебная Отпечатано с готовых диапозитивов в ФГУП «Печатный двор» им. A.M. Горького Федерального агентства по печати и массовым коммуникациям. 197110, Санкт-Петербург, Чкаловский пр.. 15.
ЗАКАЗАТЬ КНИГИ ИЗДАТЕЛЬСКОГО ДОМА «ПИТЕР» МОЖНО ЛЮБЫМ УДОБНЫМ ДЛЯ ВАС СПОСОБОМ: • • • •
по телефону: (812) 703-73-74; по электронному адресу: [email protected]; на нашем сервере: www.piter.com; по почте: 197198, Санкт-Петербург, а/я 619, ЗАО «Питер Пост».
ВЫ МОЖЕТЕ ВЫБРАТЬ ОДИН ИЗ ДВУХ СПОСОБОВ ДОСТАВКИ И ОПЛАТЫ ИЗДАНИЙ:
ПРИ ОФОРМЛЕНИИ ЗАКАЗА УКАЖИТЕ: • фамилию, имя, отчество, телефон, факс, e-mail; • почтовый индекс, регион, район, населенный пункт, улицу, дом, корпус, квартиру; • название книги, автора, код, количество заказываемых экземпляров.
Вы можете заказать бесплатный журнал «Клуб Профессионал»
пзалтЕпьскпй пом WWW.PITER.COM
ТЕПЬСКПП ПОМ ®
[^ПИТЕР SZ^^
w \л/ ш D I т Р о г п м WWW.PITER.COM
СПЕЦИАЛИСТАМ КНИЖНОГО БИЗНЕСА!
ПРЕДСТАВИТЕЛЬСТВА ИЗДАТЕЛЬСКОГО ДОМА «ПИТЕР» предлагают эксклюзивный ассортимент компьютерной, медицинской, психологической, экономической и популярной литературы
РОССИЯ
м. «Павелецкая», 1 -й Кожевнический переулок, д. 10; тел./факс (095) 234-38-15, 255-70-67, 255-70-68; e-mail: [email protected] Санкт-Петербург м. «Выборгская», Б. Сампсониевский пр., д. 29а; тел./факс (812) 703-73-73, 703-73-72; e-mail: [email protected] Воронеж ул. 25 января, д. 4; тел./факс (0732) 39-43-62,39-61 -70; e-mail: [email protected] Екатеринбург ул. 8 Марта, д. 2676, офис 203, 205; тел./факс (343) 225-39-94, 225-40-20; e-mail: [email protected] Нижний Новгород ул. Совхозная, д. 13; тел. (8312) 41-27-31; e-mail: [email protected] Новосибирск ул. Немировича-Данченко, д. 104, офис 502; тел./факс (383) 354-13-09, 211-27-18; e-mail: [email protected] Ростов-на-Дону ул. Ульяновская, д. 26; тел. (863) 269-91 -22, 269-91-30; e-mail: [email protected] Самара ул. Молодогвардейская, д. 33, литер А2, ком. 225; тел. (846) 77-89-79; e-mail: [email protected] Москва
Харьков Киев
УКРАИНА
ул. Суздальские ряды, д. 12, офис 10-11; тел./факс (10-38-057) 712-27-05, 751-10-02, (0572) 58-41-45; e-mail: [email protected]
пр. Московский, д. 6, кор. 1, офис 33; тел./факс (10-38-044) 490-35-68,490-35-69; e-mail: [email protected] Минск
БЕЛАРУСЬ
ул. Бобруйская, д. 21, офис 3; тел./факс (10-375-17) 226-19-53; e-mail: [email protected]
Ищем зарубежных партнеров или посредников, имеющих выход на зарубежный рынок. Телефон для связи: (812) 703-73-73. E-mail: [email protected] Издательский дом «Питер» приглашает к сотрудничеству авторов. Обращайтесь по телефонам: Санкт-Петербург — (812) 703-73-72, Москва - (095) 974-34-50. Заказ книг для вузов и библиотек: (812) 703-73-73. Специальное предложение - e-mail: [email protected]
пзалтс-пьскпп пом WWW.PITER.COM
УВАЖАЕМЫЕ ГОСПОДА! КНИГИ ИЗДАТЕЛЬСКОГО ДОМА «ПИТЕР» ВЫ МОЖЕТЕ ПРИОБРЕСТИ ОПТОМ И В РОЗНИЦУ У НАШИХ РЕГИОНАЛЬНЫХ ПАРТНЕРОВ.
Башкортостан
Уфа, «Азия», ул. Гоголя, д. 36, офис 5, тел./факс (3472) 50-39-00, 51 -85-44. E-mail: [email protected]
Красноярск, «Книжный мир», тел./факс (3912) 27-39-71. E-mail: [email protected]
Дальний Восток
Владивосток, «Приморский торговый дом книги», тел./факс (4232) 23-82-12. E-mail: [email protected]
Нижневартовск, «Дом книги», тел. (3466) 23-27-14, факс 23-59-50. E-mail: [email protected]
Хабаровск, «Мире», тел. (4212) 30-54-47, факс 22-73-30. E-mail: [email protected]
Новосибирск, «Топ-книга», тел. (3832) 36-10-26, факс 36-10-27. E-mail: [email protected] http://www.top-kniga.ru
Хабаровск, «Книжный мир», тел. (4212) 32-85-51, факс 32-82-50. E-mail: [email protected]
Тюмень, «Друг», тел./факс (3452) 21-34-82. E-mail: [email protected]
Европейские регионы России
Архангельск, «Дом книги», тел. (8182) 65-41 -34, факс 65-41 -34. E-mail: [email protected] Калининград, «Вестер», тел./факс (0112)21 -56-28,21 -62-07. E-mail: [email protected] http://www.vester.ru
Тюмень, «Фолиант», тел. (3452) 27-36-06, факс 27-36-11. E-mail: [email protected] •
Челябинск, ТД «Эврика», ул. Барбюса, д. 61, тел./факс (3512) 52-49-23. E-mail :evrika@chel .surnet. ru Татарстан
Северный Кавказ
Ессентуки, «Россы», ул. Октябрьская, 424, тел./факс (87934) 6-93-09. E-mail: [email protected]
Казань, «Таис», тел. (8432) 72-34-55, факс 72-27-82. E-mail: [email protected] Урал
Сибирь
Иркутск, «ПродаЛитЪ», тел. (3952) 59-13-70, факс 51-30-70. E-mail: [email protected] http://www.prodalit.irk.ru Иркутск, «Антей-книга», тел./факс (3952) 33-42-47. E-mail: [email protected]
Екатеринбург, магазин № 14, ул. Челюскинцев, д. 23, тел./факс (3432) 53-24-90. E-mail: [email protected] Екатеринбург, «Валео-книга», ул. Ключевская, д. 5, тел./факс (3432) 42-56-00. E-mail: [email protected]