3ds Max 2009. Секреты мастерства (+DVD)
 9785498072227

Table of contents :
Введение
От издательства
Часть 1. Основы работы в 3ds Max 2009
Глава 1. Интерфейс программы
Элементы интерфейса
Подключаемые модули
Настройка программы
Глава 2. Основные приемы работы
Объекты в 3ds Max 2009
Создание объектов сцены
Модификаторы геометрии
Глава 3. Материалы и текстуры
Окно Material Editor (Редактор материалов)
Материал типа Standard (Стандартный)
Создание сложных материалов
Использование текстурных карт
Глава 4. Анимация в среде 3ds Max 2009
Анимация с использованием ключевых кадров
Использование контроллеров и выражений
Анимация частиц
Глава 5. Основы визуализации
Инструменты визуализации
Параметры визуализации
Виртуальный буфер кадров
Использование модуля RAM Player (RAM-проигрыватель)
Окружение и атмосферные эффекты
Модуль Video Post (Видеомонтаж)
Глава 6. Технологии вывода анимированных изображений
Визуализация анимации
Размытие движущихся объектов сцены
Технология сжатия видео
Сетевая визуализация
Общие рекомендации по визуализации видеоизображений
Часть 2. Практический курс
Глава 7. Освещение
Основы освещения в трехмерной графике
Излучение лазера
Объемный свет
Использование базовых источников света в интерьере
Глава 8. Анимация сцен
Анимация с использованием деформируемой геометрии
Анимация взрыва
Два варианта анимации страницы книги
Анимация рукописного шрифта
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
Анимация движения танковой гусеницы
Звук в 3ds Max
Песочные часы
Текст уносимый порывами ветра
Глава 9. Практическое моделирование
Натюрморт
Моделирование лофт-объектов
Моделирование штор
Полигональное моделирование телефонной трубки
Моделирование микроволновой печи
Комплексный подход к моделированию: создание крана для ванной
Забавная лошадка
Глава 10. Текстурирование
Материал имитирующий хром
Текстурирование натюрморта
Текстурирование микроволновой печи
Сложное текстурирование
Текстурирование лошадки
Глава 11. Визуализация
Интеграция трехмерной графики и фотографии
Маскирование объектов
Объекты в фокусе камеры
Работаем с Video Post (Видеомонтаж)
Часть 3. Усложненное моделирование
Глава 12. Моделирование автомобиля
Виртуальная студия — начало всех начал
Создание автомобильного диска с помощью NURBS-моделирования
Моделирование колеса автомобиля с помощью полигонов
Моделируем BMW
Глава 13. Текстурирование автомобиля
Основы текстурирования автомобиля
Текстурирование деталей автомобиля
Глава 14. Моделирование головы
Моделирование головы с помощью модуля Surfacetools
Моделирование головы с помощью полигонов
Моделирование ресниц
Использование UV-проецирования для полигональной модели головы
Текстурирование головы человека
Создание волос
Заключение
Приложение 1. 70 советов пользователям 3ds Max
Интерфейс и окна проекций
Работа с файлами
Моделирование
Анимация
Материалы и текстуры
Источники света и камеры
Визуализация
Разное
Приложение 2. Основные сочетания клавиш 3ds Max 2009
Интерфейс программы
Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность)
Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность)
Сочетания клавиш для работы с NURBS-объектами
Приложение 3. Содержимое DVD прилагаемого к книге

Citation preview

Верстак Владимир Антонович

3ds Max 2009. Секреты мастерства (+DVD)

Заведующий редакцией Ведущий редактор Художник Корректор Верстка

Д. Гурский Е. Каляева С. Скрипниченко Е. Павлович О. Махлина

ББК 32.973-018.3 УДК 004.92 В35

Верстак В. 3ds Max 2009. Секреты мастерства (+DVD). — СПб.: Питер, 2009. — 784 с.: ил. ISBN 978-5-49807-222-7

Узнайте секреты профессиональной работы в 3ds Max 2009 от настоящего мастера своего дела! Автор — профессионал трехмерного дизайна. Его оригинальный подход к созданию объектов и сцен, к моделированию и визуализации будет полезен и специалисту, и начинающему пользователю. Вы узнаете обо всех возможностях новейшей версии лучшего 3D-пакета, в том числе и скрытых от непосвященных. Особое внимание уделено моделированию: вы начнете с простейших объектов и завершите созданием трехмерного автомобиля. На прилагаемом DVD — файлы сцен упражнений, иллюстрации из книги в цвете, видеоролики, показывающие результат выполнения некоторых упражнений, а кроме того, пробная версия 3ds Max 2009.

Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав.

Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги.

ISBN 978-5-49807-222-7

© ООО «Лидер», 2009

ООО «Лидер», 194044, Санкт-Петербург, Б. Сампсониевский пр., 29а. Подписано в печать 23.02.09. Формат 70Ч100/16. Усл. п. л. 63,21. Тираж 3000. Заказ 0000. Отпечатано по технологии CtP в ОАО «Печатный двор» им. А. М. Горького. 197110, Санкт-Петербург, Чкаловский пр., 15.

Краткое содержание Введение .................................................................................................... 8 От издательства ........................................................................................ 14

Часть 1. Основы работы в 3ds Max 2009 Глава 1. Интерфейс программы .......................................................... 17 Глава 2. Основные приемы работы ..................................................... 75 Глава 3. Материалы и текстуры ......................................................... 116 Глава 4. Анимация в среде 3ds Max 2009 .......................................... 151 Глава 5. Основы визуализации .......................................................... 180 Глава 6. Технологии вывода анимированных изображений............ 211

Часть 2. Практический курс Глава 7. Освещение ............................................................................ 237 Глава 8. Анимация сцен ...................................................................... 278 Глава 9. Практическое моделирование ............................................ 384 Глава 10. Текстурирование ................................................................ 529 Глава 11. Визуализация...................................................................... 573

Часть 3. Усложненное моделирование Глава 12. Моделирование автомобиля ............................................. 603 Глава 13. Текстурирование автомобиля ........................................... 665 Глава 14. Моделирование головы ..................................................... 689 Заключение ........................................................................................... 763 Приложение 1. 70 советов пользователям 3ds Max ....................... 764 Приложение 2. Основные сочетания клавиш 3ds Max 2009........... 778 Приложение 3. Содержимое DVD, прилагаемого к книге .............. 783

Оглавление Введение .................................................................................................... 8 От издательства ........................................................................................ 14

Часть 1. Основы работы в 3ds Max 2009 Глава 1. Интерфейс программы .......................................................... 17 Элементы интерфейса .............................................................................. 18 Подключаемые модули.............................................................................. 59 Настройка программы ............................................................................... 62

Глава 2. Основные приемы работы ..................................................... 75 Объекты в 3ds Max 2009 ............................................................................ 76 Создание объектов сцены ......................................................................... 85 Модификаторы геометрии ...................................................................... 105

Глава 3. Материалы и текстуры ......................................................... 116 Окно Material Editor (Редактор материалов) ............................................. 117 Материал типа Standard (Стандартный) .................................................. 123 Создание сложных материалов ............................................................... 129 Использование текстурных карт .............................................................. 137

Глава 4. Анимация в среде 3ds Max 2009 .......................................... 151 Анимация с использованием ключевых кадров ........................................ 152 Использование контроллеров и выражений ............................................ 168 Анимация частиц ..................................................................................... 175

Глава 5. Основы визуализации .......................................................... 180 Инструменты визуализации .................................................................... 181 Параметры визуализации........................................................................ 182 Виртуальный буфер кадров ..................................................................... 188 Использование модуля RAM Player (RAM-проигрыватель) ....................... 189 Окружение и атмосферные эффекты....................................................... 191 Модуль Video Post (Видеомонтаж) ........................................................... 205

5

Оглавление

Глава 6. Технологии вывода анимированных изображений............ 211 Визуализация анимации ......................................................................... 212 Размытие движущихся объектов сцены ................................................... 219 Технология сжатия видео ........................................................................ 227 Сетевая визуализация ............................................................................. 229 Общие рекомендации по визуализации видеоизображений ................... 233

Часть 2. Практический курс Глава 7. Освещение ............................................................................ 237 Основы освещения в трехмерной графике .............................................. 238 Излучение лазера.................................................................................... 248 Объемный свет ....................................................................................... 251 Использование базовых источников света в интерьере ........................... 257

Глава 8. Анимация сцен ...................................................................... 278 Анимация с использованием деформируемой геометрии ....................... 279 Анимация взрыва .................................................................................... 288 Два варианта анимации страницы книги ................................................. 296 Анимация рукописного шрифта ............................................................... 304 Использование модификатора Cloth (Ткань) для симуляции поведения тканей ................................................... 320 Анимация движения танковой гусеницы .................................................. 328 Звук в 3ds Max ......................................................................................... 346 Песочные часы ........................................................................................ 364 Текст, уносимый порывами ветра ............................................................ 374

Глава 9. Практическое моделирование ............................................ 384 Натюрморт .............................................................................................. 385 Моделирование лофт-объектов .............................................................. 398 Моделирование штор .............................................................................. 408 Полигональное моделирование телефонной трубки................................ 414 Моделирование микроволновой печи ..................................................... 429 Комплексный подход к моделированию: создание крана для ванной ...... 459 Забавная лошадка................................................................................... 497

6

Оглавление

Глава 10. Текстурирование ................................................................ 529 Материал, имитирующий хром ................................................................ 530 Текстурирование натюрморта ................................................................. 535 Текстурирование микроволновой печи .................................................... 545 Сложное текстурирование....................................................................... 553 Текстурирование лошадки....................................................................... 563

Глава 11. Визуализация...................................................................... 573 Интеграция трехмерной графики и фотографии...................................... 574 Маскирование объектов .......................................................................... 582 Объекты в фокусе камеры ....................................................................... 587 Работаем с Video Post (Видеомонтаж) ..................................................... 597

Часть 3. Усложненное моделирование Глава 12. Моделирование автомобиля ............................................. 603 Виртуальная студия — начало всех начал ................................................ 604 Создание автомобильного диска с помощью NURBS-моделирования..... 617 Моделирование колеса автомобиля с помощью полигонов ..................... 627 Моделируем BMW ................................................................................... 640

Глава 13. Текстурирование автомобиля ........................................... 665 Основы текстурирования автомобиля ..................................................... 666 Текстурирование деталей автомобиля .................................................... 677

Глава 14. Моделирование головы ..................................................... 689 Моделирование головы с помощью модуля Surfacetools ......................... 690 Моделирование головы с помощью полигонов........................................ 706 Моделирование ресниц .......................................................................... 726 Использование UV-проецирования для полигональной модели головы... 735 Текстурирование головы человека .......................................................... 747 Создание волос....................................................................................... 757

Заключение ........................................................................................... 763

Оглавление

7

Приложение 1. 70 советов пользователям 3ds Max ....................... 764 Интерфейс и окна проекций .................................................................... 765 Работа с файлами ................................................................................... 766 Моделирование ...................................................................................... 768 Анимация ................................................................................................ 773 Материалы и текстуры ............................................................................ 774 Источники света и камеры ....................................................................... 775 Визуализация .......................................................................................... 776 Разное .................................................................................................... 777

Приложение 2. Основные сочетания клавиш 3ds Max 2009........... 778 Интерфейс программы............................................................................ 779 Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) ........................................................ 781 Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) ................................ 781 Сочетания клавиш для работы с NURBS-объектами ................................ 782

Приложение 3. Содержимое DVD, прилагаемого к книге .............. 783

Введение Стремительное развитие технологий в последнее десятилетие привело к такому же быстрому росту в области компьютерной техники и программного обеспечения. Еще совсем недавно незначительный, по сегодняшним меркам, эпизод из фильма, созданный с помощью спецэффектов, вызывал бурю восторга и обсуждений. Сегодня спецэффектами в кино и на телевидении никого не удивишь. Они стали обыденным явлением благодаря массовому распространению программ создания компьютерной графики и, в частности, трехмерного моделирования. Редакторы трехмерной графики — самые интересные по своим возможностям и сложные по освоению приложения. Одно из лидирующих мест среди таких программ занимает 3ds Max. Благодаря своим уникальным возможностям и доступности освоения это приложение сегодня имеет наибольшее количество поклонников как среди любителей, так и среди профессионалов. Пожалуй, осталось очень мало сфер деятельности человека, связанных с трехмерной графикой, в которых не используется 3ds Max. Ее активно применяют для создания игр и фильмов, в архитектуре и строительстве, в медицине и физике, а также во многих других областях. При выходе каждой новой версии программа приобретает новые возможности и становится более профессиональной. Сегодня создание и визуализация сцен в 3ds Max ограничены только фантазией пользователя и уровнем знания возможностей приложения. Вы держите в своих руках уникальную книгу, рассказывающую языком живых примеров об удивительном мире статических и анимированных образов в среде программы 3ds Max 2009. Каждое упражнение является самостоятельным, реализация любого из них не требует более полутора-двух часов (конечно, при соответствующем уровне опыта пользователя). Каждый пример отвечает на конкретно поставленный вопрос: как моделировать и текстурировать микроволновую печь или автомобиль, как анимировать книгу, текст, написанный перьевой ручкой, фонтан или песочные часы и т. д. Существует несколько уровней обучения работе в программе 3ds Max, начиная с самого простого, когда задачей является моделирование простых объектов сцены или перемещение объекта из точки А в точку Б, до создания реалистичных моделей и «оживления» анимационных персонажей. Все описанные в книге упражнения способны натолкнуть на новые идеи для создания различных образов или анимаций. Работая над собственным проектом, вы можете вдруг вспомнить один из уроков книги, который подскажет вам способ решения задачи. Компьютерная анимация, которая используется для создания художественных и анимационных фильмов, в телевизионных программах и компьютерных играх, является сложной и многокомпонентной. Существует множество способов моделирования объектов и создания анимации и, как следствие, большое количество трудностей, связанных с этим. Данная книга призвана помочь в преодолении таких сложностей.

Введение

9

Для кого предназначена книга Книга «3ds Max 2009. Секреты мастерства» предназначена для всех пользователей, которые хотели бы заняться или уже работают с трехмерной графикой и желают подняться на новую ступень мастерства. Книга будет полезна и начинающим разработчикам, делающим свои первые шаги в компьютерной графике, и пользователям, уже имеющим опыт работы с трехмерной графикой. 3ds Max 2009 — сложная программа, и даже ее опытные пользователи порой сталкиваются при работе с трудностями, связанными с недостаточными знаниями. Возможности приложения настолько обширны, что одну и ту же задачу можно решать несколькими способами, причем каждый способ уникален. Именно поэтому пользователям, имеющим опыт работы с этой программой, будут интересны разделы книги, посвященные трехмерному моделированию и анимации, созданию материалов и текстурированию, работе с кривыми и поверхностями. Для пользователей, делающих первые шаги в изучении 3ds Max, не лишними будут знания о традиционном искусстве и классической анимации. Знание таких приложений, как Adobe Photoshop, Corel PHOTO-PAINT, Adobe Illustrator и CorelDRAW, Adobe After Effects или Autodesk Combustion, поможет вам значительно быстрее освоить 3ds Max. Часто при работе с 3ds Max придется создавать собственные текстуры и заниматься постобработкой визуализированных изображений. Однако это не означает, что без знания перечисленных выше приложений вы не можете изучать 3ds Max. Как минимум вы должны уметь работать с операционной системой и иметь представление о редакторах растровой графики. В первой части книги даны основы, которые помогут вам выполнять уроки, приведенные во второй и третьей частях издания. Если вы сразу обратились ко второй части книги и чувствуете, что вам не хватает базовых знаний или в них есть пробелы, начните чтение книги с самого начала. Если вы пользователь среднего уровня, то можете начать изучение со второй части. С ее помощью можно почерпнуть новые знания и овладеть большим количеством методов моделирования и анимации. Даже если вы уже достаточно опытный пользователь программы 3ds Max, все равно практически из каждого урока сможете узнать что-то новое и полезное.

Структура книги Книга состоит из трех независимых частей и трех приложений. К изданию также прилагается DVD, который содержит сцены примеров, описанных в книге, цветные иллюстрации и демонстрационные 32- и 64-битные версии 3ds Max 2009.

Часть 1. Основы работы в 3ds Max 2009 Первая часть является ознакомительной и предназначена для начинающих пользователей программы 3ds Max. В ней в сжатом виде собраны базовые сведения, необходимые для изучения уроков, которые размещены во второй и третьей частях книги. Здесь вы познакомитесь с интерфейсом приложения, основными приемами работы, научитесь использовать Material Editor (Редактор материалов),

10

Введение

визуализировать изображения и выполнять другие действия, необходимые для создания полноценных сцен. 

Глава 1 «Интерфейс программы» — в ней описаны элементы интерфейса приложения, рассмотрены основные панели и инструменты для работы с программой 3ds Max 2009. Здесь также идет речь о расширении возможностей приложения за счет подключаемых модулей, затронуты вопросы точной настройки программы и создание собственного пользовательского интерфейса.



Глава 2 «Основные приемы работы» — здесь рассмотрено создание объектов сцены в программе 3ds Max. Возможности приложения настолько обширны, что одни и те же объекты можно смоделировать различными способами. Эта глава дает общее представление об объектах форм, параметрических объектах и модификаторах, применяемых для быстрого изменения форм объектов и создания анимации.



Глава 3 «Материалы и текстуры» — в ней рассказано, что такое Material Editor (Редактор материалов) и как с ним работать, подробно рассмотрен стандартный материал и даны начальные сведения о составных материалах. Вы узнаете о том, как назначать материал объектам и создавать текстуры.



Глава 4 «Анимация в среде 3ds Max 2009» — здесь приведены основы создания анимированных изображений с использованием ключевых кадров, контроллеров и выражений, а также описано выполнение анимации частиц.



Глава 5 «Основы визуализации» — в ней рассмотрены основные средства визуализации в программе 3ds Max и способы получения растровых изображений, рассказано о работе модуля Video Post (Видеомонтаж).



Глава 6 «Технологии вывода анимированных изображений» — описывает, как подготавливать и визуализировать сцены с использованием анимации, созданные в программе 3ds Max. В этой главе рассказывается о том, как сделать размытое движение, характерное для съемочной камеры или фотоаппарата, о том, как визуализировать последовательность кадров с применением компьютеров, объединенных в локальную сеть, а также о форматах и технологиях сжатия видеоизображений.

Часть 2. Практический курс Вторая часть представляет собой собрание уникальных упражнений, сгруппированных по главам и затрагивающих почти все аспекты работы с программой. Все задания являются самостоятельными и не требуют соблюдения последовательности при их изучении, хотя по уровню сложности расположены от простых к более сложным. Пользователям, не имеющим достаточного опыта работы с 3ds Max, я рекомендую выполнять упражнения по порядку. Все упражнения написаны таким образом, чтобы у вас не возникло сложностей с их повторением. Кроме того, практически в каждом задании содержатся сведения, поясняющие выполнение тех или иных действий, дается подробное описание команд, а также приведены иллюстрации с настройками и видами окон проекций. Во многих случаях выбор определенных действий сопровождается пояснением. Это поможет

Введение

11

вам не просто бездумно выполнять действия, но и понять, почему использована та или иная команда, что очень важно для самостоятельной работы. 

Глава 7 «Освещение» — изучив эту главу, вы научитесь правильно устанавливать свет, располагать тени и освещать интерьер. Вы также познакомитесь с объемным (видимым) светом. Освещение — это мощный инструмент в руках дизайнера трехмерной графики, и нужно уметь правильно им пользоваться.



Глава 8 «Анимация сцен» — описывает различные способы создания комбинированных анимаций. Эта глава позволит вам научиться использовать контроллеры и выражения, управляющие значениями анимации. Кроме того, вы узнаете о создании систем частиц, в том числе с использованием окна диалога Particle View (Окно системы частиц).



Глава 9 «Практическое моделирование» — начиная с простых уроков, вы научитесь основам моделирования и постепенно перейдете к решению более сложных задач. Вы узнаете, что такое сплайновое моделирование, моделирование полигонами, NURBS-моделирование и моделирование лофт-объектов. В данной главе будет рассмотрено комплексное моделирование. Полученные в этой главе знания помогут вам создавать более сложные модели, о которых пойдет речь в следующих главах.



Глава 10 «Текстурирование» — рассказывает о долгом и кропотливом процессе создания материалов для трехмерных объектов. Чтобы сделать приемлемую текстуру, можно экспериментировать не один час. Окно Material Editor (Редактор материалов) в 3ds Max настолько удачно организовано, что позволяет получить практически любой материал, — все ограничено только знаниями и воображением пользователя. Выполняя упражнения этой главы, вы научитесь создавать реалистичные материалы и текстуры. Кроме того, познакомитесь с материалами подключаемого модуля V-Ray.



Глава 11 «Визуализация» — описывает, как подготавливать и визуализировать сцены, созданные в программе 3ds Max. Существует большое количество вариантов, позволяющих получить при визуализации хорошее изображение, но всегда есть способ улучшить его. В упражнениях этой главы рассказывается о том, как это сделать. Рассматриваются методы работы с фотографиями, исследуется возможность улучшения визуализации за счет создания глубины резкости изображения.

Часть 3. Усложненное моделирование Для работы с упражнениями, собранными в данной части книги, вам понадобится обладать как минимум знаниями начального уровня или выполнить задания предыдущей части. Уроки сложны для изучения, но вместе с тем являются самыми интересными по своей структуре, моделированию и конечному результату. В главах этой части описываются моделирование и текстурирование автомобиля, а также два способа моделирования головы со средним уровнем детализации, ее текстурирование и создание волос. Чтобы выполнять такие задания, вы должны не только знать инструменты и методы моделирования: у вас должно быть хорошо развито пространственное мышление, иначе можно потеряться в большом количестве

12

Введение

вершин, ребер и полигонов строящейся модели. Кроме того, при моделировании головы очень поможет умение рисовать и образно мыслить. 

Глава 12 «Моделирование автомобиля» — описывает одну из интереснейших задач, которые могут стоять перед пользователем программы 3ds Max. Она достаточно сложна для людей, не имеющих опыта моделирования, поэтому к выполнению упражнений этой главы рекомендуется приступать, предварительно ознакомившись с моделированием более простых объектов (например, описанных в гл. 9). Задания данной главы построены так, что их последовательное выполнение позволит вам смоделировать к ее концу автомобиль BMW пятой серии.



Глава 13 «Текстурирование автомобиля» — здесь рассмотрено текстурирование, которое необходимо выполнить после построения модели автомобиля. Именно хорошие текстуры придают модели вид, который может претендовать на реалистичность. Для простоты восприятия глава разделена на два упражнения. Первое задание затрагивает общие вопросы и текстурирование кузова. Второе — описывает текстурирование отдельных элементов.



Глава 14 «Моделирование головы» — рассказывает об интересном, но в то же время сложном занятии, которое по плечу только опытным дизайнерам. Все описанные в этой главе операции сложны для выполнения и требуют предварительной подготовки. Упражнения, представленные в данной главе, раскрывают темы моделирования с помощью модуля Surfacetools и полигонального моделирования с последующим текстурированием готовой модели и созданием волос. Первые два задания основаны на принципе моделирования головы среднего уровня детализации, достаточном для создания реалистичного образа.

Приложения 

Приложение 1 «70 советов пользователям 3ds Max» — содержит советы, предназначенные прежде всего для пользователей, которые только начинают работать с программой 3ds Max. Все советы, собранные в этом приложении, возникли на основе практического опыта работы в программе и призваны помочь в ее освоении и решении некоторых проблем.



Приложение 2 «Основные сочетания клавиш 3ds Max 2009» — включает в себя сведения об основных сочетаниях клавиш, ускоряющих процесс выполнения определенных команд и, как следствие, облегчающих работу с приложением. Более полное описание сочетаний клавиш можно найти в файле справки программы.



Приложение 3 «Содержимое DVD, прилагаемого к книге» — описывает содержимое DVD, который поставляется вместе с книгой.

Требования к программному и аппаратному обеспечению В настоящее время программа 3ds Max выпускается в двух вариантах: 3ds Max и 3ds Max Design для работы с 32-битным или 64-битным приложением. Версия 3ds Max Design отличается от 3ds Max тем, что это приложение предназначено

Введение

13

для пользователей, связанных с архитектурой. В 3ds Max Design дополнительно включена Exposure lighting analysis technology (Технология анализа экспозиции освещенности), специально созданная для работы с архитектурными элементами и визуализацией.

Выбор операционной системы Обратите внимание: прежде чем устанавливать 3ds Max 2009 на свой компьютер, вы должны убедиться в том, что он обладает необходимым минимумом аппаратного и программного обеспечения. Для работы с 32-битным приложением 3ds Max 2009 вам понадобится операционная система Microsoft Windows Vista или Microsoft Windows XP Professional с установленным пакетом обновлений Service Pack 2 или выше. Для работы с 64-битным приложением 3ds Max 2009 вам понадобится операционная система Microsoft Windows Vista или Microsoft Windows XP Professional x64, которая, на мой взгляд, является на сегодняшний день лучшим выбором для работы с большими сценами и сложной визуализацией. Кроме того, на 64-битный компьютер вы можете устанавливать как 64-, так 32-битную версию программы.

ВНИМАНИЕ В операционных системах Windows 98/NT/Me/2000/XP Home Edition или Windows 2003 Server программа 3ds Max 2009 работать не будет.

Для установки приложения также понадобится предварительно инсталлированный DirectX версии не ниже 9c или 10 (для операционной системы Windows Vista).

ПРИМЕЧАНИЕ При установке операционной системы Windows XP с Service Pack 2 DirectX версии 9c инсталлируется автоматически.

Требования к аппаратному обеспечению Для обеспечения наилучшей производительности в среде 3ds Max 2009 нужен достаточно мощный компьютер. В случае 32-битной операционной системы хорошим выбором будет Intel Pentium IV или AMD Athlon с оперативной памятью 2 Гбайт (минимум 512 Мбайт) и 2 Гбайт (минимум 500 Мбайт) для файла подкачки. Для 64-битной операционной системы можно порекомендовать Intel EM64T, AMD Athlon 64 или AMD Opteron с оперативной памятью 4 Гбайт (минимум 1 Гбайт). Необходимо достаточное количество места на жестком диске, а также монитор не менее 17 дюймов по диагонали (оптимальный выбор — 19 дюймов). Можно порекомендовать двухпроцессорные системы Intel Xeon или AMD Athlon как системы с наилучшей производительностью. Наличие второго процессора

14

От издательства

увеличивает мощность системы и позволяет комфортно работать с другими приложениями в процессе визуализации в 3ds Max. Для комфортной работы следует иметь и трехкнопочную мышь с колесом прокрутки, что значительно упрощает навигацию по меню и в окнах проекций. Одним из наиболее важных элементов в производительности системы является видеокарта. Не стоит останавливать свой выбор на видеокартах, оптимизированных для компьютерных игр. На сайте производителя программы 3ds Max (www.autodesk.com/3dsmax) можно получить список видеокарт, наиболее подходящих для работы с данным приложением. Рекомендуется, чтобы видеокарта поддерживала разрешение экрана как минимум 1024 Ч 768 с 16-битным цветом и имела в своем составе драйверы для OpenGL и DirectX. Кроме того, видеокарта должна иметь как минимум 32 Мбайт встроенной оперативной памяти. ВНИМАНИЕ 256-цветный режим программой 3ds Max 2009 не поддерживается.

СОВЕТ Хорошим выбором будет приобретение профессионального трехмерного ускорителя.

Для полной инсталляции и работы с программой необходимо 650 Мбайт (желательно 1 Гбайт) свободного места на жестком диске.

От издательства Ваши замечания, предложения, вопросы отправляйте по адресу электронной почты [email protected] (издательство «Питер», компьютерная редакция). На веб-сайте издательства http://www.piter.com вы найдете подробную информацию о наших книгах.

Часть 1.

Основы работы в 3ds Max 2009 Глава 1. Интерфейс программы Глава 2. Основные приемы работы Глава 3. Материалы и текстуры Глава 4. Анимация в среде 3ds Max 2009 Глава 5. Основы визуализации Глава 6. Технологии вывода анимированных изображений

Знакомство с такой сложной и объемной программой, как 3ds Max 2009, логично начать с изучения ее интерфейса и возможностей. Глубокое знание приложения существенно облегчает работу, и этой теме стоило бы посвятить значительную часть книги. Однако цель данного издания — поделиться знаниями и навыками, которые автор приобрел за годы работы с пакетом 3ds Max, поэтому основное внимание в книге будет уделено практическим упражнениям. Первая глава предназначена для тех пользователей, которые только начинают знакомиться с трехмерным моделированием. В ней представлены минимально необходимые знания для выполнения упражнений, размещенных во второй и третьей частях книги.

Глава 1.

Интерфейс программы • Элементы интерфейса • Подключаемые модули • Настройка программы

Чем важно изучение интерфейса программы? Интерфейс обеспечивает доступ к управлению всеми возможностями приложения. Многие пользователи, пренебрегая его изучением, впоследствии сталкиваются с трудностями даже при моделировании простых сцен, не говоря о том, что не могут применять потенциал программы полностью. Приложение 3ds Max имеет очень гибкий интерфейс, позволяющий выполнить одно и то же действие разными путями. Вы также можете создавать собственные пользовательские меню, панели инструментов, назначать сочетания клавиш операциям и т. д. Все это не только облегчает работу в программе, но и ускоряет процесс моделирования и анимации. Большинство задаваемых вопросов по 3ds Max возникают из-за поверхностного знакомства пользователей с интерфейсом и возможностями приложения. По этой причине я настоятельно рекомендую тщательно изучить интерфейс и возможности 3ds Max 2009, а также советую не пренебрегать справочной информацией, поставляемой вместе с программой. Это один из самых обширных и легкодоступных источников ответов на вопросы, возникающие у пользователей.

Элементы интерфейса На рис. 1.1 показано основное окно 3ds Max 2009. Если вы начинающий пользователь и не знакомы с интерфейсом, сначала осмотрите элементы и ознакомьтесь с окружением. Вы увидите, что интерфейс приложения состоит из элементов, в которых сгруппированы однотипные команды. Например, в группе средств управления анимацией собраны кнопки управления воспроизведением и настройкой поведения объектов во времени. Окно программы можно условно разделить на пять основных элементов. 

Main Menu (Главное меню). Находится в верхней части окна приложения и обеспечивает доступ к основным командам 3ds Max 2009. Все команды меню объединены в категории.



Main Toolbar (Главная панель инструментов). Обычно находится под главным меню, но может отображаться как плавающая панель или располагаться в других местах окна. Содержит кнопки быстрого доступа к наиболее употребляемым командам программы.



Viewports (Окна проекций). Расположены в центре окна и занимают его большую часть. Четыре раздельных вида сцены отображают проекции сверху — Top (Сверху), сбоку — Left (Слева), фронтальную — Front (Спереди) и перспективную — Perspective (Перспектива).



Command Panel (Командная панель). Обычно размещается справа от окон проекций. Эта панель содержит шесть вкладок и обеспечивает выполнение операций по созданию и модификации объектов сцены. Каждая вкладка состоит из свитков с настройками объектов.

19

Элементы интерфейса

Рис. 1.1. Окно программы 3ds Max 2009



Lover Interface Bar (Нижняя строка интерфейса). Расположена в нижней части окна программы. Содержит различные поля и кнопки, в состав которых входят поля отображения состояния и подсказок, а также наборы кнопок для управления окнами проекций и воспроизведения анимации.

Кроме того, при первом запуске программы появляется окно Learning Movies (Обучающие ролики). С его помощью можно запустить небольшие видеоролики в формате Quick Time, которые позволяют кратко ознакомиться с основными функциями и возможностями приложения. Чтобы при последующих запусках это окно не появлялось на экране, следует установить флажок Show this dialog at startup (Не показывать это окно при запуске). Данное окно можно в любой момент открыть, выполнив команду HelpLearning Movies (СправкаОбучающие ролики). Рассмотрим каждый из вышеперечисленных пунктов более подробно.

Главное меню Раскрывающиеся меню в верхней части окна программы обеспечивают доступ ко всем основным возможностям программы и являются оптимальным выбором для

20

Глава 1. Интерфейс программы

начинающих пользователей. Главное меню состоит из следующих пунктов: File (Файл), Edit (Правка), Tools (Инструменты), Group (Группировка), Views (Вид), Create (Создание), Modifiers (Модификаторы), Animation (Анимация), Graph Editors (Графические редакторы), Rendering (Визуализация), Customize (Настройка), MAXScript и Help (Справка). В отличие от многих приложений, меню 3ds Max остается неизменным независимо от того, где вы находитесь и что делаете. Таким образом, вы имеете постоянный доступ к пунктам гланого меню. Если команда меню имеет зарезервированную клавишу быстрого доступа, то она показана рядом с названием команды. Стрелка, расположенная справа от имени команды меню, указывает на наличие дополнительных пунктов подменю, которые появляются при наведении на нее указателя мыши. Не все команды доступны постоянно. Иногда некоторые из них отображены серым цветом, то есть неактивны. Например, если в сцене нет выделенных объектов, вы не сможете применить команду Group (Группировка), но как только выделите один или несколько объектов, эта команда станет доступной.

Меню File (Файл) Меню File (Файл) содержит команды для работы с файлами программы 3ds Max (рис. 1.2). Команды этого меню позволяют делать следующее: New (Создать), Open (Открыть), Save (Сохранить) — создавать новые, открывать и сохранять существующие сцены и объекты; Open Recent (Открыть недавно использованные) — открывать ранее сохраненные сцены; Reset (Сбросить) — перезапустить сцену; XRef Objects (Объекты XRef) и XRef Scene (Сцена XRef) — работать со ссылками на внешние объекты и сцены; Merge (Объединить) — присоединить к текущей сцене объекты из внешних файлов. Меню File (Файл) также содержит команды Import (Импортировать) и Export (Экспортировать) для импорта и экспорта объектов. Команды Set Project Folder (Установить папку проекта) и Publish to DWF (Опубликовать в формате DWF) позволяют указать папку для организации проектов, создаваемых в 3ds Max, и опубликовать модели для их просмотра с помощью программы Autodesk DWF Viewer. Команды загрузки анимации Load Animation (Загрузить анимацию) и ее сохранения Save Animation (Сохранить анимацию) используют формат XAF, позволяющий выборочно сохранять и загружать анимацию любого количества объектов сцены. Команда Asset Tracking (Средство слежения за процессами) вызывает окно диалога, с помощью которого можно получить доступ к файлам сцены и растровым изображениям, используемым в редакторе материалов, их свойствам и многому другому. Рис. 1.2. Меню File (Файл)

Элементы интерфейса

21

Команда Archive (Архивировать) позволяет сохранить все используемые в сцене файлы в сжатом виде, например для переноса их на другой компьютер. Для просмотра статистики сцены служит команда Summary Info (Сведения), а для ввода свойств файла — команда File Properties (Свойства файла). Обе эти команды вызывают окна, содержащие соответствующие сведения. Команда View Image File (Просмотр файла изображения) открывает окно просмотра, в котором вы можете увидеть растровое изображение перед загрузкой файла в качестве текстурной карты редактора материалов. Команда выхода из программы Exit (Выход) завершает список меню File (Файл).

Меню Edit (Правка) Меню Edit (Правка) (рис. 1.3) обеспечивает доступ к командам Undo (Отменить) и Redo (Повторить), которые позволяют соответственно отменять и повторять выполненные операции. С помощью команды Hold (Зафиксировать) можно обезопасить себя от сбоя программы, сохранив сцену в буфер. Эту команду желательно также использовать перед выполнением действия, для которого не предусмотрена возможность отмены. Затем в любое время вы сможете восстановить сцену, выполнив команду Fetch (Выбрать). Меню Edit (Правка) содержит также команду Delete (Удалить), которая удаляет выделенные объекты сцены. Команда Clone (Клонировать) вызывает окно Clone Options (Параметры клонирования) для создания копий объектов. В средней части меню Edit (Правка) расположились коРис. 1.3. Меню манды 3ds Max 2009, предназначенные для трансформации Edit (Правка) объектов сцены: Move (Переместить) — включает режим перемещения объектов, Rotate (Вращать) — делает активным режим вращения объектов, Scale (Масштабировать) — включает режим масштабирования объектов. Команда Transform Type-In (Ввод данных преобразования), которая вызывается также горячей клавишей F12, открывает окно Transform Type-In (Ввод значений преобразования). В нем можно вводить абсолютные или относительные значения для перемещения, поворота или масштабирования объекта в зависимости от выбранного вида преобразования. Например, если вы на панели инструментов нажали кнопку Select and Uniform Scale (Выделить и равномерно масштабировать), то при использовании этой команды откроется окно Scale Transform Type-In (Ввод значений масштабирования). Меню Edit (Правка) содержит команды выделения объектов: Select All (Выделить все), Select None (Снять выделение), Select Invert (Обратить выделение), Select Similar (Выделить подобные), Select Instances (Выделить образцы). Команда Select By (Выделить по) содержит подменю: Name (Имени), Layer (Слою) и Color (Цвету). При выборе первого варианта открывается окно Select From Scene (Выбор из сцены), которое также можно вызвать, нажав клавишу H. В этом окне можно выделять

22

Глава 1. Интерфейс программы

объекты сцены по именам из списка, используя для этой цели систему поиска или наборы выделений. Для фильтрации списка объектов служат кнопки группы Display (Отображение). С помощью команды Selection Region (Область выделения) меню Edit (Правка) вы можете указать тип области выделения. Команда Manage Selection Sets (Управление выделенным набором) открывает окно, в котором можно выделять, редактировать и переименовывать созданные наборы объектов сцены. При выборе команды Object Properties (Свойства объекта) появляется окно, содержащее все свойства выделенного объекта.

Меню Tools (Инструменты) Меню Tools (Инструменты) (рис. 1.4) позволяет преобразовывать объекты различными способами. Почти все команды этого меню вызывают плавающие окна или окна диалога. ПРИМЕЧАНИЕ Плавающее окно отличается от окна диалога тем, что оно может оставаться открытым во время работы с объектами в окнах проекций. Окно диалога после использования необходимо закрыть для продолжения работы.

Группа команд, расположенных в верхней части меню Tools (Инструменты), позволяет работать с объектами сцены, используя Scene Explorer (Проводник сцены). Его можно применять для просмотра, сортировки, фильтрации и выделения объектов 3ds Max с целью их последующего удаления, изменения видимости, замораживания, редактирования свойств и т. п. Первая команда в этой группе — Open Explorer: … (Открыть проводник: …) — появляется, если в сцене присутствует хотя бы один проводник сцены. Она открывает окно последнего активного проводника, имя которого находится в конце названия команды. Команда New Scene Explorer (Новый проводник сцены) позволяет создать новый проводник. При ее выполнении открывается одноименное окно диалога. Команда Manage Scene Explorer (Управление проводником сцены) открывает диалоговое окно, с помощью которого можно сохранять или загружать определенные проводники сцены, удалять или переименовывать существующие и создавать собственные проводники, используемые в программе по умолчанию. Рис. 1.4. Меню Tools (Инструменты)

Команда Saved Scene Explorers (Сохраненные проводники сцены) дает возможность открывать сохраненные ранее проводники сцены.

Элементы интерфейса

23

Команда Isolate Selection (Изолировать выделение), для выполнения которой можно также нажать сочетание клавиш Alt+Q, позволяет спрятать все объекты сцены за исключением выделенного. Это разрешает освободить ресурсы компьютера и упростить для моделирования отображение сцены в окнах проекций. При переходе в данный режим открывается плавающая панель с кнопкой Exit Isolation Mode (Выход из режима изолированного выделения), щелкнув на которой вы можете выйти из режима изолированного выделения. Команда Display Floater (Плавающее окно отображения) вызывает одноименное окно, с помощью которого можно скрывать (настройки области Hide (Спрятать)), фиксировать (Freeze (Фиксировать)) объекты, а также устанавливать свойства их отображения (вкладка Object Level (Уровень объекта)). При выборе команды Manage Layers (Управление слоями) появляется плавающее окно, позволяющее создавать и удалять слои, управлять их свойствами, а также перемещать объекты в пределах различных слоев и получать доступ к их свойствам. Команда Manage Scene States (Управление состояниями сцены) позволяет записывать информацию о состоянии сцены (объекты, слои, материалы, камеры и свет) в файл с возможностью сохранения и последующего восстановления. Команда Light Lister (Список источников света) открывает плавающее окно с основными настройками всех источников света, находящихся в сцене. Оно позволяет изменять значения параметра Multiplier (Яркость), задавать возможность отбрасывания тени, управлять включением/выключением и другими параметрами источников света. Если выбрать команду Mirror (Зеркальное отображение), то появится окно диалога, позволяющее создавать симметричные копии объектов относительно выбранных осей координат. Здесь же можно задать тип создаваемых при копировании объектов: No Clone (Не копировать), Copy (Независимая копия объекта), Instance (Привязка) и Reference (Подчинение). Команда Array (Массив) вызывает одноименное окно диалога, в котором можно создавать дубликаты выделенного объекта (или группы выделенных объектов), равномерно распределяя их в пространстве. Массив создается из выделенного объекта путем применения заданной комбинации преобразований (перемещения, поворота и масштабирования) с учетом системы координат и центра преобразования. Массивы могут быть одномерными (размещенными вдоль одного направления), двумерными (расположенными в двух направлениях) и трехмерными (расположенными в трех направлениях). Чтобы оперативно просматривать результат настроек, выполненных в окне Array (Массив), необходимо нажать кнопку Preview (Просмотр). В данной версии программы все команды, относящиеся к выравниванию и распределению объектов сцены, расположились в подменю команды Align (Выравнивание). Чтобы выровнять объекты друг относительно друга, необходимо выделить один из них, выбрать команду Align (Выравнивание) (или нажать сочетание клавиш Ctrl+A)

24

Глава 1. Интерфейс программы

и щелкнуть на втором объекте. Откроется окно диалога Align Selection (Выравнивание выделенных объектов), которое позволяет выравнивать объекты с использованием осей координат, характерных точек объектов, относительно масштаба и ориентации локальных систем координат. Команда Quick Align (Быстрое выравнивание) не имеет предварительных настроек и выравнивает выделенный объект относительно целевого, используя перемещение опорной точки выделенного объекта в опорную точку целевого. При выборе команды Spacing Tool (Распределение) появляется одноименное окно диалога, в котором можно задать параметры распределения объектов для создания дубликатов выделенного объекта или совокупности выделенных объектов, выбрав из списка способ распределения и задав кривую траектории или начальную и конечную точки линии распределения. Здесь можно также указать тип объектов, получаемых при копировании, и способ прикрепления дубликатов к линии пути. Команда Clone and Align (Клонирование и выравнивание) позволяет создавать копии объектов с одновременным выравниванием копии относительно целевого объекта. При использовании данной команды можно выбрать более одного целевого объекта (из списка или просто щелкнуть на нем в окне проекции), что позволяет создавать соответствующее количество копий, позиционированных в пространстве относительно этих объектов. Свиток Align Parameters (Параметры выравнивания) окна Clone and Align (Клонирование и выравнивание) позволяет задавать параметры положения и выравнивания в пространстве копий выделенных объектов, а свиток настроек Clone Parameters (Параметры клонирования) — тип объектов, создаваемых при дублировании. Команда Align to View (Выровнять по проекции) позволяет выровнять локальные оси выделенного объекта (или совокупности объектов) относительно оси Z активного окна проекции. В окне диалога Align to View (Выровнять по проекции) можно задать ось локальной системы координат объекта, которая будет выровнена в направлении Z системы координат активного окна проекции. Команда Normal Align (Выровнять нормаль), для выполнения которой можно нажать сочетание клавиш Alt+N, позволяет выровнять выделенный объект, совместив его заданную нормаль с указанной нормалью целевого объекта. После указания нормалей выделенного и целевого объектов появляется окно диалога, в котором можно изменить положение и ориентацию выделенного объекта относительно целевого. С помощью команды Align Camera (Выровнять камеру) можно выровнять камеру относительно нормали выбранной грани. В результате направление линии визирования камеры изменяется так, что плоскость окна проекции выбранной камеры становится параллельной выбранной грани целевого объекта. Используя команду Place Highlight (Поместить блик), можно точно разместить на поверхности выделенного объекта блик от источника света или отражение другого объекта. Для этого программа поворачивает целевой объект так, чтобы он был ориентирован в направлении указанной нормали выделенного объекта.

Элементы интерфейса

25

Команда Snapshot (Снимок) позволяет создавать копии как единичного объекта в текущем кадре, так и набора клонов в определенные промежутки времени анимации с заданным количеством копий. При выборе команды Rename Objects (Переименовать объекты) появляется плавающее окно, в котором можно одновременно изменить имена нескольких объектов. Для изменения имени выделенных объектов используется основное имя, к которому можно добавить приставку, окончание или номер. Полученные таким образом новые имена могут быть присвоены объектам, выделенным в окнах проекций или выбранным из списка окна диалога Pick Objects to Rename (Выбрать объекты для переименования), которое появляется при установке в окне Rename Objects (Переименовать объекты) переключателя в положение Pick (Выбрать). Команды Assign Vertex Colors (Назначить вершинам цвет), Color Clipboard (Буфер обмена с цветом) и Camera Match (Горизонт камеры) открывают соответствующие утилиты, находящиеся на вкладке Utilities (Утилиты) командной панели. С помощью команд Grab Viewport (Снимок окна проекции) можно скопировать изображение активного окна проекции и отобразить его в окне визуализации с возможностью последующего сохранения. Команда Grids and Snaps (Координатные сетки и привязки) позволяет получить доступ к подменю, содержащему следующие команды: 

Grid and Snap Settings (Параметры координатных сеток и привязок) — вызывает одноименное плавающее окно, позволяющее изменять настройки привязок, а также основных и определенных пользователем координатных сеток;



Show Home Grid (Показать исходную сетку) — включает либо выключает отображение исходной сетки в окне проекции;



Activate Home Grid (Активизировать исходную сетку) — активизирует исходную сетку;



Activate Grid Object (Активизировать объект-сетку) — активизирует объектсетку;



Align Grid to View (Выровнять сетку в окне проекции) — выравнивает сетку в окне проекции;



Snaps Toggle (Переключатель привязок) — позволяет включать либо выключать использование привязок при работе с объектами сцены;



Angle Snap Toggle (Угловой переключатель привязок) — устанавливает дискретное изменение угла поворота объекта или группы объектов при использовании стандартного инструмента поворота;



Percent Snap Toggle (Процентный переключатель привязок) — позволяет масштабировать объекты с шагом, соответствующим установленному проценту в окне Grid and Snap Settings (Параметры координатных сеток и привязок);



Snaps Use Axis Constraints (Привязки с использованием ограничения осей) — позволяет перемещать объект только относительно текущей оси координат.

26

Глава 1. Интерфейс программы

Используя команду Measure Distance (Измерить расстояние), можно измерить расстояние между двумя точками, указанными в окне проекции. Команда Channel Info (Канал информации) открывает окно Map Channel Info (Карта каналов информации), позволяющее манипулировать данными каналов, которые часто используют разработчики игр. Окно содержит значительное количество информации, например, об имени объекта, его идентификаторе, имени каналов, количестве вершин, граней, а также размере. С помощью этого окна вы можете быстро определить, какой канал использует больше всего места, и исключить его.

Меню Group (Группировка) Команды меню Group (Группировка) (рис. 1.5) позволяют контролировать создание, редактирование и разрушение именованных групп объектов. Сгруппированные объекты действуют как единый объект, что позволяет одновременно манипулировать всеми объединенными в группу объектами.

Рис. 1.5. Меню Group (Группировка)

После выделения объектов сцены, которые нужно сгруппировать, и выполнения команды Group (Группировать) из меню Group (Группировка) откроется окно диалога с единственным параметром — текстовым полем для ввода имени группы. В число объектов, выделенных для группировки, могут также входить другие группы.

Команда Ungroup (Разгруппировать) является обратной по отношению к Group (Группировать) и разгруппировывает объекты, составляющие группу. При этом вложенные группы не удаляются, но преобразования, примененные к группе, теряются. С помощью команды Open (Открыть) можно открыть доступ к объектам, находящимся в группе, для их преобразований или применения к ним модификаторов, которые не должны затрагивать остальных членов группы. После внесения изменений группу необходимо закрыть. Для закрытия группы следует выделить один из объектов, входящих в группу и щелкнуть на строке команды Close (Закрыть), находящейся в меню Group (Группировка). Команда Attach (Присоединить) позволяет присоединить выделенный объект к группе (доступна при наличии выделенного объекта и группы). Противоположной по отношению к этой команде является Detach (Отделить), позволяющая выделить объект в открытой группе и вывести его из группы, сделав самостоятельным объектом. Команда Explode (Разрушить) аналогична команде Ungroup (Разгруппировать) и отличается только тем, что кроме выделенной группы удаляются и все вложенные в нее группы. Подменю команды Assembly (Сборка) содержит те же команды, что и меню Group (Группировка), с той лишь разницей, что, когда вы создаете сборку, программа включает в нее специальный тип вспомогательного объекта — head object (Главный объект).

27

Элементы интерфейса

Меню Views (Вид) Меню Views (Вид) (рис. 1.6) содержит команды, относящиеся к окнам проекций и позволяющие управлять отображением. Для отмены изменений режимов отображения в активном окне проекции применяется команда Undo View Change (Отменить изменение в окне проекции), для выполнения которой можно также нажать сочетание клавиш Shift+Z. В частности, эта команда отменяет такие изменения в окнах проекций, как прокрутка и масштабирование. Команда Redo View Change (Повторить изменение в окне проекции) используется для повторения отмененного изменения состояния активного окна проекции, то есть для возврата к предыдущему состоянию. ПРИМЕЧАНИЕ Команды отмены и повторения выполненных изменений, которые относятся к состоянию активного окна проекции, не отменяют действия, выполненные над объектами сцены.

Рис. 1.6. Меню Views (Вид)

Команда Viewport Configuration (Конфигурация окна проекции) вызывает одноименное окно диалога, позволяющее получить доступ к настройкам параметров окон проекций программы. Команда Redraw All Views (Перерисовать все окна проекций) обновляет изображение во всех окнах проекций. Необходимость такой перерисовки возникает в результате модификации или редактирования объектов сцены, при которых линии объектов оказываются не полностью прорисованными. Команда Set Active Viewport (Установить активное окно проекции) отображает подменю, позволяющее вам выбрать другой вид, который будет отображаться в активном окне проекции (например, Front (Спереди), Top (Верх), Left (Слева)). Команда Save Active … View (Сохранить активную проекцию вида) позволяет сохранить в буфер программы состояние окна активной проекции. Одновременно в буфере может храниться до восьми различных проекций. СОВЕТ Рекомендуется сохранять состояние окон проекций перед внесением существенных изменений в режим отображения сцены, чтобы при необходимости можно было вернуться к сохраненному состоянию.

28

Глава 1. Интерфейс программы

Для восстановления сохраненного режима отображения в активном окне проекции применяется команда Restore Active … View (Восстановить активную проекцию). При этом наименование проекции, допускающей восстановление, включается в название команды. Команда ViewCube (Куб навигации) содержит подменю со следующими командами: 

Show For Active View (Показать в активном окне проекции) — отображает куб навигации визуализации только в активном окне проекции;



Show For All Views (Показать во всех окнах проекций) — отображает куб навигации во всех окнах проекций;



Home (Исходный) — восстанавливает исходное окно проекции, сохраненное вместе с моделью;



Orthographic (Ортогональный) — переключает исходное окно проекции в ортогональную проекцию;



Perspective (Перспектива) — переключает исходное окно проекции в перспективную проекцию;



Set Current View as Home (Установить текущий вид в качестве исходного) — определяет в качестве исходного вид, основанный на модели в активном окне проекции;



Set Current View as Front (Установить текущий вид в качестве вида спереди) — устанавливает вид активного окна проекции как фронтальный вид;



Reset Front (Восстановить вид спереди) — восстанавливает вид спереди в его первоначальной ориентации;



Configure (Конфигурация) — открывает окно диалога Viewport Configuration (Конфигурация окна проекции) на вкладке ViewCube (Куб визуализации), с помощью которой можно настроить отображение и поведение куба визуализации.

Команда SteeringWheels (Колесо управления) имеет следующие команды подменю: 

Toggle SteeringWheels (Переключатель колеса управления) — включает либо выключает отображение колеса управления в активном окне проекции;



View Object Wheel (Колесо просмотра объектов), Tour Building Wheel (Колесо формы), Full Navigation Wheel (Полное колесо управления) — задают соответствующие варианты отображения колеса управления, различающиеся размером и количеством представленных команд;



Mini View Object Wheel (Мини-колесо просмотра объектов), Mini Tour Building Wheel (Мини-колесо формы), Mini Full Navigation Wheel (Мини-версия полного колеса управления) — включают соответствующие варианты отображения колеса управления в уменьшенном виде;



Configure (Конфигурация) — открывает окно диалога Viewport Configuration (Конфигурация окна проекции) на вкладке SteeringWheels (Колесо управления), используя которую можно настроить отображение и поведение колеса управления.

Элементы интерфейса

29

Команда Create Camera From View (Создать камеру из окна проекции), для выполнения которой можно также нажать сочетание клавиш Ctrl+C, позволяет создать камеру и позиционировать ее по активному окну проекции. ПРИМЕЧАНИЕ Объект камеры таким образом можно создать только при активном окне проекции Perspective (Перспектива). Если активна камера, то она переместится и изменит свою ориентацию так, чтобы изображение в окне этой камеры соответствовало изображению исходного окна перспективной проекции.

Команда Show Materials in Viewport As (Показать материалы в окне проекции как…) — позволяет с помощью подменю получить различное отображение материалов в окнах проекций: Standard Display (Стандартное отображение), Standard Display with Maps (Стандартное отображение с картами текстур), Hardware Display (Аппаратное отображение), Hardware Display with Maps (Аппаратное отображение с картами текстур). Эти команды используют программный или аппаратный модуль для визуализации содержимого окон проекций. При этом стандартное отображение базируется на программном тонировщике, в то время как аппаратное отображение использует возможности видеокарты и позволяет получить в окне проекции отображение материалов и текстур, близкое по качеству к визуализированному изображению. Команда Viewport Lighting and Shadows (Освещение и тени окна проекции) имеет подменю, позволяющее получить доступ к следующим командам: Viewport Shading (Затенение в окне проекции), Display Only Selected Lights (Отображать только выделенные источники света), Auto Display Selected Lights (Автоматически отображать выделенные источники света), Select Lights Displaying Lighting (Выделить включенные источники света), Select Lights Displaying Shadows (Выделить источники света, отбрасывающие тени), Enable Viewport Shadows Selected (Включить отбрасывание теней у выделенных источников света), Disable Viewport Shadows Selected (Выключить отбрасывание теней у выделенных источников света), Lock Selected Lights (Заблокировать выделенные источники света), Unlock Selected Lights (Разблокировать выделенные источники света). Команда Viewport Shading (Затенение в окне проекции) может принимать значения Best (Наилучшее), Good (Хорошее), Off (Отключено). ВНИМАНИЕ Чтобы использовать затенение в окнах проекций, необходимо иметь видеокарту с поддержкой стандарта Shader Model 2.0 или 3.0.

Команда Viewport Background (Фон окна проекции) также имеет подменю, состоящее из следующих команд: 

Viewport Background (Фон окна проекции) — открывает окно диалога, позволяющее загрузить в качестве фона любого окна проекции растровое изображение или анимацию. Такие изображения облегчают процесс моделирования или

30

Глава 1. Интерфейс программы

согласование объектов сцены с визуализируемыми изображениями с использованием фона. Для выполнения данной команды можно также нажать сочетание клавиш Alt+B; 

Update Background Image (Обновить изображение фона) — обновляет изображение фона в активном окне проекции после внесения изменения в растровое изображение или анимацию, использованную в качестве фона. Команда доступна, только если активное окно содержит изображение фона;



Reset Background Transform (Восстановить преобразованный фон) — служит для восстановления положения и исходного масштаба изображения фона после примененных к нему преобразований.

Команда Show Transform Gizmo (Показать контейнер преобразования) включает и выключает показ значков векторов координатных осей выделенных объектов во всех окнах проекций. С помощью команды Show Ghosting (Показывать двойников) можно включить и выключить режим отображения двойников в окнах проекций для анимируемых объектов. При включенном режиме отображается позиция выделенного объекта в нескольких кадрах до и (или) после текущего кадра. Команда Show Key Times (Показывать время ключевых кадров) включает и выключает режим отображения моментов времени, соответствующих ключевым кадрам анимации вдоль траектории пути, где эти ключевые кадры расположены. Используя команду Shade Selected (Тонировать выделенные объекты), можно включить и выключить режим тонированной раскраски выделенных объектов во всех окнах проекций. Такой режим позволяет ускорить прорисовку объектов в окнах проекций, давая возможность отображать выделенный объект в тонированном виде. Команда Show Dependencies (Показывать зависимости) включает и выключает режим автоматического выделения объектов сцены, которые связаны или являются экземплярами выделенного объекта сцены. С помощью команды Update During Spinner Drag (Перерисовать при перетаскивании счетчиков) можно включить и выключить режим перерисовывания изображения в окнах проекций при изменениях значений в счетчиках, выполняемых с помощью мыши. Команда Adaptive Degradation (Адаптивная деградация) позволяет оптимизировать скорость воспроизведения анимации в окнах проекций. На практике это выглядит так: воспроизведение анимации в тонированном режиме будет происходить до тех пор, пока скорость не упадет ниже установленного порогового значения, после чего 3ds Max понижает качество тонирования до следующего уровня для повышения скорости воспроизведения и т. д. Команда Expert Mode (Экспертный режим) максимально увеличивает окна проекций, убирая с экрана меню, панель инструментов, командную панель, строки состояния и подсказки, кнопки управления анимацией и т. д. В данном режиме управлять программой можно только с помощью сочетаний клавиш.

Элементы интерфейса

31

Меню Create (Создание) Меню Create (Создание) (рис. 1.7) содержит команды быстрого создания объектов без использования командной панели. При выборе команды в меню Create (Создание) на командной панели автоматически появляются настройки соответствующего объекта. Категория Standard Primitives (Простые примитивы) объединяет наиболее используемые параметрические объекты (форма таких объектов определяется набором параметров), применяемые для построения более сложных геометрических форм. В их число входят Box (Параллелепипед), Cone (Конус), Sphere (Сфера), GeoSphere (Геосфера), Cylinder (Цилиндр), Tube (Труба), Torus (Тор), Pyramid (Пирамида), Teapot (Чайник) и Plane (Плоскость). Рис. 1.7. Меню Категория Extended Primitives (Улучшенные примитивы) содержит более сложные по форме параметрические объекты, такие Create (Создание) как Hedra (Многогранник), Torus Knot (Тороидальный узел), Chamfer Box (Параллелепипед с фаской), Chamfer Cylinder (Цилиндр с фаской), Oil Tank (Цистерна), Capsule (Капсула), Spindle (Веретено), L-Extrusion (L-тело экструзии), Gengon (Многогранная призма), C-Extrusion (C-тело экструзии), RingWave (Круговая волна), Hose (Рукав) и Prism (Призма).

В категорию AEC Objects (Архитектурные объекты) входят параметрические объекты, применяемые для построения архитектурных моделей. Эти объекты позволяют существенно ускорить процесс моделирования зданий, интерьеров и экстерьеров. В число архитектурных объектов входят Foliage (Листва), Railing (Перила), Wall (Стена), различные типы дверей (Doors (Двери)), а также различные типы лестниц (Stairs (Лестницы)) и окон (Windows (Окна)). Категория Compound (Составные) объединяет объекты, составленные из двух и более геометрических моделей или форм. Использование составных объектов позволяет более эффективно создавать сложные модели органического происхождения (например, машиностроительные детали). В эту категорию входят: Morph (Морфинговые), Scatter (Распределенные), Conform (Согласованные), Connect (Соединенные), BlobMesh (Капля), ShapeMerge (Слитые с формой), Boolean (Булев), Terrain (Рельеф), Loft (Лофтинговые), Mesher (Сеточные), ProBoolean (Pro Булев) и ProCutter (Pro Вычитание). В категории Particles (Частицы) представлены такие типы систем частиц, как Spray (Брызги), Snow (Снег), Blizzard (Метель), PArray (Массив частиц), PCloud (Облако частиц) и Super Spray (Супербрызги). Категория Patch Grids (Сетки патчей) представлена двумя командами создания типов сетки: Quad Patch (Четырехугольный патч) и Tri Patch (Треугольный патч). С помощью сетки патчей можно создавать сглаженные поверхности за счет изменения управляющих вершин поверхности патча.

32

Глава 1. Интерфейс программы

Категория NURBS1 объединяет инструменты создания поверхностей двух типов: CV Surface (CV-поверхность) и Point Surface (Точечная поверхность), а также построения кривых: CV Curve (CV-кривая) и Point Curve (Точечная кривая). В категории Dynamics (Динамика) содержатся динамические объекты Damper (Амортизатор) и Spring (Пружина), которые имитируют действие сил давления или упругости при моделировании анимации с учетом динамики взаимодействия объектов сцены. Категория mental ray содержит всего один объект — mr Proxy (заменитель объекта mental ray), который применяется для визуализации больших сцен с использованием визуализатора mental ray. Категория Shapes (Формы) объединяет сплайны различных типов: Line (Линия), Rectangle (Прямоугольник), Circle (Круг), Ellipse (Эллипс), Arc (Дуга), Donut (Кольцо), NGon (Многоугольник), Star (Звезда), Text (Текст), Helix (Спираль) и Section (Сечение). Основное назначение сплайнов — служить заготовками для создания трехмерных объектов и линий, обозначающих траекторию анимации. Следующая категория — Extended Shapes (Улучшенные формы). Она объединяет такие объекты, как WRectangle (W-прямоугольник), Channel (Канал), Angle (Угол), Tee (Т-образная форма) и Wide Flange (Широкий фланец). В категории Lights (Источники света) объединены различные типы источников света, которые можно использовать в сцене. Она содержит подкатегории Photometric Lights (Фотометрические источники света) и Standard Lights (Стандартные источники света), а также команду Daylight System (Система дневного освещения). Категория Cameras (Камеры) представлена камерами двух типов: Free Camera (Свободная камера) и Target Camera (Нацеленная камера). Здесь же находится команда создания камеры из окна проекции Create Camera From View (Создать камеру из окна проекции). В категории Helpers (Вспомогательные объекты) содержатся вспомогательные объекты различных типов, которые не включаются в итоговое изображение сцены и предназначены для упрощения моделирования или анимации. В эту категорию входят Dummy (Пустышка), Grid (Координатная сетка), Point (Точка), Tape Measure (Рулетка), Protractor (Угломер), Compass (Компас) и др. Категория SpaceWarps (Пространственные деформации) представлена пятью разновидностями объемных деформаций: Forces (Сила), Deflectors (Отражатели), Geometric/Deformable (Деформируемая геометрия), Modifier-Based (На базе модификаторов) и Particles & Dynamics (Частицы и динамика). Каждая разновидность объединяет однотипные объемные деформации, например в Geometric/Deformable (Деформируемая геометрия) входят FFD(Box) (Произвольно деформируемый контейнер (прямоугольный)), Wave (Волна), Bomb (Бомба) и т. д. 1

NURBS — Non Uniform Rational B-Splines, неоднородные рациональные B-сплайны.

Элементы интерфейса

33

В категорию Systems (Дополнительные инструменты) входят Bones IK Chain (Цепочки костей), Biped (Двуногий) и Daylight System (Система дневного освещения).

Меню Modifiers (Модификаторы) Меню Modifiers (Модификаторы) (рис. 1.8) позволяет назначать модификаторы, не переходя на вкладку Modify (Изменение) командной панели. Модификаторы — параметрически управляемые функции, предназначенные для изменения структуры объектов 3ds Max (например, положения вершин в пространстве или кривизны сегментов). Перед присвоением параметрическому объекту модификатора необходимо выделить сам объект, к которому нужно применить модификатор. При этом в меню будут активны только те модификаторы, которые можно назначить данному примитиву. После выделения модификатора в меню Modifiers (Модификаторы) автоматически откроется панель, на которой вы можете изменить параметры выбранного модификатора. Модификаторы, представленные в меню Modifiers (Модификаторы), объединены в 16 категорий.

Рис. 1.8. Меню Modifiers (Модификаторы)

Категория Selection (Выделение) содержит модификаторы, позволяющие выделять объекты или подобъекты, чтобы потом применить другие модификаторы только к выделению. К модификаторам выделения относятся FFD Select (Выделение свободной формы деформации), Mesh Select (Выделение поверхности), Patch Select (Выделение патчей), Poly Select (Выделение полигонов), Select By Channel (Выделение по каналу), Spline Select (Выделение сплайна), Volume Select (Объемное выделение). В категории Patch/Spline Editing (Редактирование патчей/сплайнов) представлены модификаторы редактирования сплайнов и патчей: Cross Section (Поперечное сечение), Delete Patch (Удалить патч), Delete Spline (Удалить сплайн), Edit Patch (Редактирование патчей), Edit Spline (Редактирование сплайна), Fillet/Chamfer (Закругление/фаска), Lathe (Вращение вокруг оси), Normalize Spline (Нормализовать сплайн), Renderable Spline Modifer (Модификатор визуализации сплайна), Surface (Поверхность), Sweep (Шаблон) и Trim/Extend (Обрезать/расширить). Например, модификатор Sweep (Шаблон) позволяет выполнять лофтинг профилей вдоль линий, импортированных из AutoCAD, или вдоль кривых 3ds Max с возможностью использования предустановленных форм. В отличие от модификатора Loft (Лофтинговые), с помощью модификатора Sweep (Шаблон) можно использовать в качестве формы пути кривые, имеющие разрывы. Модификаторы категории Mesh Editing (Редактирование поверхности) применяются для редактирования сетчатых оболочек объектов. К модификаторам данной категории относятся Cap Holes (Накрытие отверстий), Delete Mesh (Удалить поверхность),

34

Глава 1. Интерфейс программы

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 (Деформация по поверхности) и т. д. Категория Cloth (Ткань) представлена двумя модификаторами: Cloth (Ткань) и Garment Maker (Моделирование одежды). Оба модификатора дают возможность имитировать ткани, при этом позволяют создавать выкройки, расчитывать динамику, учитывая пересечения с поверхностью, имеют интерактивное управление поведением ткани и т. д. Категория Hair and Fur (Волосы и мех) содержит одноименный модификатор, который позволяет создавать прически с помощью «расчески» для сложных контуров, а также моделируя «завивку», «хвостики» и «пучки». Кроме того, возможно использование динамики волос — наследование инерции от движения кожи или других поверхностей. В категорию UV Coordinates (UV-координаты) вошли модификаторы, связанные с наложением, редактированием и использованием проекционных координат: Camera Map (Проекция камеры), Camera Map (WSM) (Проекция камеры (WSM)), MapScaler (WSM) (Масштабирование текстуры (WSM)), Projection (Проекция), Unwrap UVW (Расправить UVW-проекцию), UVW Map (UVW-проекция), UVW Mapping Add (Добавить UVW-проекцию), UVW Mapping Clear (Удалить UVW-проекцию) и UVW XForm (Преобразование UVW-проекции). Категория Cache Tools (Инструменты кэширования) представлена двумя однотипными модификаторами: Point Cache (Точка кэша) и модификатором глобального пространства Point Cache (WSM) (Точка кэша (WSM)). В категорию Subdivision Surfaces (Поверхности с разбиением) вошли три модификатора, относящиеся к поверхностям с разбиением: HSDS1 Modifier (HSDS-модификатор), MeshSmooth (Сглаженная поверхность) и TurboSmooth (Быстрое сглаживание). 1

HSDS — Hierarchical SubDivision Surfaces, поверхности с иерархическими подразделениями.

Элементы интерфейса

35

Категория Free Form Deformers (Произвольные деформации) представлена пятью модификаторами: FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2), FFD 3Ч3Ч3 (Произвольная деформация 3Ч3Ч3), FFD 4Ч4Ч4 (Произвольная деформация 4Ч4Ч4), FFD Box (Произвольно деформируемый контейнер (прямоугольный)) и FFD Cylinder (Произвольно деформируемый контейнер (цилиндрический)). В категории Parametric Deformers (Параметрические деформации) объединены 22 модификатора, предназначенных для работы с пространством объекта. В их число входят следующие: Affect Region (Воздействовать на область), Bend (Изгиб), Displace (Смещение), Lattice (Решетка), Mirror (Зеркальное отображение), Noise (Шум), Physique (Телосложение), Push (Выталкивание), Preserve (Хранение), Relax (Ослабление), Ripple (Рябь), Shell (Раковина), Slice (Срез), Skew (Перекос), Stretch (Растягивание), Spherify (Шарообразность), Squeeze (Сдавливание), Twist (Скручивание), Taper (Заострение), Substitute (Замена), XForm (Преобразование) и Wave (Волна). Категория Surface (Поверхность) представлена четырьмя модификаторами: Disp Approx (Аппроксимация смещения), Displace Mesh (WSM) (Смещение поверхности (WSM)), Material (Материал) и Material By Element (Материал по элементу). Категория NURBS Editing (Редактирование NURBS-объектов) включает три модификатора, предназначенных для редактирования NURBS-объектов. В их число входят Disp Approx (Аппроксимация смещения), Surf Deform (Деформация поверхности) и Surface Select (Выделение поверхности). В категорию Radiosity (Диффузное отражение) вошло два модификатора: Subdivide (Разбиение) и Subdivide (WSM) (Разбиение (WSM)). Последняя категория меню Modifiers (Модификаторы) — Cameras (Камеры) — состоит из одного модификатора Camera Correction (Корректирование камеры).

Меню Animation (Анимация) Меню Animation (Анимация) (рис. 1.9) содержит множество команд, предназначенных для создания и управления анимацией сцены. Категория IK Solvers (IK-решатели) содержит четыре команды для создания решателей (вспомогательных объектов, которые управляют положением и поворотом связей и цепочек (например, костей) в инверсной кинематике): HI Solver (HI-решатель), HD Solver (HD-решатель), IK Limb Solver (IK-решатель конечностей) и SplineIK Solver (Сплайновый IK-решатель). В категории Constraints (Ограничения) содержится семь команд для создания контроллеров ограничения анимации

Рис. 1.9. Меню Animation (Анимация)

36

Глава 1. Интерфейс программы

объектов: 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 (Окно диалога параметров связей), позволяющие назначить связи и редактировать параметры взаимодействия связанных объектов. При выполнении команды Animation Layers (Анимация слоев) появляется одноименная панель, с помощью которой можно создавать, объединять, редактировать слои с различными анимированными треками одного объекта. Команда Reaction Manager (Менеджер влияния) открывает одноименное окно, в котором можно присваивать и настраивать Reaction Controllers (Контроллеры влияния), добавлять и удалять управления и зависимости, редактировать кривые графов и выполнять многое другое. При выборе команды Bone Tools (Инструменты костей) открывается окно, позволяющее редактировать базовую систему костей. Кроме костей, персонажи обладают оболочкой. За ее создание отвечают команды Set as Skin Pose (Установить как вид оболочки), Assume Skin Pose (Присвоить оболочку) и Skin Pose Mode (Режим вида оболочки). Три следующие команды меню Animation (Анимация) — Make Preview (Создать просмотр), View Preview (Запустить просмотр) и Rename Preview (Переименовать

Элементы интерфейса

37

просмотр) — позволяют увидеть и оценить анимацию, сохранив ее во временном буфере, за счет визуализации активного окна проекции до выполнения полной визуализации. Впоследствии эту анимацию можно переименовать и сохранить. Команда Toggle Limits (Переключить ограничители) дает возможность включать либо выключать использование контроллеров ограничений. Команда Delete Selected Animation (Удалить выделенную анимацию) удаляет все ключевые кадры анимации выделенного объекта или группы объектов. Команда Walkthrough Assistant (Помощник по контролю) позволяет создать предварительную анимацию сцены путем помещения камеры на сплайн пути. Для этих целей служит окно Walkthrough Assistant (Помощник по контролю). Подменю команды reactor содержит все необходимые команды для создания имитации физических реакций. Категория Create Object (Создать объект) содержит 21 команду, позволяющую создать объект модуля reactor. Среди них: Rigid Body Collection (Коллекция твердых тел), Cloth Collection (Коллекция тканей), Soft Body Collection (Коллекция мягких тел), Rope Collection (Коллекция веревок), Wind (Ветер), Water (Вода), Constraint 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 (Просмотр анимации) позволяет предварительно просмотреть анимацию в окне reactor RealTime Preview (Просмотр в режиме реального времени). Команда Create Animation (Создать анимацию) создает анимацию на основе объектов модуля reactor, присутствующих в сцене, и их настроек.

Меню Graph Editors (Графические редакторы) Меню Graph Editors (Графические редакторы) (рис. 1.10) содержит команды для работы с графическими редакторами программы 3ds Max 2009.

Рис. 1.10. Меню Graph Editors (Графические редакторы)

38

Глава 1. Интерфейс программы

В верхней части данного меню находятся две однотипные команды: 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 Views (Сохраненные окна редактора структуры) можно получить доступ к закрытым окнам просмотра структуры. Команда Particle View (Представление частиц) открывает одноименное диалоговое окно, которое позволяет контролировать взаимодействие систем частиц в сцене. Завершает данное меню команда Motion Mixer (Смешивание анимации), вызывающая одноименное окно диалога, которое позволяет, например, редактировать анимацию объектов модуля Character Studio.

Меню Rendering (Визуализация) Меню Rendering (Визуализация) (рис. 1.11) содержит команды, используемые для окончательной визуализации сцены. Команда Render (Визуализация) запускает выполнение визуализации активного окна проекции.

Рис. 1.11. Меню Rendering (Визуализация)

Команда Render Setup (Настройки визуализации), которую также можно выполнить нажатием клавиши F10, открывает окно диалога Render Setup (Настройки визуализации). В данном окне можно установить выходные параметры изображения, номера кадров для визуализации, параметры сглаживания, окно проекции, из которого будет про-

Элементы интерфейса

39

водиться визуализация, а также выбрать модуль для визуализации и выполнить некоторые другие настройки. Команда Rendered Frame Window (Окно визуализации кадров) открывает окно вывода визуализации с настройками, позволяющими динамически менять параметры визуализации, такие как установка области визуализации, выбор окна проекции, выбор предустановок для визуализации, сохранение визуализированных изображений и др. Следующие две команды — Radiosity (Диффузное отражение) и Light Tracer (Трассировщик света) — открывают окно диалога Render Setup (Настройки визуализации), в котором вы можете активизировать один из модулей улучшенного освещения — Radiosity (Диффузное отражение) или Light Tracer (Трассировщик света). Команда Exposure Control (Контроль экспозиции) является составляющей модуля, который позволяет настраивать выходные уровни и цветовой диапазон визуализированного изображения так, как если бы вы настраивали экспозицию фотоаппарата. При выборе команды Environment (Окружающая среда) появляется окно диалога Environment and Effects (Окружающая среда и эффекты), в котором настраиваются такие параметры, как цвет фона или фоновое изображение, глобальное освещение и атмосферные эффекты. Команда Effects (Эффекты) аналогично предыдущей команде вызывает окно Environment and Effects (Окружающая среда и эффекты), но с открытой вкладкой Effects (Эффекты). При выборе команды Raytracer Settings (Установки трассировки) открывается окно Render Scene (Визуализация сцены) на вкладке Raytracer (Трассировка). В нем можно изменить глобальные параметры трассировки лучей. Команда Raytrace Global Include/Exclude (Глобальное включение/выключение трассировки) вызывает окно диалога, в котором можно произвольно включать либо выключать объекты из просчетов трассировки лучей. Команда Render To Texture (Визуализация на текстуру) открывает окно диалога, в котором можно задать параметры для визуализации текстуры с использованием освещения теней и т. д. С помощью команды Material Editor (Редактор материалов), которая выполняется также нажатием клавиши M, можно открыть окно редактора материалов, позволяющее создавать и редактировать материалы сцены. Команда Material/Map Browser (Окно выбора материалов и карт) открывает окно, предназначенное для просмотра и выбора материалов или текстурных карт. Используя команду Video Post (Видеомонтаж), можно открыть окно работы с программным модулем Video Post (Видеомонтаж), позволяющим добавить изображениям специальные графические эффекты.

40

Глава 1. Интерфейс программы

С помощью команды Panorama Exporter (Экспортер панорамы) можно визуализировать панорамные сцены. Команда Batch Render (Пакетная визуализация) позволяет визуализировать последовательность изображений с разных углов просмотра (камер) с возможностью изменения настроек в промежуточных видах. Команда Print Size Assistant (Мастер печати) открывает окно диалога, помогающее настроить размер визуализируемого изображения для печати. С помощью команды RAM Player (RAM-проигрыватель) можно воспроизводить различные изображения и анимацию.

Меню Customize (Настройка) Меню Customize (Настройка) (рис. 1.12) объединяет команды, служащие для изменения, сохранения и загрузки пользовательских настроек интерфейса программы, включая единицы измерения, привязки и т. п. При выборе команды Customize User Interface (Настройка пользовательского интерфейса) открывается одноименное окно диалога, содержащее пять вкладок: для настройки сочетаний клавиш, панелей инструментов, контекстных меню, меню и цвета. Команды Save Custom UI Scheme (Сохранить схему пользовательского интерфейса) и Load Custom UI Scheme (Загрузить заказную схему пользовательского интерфейса) позволяют сохранить изменения, внесенные в настройки интерфейса в отдельные файлы, и загрузить их.

Рис. 1.12. Меню Customize (Настройка)

С помощью команды Revert to Startup Layout (Вернуться к установкам по умолчанию) можно загрузить настройки программы, заданные по умолчанию.

СОВЕТ При случайном изменении внешнего вида интерфейса программы самый простой способ вернуться к исходному состоянию — выполнить команду Revert to Startup Layout (Вернуться к установкам по умолчанию) меню Customize (Настройка).

Команда Lock UI Layout (Заблокировать схему пользовательского интерфейса) позволяет заблокировать элементы интерфейса от случайного перемещения или изменения. Категория Show UI (Показать пользовательский интерфейс) объединяет четыре команды, которые включают/выключают показ элементов пользовательского интерфейса: Show Command Panel (Показать командную панель), Show Floating Toolbars

41

Элементы интерфейса

(Показать плавающие панели инструментов), Show Main Toolbar (Показать главную панель инструментов) и Show Track Bar (Показать строку треков). Команда Custom UI and Defaults Switcher (Пользовательская схема и переключение на предварительно установленные настройки) открывает окно диалога, в котором можно просмотреть описание и выбрать предварительно установленную схему интерфейса, а также сохраненные пользовательские схемы. При выборе команды Configure User Paths (Конфигурация пользовательских путей) открывается одноименное окно диалога, в котором можно добавить либо изменить установленные по умолчанию пути к пользовательским файлам, таким как файлы сцены, текстур, анимации, дополнительных модулей и т. д. Выполнив команду Configure System Paths (Конфигурация системных путей), можно открыть одноименное окно, которое позволяет изменить пути к системным папкам программы. Например, если вы пишете собственные сценарии, при старте программа тестирует эти папки и запускает или использует находящиеся там сценарии или файлы. Команда Units Setup (Настройка единиц) открывает одноименное окно диалога, в котором можно изменить отображение системных единиц. Используя команду Plug-in Manager (Менеджер подключаемых модулей), можно вызвать одноименное окно, включающее список установленных в системе подключаемых модулей с их названием, описанием, статусом (используется или отключен), размером и указанием полного пути. Команда Preferences (Параметры) открывает окно диалога, позволяющее настраивать и контролировать многие аспекты программы 3ds Max. В их число входят настройки визуализации, окон проекций, анимации, файловой системы, габаритных контейнеров и др.

Меню MAXScript Меню MAXScript (рис. 1.13) содержит команды, позволяющие работать со встроенным в программу языком макропрограммирования MAXScript. Команда New Script (Создать сценарий) вызывает окно (Untitled) — MAXScript для написания новых и редактирования существующих макрокоманд. С помощью команды Open Script (Открыть сценарий) можно открыть окно диалога Open File (Открыть файл), с помощью которого можно открыть файл макроса. Команда Run Script (Выполнить сценарий) вызывает окно диалога Choose Editor File (Выберите файл редактора). После выбора файла макроса он сразу запускается.

Рис. 1.13. Меню MAXScript

Используя команду MAXScript Listener (Интерпретатор MAXScript), можно открыть окно интерпретатора команд MAXScript, которое служит для контроля выполнения макрокоманд.

42

Глава 1. Интерфейс программы

Новая команда меню MAXScript Editor (Редактор MAXScript) открывает окно редактора, в котором можно набирать текст макрокоманд не только в формате 3ds Max, но также и в других форматах, например XML или простой текст. Команда Visual MAXScript Editor (Графический редактор MAXScript) вызывает окно, позволяющее выполнить построение графических элементов интерфейса для использования вместе с макрокомандами. Команда Debugger Dialog (Окно отладчика) позволяет полнее и проще использовать редактор макрокоманд 3ds Max.

Меню Help (Справка) Меню Help (Справка) (рис. 1.14) содержит команды доступа к справочной информации и урокам программы 3ds Max. Команда Autodesk 3ds Max Help (Справка по Autodesk 3ds Max) позволяет получить помощь по всем элементам и функциям программы 3ds Max. Информация представлена в стандарте Microsoft Compiled HTML Help. Команда Learning Movies (Обучающие видеоролики) вызывает одноименное окно, которое открывается по умолчанию, когда вы впервые запускаете 3ds Max. С помощью этого окна можно познакомиться с основными понятиями и способами работы в приложении. Для этого используются небольшие видеоролики, для запуска которых нужно щелкнуть на значке с изображением соответствующей темы. При выборе команды Learning Path (Путь к обучающим материалам) открывается браузер со страницей, содержащей обучающий материал, которая расположена на сайте производителя программы 3ds Max — компании Autodesk. Используя команду Tutorials (Уроки), можно открыть окно, содержащее уроки по всем основным темам программы. Рис. 1.14. Меню Help (Справка)

Команда What's New (Что нового) открывает файл справки на странице с описанием новых возможностей программы.

Команда MAXScript Help (Справка по MAXScript) открывает файл справки по MAXScript. С помощью команды Additional Help (Справка по дополнениям) можно открыть окно диалога, в котором есть возможность вызвать файл справки по дополнительным модулям, установленным в программе. Команда Keyboard Shortcut Map (Карта сочетаний клавиш) вызывает интерактивное окно, содержащее набор основных сочетаний клавиш. Команда Data Exchange Solutions (Информационный обмен) — открывает страницу сайта Autodesk с информацией об обмене данными между приложениями.

Элементы интерфейса

43

Команда Customer Involvement Program (Программа, в которой участвуют пользователи) открывает окно программы, позволяющей разработчикам расширять возможности приложения путем сбора и анализа информации об использовании 3ds Max на вашем компьютере. В появившемся окне с помощью переключателя выберите, принимать участие в программе или нет, а затем щелкните на кнопке OK. Команды Subscription e-Learning Catalog (Подписка на каталог электронного обучения), Edit Subscription Center Profile (Редактирование профиля подписки), Create Support Request (Создание запроса поддержки), View Support Requests (Просмотр запроса поддержки) открывают браузер на странице программы для обмена данными между приложениями. Подменю 3ds Max on the Web (3ds Max в Интернете) содержит команды, автоматически открывающие браузер для поиска и загрузки обновлений, получения сетевой поддержки, уроков и т. д. Команда Activate 3ds Max (Активизировать 3ds Max) вызывает окно активизации продукта. Если вы используете сетевую версию программы 3ds Max, команда License Borrowing (Использовать лицензию) позволяет использовать одну лицензию для активизации программы на различных компьютерах сети. Команда Diagnose Video Hardware (Диагностика видеоадаптера) позволяет получить информацию о возможностях видеоадаптера, которые влияют на отображение объектов в окнах проекций (например, поддержка отображения теней). При выборе команды About 3ds Max (О 3ds Max) открывается окно, показывающее серийный номер продукта, драйвер видеоустройства, тип лицензии и т. д.

Панели инструментов По умолчанию главная панель инструментов отображается под строкой меню в верхней части окна программы. Использование панелей инструментов — один из наиболее удобных способов выполнения большинства команд, для чего достаточно одного щелчка кнопкой мыши на значке, расположенном на панели инструментов. Кнопки на панели инструментов программы 3ds Max могут быть двух размеров — стандартные (16 Ч 16 пикселов) и крупные (24 Ч 24 пиксела) с улучшенным графическим отображением. По умолчанию приложение загружается с кнопками крупного размера, из-за чего панель инструментов может не помещаться на экране полностью. Для отображения скрытой части панели предусмотрена прокрутка по горизонтали. ВНИМАНИЕ С целью максимального отображения рабочего пространства все кнопки программы, изображенные в книге, имеют стандартный размер.

44

Глава 1. Интерфейс программы

Чтобы заменить крупные кнопки стандартными, выполните команду Customize Preferences (НастройкаПараметры). Откроется окно Preference Settings (Параметры установок), в котором необходимо перейти на вкладку General (Общие). В области UI Display (Интерфейс пользователя) снимите флажок Use Large Toolbar Buttons (Использовать крупные кнопки) и щелкните на кнопке OK. Перезапустите программу для обновления отображения интерфейса. Все закрепленные панели могут быть плавающими (рис. 1.15). Для этого достаточно щелкнуть на двух вертикальных линиях в левой (или верхней) части панели и переместить панель. После этого можно масштабировать и перемещать окно в пределах интерфейса программы. Двойной щелчок кнопкой мыши на заголовке окна панели вернет ее на место или пристыкует к любой стороне окна программы.

Рис. 1.15. Главная панель инструментов в виде плавающего окна

Все кнопки панели инструментов снабжены подсказками, которые появляются при наведении указателя мыши на кнопку и удержании над ней. Небольшой треугольник в правом нижнем углу некоторых кнопок говорит о том, что при нажатии и удержании такой кнопки раскроется панель данного инструмента с дополнительным набором кнопок.

Главная панель инструментов Рассмотрим кнопки главной панели инструментов. Undo (Отменить) (Ctrl+Z) — отменяет последнюю команду или группы команд. Redo (Повторить) (Ctrl+Y) — возвращает команды, которые были отменены. Select and Link (Выделить и связать) — устанавливает связь между объектами сцены. Unlink Selection (Разорвать связь с выделенным объектом) — разрывает связи между объектами. Bind to Space Warp (Связать с воздействием) — связывает объект с источником объемной деформации. Selection Filter (Фильтр выделения) — раскрывающийся список, ограничивающий типы объектов, которые могут быть выделены. Select Object (Выделение объекта) (Q) — инструмент выделения объектов. Select by Name (Выделить по имени) (H) — открывает окно диалога для выделения объектов по имени. Rectangular Selection Region (Прямоугольная область выделения), Circular Selection Region (Круглая область выделения), Fence Selection Region (Произвольная форма выделения), Lasso Selection Region (Выделение лассо), Paint

Элементы интерфейса

45

Selection Region (Выделение кистью) (Ctrl+F) — выделяют объекты различной формой выделяющей рамки. Window/Crossing (Оконное/Пересекающее выделение) — устанавливает, каким образом будет выделяться объект: обводкой или пересечением. Select and Move (Выделить и переместить) (W) — выделяет и перемещает объект. Select and Rotate (Выделить и повернуть) (E) — выделяет и поворачивает объект сцены. Select and Uniform Scale (Выделить и равномерно масштабировать), Select and Non-uniform Scale (Выделить и неравномерно масштабировать), Select and Squash (Выделить и сжать) (R) — выделяет и масштабирует объект различными способами. Reference Coordinate System (Система координат) — раскрывающийся список, с помощью которого устанавливается система координат, используемая для трансформаций. Use Pivot Point Center (Использовать опорные точки объектов), Use Selection Center (Использовать центр выделения), Use Transform Coordinate Center (Использовать начало координат) — устанавливают центр преобразования масштаба и поворота. Select and Manipulate (Выделить и манипулировать) — выделяет объект и управляет с помощью манипуляторов его параметрами. Keyboard Shortcut Override Toggle (Переключение клавиатурных комбинаций быстрого вызова) — позволяет переключаться между основными сочетаниями клавиш и клавиатурными комбинациями для групп, таких как Editable Mesh (Редактируемая сетка), Track View (Просмотр треков), NURBS (NURBS-объект) и т. п. Snap Toggle 2D (Двумерная привязка), Snap Toggle 2.5D (Полуобъемная привязка), Snap Toggle 3D (Трехмерная привязка) (S) — устанавливают режим привязок. Angle Snap Toggle (Угловая привязка) (A) — включает режим ограничения поворота с заданным шагом. Percent Snap Toggle (Процентная привязка) (Shift+Ctrl+P) — включает режим фиксированного приращения значения. Spinner Snap Toggle (Привязка приращений счетчиков) — управляет режимом приращения значений во всех счетчиках. Edit Named Selection Sets (Редактировать название выделенной области) — открывает окно диалога для создания и управления именованными выделениями. Рядом расположен раскрывающийся список Named Selection Sets (Название выделенной области), с помощью которого можно задать имя новой выделенной области или выбрать существующую. Mirror (Отразить выделенные объекты) — создает зеркальную копию выделенного объекта.

46

Глава 1. Интерфейс программы

Align (Выравнивание) (Alt+A), Quick Align (Быстрое выравнивание), Normal Align (Выравнивание нормали) (Alt+N), Place Highlight (Поместить блик) (Ctrl+H), Align Camera (Выровнять камеру), Align to View (Выровнять по проекции) — открывают окна диалога параметров выравнивания, где можно указать параметры выравнивания либо задать быстрое выравнивание двух объектов, выравнивание по нормалям, окну проекции или камере. Manage Layers (Управление слоями) — открывает окно управления слоями. Curve Editor (Open) (Редактор кривых (открыть)) — вызывает редактор функциональных кривых. Schematic View (Open) (Редактор структуры (открыть)) — вызывает редактор структуры. Material Editor (Редактор материалов) (M) — открывает редактор материалов. Render Setup (Настройка визуализации) (F10) — вызывает окно с настройками визуализации. Render Frame Window (Окно визуализации кадров) — открывает окно вывода визуализации с настройками, позволяющими динамически менять параметры визуализации. Render Production (Итоговая визуализация), Render Iterative (Пробная визуализация), ActiveShade (Тонированная визуализация) — запускает визуализацию сцены без открытия окна диалога.

Плавающие панели инструментов Если выполнить команду CustomizeShow UIShow Floating Toolbars (НастройкаПоказать пользовательский интерфейсПоказать плавающие панели инструментов), то откроются дополнительные плавающие панели: reactor, Layers (Слои), Animation Layers (Анимация слоев), Snaps (Привязки), Render Shortcuts (Быстрый доступ к настройкам визуализации), Axis Constraints (Ограничения по осям), Extras (Дополнения), Brush Presets (Предустановки кистей) и InfoCenter (Информационный центр). Плавающая панель инструментов Layers (Слои) содержит кнопки для создания, активизации, блокировки и выделения слоев, а также средства для назначения и изменения свойств слоя. С помощью панели Snaps (Привязки) можно управлять свойствами привязок, используемых при моделировании и редактировании объектов. Панель Axis Constraints (Ограничения по осям) позволяет устанавливать ограничения перемещения только выделенной осью или плоскостью. Панель Extras (Дополнения) содержит кнопки автосетки и создания массива, снимков и распределенных объектов по пути или заданному точками расстоянию. Панель Brush Presets (Предустановки кистей) позволяет получить доступ к предустановленным кистям, а также создавать собственные. Панель reactor содержит все необходимые команды для создания имитации физических реакций. Панель Animation Layers (Анимация слоев) дает возможность объединять анимационные треки одного объекта, настраивая их по отдельности. Панель InfoCenter (Информационный центр) позволяет получить доступ к разделам справки посредством ввода слова или фразы в окне

Элементы интерфейса

47

диалога. Здесь же можно связаться с Communication Center (Узел связи) с целью получения информации о программе и ее обновлениях. Рассмотрим некоторые панели инструментов более подробно. Панель инструментов Snaps (Привязки) (рис. 1.16) обеспечивает быстрый доступ к наиболее используемым командам привязки.

Рис. 1.16. Плавающая панель Snaps (Привязки)

Плавающая панель инструментов Render Shortcuts (Быстрый доступ к настройкам визуализации) позволяет сохранять и загружать различные наборы настроек для визуализации сцены, причем существуют три кнопки для быстрого сохранения и визуализации сцены (рис. 1.17).

Рис. 1.17. Плавающая панель Render Shortcuts (Быстрый доступ к настройкам визуализации)

Удерживая нажатой клавишу Shift, щелкните на кнопке с буквой A, B или C, и настройки последней визуализации будут сохранены. Для начала визуализации сцены с помощью сохраненных настроек достаточно щелкнуть на одной из трех кнопок.

Окна проекций Наибольшее пространство окна программы занимают окна проекций. И это неудивительно: именно с их помощью мы получаем доступ к объектам сцены. В окнах

48

Глава 1. Интерфейс программы

проекций можно настроить отображение объектов различным образом, например задать компоновку экрана для управления видом и ориентацией или указать способы оптимизации прорисовки экрана во время работы. В приложении 3ds Max используется два вида проекций: аксонометрические и перспективные (центральные). Частным случаем аксонометрической проекции являются ортографические проекции, при построении которых плоскость проекции выравнивается параллельно одной из координатных плоскостей трехмерного пространства. К ортографическим проекциям в 3ds Max относятся виды сверху, снизу, спереди, сзади, слева и справа. К перспективным проекциям — вид из камеры, перспектива и окно, основанное на источнике направленного света. Одновременно на экране может отображаться от одного до четырех окон проекций. Каждое окно имеет рамку и имя, расположенное в верхнем левом углу окна. Вид можно присваивать, указав компоновку видового окна в диалоге Viewport Configuration (Конфигурирование окна проекции) (рис. 1.18), которое вызывается командой ViewsViewport Configuration (ВидКонфигурирование окна проекции). При щелчке на образце компоновки видового окна в нижней части окна диалога отображается раскрывающийся список имеющихся видов.

Рис. 1.18. Окно Viewport Configuration (Конфигурирование окна проекции)

Этот список можно также вызвать, щелкнув правой кнопкой мыши на имени окна проекции и выбрав из контекстного меню команду Views (Вид). Типы Camera (Камера) и Spotlight (Прожектор) отсутствуют в списке до тех пор, пока на сцене не созданы камеры и источники освещения. Каждое окно проекции может отображать любой поддерживаемый программой вид. Кроме того, эти окна могут использоваться для отображения окон диалога Schematic

Элементы интерфейса

49

View (Редактор структуры), Track View (Просмотр треков), Asset Manager (Диспетчер ресурсов) или MAXScript Listener (Интерпретатор MAXScript). Самым быстрым и удобным способом изменить вид окон проекций является использование сочетаний клавиш (см. приложение 2). Стандартные типы окон отображают объекты сцены с ограниченного количества сторон. Однако часто, моделируя объекты сцены, необходимо видеть их со всех сторон, приближаться для работы с деталями и удаляться, чтобы охватить взглядом всю сцену. Для навигации в окнах проекций существуют кнопки, расположенные в правом нижнем углу окна программы. Состав кнопок управления меняется в зависимости от выбранного типа проекции. Рассмотрим кнопки управления окнами проекций. Zoom (Масштаб) (Alt+Z, или [, или ]) — изменяет масштаб просмотра изображения. Zoom All (Масштаб всех окон) — увеличивает или уменьшает масштаб просмотра изображения во всех окнах одновременно. Zoom Extents (Сцена целиком) (Ctrl+Alt+Z), Zoom Extents Selected (Выделенные объекты целиком) — размещает все объекты (или только выделенные) в пределах активного окна. Zoom Extents All (Сцена целиком во всех окнах) (Ctrl+Shift+Z), Zoom Extents All Selected (Выделенные объекты целиком во всех окнах) (Z) — размещает все объекты (или только выделенные) в пределах всех окон проекций. Field-of-View (Поле зрения) — доступна только при активном окне проекции Perspective (Перспектива), увеличивает или уменьшает масштаб просмотра изображения. Zoom Region (Масштаб области) (Ctrl+W) — увеличивает выделенную область до размеров окна. Pan View (Прокрутка) (Ctrl+P) — прокручивает изображение, не меняя масштаб. Walk Through (Перейти) (горячая клавиша ↑) — навигация камеры и перспективы, аналогична виду от первого лица в видеоиграх. Orbit (Повернуть) (Ctrl+R), Orbit Selected (Повернуть выделенные), Orbit SubObject (Повернуть подобъект) — управляет поворотом в окне проекции. Во втором и третьем случаях — вокруг объекта и подобъекта. Maximize Viewport Toggle (Увеличение окна проекции до размеров экрана) (Alt+W) — разворачивает окно проекции во всю рабочую область окна программы. Кроме того, в текущей версии программа 3ds Max приобрела новые инструменты, облегчающие навигацию в окнах проекций, — ViewCube (Куб навигации) и SteeringWheels (Колесо управления). ViewCube (Куб навигации) является трехмерным инструментом навигации, который облегчает задачи переключения аксонометрических (таких как Front (Спереди) или Top (Сверху)) и перспективных окон проекций с помощью мыши (рис. 1.19).

50

Глава 1. Интерфейс программы

Когда куб навигации неактивен, он показывает ориентацию сцены, базирующуюся на северной стороне модели. Положение указателя поверх куба навигации активизирует его, а использование левой кнопки мыши позволяет переключать активное окно в один из доступных видов проекции, поворачивать активное окно проекции или переключиться к исходному виду модели (Home). При щелчке на кубе правой кнопкой мыши открывается контекстное меню с дополнительными настройками. С помощью сочетания клавиш Alt+Ctrl+V можно включать либо выключать отображение куба навигации в окнах проекций. Колесо управления (SteeringWheels) является круговым меню, разделенным на несколько секций, каждая из которых представляет собой один из инструментов навигации (рис. 1.20).

Рис. 1.19. Куб навигации, отображаемый в окне перспективной проекции (слева) и в окне проекции вида сверху (справа)

Рис. 1.20. Колесо управления

Колесо управления позволяет сэкономить время, так как содержит большинство инструментов навигации в одном меню. Вы можете панорамировать, масштабировать или иными способами манипулировать активным окном проекции. Чтобы отобразить или скрыть колесо управления, нужно использовать соответствующую команду главного меню ViewsSteeringWheels (ВидКолесо управления) или сочетание клавиш Shift+W. Для настройки конфигурации инструментов ViewCube (Куб навигации) и SteeringWheels (Колесо управления) используются соответствующие вкладки окна диалога Viewport Configuration (Конфигурация окна проекции), вызываемого из главного меню ViewsViewport Configuration (ВидКонфигурация окна проекции). СОВЕТ Чем выше уровень вашего мастерства, тем более сложные задачи приходится решать, и, следовательно, вам понадобится все свободное пространство окон проекций. Исходя из собственного опыта, я бы рекомендовал вам максимально использовать сочетания клавиш и отключить отображение инструментов ViewCube (Куб навигации) и SteeringWheels (Колесо управления), поскольку они могут закрывать часть моделируемого объекта.

51

Элементы интерфейса

Командная панель В 3ds Max 2009, как и в предыдущих версиях программы, командная панель имеет шесть вкладок: Create (Создание), Modify (Изменение), Hierarchy (Иерархия), Motion (Движение), Display (Отображение) и Utilities (Утилиты). Командная панель располагается в правой части окна программы (может быть также пристыкована к любой стороне окна приложения или выступать в качестве плавающей панели). На ней сосредоточены настройки объектов сцены (рис. 1.21).

Рис. 1.21. Командная панель

Основные настройки объектов сосредоточены в свитках вкладок командной панели. Свитки — области, сгруппированные по определенным признакам и имеющие в качестве заголовка кнопку шириной во всю ширину свитка (рис. 1.22). Название каждого свитка содержит знак «плюс» или «минус» в зависимости от того, развернут свиток или свернут (свернутому свитку соответствует знак +, а развернутому — знак –). Щелчок на заголовке свитка разворачивает или сворачивает свиток. Порядок следования свитков на командной панели (и не только) можно менять, перетаскивая свиток вверх или вниз относительно других. ПРИМЕЧАНИЕ Положение свитков Object Type (Тип объекта) и Name and Color (Имя и цвет) изменить нельзя.

Достаточно часто развернутые свитки не помещаются в поле экрана, и часть их содержимого скрывается за границей экрана. Для таких случаев предусмотрена возможность прокрутки области свитка вверх или вниз. Индикатором того, что на экране отображено не все содержимое свитков, является узкая вертикальная полоса вдоль их правой части. При наведении на область свитка указатель мыши примет

52

Глава 1. Интерфейс программы

форму руки, после чего, нажав и удерживая кнопку мыши, можно прокручивать область свитков вверх или вниз.

Рис. 1.22. Свернутый и развернутый свитки на командной панели

Свитки имеют контекстное меню, которое появляется при щелчке правой кнопкой мыши в области свитков (вне элементов управления). Оно содержит команды разворачивания и сворачивания всех свитков или свитков по именам и возврата к принятому по умолчанию порядку их расположения. В стандартном режиме командная панель располагается на экране так, что свитки находятся в одном столбце. При желании вы можете увеличить пространство, отводимое под свитки. Для этого подведите указатель мыши к левой границе панели и, когда он примет вид двунаправленной стрелки, щелкните на границе и переместите ее влево. В результате область, занимаемая свитками, будет увеличиваться с шагом в ширину свитка.

Вкладка Create (Создание) Вкладка Create (Создание) предназначена для создания всех типов объектов 3ds Max: Geometry (Геометрия) (например, Box (Параллелепипед), Sphere (Сфера) и т. д.), Shapes (Формы), Lights (Источники света), Cameras (Камеры), Helpers (Вспомогательные объекты), Space Warps (Объемные деформации) и Systems (Дополнительные инструменты) (рис. 1.23). Щелчок кнопкой мыши на любой из этих кнопок вызывает набор инструментов для создания объектов соответствующей категории. ПРИМЕЧАНИЕ Более полно список объектов, доступных для создания в программе 3ds Max, рассматривался выше, при описании меню Create (Создание).

Элементы интерфейса

53

Рис. 1.23. Вкладка Create (Создание) командной панели

Для создания объекта найдите его кнопку, щелкните на ней и в окне проекции постройте объект простым перетаскиванием указателя при нажатой левой кнопке мыши. Создав параметрический объект, можно уточнить его размеры, введя необходимые значения в поля свитка Parameters (Параметры). Ниже кнопок выбора категорий и списка разновидностей объектов располагаются свитки Object Type (Тип объекта) и Name and Color (Имя и цвет). Каждому объекту, созданному с помощью панели Create (Создание), присваивается имя и цвет, которые можно изменить, используя эти свитки. После нажатия кнопка с именем объекта выделяется цветом. Это означает, что она активна. Одновременно для строящегося объекта раскрываются дополнительные свитки — Parameters (Параметры) и Creation Method (Метод создания). Кнопка, оставаясь выделенной, позволяет создавать объекты выбранного типа до тех пор, пока не будет отключена. Прекратить создание объектов можно также, щелкнув правой кнопкой мыши в активном окне проекции. В качестве примера построим параметрический объект Box (Параллелепипед). Для этого выполните следующие действия. 1.

Щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели.

2.

В раскрывающемся списке разновидностей объектов выберите строку Standard Primitives (Простые примитивы), после чего в свитке Object Type (Тип объекта) появятся кнопки с типами доступных для создания объектов.

3.

Щелкните на кнопке с именем Box (Параллелепипед), в результате чего кнопка станет оранжевой, а в нижней части командной панели появятся три свитка: Creation Method (Метод создания), Keyboard Entry (Ввод с клавиатуры) и Parameters (Параметры).

54

Глава 1. Интерфейс программы

Дальше строить объект можно двумя способами: введением точных значений параметров объекта в поля свитка Keyboard Entry (Ввод с клавиатуры) либо интерактивно в окне проекции любого вида. Рассмотрим построение объекта вторым способом. 1.

Щелкните в любом месте окна проекции Perspective (Перспектива) и, удерживая нажатой левую кнопку мыши, переместите указатель по диагонали, определив таким образом длину и ширину объекта.

2.

Отпустите кнопку мыши и переместите указатель вверх для определения высоты объекта.

3.

Для завершения построения щелкните левой кнопкой мыши.

4.

При необходимости уточните параметры объекта, воспользовавшись свитком Parameters (Параметры).

СОВЕТ Если параметрическому объекту планируется назначать модификатор, связанный с изменением поверхности, например Bend (Изгиб) или Noise (Шум), то необходимо увеличить количество сегментов до 10 и более (подбирается опытным путем с целью получения желаемого эффекта).

Аналогичным способом строятся все параметрические объекты. Исключение составляют сложные примитивы Hedra (Многогранник), RingWave (Круговая волна) и Hose (Рукав). Они не содержат свитков Creation Method (Метод создания) и Keyboard Entry (Ввод с клавиатуры), поэтому строятся только интерактивным способом в окне проекции.

Вкладка Modify (Изменение) Параметры объекта, появляющиеся при его построении на вкладке Create (Создание) командной панели, становятся недоступными после выбора другого объекта или деактивизации кнопки построения объекта. Для продолжения редактирования созданного примитива следует воспользоваться вкладкой Modify (Изменение) командной панели (рис. 1.24). Выделив объект и перейдя на эту вкладку, вы вновь увидите свиток с параметрами для редактирования. Кроме изменения параметров примитива, вкладка Modify (Изменение) командной панели позволяет назначать модификаторы выделенному объекту или группе объектов. В последнем случае к каждому объекту применяется образец модификатора. В верхней части вкладки Modify (Изменение) командной панели постоянно отображается строка с именем выделенного объекта и поле с образцом цвета, а немного ниже — раскрывающийся список Modifier List (Список модификаторов), содержащий модификаторы, доступные для применения к выделенному объекту. ПРИМЕЧАНИЕ Модификаторы можно также применять к объектам, используя команды главного меню Modifiers (Модификаторы) (см. выше).

Элементы интерфейса

55

Рис. 1.24. Вкладка Modify (Изменение) командной панели

Содержимое нижней части области свитков вкладки Modify (Изменение) командной панели меняется в зависимости от типа выделенных объектов и выбранных модификаторов. В стеке модификаторов, который расположен под списком модификаторов, показано все, что происходит с объектом. Он отображает все модификаторы, примененные к выделенному объекту сцены, позволяет вернуться к настройкам любого модификатора и изменить его параметры, поменять местами расположение модификаторов в стеке или удалить их. Под стеком модификаторов расположены кнопки, предназначенные для управления стеком. В их число входят 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, справа — фрагмент вкладки

56

Глава 1. Интерфейс программы

Modify (Изменение) командной панели со стеком модификаторов и настройками модификатора Bend (Изгиб).

Рис. 1.25. Объект Box (Параллелепипед), преобразованный с помощью модификатора Bend (Изгиб) (слева) с соответствующими настройками (справа)

Вкладка Hierarchy (Иерархия) Вкладка Hierarchy (Иерархия) командной панели (рис. 1.26) содержит три кнопки контроля за различными параметрами и состояниями объекта. 

Pivot (Опора) — открывает свитки, позволяющие изменять положение в пространстве опорной точки (Pivot Point) выделенного объекта.

ПРИМЕЧАНИЕ Опорная точка (Pivot Point) — точка, вокруг которой происходят все трансформации объекта, включая поворот, масштабирование и т. д. 

IK (Inverse Kinematics) (Обратная кинематика) — содержит свитки, позволяющие применять к связанным объектам анимацию методом обратной кинематики. Эти свитки также позволяют настраивать параметры связей объектов, указывая на способы взаимодействия данных объектов между собой.



Link Info (Данные о связях) — открывает свитки, позволяющие устанавливать блокировки на перемещение, поворот и масштабирование выделенного объекта. Здесь же можно задать характеристики связей объектов друг с другом.

Рассмотрим пример изменения положения опорной точки для управления преобразованиями объекта.

Элементы интерфейса

57

1.

Выделите объект сцены, который предназначен для преобразований (например, для создания массива экземпляров объекта, повернутых вокруг одной точки).

2.

Перейдите на вкладку Hierarchy (Иерархия) командной панели и щелкните на кнопке Pivot (Опора).

3.

В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате контейнер преобразования примет соответствующий вид.

4.

Используя операцию Move (Перемещение) контекстного меню, установите положение опорной точки в требуемое для выполнения преобразований.

5.

Щелкните на кнопке Affect Pivot Only (Только опора), чтобы завершить работу по изменению положения опорной точки.

Вкладка Motion (Движение) Вкладка Motion (Движение) командной панели (рис. 1.27) содержит две кнопки, расположенные в верхней части панели: Parameters (Параметры) и Trajectories (Траектории). Щелчок на кнопке Parameters (Параметры) открывает пять свитков, позволяющих анимировать объект и управлять анимацией с помощью присвоения контроллеров (Controllers) или ограничений (Constraints).

Рис. 1.26. Вкладка Hierarchy (Иерархия) командной панели

Рис. 1.27. Вкладка Motion (Движение) командной панели

58

Глава 1. Интерфейс программы

Контроллеры влияют на положение объекта в пространстве, его поворот и масштабирование относительно выбранного направления, а ограничения позволяют задать рамки использования трансформации объекта установленными параметрами (например, движением объекта вдоль указанного сплайна). Доступ к списку контроллеров анимации можно получить, щелкнув на кнопке Assign Controller (Назначить контроллер), расположенной в верхнем левом углу одноименного свитка, а также с помощью команд меню Animation (Анимация), рассмотренных выше в этой главе. Кнопка 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). Рис. 1.28. Настройки контроллера масштабирования для объекта Box (Параллелепипед)

6. При необходимости измените номер кадра и параметры масштабирования для созданного ключа анимации. 7. Перейдите к следующему кадру, в котором вы хотели бы установить ключ анимации, для чего передвиньте ползунок на шкале анимации, расположенной в нижней части окна программы.

8.

В области Create Key (Создать ключ) свитка PRS Parameters (Параметры положения/поворота/масштабирования) щелкните на кнопке Scale (Масштабирование). В результате выполненных действий будет создан следующий ключ анимации.

9.

Измените параметры масштабирования для созданного ключа анимации.

Подключаемые модули

10.

59

Для просмотра созданной анимации щелкните на кнопке Play Animation (Воспроизвести анимацию) , расположенной в правой нижней части окна программы.

Вкладка Display (Отображение) Вкладка Display (Отображение) содержит команды управления отображением отдельных объектов сцены в окнах проекций (рис. 1.29). На этой вкладке можно установить индивидуальные параметры отображения каждого объекта и категорий объектов в целом. Используя настройки данной вкладки, вы можете изменять все параметры отображения, а также выполнить команды Hide (Спрятать) или Freeze (Фиксировать).

ПРИМЕЧАНИЕ Многие команды управления отображением объектов находятся на плавающей палитре Display Floater (Плавающее окно отображения), а также в окне Object Properties (Свойства объекта).

Вкладка Utilities (Утилиты) Разнообразный выбор инструментов предоставляет вкладка Utilities (Утилиты) (рис. 1.30).

Рис. 1.29. Вкладка Display (Отображение) командной панели с развернутым свитком Display Color (Отображение цвета)

По умолчанию свиток Utilities (Утилиты) содержит девять утилит: Asset Browser (Окно просмотра ресурсов), Camera Match (Горизонт камеры), Collapse (Свернуть), Color Clipboard (Буфер обмена с цветом), Measure (Линейка), Motion Capture (Захват движения), Reset XForm (Сбросить преобразования), MAXScript и reactor. Чтобы получить доступ к списку большего количества утилит, щелкните на кнопке More (Дополнительно), расположенной в левом верхнем углу свитка. После щелчка на кнопке с названием утилиты кнопка выделится цветом, а в нижней части вкладки Utilities (Утилиты) появятся свитки с параметрами выбранной утилиты (для некоторых утилит открывается окно диалога).

Подключаемые модули Подключаемые модули (Plug-In) — внешние программы, предоставляющие пользователям 3ds Max дополнительные возможности. Открытая архитектура 3ds Max

Рис. 1.30. Вкладка Utilities (Утилиты) командной панели

60

Глава 1. Интерфейс программы

построена так, что разрешает любому разработчику программного обеспечения улучшить его возможности. MAXScript и Software Developer's Kit (SDK) (Набор инструментов разработчика программ) позволяют пользователям разрабатывать собственные подключаемые модули. Существуют фирмы, специализирующиеся на производстве вспомогательных модулей для популярных пакетов трехмерного моделирования, в частности для 3ds Max. Некоторые из них уже давно обрели заслуженную популярность у пользователей, другие пока только осваивают рынок. Каждый модуль предназначен для решения определенной задачи (например, создание волосяного покрова трехмерного персонажа, добавление эффекта огня, визуализация). Внешний модуль состоит из набора файлов, обычно с расширениями DLO, DLM, DLU и DLE. Последние буквы расширения определяют, в какую группу входит подключаемый модуль. Например, модуль с расширением DLE относится к экспорту из программы, а расширение DLU обозначает, что модуль является утилитой. Если у модуля нет специального мастера установки, то достаточно скопировать его файлы в директорию 3ds Max 2009\plugins и перезапустить 3ds Max. Если модуль устанавливается в отдельную директорию, то пути к файлам, используемым модулем, указываются в файле plugins.ini, который расположен в корневой директории 3ds Max 2009. После инсталляции модуля и перезапуска программы остается только найти то место, откуда можно получить доступ к модулю. Как правило, это категории Modify (Изменение), Helpers (Вспомогательные объекты) или Utilities (Утилиты) вкладки Create (Создание) командной панели. Некоторые внешние модули поставляются вместе с файлами справки. Эти файлы копируются в папку help, находящуюся в директории, в которой установлена программа 3ds Max 2009. Для доступа к файлам справки дополнительных модулей выполните команду HelpAdditional Help (СправкаДополнительная справка). Для просмотра списка установленных в программе внешних модулей выполните команду FileSummary Info (ФайлСведения), появится окно диалога Summary Info (Сведения). В этом окне щелкните на кнопке Plug-In Info (Информация о внешних модулях), откроется одноименное окно со списком всех установленных модулей и их описанием (рис. 1.31). Установленными внешними модулями можно управлять с помощью окна Plug-in Manager (Менеджер подключаемых модулей) (рис. 1.32), для открытия которого следует выполнить команду CustomizePlug-in Manager (НастройкиМенеджер подключаемых модулей). Каждая строка окна менеджера внешних модулей представляет информацию о наименовании, статусе, размере подключаемого модуля, полном пути к папке, в которой он установлен, и его описание. Модули, имеющие статус loaded (загружен), загружены в память и доступны для использования. Они отмечены зеленым кружком в колонке Status (Статус). Многие модули имеют статус deferred (отложенный) и подгружаются по мере обращения

Подключаемые модули

61

к ним, а модули, имеющие статус unloaded (выгружен), не загружены в память компьютера и имеют красный кружок в колонке Status (Статус). Щелчок правой кнопкой мыши вызывает контекстное меню, с помощью которого можно управлять загрузкой и выгрузкой модулей из памяти, подключать новые внешние модули, расположенные на жестком диске, и выполнять некоторые другие операции.

Рис. 1.31. Окно Plug-In Info (Информация о внешних модулях)

Рис. 1.32. Окно Plug-in Manager (Менеджер подключаемых модулей)

62

Глава 1. Интерфейс программы

Настройка программы Чем отличается начинающий пользователь от профессионала? Кроме того что профессионал знает немного больше, он владеет набором инструментов, позволяющих выполнить работу быстрее и качественнее. Настройка пользовательского интерфейса и загрузка дополнительных внешних модулей позволят вам подняться на ступеньку выше в скорости и качестве выполнения работ. С помощью подключаемых модулей можно выполнить работу на более высоком уровне, чем позволяют стандартные возможности пакета, а оптимизация приложения для потребностей пользователя сокращает затрачиваемые на ее выполнение время и ресурсы. В программе 3ds Max можно настраивать практически все элементы интерфейса, начиная от назначения сочетаний клавиш и заканчивая цветом элементов. Параметры предварительной настройки приложения и пользовательского интерфейса содержатся в окнах диалога Preference Settings (Параметры установок) и Customize User Interface (Настройка пользовательского интерфейса). Рассмотрим в общих чертах каждое из них.

Настройка параметров программы Для вызова окна Preference Settings (Параметры установок) выполните команду CustomizePreferences (НастройкаПараметры). Окно имеет 11 вкладок: General (Общие), Files (Файлы), Viewports (Окна проекций), Gamma and LUT (Гамма и таблица соответствия), Rendering (Визуализация), Animation (Анимация), Inverse Kinematics (Обратная кинематика), Gizmos (Габаритные контейнеры), MAXScript, Radiosity (Диффузное отражение) и mental ray (рис. 1.33).

Вкладка General (Общие) Вкладка General (Общие) служит для изменения параметров общего назначения и разделена на следующие области: 

Scene Undo (Отмены в сцене) — задается максимальное количество отменяемых действий;



Ref. Coord. System (Система координат) — указывается использование одной системы координат для всех преобразований;



Plug-In Loading (Загрузка внешних модулей) — определяется, будут ли модули загружаться вместе со сценой, в которой они установлены;



Sub-Materials (Подматериалы) — позволяет установить либо снять флажок, определяющий автоматическое назначение подматериалов;



Scene Selection (Выделение в сцене) — указывается, каким образом будет производиться выделение, а также размер кисти для выделения;



Spinners (Счетчики) — настраиваются общие параметры всех счетчиков программы;



Command Panel (Командная панель) — устанавливается значение приращения при прокрутке;

Настройка программы

63

Рис. 1.33. Окно диалога Preference Settings (Параметры установок)



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).

64

Глава 1. Интерфейс программы

Рис. 1.34. Вкладка Viewports (Окна проекций) окна Preference Settings (Параметры установок)

В области Viewport Parameters (Параметры окна проекции) можно настроить параметры отображения сцены в окнах проекций, например задать размер точек для показа вершин сетчатых оболочек. Настройки области Ghosting (Двойники) позволяют настроить параметры отображения двойников при отладке анимации. Здесь можно задать общее количество двойников до и после текущего кадра, способ отображения и номера кадров. В области Mouse Control (Управление мышью) можно настроить использование средней кнопки мыши, а также режимы масштабирования и способ вызова контекстного меню. При необходимости вы можете изменить драйвер дисплея в области Display Drivers (Драйверы дисплея), щелкнув на кнопке Choose Driver (Выбор драйвера). Если на компьютере установлен драйвер OpenGL или Direct 3D, то предпочтительно использовать их для ускорения отображения геометрии сцены и ее раскраски.

Вкладка Gamma and LUT (Гамма и таблица соответствия) Вкладка Gamma and LUT (Гамма и таблица соответствия) предназначена для выполнения гамма-коррекции монитора и настройки параметров гамма-коррекции в файлах растровой графики.

Настройка программы

65

Вкладка Rendering (Визуализация) Вкладка Rendering (Визуализация) окна диалога Preference Settings (Параметры установок) позволяет настроить параметры, использующиеся при визуализации по умолчанию (рис. 1.35).

Рис. 1.35. Вкладка Rendering (Визуализация) окна Preference Settings (Параметры установок)

Вкладка Rendering (Визуализация) содержит следующие области: 

Video Color Check (Контроль цветности) — указывается, в каком стандарте будет формироваться видеосигнал и как 3ds Max должен выполнять контроль цветности этого сигнала;



Output Dithering (Смешивание цветов растра) — определяется режим формирования цветов на экране монитора;



Field Order (Порядок полей) — задается порядок следования четных и нечетных полей для анимаций, которые будут показаны на экране телевизора;



Super Black (Сверхчерный) — устанавливается минимальный уровень черного цвета;



HotSpot/Falloff (Яркое пятно/край пятна) — устанавливается минимальная разница угловых размеров конусов HotSpot (Яркое пятно) и Falloff (Край пятна) источников света;



Background (Фон) — задается наличие либо отсутствие сглаживания, фильтрация и использование масок для фонового изображения;

66

Глава 1. Интерфейс программы



Default Ambient Light Color (Исходный цвет подсветки) — указывается цвет подсветки, используемый при визуализации наиболее темных участков теней сцены;



Output File Sequencing (Нумерация выходных файлов) — определяется порядок нумерации файлов, в которых будут сохраняться результаты визуализации; установка флажка Nth Serial Numbering (Каждый порядковый номер) обеспечивает последовательную нумерацию кадров;



Render Termination Alert (Сигнал прерывания визуализации) — устанавливается звуковой сигнал окончания визуализации;



GBuffer Layers (Слои G-буфера) — указывается максимально допустимое количество каналов G-буфера, которые можно назначить в сцене (может быть от 1 до 999);



Bitmap Pager (Пейджер растрового изображения) — позволяет выполнять визуализацию с текстурными картами очень большого размера или с большим количеством текстур;



Multi-threading (Многопоточный) — распределяет расчеты на многопроцессорных системах, ускоряя процесс визуализации.

Вкладка Animation (Анимация) Вкладка Animation (Анимация) (рис. 1.36) содержит настройки анимации сцены.

Рис. 1.36. Вкладка Animation (Анимация) окна Preference Settings (Параметры установок)

Настройка программы

67

Вкладка Animation (Анимация) содержит такие области: 

Key Bracket Display (Обозначить угловыми скобками) — указывается, какие объекты, имеющие ключи анимации, будут обозначаться маркерами;



Animate (Анимация) — устанавливается, будет ли выполняться анимация с использованием локальной системы координат;



MIDI Time Slider Control (Контроль таймера MIDI-устройством) — настраивается управление ползунком таймера с помощью внешнего MIDI-устройства;



Sound Plug-In (Звуковые модули) — заменяется модуль звука, установленный по умолчанию;



Controller Defaults (Исходные параметры контроллеров) — позволяет изменять или восстанавливать принятые по умолчанию значения параметров контроллеров анимации;



Auto Key Default Frame (Исходный кадр автоключа) — включает либо выключает создание ключа анимации в начале анимации (0 или 1 кадр) при использовании режима автоматического создания ключей.

Вкладка Inverse Kinematics (Обратная кинематика) На вкладке Inverse Kinematics (Обратная кинематика) окна Preference Settings (Параметры установок) настраиваются параметры приложенной и интерактивной обратной кинематики. В двух однотипных областях можно задать пределы точности для положения и поворота, а также максимальное количество циклов.

Вкладка Gizmos (Габаритные контейнеры) На вкладке Gizmos (Габаритные контейнеры) можно настроить отображение и поведение габаритных контейнеров объектов. Габаритные контейнеры отображаются в окнах проекций и обеспечивают возможность интерактивной трансформации объектов. Область Transform Gizmos (Габаритный контейнер преобразования) содержит настройки для включения/выключения отображения габаритных контейнеров объектов. Здесь также можно установить возможность отображения более чем одного габаритного контейнера для выделенного набора объектов. Отдельно настраиваются параметры отображения и поведения для габаритного контейнера перемещения и поворота. В области Move/Rotate Transforms (Преобразования перемещения/вращения) можно задать приращение для угла поворота, а также поведение мыши во время трансформаций.

Вкладка MAXScript Вкладка MAXScript позволяет настраивать параметры макроязыка MAXScript. В области Startup (При запуске) можно указать параметры загрузки сценариев и контроллеров.

68

Глава 1. Интерфейс программы

Область MAXScript Windows (Окна MAXScript) содержит настройки отображения шрифта (тип и размер), используемого в окне редактора макросов. Область Run Time (Рабочий цикл) содержит флажок Use Fast Node Name Lookup (Использование быстрого поиска по имени), при установке которого программа индексирует имена объектов в кэше для ускоренного поиска объектов сцены по имени. В группе Memory (Память) находится счетчик Initial heap allocation (MBytes) (Начальное резервирование памяти (Мбайт)), который позволяет устанавливать значение зарезервированной памяти в мегабайтах. В области Macro Recorder (Запись макроса) можно включить запись всех производимых программой 3ds Max действий, фильтрацию кода и использование явных или относительных ссылок.

Вкладка Radiosity (Диффузное отражение) Вкладка Radiosity (Диффузное отражение) содержит настройки, указывающие, как будет происходить диффузное отражение, будут ли настройки улучшенных источников света сохранены вместе со сценой и будут ли содержаться в окне Material Editor (Редактор материалов) параметры отражательной способности и прозрачности. Здесь также можно задать прорисовку диффузного отражения в окнах проекций.

Вкладка mental ray Вкладка mental ray содержит настройки, относящиеся к модулю визуализации mental ray. Здесь можно подключить расширения, управлять параметрами визуализации и установить запись и вывод сообщений.

Настройка пользовательского интерфейса Программа 3ds Max позволяет создавать новые и настраивать существующие меню и панели инструментов. Для этой цели служит окно Customize User Interface (Настройка пользовательского интерфейса) (рис. 1.37). Чтобы вызвать это окно, выполните команду CustomizeCustomize User Interface (НастройкаНастройка пользовательского интерфейса). Окно содержит пять вкладок: Keyboard (Клавиатура), Toolbars (Панели инструментов), Quads (Четверти), Menus (Меню) и Colors (Цвета). Рассмотрим каждую из этих вкладок.

Вкладка Keyboard (Клавиатура) Вкладка Keyboard (Клавиатура) позволяет изменять заданные по умолчанию и присваивать сочетания клавиш командам и инструментам программы. Чтобы назначить команде новое сочетание клавиш или изменить существующее, выполните следующее. 1.

В раскрывающемся списке Group (Группа) выберите группу с командой, которой необходимо присвоить сочетание клавиш.

Настройка программы

69

Рис. 1.37. Окно Customize User Interface (Настройка пользовательского интерфейса)

2.

В списке Category (Категория) укажите категорию, к которой она относится.

3.

Найдите в списке Action (Действие) нужную команду. Если ей уже назначено сочетание клавиш, то оно будет показано в столбце Shortcut (Сочетание клавиш).

4.

Щелкните кнопкой мыши в текстовом поле Hotkey (Горячая клавиша) и введите комбинацию клавиш (нажмите их на клавиатуре). Если такая комбинация уже используется, то имя команды, которой она назначена, появится в поле Assigned to (Назначена для).

5.

Щелкните на кнопке Assign (Назначить) для присвоения команде сочетания клавиш.

6.

Сохраните сделанные изменения, нажав кнопку Save (Сохранить), и в появившемся окне диалога выберите файл для сохранения или создайте новый.

Вкладка Toolbars (Панели инструментов) Вкладка Toolbars (Панели инструментов) служит для создания новых и изменения существующих панелей инструментов 3ds Max (рис. 1.38). Чтобы создать и настроить новую панель инструментов, выполните следующие действия. 1.

На вкладке Toolbars (Панели инструментов) щелкните на кнопке New (Новая), расположенной в правой части окна под раскрывающимся списком существующих панелей.

70

Глава 1. Интерфейс программы

Рис. 1.38. Вкладка Toolbars (Панели инструментов) окна Customize User Interface (Настройка пользовательского интерфейса)

2.

В открывшемся окне New Toolbar (Новая панель инструментов) введите имя создаваемой панели и щелкните на кнопке OK, в результате на экране появится новая панель.

3.

Чтобы наполнить новую панель кнопками, выберите необходимую команду из списка Action (Действие) и перетащите ее на поле панели. Если для команды существует значок, то он появится на созданной кнопке, в противном случае кнопка будет представлена названием.

4.

Для редактирования кнопки щелкните на ней правой кнопкой мыши и в появившемся контекстном меню выберите требуемую команду, например Delete Button (Удалить кнопку).

5.

Для сохранения панели щелкните на кнопке Save (Сохранить) и в появившемся окне выберите файл для сохранения или создайте новый.

Вкладка Quads (Четверти) Вкладка Quads (Четверти) предназначена для настройки и создания новых четвертных меню, вызываемых щелчком правой кнопкой мыши в окне проекции или сочетанием клавиш (рис. 1.39). Для создания и настройки нового четвертного меню выполните следующие действия. 1.

Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню.

Настройка программы

71

Рис. 1.39. Вкладка Quads (Четверти) окна Customize User Interface (Настройка пользовательского интерфейса)

2.

В появившемся окне диалога New Quad Set (Новый набор четвертных меню) введите имя для создаваемого четвертного меню и щелкните на кнопке OK.

3.

Щелкните на одном из квадратов значка Label (Ярлык) для выбора, в какой части квадратичного меню будет создаваться новое меню, и в поле справа введите название меню.

4.

В окне четвертных меню, расположенном в правой части вкладки Quads (Четверти), появится надпись End of Menu (Окончание меню), обозначающая, что меню не заполнено.

5.

Чтобы добавить команду в меню, выберите ее в левой части вкладки из списка Action (Действие) и перетащите в окно четвертных меню выше строки End of Menu (Окончание меню).

6.

При необходимости добавьте Separator (Разделитель), чтобы разделить команды на логические группы.

7.

Повторите три последних действия для других частей четвертных меню.

ПРИМЕЧАНИЕ После присвоения требуемых команд можно назначить вновь созданному меню сочетание клавиш. Для этого в поле Quad Shotcut (Вызов четвертного меню) введите нужную комбинацию клавиш, нажав их на клавиатуре.

72 8.

Глава 1. Интерфейс программы

Сохраните новое четвертное меню, щелкнув на кнопке Save (Сохранить), и в появившемся окне выберите или создайте новый файл для сохранения.

Вкладка Menus (Меню) Вкладка Menus (Меню) окна диалога Customize User Interface (Настройка пользовательского интерфейса) позволяет создавать и настраивать существующие команды любого меню программы 3ds Max (рис. 1.40).

Рис. 1.40. Вкладка Menus (Меню) окна Customize User Interface (Настройка пользовательского интерфейса)

По умолчанию в правой части вкладки Menus (Меню) представлены команды главного меню программы. Чтобы создать новое меню и добавить его к главному, выполните следующие действия. 1.

Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню.

2.

В открывшемся окне New Menu (Новое меню) введите имя для создаваемого меню и щелкните на кнопке OK.

3.

Аналогично построению четвертного меню, описанного выше, перетащите нужные команды из списка Action (Действие) в окно меню выше строки End of Menu (Окончание меню).

4.

При необходимости добавьте Separator (Разделитель), чтобы разделить команды на логические группы.

Настройка программы

73

5.

В списке доступных меню выберите Main Menu Bar (Строка главного меню) или любое другое место, где вы хотели бы поместить созданное меню.

6.

В левом нижнем окне списка Menus (Меню) выберите имя созданного вами меню и перетащите его в правую часть вкладки на дерево основного меню, при этом синяя линия будет указывать то место, куда поместится новый пункт меню.

7.

Сохраните новое или измененное меню, щелкнув на кнопке Save (Сохранить), и в появившемся окне диалога выберите файл для сохранения или создайте новый.

Вкладка Colors (Цвета) Вкладка Colors (Цвета) позволяет настраивать цвета всех элементов интерфейса программы, включая отображение объектов и их составных элементов в окнах проекций (рис. 1.41).

Рис. 1.41. Вкладка Colors (Цвета) окна Customize User Interface (Настройка пользовательского интерфейса)

В раскрывающемся списке Elements (Элементы) верхней части вкладки представлены элементы интерфейса. Выбрав в окне нужную строку с элементом, щелкните в правой части вкладки на образце цвета и в появившемся окне Color Selector (Выбор цвета) выберите нужный цвет. Нижняя часть вкладки содержит список элементов пользовательского интерфейса, которые отвечают за отображение интерфейса программы и настраиваются аналогичным образом.

74

Глава 1. Интерфейс программы

Выполненные изменения можно посмотреть, щелкнув на кнопке Apply Colors Now (Применить цвета сейчас), и, если вас все устраивает, сохраните выполненные изменения, щелкнув на кнопке Save (Сохранить). Итак, в этой главе вы познакомились с основными элементами интерфейса программы 3ds Max 2009, способами ее настройки и пользовательского вида. Вопросы настройки путей, единиц измерения, сетки и привязок не рассматривались, так как не должны вызвать затруднений, и предлагаются для самостоятельного разбора. Однако прежде, чем переходить к следующей главе, обратите внимание на некоторые рекомендации по настройке пользовательского интерфейса. 

Для удобства в работе максимальное пространство на экране монитора должно отводиться окнам проекций, в которых ведется моделирование. В связи с этим используйте сочетания клавиш, освободив окно от лишних панелей. Это ускорит доступ к командам и инструментам программы.



Применяйте кнопки минимального размера, что позволит разместить в поле зрения большее количество кнопок.



Создавайте собственные панели и меню с наиболее вызываемыми командами и присваивайте им сочетания клавиш.



При моделировании в двумерном пространстве ограничьтесь только теми окнами проекций, которые нужны для моделирования.



Если вы обладаете двухмониторной системой, переместите все панели и открывающиеся окна на второй монитор, оставив на первом лишь окна проекций.



Включайте отображение одного окна проекции, когда необходимо более внимательно рассмотреть модель или выполнить редактирование на уровне подобъектов.



По возможности работайте в режиме отображения Expert Mode (Экспертный режим).

Глава 2.

Основные приемы работы • Объекты в 3ds Max 2009 • Создание объектов сцены • Модификаторы геометрии

Подобно огромному зданию, построенному из маленьких кирпичиков, программа 3ds Max позволяет создавать разноплановые сцены, используя в качестве строительных блоков примитивы (параметрические объекты). Вы можете использовать стандартные параметрические объекты для начала любой работы. После создания к ним можно применять модификаторы, строить составные объекты, разрезать, редактировать на уровне подобъектов и выполнять многие другие операции. Объектами в программе 3ds Max являются любые геометрические фигуры, кривые, камеры, вспомогательные объекты, объемные деформации, системы и источники света, которые могут включаться в состав сцены. Процесс создания и преобразования любых объектов в целом одинаков: объект создается с помощью меню Create (Создание), вкладки Create (Создание) командной панели или кнопок панели инструментов, затем выбирается инструмент для его изменения.

Объекты в 3ds Max 2009 Объектно-ориентированное моделирование 3ds Max 2009 — объектно-ориентированная программа, то есть все, что создается в ней, является объектами. Геометрия, камеры и источники света на сцене — это объекты. Объектами также являются модификаторы, контроллеры, растровые изображения и определения материалов. Многие объекты, подобные каркасам, сплайнам и модификаторам, допускают манипулирование на уровне подобъектов. Что на практике означает объектно-ориентированное поведение? Рассмотрим простой пример. Предположим, вам необходимо построить составной объект с помощью булевой операции вычитания. После выбора объекта и щелчка на кнопке Pick Operand B (Указать операнд Б) программа автоматически определит, какие объекты сцены являются действительными для выполнения булевой операции. Только действительные объекты, определенные на основе текущего состояния программы, могут быть выбраны и применены для продолжения операции вычитания. То же самое касается применения к объектам модификаторов. Доступны будут только те модификаторы, которые можно применить к выделенному объекту, все остальные станут неактивными или скрытыми. Таким образом программа не позволяет пользователю ошибиться, в результате повышается производительность и экономится время. Это и есть объектно-ориентированное поведение.

Параметрические и редактируемые объекты Все геометрические объекты программы 3ds Max 2009 можно условно разделить на две категории: параметрические и редактируемые.

Объекты в 3ds Max 2009

77

Большинство объектов в 3ds Max являются параметрическими, то есть объектами, которые определяются совокупностью установок или параметров, а не являются описанием их формы. Проще говоря, такие объекты можно контролировать с помощью параметров (свиток Parameters (Параметры) на командной панели). Изменение значений параметров модифицирует геометрию самого объекта. Такой подход позволяет гибко управлять размерами и формой объектов. Возьмем для примера объект Sphere (Сфера). Параметрическая сфера сохраняет параметры радиуса и количества сегментов и отображает в окнах проекций представление сферы на основе текущего значения параметров (рис. 2.1).

Рис. 2.1. Параметрическая сфера (слева) и ее параметры (справа)

Параметрическое определение сферы записано в виде радиуса и количества сегментов и может в любое время быть изменено и даже анимировано. Параметрическими в 3ds Max являются все объекты, которые можно построить с помощью меню Create (Создание). Они имеют важные настройки моделирования и анимации, поэтому в общем случае необходимо как можно дольше сохранять параметрические определения объекта. Однако сохранение параметрических свойств объектов расходует большое количество ресурсов компьютера и замедляет работу с объектами, так как все параметры, настройки и модификаторы хранятся в памяти компьютера. Таким образом, при работе следуйте правилу: если вы не предполагаете в дальнейшем использовать параметрические свойства объекта, преобразуйте его в Editable Mesh (Редактируемая поверхность). Изменение редактируемых объектов происходит за счет подобъектов (вершины, ребра, грани, полигоны) или функций. В состав редактируемых объектов входят Editable Spline (Редактируемый сплайн), Editable Mesh (Редактируемая поверхность), Editable Poly (Редактируемая полигональная поверхность), Editable Patch (Редактируемая патч-поверхность) и NURBS (NURBS-поверхность). Редактируемые объекты в стеке модификаторов содержат ключевое слово Editable (Редактируемый).

78

Глава 2. Основные приемы работы

Исключение составляют NURBS-объекты, которые называются NURBS Surfaces (NURBS-поверхности). Примером непараметрического объекта может служить та же сфера после преобразования в Editable Mesh (Редактируемая поверхность) (рис. 2.2).

Рис. 2.2. Редактируемая сфера (слева) и свиток Selection (Выделение) ее настроек (справа)

Непараметрическая сфера состоит из совокупности вершин и граней. Информация о количестве сегментов и радиусе после преобразования не сохраняется. Если понадобится изменить радиус сферы, необходимо применить масштабирование или создать новую сферу. Редактируемые объекты получаются путем преобразования других типов объектов. После преобразования параметрического объекта в другой тип (например, в Editable Mesh (Редактируемая поверхность)) он теряет все свои параметрические свойства и не может быть изменен путем указания параметров. В то же время редактируемый объект приобретает свойства, недоступные параметрическому, — возможность редактирования на уровне подобъектов.

Составные объекты Используя вкладку Create (Создание) командной панели, можно объединять два и более объекта для создания нового параметрического объекта Compound Object (Составной объект). Параметры объектов, содержащихся в составном объекте, также можно модифицировать и изменять. Составной объект является типом параметрического объекта, в параметры которого входят объединяемые объекты и описание способов их объединения. Рассмотрим для примера булеву операцию вычитания цилиндра из сферы (рис. 2.3).

79

Объекты в 3ds Max 2009

Рис. 2.3. Составной объект (слева) и его параметры (справа)

Во многих программах трехмерного моделирования данная операция привела бы к тому, что ее результатом стал бы явный каркас, являющийся булевым решением. Если бы возникла необходимость изменить положение цилиндра или радиус сферы, то следовало бы создать новую сферу и цилиндр и снова выполнить булеву операцию. В 3ds Max цилиндр и сфера сохраняются как часть параметрического составного булева объекта. Можно по-прежнему осуществлять доступ к параметрам сферы и цилиндра, анимировать их, а также их относительные положения.

Объекты форм В 3ds Max объекты форм создаются как исходная геометрия для построения других, более сложных объектов, а также в качестве путей анимации. Кроме линий, которые выполняются путем построения вершин в окнах проекций, все остальные формы являются параметрическими объектами. Различается два типа форм в зависимости от метода их создания: c помощью определения радиуса и прямоугольника. Исключением являются дуга и текст. Для создания объекта формы перейдите на вкладку Create (Создание) командной панели, выберите категорию Shapes (Формы) и щелкните на кнопке с именем нужной формы. После этого можно перейти в любое окно проекции и, щелкнув левой кнопкой мыши, переместить мышь по диагонали. Диагональ определяет параметры Length (Длина) и Width (Ширина), используемые прямоугольником или эллипсом, либо радиус для объектов, в параметрах которых он присутствует. Примером такого объекта может быть NGon (Многоугольник) радиусом 50 и с количеством сторон, равным 6 (рис. 2.4).

80

Глава 2. Основные приемы работы

Рис. 2.4. Объект формы NGon (Многоугольник) (слева) и его параметры (справа)

Текст является простейшей создаваемой формой. Достаточно щелкнуть в любом окне проекции — и текст будет помещен на текущую плоскость.

Полигональные объекты Полигональными являются объекты, основанные на сетке полигонов, из которых состоит поверхность этих объектов. Они похожи на объекты Editable Mesh (Редактируемая поверхность), но обладают уникальными возможностями. Эти объекты доступны только как Editable Poly (Редактируемая полигональная поверхность). В них могут быть преобразованы любые геометрические объекты сцены путем конвертации в Editable Poly (Редактируемая полигональная поверхность), а также после применения модификатора Edit Poly (Редактирование полигонов) или Poly Select (Выделение полигонов). Примером полигонального объекта может служить преобразованный объект, полученный c помощью булевой операции вычитания сферы из параллелепипеда (рис. 2.5). Полигональные объекты более ресурсоемкие, чем редактируемые поверхности, и на маломощных компьютерах могут вызывать замедление скорости работы ПК. Существует несколько простых способов оптимизации сцены. 

Моделируйте по возможности простые объекты c помощью Editable Mesh (Редактируемая поверхность).



Во время построения сложных и больших по объему граней объектов стоит периодически разрушать стек модификаторов, выполняя команду Collapse All (Свернуть все).



Применяя команду NURMS Subdivision (NURMS-разбиение), используйте минимально необходимое количество разбиений для отображения в окнах проекций и достаточное для визуализации. При необходимости отключите отображение разбиений в окнах проекций совсем.

Объекты в 3ds Max 2009

81

Рис. 2.5. Объект Editable Poly (Редактируемая полигональная поверхность) (слева) и свиток Selection (Выделение) его настроек (справа)



После построения объекта преобразуйте его в Editable Mesh (Редактируемая поверхность).

Объекты сеток Безье Patch Grids (Сетки патчей) — это поверхности Безье (рис. 2.6), состоящие из четырехугольных (реже треугольных) фрагментов (лоскутов), основанных на сплайнах, которые управляются c помощью манипуляторов Безье.

Рис. 2.6. Модель муравья, построенная c помощью фрагментов Безье (слева), и свиток Selection (Выделение) ее настроек (справа)

Меню Create (Создание) содержит два параметрических объекта фрагментов Безье, но большинство объектов создается путем преобразования в Editable Patch (Редактируемая патч-поверхность).

82

Глава 2. Основные приемы работы

Моделирование c помощью фрагментов Безье имеет следующие преимущества перед другими способами создания объектов: 

автоматическое сглаживание стыков между фрагментами, при котором получается плавный переход от одного фрагмента к другому;



управление фрагментами c помощью манипуляторов Безье;



возможность управления топологией (плотностью) фрагментов Безье, что позволяет при незначительных затратах получить сглаженную модель;



окончательная модель представляет собой полностью бесшовный каркас, который легко поддается анимированию.

Однако такое моделирование обладает и определенными недостатками: 

автоматическое сглаживание стыков из преимущества превращается в недостаток, когда необходимо выполнить моделирование излома поверхности (например, ногтя);



фрагменты Безье слишком велики, поэтому работать с маленькими элементами или деталями объекта неудобно.

NURBS-объекты NURBS — это поверхности или кривые, форма которых описывается неоднородными рациональными В-сплайнами. На рис. 2.7 показана модель шляпы, выполненная с использованием NURBS Surfaces (NURBS-поверхность).

Рис. 2.7. Модель шляпы в каркасном (слева) и тонированном (справа) виде, выполненная c помощью NURBS-поверхностей

В зависимости от типа NURBS-поверхности могут строиться с использованием управляющих вершин или контрольных точек, лежащих на поверхности. Такие поверхности являются идеальным инструментом для создания форм органического происхождения: с ними легко работать, они допускают хороший интерак-

Объекты в 3ds Max 2009

83

тивный контроль, позволяют выполнять бесшовные поверхности и могут оставаться сглаженными даже на криволинейной поверхности. NURBS-поверхности предпочтительнее полигональных при моделировании плавных поверхностей объектов, таких как растения, животные, цветы и т. д.

Источники света и камеры Данные объекты не относятся к моделируемым типам. Тем не менее это очень важные объекты, так как сложно представить серьезный проект, в котором отсутствовали бы камеры и источники света. Камеры и источники света (рис. 2.8) — это объекты сцены, предназначенные для имитации различных светильников (точечного, направленного, дневного и т. д.) и создания видов из виртуальных камер, имитирующих физические свойства реальных камер (фокусное расстояние, угол зрения и т. д.).

Рис. 2.8. Нацеленный источник света и нацеленная камера

Камеры и источники света могут быть свободными и нацеленными. Нацеленные камеры и источники света, как следует из названия, характеризуются наличием цели. Нацеленные камеры (или источники света) содержат два объекта: камеру (или источник света) и их цель. Камера показывает то, что видите вы, а ее цель указывает точку, на которую вы смотрите. Камеру и ее цель можно трансформировать независимо, но считается, что камера всегда смотрит на цель. В случае с нацеленным источником света цель указывает направление, в котором он светит. Цель может двигаться независимо. ПРИМЕЧАНИЕ Для камеры и источника света можно создавать окна проекций, имитирующие вид из камеры или источника света в направлении цели. Такие окна, используемые для источников света, позволяют с большей точностью расположить освещение и выставить тени.

84

Глава 2. Основные приемы работы

Существует два типа камер и 11 типов источников света (в том числе два, поставляемых вместе с визуализатором mental ray).

Вспомогательные объекты К вспомогательным относятся объекты сцены, которые не видны при итоговой визуализации, но упрощают процесс моделирования и анимации (рис. 2.9).

Рис. 2.9. Вспомогательные объекты: Dummy (Пустышка), Grid (Координатная сетка) и Compass (Компас)

Существует восемь групп вспомогательных объектов: Standard (Стандартный), Atmospheric Apparatus (Атмосферная оснастка), Camera Match (Горизонт камеры), reactor, Assembly Heads (Управление сборкой), Manipulators (Манипуляторы), Particle Flow, VRML97. Назначение вспомогательных объектов зависит от их разновидности. Например, манипуляторы предназначены для создания в окнах проекций ползунков или джойстиков, для управления параметрами других объектов, а стандартные применяются при моделировании и анимации объектов сцены.

Объемные деформации В этой категории представлены различные объекты, которые не отображаются при визуализации, но оказывают воздействие на другие объекты сцены, изменяя их форму или поведение. В совокупности с системой частиц модуля Particle Flow объемные деформации позволяют создавать впечатляющие эффекты. Например, можно имитировать силу тяжести, ветер или деформировать плоскую поверхность для создания на ней ряби или волн. В эту категорию входят шесть разновидностей объемных деформаций: Forces (Силы), Deflectors (Отражатели), Geometric/Deformable (Деформируемая геометрия), Modifier-Based (Основанные на модификаторах), reactor и Particles & Dynamics (Частицы и динамика).

Создание объектов сцены

85

Дополнительные инструменты Категория Systems (Дополнительные инструменты) содержит совокупность связанных между собой объектов, которые объединены общими параметрами, обеспечивающими анимацию. Другими словами, объекты являются комбинацией геометрии и поведения. На рис. 2.10 представлены два объекта этой категории: Sunlight (Солнечный свет) и Daylight (Дневной свет).

Рис. 2.10. Два объекта категории System (Дополнительные инструменты): Sunlight (Солнечный свет) и Daylight (Дневной свет)

В категории Systems (Дополнительные инструменты) содержится пять объектов: Bones (Кости), Sunlight (Солнечный свет), Biped (Двуногий), Ring Array (Хоровод) и Daylight (Дневной свет). Например, Biped (Двуногий) — инструмент, предназначенный для создания и анимации фигуры и движения персонажей. Скелет двуногого существа, создаваемый c помощью компонента Biped (Двуногий), обладает иерархической цепочкой связей и специальным набором свойств для анимации.

Создание объектов сцены В данном разделе главы будут рассмотрены основы создания объектов. Речь пойдет о простых объектах, однако применяемые для них правила такие же, как и для большинства сложных объектов. Кроме того, примитивы часто используются в качестве «строительных блоков» для создания достаточно сложных или органических моделей. Создание объектов в 3ds Max — быстрый и несложный процесс. Каждый создаваемый объект по своему характеру является параметрическим, то есть его форма определяется набором параметров. Для создания объектов сцены обычно выполняются следующие действия. 1.

Выбирается опорная плоскость для объекта (чаще всего это означает просто активизацию какого-то окна проекции).

86

Глава 2. Основные приемы работы

2.

Выбирается место на плоскости, которое будет начальной точкой объекта.

3.

В окне проекции перемещается указатель мыши для определения оставшихся параметров объекта.

Параметрические объекты могут создаваться в двух режимах: интерактивном и с помощью клавиатуры.

Интерактивный способ Данный способ применяется наиболее часто при построении объектов сцены. Для создания объекта необходимо выбрать тип объекта, а затем щелкнуть в окне проекции и переместить указатель мыши для определения оставшихся параметров. Результирующая геометрия будет рисоваться одновременно во всех окнах проекций по мере определения расстояний и выполнения процесса создания. Для создания таких объектов, как Sphere (Сфера) или Plane (Плоскость), необходимо после щелчка в окне проекции переместить указатель мыши и отпустить кнопку мыши. СОВЕТ Удерживая нажатой клавишу Ctrl при построении таких объектов, как Box (Параллелепипед) или Plane (Плоскость), точка окна проекции, в которой был произведен щелчок, станет центром объекта, а объект будет строиться равносторонним.

Для построения этих объектов достаточно одного параметра (например, для Sphere (Сфера) — это радиус). После создания объект оказывается выделенным, а параметры вкладки Create (Создание) командной панели остаются активными и продолжают оказывать влияние на объект. Связь между вкладкой Create (Создание) командной панели и недавно созданным объектом разрушается при щелчке в окне проекции или переключении на другую операцию. ПРИМЕЧАНИЕ Как правило, интерактивное создание объектов предполагает построение примитива приблизительного размера. Для уточнения размеров объекта необходимо перейти на панель Modify (Изменение) командной панели и ввести с клавиатуры точные значения параметров.

Место расположения объекта является характеристикой определения объекта. Большинство объектов основываются на плоскости создания, и по ней определяют высоту. Например, цилиндрические примитивы размещают цоколь на плоскости создания, а параметр высоты вытягивает перпендикуляр из этой плоскости. Поскольку такие примитивы, как Sphere (Сфера), GeoSphere (Геосфера), Torus (Тор), Hedra (Многогранник), определяются своими опорными точками, они являются исключениями из этого правила и располагают на плоскости конструкции свою опорную точку.

Создание объектов сцены

87

Ввод значений параметров Ввод значений параметров с клавиатуры является альтернативой интерактивному методу. Иногда требуется точно указать величины, характеризующие координаты опорной точки объекта и его основные размеры. Для этих целей служит свиток Keyboard Entry (Ввод с клавиатуры) (рис. 2.11), расположенный на вкладке Create (Создание) командной панели. В зависимости от типа создаваемого объекта список параметров свитка Keyboard Entry (Ввод с клавиатуры) содержит разное количество счетчиков, едиными остаются только поля для ввода координат опорной точки X, Y и Z. После того как заданы все величины, необходимо щелкнуть на кнопке Create (Создать) для создания объекта в окнах проекций.

Использование сетки Если требуется конструировать на плоскостях, отличных от основных сеток, или использовать одну и ту же плоскость Рис. 2.11. Свиток во всех окнах проекций, то удобно применять объект Grid Keyboard Entry (Координатная сетка). Объекты сетки весьма полезны (Ввод с клавиатуры) при увеличении сложности модели и создании объектов, примитива Box размещенных в плоскости, отличной от ортогональных (Параллелепипед) проекций. Сетки играют неоценимую роль при определении плоскостей конструкции, которые выравниваются с видами, гранями и объектами. В качестве примера можно привести создание примитива Box (Параллелепипед) на поверхности сферы c помощью объекта AutoGrid (Автосетка). 1.

Для создания сферы выполните команду CreateStandard PrimitivesSphere (СозданиеПростые примитивыСфера).

2.

Щелкните кнопкой мыши в окне проекции Top (Cверху) и переместите указатель в сторону на расстояние радиуса сферы.

3.

При необходимости уточните размер и положение сферы в пространстве (путем изменения значений параметров в свитке Parameters (Параметры) вкладки Modify (Изменение) командной панели).

4.

Для построения параметрического объекта Box (Параллелепипед) щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели и выберите из раскрывающегося списка строку Standard Primitives (Простые примитивы).

5.

В свитке Object Type (Тип объекта) щелкните на кнопке Box (Параллелепипед) и установите флажок AutoGrid (Автосетка).

88

Глава 2. Основные приемы работы

6.

Перейдите в окно проекции Perspective (Перспектива) и установите указатель мыши поверх сферы. Он примет вид осей координат с координатой Z, расположенной перпендикулярно полигону, над которым он стоит.

7.

Выберите положение для начала построения объекта и, удерживая нажатой клавишу Ctrl, щелкните кнопкой мыши и переместите указатель в сторону на величину основания параллелепипеда. Отпустите кнопку мыши и переместите указатель вверх для создания параметра высоты.

8.

При необходимости уточните размеры параллелепипеда, изменив значения параметров в свитке Parameters (Параметры) вкладки Modify (Изменение) командной панели.

На рис. 2.12 показан результат выполненных действий.

Рис. 2.12. Параллелепипед, построенный на поверхности сферы c помощью автосетки

Параметрические объекты С помощью геометрических примитивов 3ds Max 2009 можно создать большое количество других форм. Примитивы используются в качестве начальной точки для моделирования каркаса и вершины. В общем случае примитивы служат инструментами построения и моделирования при создании составных объектов. Простыми геометрическими примитивами (категория Standard Primitives (Простые примитивы)) в 3ds Max являются следующие объекты. 

Box (Параллелепипед) — параллелепипеды и кубы с любым соотношением сторон.



Sphere (Сфера) — параметрические объекты типа сферы или купола. Базовый объект создает квадратичные секции, похожие на линии долготы и широты глобуса.

Создание объектов сцены

89



Cylinder (Цилиндр) — цилиндры, цилиндрические секторы и многогранные призмы любых пропорций.



Torus (Тор) — кольца с круглой формой поперечного сечения. Может быть создан также тороидальный сектор.



Teapot (Чайник) — объект, демонстрирующий возможности 3ds Max. Чайник является сложным параметрическим объектом, состоящим из частей.



Cone (Конус) — общие формы, напоминающие цилиндры; два радиуса позволяют в любой момент поместить результирующий объект в управляемый конус.



GeoSphere (Геосфера) — параметрические объекты, похожие на сферу и представляющие различные способы определения сферических объемов, которые обеспечивают три различных геометрии сферы и купола. Геосфера создает треугольные секции, подобно геодезическим куполам.



Tube (Труба) — объекты, подобные цилиндру, но с продольным отверстием внутри. Позволяет также создавать секторы и многогранные призмы с отверстиями.



Pyramid (Пирамида) — пирамиды (в том числе усеченные) с прямоугольным или квадратным основанием.



Plane (Плоскость) — прямоугольный фрагмент сетчатой оболочки. Единственный примитив, не являющийся трехмерным объектом.

В число сложных примитивов (категория Extended Primitives (Улучшенные примитивы)) входят следующие объекты. 

Hedra (Многогранник) — пять разновидностей многогранников со множеством управляющих параметров. Все объекты определяются заданием точки центра и величиной радиуса.



ChamferBox (Параллелепипед с фаской) — параллелепипеды и кубы с любым соотношением сторон. В отличие от объекта Box (Параллелепипед), при использовании объекта ChamferBox (Параллелепипед с фаской) существует возможность задания фасок на краях.



OilTank (Цистерна) — цилиндры с основаниями в виде сферических сегментов с ярко выраженной границей между основаниями и средней частью объекта. На базе этих объектов можно также строить цилиндрические секторы.



Spindle (Веретено) — цилиндры с коническими основаниями, а также цилиндрические секторы на базе этих объектов.



Gengon (Многогранная призма) — многогранные призмы с фаской и без нее.



RingWave (Круговая волна) — инструмент для создания труб, внешняя и внутренняя поверхности которых могут быть волнообразно деформированы.



Prism (Призма) — инструмент для создания призм с различным соотношением сторон основания.



Torus Knot (Тороидальный узел) — объект, который строится на основе узлов различного вида. Можно изменять как форму сечения, так и базовую форму объекта.

90

Глава 2. Основные приемы работы



ChamferCyl (Цилиндр с фаской) — цилиндры, цилиндрические секторы и многогранные призмы любых пропорций с возможностью задания на краях фаски, срезанной под углом 45°.



Capsule (Капсула) — цилиндры с основаниями в виде полусфер, а также цилиндрических секторов на базе этих объектов.



L-Extrusion (L-тело экструзии) — плоскость L-образной формы с выдавливанием по высоте.



C-Extrusion (C-тело экструзии) — объект, аналогичный L-Extrusion (L-тело экструзии), отличающийся базовой формой, представленной в виде буквы «П». Оба тела экструзии являются базовым материалом для моделирования архитектурных конструкций.



Hose (Рукав) — инструмент для создания гофрированных рукавов, шлангов и других объектов аналогичной формы. «Привязав» основания Hose (Рукав) к двум другим объектам, можно получить подобие анимированной пружины.

Все примитивы имеют настройки для управления их размерами — количеством сегментов, сглаженностью и генерацией координат проецирования. Пока параметрический объект не преобразован в другой тип, можно свободно изменять все параметры. Их всегда легко модифицировать, изменяя значения на вкладке Modify (Изменение) командной панели. Рассмотрим два примера создания простого и сложного геометрических примитивов на основе построения GeoSphere (Геосфера) и ChamferBox (Параллелепипед с фаской). Для построения GeoSphere (Геосфера) выполните следующие действия.

Рис. 2.13. Настройки объекта GeoSphere (Геосфера) на командной панели

1.

В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Standard Primitives (Простые примитивы).

2.

Щелкните на кнопке GeoSphere (Геосфера) в свитке Object Type (Тип объекта). В результате в области свитков командной панели появятся свитки параметров геосферы (рис. 2.13).

3.

Установите переключатель Creation Method (Метод создания) в положение Diameter (Диаметр) или Center (Центр) в зависимости от того, хотите вы создавать геосферу, перемещая указатель мыши в окне проекции по диаметру (от края к краю) или от центра, указывая радиус.

4.

Щелкните в окне проекции и переместите указатель мыши в сторону для создания параметрического объекта GeoSphere (Геосфера).

5.

При необходимости уточните радиус объекта в поле Radius (Радиус).

91

Создание объектов сцены

6.

Укажите количество сегментов в поле Segments (Количество сегментов), чтобы задать плотность сетки поверхности объекта.

7.

Переключатель Geodesic Base Type (Базовый тип оболочки) установите в положение, соответствующее создаваемому объекту: •

Tetra (Тетраэдр) — четырехгранник (рис. 2.14, слева);



Octa (Октаэдр) — восьмигранник (рис. 2.14, в центре);



Icosa (Икосаэдр) — двадцатигранник (рис. 2.14, справа).

8.

Установите флажок Hemisphere (Полусфера) для получения половины объекта — полусферы.

9.

Установите флажок Base to Pivot (Точка опоры внизу), чтобы переместить точку опоры из центра объекта к его основанию.

Построим ChamferBox (Параллелепипед с фаской) с помощью главного меню и ввода значений параметров с клавиатуры. 1.

Выполните команду CreateExtended PrimitivesChamferBox (СозданиеУлучшенные примитивыПараллелепипед с фаской). В результате на командной панели появятся свитки параметров параллелепипеда с фаской (рис. 2.15).

2.

В полях X, Y и Z введите значения смещения относительно начала координат по соответствующим осям.

3.

Введите значения параметров Length (Длина), Width (Ширина), Height (Высота) и Fillet (Закругление).

4.

Щелкните на кнопке Create (Создать) для создания объекта в окнах проекций.

Рис. 2.14. Три объекта GeoSphere (Геосфера), различающиеся типом оболочки: Tetra (Тетраэдр) (слева), Octa (Октаэдр) (в центре), Icosa (Икосаэдр) (справа)

Рис. 2.15. Настройки примитива ChamferBox (Параллелепипед с фаской) на командной панели

92

Глава 2. Основные приемы работы

5.

При необходимости, используя свиток Parameters (Параметры), задайте количество сегментов для сторон параллелепипеда с фаской и количество сегментов для закругления.

6.

Для сглаживания поверхности в пределах закругления установите флажок Smooth (Сглаживание) (рис. 2.16).

Рис. 2.16. Параллелепипед с фаской

Объекты форм Для создания сложных объектов сцены не всегда хватает простых и сложных параметрических объектов. В этом случае на помощь приходят объекты форм. В 3ds Max объекты форм создаются в качестве исходной геометрии для построения других, более сложных объектов методом лофтинга (то есть размещением набора характерных сечений объекта вдоль траектории пути), выдавливания, вращения и т. д. Можно также создать формы, управляющие движением во время анимации. Категория Shapes (Формы) состоит из трех групп объектов — Splines (Сплайны), NURBS Curves (NURBS-кривые) и Extended Splines (Улучшенные сплайны). Рассмотрим первую группу как наиболее распространенную и часто используемую. Что такое сплайны? Это кривые, представляющие собой набор вершин, соединенных прямолинейными или криволинейными отрезками — сегментами. Вершины (Vertices), сегменты (Segments) и сплайны (Splines) составляют уровень подобъектов кривых этого типа. Вершины — это точки, находящиеся на концах сегментов и определяющие кривизну сплайна. Различают четыре типа вершин. 

Smooth (Сглаженная) — плавно соединяющая два смежных сегмента, которые имеют равную степень кривизны.

93

Создание объектов сцены 

Corner (Угловая) — соединяющая два сегмента, которые образуют излом кривой в месте соединения.



Bezier (Безье) — подобна сглаженной вершине, но с возможностью управления кривизной в точке соединения сегментов c помощью манипуляторов Безье. Манипуляторы находятся на одной прямой, позволяя управлять только их наклоном и длиной, что вызывает изменение кривизны сегментов и их ориентацию.



Bezier Corner (Угол Безье) — как и вершина типа Bezier (Безье), имеет манипуляторы, но в отличие от Bezier (Безье) манипуляторы можно настраивать независимо друг от друга.

На рис. 2.17 показана кривая со всеми типами вершин. Сегмент

Первая вершина

Угловая вершина

Вершина Безье

Сглаженная вершина

Угловая вершина Безье

Манипуляторы Безье

Рис. 2.17. Подобъекты сплайна

Сегменты — прямолинейные или криволинейные участки сплайна, ограниченные двумя вершинами. Криволинейные сегменты образуются из прямолинейных участков, количество которых определяется значением параметра Steps (Количество шагов) или установкой флажка Adaptive (Адаптивный) для автоматического задания кривизны сплайна. В зависимости от типа сегменты бывают:

94

Глава 2. Основные приемы работы



Line (Линейный) — прямая между двумя вершинами;



Curve (Кривая) — кривая, определяемая типом вершин и настройкой манипуляторов.

Сплайны — это группа смежных сегментов, образующих непрерывную линию. Сплайны бывают открытые и закрытые (у закрытых первая и последняя вершины совпадают). В зависимости от типа сплайны бывают: 

Line (Линия) — все сегменты сплайна являются прямыми;



Curve (Кривая) — все сегменты сплайна имеют некоторую кривизну;



смешанный — сплайн, содержащий как первый, так и второй тип сегментов, то есть имеющий как прямолинейные, так и криволинейные участки.

Программа 3ds Max 2009 содержит 11 типов сплайнов: 

Line (Линия) — основной объект формы, позволяющий строить как замкнутые, так и разомкнутые кривые любой нерегулярной формы;



Circle (Окружность) — дает возможность создавать окружности произвольного радиуса;



Arc (Дуга) — позволяет строить сегменты криволинейной формы по заданным начальной и конечной точкам, а также кривизне или центру;



NGon (Многоугольник) — правильный многоугольник с настраиваемым количеством сторон и возможностью задания скругления углов;



Text (Сплайновый текст) — объект формы на основе строк текста с элементами форматирования: выбор гарнитуры, выравнивания, межстрочного и межбуквенного пространства и т. п.;



Section (Сечение) — инструмент, используемый для создания формы на основе сечения трехмерных объектов плоскостью;



Rectangle (Прямоугольник) — дает возможность создания прямоугольника или квадрата с возможностью скругления углов прямыми или кривыми фасками;



Ellipse (Эллипс) — позволяет создавать эллипсы и круги по двум осям;



Donut (Кольцо) — состоит из двух концентрических окружностей, с возможностью раздельной настройки большего и меньшего радиусов;



Star (Звезда) — применяется для создания звезд с произвольным количеством лучей и возможностью их закручивания и скругления;



Helix (Спираль) — трехмерный объект формы, применяемый для создания спиралей с возможностью контролирования количества витков, высоты, а также внутреннего и наружного радиусов.

Все типы сплайнов представлены в группе Splines (Сплайны) вкладки Create (Создание) командной панели (рис. 2.18). В качестве примера построим два объекта форм: Star (Звезда) и Text (Сплайновый текст). Для создания многоугольника в виде звезды выполните следующие действия.

95

Создание объектов сцены

1.

На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны).

2.

В свитке Object Type (Тип объекта) нажмите кнопку Star (Звезда). В результате на командной панели появятся свитки параметров звезды.

3.

Звезда строится от центра, поэтому в окне проекции щелкните в том месте, где должен быть центр объекта, и, удерживая нажатой кнопку мыши, переместите указатель в сторону на величину первого радиуса. Достигнув нужного размера, отпустите кнопку мыши.

4.

Переместите указатель внутрь или наружу построенного сплайна для указания второго радиуса. Щелкните кнопкой мыши для завершения построения (рис. 2.19).

5.

В поле Points (Количество лучей) свитка Parameters (Параметры) укажите требуемое количество лучей звезды.

6.

При необходимости задайте c помощью параметра Distortion (Искажение) угол смещения вершин первого радиуса относительно второго.

7.

В полях Fillet Radius 1 (Радиус закругления 1) и Fillet Radius 2 (Радиус закругления 2) укажите значения радиусов для внешних и внутренних углов звезды.

Сплайновый текст представляет собой объект, основанный на последовательности сплайнов с текстовыми атрибутами. К атрибутам такого рода относится возможность задавать размер символов, межсимвольный и межстрочный интервалы, а также выравнивание строк.

Рис. 2.18. Группа Splines (Сплайны) категории Shapes (Формы) командной панели

Рис. 2.19. Объект Star (Звезда) в окне проекции

96

Глава 2. Основные приемы работы

Для создания сплайнового текста выполните следующие действия. 1.

На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны).

2.

В свитке Object Type (Тип объекта) нажмите кнопку Text (Сплайновый текст). В результате в области свитков командной панели появятся параметры сплайнового текста (рис. 2.20).

3.

В раскрывающемся списке в верхней части свитка Parameters (Параметры) выберите гарнитуру шрифта.

4.

Задайте начертание шрифта, выбрав наклонный или подчеркнутый.

5.

Установите режим выравнивания строк: Align Left (По левому краю), Align Center (По центру), Align Right (По правому краю) или Justify (По ширине).

6.

C помощью параметров Size (Размер), Kerning (Кернинг) и Leading (Интерлиньяж) определите значения размера, межсимвольного и межстрочного интервалов соответственно.

7.

В текстовое поле введите нужный текст, набрав его с клавиатуры или вставив из буфера обмена.

8.

Разместите набранный текст в любом из окон проекций, щелкнув в поле окна кнопкой мыши.

9.

При необходимости измените параметры созданного текста.

На рис. 2.21 представлен сплайновый текст с параметрами, заданными по умолчанию.

Рис. 2.20. Свиток настроек Parameters (Параметры) объекта Text (Сплайновый текст)

Рис. 2.21. Объект Text (Сплайновый текст) с параметрами, заданными по умолчанию

Создание объектов сцены

97

Создание составных объектов Составные объекты (Compound Objects) в 3ds Max 2009 представлены отдельной группой категории Geometry (Геометрия) вкладки Create (Создание) командной панели. Как правило, это тела, состоящие из двух и более простых объектов, рассмотренных выше (трехмерных объектов или форм). Составные объекты позволяют моделировать тела сложной формы (например, машиностроительные детали) и применять к ним анимацию (например, анимировать процесс создания формы сечением по пути). К составным объектам относятся следующие. 

Morph (Морфинговые) — сложные объекты, позволяющие осуществлять анимированный переход исходного объекта в целевой с использованием промежуточных фазовых объектов.



Conform (Согласованные) — вершины исходного объекта проецируются на поверхность целевого. Таким способом имитируются эффекты таяния свечи, плавления льда, растекания лужи воды и т. п.



BlobMesh (Капля) — системы частиц или геометрические наборы сфер, которые позволяют имитировать жидкую субстанцию. Таким образом можно создавать струю воды, вытекающую из крана.



Boolean (Булев) — составные объекты, полученные путем объединения, пересечения или вычитания двух других трехмерных объектов. Для выполнения булевых операций два исходных объекта должны пересекаться в некоторой области пространства.



Loft (Лофтинговые) — трехмерные тела, построенные на основании объектов форм методом лофтинга, то есть размещением набора характерных сечений объекта вдоль траектории пути.



Scatter (Распределенные) — совокупность копий одного объекта, распределенных на поверхности другого объекта. Чаще всего используются для имитации стеблей травы, стада животных, группы деревьев и т. п.



Connect (Соединенные) — объект, создающий соединение в отверстиях на поверхности двух объектов.



ShapeMerge (Слитые с формой) — объект, позволяющий создавать отверстия и проемы на поверхности трехмерного тела с использованием сплайновой формы. В этом случае контур сплайна используется в качестве секущих кромок и проецируется на поверхность каркасного объекта.



Terrain (Рельеф) — объект, генерирующий трехмерный рельеф горного ландшафта на основе замкнутых сплайнов, представляющих собой изолинии высот, аналогично представленным на картах местности.



Mesher (Сеточные) — составной объект, конвертирующий процедурные объекты (например, системы частиц) в объекты сетки, к которым в дальнейшем могут применяться модификаторы формы.

98

Глава 2. Основные приемы работы



ProBoolean (Pro Булев) — добавляет функциональность традиционному объекту Boolean (Булев), например позволяет одновременно объединять несколько объектов, каждый из которых может использовать собственную булеву операцию.



ProCutter (Pro Вычитание) — позволяет выполнять специализированные булевы операции, в основном предназначенные для разделения или разбиения объектов.

На рис. 2.22 показан свиток Object Type (Тип объекта) с инструментами для создания составных объектов. Рассмотрим два простых примера построения составных объектов: методом лофтинга и булевой операции вычитания. Для построения заготовки болта методом лофтинга выполните следующие действия. 1.

В окне проекции Top (Сверху) постройте три сплайна: два Circle (Окружность), один немного больше другого, и шестиугольный NGon (Многоугольник) с диаметром в полтора-два раза большим, чем окружности.

2.

В окне проекции Front (Спереди) создайте сплайн Line (Линия), расположив его вертикально (рис. 2.23).

3.

В любом окне проекции выделите линию, если она не осталась выделенной после построения.

4.

В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Compound Objects (Составные объекты).

Рис. 2.22. Группа Compound Objects (Составные объекты) категории Geometry (Геометрия) вкладки Create (Создание)

Рис. 2.23. Заготовки для создания лофт-объекта

99

Создание объектов сцены

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.

12.

Нажмите кнопку Get Shape (Взять форму) и снова выберите в качестве формы большую окружность.

13.

Параметру Path (Путь) в свитке Path Parameters (Параметры пути) укажите значение 100.

14.

Щелкните на кнопке Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) выберите последнюю форму — меньшую окружность.

В результате вышеописанных операций должна получиться заготовка для создания болта (рис. 2.24). Продолжим знакомство с составными объектами и рассмотрим пример выполнения резьбы для созданной заготовки болта c помощью булевой операции вычитания. Для этого выполните следующее.

Рис. 2.24. Модель заготовки болта, выполненная с помощью операций лофтинга

1.

На вкладке Create (Создание) командной панели щелкните на кнопке Geometry (Геометрия) и выберите из раскрывающегося списка строку Dynamics Objects (Динамические объекты).

2.

В свитке Object Type (Тип объекта) настроек на командной панели щелкните на кнопке Spring (Пружина). В результате на командной панели появятся свитки параметров пружины.

100

Глава 2. Основные приемы работы

3.

В окне проекции Top (Сверху) создайте объект Spring (Пружина) с таким расчетом, чтобы радиус пружины был немного больше (или равен) радиуса большей окружности, использованной при построении лофт-объекта.

4.

В свитке Spring Parameters (Параметры пружины) укажите Turns (Количество витков) и Height (Высота) в соответствии с предположительным расположением резьбы. Направление вращения пружины задается соответствующим направлению резьбы (CCW (Против часовой стрелки)). Значение параметра Segs/Turn (Количество сегментов на один оборот) в области Common Spring Parameters (Общие параметры пружины) необходимо увеличить до 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 B (Указать операнд Б).

9.

Щелкните на пружине в окне проекции Perspective (Перспектива). В результате, согласно установкам по умолчанию для булевой операции, произойдет вычитание области пересечения из лофт-объекта, созданного ранее (рис. 2.26).

Создание объектов сцены

101

Рис. 2.26. Болт, созданный c помощью составных объектов и булевых операций

Создание источников света Источники света играют огромную роль в визуализации сцен 3ds Max. Правильное освещение может значительно улучшить сцену, создав соответствующую атмосферу. В большинстве сцен 3ds Max используется два типа освещения: естественное и искусственное. Естественное освещение применяется при создании экстерьеров на основе имитации солнечного или лунного света. Искусственное освещение предпочтительно для интерьеров, где светильники создают ощущение света от бытовых осветительных приборов. В программе 3ds Max 2009 присутствует восемь типов стандартных источников света, включая два, поставляемых вместе с визуализатором mental ray, и три фотометрических. Рассмотрим шесть основных стандартных источников света. 

Omni (Всенаправленный) — точечный источник света, располагающийся в какой-то точке трехмерного пространства и равномерно излучающий свет во всех направлениях. Его можно сравнить с лампочкой без абажура, подвешенной к потолку.



Target Direct (Нацеленный направленный) — направленный источник света, лучи которого располагаются в пространстве параллельно друг другу. Такой источник света можно представить как плоскость, излучающую свет в виде цилиндра или параллелепипеда. Источник света имеет Target (Цель), на которую направлен пучок лучей. Примером его использования может служить имитация солнечного света, проходящего через окно в помещение.



Free Direct (Свободный направленный) — в отличие от предыдущего источника света не имеет цели. Его положение в пространстве настраивается путем вращения.

102

Глава 2. Основные приемы работы



Target Spot (Направленный с целью) — аналогичный источнику света Target Direct (Нацеленный направленный) с той лишь разницей, что лучи распространяются от излучателя не параллельно, а исходя из одной точки, наподобие света от театральных софитов или автомобильных фар. Такой источник света можно представить в виде конуса или пирамиды с вершиной в точке излучения. Как и предыдущие источники света, может отбрасывать тени и служить проектором изображений на поверхность объектов сцены.



Free Spot (Направленный без цели) — вариант источника света Target Spot (Направленный с целью), не имеющий цели. Как и у Free Direct (Свободный направленный), направление светового луча изменяется вращением источника света.



Skylight (Свет неба) — источник света, имитирующий свет неба. В отличие от источников света, рассмотренных ранее, Skylight (Свет неба) накрывает сцену полусферой, все внутренние стороны которой излучают световые лучи. Таким образом достигается мягкое равномерное освещение сцены, характерное для природного освещения. Особенностью этого источника света является то, что для его просчетов необходимо включать Light Tracer (Трассировщик света) (задается на вкладке Advanced Lightning (Улучшенное освещение) окна Render Setup (Настройки визуализации)).

Фотометрические источники света (группа Photometric (Фотометрический) категории Lights (Источники света) вкладки Create (Создание) командной панели) аналогичны стандартным, но позволяют более точно с физической точки зрения воспроизводить освещенность, цвет, затухание и распределение света в пространстве. В отличие от стандартных, фотометрические источники используют в качестве единиц освещенности канделы, люмены или люксы. В число фотометрических входят два основных источника. 

Target Light (Направленный источник света) — аналогично стандартному всенаправленному источнику света излучает свет во всех направлениях с одинаковой силой. Для этого источника света можно задавать пространственное распределение светового потока.



Free Light (Свободный источник света) — всенаправленный точечный источник света.

Пока в сцену не будет введен хотя бы один источник света, в ней используется базовое освещение за счет встроенных источников света, не имеющих настроек. Эта особенность программы 3ds Max позволяет начинать моделирование объектов сцены без предварительной установки источников света, создание и настройку которых можно выполнить позднее. Рассмотрим создание и основные настройки источника света Target Spot (Направленный с целью). 1.

На вкладке Create (Создание) командной панели щелкните на кнопке Lights (Источники света) и выберите из раскрывающегося списка строку Standard (Стандартный).

Создание объектов сцены

103

2.

Нажмите кнопку Target Spot (Направленный с целью) в свитке Object Type (Тип объекта).

3.

В одном из окон проекций щелкните в месте предполагаемого размещения источника света и, не отпуская кнопку мыши, переместите указатель в сторону, где должна располагаться цель источника света (рис. 2.27).

Рис. 2.27. Источник света Target Spot (Направленный с целью)

4.

В свитке General Parameters (Общие параметры) установите флажок On (Включить) в области Shadows (Тени), если объекты сцены должны отбрасывать тень.

5.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) c помощью параметра Multiplier (Яркость) укажите значение уровня интенсивности света. Здесь также можно настроить цвет освещения, а в области Decay (Затухание) установить способ и начало ослабления светового потока по мере удаления от источника света.

6.

При необходимости укажите в областях Near Attenuation (Затухание вблизи) и Far Attenuation (Затухание вдали) начальную и конечную границы затухания света.

7.

В свитке Spotlight Parameters (Параметры прожектора) c помощью параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) задайте степень размытия края светового пятна.

8.

В свитке Shadow Parameters (Параметры тени) установите значение параметров тени: Color (Цвет) и Dens (Плотность).

Создание камер В среде 3ds Max используется два вида камер. 

Target (Направленная) — представляет собой камеру с точкой нацеливания (Target Point), на которую направлен объектив. Камеру и ее цель можно трансформировать независимо, но считается, что камера всегда направлена на цель.

104 

Глава 2. Основные приемы работы

Free (Свободная) — аналогична направленной, но не имеет точки нацеливания и представляет собой единичный объект (саму камеру). Она определяет свою цель как находящуюся на произвольном расстоянии вдоль негативной1 локальной оси Z. Ее положение в пространстве настраивается путем вращения.

По конструкции направленные камеры стараются сохранять свой вектор (локальную ось Y камеры) выровненным с осью Z мировой2 системы координат. Создание направленных камер в окне проекции Top (Сверху) устанавливает камеру с правильным начальным выравниванием и обеспечивает наиболее предсказуемые результаты. Создание камеры в других окнах проекции, где легко устанавливать камеру, смотрящую вниз или вверх, может привести к непредсказуемым поворотам камеры вокруг своей оси. Свободная камера имеет локальную систему координат, выровненную с системой координат текущей плоскости конструкции. Линия взгляда свободной камеры направлена вдоль своей отрицательной оси Z, поэтому камера по умолчанию всегда направлена в плоскость конструкции. Например, свободная камера, созданная в окне проекции Top (Сверху), направлена вниз, а свободная камера, созданная в окне проекции Left (Слева), — вправо. Область, просматриваемая камерой, устанавливается двумя независимыми параметрами камеры: FOV (Field of View) (Поле зрения) и Lens (Линза). Они описывают одно и то же свойство камеры, поэтому изменение параметра FOV (Поле зрения) изменяет параметр Lens (Линза) и наоборот. Используйте FOV (Поле зрения) для кадрирования вида камеры и для обеспечения кинематографических эффектов (например, наезда на объект). Камеры можно создать двумя способами: преобразованием окна перспективного вида в окно вида из камеры и построением камеры в окне проекции. В первом случае при активном окне проекции Perspective (Перспектива) выполните команду ViewsCreate Camera From View (ВидСоздать камеру из окна проекции) или нажмите Ctrl+C. Во втором случае для создания камеры в окне проекции сделайте следующее. 1.

На вкладке Create (Создание) командной панели щелкните на кнопке Cameras (Камеры).

2.

В свитке Object Type (Тип объекта) нажмите кнопку Target (Направленная). В результате на командной панели появится свиток Parameters (Параметры).

3.

Щелкните в точке любого окна проекции для размещения камеры и переместите указатель в направлении предполагаемого размещения точки нацеливания (рис. 2.28).

1

2

Обычно координата X имеет позитивное направление вправо, Y — вверх, а Z — от наблюдателя. Негативная локальная ось — это ось с противоположным направлением вектора. Мировая система координат — это универсальная система для всех объектов сцены, которая является постоянной вне зависимости от того, какое окно проекции активно.

105

Модификаторы геометрии

Рис. 2.28. Направленная камера

4.

При необходимости настройте параметры камеры в свитке Parameters (Параметры).

Модификаторы геометрии Для изменения параметров объектов сцены в среде 3ds Max служит панель Modify (Изменение). Она содержит список модификаторов, позволяет управлять стеком модификаторов и редактировать подобъекты. Каждый модификатор привносит в моделирование большое количество возможностей. Некоторые модификаторы сложны, другие — просты и служат узкой цели. Успешное использование любого модификатора зависит от знания их возможностей и правильного порядка их применения, который виден в стеке на командной панели. Для достижения максимальной гибкости модификаторы можно применять в сочетании с другими модификаторами. При модификации объекта часто следует определить выборки, оптимизировать результат, улучшить сглаживание и присвоить отображение. При описании в книге модификаторы организованы в соответствии с тем, каким способом они воздействуют на объект. Это важная особенность, поскольку, например, некоторые модификаторы преобразовывают сплайны и фрагменты в каркасы, когда это не требуется. Модификаторы делятся на WORLD-SPACE MODIFIERS (Модификаторы глобального пространства) и OBJECT-SPACE MODIFIERS (Модификаторы пространства объекта). Модификаторы первой группы в отличие от второй при обработке объектов всегда используют пространственную привязку к глобальной системе координат, о чем свидетельствует аббревиатура WSM (World Space Modifiers), включенная в их название. Все модификаторы программы 3ds Max 2009 сгруппированы по назначению. Существует 16 групп модификаторов, о которых подробно рассказывалось в предыдущей главе.

106

Глава 2. Основные приемы работы

Многие модификаторы используют Gizmo (Габаритный контейнер) для управления воздействием на объект. Габаритный контейнер появляется при переходе в режим редактирования подобъектов модификатора и отображается в виде специального значка, охватывающего поверхность объекта. Применение габаритного контейнера позволяет дополнительно контролировать модифицируемый объект. Например, смещение габаритного контейнера модификатора UVW Map (UVW-проекция) вызовет смещение текстурных координат объекта, что полезно при наложении текстурных карт. Очень большое количество встроенных и подключаемых модификаторов не позволяет рассмотреть их все в рамках данной книги, поэтому остановимся на описании принципов работы наиболее используемых из них.

Lathe (Вращение вокруг оси) Модификатор Lathe (Вращение вокруг оси) является одним из наиболее применяемых. Он используется для создания тел методом поворота вокруг своей оси половины профиля сечения объекта. Примерами объектов такого рода могут служить большая часть традиционной посуды, кувшины и вазы, песочные часы, автомобильные фары, гантели и т. д. Наиболее важными настройками модификатора Lathe (Вращение вокруг оси) являются задание оси вращения и установка поверхности кругового вращения. По умолчанию расположение оси начинается с центра создания формы и выравнивается с локальной осью Y формы. Центр создания — расположение по умолчанию точки вращения после создания формы. Изменить положение сплайна по отношению к точке вращения формы можно двумя способами: 

используя редактирование формы на уровне подобъектов Spline (Сплайн) для изменения положения этих сплайнов относительно точки вращения;



настроив точку опоры (Pivot Point) c помощью свитка Adjust Pivot (Настройка опоры), находящегося на вкладке Hierarchy (Иерархия) командной панели.

Рассмотрим пример построения вазы методом вращения профиля. 1.

В окне проекции Front (Спереди) постройте сплайн, который будет профилем для будущего объекта (рис. 2.29).

СОВЕТ Во время построения сплайнового профиля используйте начало координат для расположения оси вращения и привязки к сетке для упрощения процесса моделирования. Сплайн должен представлять собой одну непрерывную кривую, начальная и конечная точки которой лежат на оси вращения.

2.

На вкладке Modify (Изменение) командной панели выберите из раскрывающегося списка модификаторов строку Lathe (Вращение вокруг оси). Будет создано тело вращения с установками по умолчанию, и появится свиток Parameters (Параметры) настроек модификатора вращения (рис. 2.30).

107

Модификаторы геометрии

Рис. 2.29. Сплайновый профиль будущей вазы

Рис. 2.30. Свиток Parameters (Параметры) модификатора Lathe (Вращение вокруг оси)

3.

Скорее всего, объект, полученный после применения модификатора, будет мало похож на ожидаемый. Это связано с тем, что по умолчанию геометрический центр кривой является осью вращения объекта, а мы строили симметричную половину профиля. Следовательно, необходимо переместить ось вращения в крайнее левое положение сплайна, для чего щелкните на кнопке Min (Минимум), находящейся в области Align (Выравнивание) свитка Parameters (Параметры). В результате объект должен принять форму, показанную на рис. 2.31.

4.

Очень часто в области оси вращения возникают артефакты, которые портят внешний вид модели (см. рис. 2.31). Чтобы избавиться от этого недостатка, установите флажок Weld Core (Слияние на оси).

5.

C помощью параметра Segments (Количество сегментов) укажите количество сегментов, которое будет размещено по периметру формы вращения, чтобы получить сглаженную поверхность.

6.

При необходимости установите флажок Flip Normals (Обратить нормали).

Рис. 2.31. Объект после применения модификатора Lathe (Вращение вокруг оси) и выполнения некоторых настроек

108

Глава 2. Основные приемы работы

7.

Рис. 2.32. Кувшин, выполненный с сектором вращения, равным 360° (слева), и его копия с сектором вращения 270° (справа)

Укажите тип выходной поверхности, установив переключатель Output (Результат) в соответствующее положение: Patch (Патч-поверхность), Mesh (Поверхность) или NURBS (NURBS-поверхность).

При создании объекта в виде сектора тела вращения с помощью параметра Degrees (Сектор) задайте величину угла поворота, а если тело вращения имеет стенки с некоторой толщиной, то в области Capping (Настройки замкнутой поверхности) установите флажки Cap Start (Замкнутая поверхность в начале) и Cap End (Замкнутая поверхность в конце) (рис. 2.32).

Extrude (Выдавливание) Модификатор Extrude (Выдавливание) применяется для построения объектов с постоянным сечением по высоте. Использование модификатора выдавливания похоже на работу рассмотренного ранее составного объекта Loft (Лофтинговые), когда формой пути служит прямая линия, а поперечное сечение состоит из одного сплайна кривой. Примерами использования модификатора Extrude (Выдавливание) могут служить шестеренки и звездочки, текст, машиностроительные детали и заготовки для стен домов. Как и в случае с телами вращения, для построения выдавливания необходимо создать объект формы — профиль сечения, по которому будет строиться выдавливание. Этим профилем может быть как разомкнутая, так и замкнутая кривая, состоящая из одного или более сплайнов. Как и в случае с телами вращения, для построения профиля могут использоваться NURBS-кривые. ПРИМЕЧАНИЕ Аналогичным модификатору Extrude (Выдавливание) по способу построения объектов, но с большими возможностями редактирования профиля выдавливания является модификатор Bevel (Выдавливание со скосом). Его следует использовать при создании объектов с постоянным сечением и фаской на краях (например, текста).

Рассмотрим применение модификатора Extrude (Выдавливание) на примере создания шестеренки часового механизма. 1.

В окне проекции Top (Сверху) постройте сплайн Star (Звезда) и несколько окружностей внутри.

109

Модификаторы геометрии

2.

Щелкните на объекте Star (Звезда) правой кнопкой мыши, в результате чего появится контекстное меню. Выполните команду Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн).

3.

В свитке Geometry (Геометрия) настроек объекта Star (Звезда) нажмите кнопку Attach (Присоединить) и в окне проекции Top (Сверху) щелкните последовательно на всех созданных окружностях для присоединения их к объекту Star (Звезда). В результате получится объект формы профиля будущей шестеренки, состоящий из нескольких сплайнов (рис. 2.33).

4.

На вкладке Modify (Изменение) командной панели выберите из раскрывающегося списка модификаторов строку Extrude (Выдавливание). Будет создан объект выдавливания с установками по умолчанию, а на командной панели появится свиток Parameters (Параметры) настроек модификатора выдавливания (рис. 2.34).

5.

C помощью параметра Amount (Величина) укажите высоту объекта выдавливания (рис. 2.35).

Рис. 2.33. Форма поперечного сечения будущей шестеренки

Рис. 2.34. Свиток Parameters (Параметры) модификатора Extrude (Выдавливание)

Рис. 2.35. Результат применения модификатора выдавливания

110

Глава 2. Основные приемы работы

6.

Используя параметр Segments (Количество сегментов), увеличьте количество сегментов по высоте, если собираетесь редактировать построенный объект с помощью модификаторов поверхности или на уровне подобъектов, преобразовав тело выдавливания в Editable Mesh (Редактируемая поверхность).

7.

При необходимости укажите, должен ли объект выдавливания иметь закрытые верхнее и нижнее основания, установив флажки Cap Start (Замкнутая поверхность в начале) и Cap End (Замкнутая поверхность в конце).

8.

Укажите тип выходной поверхности, установив переключатель Output (Результат) в соответствующее положение.

Bend (Изгиб) Модификатор Bend (Изгиб) используется для создания деформации изгиба трехмерных объектов. Для корректного применения модификатора объект должен иметь достаточное количество разбиений в направлении оси изгиба. Рассмотрим простой пример применения модификатора Bend (Изгиб) к объекту Cylinder (Цилиндр). 1.

В окне проекции Top (Сверху) постройте цилиндр произвольного размера.

2.

Параметру Height Segments (Количество сегментов по высоте) задайте значение от 10 до 20 в зависимости от высоты цилиндра.

3.

Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Bend (Изгиб). Раскроется свиток Parameters (Параметры) настроек модификатора изгиба (рис. 2.36).

4.

C помощью параметра Angle (Угол) задайте значение угла изгиба в градусах.

5.

При необходимости измените направление изгиба, задав угол поворота в поле Direction (Направление).

Рис. 2.36. Свиток Parameters (Параметры) модификатора Bend (Изгиб)

6.

Для управления ориентацией деформации изгиба установите переключатель Bend Axis (Ось изгиба) в соответствующее положение: X, Y или Z.

7.

В области Limits (Пределы) задайте при необходимости ограничения на действие модификатора в пределах выбранной оси деформации.

8.

Для получения дополнительного контроля над деформацией изгиба щелкните на плюсике возле названия модификатора в стеке. В результате появится доступ к габаритному контейнеру Гизмо (строка Gizmo (Габаритный контейнер)) модификатора и его центру (Center (Центр)).

На рис. 2.37 показаны два варианта применения модификатора Bend (Изгиб).

Модификаторы геометрии

111

Рис. 2.37. Цилиндр после применения модификатора Bend (Изгиб) со значением угла изгиба 90° (слева) и его копия с ограничением области воздействия и центром модификатора, передвинутым вверх (справа)

Twist (Скручивание) Модификатор Twist (Скручивание) применяется для создания деформации скручивания. Чаще всего он используется при конструировании витых спиралевидных моделей: веревок, сверл, резьбы, кованых решеток, ювелирных украшений и т. п. (рис. 2.38). Для корректного применения модификатора объект должен иметь достаточное количество разбиений в направлении оси изгиба.

Рис. 2.38. Объекты, созданные c помощью модификатора Twist (Скручивание)

Рассмотрим простой пример применения модификатора Twist (Скручивание). 1.

В окне проекции Top (Сверху) постройте объект Box (Параллелепипед), длина и ширина которого равны 5 мм, а высота — 150 мм. В поле Height Segs (Количество сегментов по высоте) укажите значение, равное 100.

112

Глава 2. Основные приемы работы

2.

Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Twist (Скручивание). Появится свиток Parameters (Параметры) настроек модификатора скручивания (рис. 2.39).

3.

Укажите c помощью параметра Angle (Угол) величину угла скручивания в градусах.

4.

При необходимости установите координатную ось, отличную от Z, которая принята по умолчанию.

5.

В области Limits (Пределы) задайте при необходимости ограничения на действие модификатора в пределах выбранной оси деформации.

6.

Для получения дополнительного контроля над деформацией скручивания щелкните на плюсике рядом с названием модификатора в стеке. В результате появится доступ к габаритному контейнеру Гизмо (строка Gizmo (Габаритный контейнер)) модификатора и его центру (Center (Центр)).

На рис. 2.40, слева показан параллелепипед после применения модификатора Twist (Скручивание) с установленными ограничениями области действия модификатора и его копия (рис. 2.40, справа), к которой дополнительно был применен модификатор Bend (Изгиб) с величиной угла изгиба, равной 360°.

Рис. 2.39. Свиток Parameters (Параметры) настроек модификатора Twist (Скручивание)

Рис. 2.40. Параллелепипед после применения модификатора Twist (Скручивание) (слева) и его копия, к которой дополнительно применен модификатор Bend (Изгиб) (справа)

Edit Mesh (Редактирование поверхности) Модификатор Edit Mesh (Редактирование поверхности) является одним из ключевых инструментов редактирования геометрии, без которого трудно представить моделирование объектов сложной формы. Кроме непосредственного редактирования, его можно использовать для выделения сеток или их подобъектов с целью применения различных модификаторов.

Модификаторы геометрии

113

Рассмотрим пример создания модели яблока c помощью модификатора Edit Mesh (Редактирование поверхности). 1.

В окне проекции Top (Сверху) постройте объект Sphere (Сфера) с радиусом, равным 45.

2.

Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Edit Mesh (Редактирование поверхности).

3.

В свитке Selection (Выделение) перейдите в режим редактирования вершин, щелкнув на кнопке Vertex (Вершина).

4.

В окне проекции Perspective (Перспектива) выделите верхнюю вершину сферы.

5.

Разверните свиток Soft Selection (Плавное выделение) и укажите значения параметров плавного выделения, как показано на рис. 2.41 (при этом дополнительно должно быть выделено цветом три ряда вокруг верхней точки сферы).

6.

Щелкните на кнопке Select and Move (Выделить и переместить), расположенной на панели инструментов, и в окне проекции Front (Спереди) переместите выделенную вершину немного вниз (рис. 2.42), сформировав углубление в месте крепления хвостика яблока.

7.

В окне проекции Front (Спереди) выделите две вершины, находящиеся в третьем ряду снизу и в середине объекта (одна на лицевой стороне, другая на противоположной). Затем, удерживая нажатой клавишу Ctrl, добавьте к выделению две такие же вершины в окне проекции Left (Cлева). Таким образом, должно быть выделено четыре вершины, расположенные в третьем ряду снизу и равноудаленные друг от друга.

8.

Не меняя настройки плавного выделения, переместите выделенные вершины немного вниз, сформировав таким образом нижнюю часть яблока (рис. 2.43).

Рис. 2.41. Свиток Soft Selection (Плавное выделение) с параметрами выделения вершин сферы

Рис. 2.42. Изменение положения близлежащих вершин сферы в результате перемещения выделенной вершины

114

Глава 2. Основные приемы работы

Рис. 2.43. Четыре вершины, выделенные в нижней части яблока, при перемещении вниз формируют его основание

Рассмотренный пример иллюстрирует лишь малую часть возможностей, которые предоставляет модификатор Edit Mesh (Редактирование поверхности). Выполняя упражнения, описанные во второй и третьей частях книги, вы будете постоянно сталкиваться с редактированием сеток объектов, начиная с самых простых и заканчивая моделированием головы человека. ПРИМЕЧАНИЕ После применения модификатора Edit Mesh (Редактирование поверхности) объекты наделяются свойствами, идентичными объектам Editable Mesh (Редактируемая поверхность).

Noise (Шум) Яблоко, созданное с помощью модификатора Edit Mesh (Редактирование поверхности), получилось почти идеальной формы, однако в природе не существует идеальных форм. Модификатор Noise (Шум) помогает придать геометрии моделей неравномерность, присущую объектам реального мира. Применим модификатор Noise (Шум) к модели яблока и рассмотрим его основные настройки. 1.

Выделите модель яблока, созданную ранее c помощью модификатора Edit Mesh (Редактирование поверхности).

2.

Из списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Noise (Шум). Раскроется свиток Parameters (Параметры) настроек модификатора (рис. 2.44).

3.

Укажите в полях X, Y и Z области Strength (Сила воздействия) значения смещения в направлении соответствующих осей глобальных координат.

Модификаторы геометрии

115

4.

В области Noise (Шум) установите значение счетчика Scale (Масштабирование) для определения величины возмущения поверхности объекта. Большие значения ведут к более гладким возмущениям, малые — к более частым. Параметр Seed (Случайная выборка) устанавливает положение генератора случайных величин.

5.

При необходимости установите флажок Fractal (Фрактальный) для включения режима генерации фрактальных возмущений. Значения параметров Roughness (Шероховатость) и Iterations (Количество итераций) позволяют управлять степенью шероховатости поверхности и задают количество вычислительных циклов фрактального алгоритма.

После настройки основных параметров модификатора Noise (Шум) модель яблока стала выглядеть реалистичнее, а добавление хвостика, выполненного c помощью примитива Cylinder (Цилиндр) с примененными к нему модификаторами Bend (Изгиб) и Taper (Заострение), довершило картину (рис. 2.45).

Рис. 2.44. Свиток Parameters (Параметры) модификатора Noise (Шум)

Рис. 2.45. Модель яблока с габаритным контейнером Гизмо после применения модификатора Noise (Шум)

Таким образом, на примере моделирования яблока вы могли убедиться в том, что строить модели некоторых объектов гораздо проще и быстрее с использованием параметрических объектов и модификаторов формы. Кроме того что такие объекты продолжают сохранять параметрические свойства, их легко редактировать c помощью изменения параметров самих объектов и настроек присвоенных им модификаторов.

Глава 3.

Материалы и текстуры • Окно Material Editor (Редактор материалов) • Материал типа Standard (Стандартный) • Создание сложных материалов • Использование текстурных карт

Материалы, используемые в 3ds Max, позволяют имитировать внешний вид предметов реального мира, а именно такие их свойства, как цвет, сглаженность, мягкость, прозрачность, свечение и др. Эта глава посвящена описанию основных способов работы с материалами и возможностей окна Material Editor (Редактор материалов).

Окно Material Editor (Редактор материалов) Material Editor (Редактор материалов) — это окно, позволяющее создавать, редактировать и присваивать материалы объектам сцены. Редактор материалов является расширенной средой, в которой все типы процедурных и текстурных карт и материалов выступают подключаемыми компонентами. Окно Material Editor (Редактор материалов) можно вызвать, выполнив команду Rendering Material Editor (ВизуализацияРедактор материалов), щелкнув на кнопке Material Editor (Редактор материалов) главной панели инструментов или нажав клавишу M. Окно Material Editor (Редактор материалов) состоит из ячеек образцов материалов, кнопок инструментов управления и области свитков (рис. 3.1).

Ячейки образцов материалов По умолчанию при работе над новой сценой Material Editor (Редактор материалов) показывает шесть ячеек с образцами материалов. Рис. 3.1. Окно диалога Material Editor (Редактор материалов) Щелчок на ячейке активизирует ее и изменяет цвет ее границы на белый. Если ячейка образца содержит материал, который используется в сцене, то в ее углах помещаются белые треугольники. Позиция в иерархии материалов при переключении между окнами образцов запоминается. В Material Editor (Редактор материалов) доступны 24 ячейки материалов. По умолчанию отображается только шесть из них. Просмотреть остальные ячейки можно, используя вертикальную и горизонтальную полосы прокрутки либо изменив в настройках окна количество отображаемых ячеек. Для этого нажмите кнопку Options (Параметры) (в правой части окна Material Editor (Редактор материалов)) или выполните команду OptionsOptions (ПараметрыПараметры) и в появившемся окне Material Editor Options (Параметры редактора материалов) установите переключатель Slots (Слоты) в одно из положений — 3 Ч 2, 5 Ч 3 или 6 Ч 4.

118

Глава 3. Материалы и текстуры

В зависимости от своего назначения сцене материалы 3ds Max имеют три «температуры»: «горячую», «теплую» и «холодную». Если материал применяется в сцене, он считается «горячим», если является копией материала, используемого в сцене, — «теплым», а если не используется — «холодным» (рис. 3.2).

а

б

в

Рис. 3.2. Ячейки образцов материалов: «холодного» (а), «теплого» (б) и «горячего» (в)

«Горячие» материалы отмечены в окнах образцов материалов четырьмя белыми треугольниками. «Теплым» материал становится при его копировании с помощью кнопки Make Material Copy (Сделать копию материала) или перетаскивания образца материала из одной ячейки в другую. Скопированный («теплый») материал имеет то же имя, что и оригинал, но не связан напрямую со сценой. Его редактирование не влияет на текущее состояние сцены. «Холодный» материал отличается от «теплого» только тем, что не разделяет имя с уже существующим в текущей сцене и не присвоен ни одному объекту сцены. СОВЕТ При редактировании «горячего» (назначенного) материала рекомендуется использовать его «теплую» версию. Для этого делается копия образца материала, производятся все изменения, и затем она назначается соответствующему объекту в сцене как новый «горячий» материал.

После выбора ячейки с образцом материала можно присвоить его объекту, выделенному в окне проекции. Для этого щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам), расположенной ниже ячеек с образцами материалов, или выполните команду MaterialAssign to Selection (МатериалНазначить выделенным объектам). Существует более простой и наиболее применяемый способ: перетащить материал из ячейки образца на объект, расположенный в окне проекции. Как только материал присваивается объекту сцены, он автоматически попадает в библиотеку материалов, которая сохраняется вместе с файлом сцены. Находясь в этой библиотеке, он может не отображаться в ячейках с образцами материала.

Окно Material Editor (Редактор материалов)

119

СОВЕТ При необходимости вы можете просмотреть все материалы, включенные в сцену, установив в окне Material/Map Browser (Окно выбора материалов и карт) переключатель Browse From (Выбирать из) в положение Scene (Сцена).

При желании можно создавать и сохранять для загрузки собственные библиотеки материалов.

Интерфейс окна Material Editor (Редактор материалов) Окно Material Editor (Редактор материалов) содержит собственную панель инструментов, расположенную снизу и справа от ячеек с материалами: Sample Type (Тип образца) — определяют форму отображаемого в ячейке образца (сфера, цилиндр, параллелепипед); Backlight (Подсветка сзади) (L) — включает или выключает заднюю подсветку образца материала в выбранной ячейке; Background (Фон) (B) — изменяет фон ячейки на шахматное поле или подгружаемую текстуру, например, для лучшего отображения прозрачных материалов; Sample UV Tiling (Плитки образцов в плоскости UV) — устанавливает количество повторений текстурной карты на образце материала (1 Ч 1, 2 Ч 2, 3 Ч 3, 4 Ч 4); Video Color Check (Контроль цветности) — включает режим контроля соответствия цветов стандартам PAL и NTSC для текущего материала; Make Preview (Создать эскиз) (P), Play Preview (Просмотреть эскиз), Save Preview (Сохранить эскиз) — позволяют создать, просмотреть и сохранить эскизы анимации материалов до выполнения визуализации сцены; Options (Параметры) (O) — открывает окно с настройками параметров Material Editor (Редактор материалов); Select by Material (Выделить по материалу) — выделяет все объекты сцены, использующие текущий материал, для чего открывается окно Select Objects (Выбор объектов) с выделенными материалами; Material/Map Navigator (Путеводитель по материалам и картам) — вызывает окно Material/Map Navigator (Путеводитель по материалам и картам), которое отображает древовидную структуру материалов и текстур текущего образца; Get Material (Установить материал) (G) — открывает окно диалога Material/Map Browser (Окно выбора материалов и карт) для выбора готового материала или создания нового; Put Material to Scene (Поместить материал в сцену) — обновляет материал объекта, после того как сделаны изменения в его копии (в «теплом» материале); Assign Material to Selection (Назначить материал выделенным объектам) — присваивает текущий материал выделенным объектам сцены;

120

Глава 3. Материалы и текстуры

Reset Map/Mtl to Default Settings (Установить исходный материал/карту текстуры) — удаляет из активной ячейки образца все выполненные изменения, возвращая ее к установкам по умолчанию; Make Material Copy (Копировать материал) — создает копию текущего «горячего» материала и помещает ее в ту же ячейку образца, сохраняя имя и свойства оригинала; Make Unique (Сделать уникальным) — превращает образец материала в новый, независимый материал; Put to Library (Поместить в библиотеку) — помещает активный материал в текущую библиотеку материалов; чтобы зафиксировать изменения, библиотеку после этого следует сохранить; Material ID Channel (Канал идентификаторов материала) — устанавливает один из 15 идентификаторов (ID) для последующего применения специальных эффектов; Show Standard Map in Viewport (Отобразить карту в окне проекции стандартно) — отображает двумерные карты текстур на поверхности объектов в окнах проекций. В данном случае для отображения текстурных карт используется программное обеспечение, а при выборе кнопки Show Hardware Map in Viewport (Отобразить карту в окне проекции аппаратно) — аппаратное; Show End Result (Показать конечный результат) — показывает в ячейке образца все уровни комбинированного материала (если режим выключен, отображается только текущий уровень); Go to Parent (Вернуться к исходному) — выполняет переход от компонентного уровня на более высокий уровень редактирования составного материала; Go Forward to Sibling (Перейти к компоненту) — выполняет переход к правке следующего материала или текстуры, входящей в многокомпонентный материал; Pick Material from Object (Показать материал объекта) — позволяет взять образец материала с объекта сцены и загрузить в текущую ячейку; Material drop-down list (Раскрывающийся список имен материалов) — позволяет переименовать текущий материал или текстурную карту; Type (Тип) — кнопка выбора типа редактируемого материала; щелчок на ней вызывает окно диалога Material/Map Browser (Окно выбора материалов и карт). Ниже окна с именем и кнопки выбора типа материала находится область свитков текущего материала, состав которой изменяется в зависимости от выбранного типа.

Использование Material/Map Browser (Окно выбора материалов и карт) Окно диалога Material/Map Browser (Окно выбора материалов и карт) (рис. 3.3), предназначенное для просмотра и выбора материалов и текстурных карт, открывается в трех случаях:

Окно Material Editor (Редактор материалов) 

при выборе нового материала или текстурной карты;



при использовании кнопки Type (Тип) для замены текущего подматериала или карты;



при нажатии кнопки Get Material (Установить материал).

121

В Material/Map Browser (Окно выбора материалов и карт) хранятся материалы в наборах, именуемых библиотеками. Как уже говорилось выше, библиотеки могут храниться в составе файла сцены или в отдельном файле с расширением MAT. В окне Material/Map Browser (Окно выбора материалов и карт) материалы помечены значком в виде сферы, а текстурные карты — параллелограммом. В данном окне можно выбрать материал, который хранится в библиотеке материалов, присутствует в сцене, является текущим в Material Editor (Редактор материалов), или создать собственный материал. При установке переключателя Browse From (Выбирать из) в одно из положений происходит следующее:

Рис. 3.3. Окно Material/Map Browser (Окно выбора материалов и карт)



Mtl Library (Библиотека материалов) — показывает текущую библиотеку материалов и текстур. При установке переключателя в данное положение в левой части окна появляется область кнопок File (Файл) для работы с файлами библиотек, позволяющая загружать, объединять и сохранять библиотеки материалов;



Mtl Editor (Редактор материалов) — позволяет просматривать материалы и текстуры, используемые в настоящий момент в Material Editor (Редактор материалов); при этом отображаются все 24 образца материала;



Active Slot (Активная ячейка) — открывает для просмотра материал из активной ячейки образца;



Selected (Выделенные объекты) — позволяет просматривать только те материалы и текстуры, которые принадлежат выделенным объектам сцены;



Scene (Сцена) — служит для просмотра материалов и карт текстур текущей сцены, независимо от того, присутствуют они в Material Editor (Редактор материалов) или нет;



New (Создать) — открывает список всех доступных типов материалов и карт текстур, которые можно использовать для создания новых образцов.

Выбрав один или несколько вариантов в области Show (Показывать) окна Material/Map Browser (Окно выбора материалов и карт), можно ограничить отображение материалов и текстурных карт:

122

Глава 3. Материалы и текстуры



Materials (Материалы) — включает отображение в окне просмотра материалов;



Maps (Карты текстур) — задает отображение в окне просмотра текстурных карт;



Incompatible (Несовместимые) — включает отображение несовместимых с текущим визуализатором материалов и текстурных карт, в частности материалы визуализатора mental ray несовместимы со стандартным визуализатором и при установке флажка Incompatible (Несовместимые) отображаются серым цветом;



Root Only (Только результат) — задает отображение только верхнего уровня материалов в окне просмотра;



By Object (По объектам) — включает режим сортировки списка материалов, при котором их названия будут упорядочены по алфавиту.

Кнопки, расположенные в верхней части окна Material/Map Browser (Окно выбора материалов и карт), позволяют изменять режим отображения материалов и выполнять некоторые стандартные операции.

Окно Material/Map Navigator (Путеводитель по материалам и картам) Каждый материал сцены может содержать любое количество подматериалов, которыми могут быть другие материалы или текстурные карты. Подматериалы можно редактировать c помощью свитков, в которых они содержатся, но более простым и визуально понятным способом является использование окна Material/Map Navigator (Путеводитель по материалам и картам) (рис. 3.4). Окно Material/Map Navigator (Путеводитель по материалам и картам) является составной частью Material Editor (Редактор материалов) и предоставляет возможность для изучения дерева материалов. Как и в окне Material/Map Browser (Окно выбора материалов и карт), кружки символизируют материалы, а параллелограммы — текстурные карты. Щелчок на каждом символе настроит Material Editor (Редактор материалов) на определенный материал или карту на данном уровне. Это облегчает навигацию внутри или между сложными материалами.

Рис. 3.4. Окно Material/Map Navigator (Путеводитель по материалам и картам)

В Material/Map Navigator (Путеводитель по материалам и картам), как и в Material/Map Browser (Окно выбора материалов и карт), кнопки, расположенные в верхней части окна, позволяют изменять режим отображения материалов.

Материал типа Standard (Стандартный)

123

Материал типа Standard (Стандартный) Один из базовых материалов 3ds Max, наиболее часто применяемый как самостоятельно, так и для создания более сложных составных материалов, — материал типа Standard (Стандартный). Для стандартного материала указываются характеристики цвета, отражения, прозрачности и собственного свечения. Возможность использования различных вариантов тонированной окраски позволяет контролировать вид текущего материала. Настройки стандартного материала содержатся в следующих свитках: 

Shader Basic Parameters (Основные параметры затенения);



Basic Parameters (Основные параметры), основанные на типе применяемого метода тонированной раскраски;



Extended Parameters (Дополнительные параметры);



SuperSampling (Сверхразрешение);



Maps (Карты текстур);



Dynamics Properties (Динамические свойства);



DirectX Manager (Управление драйвером DirectX).

ПРИМЕЧАНИЕ Данный свиток появляется при выборе в качестве драйвера дисплея DirectX.

Используя эти параметры, можно создавать уникальные материалы.

Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) Свитки Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) (рис. 3.5) позволяют настраивать параметры тонированной раскраски, трех главных компонентов цвета материала, а также другие характеристики материала. Создание нового материала начинается с выбора типа тонированной раскраски в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения). Параметр, определяющий тонированную раскраску, является основным в материале Standard (Стандартный). Он управляет выбором метода (алгоритмом) визуализации для оценки и затенения базовых цветов и сияния.

124

Глава 3. Материалы и текстуры

Рис. 3.5. Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) стандартного материала

Существуют три теневые характеристики материала Standard (Стандартный). 

Ambient (Цвет подсветки) — цвет объекта, освещенного рассеянным светом. Хотя значение подсветки представляет затененную часть материала, оно существенно влияет на поверхность, так как обычно в заданный момент времени под воздействием прямого света находится только небольшая часть объекта.



Diffuse (Цвет рассеивания) — цвет объекта, освещенного прямым светом. Оказывает наибольшее влияние на вид материала, и его проще всего определять. Это цвет, на который ссылаются при описании материала в реальной жизни.



Specular (Цвет зеркального отражения) — цвет пятна отражения. Цвет зеркального отражения смешивается с цветом подсветки. Такая смесь варьируется от материала к материалу, но обычно окрашена в цвет рассеивания (или цвет блика) с небольшой насыщенностью или бесцветна (белая). Влияние, которое цвет зеркального отражения оказывает на материал, прямо связано со значением параметра Specular Level (Уровень блеска).

Слева от цветов расположены кнопки, позволяющие заблокировать цвета, чтобы они оставались одинаковыми. После этого настройка одного цвета влияет на цвет другого. СОВЕТ Несмотря на то что Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) блокированы по умолчанию, не стоит оставлять их одинаковыми, если вы не стремитесь получить материал яркого пластика. Сделав Ambient (Цвет подсветки) темнее, чем Diffuse (Цвет рассеивания), вы усилите затенение и создадите более естественную визуализацию.

125

Материал типа Standard (Стандартный)

Настройки характеристик зеркального блика материала представлены в области Specular Highlights (Зеркальные блики). Данные значения объединяются для создания общего характера яркости с эффектом, графически показанным кривой Highlight (Подсветка). Рассмотрим параметры данной области. 

Specular Level (Уровень блеска) — яркость блика.



Glossiness (Глянец) — размер пятна блика на поверхности материала. Большие значения создают вид более гладкого и блестящего материала, в то время как их уменьшение имитирует матовые поверхности.



Soften (Размытие) — размытие пятна блика на поверхности материала. Если материалы обладают слабым матовым блеском, стоит использовать более высокие значения размытия и наоборот.

Кроме рассмотренных выше, существуют другие параметры, позволяющие дополнительно настраивать материал. 

Wire (Каркас) — визуализация объекта, которому назначен материал, производится в режиме каркасного отображения (рис. 3.6, а). Поверхность каркаса является гладкой вдоль грани, чье ребро он очерчивает. Применяется для имитации проволочных моделей, плетеных корзин и т. д.



Face Map (Карта грани) — присваивает материал с применением текстурных карт к каждой грани объекта (рис. 3.6, б).



2-Sided (Двусторонний) — заставляет визуализатор игнорировать нормали граней поверхности и визуализировать обе стороны объекта. Данный параметр предназначен для геометрий и поверхностей, которые просматриваются насквозь, например стекло или проволочный каркас (рис. 3.6, в).



Faceted (Огранка) — выключает сглаживание ребер и придает объекту граненый вид (рис. 3.6, г).

а

б

в

г

Рис. 3.6. Визуализация материала в режиме: Wire (Каркас) (а), Face Map (Карта грани) (б), 2-Sided (Двусторонний) (в) и Faceted (Огранка) (г)

В свитке Basic Parameters (Основные параметры) также находятся параметры SelfIllumination (Собственное свечение) и Opacity (Непрозрачность). Параметр Self-Illumination (Собственное свечение) создает иллюзию самостоятельного свечения посредством устранения компонента затенения материала, определяемого параметром Ambient (Цвет подсветки). Увеличение значения параметра

126

Глава 3. Материалы и текстуры

Self-Illumination (Собственное свечение) уменьшает эффект рассеивания до тех пор, пока затенение не будет больше появляться. Если материал полностью самостоятельно светится (параметр Self-Illumination (Собственное свечение) равен 100), то на поверхности нет тени и везде, кроме бликов, используется рассеянный цвет. По умолчанию все материалы непрозрачны на 100 %. Общую прозрачность материала можно определить, используя карту его непрозрачности. Когда карта непрозрачности активна, она перекрывает параметр Opacity (Непрозрачность), так как задает силу и размещение непрозрачности материала.

Типы тонирования Параметры тонированной окраски управляют тем, какой метод (алгоритм) визуализации будет использоваться для оценки и затенения базовых цветов, а также сияния. Существует восемь типов тонирования оболочек объектов, представленных в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения). 

Blinn (По Блинну) (рис. 3.7, а), Oren-Nayar-Blinn (По Оурену — Найару — Блинну) (рис. 3.7, б), Phong (По Фонгу) (рис. 3.7, в) — методы тонированной раскраски, обеспечивающие сглаживание граней и отображение зеркальных бликов на поверхности материала. Раскраска по Блинну или Фонгу в большинстве случаев применяется для создания стандартных материалов пластика, крашеных поверхностей, дерева, резины и т. п. При этом раскраска по Фонгу дает более мягкое сглаживание между гранями, рассчитывая нормали каждого пиксела поверхности. Окраска по Оурену — Найару — Блинну предоставляет дополнительные возможности, связанные с управлением яркостью цвета рассеивания, что позволяет получить большую гибкость в настройке материалов с шероховатой поверхностью (например, тканей).



Metal (Металл) (рис. 3.8, а), Strauss (По Штраусу) (рис. 3.8, б) — применяются для имитации металлов и материалов с металлическим блеском (таких как стекло, сталь и т. п.). Цвет блика металлических материалов зависит от настроек цветового компонента Diffuse (Цвет рассеивания) и формы кривой блика. Форма кривой блика и результирующее сияние на поверхности существенно отличаются от получаемого при режиме затенения Phong (По Фонгу), хотя значение сияния остается тем же. Особенность раскраски по Штраусу состоит в возможности применения ее не только для имитации металлических поверхностей.



Anisotropic (Анизотропный) (рис. 3.9, а), Multi-Layer (Многослойный) (рис. 3.9, б) — позволяют имитировать несимметричные блики и управлять их ориентацией на поверхности материала. Данные типы тонированной раскраски характеризуются нерадиальным пятном светового блика. Многослойный тип тонирования может управлять двумя независимыми бликами разного цвета и интенсивности. Тонирование Anisotropic (Анизотропный) и Multi-Layer (Многослойный) могут применяться для имитации крашеных полированных поверхностей (покрытие автомобиля), стекла, волос и т. п.



Translucent Shader (Просвечивающийся) (рис. 3.10) — позволяет свету свободно проходить сквозь объект, создавая эффект полупрозрачности. Этот тип тони-

127

Материал типа Standard (Стандартный)

рования напоминает двусторонний эффект, когда подсветка задних граней отображается на передних. Он не имитирует рассеивание света в пределах объекта, поэтому может применяться для имитации тонких объектов (например, бумаги или матового стекла).

а

б

в

Рис. 3.7. Типы тонирования Blinn (По Блинну) (а), Oren-Nayar-Blinn (По Оурену — Найару — Блинну) (б) и Phong (По Фонгу) (в)

а

б

Рис. 3.8. Типы тонирования Metal (Металл) (а) и Strauss (По Штраусу) (б)

а

б

Рис. 3.9. Типы тонирования Anisotropic (Анизотропный) (а) и Multi-Layer (Многослойный) (б)

Рис. 3.10. Тип тонирования Translucent Shader (Просвечивающийся)

128

Глава 3. Материалы и текстуры

Дополнительные параметры Помимо основных, стандартные материалы обладают дополнительными параметрами, представленными в свитках Extended Parameters (Дополнительные параметры), SuperSampling (Сверхразрешение) и Dynamics Properties (Динамические свойства), — непрозрачностью, характеристикой каркаса, методом сглаживания и динамическими характеристиками материала. Свиток Extended Parameters (Дополнительные параметры) позволяет настраивать параметры трех областей (рис. 3.11): Advanced Transparency (Свойства прозрачности), Wire (Каркас) и Reflection Dimming (Ослабление зеркального отражения).

Рис. 3.11. Свиток Extended Parameters (Дополнительные параметры) стандартного материала

Переключатель Falloff (Спад) области Advanced Transparency (Свойства прозрачности) позволяет указать направление спада прозрачности: In (Внутрь) или Out (Наружу). Прозрачность регулируется параметром Amt (Степень). Изменение прозрачности используется на краях таких объектов, как стеклянная бутылка, мыльные пузыри, облака или туман.

Переключатель Type (Тип) позволяет задать способ отображения прозрачных материалов через канал цвета: Filter (Фильтрующий), Subtractive (Вычитающий) и Additive (Суммарный). Эти три типа взаимодействия цветовой составляющей, пропущенной через прозрачный материал, позволяют в первом случае получить максимально реалистичный эффект прозрачных материалов, во втором и третьем — специальные эффекты, такие как дым, луч прожектора или цветная тень. Параметр Index of Refraction (Коэффициент преломления) задает величину коэффициента преломления светового луча, проходящего через прозрачный материал. Параметр Size (Размер) области Wire (Каркас) позволяет задавать толщину сетки в режиме каркасного отображения объекта. Переключатель In (Внутри) этой же области определяет единицы измерения, в которых будет измеряться толщина данной сетки: 

Pixels (Пикселы) — в пикселах (толщина линии не меняется в зависимости от расстояния до камеры);



Units (Единицы) — в текущих единицах, установленных в программе (изменяется в зависимости от расстояния до камеры — с удалением уменьшается).

В области Reflection Dimming (Ослабление зеркального отражения) указываются характеристики ослабления блеска для карт зеркального отражения, находящихся в тени.

129

Создание сложных материалов

Свиток SuperSampling (Сверхразрешение) (рис. 3.12) позволяет выбрать один из четырех методов сглаживания изображений: Adaptive Halton (Адаптивный Хэлтона), Adaptive Uniform (Адаптивный равномерный), Hammersley (Хаммерсли) и Max 2.5 Star (Максимально 2,5 — звезда). Сглаживание краевых эффектов рассчитывается для каждого пиксела с учетом цвета соседних. При визуализации в программе 3ds Max происходит фильтрация краевых эффектов. Настройки свитка SuperSampling (Сверхразрешение) предоставляют дополнительный контроль над сглаживанием, позволяя улучшить выходное изображение. Применение этого метода требует дополнительного времени для расчетов и может замедлить процесс визуализации в несколько раз. Одним из случаев использования SuperSampling (Сверхразрешение) может быть применение при визуализации анимации для сглаживания эффекта «мельтешения», связанного с неоднородным отображением цвета пикселов в соседних кадрах. Свиток Dynamics Properties (Динамические свойства) позволяет настраивать характеристики стандартных материалов с учетом динамики для последующего применения их к объектам, участвующим в анимации (рис. 3.13).

Рис. 3.12. Свиток SuperSampling (Сверхразрешение)

Рис. 3.13. Свиток Dynamics Properties (Динамические свойства)

Можно настраивать следующие динамические характеристики: Bounce Coefficient (Коэффициент упругости), Static Friction (Статическое трение) и Sliding Friction (Трение скольжения).

Создание сложных материалов Хотя материал Standard (Стандартный) применяется наиболее часто, 3ds Max предоставляет возможность создавать различные сложные материалы, состоящие из двух или более стандартных материалов. В этом случае материал Standard (Стандартный) предназначен для комбинирования эффектов других материалов. Доступ к составным материалам можно получить, щелкнув на кнопке Type (Тип) в окне Material Editor (Редактор материалов). В результате откроется окно диалога Material/Map Browser (Окно выбора материалов и карт) со списком доступных материалов. Рассмотрим некоторые из них.

130

Глава 3. Материалы и текстуры

Top/Bottom (Верх/низ) Материал Top/Bottom (Верх/низ) позволяет назначить разные материалы верхней и нижней частям объекта. Какая часть объекта считается нижней, а какая — верхней, зависит от его ориентации относительно оси Z глобальной или локальной системы координат. Для доступа к материалу Top/Bottom (Верх/низ) примените следующие действия. 1.

Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).

2.

Выберите из списка материал Top/Bottom (Верх/низ). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

3.

Щелкните на кнопке OK. В области свитков окна Material Editor (Редактор материалов) появится свиток Top/Bottom Basic Parameters (Основные параметры материала «Верх/низ») (рис. 3.14), содержащий следующие настройки: •

кнопки Top Material (Материал верхней части) и Bottom Material (Материал нижней части) для загрузки материалов для верхней и нижней частей объекта; • кнопку Swap (Поменять), с помощью которой можно поменять местами материалы верхней и нижней частей; •

Рис. 3.14. Свиток Top/Bottom Basic Parameters (Основные параметры материала «Верх/низ»)

параметр Blend (Смешиваемый), задающий значение смешивания двух материалов на границе в пределах от 0 до 100;

• параметр Position (Положение), определяющий положение границы двух материалов (используется диапазон значений от 0 до 100, причем нулевое значение полностью закроет объект верхним материалом, а 100 — наоборот).

Blend (Смешиваемый) Материал Blend (Смешиваемый) позволяет смешивать два отдельных материала в определенном процентном соотношении. Он также включает возможность применения маски, управляющей тем, где происходит смешивание, и, следовательно, появление смесевого цвета. Для доступа к материалу Blend (Смешиваемый) выполните следующие действия. 1.

Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).

131

Создание сложных материалов

2.

Выберите из списка материал Blend (Смешиваемый). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

3.

Щелкните на кнопке OK. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Blend Basic Parameters (Основные параметры смешивания) (рис. 3.15).

4.

Настройте параметры смешивания материала:

Рис. 3.15. Свиток Blend Basic Parameters (Основные параметры смешивания)

1) щелкнув на одной из кнопок Material 1 (Материал 1) или Material 2 (Материал 2), выберите новый материал либо перейдите в режим редактирования существующего. В качестве материалов могут выступать как стандартные материалы, так и сложные составные; 2) установите или снимите флажки, расположенные справа от кнопок материалов, для активизации или деактивизации материалов; 3) установите переключатель Interactive (Интерактивный) напротив того материала, который должен быть показан в окне проекции; 4) нажав кнопку Mask (Маска), укажите в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) материал или файл растрового изображения, который будет использоваться для смешивания двух компонентов материала; 5) в счетчике Mix Amount (Доля в смеси) определите значение смешивания материалов-компонентов в диапазоне от 0 до 100. При значении, равном 0, будет виден только Material 1 (Материал 1), а при 100 — только Material 2 (Материал 2); 6) задайте плавность перехода одного материала в другой с помощью элементов области Mixing curve (Кривая смешивания).

Multi/Sub-Object (Многокомпонентный) Материал Multi/Sub-Object (Многокомпонентный) является одним из наиболее применяемых составных материалов. Он позволяет назначить объекту более одного материала на уровне грани посредством Material ID (Идентификатора материала). Для этих целей может использоваться модификатор Mesh Select (Выделение поверхности), c помощью которого на уровне подобъектов выделяются области, которым будут присваиваться различные материалы. Для доступа к материалу Multi/Sub-Object (Многокомпонентный) выполните следующие действия.

132

Глава 3. Материалы и текстуры

1.

Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).

2.

Выберите из списка материал Multi/Sub-Object (Многокомпонентный). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

3.

Щелкните на кнопке OK. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала) (рис. 3.16).

4.

Настройте параметры многокомпонентного материала: 1) щелкните на кнопке Set Number (Установить количество) и задайте в появившемся окне количество компонентов материала. Каждый компонент будет представлен образцом материала в левой части строки, а активный выделен прямоугольником; 2) щелкните на кнопке Add (Добавить) для добавления нового компонента или на кнопке Delete (Удалить), чтобы удалить выделенный в списке компонент; 3) при необходимости измените номер ID (Идентификатор материала), указав новое значение; 4) в текстовое поле Name (Имя) справа от номера компонента материала введите его имя; 5)

щелкните на кнопке Material # (Standard) (Материал № (стандартный)) для доступа к настройкам компонента. Вы можете редактировать существующий материал или назначить новый;

6) в поле образца цвета, расположенного справа от кнопки, измените, если нужно, цвет Diffuse (Цвет рассеивания) активного компонента; 7) для включения или выключения компонента из состава материала установите либо снимите его флажок в столбце On/Off (Включить/выключить).

Рис. 3.16. Свиток Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала)

Чтобы воспользоваться материалом Multi/ Sub-Object (Многокомпонентный), присвойте его объекту сцены, после чего примените к объекту модификатор Edit Mesh (Редактирование поверхности) (можно использовать любой способ доступа для

133

Создание сложных материалов

перехода в режим редактирования подобъектов). Выделите область объекта на уровне граней и в свитке Surface Properties (Свойства поверхности) выберите требуемый идентификатор или имя материала в раскрывающемся списке.

Matte/Shadow (Матовое покрытие/тень) Материал Matte/Shadow (Матовое покрытие/тень) применяется для создания специальных эффектов в сценах преимущественно с фоном в виде растрового изображения. Вы можете назначить этот материал, чтобы сделать невидимой часть объекта или чтобы объект мог принимать тени, оставаясь при этом невидимым. Эффект применения данного материала проявляется после визуализации объекта сцены, к которому он применен. Для создания материала Matte/Shadow (Матовое покрытие/тень) выполните следующие действия. 1.

Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт).

2.

Выберите из списка материал Matte/Shadow (Матовое покрытие/тень). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

3.

Щелкните на кнопке OK. В результате в области свитков окна Material Editor (Редактор материалов) появится свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) (рис. 3.17).

4.

В области Matte (Матовое покрытие) установите или снимите флажок Opaque Alpha (Непрозрачность в альфа-канале) в зависимости от того, хотите вы включить назначенной геометрии вывод альфа-канала визуализатора или нет.

5.

При необходимости установите флажок Apply Atmosphere (Применить атмосферные эффекты) в области Atmosphere (Атмосфера), чтобы использовать режим формирования атмосферной дымки применительно к объекту с матовым материалом. Настройки области Atmosphere (Атмосфера) интегрируют матовый объект в атмосферные эффекты. Если флажок установлен, то влияние атмосферы рассчитывается в зависимости от положения, в которое установлен переключатель: •

At Background Depth (На глубине фона) — влияние атмосферы не зависит от расстояния;

Рис. 3.17. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени)

134

Глава 3. Материалы и текстуры



At ObjectDepth (На глубине объекта) — расчет влияния атмосферы производится с учетом атмосферы.

6.

В области Shadow (Тень) установите флажок Receive Shadows (Принимать тени), чтобы материал мог принимать тени от других объектов сцены. При установке флажка Affect Alpha (Воздействовать на альфа-канал) будет формироваться изображение тени в альфа-канале выходного изображения, а параметр Shadow Brightness (Интенсивность тени) и образец цвета Color (Цвет) настраивают цвет и прозрачность тени.

Raytrace (Трассируемый) Материал Raytrace (Трассируемый) основан на методе визуализации, который рассчитывает растровое изображение с помощью трассировки лучей, проходящих через сцену. Эти лучи могут проходить через прозрачные объекты и отражаться от полированных поверхностей. В результате получается довольно реалистичное изображение, однако платой за качество становится увеличение времени, необходимого для визуализации, особенно если в сцене много источников света и материалов Raytrace (Трассируемый). Трассируемый материал поддерживает такие специальные эффекты, как Fog (Туман), Color Density (Плотность цвета), Translucency (Просвечивание) и Fluorescence (Флуоресценция). Для создания материала Raytrace (Трассируемый) выполните следующие действия. 1.

Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт). 2.

Рис. 3.18. Cвиток Raytraсe Basic Parameters (Основные параметры трассируемого материала)

Выберите из списка материал Raytrace (Трассируемый). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

3. Щелкните на кнопке OK. В результате в области свитков окна Material Editor (Редактор материалов) появятся свитки с параметрами редактирования трассируемого материала Raytrace Basic Parameters (Основные параметры трассируемого материала) (рис. 3.18), Extended Parameters (Дополнительные параметры), Raytracer Controls (Управление трассировкой) и SuperSampling (Сверхразрешение).

Создание сложных материалов

135

Свиток Raytrace Basic Parameters (Основные параметры трассируемого материала) включает часть описанных ранее параметров для стандартного материала, поэтому остановимся только на тех, которые соответствуют материалу Raytrace (Трассируемый). В отличие от стандартного материала, поля образца цвета (за исключением цвета Diffuse (Цвет рассеивания)) могут переключаться между образцом цвета и счетчиком значения, варьирующегося в диапазоне от 0 до 100, что соответствует белому и черному цветам. Переключение производится с помощью установки или снятия флажка, находящегося рядом с образцом цвета. Параметр Ambient (Цвет подсветки) отличается от одноименной настройки стандартного материала. Для материала Raytrace (Трассируемый) значение подсветки характеризует степень восприятия подсветки трассируемым материалом. Установка белого цвета аналогична блокировке цветов Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) в стандартном материале. Цвет Reflect (Отражение) управляет отражательной способностью материала. Белый материал будет соответствовать 100 % величины отражения, в то время как черный материал совсем не будет генерировать отражения. При использовании цвета, отличного от черно-белого, последний будет добавляться к отражениям, изменяя их цветовой тон. Образец цвета Luminosity (Светимость), подобно параметру Self-Illumination (Собственное свечение) стандартного материала, вызывает эффект свечения материала цветом образца. Снятие флажка вызывает смену названия на Self-Illum (Собственное свечение) и появление счетчика для настройки собственного свечения в диапазоне от 0 до 100. Параметр Transparency (Прозрачность) устанавливает фильтрацию цвета, проходящего через прозрачный материал (аналогичен комбинации Filter (Фильтрующий) и Opacity (Непрозрачность) стандартного материала). При использовании белого цвета материал полностью прозрачный и, наоборот, при черном — полностью непрозрачный. В нижней части свитка Raytrace Basic Parameters (Основные параметры трассируемого материала) располагаются параметры двух карт — Environment (Окружающая среда) и Bump (Рельефность). Они также представлены в свитке Maps (Карты текстур): 

Environment (Окружающая среда) — предназначена для замены карты текстуры окружающей среды, назначенной в окне Environment and Effects (Окружающая среда и эффекты); используется для формирования зеркального отражения и цвета прозрачности (карта окружающей среды видна только тогда, когда ее значение не равно 0);



Bump (Рельефность) — применяется в качестве карты выдавливания.

Свиток Extended Parameters (Дополнительные параметры) (рис. 3.19) содержит настройки специальных эффектов материала Raytrace (Трассируемый).

136

Глава 3. Материалы и текстуры

Параметр Extra Lighting (Дополнительное освещение) усиливает эффект подсветки за счет рассеянного света другими объектами сцены. Используется для усиления влияния цвета соседних объектов, имитируя Radiosity (Диффузное отражение) (например, белая тарелка на синей скатерти приобретет голубоватый оттенок).

Рис. 3.19. Свиток Extended Parameters (Дополнительные параметры)

Настройка параметра Translucency (Просвечивание) позволяет свету проходить сквозь объект, представляя собой результат ненаправленного диффузного рассеивания. Этот эффект можно использовать, например, для имитации воска горящей свечи.

C помощью настройки параметра Fluorescence (Флуоресценция) можно задать эффект флуоресцентного свечения материала. Значение параметра Fluor. Bias (Флуоресцентное смещение) контролирует силу эффекта в диапазоне от 0 до 1. Область Advanced Transparency (Улучшенная прозрачность) позволяет настроить эффекты прозрачности материала. 

Transp. (Окружающая среда для прозрачности) — устанавливает карту окружающей среды применительно к эффекту преломления фона в прозрачном материале.



Density Color (Плотность цвета) и Density Fog (Плотность тумана) — однотипные параметры, позволяющие настроить свойства цвета в среде прозрачного объекта или тумана. Параметры Start (Начало) и End (Конец) задают ближнюю и дальнюю границы внутри объекта, а Amount (Величина) — величину силы эффекта. Данные настройки можно применять для создания эффекта дымчатого стекла. В области Reflections (Отражения) можно настроить параметры отражений, указав тип эффекта отражения: Default (Исходный) или Additive (Суммарный). Значение параметра Gain (Поглощение) задает яркость зеркальных отражений в диапазоне от 0 до 1.

Рис. 3.20. Свиток Raytracer Controls (Управление трассировкой)

Свиток Raytracer Controls (Управление трассировкой) (рис. 3.20) позволяет оптимизировать алгоритм трассировки с целью уменьшения времени визуализации конечного изображения.

Использование текстурных карт

137

Область Local Options (Локальные параметры) содержит настройки, позволяющие управлять включением/выключением трассировки — Enable Raytracing (Включить трассировку), атмосферных эффектов — Raytrace Atmospherics (Атмосферные эффекты трассировки), самоотражения и самопреломления материала — Enable Self Reflect/Refract (Включить самоотражение и самопреломление материала), а также отражением и преломлением применительно к каналам G-буфера (Reflect/Refract Material IDs (Отражение/преломление идентификатора материала)). C помощью настроек области Raytracer Enable (Разрешить трассировку) можно разрешить или запретить преломление или отражение применительно к данному материалу. Кнопка Local Exclude (Локальное исключение) служит для вызова окна, позволяющего указать объекты, которые не будут участвовать в обработке трассировщиком применительно к данному материалу. Параметр Bump Map Effect (Действие карты рельефа) определяет степень влияния карты рельефа на трассируемые эффекты отражения и преломления. Область Ray Antialiasing Globally (Сглаживание отражений и преломлений при трассировке) служит для включения сглаживания, а из раскрывающегося списка можно выбрать один из алгоритмов сглаживания.

Использование текстурных карт Понятие о текстурных картах Использование текстурных карт — еще один способ улучшения визуализации объектов. В 3ds Max текстурные карты представляют собой растровые изображения, назначаемые поверхностям объектов. Одни карты накладываются на объект как рисунок, другие (например, Bump (Рельефность) или Raytrace (Трассируемый)) — служат для изменения отображения поверхности, учитывая только интенсивность, считая конечные цвета оттенками серого. Двенадцать каналов проецирования, расположенных в свитке Maps (Карты текстур) окна стандартного материала, являются отправными точками для совершенствования его вида. Можно манипулировать, комбинировать, ответвлять текстурные карты множеством способов, заставляя даже простые поверхности выглядеть сложными и насыщенными. Умелое применение текстурных карт может сделать модель предельно реалистичной. Поскольку канал проецирования может ветвиться достаточно глубоко, способ интерпретации результатов ветвления изменяется в зависимости от различных каналов. Результат канала оценивается в цвете RGB и интенсивности оттенков серого. Помните, что растровые карты, применяемые в каналах проецирования, оказывают значительную нагрузку на оперативную память. На один пиксел 24-разрядная карта цвета требует 3 байта памяти, то есть при разрешении 3072 Ч 2048 формата Kodak

138

Глава 3. Материалы и текстуры

CD-ROM изображение будет использовать 25 Мбайт оперативной памяти. Если при этом растровая карта использует фильтрацию (а этот параметр применяется практически всегда), появляются дополнительные затраты по 1 байту на пиксел при Pyramidal (Пирамидальная фильтрация) и 12 байт на пиксел при Summed Area (Площадное усреднение) фильтрации. СОВЕТ Для каналов, основанных на использовании интенсивности растровых изображений, таких как Self-Illumination (Собственное свечение), Opacity (Непрозрачность), Bump (Рельефность) и др., необходимо использовать карты в оттенках серого. Это позволит не только более правильно использовать канал проецирования, но и сократить на треть загрузку оперативной памяти.

Проекционные координаты Проекционные координаты применяются для указания того, как будет отображаться на поверхности объекта карта текстуры. Они используют пространство координат UVW, где U — горизонтальное направление, V — вертикальное, а W — глубина. Координаты проецирования растровых карт UVW представляют пропорции соответствующих карт. В координатах UVW подсчитывается приращение растровой карты без ссылки на ее явные размеры. Оси U и V пересекаются в центре растровой карты и определяют центр UV-координат. Центр координат является точкой, вокруг которой вращается карта при настройке значения параметра Angle (Угол) для типа карты Bitmap (Растровое изображение). При моделировании почти все примитивы в свитке настроек Parameters (Параметры) содержат параметр Generate Mapping Coords. (Генерировать координаты проецирования), который присваивает объектам проекционные координаты. Например, для примитива Box (Параллелепипед) проекционные координаты присваиваются каждой грани. Когда проецирование генерируется параметрически, мозаичность и ориентация настраиваются только c помощью параметров материала, назначенного поверхности. В качестве альтернативы может применяться модификатор UVW Map (UVWпроекция), использование которого предоставляет возможность независимого управления проекцией отображения, расположением, ориентацией и мозаичностью текстуры. Присвоение и контроль над проекционными координатами осуществляются различными способами: от присвоения модификаторов, таких как UVW Map (UVW-проекция) или Unwrap UVW (Расправить UVW-проекцию), до использования подключаемых модулей и самостоятельных программ. Как и большинство модификаторов 3ds Max, модификаторы проецирования оказывают влияние на все, что им передается в стеке модификаторов. Если активная

Использование текстурных карт

139

выборка содержит грани, то проецирование присваивается только выборке подобъектов граней. Такая возможность позволяет смешивать типы проекций отображения и помещать отображение в нескольких местах одного и того же объекта.

Проецирование c помощью модификатора UVW Map (UVW-проекция) Модификатор UVW Map (UVW-проекция) позволяет назначить объекту проекционные координаты для последующего наложения текстурных карт и управления их положением в пространстве. Для присвоения объекту модификатора UVW Map (UVW-проекция) в любом окне проекции выделите объект, которому будет назначен модификатор. Выполните команду ModifiersUV CoordinatesUVW Map (МодификаторыUV-координатыUVW-проекция). В результате в стек модификаторов добавится модификатор UVW Map (UVW-проекция), а в поле свитков появятся его настройки (рис. 3.21). В окнах проекций вокруг выделенного объекта отобразится оранжевый габаритный контейнер Гизмо, отображающий тип проецирования и его размеры. Рассмотрим основные настройки модификатора UVW Map (UVWпроекция). 

В области Mapping (Проекция) представлены семь типов проецирования: •

Planar (Плоская) — применяется для проецирования растровых карт на плоские поверхности объектов;



Cylindrical (Цилиндрическая) — используется для объектов, форма которых вписывается в цилиндр; текстурные координаты охватывают объект по форме цилиндра, замыкаясь в месте шва габаритного контейнера;



Spherical (Сферическая) — габаритный контейнер охватывает объект в виде сферы; применяется для объектов круглой формы (мяч, шар, глобус);



Shrink Wrap (Облегающая) — подобно сферическому проецированию имеет габаритный контейнер в виде сферы, но при этом только одну точку соединения текстуры;



Box (Прямоугольные трехмерные) — задает прямоугольное проецирование текстуры габаритным контейнером в форме параллелепипеда; лучше всего подходит для текстурирования объектов, имеющих форму коробки;



Face (Грань) — проецирование происходит отдельно по каждой грани и может служить для создания повторяющегося узора на поверхности объекта;

Рис. 3.21. Свиток Parameters (Параметры) настроек модификатора UVW Map (UVW-проекция)

140

Глава 3. Материалы и текстуры



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 (Получить).



C помощью переключателя Display (Отображение) можно выбрать способ показа швов граней, отображаемых на уровне подобъектов Gizmo (Габаритный контейнер).

Двумерные карты текстур Двумерные карты названы так из-за того, что они не имеют глубины (только координаты UV). Такие карты применяются для наложения на поверхность объектов или в качестве карт окружающей среды. Наиболее распространенными являются карты Bitmap (Растровое изображение), Checker (Шахматная текстура), Gradient Ramp (Усовершенствованный градиент) и Gradient (Градиент).

Bitmap (Растровое изображение) Текстурная карта Bitmap (Растровое изображение) — наиболее применяемый тип текстуры. Растровая (или битовая) карта представляет собой файлы изображения, сохраненные в одном из форматов растровой графики. Программа 3ds Max поддерживает практически все популярные форматы. Чаще всего текстурная карта Bitmap (Растровое изображение) применяется для замещения цвета рассеивания или в качестве карты выдавливания. Настройка параметров карты Bitmap (Растровое изображение) производится в следующих свитках окна Material Editor (Редактор материалов): Coordinates (Координаты), Noise (Шум), Bitmap Parameters (Параметры растрового изображения), Time (Время) и Output (Результат). Свиток Coordinates (Координаты) (рис. 3.22), аналогично области Mapping (Проекция) модификатора UVW Map (UVW-проекция), применяется для задания способа отображения карты текстуры на поверхности объекта. В нем вы можете настроить следующие параметры отображения. 

В верхней части свитка установить переключатель в одно из двух положений: Texture (Текстура) или Environ (Фон) в зависимости от варианта проецирования.

Использование текстурных карт

141

В первом случае текстура применяется для отображения на поверхности объекта, во втором — для имитации эффектов окружающей среды (отражения и преломления). 

В зависимости от того, какой выбран вариант проецирования (Texture (Текстура) или Environ (Фон)), в раскрывающемся списке можно выбрать один из вариантов проекционных координат:

Рис. 3.22. Свиток Coordinates (Координаты) настроек карты Bitmap (Растровое изображение)



при 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 (Повторить) для зеркального отражения карты и изменения режима повторяемости.



C помощью параметра Angle (Угол) указать в градусах угол поворота карты по осям U, V и W. Щелкнув на кнопке Rotate (Вращение), повернуть карту интерактивно в появившемся окне Rotate Mapping Coordinates (Вращение проекционных координат).



При необходимости установить значение размытия карты, используя параметры Blur (Размытие) и Blur offset (Сдвиг размытия).



Установить переключатель в положение, соответствующее плоскости проецирования координат — UV, VW или WU.

Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение) позволяет вносить в текстурную карту некоторые элементы неоднородности для придания ей большей реалистичности (рис. 3.23). В свитке Noise (Шум) настроек карты Bitmap (Растровое изображение) можно настроить следующие параметры: 

установить флажок On (Включить) для включения режима искажения текстуры;

Рис. 3.23. Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение)

142

Глава 3. Материалы и текстуры



используя параметр Amount (Величина), задать величину воздействия шума на текстурную карту;



c помощью параметра Levels (Уровни) установить количество циклов алгоритма случайных искажений;



используя параметр Size (Размер), задать размер искажений;



установив флажок Animate (Анимация), включить режим анимации искажений;



задать c помощью параметра Phase (Фаза) скорость изменения фаз шума при анимации.

Свиток Bitmap Parameters (Параметры растрового изображения) настроек карты Bitmap (Растровое изображение) позволяет загрузить карту текстуры в состав материала и управлять параметрами ее отображения (рис. 3.24). C помощью свитка Bitmap Parameters (Параметры растрового изображения) можно настроить следующие параметры. 

При щелчке на кнопке рядом с Bitmap (Растровое изображение) в верхней части свитка откроется окно, с помощью которого можно выбрать файл растрового изображения с жесткого диска или другого носителя.



Переключатель Filtering (Фильтрация) имеет три положения: •

Рис. 3.24. Свиток Bitmap Parameters (Параметры растрового изображения) настроек карты Bitmap (Растровое изображение)

Pyramidal (Пирамидальная фильтрация) — такая фильтрация применяется для текстурных карт по умолчанию; при такой фильтрации на каждый пиксел текстурной карты требуется дополнительно 1 байт оперативной памяти;



Summed Area (Площадное усреднение) — более качественный алгоритм сглаживания и требующий значительных затрат памяти — 12 байт на пиксел;



None (Отсутствует) — без фильтрации.



Область Cropping/Placement (Обрезка/размещение) позволяет вырезать из растрового изображения часть, которая будет применяться для текстурирования. Для этого вызывается окно интерактивного редактора или значения задаются в соответствующих полях.



В области Mono Channel Output (Результат в моноканал) при необходимости можно указать, какие значения цветовых каналов будут использоваться: RGB Intensity (Интенсивность RGB) или Alpha (Альфа-канал).

143

Использование текстурных карт 

Переключатель Alpha Source (Альфа-канал) содержит три положения: Image Alpha (Альфа-канал изображения), RGB Intensity (Интенсивность RGB) или None (Opaque) (Отсутствует (прозрачный)).



Переключатель RGB Channel Output (Выход в цвет) используется для указания формирования цвета растровой карты. Он может быть установлен в одно из двух положений: •

RGB — цвет будет воспроизводиться полностью;



Alpha as Gray (Градации серого из альфа-канала) — альфа-канал будет отображаться градациями серого тона.

Свиток Time (Время) настроек карты Bitmap (Растровое изображение) позволяет задавать временные рамки и способ анимации текстурной карты (рис. 3.25). Свиток Time (Время) содержит следующие настройки: 

Start Frame (Начальный кадр) — задает кадр, с которого начнется анимация текстуры;



Playback Rate (Темп воспроизведения) — устанавливает скорость воспроизведения анимации;



переключатель End Condition (Условие завершения) имеет три положения: Loop (Петля), Ping Pong (Вперед-назад) и Hold (Зафиксировать).

Рис. 3.25. Свиток Time (Время) настроек карты Bitmap (Растровое изображение)

Свиток Output (Результат) настроек карты Bitmap (Растровое изображение) управляет выходным изображением текстурной карты (рис. 3.26). Свиток Output (Результат) содержит среди прочего следующие параметры: 

Invert (Инвертировать) — изменяет цвета на противоположные, то есть получается негативное изображение;



Clamp (Ограничить яркость) — ограничивает яркость цветовых отсчетов при настройке параметра RGB Level (Уровень RGB);



Output Amount (Выходное значение) — задает долю карты в составе материала;

Рис. 3.26. Свиток Output (Результат) настроек карты Bitmap (Растровое изображение)

144

Глава 3. Материалы и текстуры



RGB Level (Уровень RGB) — управляет насыщенностью цвета текстурной карты;



Bump Amount (Величина рельефа) — позволяет усилить профиль рельефа выдавливания при использовании текстурной карты в канале Bump (Рельефность).

Checker (Шахматная текстура) Процедурная карта Checker (Шахматная текстура) представляет собой узор в виде шахматного поля, состоящего из двух настраиваемых цветов. Кроме рассмотренных ранее свитков Coordinates (Координаты) и Noise (Шум), карта Checker (Шахматная текстура) содержит дополнительный свиток Checker Parameters (Параметры шахматной текстуры) (рис. 3.27). Рис. 3.27. Свиток Checker Parameters (Параметры шахматной текстуры) настроек карты Checker (Шахматная текстура)

Для настройки параметров карты Checker (Шахматная текстура) выполните следующие действия.

1.

C помощью параметра Soften (Размытие) укажите значение размытия границы между соседними клетками разных цветов.

2.

При необходимости измените цвет клеток, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета).

3.

Чтобы вместо цвета использовать карту текстуры, щелкните на одной из кнопок под надписью Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка необходимую карту.

4.

Щелкнув на кнопке Swap (Поменять), поменяйте при необходимости местами цвета или карты текстур шахматного поля.

Gradient Ramp (Усовершенствованный градиент) Процедурная карта Gradient Ramp (Усовершенствованный градиент) позволяет использовать произвольное количество цветов для настройки градиента. Кроме рассмотренных ранее свитков, общих для многих текстурных карт, Gradient Ramp (Усовершенствованный градиент) содержит свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) (рис. 3.28). Для настройки параметров карты Gradient Ramp (Усовершенствованный градиент) выполните следующие действия. 1.

В верхней части свитка настройте отображение цветов градиента на цветовой шкале. Для этого дважды щелкните на требуемом ползунке, чтобы вызвать окно диалога Color Selector (Выбор цвета). Для создания нового ползунка щелкните на поле цвета и переместите ползунок в нужное место. Для удаления — перетащите ползунок в правый угол и после появления значка корзины отпустите кнопку мыши.

Использование текстурных карт

2.

В раскрывающемся списке Gradient Type (Тип градиента) выберите один из типов градиента, а в списке Interpolation (Интерполяция) — один из шести вариантов перетекания цвета между соседними ползунками цветовой шкалы.

3.

Область Noise (Шум) позволяет внести искажения в градиентную заливку. Вы можете выбрать один из трех алгоритмов генерации шума: Regular (Повторяющийся), Fractal (Фрактальный) или Turbulence (Турбулентный).

4.

Задайте величину и размер шума градиентной текстуры с помощью параметров Amount (Величина) и Size (Размер).

145

Рис. 3.28. Свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) настроек карты Gradient Ramp (Усовершенствованный градиент)

Трехмерные карты текстур Трехмерные карты текстур — это процедурные карты, которые генерируются программно и используют в просчетах три измерения: U, V и W. В отличие от растровых изображений процедурные карты требуют значительно меньше оперативной памяти, но увеличивают время расчетов при конечной визуализации сцены. К данному типу относятся Cellular (Ячейки), Dent (Вмятины), Falloff (Спад), Noise (Шум), Smoke (Дым), Stucco (Штукатурка), Waves (Волны), Wood (Дерево) и др.

Dent (Вмятины) Процедурная карта Dent (Вмятины) позволяет создать на поверхности объектов случайные пятна и вмятины. Может применяться для создания шероховатых и помятых поверхностей. Кроме свитка Coordinates (Координаты), рассмотренного ранее, карта Dent (Вмятины) содержит свиток Dent Parameters (Параметры вмятин) (рис. 3.29). Для настройки параметров карты Dent (Вмятины) выполните следующие действия. 1.

Используя параметр Size (Размер), установите относительный размер пятен.

Рис. 3.29. Свиток Dent Parameters (Параметры вмятин) настроек карты Dent (Вмятины)

146

Глава 3. Материалы и текстуры

2.

C помощью параметра Strength (Сила воздействия) задайте количество пятен, которое будет отображаться на поверхности материала.

3.

Используя параметр Iterations (Количество итераций), укажите количество итераций фрактального алгоритма расчета пятен.

4.

При необходимости измените цвет пятен, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета).

5.

Чтобы вместо цвета использовать карту текстуры, щелкните на кнопке в области Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка необходимую карту.

6.

Щелкнув на кнопке Swap (Поменять), при необходимости поменяйте местами цвета или карты текстур.

Falloff (Спад) Процедурная карта Falloff (Спад) чаще всего применяется для материалов, имеющих прозрачность или отражения, для задания неоднородности проявления этих эффектов. Управление параметрами карты осуществляется с помощью свитков Falloff Parameters (Параметры спада) (рис. 3.30), а также свитка Output (Результат), рассмотренного ранее, и свитка Mix Curve (Кривая смешивания). Для настройки карты Falloff (Спад) выполните следующие действия. 1.

В раскрывающемся списке Falloff Type (Тип спада) выберите один из пяти типов спада: Toward/Away (На наблюдателя/от наблюдателя), Perpendicular/Parallel (Перпендикулярно/параллельно), Fresnel (По Френелю), Shadow/Light (Тень/ свет) и Distance Blend (Расстояние смешивания). 2. При необходимости измените цвет составляющих спада, щелкнув на образце цвета и настроив его в окне Color Selector (Выбор цвета).

Рис. 3.30. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)

3.

В полях рядом с образцом цвета установите значение величины участия каждой составляющей в конечном расчете.

4.

При необходимости замените цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсутствует) и в появившемся окне диалога Material/Map Browser (Окно выбора материалов и карт) выберите необходимую карту.

5. Настройте дополнительные параметры, вызываемые отдельными типами спада, в нижней части окна.

147

Использование текстурных карт

В свитке Mix Curve (Кривая смешивания) (рис. 3.31) можно вручную настроить кривую, характеризующую параметр смешивания двух составляющих карты Falloff (Спад). Данная кривая часто применяется для управления спадом прозрачности на краях стеклянных объектов.

Noise (Шум) Текстурная карта Noise (Шум) позволяет генерировать бесконечно большие случайные переходы (шум) между двумя цветами или материалами. Применение этой карты в каналах Diffuse (Цвет рассеивания), Ambient (Цвет подсветки) и Bump (Рельефность) позволяет повысить реалистичность моделей за счет создания неоднородности материала. Настройки карты Noise (Шум) находятся в трех свитках: Coordinates (Координаты), Output (Результат) (рассмотрены выше) и Noise Parameters (Параметры шума) (рис. 3.32). Для настройки параметров карты Noise (Шум) выполните следующие действия.

Рис. 3.31. Свиток Mix Curve (Кривая смешивания) настроек карты Falloff (Спад)

Рис. 3.32. Свиток Noise Parameters (Параметры шума) настроек карты Noise (Шум)

1.

Установите переключатель, задающий тип генерации случайного шума, в одно из положений: Regular (Повторяющийся), Fractal (Фрактальный) или Turbulence (Турбулентный).

2.

C помощью параметров High (Верхнее значение) и Low (Нижнее значение) области Noise Threshold (Порог уровня шума) задайте верхнее и нижнее пороговые значения, при которых изменяется уровень краевых сглаживаний цветовых пятен.

3.

Используя параметр Levels (Уровени), задайте значение плотности цветовых пятен для фрактального и турбулентного типов генерации шума.

4.

В поле Phase (Фаза) установите значение скорости изменения фаз шума во время анимации.

5.

С помощью параметра Size (Размер) определите размер цветовых пятен на поверхности материала.

6.

При необходимости измените цвет составляющих карты шума, щелкнув на образце цвета и настроив его в появившемся окне Color Selector (Выбор цвета).

7.

В области Maps (Карты текстур) при желании можно заменить цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсутствует)

148

Глава 3. Материалы и текстуры

и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите необходимую карту.

Stucco (Штукатурка) Текстурная карта Stucco (Штукатурка), подобно карте Noise (Шум), позволяет создавать на поверхности материала неровности. Однако эти неровности имеют по сравнению с Noise (Шум) другую структуру, напоминающую оштукатуренную поверхность или кожуру цитрусовых. Параметры текстуры Stucco (Штукатурка) содержатся в двух свитках: Coordinates (Координаты) и Stucco Parameters (Параметры штукатурки) (рис. 3.33). Рис. 3.33. Свиток Stucco Parameters (Параметры штукатурки) настроек карты Stucco (Штукатурка)

Для настройки параметров текстуры Stucco (Штукатурка) выполните следующие действия.

1.

C помощью параметра Size (Размер) укажите размер неровностей.

2.

Используя параметр Thickness (Толщина), задайте степень размытия границы цветовых составляющих.

3.

С помощью параметра Threshold (Порог) настройте долю участия каждого цвета в итоговой составляющей материала.

Параметры и назначение цветов и кнопок области Maps (Карты текстур) аналогичны рассмотренным ранее.

Составные карты текстур Составные карты текстур предназначены для объединения нескольких текстур в одну новую, сложную, текстуру. К таким картам относятся Composite (Составная), Mask (Маска), Mix (Смешивание) и RGB Multiply (RGB-умножение). Рассмотрим некоторые типы составных карт.

Composite (Составная)

Рис. 3.34. Свиток Composite Parameters (Параметры составной) настроек карты Composite (Составная)

Составная текстура Composite (Составная) образуется путем смешивания двух и более текстурных карт c помощью прозрачности с альфа-каналом и без него. В текущей версии программы данная карта претерпела существенные изменения. Сейчас для настройки карты используются параметры свитка Composite Layers (Параметры слоев) (рис. 3.34).

Использование текстурных карт

149

Для создания нового слоя карты Composite (Составная) щелкните на кнопке Add a New Layer (Добавить новый слой), расположенной справа от счетчика Total Layers (Общее количество слоев). Для удаления существующего слоя необходимо воспользоваться кнопкой Delete this layer (Удалить текущий слой), расположенной в свитке удаляемого слоя. Для выбора текстуры щелкните на кнопке с надписью None (Отсутствует), расположенной в левой части редактируемого слоя, и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите необходимую карту. При желании можно выключить карту из просчетов, щелкнув на кнопке Hide this layer (Спрятать данный слой), расположенной слева от карты. Кнопка с надписью None (Отсутствует), расположенная в правой части редактируемого слоя, предназначена для выбора карты из окна Material/Map Browser (Окно выбора материалов и карт), которая будет служить маской текстурной карте. ПРИМЕЧАНИЕ На самом деле в левой части свитка редактируемого слоя вы можете использовать не только текстурную карту, но и любую другую подходящую для ваших целей карту из окна Material/Map Browser (Окно выбора материалов и карт).

Чтобы указать способ смешивания используемых слоев, выберите из раскрывающегося списка Blending mode (Способ смешивания) один из возможных вариантов: Normal (Стандартный), Multiply (Усиление), Average (Усреднение), Subtract (Вычитание) и др. По обе стороны каждого слоя расположены кнопки Color Correct This Texture (Правка цвета текущей текстуры) и Color Correct This Mask (Правка цвета текущей маски), с помощью которых вы можете при необходимости получить доступ к карте Color Correction (Коррекция цвета). Она позволяет внести изменение в яркость, контрастность, баланс цвета, насыщенность, а также дает возможность манипулировать отдельными цветовыми каналами редактируемого изображения. Кроме того, вы можете переименовать текущий слой (Rename thes layer), дублировать его (Duplicate thes layer), используя соответствующие кнопки, или изменить степень прозрачности с помощью счетчика Opacity (Непрозрачность).

Mask (Маска) Составная текстурная карта Mask (Маска) позволяет перекрывать часть одной текстуры за счет другой. Белые области карты маски позволяют видеть исходный образ, черные области блокируют его, а серые области обеспечивают пропорциональную видимость. Настройка карты Mask (Маска) осуществляется с помощью единственного свитка Mask Parameters (Параметры маски) (рис. 3.35).

Рис. 3.35. Свиток Mask Parameters (Параметры маски) настроек карты Mask (Маска)

150

Глава 3. Материалы и текстуры

Настройте компонент Map (Карта текстуры). Для этого щелкните на кнопке None (Отсутствует) и выберите его из списка открывшегося окна Material/Map Browser (Окно выбора материалов и карт). Эта карта станет той текстурой, которая будет видна на материале. Для выбора карты маски, которая скроет все лишнее, щелкните на кнопке рядом с надписью Mask (Маска). Действие маски основано на том, что все черные пикселы изображения считаются прозрачными, а все белые — непрозрачными. Градации серого интерполируются между полной прозрачностью и непрозрачностью. Флажок Invert Mask (Инвертировать маску) позволяет поменять местами прозрачные и непрозрачные области изображения.

Mix (Смешивание) Составная текстурная карта Mix (Смешивание) позволяет смешивать два цвета или две текстуры c помощью третьей текстуры, выступающей в роли маски, или используя процентное соотношение каждого компонента в итоговом материале. Для настройки карты Mix (Смешивание) используется свиток Mix Parameters (Параметры смешивания) (рис. 3.36). Параметры Color #1 (Цвет 1) и Color #2 (Цвет 2) задают цвет компонентов карты. При необходимости в области Maps (Карты текстур) можно выбрать две карты текстур для основного цвета и третью карту, которая будет играть роль маски для смешивания двух первых. Рис. 3.36. Свиток Mix Parameters (Параметры смешивания) настроек карты Mix (Смешивание)

Параметр Mix Amount (Доля в смеси) определяет долю каждой карты в итоговом изображении.

Область Mixing curve (Кривая смешивания) позволяет управлять кривой смешивания двух карт.

Глава 4.

Анимация в среде 3ds Max 2009 • Анимация с использованием ключевых кадров • Использование контроллеров и выражений • Анимация частиц

Анимацию можно представить как последовательность сменяющих друг друга изображений. В среде 3ds Max 2009 практически каждый объект и почти все его параметры можно анимировать. Анимации могут подвергаться не только объекты и их параметры, но и модификаторы, материалы, контроллеры и многое другое. В данной главе вы познакомитесь с основами создания анимации и инструментами управления ее параметрами. Базовые знания, полученные в этой главе, пригодятся вам для работы с упражнениями, представленными во второй части данного издания, и для создания собственных анимационных роликов.

Анимация с использованием ключевых кадров Анимация с использованием ключевых кадров является базовой. Она позволяет понять принцип работы всего механизма создания движущихся образов. Как уже говорилось выше, почти любой параметр объекта (объектами в 3ds Max являются не только параметрические объекты, но и камеры, источники света, модификаторы и даже материалы), имеющий численное значение, можно сделать ключевым, то есть анимировать. Суть использования ключевых кадров заключается в создании ключей анимации для начального и конечного положения объекта, при этом состояние объекта в промежуточных стадиях просчитывает компьютер. Рассмотрим некоторые термины, которыми мы будем оперировать в дальнейшем. 

Ключ (Key) — маркер, задающий значения анимируемых параметров в определенный момент.



Ключевой кадр (Keyframe) — кадр, содержащий ключ анимации.



Автоключ (Auto Key) — функция, отслеживающая изменения анимируемых параметров объекта и позволяющая автоматически создавать ключевой кадр.



Ползунок таймера анимации — элемент интерфейса программы, дающий возможность вручную устанавливать текущий кадр анимации, переходить к предыдущему или следующему кадру, а также создавать ключевые кадры для параметров положения, масштабирования и поворота.



Строка треков (Track Bar) — элемент интерфейса, позволяющий получить быстрый доступ к ключам выделенного объекта.



Кривая функции (Function Curve), или анимационная кривая, — графически отображает значения анимации в ключах и интерполированные значения между ключами. Настраивается редактированием положения манипуляторов Безье в окне Track View — Curve Editor (Просмотр треков — редактор кривых).

Прежде чем вы выполните свою первую анимацию, давайте рассмотрим инструменты создания анимации методом ключевых кадров и управления анимацией, представленные в программе 3ds Max.

Анимация с использованием ключевых кадров

153

Средства управления анимацией сосредоточены в нижнем правом углу окна программы и, кроме указанной группы, включают в себя ползунок таймера, расположенный над строкой треков. Средства управления анимацией состоят из нескольких кнопок. Go to Start (Перейти в начало) — делает первый кадр анимации текущим. Previous Frame (Предыдущий кадр) — выполняет переход к предыдущему кадру анимации. Play Animation (Воспроизвести анимацию) — запускает воспроизведение анимации в активном окне проекции. После запуска анимации кнопка меняется на Stop Animation (Остановить анимацию), щелчок на которой прекращает воспроизведение анимации. Next Frame (Следующий кадр) — выполняет переход к следующему кадру анимации. Go to End (Перейти в конец) — делает последний кадр анимации текущим. Key Mode Toggle (Режим ключей) — переходит в режим отслеживания ключей анимации. При этом кнопки Previous Frame (Предыдущий кадр) и Next Frame (Следующий кадр) изменяются на Previous Key (Предыдущий ключ) и Next Key (Следующий ключ). Щелчок на одной из этих кнопок позволяет перейти к следующему или предыдущему ключу анимации выделенного объекта. Current Frame (Текущий кадр) — отображает номер текущего кадра. Кроме того, если в поле счетчика ввести требуемый номер кадра или время, то можно быстро перейти к этому кадру. Time Configuration (Настройка временных интервалов) — вызывает одноименное окно, позволяющее задавать временные диапазоны, характер отображения времени, а также частоту кадров в секунду (fps). Создать анимацию с использованием ключевых кадров можно различными способами. Самый простой — автоматическая запись ключей анимации. Для этого применяются средства создания анимации, расположенные слева от рассмотренных выше кнопок управления анимацией. В эту группу входят следующие кнопки. Set Keys (Установить ключи) — создает ключ анимации для выделенного объекта в текущем кадре. В отличие от автоматического создания ключей с использованием кнопки Auto Key (Автоключ), вы можете контролировать то, какие именно ключи буду созданы (это задается c помощью фильтра Set Key Filters (Установить фильтры ключа)). Для использования этого режима должна быть нажата кнопка Toggle Set Key Mode (Переключатель режима установки ключей). Toggle Auto Key Mode (Переключатель режима автоматической записи ключей) — включает/выключает режим автоматического создания ключей анимации для выделенного объекта сцены в текущем кадре. В этом режиме записываются любые трансформации (перемещение, поворот, масштабирование), а также параметры, которые в принципе можно анимировать. При нажатии кнопки

154

Глава 4. Анимация в среде 3ds Max 2009

автоматической записи ключей будьте внимательны, так как можно случайно записать ненужные ключи. Не забывайте сразу же после записи необходимой анимации отключать режим автоматической записи ключей, повторно нажав кнопку Toggle Auto Key Mode (Переключатель режима автоматической записи ключей). Selection Sets drop-down list (Список именованных выделений) — раскрывает список с именованными выделениями, созданными c помощью Named Selection Sets (Название выделенной области), к которым будут применяться ключи анимации. По умолчанию анимация применяется только к выделенным объектам. Toggle Set Key Mode (Переключатель режима установки ключей) — включает либо выключает режим, при котором будут записываться только те ключи, которые указаны в окне Set Key Filters (Установить фильтры ключа). Default In/Out Tangents for New Keys (Исходный тип касательных) — задает исходный тип касательных в ключах, которые строятся c помощью автоматической записи ключей анимации. Open Filters Dialog (Открыть окно фильтров ключа) — щелчок на этой кнопке вызывает окно Set Key Filters (Установить фильтры ключа), позволяющее включить или выключить треки, которые будут анимироваться. Рассмотрим создание простейшей анимации с использованием ключевых кадров. Для этого сделайте следующее. 1.

В окне проекции Top (Сверху) создайте параметрический объект Plane (Плоскость), для чего выполните команду главного меню CreateStandard Primitives Plane (СозданиеПростые примитивыПлоскость).

2.

Перейдите на вкладку Modify (Изменение) командной панели и в свитке Parameters (Параметры) установите значение параметра Length (Длина) равным 120, а Width (Ширина) — 500.

3.

Используя окно проекции Top (Сверху), создайте в левой части плоскости объект Sphere (Сфера), для чего выполните команду главного меню CreateStandard PrimitivesSphere (СозданиеПростые примитивыСфера).

4.

Перейдите на вкладку Modify (Изменение) командной панели и в свитке Parameters (Параметры) настроек сферы задайте параметру Radius (Радиус) значение, равное 10, и установите флажок Base To Pivot (Точка опоры внизу).

5.

Щелкните правой кнопкой мыши на значке Select and Move (Выделить и переместить) на панели инструментов и в области Absolute:World (Абсолютные: глобальные) открывшегося окна Move Transform Type-In (Ввод данных преобразования перемещения) задайте параметру Z значение, равное 100 (рис. 4.1).

6.

Активизируйте запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ), расположенной в правой нижней части окна программы. В результате кнопка выделится цветом , указывая на то, что находится в активном состоянии.

155

Анимация с использованием ключевых кадров

7.

Передвиньте ползунок таймера анимации на 20 кадр.

8.

Снова откройте окно Move Transform Type-In (Ввод данных преобразования перемещения), щелкнув правой кнопкой мыши на кнопке Select and Move (Выделить и переместить) на панели инструментов, и параметру Z в области Absolute:World (Абсолютные: глобальные) задайте новое значение, равное 0. В результате в строке треков появятся два ключевых кадра: один — в нулевом, другой — в 20 кадре активного временного сегмента.

9. 10.

Рис. 4.1. Окно Move Transform Type-In (Ввод данных преобразования перемещения) с параметрами положения сферы

Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ). Нажмите кнопку Play Animation (Воспроизвести анимацию) выполненную анимацию в активном окне проекции.

, чтобы увидеть

После выполнения вышеописанных действий вы увидите, как сфера начнет падать по прямой с высоты 100 мм, начиная с нулевого (активный кадр по умолчанию) до 20 кадра, то есть до нулевого значения по вертикали (по оси Z) (рис. 4.2). Такое движение обусловлено автоматически созданными ключевыми кадрами и расчетом интерполяции движения между ними.

Рис. 4.2. Положение объекта Sphere (Сфера) в 10 кадре анимации и траектория его движения

Созданные ключи анимации можно редактировать: изменять анимированные настройки или изменять положение ключей в строке треков. Проще всего редактировать с помощью контекстного меню, которое можно вызвать щелчком правой кнопкой мыши на ключе анимации (рис. 4.3).

156

Глава 4. Анимация в среде 3ds Max 2009

Рис. 4.3. Контекстное меню, вызванное щелчком правой кнопки мыши на ключе в 20 кадре анимации

Используя это контекстное меню, вы можете не только редактировать положение объекта в пространстве, но и удалять созданные ранее ключи, фильтровать их по различным признакам, получать доступ к свойствам присвоенного контроллера и конфигурации строки треков. При автоматическом создании ключей анимации программа использует для интерполяции в начальном и конечном кадрах значения Безье. На практике это выглядит как плавное начало движения и постепенное затухание к концу анимации. Часто такие значения подходят и их можно оставлять как есть. Однако если мы, например, анимируем подброшенный вверх мячик, то, поднимаясь вверх, он будет замедлять движение, пока не остановится, а затем начнет падать, постепенно ускоряясь, пока не достигнет земли. Представим, что описанная выше сфера — это тот самый мяч. В этом случае необходимо скорректировать функциональную кривую анимации так, чтобы, падая, мяч приобретал ускорение. Для этого нужно отредактировать 20 ключ анимации следующим образом. 1. Щелкните правой кнопкой мыши на 20 ключе анимации и в появившемся контекстном меню выберите строку Sphere01: Z Position (Сфера 01: положение по оси Z). 2.

В одноименном открывшемся окне щелкните на кнопке In (Вход) и выберите из раскрывшегося списка быстрое управление сглаживанием сегментов сплайна Безье (рис. 4.4).

3. Протестируйте выполненную анимацию, щелкнув на кнопке Play Animation (Воспроизвести анимацию) . Рис. 4.4. Выбор кнопки быстрого управления функциональной кривой анимации

Выполнив эти несложные настройки кривой анимации, мы сделали так, что, падая, мяч будет постоянно ускоряться, пока не достигнет плоскости. При реальном столкновении с плоскостью мяч деформируется, а затем, распрямляясь, отскочит вверх. Чтобы показать

157

Анимация с использованием ключевых кадров

деформацию мяча, воспользуемся модификатором FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2), анимировав его контрольные точки (Control Points). Для этого выполните следующие действия. 1.

В любом из окон проекций выделите построенную ранее сферу.

2.

Примените к ней модификатор FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2), выполнив команду главного меню ModifiersFree Form DeformersFFD 2Ч2Ч2 (МодификаторыПроизвольные деформацииПроизвольная деформация 2Ч2Ч2).

3.

Перейдите на вкладку Modify (Изменение) командной панели и в стеке модификаторов щелкните на плюсике рядом со строкой FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2) для доступа к уровню подобъектов. Активизируйте строку Control Points (Контрольные точки) (рис. 4.5).

Рис. 4.5. Стек модификаторов объекта Sphere01

4.

Активизируйте запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ) .

5.

Передвиньте ползунок таймера анимации на 22 кадр.

6.

На главной панели инструментов активизируйте инструмент перемещения, щелкнув на значке Select and Move (Выделить и переместить) .

7.

В окне проекции Front (Спереди) выделите верхний ряд контрольных точек контейнера деформации и переместите их вниз на 3 мм (рис. 4.6).

Рис. 4.6. Сфера, деформированная c помощью контрольных точек модификатора FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2)

158

Глава 4. Анимация в среде 3ds Max 2009

Таким образом, у нас получилось, что сфера как будто деформировалась от столкновения с поверхностью. ПРИМЕЧАНИЕ В реальной жизни форма мяча при столкновении окажется несколько иной. При столкновении с поверхностью будет больше деформироваться та часть мяча, которая с ней взаимодействует. Чтобы воспроизвести это, нам понадобилось бы строить дополнительные ряды контрольных точек или использовать плавное выделение (Soft Selection) подобъектов сферы. Однако мы рассматриваем создание простой анимации и не ставим такой задачи. При желании вы можете повысить реалистичность анимации, воспользовавшись модификатором FFD (Box) (Произвольно деформируемый контейнер (прямоугольный)).

Итак, построенная деформация больше похожа на применяемую в анимационных роликах. Давайте усилим это восприятие, создав анимацию деформации мяча во время падения. Для этого продолжим создавать ключевые кадры. 1.

Передвиньте ползунок таймера анимации в 18 кадр.

2.

Используя инструмент Select and Move (Выделить и переместить), переместите верхний ряд контрольных точек по оси Z вверх на 6 мм.

3.

На главной панели инструментов щелкните на значке Select and Uniform Scale (Выделить и равномерно масштабировать) и масштабируйте выделенные контрольные точки на 80 % (рис. 4.7).

Рис. 4.7. Положение контрольных точек в 18 кадре анимации

4.

Выключите запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ).

Анимация с использованием ключевых кадров

159

5.

Проверьте созданную анимацию. Мяч должен деформироваться, вытягиваясь во время полета, а при падении на плоскость сплющиваться.

6.

Чтобы закончить создание полной фазы движения мяча, необходимо выполнить анимацию отскока. Это можно сделать c помощью копирования и редактирования построенных ранее ключей. Выделите в строке треков ключ, расположенный в нулевом кадре, и, удерживая нажатой клавишу Shift, передвиньте ключ в 40 кадр анимации. Таким образом, будет создана копия ключа анимации первого кадра.

СОВЕТ При смещении или копировании ключей анимации удобно контролировать действия, используя информацию в строке подсказки, расположенной ниже строки треков. Там указывается начальный кадр положения ключа, текущий кадр и его смещение.

Если сейчас воспроизвести анимацию, то можно заметить, что мяч в 40 кадре возвращается в исходное положение, соответствующее нулевому кадру, но на участке между 20 и 28 кадром мяч опускается ниже поверхности «земли» (объекта Plane01). Такое положение обусловлено применением автоматического сглаживания в ключах анимации, о котором говорилось ранее. Продолжим настройку ключей и скорректируем движение мяча во время отскока. 1.

Для настройки параметров ключа в 20 кадре щелкните на нем правой кнопкой мыши и в появившемся контекстном меню (см. рис. 4.3) выберите строку Sphere01: Z Position (Сфера 01: положение по оси Z).

2.

В появившемся одноименном окне щелкните на кнопке Out (Выход) и выберите из раскрывшегося списка скачкообразное управление сглаживанием сегментов сплайна Безье (рис. 4.8).

После выполненной настройки мяч больше не проваливается, но вместе с тем потерял способность отскакивать от поверхности. Чтобы это исправить, сделайте следующее.

Рис. 4.8. Выбор кнопки скачкообразного управления функциональной кривой анимации

1.

Выделите ключ, расположенный в нулевом кадре, и, удерживая нажатой клавишу Shift, скопируйте его в 24 кадр.

2.

Подкорректируйте значение построенного ключа по оси Z. Для этого, используя контекстное меню, откройте окно Sphere01: Z Position (Сфера 01: положение по оси Z) и задайте параметру Value (Значение) значение 0.

СОВЕТ Для обнуления значения любого счетчика достаточно щелкнуть правой кнопкой мыши на стрелках, расположенных справа.

160 3.

Глава 4. Анимация в среде 3ds Max 2009

Измените вариант сглаживания функциональной кривой, установив для кнопки In (Вход) скачкообразное управление , а для кнопки Out (Выход) — быстрое управление сглаживанием сегментов сплайна Безье (рис. 4.9) 4.

Рис. 4.9. Окно Sphere01: Z Position (Сфера01: положение по оси Z) с параметрами ключа в 24 кадре анимации

Проверьте выполненную анимацию, запустив ее воспроизведение в активном окне проекции c помощью кнопки Play Animation (Воспроизвести анимацию) .

При желании вы можете самостоятельно подкорректировать контрольные точки модификатора FFD 2Ч2Ч2 (Произвольная деформация 2Ч2Ч2) после отскока мяча, усилив анимационный эффект. Для этого в 30 кадре анимации выделите нижний ряд контрольных точек и масштабируйте их на 80 %. Выполнив эти действия, не забудьте внести соответствующие изменения в предыдущий и последующий кадры. Таким образом, обозначив начальное и конечное положение объекта в пространстве, создав ключи анимации для сферы, а также ключи для положения контрольных точек контейнера деформации, мы построили простую анимацию.

Создавать и редактировать ключи анимации можно не только автоматически, используя кнопку Auto Key (Автоключ), но и c помощью окна Track View (Просмотр треков). Это окно является основным инструментом редактирования любых параметров ключей анимации. Его можно вызвать командой главного меню Graph EditorsNew Track View (Редакторы графовНовое окно просмотра треков) либо щелчком на значке главной панели инструментов Curve Editor (Open) (Редактор кривых (открыть)). В зависимости от решаемых задач окно Track View (Просмотр треков) может быть представлено в двух режимах: Dope Sheet (Таблица структуры) и Curve Editor (Редактор кривых). Окно Track View — Dope Sheet (Просмотр треков — таблица структуры), показанное на рис. 4.10, разделено на две части: в левой расположен иерархический список анимируемых объектов вместе с их параметрами, а в правой можно редактировать треки. Окно Track View — Dope Sheet (Просмотр треков — таблица структуры) имеет два основных режима редактирования анимации: Edit Keys (Редактирование ключей) и Edit Range (Редактирование диапазонов). На рис. 4.10 окно Track View — Dope Sheet (Просмотр треков — таблица структуры) представлено в режиме Edit Keys (Редактирование ключей). Рассмотрим элементы интерфейса окна Track View (Просмотр треков), общие для каждого из режимов редактирования. Прежде всего обратимся к иерархическому списку объектов сцены. Корневым объектом этого списка является World (Мир), которому подчиняются следующие ветви. 

Sound (Звук) — содержит данные, связанные со звуком; доступны два типа звуков: метроном и аудиофайл формата WAV.

Анимация с использованием ключевых кадров

161

Рис. 4.10. Окно Track View — Dope Sheet (Просмотр треков — таблица структуры)



Video Post (Видеомонтаж) — позволяет управлять анимированными параметрами модуля Video Post (Видеомонтаж).



Global Tracks (Общие треки) — треки этой ветви позволяют задавать параметры, общие для объектов сцены.



Biped (Двуногий) — дает возможность настраивать ключевые кадры, относящиеся к двуногому существу, редактировать следы двуногого и уточнять периоды свободного положения.



Anim Layer Control Manager (Управление анимированными слоями) — ветвь, позволяющая управлять анимированными слоями, добавляемыми поверх оригинальной анимации.



Raytrace Engine Globals (Общее управление трассировщиком) — ветвь, объединяющая большинство настроек трассировщика, в число которых входят группы треков, такие как Options (Параметры), Ray Depth Control (Управление глубиной трассировки лучей), Antialiasing (Сглаживание), Acceleration (Ускорение).



Environment (Внешняя среда) — ветвь с элементами анимации, ассоциированными с внешней средой.



Render Effects (Эффекты визуализации) — содержит треки для эффектов, добавленных в сцену c помощью команды RenderingEffects (ВизуализацияЭффекты). После добавления эффектов визуализации можно использовать данные треки для анимации таких параметров, как цвет или размер области свечения.

162

Глава 4. Анимация в среде 3ds Max 2009



Render Elements (Визуализация элементов) — показывает то, какие дополнительные элементы выбраны с использованием вкладки Render Elements (Визуализация элементов) окна Render Setup (Настройки визуализации).



Renderer (Визуализатор) — позволяет анимировать параметры в настройках визуализатора. Например, вы можете анимировать параметр сглаживания текстуры.



Global Shadow Parameters (Общие параметры теней) — содержит параметры, общие для источников света, отбрасывающих тени.



Scene Materials (Материалы сцены) — включает в себя параметры всех материалов, используемых в сцене.



Medit Materials (Материалы редактора) — содержит параметры 24 материалов, представленных в окне редактора материалов.



Objects (Объекты) — включает в себя сцены и их анимируемые параметры. Данная ветвь показывает иерархию связей, подобно окну Select From Scene (Выделить из сцены).

В верхней части окна Track View (Просмотр треков) располагается панель инструментов с кнопками управления и настройки ключей анимации. В зависимости от режима отображения на панели могут размещаться различные наборы кнопок. Общими для всех режимов являются приведенные в следующем списке кнопки. Filters (Фильтры) — открывает одноименное окно для выбора объектов, которые будут отображаться в окне просмотра треков. Move Keys (Переместить ключи) — перемещает выбранный ключ (или ключи) во времени. Если передвигать ключ с нажатой клавишей Shift, то он будет скопирован. Slide Keys (Переместить ключи) — перемещает во времени выбранные ключи, а также ключи, которые расположены со стороны направления смещения, то есть при этом сохраняются расстояния между ключами. Add Keys (Добавить ключи) — добавляет ключи анимации к любому треку. Scale Keys (Масштабировать ключи) — пропорционально масштабирует время, относящееся к выбранным ключам анимации относительно текущего кадра анимации. Lock Selection (Блокировать ключи) — блокирует выбранные ключи для последующей работы с выделением. Аналогично действию клавиши Пробел для объектов сцены. Snap Frames (Привязать к кадру) — в процессе редактирования треков привязывает ключи анимации к отдельным кадрам. Show Keyable Icons (Показать анимацию значком) — в окне иерархического списка отмечает анимированные параметры значком с изображением ключа.

Анимация с использованием ключевых кадров

163

В нижней части окна находятся три кнопки, относящиеся к выбору объектов для отображения. Filter — Selected Tracks Toggle (Фильтр — переключатель выделенных треков) — позволяет отображать только те пункты иерархического списка, которые перед нажатием данной кнопки были выделены. Filter — Selected Objects Toggle (Фильтр — переключатель выделенных объектов) — показывает только те пункты иерархического списка, которые относятся к выделенным объектам сцены. Filter — Animated Tracks Toggle (Фильтр — переключатель анимированных треков) — отображаются только те треки, которые содержат анимацию. Дополнительными кнопками режима Dope Sheet (Таблица структуры) являются следующие. Edit Keys (Редактировать ключи) — включает режим редактирования ключей с использованием числовых значений или положения этих ключей на шкале времени. Edit Ranges (Редактировать диапазоны) — активизирует режим правки диапазонов, позволяющий быстрое редактирование диапазона действия, который ограничен белыми маркерами. Select Time (Выделить временной диапазон) — включает режим выделения временного сегмента на текущем треке. Delete Time (Удалить временной диапазон) — удаляет выделенный временной диапазон и все ключи, относящиеся к нему. Reverse Time (Обратить время) — изменяет порядок следования выделенных ключей на противоположный. Scale Time (Масштабировать временной диапазон) — позволяет пропорционально масштабировать выделенный временной диапазон. Insert Time (Вставить временной диапазон) — дает возможность вставить временной интервал в текущий трек. Cut Time (Вырезать диапазон) — вырезает из текущего трека временной диапазон и помещает его в буфер обмена. Временной диапазон и все ключи, находящиеся внутри него, удаляются из текущего трека. Copy Time (Копировать диапазон) — копирует выделенный диапазон текущего трека в буфер обмена для последующей вставки в текущий или любой другой трек анимации. Paste Time (Вставить диапазон) — позволяет вставлять вырезанный или скопированный диапазон в другое место текущего трека или в другой трек. Modify Subtree (Редактировать поддерево) — включает режим одновременного редактирования объекта сцены и всех связанных с ним элементов, которые расположены на более низких уровнях иерархического списка.

164

Глава 4. Анимация в среде 3ds Max 2009

Modify Child Keys (Редактировать дочерние ключи) — аналогична Modify Subtree (Редактировать поддерево), с той разницей, что редактирование распространяется только на элементы сцены, связанные с выделенным объектом. Теперь рассмотрим дополнительные кнопки окна Curve Editor (Редактор кривых) (рис. 4.11).

Рис. 4.11. Окно Track View — Curve Editor (Просмотр треков — редактор кривых)

Scale Values (Масштабировать значения) — включает режим изменения значений выделенных ключей без изменения их положения на временной шкале. Draw Curves (Рисовать кривые) — позволяет рисовать новые или редактировать построенные ранее кривые анимации. Reduce Keys (Уменьшить количество ключей) — позволяет уменьшить количество ключей в выделенном сегменте, по возможности сохраняя характер анимации. Чаще всего используется после применения инструмента Draw Curves (Рисовать кривые) для оптимизации кривой. Set Tangents to Auto (Автоматическая установка касательных) — автоматически устанавливает касательные векторы к функциональной кривой для выделенных ключей анимации. Set Tangents to Custom (Выборочная установка касательных) — включает режим ручной правки касательных для выбранных ключей. При этом кнопка Show Tangents (Показать касательные) должна быть активной. Set Tangents to Fast (Установить быстрое управление) — создает ускорение в районе выделенного ключа анимации. В зависимости от выбранного режима ускорение может быть установлено до, после или на входе и выходе ключевого кадра. Set Tangents to Slow (Установить медленное управление) — создает замедление в районе выделенного ключа анимации. В зависимости от выбранного режима замедление может быть установлено до, после или на входе и выходе ключевого кадра.

Анимация с использованием ключевых кадров

165

Set Tangents to Step (Установить скачкообразное управление) — создает скачкообразное изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима может быть установлено до, после или на входе и выходе ключевого кадра. Применяется для создания постоянного значения анимации от одного кадра до другого. Set Tangents to Linear (Установить линейное управление) — создает линейное (равномерное) изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима может быть установлено до, после или на входе и выходе ключевого кадра. Set Tangents to Smooth (Установить сглаженное управление) — создает сглаженное изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима замедление может быть установлено до, после или на входе и выходе ключевого кадра. Чаще всего применяется при создании дискретного движения. Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) — используется для задания повторения анимации, созданной c помощью ключевых кадров, за пределами диапазона этих ключей. Щелчок на этой кнопке вызывает окно Param Curve Out-ofRange Types (Типы экстраполяции параметрических кривых), показанное на рис. 4.12. Данное окно предоставляет следующие варианты экстраполяции параметрических кривых.

Рис. 4.12. Окно Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых)



Constant (Постоянный) — устанавливает постоянные значения анимации до начала или после завершения функциональной кривой. Данный вариант применяется в случае, если не нужно анимировать эффект до первого ключа или за пределами диапазона ключевых кадров. Используется по умолчанию.



Cycle (Циклический) — включает повторение анимации в том виде, как она задана функциональной кривой.



Loop (Периодический) — также задает повторение анимации, но, в отличие от рассмотренного выше варианта, используется интерполяция в начале и конце функциональной кривой для получения сглаженного параметра.



Ping Pong (Зеркальный повтор) — попеременное повторение анимации в прямой и обратной последовательности.



Linear (Линейный) — продлевает значения анимации в начале и конце функциональной кривой с использованием касательной к кривой в первом и последнем ключах анимации.

166

Глава 4. Анимация в среде 3ds Max 2009



Relative Repeat (Относительный повтор) — повторяет анимацию, заданную функциональной кривой. При этом каждый раз эта кривая смещается на величину значения последнего ключа.

Show All Tangents (Показать все касательные) — включает отображение во всех ключевых кадрах касательных, определяющих форму функциональной кривой. Show Tangents (Показать касательные) — включает отображение касательных только в выделенных ключевых кадрах. Lock Tangents (Блокировать касательные) — используется для одновременной манипуляции касательными всех выделенных ключей анимации. Show Biped Position Curves (Показать положение кривой двуногого) — отображает положение кривых анимации выделенного объекта Biped (Двуногий). Show Biped Rotation Curves (Показать поворот кривой двуногого) — отображает поворот кривых анимации выделенного объекта Biped (Двуногий). Show Biped X Curves (Показать кривую X двуногого) — включает/выключает отображение оси X текущей анимации или положения кривой. Show Biped Y Curves (Показать кривую Y двуногого) — включает/выключает отображение оси Y текущей анимации или положения кривой. Show Biped Z Curves (Показать кривую Z двуногого) — включает/выключает отображение оси Z текущей анимации или положения кривой. Продолжим создание анимации мяча с помощью рассмотренных выше инструментов окна Track View (Просмотр треков). Вы можете работать со сценой, которую создали сами, или использовать файл ball.max, находящийся в папке Examples\ Глава 04 прилагаемого к книге DVD. На данном этапе анимации необходимо сделать так, чтобы мяч после отскока продолжил прыгать по плоскости. Достичь этого можно простым способом — используя циклический тип экстраполяции параметрической кривой. Для этого сделайте следующее. 1.

Откройте окно редактирования кривых, выполнив команду главного меню Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактирование кривых).

2.

В окне Track View — Curve Editor (Просмотр треков — редактор кривых) щелкните на кнопке Filters (Фильтры) , в результате чего откроется одноименное окно (рис. 4.13).

3.

В области Show Only (Показывать только) окна Filters (Фильтры) установите флажок Animated Tracks (Анимированные треки), снимите все остальные и нажмите кнопку OK. В результате в окне иерархического списка останутся только анимированные элементы.

4.

На панели инструментов окна Track View — Curve Editor (Просмотр треков — редактор кривых) щелкните на кнопке Show Keyable Icons (Показать анимацию

Анимация с использованием ключевых кадров

167

значком) . В результате в области иерархического списка все анимированные параметры будут отмечены значком с изображением ключа. 5.

В окне дерева иерархии щелкните на плюсике, расположенном слева от объектов, для раскрытия всего списка и выберите из него все анимированные элементы (рис. 4.14).

Рис. 4.13. Окно диалога Filters (Фильтры)

Рис. 4.14. Окно Track View — Curve Editor (Просмотр треков — редактор кривых) с выбранными анимированными элементами

168

Глава 4. Анимация в среде 3ds Max 2009

6.

Щелкните на кнопке Parameter Out-of-Range Curves Types (Типы экстраполяции параметрических кривых) .

7.

В появившемся окне выбора варианта экстраполяции параметрических кривых щелкните на кнопке со стрелкой, направленной вправо, которая расположена под значком Cycle (Циклический) (рис. 4.15).

Рис. 4.15. Окно Param Curves Out-of-Range Types (Типы экстраполяции параметрических кривых) с заданной циклической интерполяцией

8.

Щелкните на кнопке OK для подтверждения выполненных изменений.

После выполнения вышеописанных действий справа от функциональной кривой в области редактирования появится пунктирная линия, повторяющая форму этой кривой. Это означает, что выполненная анимация будет непрерывно повторяться. Если сейчас запустить воспроизведение анимации в одном из окон проекций, то можно увидеть, что после одного цикла анимации мяч больше не останавливается, а продолжает двигаться.

Использование контроллеров и выражений Каждый раз, когда вы анимируете объекты сцены, программа 3ds Max сохраняет параметры анимации в контроллерах. Контроллерами называются элементы, хранящие значения анимации и управляющие интерполяцией от одного значения анимации к другому. Существует две категории контроллеров. 

Базирующиеся на ключах — контроллеры, основанные на ключах анимации. Такие контроллеры воспринимают в качестве ввода значений данные из ключевых кадров, а затем рассчитывают интерполированные значения между ключами анимации. Для этих контроллеров является характерным то, что кривая функции всегда проходит через ключи анимации. Контроллеры могут оказывать влияние на интерполяцию между ключами, но не на сами ключи. Контроллеры, описывающие трансформации на объектном уровне, можно также редактировать в свитке Key Info (Справка о ключах) вкладки Motion (Движение) командной панели.



Параметрические — рассчитывают анимацию на основе уравнения, реализуемого контроллером, и значений, которые указаны пользователем. К парамет-

Использование контроллеров и выражений

169

рическим можно отнести контроллеры, ограничивающие движение объектов в пространстве (Constraints (Ограничения)). C помощью контроллеров-ограничителей можно заставить объект следовать по пути или оставаться повернутым к другому объекту. Программа 3ds Max поддерживает большое количество контроллеров различных типов. Контроллеры одного типа могут иметь несколько разновидностей. Контроллеры можно условно классифицировать по типу возвращаемого ими значения, при этом тип данных контроллера должен соответствовать типу данных параметра объекта. Например, контроллер типа данных Position (Положение) нельзя использовать для параметра поворота или масштаба объекта. Рассмотрим семь типов данных контроллера. 

Transform Controller (Контроллер преобразования) — управляет трансформациями перемещения, поворота и масштаба.



Position Controller (Контроллер положения) — влияет на положение объекта, позицию габаритного контейнера модификатора или его центра.



Rotation Controller (Контроллер поворота) — управляет преобразованием поворота объекта или габаритного контейнера модификатора.



Scale Controller (Контроллер масштаба) — влияет на преобразование масштаба объекта или габаритного контейнера модификатора.



Point3 Controller (Трехкомпонентный контроллер) — управляет любым параметром с тремя значениями компонента, такими как цвет материала или координаты точки.



Float Controller (Контроллер с плавающей точкой) — влияет на любой параметр с единственным значением компонента, например такой как угол поворота, ширина объекта, уровень собственного свечения материала и т. п.



Color Controller (Контроллер цвета) — управляет цветом материала.

Контроллеры анимации можно назначать, используя три различных источника: команды главного меню Animation (Анимация), окно Track View (Просмотр треков) или вкладку Motion (Движение) командной панели. Рассмотрим некоторые контроллеры, которыми оперирует 3ds Max. 

Position/Rotation/Scale (PRS) (Положение/поворот/масштаб) — используется по умолчанию для большинства объектов сцены и габаритных контейнеров модификаторов. Его рекомендуется применять для всех универсальных трансформаций.



Audio (Звук) — контроллер управления по звуковой дорожке. Он позволяет анимировать почти любой параметр сцены, конвертируя амплитуду записанного звука в значения анимируемого параметра объекта. Данный контроллер совместим с большинством параметров окна Track View (Просмотр треков), в том числе и с Transform Controller (Контроллер преобразования), Float Controller (Контроллер с плавающей точкой) и Point3 Controller (Трехкомпонентный контроллер).

170

Глава 4. Анимация в среде 3ds Max 2009



Bezier (Управление по Безье) — один из самых универсальных контроллеров, доступных в 3ds Max. Он выполняет интерполяцию между ключами анимации, регулируя изменения кривой, проходящей через ключевые точки. Контроллер Bezier (Управление по Безье) используется по умолчанию для большинства параметров. Его рекомендуется применять, когда необходимо иметь полный контроль над интерполяцией функциональной кривой в промежутках между ключами анимации.



Color RGB (Цвет RGB) — разделяет составляющую цвета RGB на три независимых трека. Этот контроллер можно применять для анимации цветовых составляющих материалов либо других компонентов, использующих цвет. После разделения по умолчанию каждому треку назначается контроллер Bezier Float (Управление по Безье с плавающей точкой).



Euler XYZ Rotation (XYZ-поворот по Эйлеру) — составной контроллер, объединяющий отдельные контроллеры, которые имеют значение с плавающей точкой и описывают поворот относительно одной из осей (X, Y или Z). Использование данного контроллера не дает такого сглаженного результата, как применение TCB Rotation (TCB-поворот), который использует для управления вращением кватернионовскую математику. Однако, в отличие от последнего, Euler XYZ Rotation (XYZ-поворот по Эйлеру) позволяет редактировать функциональные кривые.



Expression (Выражение) — контроллер по алгоритмическому выражению. Он строит функциональную кривую на основе математических выражений, заданных пользователем в окне Expression Controller (Контроллер управления по алгоритмическому выражению) (рис. 4.16). C помощью этого контроллера можно получать данные из других контроллеров, оперировать встроенными функциями и создавать собственные переменные. Контроллер Expression (Выражение) можно применять практически ко всем параметрам 3ds Max, для которых есть возможность анимации.

Рис. 4.16. Окно диалога Expression Controller (Контроллер управления по алгоритмическому выражению)

Использование контроллеров и выражений

171



Linear (Линейное управление) — контроллер линейного управления. Строит функциональную кривую между двумя соседними ключами по прямой линии. Этот контроллер не имеет настроек и использует для интерполяции значения ключевых кадров. Его следует применять, когда необходимо передать движение механизмов или изменение цвета.



Noise (Шум) — генерирует хаотичную анимацию в пределах диапазона кадров. Является параметрическим и не использует ключи анимации. Как только вы назначаете анимированному параметру этот контроллер, он сразу применяется ко всему диапазону текущего временного сегмента. Данный контроллер можно использовать для создания неравномерного движения, пульсирующего фонтана, вибрации объектов и т. п., а также применять к другим контроллерам для изменения функциональной кривой с учетом среднего значения (рис. 4.17).

Рис. 4.17. Окно диалога контроллера Noise (Зашумление)



List (Управление по списку) — объединяет несколько самостоятельных контроллеров для создания общей анимации. Контроллеры, добавленные в список, выполняются последовательно и по умолчанию имеют вес (значение параметра Weight (Вес)), равный 100. Изменение этого значения влияет на удельный вес данного контроллера в общей анимации. Применяется для создания сложных анимаций.



Script (Управление по коду) — подобно контроллеру Expression (Выражение), основанному на алгоритмическом выражении, открывает окно для ввода кода на языке MAXScript с последующим расчетом значения и передачи его контроллеру. С помощью контроллера Script (Управление по коду) можно анимировать практически все параметры объекта, даже те, которые не анимируются контроллером Expression (Выражение) (например, вершины полигонального объекта) (рис. 4.18).



Path Constraint (Ограничение по пути) — ограничивает движение объекта по пути, которым является указанный сплайн или усредненное расстояние между несколькими сплайнами. В качестве пути можно использовать сплайн любого типа, при этом сам сплайн может иметь собственную анимацию. Данный контроллер применяется для анимации объектов по сложным траекториям (например, движение автомобиля по дороге).

172

Глава 4. Анимация в среде 3ds Max 2009

Рис. 4.18. Окно диалога Script Controller (Контроллер управления по коду)



Position Constraint (Ограничение по положению) — изменяет положение исходного объекта (то есть объекта, к которому применен контроллер) относительно целевого. При этом значение параметра Weight (Вес), равное по умолчанию 100, означает, что исходный объект займет положение целевого, а значение 0 — то, что исходный объект останется на месте. Все значения, отличные от 0, заставят объект переместиться в положение, которое равно процентному отношению расстояния между исходным и целевым объектами.



Link Constrain (Ограничение по связи) — применяется для анимации передачи связи от одного целевого объекта другому. Например, при использовании контроллера Link Constrain (Ограничение по связи) анимированный персонаж может взять рукой чемодан и переместить его в другую руку.



LookAt Constraint (Ограничение по линии взгляда) — используется для ориентации одного объекта относительно другого с таким расчетом, чтобы исходный объект постоянно смотрел на целевой. Действие данного контроллера подобно камере Target Camera (Нацеленная камера), когда она поворачивается вслед за перемещаемой целью.

Итак, мы рассмотрели основные контроллеры анимации, применяемые в 3ds Max. Более подробную информацию о них можно найти в справочной литературе или файле справки приложения. Продолжим анимировать мяч. Используя контроллер Expression (Выражение), создадим для него поступательное движение и постепенное затухание отскоков. 1.

Продолжите выполнение собственной анимации или загрузите с прилагаемого DVD файл ball01.max, находящийся в папке Examples\Глава 04.

2.

Для увеличения общего времени анимации щелкните на кнопке Time Configuraи в области Animation (Анимация) tion (Настройка временных интервалов)

173

Использование контроллеров и выражений

открывшегося окна задайте параметру End Time (Время окончания) значение, равное 180 (рис. 4.19). 3.

В одном из окон проекций выделите мяч — объект Sphere01.

4.

Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку с именем Position: Position XYZ (Положение: положение по XYZ) (рис. 4.20).

5.

В свитке Assign Controller (Назначить контроллер) щелкните на одноименной кнопке , в результате чего откроется окно диалога Assign Position Controller (Назначить контроллер положения). В данном окне выберите из списка контроллер Position List (Контроллер положения по списку). После применения этого контроллера в списке контроллеров появится строка Available (Доступный) (рис. 4.21), позволяющая добавлять к списку новые контроллеры.

Рис. 4.20. Свиток Assign Controller (Назначить контроллер) объекта Sphere01

Рис. 4.19. Окно диалога Time Configuration (Настройка временных интервалов)

Рис. 4.21. Свиток Assign Controller (Назначить контроллер) после назначения контроллера Position List (Контроллер положения по списку)

174

Глава 4. Анимация в среде 3ds Max 2009

6.

Выделите строку Available (Доступный) и щелкните на кнопке Assign Controller (Назначить контроллер) .

7.

В открывшемся окне Assign Position Controller (Назначить контроллер положения) выберите строку Position Expression (Контроллер положения по выражению). В результате откроется окно Expression Controller (Контроллер управления по алгоритмическому выражению) (см. рис. 4.16).

8.

Создайте переменную, которая будет принимать значение положения объекта Sphere01 по оси Z следующим образом: 1) в поле Name (Имя) области Create Variables (Создать переменную) наберите имя создаваемой переменной (например, Zpoz); 2) установите переключатель в положение Scalar (Скалярный) и щелкните на кнопке Create (Создать); 3) в нижней части окна нажмите кнопку Assign to Controller (Назначить контроллеру); 4) в появившемся окне Track View Pick (Выбрать трек) выберите из иерархического списка строку Z Position: Bezier Float (Z-положение: управление по Безье с плавающей точкой), относящуюся к объекту Sphere01 (рис. 4.22).

Рис. 4.22. Выбор строки Z Position: Bezier Float (Z-положение: управление по Безье с плавающей точкой) в окне Track View Pick (Выбрать трек)

9.

В поле Expression (Выражение) окна Expression Controller (Контроллер управления по алгоритмическому выражению) вместо [0, 0, 0] наберите следующее выражение: [F, 0, -Zpoz/180*F], где F — текущий кадр (функция по умолчанию), 180 — общее количество кадров, а Zpoz — созданная нами переменная.

10.

Щелкните на кнопке Evaluate (Оценить) для расчета созданного выражения.

Анимация частиц

11.

175

Запустите воспроизведение созданной анимации в активном окне проекции, нажав кнопку Play Animation (Воспроизвести анимацию) . Если все было сделано правильно, то вы увидите, как мячик смещается в сторону с уменьшением высоты отскоков.

Вернемся к созданному выражению и разберем его более подробно. По умолчанию выражение в поле Expression (Выражение) представляло собой [0, 0, 0], что означало изменение параметров X, Y и Z на 0, то есть положение объекта не менялось. Вместо значения 0 по оси X мы задали F, указав, что в каждом последующем кадре анимации это значение будет увеличиваться на 1 и соответствовать номеру текущего кадра. Значение по оси Y не должно меняться, поэтому мы оставили его равным 0. Для оси Z выражение имеет более сложную структуру. В каждом кадре анимации из положения объекта по оси Z вычитается его текущее значение (Zpoz), деленное на общее количество кадров. Эта разность умножается на значение текущего кадра для создания динамики уменьшения параметра Z. ПРИМЕЧАНИЕ Для ознакомления с готовой анимацией загрузите файл ball02.max из папки Examples\ Глава 04 прилагаемого к книге DVD.

Анимация частиц Система частиц (Particle System) представляет собой совокупность малоразмерных частиц, с использованием которых можно создать множество анимационных эффектов. Подобно твердым телам, частицы имитируют физические процессы. При этом они не являются частью анимации в привычном смысле этого слова, следовательно, ими нельзя манипулировать непосредственно как объектами. Управление ими происходит за счет изменения параметров или посредством добавления внешних сил. С помощью частиц можно имитировать различные предметы и явления природы, например дождь, снег, стаю птиц и многое другое. После создания системы частиц все, что вы можете увидеть в окне проекции, — это габаритный контейнер, который называется Emitter Icon (Значок источника). Он является объектом, который порождает частицы. Созданные системы частиц существуют в сцене в динамике, меняясь во времени. Их поведение зависит исключительно от значения параметров и внешних сил (если они применяются). Лучший способ научиться работать с частицами — экспериментировать с различными значениями их параметров. Программа 3ds Max содержит семь различных типов систем частиц. 

Particle Flow Source (Источник потока частиц) — частицы, которые можно определить с помощью окна Particle View (Окно системы частиц) и контролируемые c помощью действий (Actions) и событий (Events).



Spray (Брызги) — система частиц, имитирующая капли воды, брызги и т. д. Эти капли можно представить в виде Drops (Капли), Dots (Точки) или Ticks

176

Глава 4. Анимация в среде 3ds Max 2009

(Черточки). Частицы движутся по прямой линии от излучателя сразу же после создания. 

Snow (Снег) — создает эффект падающего снега или конфетти. Эта система частиц подобна Spray (Брызги), но имеет дополнительные параметры для настройки поведения снежинок при падении. Кроме представления в виде точек и черточек частицы системы Snow (Снег) можно визуализировать в виде снежинок (Flakes (Снежинки)).



Blizzard (Метель) — усовершенствованная модель частиц Snow (Снег), которая имеет дополнительные параметры и может использовать при визуализации форму различных объектов (треугольников, сфер и т. д.).



PArray (Массив частиц) — дает возможность применять два типа поведения частиц: •

использование объектов сцены в качестве источников для излучаемых частиц;



создание усовершенствованных эффектов имитации взрыва.  PCloud (Облако частиц) — создает облако частиц, заклю-

ченных в габаритный контейнер, в качестве которого могут выступать другие объекты сцены. Данную систему частиц можно применять для имитации стаи птиц, косяков рыб, звездных полей, группы животных и т. д.  Super Spray (Супербрызги) — усовершенствованный

вариант частиц Spray (Брызги), имеющий множество дополнительных параметров. В 3ds Max системы частиц можно создавать тремя способами:  с помощью подменю команды главного меню Create Рис. 4.23. Кнопки создания систем частиц на командной панели



Particles (СозданиеЧастицы);  используя группу Particle Systems (Системы частиц)

категории Geometry (Геометрия) вкладки Create (Создание) командной панели (рис. 4.23);

c помощью окна Particle View (Окно системы частиц), которое вызывается командой главного меню Graph EditorsParticle View (Графические редакторыОкно системы частиц).

При создании системы частиц, не использующих габаритный контейнер (таких как Spray (Брызги), Snow (Снег), Blizzard (Метель)), прежде всего необходимо определить положение в пространстве точки генерации частиц, называемой эмиттером, и направление, в котором они будут испускаться. Эмиттер представляет собой плоскость с перпендикулярным вектором, расположенным в середине этой плоскости (рис. 4.24). Именно направление вектора указывает сторону, в которую будут испускаться частицы.

177

Анимация частиц

Рис. 4.24. Эмиттер системы частиц Snow (Снег)

Поскольку системы частиц основаны на анимации во времени, то после построения эмиттера в нулевом кадре вы можете не увидеть сгенерированных частиц, так как по умолчанию их излучение начинается именно в нулевом кадре. Чаще всего достаточно передвинуть ползунок таймера анимации вправо, чтобы увидеть поток излучаемых частиц. Аналогичным образом в окнах проекций представлены частицы Particle Flow Source (Источник потока частиц), Super Spray (Супербрызги). Разница лишь в том, что эмиттеры этих объектов имеют форму, отличную от прямоугольника, но, как и рассмотренные выше, имеют вектор, указывающий направление излучения частиц. Несколько иначе отображаются в окнах проекций частицы PArray (Массив частиц) и PCloud (Облако частиц). Их эмиттер представлен в виде габаритного контейнера. Для частиц PArray (Массив частиц) это куб с возможностью выбора объектов сцены в качестве эмиттера. Для PCloud (Облако частиц), кроме объектов сцены, можно использовать параллелепипед, сферу или цилиндр (рис. 4.25).

Рис. 4.25. Габаритный контейнер частиц PCloud (Облако частиц) в виде параллелепипеда

178

Глава 4. Анимация в среде 3ds Max 2009

Помимо одиночных можно создавать сложные системы частиц с использованием операторов и тестирования событий по различным признакам. Для создания сложных систем следует использовать окно Particle View (Окно системы частиц) (рис. 4.26). Меню

Окно событий

Список операторов

Панель параметров

Панель описания Инструменты отображения

Рис. 4.26. Окно Particle View (Окно системы частиц)

Анимация частиц

179

Окно Particle View (Окно системы частиц) имеет следующие элементы управления. 

Меню предоставляет доступ к командам редактирования, выделения, настройкам отображения и анализа системы частиц.



Окно событий отображает диаграмму событий с узлами и функциями, изменяя которую можно редактировать систему частиц. Узлы содержат отдельные события, которые можно связать друг с другом для управления потоком частиц.



Панель параметров содержит свитки параметров любых выделенных объектов.



Список операторов содержит все возможные события, которые могут применяться с системой частиц. Содержимое этого списка можно разделить на три категории: •

операторы — основные элементы системы частиц, позволяющие организовывать события (Events), которые описывают поведение частиц в определенный период времени. В окне Particle View (Окно системы частиц) они представлены квадратными значками с пиктограммами на синем фоне. В эту же категорию попадают два зеленых круглых значка, соответствующие времени жизни частиц;



тестировщики — функции, тестирующие систему частиц на соответствие какому-либо заданному условию и позволяющие при выполнении этого условия направить ход выполнения операторов к другому событию. В окне диалога данные элементы представлены ромбовидными значками с пиктограммами на желтом фоне;



потоки частиц — категория, содержащая два оператора, предназначенных для создания начального события системы частиц. Этими операторами являются Empty Flow (Пустой поток) и Standard Flow (Типовой поток), имеющие значки в виде двух связанных между собой белых прямоугольников.



Панель описания — содержит краткую информацию о событии, выделенном в окне списка операторов.



Инструменты отображения — предназначены для навигации в окне Particle View (Окно системы частиц).

Практическое использование окна диалога Particle View (Окно системы частиц) описывается в разд. «Текст, уносимый порывами ветра» гл. 8.

Глава 5.

Основы визуализации • Инструменты визуализации • Параметры визуализации • Виртуальный буфер кадров • Использование модуля RAM Player (RAM-проигрыватель) • Окружение и атмосферные эффекты • Модуль Video Post (Видеомонтаж)

Позади долгие часы кропотливой работы, связанной с моделированием, текстурированием, анимацией, постановкой света и камер. Дальше — финальная визуализация. Конечно же, пробная (тестовая) визуализация начинается значительно раньше, но только после установки всех параметров и настроек можно увидеть все свойства материала, эффекты внешней среды, глубину резкости, размытие движения и т. д. В состав 3ds Max входит визуализатор Default Scanline Renderer, оптимизированный для быстрых расчетов, причем, используя определенные настройки оптимизации, скорость просчетов можно существенно увеличить. Знание настроек, находящихся в окне диалога Render Setup (Настройки визуализации), позволяет экономить время и нервы.

Инструменты визуализации Доступ к визуализации в 3ds Max можно получить с помощью меню Rendering (Визуализация) либо основной панели инструментов, в состав которой входит группа кнопок, позволяющая задавать режимы визуализации (рис. 5.1). Рассмотрим назначение каждого инструмента. Render Setup (Настройки визуализации) — основная кнопка настройки параметров визуализации, предназначенная для вызова окна Render Setup (Настройки визуализации). Данное окно позволяет настроить все базовые параметры визуализации для активного окна проекции (если не указан другой вариант).

Рис. 5.1. Кнопки панели инструментов, предназначенные для управления визуализацией

Rendered Frame Window (Окно кадров визуализации) — вызывает одноименное окно, объединяющее команды (большинство из которых расположены в других местах программы), относящиеся к настройкам визуализации и сохранению визуализированного изображения. Render Production (Итоговая визуализация) — позволяет визуализировать сцену с установками, заданными по умолчанию либо ранее измененными в окне Render Setup (Настройки визуализации). Render Iteractive (Пробная визуализация) — обычно применяется для быстрой визуализации сцены в процессе выполнения текущих настроек (например, таких как настройки карты отражения). Пробная визуализация не имеет возможности автоматического сохранения визуализированного изображения, применения сетевой визуализации, визуализации последовательности кадров, экспорта файла и отправки сообщения по электронной почте. ActiveShade (Активное тонирование) — режим просчета сцены, при котором интерактивно происходит обновление окна ActiveShade (Активное тонирование). Например, если применяется данный режим, то можно сразу увидеть изменения параметров источника света, вызванные изменением значения Multiplier (Усилитель). Использование данного режима требует наличия достаточных аппаратных средств.

182

Глава 5. Основы визуализации

Параметры визуализации Для настройки всех базовых параметров визуализации служит окно Render Setup (Настройки визуализации) (рис. 5.2), вызываемое командой меню RenderingRender Setup (ВизуализацияНастройки визуализации) либо с помощью кнопки Render Setup (Настройки визуализации), расположенной на главной панели инструментов. Окно Render Setup (Настройки визуализации) по умолчанию содержит пять вкладок для детальной настройки процесса визуализации.

Рис. 5.2. Окно Render Setup (Настройки визуализации)





Common (Общие) — настройка параметров, общих для различных визуализаторов, в том числе и для подключаемых (например, Brazil r/s или V-Ray).



Renderer (Визуализатор) — содержит настройки активного визуализатора (по умолчанию — Default Scanline Renderer).



Render Elements (Визуализация элементов) — позволяет визуализировать отдельные элементы изображения (например, тени от объектов, области бликов, диффузное рассеивание и т. д.) для их последующего использования или редактирования в программах растровой графики или компоузинга.



Raytracer (Трассировка) — содержит настройки трассировки лучей, общие для всех объектов сцены, использующих трассируемые материалы или карты текстур (кроме настройки некоторых параметров, которые влияют на скорость и качество просчетов). Можно указать те объекты, которые не будут учитываться в расчетах трассировки лучей.

Advanced Lighting (Улучшенное освещение) — позволяет выбрать один из двух способов освещения сцены: •

Light Tracer (Трассировщик света) — применяется для создания сглаженных теней и мягкого освещения сцены;



Radiosity (Диффузное отражение) — более правильное с физической точки зрения освещение, позволяющее рассчитывать прохождение светового луча с учетом отражения от объектов сцены, преломления в прозрачных средах и затухания с расстоянием.

Рассмотрим подробнее настройки окна Render Setup (Настройки визуализации).

183

Параметры визуализации

Common Parameters (Общие параметры) Свиток Common Parameters (Общие параметры) вкладки Common (Общие) позволяет настраивать общие параметры и режимы визуализации (рис. 5.3). Для настройки данного свитка выполните следующие действия. 1.

2.

3.

В области Time Output (Выходные настройки диапазона) установите переключатель в одно из четырех положений: •

Single (Единичный) — визуализируется текущий кадр;



Active Time Segment (Текущий промежуток времени) — полностью визуализируется временной диапазон, отображаемый в строке треков;



Range (Диапазон) — позволяет визуализировать диапазон кадров, задаваемый в полях, расположенных справа;



Frames (Кадры) — визуализируется список кадров, указанных через запятую, и (или) диапазон кадров, заданных через дефис (например, 1, 5, 10–100 означает, что будут визуализироваться 1, 5 и с 10 по 100 кадры).

Затем укажите значения следующих параметров:

Рис. 5.3. Свиток Common Parameters (Общие параметры) вкладки Common (Общие) окна Render Setup (Настройки визуализации)



Every Nth Frame (Каждый кадр под номером) — позволяет задать интервал кадров визуализации, доступный в режимах Active Time Segment (Текущий промежуток времени) и Range (Диапазон) (по умолчанию просчитывается каждый кадр);



File Number Base (База номеров файлов) — значения, используемые для формирования имен файлов визуализируемой последовательности.

В области Area to Render (Область визуализации) из раскрывающегося списка выберите один из вариантов визуализации: •

View (Проекция) — визуализация активного окна проекции;



Selected (Выделенные объекты) — визуализируются только выбранные объекты в активном окне проекции. Данный вариант подходит для тестовой визуализации элементов сложных сцен, требующих значительных временных затрат;

184

Глава 5. Основы визуализации



Region (Область) — позволяет визуализировать только заданную прямоугольную область, ускоряя таким образом процесс настройки общих параметров. Установка границ области производится в активном окне проекции c помощью маркеров. Визуализируемое изображение не масштабируется, оставляя поля, выходящие за пределы выделенной области, заполненными цветом фона;



Crop (Обрезка) — режим, аналогичный предыдущему, но области, выходящие за пределы рамки, обрезаются до выбранного размера;



Blowup (Увеличение) — режим, аналогичный Region (Область), но при визуализации увеличивает выбранную область до полного окна.

4.

5.

В области Output Size (Выходные настройки размера) укажите параметры выходного изображения: •

из раскрывающегося списка в верхней части области выберите один из вариантов размеров кино-, фото- и видеокадров или вариант Custom (Пользовательская), позволяющий задавать значения Aperture Width(mm) (Ширина апертуры), Image Aspect (Пропорции изображения) и Pixel Aspect (Пропорции пиксела);



задайте значения ширины и высоты изображения визуализации, используя параметры Width (Ширина) и Height (Высота);



с помощью четырех кнопок с предустановленными значениями ширины и высоты в пикселах можно быстро задать соответствующие значения для визуализации.

В области Options (Режимы) установите или снимите следующие флажки: •

Atmospherics (Атмосферные эффекты) — включение/выключение режима визуализации эффектов внешней среды (туман, объемное освещение и горение);



Effects (Эффекты) — включение/выключение режима визуализации эффектов (например, Blur (Размытие));



Displacement (Смещение) — включение/выключение режима визуализации карт смещения;



Video Color Check (Контроль цветности) — включение/выключение режима контроля соответствия цветов визуализируемого изображения стандартам телевещания PAL и NTSC;



Render to Fields (Визуализировать полукадры) — режим визуализации изображения в виде четных или нечетных строк, необходимых для воспроизведения анимации на телеэкран;



Render Hidden Geometry (Визуализировать скрытые объекты) — включение/ выключение режима визуализации объектов сцены, невидимых в окнах проекций;



Area Lights/Shadows as Points (Площадное освещение/тени в виде точечных) — режим, при котором все площадное освещение и тени визуализируются так,

Параметры визуализации

185

как если бы это были точечные источники света (позволяет значительно ускорить время просчета визуализации во время отладки);

6.



Force 2-Sided (Отображать обе стороны) — включение/выключение режима визуализации обеих сторон (увеличивает время расчетов; может понадобиться при визуализации импортированных из других программ объектов с хаотичным расположением нормалей);



Super Black (Сверхчерный) — включение/выключение режима ограничения уровня черного цвета (используется для приложений видеомонтажа).

Настройте параметры области Advanced Lighting (Улучшенное освещение): •

Use Advanced Lighting (Использовать улучшенное освещение) — включение/выключение режима расчетов трассировки лучей и диффузного отражения;



Compute Advanced Lighting when Required (При необходимости рассчитать улучшенное освещение) — включение/выключение режима расчетов диффузного отражения во время визуализации (обычно при визуализации последовательности рассчитывается диффузное отражение только для первого кадра).

7.

В области Bitmap Proxies (Замещение растровых изображений) определите, будут ли использоваться для визуализации карты максимального разрешения или прокси-изображения. Кнопка Setup (Настройки) вызывает окно Global Settings and Defaults for Bitmap Proxies (Глобальные параметры и умолчания для прокси-изображений), которое позволяет создавать и использовать проксиизображения, включенные в материалы.

8.

В области Render Output (Результат визуализации) установите параметры вывода визуализации: •

Files (Файлы) — вызывает окно Render Output File (Результирующий файл визуализации) для ввода имени и выбора необходимого формата файла;



Save File (Сохранить файл) — сохраняет результаты визуализации в файле с указанным именем;



Devices (Устройства) — позволяет записать результат визуализации на внешний носитель (например, цифровой видеомагнитофон или ленточный накопитель);



Rendered Frame Window (Окно кадров визуализации) — кроме записи в файл или на внешний носитель, выводит результаты визуализации в одноименное окно;



Net Render (Сетевая визуализация) — включает режим просчета последовательности кадров компьютерами, расположенными в локальной сети;



Skip Existing Images (Пропускать существующие изображения) — включает/ выключает режим пропуска визуализации ранее созданных изображений.

В 3ds Max 2009 есть возможность вместе с сохранением последовательности файлов создавать Image File List (Список файлов изображений), позволяющий получить

186

Глава 5. Основы визуализации

непосредственный доступ к этой последовательности. Для этого нужно установить флажок Put Image File List(s) in Output Path(s) (Поместить список файлов изображений в итоговый путь), установить переключатель, определяющий выходной формат списка, в нужное положение (Autodesk ME Image Sequence File (.imsq) (Файл последовательности изображений Autodesk ME) или Legacy 3ds max Image File List (.ifl) (Список файлов изображений 3ds max)) и нажать кнопку Create Now (Создать сейчас).

Default Scanline Renderer Свиток Default Scanline Renderer вкладки Renderer (Визуализатор) используется для настройки визуализатора, встроенного в 3ds Max (рис. 5.4). Для настройки общих параметров сканирующего визуализатора предназначены следующие области. 

Options (Режимы) содержит такие флажки: •

Mapping (Карты текстур) — включение/ выключение режима визуализации материалов и текстур;



Shadows (Тени) — прорисовка теней от объектов сцены;



Enable SSE (Включить SSE) — использование SSE-инструкции для ускорения расчетов;

• Auto-Reflect/Refract and Mirrors (Автоотражение/преломление и зеркальное отображение) — просчет отражений в зеркальных и преломляющих материалах; • Force Wireframe (Каркасы объектов) — визуализация всех объектов в виде каркасов (значение параметра Wire Thickness (Толщина каркаса) указывает толщину линий в пикселах). Рис. 5.4. Свиток Default Scanline Renderer вкладки Renderer (Визуализатор) окна Render Setup (Настройки визуализации)

 Antialiasing (Сглаживание) определяет пара-

метры сглаживания: • Antialiasing (Сглаживание) — сглаживание границ изображения;



Filter (Фильтр) — раскрывающийся список с 12 алгоритмами сглаживания текстур;



Filter Maps (Фильтрация текстурных карт) — фильтрация текстурных карт (фильтрация улучшает отображение материалов, использующих текстурные карты, но увеличивает время визуализации);

Параметры визуализации

• 



187

Filter Size (Размер фильтра) — позволяет увеличить или уменьшить степень размытия растровых изображений.

Global SuperSampling (Глобальное сверхразрешение) содержит такие флажки: •

Disable all Samplers (Выключить все фильтры сглаживания) — выключение всех алгоритмов сглаживания, присутствующих в настройках материалов и текстур;



Enable Global Supersampler (Включить глобальное сверхразрешение) — включает алгоритм сглаживания для всех материалов, присутствующих в сцене.

Object Motion Blur (Размытие объекта в движении) и Image Motion Blur (Размытие картинки в движении) позволяют настроить параметры размытия объектов или изображения, характерного для анимации движения: •

Apply (Применить) — визуализация размытия;



Duration (frames) (Длительность (кадров)) — интервал времени, в течение которого будет выполняться размытие (при значении, равном 1, размытие будет проходить от середины предыдущего кадра до середины следующего);



Samples (Выборка) — количество пикселов из состава копий, попадающих в итоговый кадр визуализации;



Duration Subdivisions (Количество копий в шлейфе) — количество копий размытого объекта в течение интервала размытия;



Transparency (Прозрачность) — включается при размытии объектов, имеющих прозрачность; увеличивает общее время визуализации, по умолчанию снят;



Apply to Environment Map (Применять к картам внешней среды) — режим, при котором размывается изображение фона.



Auto Reflect/Refract Maps (Карты автоотражения/преломления) содержит параметр Rendering Iterations (Количество итераций визуализации), который указывает кратность отражений одних объектов, использующих карты отражения/преломления в других.



Color Range Limiting (Ограничение цветового диапазона) позволяет понизить цветовой диапазон ярких бликов на поверхности объектов с использованием одного из двух способов:





Clamp (Ограничить яркость) — интенсивность всех оттенков цвета будет ограничена диапазоном от 0 до 1;



Scale (Масштабировать) — все три компонента цвета будут масштабироваться так, чтобы интенсивность максимального из компонентов оказалась равной 1.

Memory Management (Управление памятью) содержит флажок Conserve Memory (Сохранить память), позволяющий использовать меньшее количество оперативной памяти. При этом, однако, увеличивается время визуализации.

188

Глава 5. Основы визуализации

Виртуальный буфер кадров После запуска визуализации на экране появится активное по умолчанию окно Rendered Frame Window (Окно кадров визуализации), отображающее процесс вывода изображения (рис. 5.5).

Рис. 5.5. Rendered Frame Window (Окно кадров визуализации)

Панель инструментов, представленная в верхней части окна Rendered Frame Window (Окно кадров визуализации), служит для выполнения следующих задач: Area to Render (Область визуализации) — раскрывающийся список основных вариантов визуализации, содержащий типы, описанные выше для окна Render Setup (Настройки визуализации); Edit Region (Редактирование области) — позволяет одновременно задавать границы области визуализации в активном окне проекции и в окне кадров визуализации. Используется при настройках типа визуализации Region (Область); Auto Region Selected (Автоматическое выделение области) — если этот режим включен, позволяет выполнить визуализацию по габаритным контейнерам выделенных объектов. Используется при настройках следующих типов визуализации: Region (Область), Crop (Обрезка) и Blowup (Увеличение); 

Viewport (Окно проекции) — раскрывающийся список доступных для визуализации окон проекций;



Render Presets (Предустановки визуализации) — раскрывающийся список с предварительно настроенными и сохраненными установками визуализации.

Использование модуля RAM Player (RAM-проигрыватель)

189

Здесь можно также сохранить собственные настройки, а затем загрузить их для выполнения последующей визуализации; Render Setup (Настройки визуализации) — вызывает одноименное окно диалога; Environment and Effects Dialog (Exposure Controls) (Окно «Окружающая среда и эффекты (контроль экспозиции)») — открывает окно Environment and Effects (Окружающая среда и эффекты) с возможностью редактирования настроек экспозиции в свитке Exposure Controls (Контроль экспозиции); Выбор способа визуализации. Доступны два варианта: Render Production (Итоговая визуализация) — позволяет визуализировать сцену с установками, заданными по умолчанию; либо Render Iteractive (Пробная визуализация) — применяется для быстрой визуализации сцены в тестовом режиме; Save Image (Сохранить изображение) — сохраняет визуализированное изображение в файл; Copy Image (Копировать изображение) — копирует визуализированное изображение в буфер обмена Windows для последующей вставки его в программу просмотра или редактирования растровой графики (например, Photoshop); Clone Rendered Frame Window (Копия окна визуализации) — создает копию окна визуализации (при этом вы можете выполнить новую визуализацию в основном окне и сравнить результат с предыдущим); Print Image (Печать изображения) — выводит на печать изображение, находящееся в окне кадров визуализации; Clear (Очистить) — очищает окно кадров визуализации; Enable Red/Green/Blue Channel (Включить красный/зеленый/синий канал) — включает или выключает отображение красного, зеленого или синего каналов цветности; Display Alpha Channel (Показать альфа-канал) — задает отображение альфа-канала; Monochrome (Монохромный) — включает отображение результата визуализации в оттенках серого. Программа 3ds Max позволяет отображать в окне, которое является упрощенным вариантом окна Rendered Frame Window (Окно кадров визуализации), растровые изображения и последовательности кадров таких изображений. Для загрузки изображения в окно кадров визуализации выполните команду FileView Image File (ФайлПросмотр растрового изображения). При просмотре последовательности кадров появляются дополнительные кнопки навигации по кадрам.

Использование модуля RAM Player (RAM-проигрыватель) Модуль RAM Player (RAM-проигрыватель) (рис. 5.6) используется для загрузки в память компьютера отдельных кадров или их последовательности для дальнейшего

190

Глава 5. Основы визуализации

сравнения или просмотра в виде анимации с заданной частотой кадров в секунду (fps). Его окно можно открыть, выполнив команду RenderingRAM Player (ВизуализацияRAM-проигрыватель).

Рис. 5.6. Окно модуля RAM Player (RAM-проигрыватель)

Модуль RAM Player (RAM-проигрыватель) имеет два канала (Channel A (Канал A) и Channel B (Канал Б)) и позволяет загружать в эти каналы две различные последовательности растровых изображений, отдельные кадры или анимацию для их одновременного воспроизведения. Щелчок кнопкой мыши в окне просмотра каналов с последующим перетаскиванием позволяет установить и перемещать границу разделения двух каналов. В верхней части окна RAM Player (RAM-проигрыватель) находится панель инструментов с набором кнопок для управления окном проигрывателя: Open Channel (Открыть канал) — открывает стандартное окно выбора файла для загрузки в Channel A (Канал A) или Channel B (Канал Б); Open Last Rendered Image in Channel (Загрузить последнее визуализированное изображение в канал) — загружает последнее визуализированное изображение в выбранный канал; Close Channel (Закрыть канал) — выгружает изображение или анимацию из текущего канала; Save Channel (Сохранить канал) — открывает окно диалога сохранения файла и позволяет сохранить как отдельные кадры и их последовательность, так и анимацию;

191

Окружение и атмосферные эффекты

Horizontal/Vertical Split Screen (Разделить экран по горизонтали/вертикали) — переключает два варианта совместного отображения каналов на горизонтальное или вертикальное; Frame Rate Control (Контроль частоты кадров) — раскрывающийся список с вариантами возможной установки частоты смены кадров в секунду; Double Buffer (toggle) (Двойной буфер (переключатель)) — синхронизирует отображение анимации в обоих каналах.

Окружение и атмосферные эффекты Использование Environment (Окружающая среда) и Effects (Эффекты) позволяет создавать общее настроение, повышая реалистичность сцены. Элементы управления атмосферой предлагают широкий набор эффектов, включая туман, дымку, огонь, дым и т. д. Окно Environment and Effects (Окружающая среда и эффекты) позволяет настраивать параметры отображения окружающей среды и дополнительных эффектов (рис. 5.7). Чтобы получить доступ к настройкам окружающей среды, выполните команду RenderingEnvironment (ВизуализацияОкружающая среда). В результате откроется окно Environment and Effects (Окружающая среда и эффекты) на вкладке Environment (Окружающая среда). Рассмотрим свитки настроек данного окна.

Рис. 5.7. Вкладка Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)

Common Parameters (Общие параметры) В свитке Common Parameters (Общие параметры) (см. рис. 5.7) вкладки Environment (Окружающая среда) задаются параметры отображения внешней среды. В области Background (Фон) можно настроить следующие элементы. 

Color (Цвет) — цвет фона окружающей среды.



Environment Map (Карта текстуры окружающей среды) — щелчок на кнопке с надписью None (Отсутствует) вызывает окно Material/Map Browser (Окно выбора материалов и карт) для загрузки любой из доступных текстурных карт или материала в качестве фона изображения. Для последующего редактирования такой карты (материала) необходимо перетащить ее на образец материала в окне Material Editor (Редактор материалов), выбрав при этом Instance (Привязка) в качестве метода копирования.

192 

Глава 5. Основы визуализации

Use Map (Использовать карту текстуры) — включает/выключает использование карты при визуализации.

Область Global Lighting (Глобальная освещенность) позволяет управлять параметрами общего освещения сцены. 

Tint (Оттенок) — образец цвета, устанавливающий оттенок света всех источников света сцены, кроме параметра Ambient (Цвет подсветки).



Level (Уровень) — параметр, изменяющий уровень силы света для всех источников света сцены, кроме Ambient (Цвет подсветки) (при значении, равном 1, сила света не меняется).



Ambient (Цвет подсветки) — образец цвета, которым будут равномерно окрашены объекты сцены.

Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции) Свиток Exposure Control (Контроль экспозиции) позволяет изменять параметры общей освещенности сцены за счет настройки выходных уровней и цветового диапазона так, как если бы использовалась настройка экспозиции фотоаппарата (рис. 5.8).

Рис. 5.8. Свитки Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции)

С его помощью можно, например, осветлить слишком темные сцены без изменения настройки источников света. Небольшое окно предварительного просмотра позволяет увидеть все изменения, которые производятся c помощью параметров свитка Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции).

Atmosphere (Атмосфера) Свиток Atmosphere (Атмосфера) (рис. 5.9) дает доступ к четырем типам атмосферных эффектов: Fire Effect (Эффект огня), Fog (Туман), Volume Fog (Объемный туман) и Volume Light (Объемный свет). Для выбора атмосферного эффекта и управления им с помощью настроек свитка Atmosphere (Атмосфера) выполните следующие действия. 1.

Щелкните на кнопке Add (Добавить).

2.

В открывшемся окне Add Atmospheric Effect (Добавить атмосферный эффект) выберите из списка тип атмосферного эффекта и щелкните на кнопке OK для

193

Окружение и атмосферные эффекты

подтверждения выбора. В результате выбранный эффект добавится в список Effects (Эффекты). При необходимости добавьте таким же образом другие эффекты. 3.

Для удаления эффекта из списка Effects (Эффекты) выделите его и щелкните на кнопке Delete (Удалить).

4.

Установка флажка Active (Активный) включает эффект в итоговую визуализацию сцены.

Рис. 5.9. Свиток Atmosphere (Атмосфера)

5.

С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в списке. Конечный результат зависит от того, как расположены эффекты в списке, так как визуализация эффектов производится последовательно, начиная с верхнего.

6.

Кнопка Merge (Присоединить) позволяет присоединить к текущей сцене эффекты, подгружаемые из других сцен.

7.

Используя поле Name (Имя), можно переименовать любой эффект в списке.

Настройка атмосферных эффектов Атмосферные эффекты являются визуальными эффектами, позволяющими имитировать такие природные явления, как дым, огонь, туман, облака, взрывы и т. п. Эффекты, примененные к сцене, становятся видимыми только после визуализации. Зона действия атмосферных эффектов может быть ограничена различными способами: ближней и дальней границами, границей светового луча, настройками параметров. Чтобы ограничить действие эффектов Fire Effect (Эффект огня) и Volume Fog (Объемный туман), применяется габаритный контейнер. Он задает границы пространства сцены, в пределах которого будет формироваться эффект. Для создания габаритного контейнера необходимо щелкнуть на кнопке Helpers (Вспомогательные объекты) вкладки Create (Создание) командной панели и выбрать из раскрывающегося списка Atmospheric Apparatus (Атмосферная оснастка) (рис. 5.10). Свиток Object Type (Тип объекта) содержит три кнопки для создания габаритных контейнеров разной формы: BoxGizmo (Параллелепипед Гизмо), SphereGizmo (Сфера Гизмо) и CylGizmo (Цилиндр Гизмо). После создания габаритного контейнера к нему можно применить стандартные преобразования перемещения, вращения и масштабирования.

Рис. 5.10. Типы габаритных контейнеров

194

Глава 5. Основы визуализации

Эффект Fire Effect (Эффект огня) После добавления эффекта Fire Effect (Эффект огня) в список Effects (Эффекты) свитка Atmosphere (Атмосфера) окна Environment and Effects (Окружающая среда и эффекты) настройки данного эффекта появляются в свитке Fire Effect Parameters (Параметры эффекта огня) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты) (рис. 5.11). Свиток Fire Effect Parameters (Параметры эффекта огня) содержит следующие области.

Рис. 5.11. Свиток 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 (Детализация пламени) — контролирует величину изменения цвета и резкость на границах каждого цвета;

195

Окружение и атмосферные эффекты







Density (Плотность) — позволяет задавать прозрачность эффекта горения;



Samples (Выборка) — устанавливает частоту дискретизации эффекта.

Motion (Движение) представлена двумя параметрами: •

Phase (Фаза) — контролирует частоту изменения эффекта (если установлен флажок Explosion (Взрыв), то Phase (Фаза) контролирует стадии от образования пламени до образования дыма, используя значения от 0 до 1 000 000 000);



Drift (Дрейф) — управляет визуализацией пламени вдоль оси Z габаритного контейнера.

Explosion (Взрыв) — позволяет настраивать параметры взрыва: •

Explosion (Взрыв) — включает анимацию размера, плотности и цвета, основываясь на анимации параметра Phase (Фаза);



Setup Explosion (Настройка взрыва) — открывает окно Setup Explosion Phase Curve (Настройка кривой фаз взрыва), в котором можно задать параметры кривой для начала и окончания взрыва;



Smoke (Дым) — включает создание дыма в процессе взрыва, основанном на значениях параметра Phase (Фаза);



Fury (Темп взрыва) — задает скорость мерцания вспышки взрыва.

Эффект Fog (Туман) Эффект Fog (Туман) основывается на значениях области Environment Ranges (Диапазоны окружающей среды) настроек съемочной камеры. В связи с этим для применения эффекта тумана сцена должна визуализироваться с использованием вида из камеры. Настроить параметры атмосферного эффекта Fog (Туман) можно в свитке Fog Parameters (Параметры тумана) (рис. 5.12). Рассмотрим настройки свитка Fog Parameters (Параметры тумана). 

В области Fog (Туман) устанавливаются следующие параметры: •

Color (Цвет) — отвечает за выбор цвета тумана;



Environment Color Map (Карта цвета окружающей среды) — позволяет выбрать карту текстуры для использования ее в качестве цвета тумана;



Environment Opacity Map (Карта прозрачности окружающей среды) —

Рис. 5.12. Свиток Fog Parameters (Параметры тумана)

196

Глава 5. Основы визуализации

дает возможность использовать текстурную карту для управления плотностью тумана;







Fog Background (Туман фона) — включает/выключает применение эффекта тумана к фону сцены;



Type (Тип) — переключатель между двумя типами тумана: Standard (Стандартный) и Layered (Слоистый).

Standard (Стандартный) содержит параметры стандартного тумана: •

Exponential (Экспоненциально) — позволяет управлять плотностью тумана по мере удаления от камеры;



Near (Ближе) и Far (Дальше) — позволяют задавать процент плотности тумана на ближней и дальней границах, определяемых в настройках камеры.

Layered (Слоистый) управляет настройками слоистого тумана: •

Top (Верх) — устанавливает верхнюю границу слоя тумана;



Bottom (Низ) — задает нижнюю границу слоя тумана;



Density (Плотность) — определяет плотность тумана;



Horizon Noise (Шум горизонта) — добавляет шум в туман на линии горизонта, что повышает реалистичность эффекта;



Size (Размер) — задает значение коэффициента масштаба для области шума;



Falloff (Спад) — позволяет переключаться между тремя параметрами затухания плотности тумана: Top (Сверху), Bottom (Снизу) и None (Отсутствует);



Angle (Угол) — устанавливает угол действия области шума над линией горизонта;



Phase (Фаза) — позволяет анимировать область шума.

Эффект Volume Light (Объемный свет) Эффект Volume Light (Объемный свет) имитирует прохождение светового луча в непрозрачной атмосфере (туман, дым, пыль и т. п.). Параметры данного эффекта появляются в свитке Volume Light Parameters (Параметры объемного света) (рис. 5.13) после добавления этого эффекта в список Effects (Эффекты) свитка Atmosphere (Атмосфера) окна Environment and Effects (Окружающая среда и эффекты). С помощью свитка Volume Light Parameters (Параметры объемного света) можно настроить параметры в следующих областях. 

Lights (Источники света) — позволяет выбрать источник света (кнопка Pick Light (Указать источник света)) либо удалить его из списка (кнопка Remove Light (Удалить источник света).

197

Окружение и атмосферные эффекты 

Volume (Объем) — управляет характеристиками светового луча: •

Fog Color (Цвет тумана) и Attenuation Color (Цвет затухания) — образцы цвета, позволяющие задавать основной цвет светового луча и цвет, на который он будет изменяться по мере удаления от источника света;



Exponential (Экспоненциально) — экспоненциально увеличивает плотность тумана по мере удаления от источника света;



Density (Плотность) — управляет плотностью тумана;



Max Light (Максимальная яркость) — ограничивает максимальную яркость тумана, нарастающую по мере удаления от источника света;



Min Light (Минимальная яркость) — определяет настройки уровня подсветки;



Atten. Mult. (Усилитель затухания) — управляет эффектом затухания цвета;



Filter Shadows (Фильтрация теней) — позволяет улучшить качество визуализации объемного света за счет повышения количества отсчетов в выборке; может принимать одно из четырех положений: Low (Низкое), Medium (Среднее), High (Высокое) и Use Light Smp Range (Использовать область усреднения источника света).

Рис. 5.13. Свиток Volume Light Parameters (Параметры объемного света)



Attenuation (Затухание) — содержит два счетчика, позволяющие задавать Start (Начальная) и End (Конечная) границы затухания эффекта (значения базируются на границах ближней и дальней зоны источника света).



Noise (Шум) — позволяет настраивать режим шума в луче света: •

Noise On (Включить шум) — включает/выключает эффект шума;



Amount (Величина) — процентное отношение шума в составе тумана (может принимать значения от 0 (отсутствие шума) до 1 (максимальный шум));



Link To Light (Связать с источником) — связывает эффект шума с системой координат источника света;



Type (Тип) — позволяет выбрать один из трех типов шума: Regular (Повторяющийся), Fractal (Фрактальный) или Turbulence (Турбулентный);



Invert (Инвертировать) — установка флажка позволяет инвертировать эффект шума;

198

Глава 5. Основы визуализации



Noise Threshold (Порог уровня шума) — отвечает за ограничение нижней (Low (Нижнее значение)) и верхней (High (Верхнее значение)) границы шума;



Uniformity (Однородность) — управляет однородностью тумана;



Levels (Уровни) — задает количество итераций алгоритма шума;



Size (Размер) — определяет размер клубов тумана или дыма;



Phase (Фаза) — при анимации позволяет управлять скоростью изменения шума;



Wind Strength (Сила ветра) — задает силу ветра;



Wind from the: (Ветер с:) — позволяет выбрать одно из шести направлений ветра.

Эффект Volume Fog (Объемный туман) По своим параметрам Volume Fog (Объемный туман) во многом напоминает объемный свет. Настройки этого эффекта находятся в свитке Volume Fog Parameters (Параметры объемного тумана) (рис. 5.14). Свиток Volume Fog Parameters (Параметры объемного тумана) позволяет настроить параметры в следующих областях.  Gizmos (Габаритные контейнеры) — пре-

доставляет возможность выбрать габаритный контейнер (кнопка Pick Gizmo (Указать контейнер)) либо удалить его из списка (кнопка Remove Gizmo (Удалить контейнер)). Soften Gizmo Edges (Сглаженные края габаритного контейнера) — счетчик в диапазоне от 0 до 1, позволяющий задавать размытость краев эффекта тумана. Не рекомендуется использовать в качестве значения 0, так как это может стать причиной жестких, ступенчатых краев.  Volume (Объем) — позволяет настраиРис. 5.14. Свиток Volume Fog Parameters (Параметры объемного тумана)

вать параметры Color (Цвет), Exponential (Экспоненциально) и Density (Плотность), аналогичные настройкам объемного света. Кроме того, данная область содержит такие параметры:



Step Size (Размер шага) — позволяет управлять степенью неоднородности тумана;



Max Steps (Максимальное количество шагов) — ограничивает количество просчетов выборки тумана;

Окружение и атмосферные эффекты

• 

199

Fog Background (Туман фона) — позволяет применять эффект тумана к фоновому изображению.

Noise (Шум) — по своим параметрам практически аналогична рассмотренной выше области для объемного света.

Оптические эффекты Оптические эффекты выступают как часть процесса визуализации, позволяя повысить реалистичность трехмерных сцен. Доступ к группе оптических эффектов можно получить с помощью вкладки Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты) (рис. 5.15). Для выбора оптических эффектов и настройки их параметров в свитке 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 (Размытие движения).

Рис. 5.15. Вкладка Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты)

2.

В окне Add Effect (Добавить эффект) выберите из списка тип требуемого эффекта и щелкните на кнопке OK для подтверждения выбора. В результате указанный эффект добавится в список Effects (Эффекты). При необходимости добавьте таким же образом другие эффекты.

3.

Для удаления эффекта из списка Effects (Эффекты) выделите его и щелкните на кнопке Delete (Удалить).

4.

Установите флажок Active (Активный), чтобы включить эффект в итоговую визуализацию сцены.

5.

С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в списке.

200

Глава 5. Основы визуализации

6.

Кнопка Merge (Присоединить) позволяет присоединить к текущей сцене эффекты, подгружаемые из других сцен.

7.

Используя поле Name (Имя), вы можете переименовать любой эффект списка.

8.

В области Preview (Просмотр) настройте параметры, влияющие на предварительный просмотр эффектов: •

установите переключатель Effects (Эффекты) в одно из двух положений: All (Все) для предварительного просмотра всех эффектов списка или Current (Текущий) для просмотра только выделенного;



установите флажок Interactive (Интерактивный), чтобы изменения параметров эффектов сразу отображались в окне визуализации;



щелкните на кнопке Show Original (Показать оригинал) для просмотра сцены без применения эффектов;



щелчок на кнопке Update Scene (Обновить сцену) обновляет изображение в окне визуализации с учетом выполненных изменений параметров эффектов и самой сцены;



щелчок на кнопке Update Effect (Обновить эффект) обновляет визуализируемое изображение в том случае, если снят флажок Interactive (Интерактивный).

Фильтры Lens Effects (Эффекты линзы) Группа Lens Effects (Эффекты линзы) является наиболее применяемой в визуализации сцен с дополнительными эффектами. В эту группу входят фильтры, имитирующие оптические эффекты реальных съемочных камер: Glow (Сияние), Ring (Круг), Ray (Луч), Auto Secondary (Вторичные автоблики), Manual Secondary (Вторичные блики ручной настройки), Star (Звезда) и Streak (Полоса). Для доступа к списку эффектов линзы необходимо выделить в списке Effects (Эффекты) строку Lens Effects (Эффекты линзы). В результате в нижней части окна Environment and Effects (Окружающая среда и эффекты) появится свиток Lens Effects Parameters (Параметры эффектов линзы) (рис. 5.16). Для выбора необходимого фильтра выделите его имя в списке слева и щелкните на кнопке со стрелкой >. В результате выделенный фильтр переместится в правое окно. Для удаления выбранного фильтра из просчетов переместите его обратно — из правого окна в левое. Настройки общих параметров для всех фильтров находятся в свитке Lens Effects Globals (Глобальные настройки эффектов линзы) (рис. 5.17). Вкладка Parameters (Параметры) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) содержит следующие настройки: 

Load (Загрузить) — позволяет загрузить сохраненные ранее параметры фильтров данной группы;



Save (Сохранить) — вызывает окно Save Lens Effects file (Сохранить файл эффектов линзы), в котором вы можете указать имя файла и путь для его сохранения;

Окружение и атмосферные эффекты

Рис. 5.16. Свиток Lens Effects Parameters (Параметры эффектов линзы)

201

Рис. 5.17. Свиток Lens Effects Globals (Глобальные настройки эффектов линзы)



Size (Размер) — задает размер участка изображения, подверженного влиянию фильтра (определяется в процентах от всего визуализируемого изображения);



Intensity (Интенсивность) — управляет общими параметрами яркости и непрозрачности эффектов линзы;



Seed (Случайная выборка) — задает случайное число для генерации эффектов линзы без изменения начальных параметров;



Angle (Угол) — задает значения угла поворота эффекта линзы относительно начального положения при повороте съемочной камеры;



Squeeze (Сдавливание) — управляет изменением пропорций области эффекта, растягивая его по горизонтали (при положительных значениях счетчика) или по вертикали (при отрицательных);



Lights (Источники света) — содержит две кнопки: Pick Light (Указать источник света), позволяющую выбрать источник света в окне проекции, и Remove (Удалить), которая удаляет из списка выделенный источник света.

Настройки вкладки Scene (Сцена) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) позволяют более тонко настраивать параметры линзовых эффектов, влияющих на их отображение в сцене. Среди данных настроек присутствуют режим воздействия на альфа-канал, действие эффекта в зависимости от расстояния до камеры или расположения их по оси Z (глубины сцены) и некоторые другие. При настройке эффектов линзы обычно используются параметры по умолчанию. Рассмотрим общие параметры, характерные для настройки фильтров группы Lens Effects (Эффекты линзы) на примере фильтра Glow (Сияние). Он позволяет создавать эффект светящегося ореола вокруг любых выбранных объектов. Одной из задач, выполняемых с помощью этого фильтра, является создание эффекта свечения неоновой рекламы. При выборе фильтра Glow (Сияние) становится доступным свиток Glow Element (Элемент сияния) (рис. 5.18) с настройками его параметров.

202

Глава 5. Основы визуализации

Свиток Glow Element (Элемент сияния) содержит две вкладки: Parameters (Параметры) и Options (Режимы). Для настройки элементов вкладки Parameters (Параметры) (см. рис. 5.18) выполните следующие действия. 1. Установите или снимите флажок On (Включить) в зависимости от того, должен или нет просчитываться эффект во время визуализации изображения. 2. Задайте размер области действия эффекта, используя параметр Size (Размер). 3. С помощью параметра Intensity (Интенсивность) установите уровень яркости и непрозрачности каждого отдельного эффекта. Рис. 5.18. Свиток Glow Element (Элемент сияния) настроек эффекта Glow (Сияние)

4. Установите флажок Glow Behind (Сияние позади), чтобы эффект проявлялся позади объектов сцены.

5.

Используя счетчик Occlusion (Перекрытие), укажите, в какой мере на эффекте должно сказываться влияние параметров области Occlusion (Перекрытие) из свитка Lens Effects Globals (Глобальные настройки эффектов линзы) вкладки Scene (Сцена).

6.

Установив флажок Squeeze (Сдавливание), включите режим растяжения области действия эффекта, заданного на вкладке Parameters (Параметры) свитка Lens Effects Globals (Глобальные настройки эффектов линзы).

7.

Параметр Use Source Color (Использовать цвет источника) позволяет задать долю использования цвета объекта или источника света по отношению к указанным цветам Radial Color (Цвет вдоль радиуса) или Circular Color (Цвет вдоль окружности). Значение, равное 0, позволяет использовать только цвета, указанные в образцах, а значение, равное 100, использует только цвет источника. Промежуточные значения генерируют смешанные цвета.

8.

В области Radial Color (Цвет вдоль радиуса) настройте параметры внешней и внутренней областей эффекта сияния: •

с помощью образцов цвета укажите цвет внешней и внутренней областей эффекта сияния;



щелкните на кнопке None (Отсутствует), если нужно выбрать в качестве образца цвета карту текстуры;



нажмите кнопку Falloff Curve (Кривая спада), чтобы настроить кривую влияния цвета вдоль радиуса с использованием более чем одного цвета или текстурной карты.

Окружение и атмосферные эффекты

9.

10.

203

Область Circular Color (Цвет вдоль окружности) позволяет использовать четыре образца цвета, которые будут располагаться по окружности внешней части эффекта. Параметр Mix (Смешивание) задает степень смешивания цветов группы Circular Color (Цвет вдоль окружности). Действие остальных кнопок не отличается от рассмотренных для области Radial Color (Цвет вдоль радиуса). С помощью кнопки Size Curve (Кривая размера) настройте в области Radial Size (Радиальный размер) кривую распространения эффекта относительно объекта или источника света, которому назначен этот эффект. Щелчок на кнопке с надписью None (Отсутствует) позволяет загрузить в качестве управляющей областью эффекта карту текстуры.

На рис. 5.19 показана вкладка Options (Режимы) свитка Glow Element (Элемент сияния). Для настройки параметров вкладки Options (Режимы) выполните следующие действия. 1.

2.

В области Apply Element To (Применить элемент к) установите или снимите следующие флажки:

Рис. 5.19. Вкладка Options (Режимы) свитка Glow Element (Элемент сияния)



Lights (Источники света) — применение эффекта к источникам света, выбранным в области Lights (Источники света) вкладки Parameters (Параметры) свитка Lens Effects Globals (Глобальные настройки эффектов линзы);



Image (Изображение) — применение эффекта к визуализированному изображению с использованием параметров области Image Sources (Источники изображения);



Image Centers (Центры изображения) — применяется к центру объекта (или группе объектов) с учетом настроек области Image Filters (Фильтры изображения).

В области Image Sources (Источники изображения) настройте параметры источников сияния. •

Object ID (Идентификатор объекта) — позволяет применять эффект к отдельным объектам сцены с назначенным каналом G-Buffer (G-буфер). G-буфер — это буфер графики, который может быть присвоен объекту в области Rendering Control (Управление визуализацией) окна Object Properties (Свойства объекта), вызываемого одноименной командой контекстного меню объекта. Для применения эффекта к отдельным объектам сцены номера

204

Глава 5. Основы визуализации

их каналов G-буфера должны совпадать с номерами в счетчике Object ID (Идентификатор объекта).

3.

4.



Material ID (Идентификатор канала материала) — указывает на то, что эффекты линзы будут применяться к объекту или части объекта с назначенным в окне Material Editor (Редактор материалов) номером Material ID Channel (Канал идентификаторов материала), который соответствует каналу, установленному в поле Material ID (Идентификатор канала материала).



Unclamp (Неограниченный цвет) — это цвет более яркий, чем белый (со значениями всех параметров, равными 255). Параметр Unclamp (Неограниченный цвет) позволяет задавать минимальное значение, при достижении которого будет применяться эффект сияния к участкам изображения. При значении, равном 1, эффект будет применяться ко всем пикселам изображения, значения которых больше 255.



Surf Norm (Нормаль поверхности) — эффект сияния будет применяться к участкам поверхности, нормали которых находятся по отношению к камере в пределах углов, заданных с помощью параметра Surf Norm (Нормаль поверхности).



Whole (Вся сцена) — эффект сияния будет применен ко всей сцене с учетом значений параметров области Image Filters (Фильтры изображения).



Alpha (Альфа-канал) — позволяет применять эффект сияния к альфа-каналу изображения.



Z Hi (Верхний предел Z-буфера) и Z Lo (Нижний предел Z-буфера) — задают значения ближней и дальней границ диапазона сцены, базирующихся на расстоянии от съемочной камеры, в пределах которого будет рассчитываться эффект.

Задайте значения параметров, определяющих степень применения эффектов линзы, в области Image Filters (Фильтры изображения): •

All (Все) — эффект сияния применяется ко всем пикселам сцены;



Edge (Ребро) — эффект будет применяться к краям областей пикселов, вызывая мягкий эффект гало по обе стороны от контуров;



Perim Alpha (Периметр альфа-канала) — эффект сияния проявится только на внешних границах объекта, определяемых с помощью альфа-канала;



Perim (Периметр) — эффект сияния, подобный предыдущему, но применяется к объектам, не имеющим альфа-канала, и основывается на интерференции ребер объектов;



Bright (Яркость) — позволяет применять эффект только к тем областям, яркость которых выше заданной этим параметром;



Hue (Цветовой тон) — эффект будет применяться только к тем областям, цветовой тон которых указан в поле образца цвета.

С помощью настроек области Additional Effects (Дополнительные эффекты) примените к эффектам линзы различные текстурные карты (например, Noise (Шум)). Установка флажка Apply (Применить) активизирует выбранную карту

Модуль Video Post (Видеомонтаж)

205

текстуры, а кнопка Radial Density (Радиальная плотность) позволяет настраивать кривую аналогично параметру Radial Falloff (Радиальный спад). Остальные фильтры позволяют получать следующие эффекты. 

Blur (Размытие) — позволяет применять размытие следующим образом: ко всей сцене, только к объектам сцены, исключая фон, базируясь на значениях яркости или используя для этого текстурную карту. С помощью эффекта Blur (Размытие) можно размыть изображение тремя способами: •

Uniform (Равномерный) — размытие применяется равномерно ко всему изображению;



Directional (Направленный) — создается эффект направленного размытия, подобно тому, с помощью которого изображают движение;



Radial (Радиальный) — радиальное размытие сцены, направленное в определенную точку.



Brightness and Contrast (Яркость и контраст) — настраивает параметры яркости и контрастности изображения. Может применяться для согласования визуализированных объектов сцены с фоновым изображением.



Color Balance (Цветовой баланс) — управляет балансом цветовых составляющих изображения сцены.



Depth of Field (Глубина резкости) — позволяет управлять размытием изображения по мере удаления от камеры. Для настройки расфокусировки изображения могут использоваться параметры области Focal Parameters (Параметры фокусировки), позволяющие задавать диапазон действия эффекта или использовать значения съемочной камеры. Данный фильтр позволяет имитировать съемку реальной камерой или фотоаппаратом.



File Output (Вывод в файл) — сохраняет визуализированное изображение сцены до того, как к нему будут применены какие-либо другие оптические эффекты, размещенные в списке ниже этого фильтра.



Film Grain (Зернистость) — имитирует естественную зернистость фото- или кинопленки.



Motion Blur (Размытие движения) — применяется для размытия движущихся объектов сцены, позволяя повысить реалистичность анимации за счет имитации эффекта размытия реальных съемочных камер.



Hair and Fur (Волосы и мех) — предназначен для визуализации волос. С помощью данного эффекта обеспечивается контроль над параметрами визуализации, размытием движения, тенями и взаимодействием с другими объектами. Основные параметры модуля для создания волос Hair and Fur эффекта сосредоточены в свитках настроек модификатора Hair and Fur (Волосы и мех).

Модуль Video Post (Видеомонтаж) Программный модуль Video Post (Видеомонтаж) предназначен для обработки визуализированных изображений с целью получения таких эффектов, как блики или

206

Глава 5. Основы визуализации

свечение, создания межкадровых переходов, добавления внешних изображений и многого другого. Для доступа к модулю Video Post (Видеомонтаж) выполните команду RenderingVideo Post (ВизуализацияВидеомонтаж). В результате откроется окно (рис. 5.20).

Рис. 5.20. Окно Video Post (Видеомонтаж)

В левой части окна Video Post (Видеомонтаж) размещается список элементов очереди событий видеомонтажа (VP Queue (Очередь видеомонтажа)), в правой части — окно шкалы времени (VP Timeline (Временная шкала видеомонтажа)), а сверху и снизу — панель инструментов и строка состояния.

Панель инструментов Video Post (Видеомонтаж) Панель инструментов Video Post (Видеомонтаж) содержит следующие кнопки: New Sequence (Создать цепочку) — создает новую цепочку событий и ставит ее в новую очередь; Open Sequence (Открыть цепочку) — загружает сохраненную ранее цепочку видеомонтажа; Save Sequence (Сохранить цепочку) — сохраняет цепочку видеомонтажа на диске; Edit Current Event (Редактировать текущее событие) — открывает окно, в котором можно отредактировать текущее событие; Delete Current Event (Удалить текущее событие) — удаляет текущее событие; Swap Events (Переставить события) — меняет местами положение двух выделенных событий очереди;

Модуль Video Post (Видеомонтаж)

207

Execute Sequence (Выполнить цепочку) — запускает процесс визуализации изображения, заданного цепочкой событий видеомонтажа; Edit Range Bar (Редактировать диапазон действия) — позволяет редактировать диапазон времени действия события; Align Selected Left (Выровнять выделенные диапазоны влево) — выравнивает влево диапазоны действия выделенных событий; Align Selected Right (Выровнять выделенные диапазоны вправо) — выравнивает вправо диапазоны действия выделенных событий; Make Selected Same Size (Уравнять выделенные диапазоны) — делает диапазон действия выделенных событий одинаковой продолжительности; Abut Selected (Состыковать выделенные диапазоны) — выравнивает конец одного выделенного события относительно начала другого; Add Scene Event (Добавить событие-сцену) — добавляет изображение окна проекции в очередь видеомонтажа; Add Image Input Event (Добавить событие ввода изображения) — позволяет добавлять в качестве событий внешние изображения; Add Image Filter Event (Добавить событие фильтрации изображения) — добавляет фильтры для обработки изображения; Add Image Layer Event (Добавить событие композиции изображений) — позволяет объединять несколько событий очереди, расположенных друг за другом; Add Image Output Event (Добавить событие вывода изображения) — позволяет направить визуализированное изображение в файл или на внешнее устройство; Add External Event (Добавить внешнее событие) — добавляет в сцену событие, вызывающее для обработки изображения внешнюю программу; Add Loop Event (Добавить событие-цикл) — позволяет настраивать циклическое повторение другого события очереди.

Очередь видеомонтажа Окно очереди видеомонтажа, расположенное в левой части окна Video Post (Видеомонтаж), представляет собой список событий, выполняемых последовательно сверху вниз. Если в списке присутствуют события, являющиеся дочерними по отношению к другим событиям сцены, то сначала выполняются они. На рис. 5.21 показан список событий очереди, в котором события будут выполняться в следующем порядке. 1.

Визуализируется вид из камеры (событие-сцена Camera01).

2.

Добавится внешний файл goodyear.jpg (событие ввода изображения).

3.

К изображению файла goodyear.jpg будет применен фильтр Lens Effects Glow (Эффекты линзы, сияние) (событие фильтрации изображения).

208

Глава 5. Основы визуализации

4.

Визуализация вида из камеры и внешний файл goodyear.jpg объединяются в одно изображение с использованием текстурной маски, указанной в событии Alpha Compositor (Альфа-объединитель) (событие композиции изображений).

5.

Полученное изображение будет записано в файл с названием Outpute.jpg (Событие вывода изображения).

Рис. 5.21. События очереди видеомонтажа

Таким образом, положение события в списке важно с точки зрения конечного результата. Событие можно удалить или переместить на новое место в очереди, щелкнув на его имени и перетащив в нужное место списка. Формирование последовательного списка событий происходит тогда, когда при добавлении событий в списке ничего не выделено. Чтобы добавить дочернее событие, необходимо выделить событие списка, которое должно стать родительским, и только после этого добавлять новое. События композиции изображений и события-циклы всегда добавляются как родительские, а внешние события — как дочерние.

События и фильтры видеомонтажа Модуль Video Post (Видеомонтаж) позволяет оперировать следующими типами событий. 





Scene Event (Событие-сцена) — позволяет выбрать окно проекции, которое будет использовано для визуализации в очереди видеомонтажа. Для события-сцены можно настроить следующие параметры: •

назначить визуализатор из списка установленных;



настроить общие параметры визуализатора (такие как визуализация эффектов, визуализация полями, смещения и т. д.);



включить или выключить из итоговой визуализации показ материалов, расчет теней, отражения и т. д.;



включить или выключить сглаживание и фильтрацию текстурных карт.

Image Input Event (Событие ввода изображения) — позволяет добавлять в сцену статичное или анимированное изображение. В отличие от события-сцены это может быть ранее сохраненное на диске изображение или изображение, полученное с внешнего устройства. Для использования в качестве события ввода изображения можно применять любые форматы графических файлов, поддерживаемых 3ds Max. Данное событие обычно используется для последующего применения к нему фильтров или в составе событий композиции. Событие ввода изображения позволяет настраивать следующие основные параметры: •

выравнивание, размер и диапазон кадров входящего изображения;



начало и конец действия события в рамках шкалы времени видеомонтажа.

Image Filter Event (Событие фильтрации изображения) — позволяет применять фильтры для обработки событий-сцен или событий ввода изображения. Обычно события фильтрации изображений являются родительскими по отношению

Модуль Video Post (Видеомонтаж)

209

к изображениям, к которым они применяются. Доступны следующие типы фильтров.





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 (Маска). Доступны следующие типы фильтров-объединителей.

210

Глава 5. Основы визуализации



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. Обычно является последним в очереди событий и при необходимости может повторяться неоднократно для записи в разные форматы графических файлов.

Глава 6.

Технологии вывода анимированных изображений • Визуализация анимации • Размытие движущихся объектов сцены • Технология сжатия видео • Сетевая визуализация • Общие рекомендации по визуализации видеоизображений

Растущая популярность цифрового видео, Интернета и широкое распространение CD и DVD породили спрос на графическое содержимое, поставляемое на цифровых носителях. В отличие от статического изображения, которое может быть отпечатано на бумаге, анимационные ролики могут существовать только в виде самостоятельных продуктов, отображаемых на экране монитора, телевизора или проектора. Возможности программы 3ds Max настолько обширны, что с ее помощью можно создавать анимацию с высоким разрешением и цветовой глубиной не только для цифрового воспроизведения, но и для представления на видео. Приложение 3ds Max предназначено для профессионального моделирования и анимации, которая способна управлять 64 битами информации на кадр — то есть по 16 бит на каждый канал RGBA. Формат итогового изображения должен определяться задолго до того, как начнется визуализация анимированных образов, так как в зависимости от выбранного формата может существенно меняться как творческое, так и техническое решение проекта.

Визуализация анимации Анимация основывается на особенностях человеческого зрения. Если вы видите серию связанных неподвижных картинок, которые быстро сменяют друг друга, то ваш мозг начинает воспринимать их как непрерывное изображение. Каждое такое изображение называется кадром. Именно визуализация диапазона кадров приводит к тому, что мы на выходе получаем либо последовательность статичных изображений (которые затем можно использовать в программах постобработки), либо анимированный файл. Исходя из того, что визуализация анимированных образов базируется на визуализации статичных кадров, настройки визуализатора во многом совпадают. Рассмотрим основные требования к визуализации анимированных изображений.

Определение формата и оптимального разрешения Как уже говорилось ранее, определение конечных целей проекта на как можно более ранней стадии моделирования является обязательным. Именно до начала моделирования вы должны точно знать требования к выходному изображению, степень детализации, тип носителя и устройство воспроизведения итогового файла. Разрешением называется горизонтальное и вертикальное количество пикселов в двумерном изображении. Например, разрешение 640 Ч 480 описывает изображение, у которого 640 пикселов по горизонтали и 480 по вертикали. Важной характеристикой изображения является также глубина цвета (см. ниже), например 16 бит, 24 бита или 32 бита (изображение с альфа-каналом). Соотношение ширины и высоты изображения называется форматным соотношением (Aspect ratio). Оно вычисляется делением горизонтального разрешения на вертикальное. При разрешении 640 Ч 480 форматное соотношение равно 1,33 (или 4:3). Такое соотношение является общепринятым для телевизоров и компьютерных мониторов. Тем не менее, в зависимости от типа монитора, пленки и проекционной системы, форматное соотношение может находиться в пределах

Визуализация анимации

213

от 1,33 до 2,35. Задать требуемое разрешение можно, используя вкладку Common (Общие) окна Render Setup (Настройки визуализации) (рис. 6.1). Рассмотрим основные форматы итогового изображения для анимации (разрешение, форматное соотношение, соотношение пиксела): 

640 Ч 480; 1,33; 1 — низкое разрешение монитора;



800 Ч 600; 1,33; 1 — среднее разрешение монитора;



1024 Ч 768; 1,33; 1 — среднее разрешение монитора;



1280 Ч 960; 1,33; 1 — высокое разрешение монитора;



1600 Ч 1200; 1,33; 1 — высокое разрешение монитора;



720 Ч 576; 1,33; 1,06 — PAL/SECAM D-1 (европейский телевизионный формат);



720 Ч 486; 1,33; 0,9 — NTSC D-1 (телевизионный формат Азии и Америки);



720 Ч 1280; 1,77; 1 — HDTV (формат DVD-устройств);



1080 Ч 1980; 1,77; 1 —HDTV (формат DVD-устройств);



3072 Ч 2048; 1,5; 1 — 35-мм слайды/пленка (формат Kodak Photo CD).

Рис. 6.1. Окно Render Setup (Настройки визуализации) с раскрытым списком предустановленных форматов

Кроме описанных выше, существуют форматы, которые предназначены для киноиндустрии, и малоиспользуемые телевизионные форматы. Анализируя представленный выше список, можно заметить, что разрешения при разных форматах значительно отличаются друг от друга. Таким образом, формат (разрешение) визуализируемой анимации зависит от типа воспроизводящего устройства. ПРИМЕЧАНИЕ Обычно заказчик видеоролика или другой анимационной продукции заранее оговаривает требования к выводному изображению в зависимости от того, для каких целей выполняется работа и на каком оборудовании будет редактироваться или транслироваться созданная анимация. Например, может потребоваться несжатое видео в полях формата QuickTime с разрешением 720 Ч 576 PAL D-1, соотношением пиксела 1,06 и частотой кадров (fps) — 25 кадров в секунду.

214

Глава 6. Технологии вывода анимированных изображений

Глубина цвета Глубина цвета (Color Depth) — это количество цветов, которое содержится в сгенерированном изображении. Для описания цвета компьютеры оперируют конкретными цифровыми величинами, выраженными в битах (термин одного двоичного числа). Например, в 8-битном изображении (это может быть файл с расширением GIF или PNG) каждый пиксел представлен 8 битами, что позволяет пикселу использовать один из 256 различных цветов. В компьютерной графике существует несколько битовых глубин, которыми может оперировать пользователь. 

8-битная настраиваемая палитра — каждый пиксел содержит один из 256 цветов из всего доступного цветового спектра. При необходимости цветовую палитру можно настраивать для каждого конкретного изображения. Малое количество цветов недостаточно для реалистичного отображения всей цветовой гаммы, зато такой файл имеет малый размер и быстро грузится. Чаще всего эта палитра применяется для Интернета.



16-битная палитра — позволяет использовать один из 65 536 цветов на каждый пиксел. Применяется в играх и мультимедиа.



24-битный цвет — наиболее используемая палитра, способная передавать реальные образы. В каждом пикселе может содержаться один из 16,7 млн цветов. В 24-битных цветных изображениях общее количество бит на пиксел делится на три и присваивается каждому из трех основных цветов, составляющих свет: Red (красный), Green (зеленый) и Blue (cиний). Другими словами, один пиксел в 24-битном изображении содержит 8 бит информации красного цвета, 8 бит — зеленого и 8 бит — синего. Каждый канал может отображать соответствующий цвет при любом из 256 уровней яркости, где 0 соответствует полному отсутствию яркости, а 255 — максимальной яркости. Анимация, предназначенная для фильма или видео, практически всегда визуализируется в 24-битном цвете.



32-битный цвет — это 24-битный цвет с альфа-каналом. Альфа-канал (Alphachannel) — это дополнительные 8 бит информации о прозрачности изображения. Подобная информация добавляется к RGB-данным, характеризующим изображение, поэтому 24-битное изображение с альфа-каналом становится 32-битным рисунком. Альфа-канал, как и каждый из каналов R, G или В, обладает 256 уровнями интенсивности, однако эта информация относится не к цвету, а к изменению прозрачности соответствующего изображения относительно его фона.



64-битный цвет — достаточно редко используемая глубина цвета. Применяется графическими адаптерами, сканерами и другими устройствами, которые могут поддерживать даже более высокую цветовую насыщенность для выполнения внутренних вычислений и вывода высококачественных изображений. Вместе с тем 64-битный цвет является внутренним для 3ds Max и позволяет получать на выходе более сглаженные цветовые переходы.

Кроме того, существуют 48-битный цвет и высокоточные форматы с плавающей точкой.

Визуализация анимации

215

Форматы файлов Кроме форматов выводного изображения, о которых говорилось ранее, необходимо упомянуть и о форматах анимационных файлов. В зависимости от цели можно использовать различные форматы записи. Представленные далее форматы являются в основном 24-битными или 32-битными, но могут поддерживать и более низкую глубину цвета. 

АVI (Audio-Video Interleave) — разработан компанией Microsoft в качестве стандарта цифрового видео для персональных компьютеров. Может записываться как в несжатом, так и в сжатом виде.



BMP (BitMaP) — создан компанией Microsoft для пиктограмм и рисунков в среде Windows. Поддерживается практически всеми приложениями и не имеет методов сжатия. Может иметь 8- и 24-битный цвет.



GIF (Graphic Interchange Format) — 8-битный формат сжатия без потерь, являющийся собственностью компании CompuServe. Широко используется для сжатия изображений, имеющих малое количество цветов. В последние годы популярность анимации в Интернете, для которой активно применяется GIF-89a, привела к применению данного формата для анимированных файлов.



JPG, JPEG (Joint Photographic Experts Group) — разработан как метод сжатия с потерями. Значительно сжимает фотографические изображения путем устранения незначительных различий в цветах пикселов. Этот метод обеспечивает одну из самых высоких степеней сжатия, но может вызвать нежелательные искажения изображения при слишком интенсивном использовании или многократном сжатии. Формат часто применяется для сжатия цифровых видеофайлов.



MPG, MPEG (Motion Picture Experts’ Group) — метод сжатия видео с потерями. Существуют две модификации: MPEG-1, используемый для формата Video CD, и MPEG-2, применяемый в DVD-проигрывателях.



PNG (Portable Network Graphics) — это удобный и надежный формат сжатия без потерь. Аналогично формату GIF имеет хороший коэффициент сжатия изображений с небольшим количеством ровных, сплошных цветов. Возможна запись альфа-канала.



QT (QuickTime) — разработан компанией Apple. Он является первым коммерческим форматом цифрового видео для Macintosh и может применяться для фотои видеофайлов. Данный формат работает с большим количеством различных методов сжатия. Позже была разработана версия для ПК, использующая расширение MOV. Этот формат желательно применять для записи видеоматериала, особенно если идет речь о работе с разными программными платформами.



TGA (TarGA) — создан компанией Pinnacle Systems для захвата видео и вывода на пленку компьютерной графики или цифрового видео. Данный формат поддерживает сжатие без потерь и альфа-канал. Применяется для хранения изображений со сглаженными цветовыми градациями или фотографий.



TIF, TIFF (Tagged Image File Format) — формат фотографий. Существуют различные реализации данного формата в зависимости от платформы — ПК

216

Глава 6. Технологии вывода анимированных изображений

или Macintosh. Многие современные программы воспринимают любую версию. В TIFF есть несколько разных вариантов сжатия без потерь и возможность записи альфа-канала. Отдельно стоит упомянуть о форматах, значительно реже используемых для сохранения компьютерной графики, но имеющих определенную ценность для программ постобработки. В первую очередь речь идет о программе Combustion. То, что пользователи 3ds Max предпочитают работать в этом приложении, объясняется не только большими возможностями данного приложения и его удобством, но и совместимостью с 3ds Max. Это позволяет передавать в программу постобработки значительное количество дополнительной информации, такой как эффекты материалов, информация о нормалях, цвет, скорость и т. д. Можно отметить следующие форматы. 

RLA — разработан компанией Silicon Graphics, позволяет включить в изображение дополнительные каналы. Если выбрать из списка доступных форматов для записи выходного изображения строку RLA Image File (Файл изображения RLA) и щелкнуть на кнопке Save (Сохранить), то откроется окно RLA Image File Format (Формат файла изображения RLA) (рис. 6.2). В нем можно определить, какие каналы из перечисленных в области Optional Channels (3ds max Channels) (Дополнительные каналы (каналы 3ds max)) будут записаны вместе с изображением.

Рис. 6.2. Окно RLA Image File Format (Формат файла изображения RLA)



RPF (Rich Pixel Format) — как и RLA, поддерживает дополнительные каналы изображения. При выборе формата RPF появляется окно (рис. 6.3). Данный формат применяется, когда визуализируемая анимация требует последующей постобработки или добавления эффектов. Формат RPF поддерживает большое количество каналов, недоступных в других случаях.

Основным носителем для записи визуализированных образов является жесткий диск, даже если в дальнейшем планируется вывод изображения на видеопленку или слайды. Главная проблема такого вывода заключается в том, что может возникнуть дефицит свободного места, особенно если визуализируется последовательность кадров. Чтобы избежать такой ситуации, следует выполнить расчет необходимого для хранения последовательности места на жестком диске, для чего нужно визуализировать несколько типичных кадров и умножить их средний размер на общее количество кадров анимации.

Визуализация анимации

217

Рис. 6.3. Окно RPF Image File Format (Формат файла изображения RPF)

Форматы и особенности видеосигнала При записи на видеоленту или при создании проекта, предназначенного для телевизионной трансляции, процесс визуализации имеет некоторые особенности. Существует три общепринятых видеостандарта. Каждый из них имеет собственную частоту смены кадров и разрешения. Рассмотрим эти форматы. 

NTSC (National Television Standards Committee) — используется в США и Японии. Для телевизоров формата NTSC характерны 525 строк развертки с частотой 60 Гц. Типовое разрешение NTSC — 720 Ч 486 пикселов с соотношением пиксела 0,9. Для NTSC используется анимация с частотой 30 кадров в секунду.



PAL (Phase Alternating Line) — применяется в большинстве стран Западной Европы. Для телевизоров этого формата характерны 625 строк развертки с частотой 50 Гц. Типовое разрешение визуализации — 720 Ч 576 пикселов с соотношением пиксела 1,06. Анимация стандарта PAL имеет частоту 25 кадров в секунду.



SECAM (Systeme Electronique CouleurAvec Memoire) — используется во Франции, России и других странах Европы. Как и для стандарта PAL, телевизоры этого формата характеризуются 625 строками развертки с частотой 50 Гц. Здесь также применяется анимация с частотой 25 кадров в секунду.

ВНИМАНИЕ В отличие от форматов, предназначенных для воспроизведения на мониторе, телевизионные стандарты не используют квадратный пиксел. На практике это означает, что если не задать правильное соотношение пиксела, то на экране телевизора изображение будет выглядеть деформированным.

Как уже говорилось ранее, задать требуемое разрешение можно, используя вкладку Common (Общие) окна Render Setup (Настройки визуализации) (см. рис. 6.1). В свою очередь, установить необходимую частоту кадров визуализации можно с помощью настроек области Frame Rate (Частота кадров) окна Time Configuration (Настройка временных интервалов), которое можно вызвать, щелкнув на одноименной кнопке в правой нижней части окна программы.

218

Глава 6. Технологии вывода анимированных изображений

Кроме описанных выше параметров, телевизионные форматы характеризуются наличием полей. На практике это означает, что каждый кадр отображается на экране телевизора в два прохода: электронный луч телевизора формирует строки изображения, пропуская каждую вторую, а затем возвращается и формирует те, которые были пропущены. При выборе режима визуализации для записи на пленку или последующего отображения на экране телевизора необходимо использовать функцию визуализации полей (Render to Fields (Визуализация полей)), которая находится в области Options (Параметры) свитка Common Parameters (Общие параметры) вкладки Common (Общие) окна Render Setup (Настройки визуализации). Благодаря использованию этого параметра изображения визуализируются так же, как их отображает телевизор, то есть каждый кадр визуализируется в два прохода — только четные строки и только нечетные. Применение такого метода занимает больше времени, однако быстро движущиеся объекты будут выглядеть намного ровнее, потому что изображение обновляется в полном соответствии с частотой обновления телевизора. ВНИМАНИЕ Никогда не применяйте визуализацию полей для последующего компьютерного воспроизведения анимации, так как в прогрессивных сканирующих устройствах поля не применяются. Это же справедливо и для записи на кинопленку — кинопроекторы воспроизводят каждый кадр только один раз.

Важно отметить, что не существует стандарта относительно того, какое поле должно быть визуализировано первым — нечетные или четные строки развертки. Порядок, в котором их нужно визуализировать, зависит от используемого аппаратного обеспечения видеомонтажа. СОВЕТ Если при использовании полей вы собираетесь устанавливать задержку для первого или последнего кадра, то необходимо визуализировать их полным кадром без полей. В противном случае остановленный кадр будет выглядеть дрожащим.

Еще одной особенностью формирования изображения для телевизионных приемников является то, что часть кадра не видна на экране. В связи с этим необходимо учитывать отступы для области видео и области титров (рис. 6.4).

ПРИМЕЧАНИЕ Чтобы отобразить границы видео и титров, нужно щелкнуть правой кнопкой мыши на имени окна и выбрать из появившегося меню строку Show Safe Frame (Показывать безопасные области).

Размытие движущихся объектов сцены

219

Рис. 6.4. Окно проекции вида из камеры с включенным отображением границ видео и титров

Указанные области гарантированно позволят отобразить видеоизображение, находящееся внутри внешнего прямоугольника, и любые тексты или титры, вписанные в рамки внутреннего прямоугольника. При создании анимации для заданного типа видеосигнала необходимо учитывать еще одно ограничение для файлов визуализации — может «выпадать» цвет из видеоспектра. Для контроля цветности необходимо провести некоторое количество тестовых визуализаций с установленным флажком Video Color Check (Проверка цветов видео) в области Options (Параметры) свитка Common Parameters (Общие параметры) вкладки Common (Общие) окна Render Setup (Настройки визуализации). При необходимости используйте Scale Luma (Масштабировать яркость) и Scale Saturation (Масштабировать насыщенность) для глобальной настройки «выпадающих» из спектра значений цвета сцены. Сделать это можно с помощью переключателей области Video Color Check (Проверка цветов видео) на вкладке Rendering (Визуализация) окна Preference Settings (Параметры установок). В этом же окне можно задать тип видеосигнала, для которого будут проверяться «выпадающие» из спектра значения цвета, и порядок следования полей (переключатель Field Order (Порядок следования полей)). ВНИМАНИЕ Не забудьте снять флажок Video Color Check (Проверка цветов видео) в окне Render Setup (Настройки визуализации) при проведении окончательной визуализации.

Размытие движущихся объектов сцены Рассмотренный выше параметр Render to Fields (Визуализация полей) используется не только для правильной визуализации видеоизображений, но и для увеличения

220

Глава 6. Технологии вывода анимированных изображений

гладкости оживляемых объектов. При визуализации полей каждый кадр делится на два сканированных образа, при этом каждая половина кадра объединяется с половиной последующего или предыдущего. Результирующий кадр содержит два полуобраза, смещенных во времени (рис. 6.5).

Рис. 6.5. Кадр, сформированный полуполями

Эффект, создаваемый с помощью визуализации полей, похож на тот, который получается в результате использования эффекта Image Blur (Размытие изображения) или Motion Blur (Размытие движения), однако не соответствует им. Размытие движущихся объектов существенно повышает реалистичность анимации. При съемке реальной камерой шторка затвора открывается на какой-то короткий промежуток времени, и если в этот момент снимаемые объекты движутся, то фотография или кадр будут размытыми. В 3ds Max есть шесть способов создания размытой анимации, применяемой для имитации реального размытия и сглаживания движущихся объектов. Рассмотрим эти способы в общих чертах.

Object Motion Blur (Размытие объекта в движении) Object Motion Blur (Размытие объекта в движении) применяется к быстро движущимся объектам сцены для создания более сглаженного движения. Такое размытие базируется на визуализации нескольких копий объекта между кадрами, а затем визуализации их вместе (рис. 6.6).

Размытие движущихся объектов сцены

221

Рис. 6.6. Кадр, визуализированный с использованием Object Motion Blur (Размытие объекта в движении)

В реальности движение камеры не оказывает влияния на такое размытие и поэтому Object Motion Blur (Размытие объекта в движении) обычно не используется для имитации размытия, создаваемого камерой. В этом случае применяется Image Motion Blur (Размытие картинки в движении) или Scene Motion Blur (Размытие сцены в движении). Чтобы размыть объект в движении, сделайте следующее. 1.

Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Object (Объект).

2.

Откройте окно Render Setup (Настройки визуализации), нажав клавишу F10. В области Object Motion Blur (Размытие объекта в движении) свитка Default Scanline Renderer вкладки Renderer (Визуализатор) установите флажок Apply (Применить).

Image Motion Blur (Размытие картинки в движении) Image Motion Blur (Размытие картинки в движении) — один из способов получения смазанного движения путем размытия изображения после визуализации кадра. Этот способ базируется на информации в соседних кадрах и используется для создания эффекта размытия камерой (рис. 6.7).

222

Глава 6. Технологии вывода анимированных изображений

Рис. 6.7. Кадр, визуализированный с использованием Image Motion Blur (Размытие картинки в движении)

В связи с тем что размытие картинки основывается не на визуализации копий объекта, а на размытии визуализированного изображения, существуют ограничения, которые необходимо учитывать, применяя этот способ. 

Размытие не учитывает перекрывающиеся объекты, поэтому в визуализированном изображении появляются «провалы».



Объекты с измененной топологией не размываются. К ним относятся NURBSобъекты или объекты, к которым применена карта Displacement (Смещение).



Image Motion Blur (Размытие картинки в движении) не отображается в отражениях, которые воспринимают только реальные объекты. Это значит, что если, например, мимо витрины магазина (в трехмерной сцене) будет проноситься машина, то в витрине не будет видно размытия этой машины, а только четкое ее отражение, несмотря на то, что с помощью Image Motion Blur (Размытие картинки в движении) вы получите размытие самой машины.

Чтобы размыть картинку в движении, сделайте следующее. 1.

Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение).

Размытие движущихся объектов сцены

223

ПРИМЕЧАНИЕ Обратите внимание на то, что вы не можете для одного объекта включить одновременно параметры Object (Объект) и Image (Изображение). При необходимости можно произвести повторную визуализацию отдельного слоя для последующего использования в Video Post (Видеомонтаж) или программах постобработки.

2.

Откройте окно Render Setup (Настройки визуализации), нажав клавишу F10. В области Image Motion Blur (Размытие картинки в движении) свитка Default Scanline Renderer вкладки Renderer (Визуализатор) установите флажок Apply (Применить).

Motion Blur Rendering Effect (Размытие картинки как эффект визуализации) Motion Blur Rendering Effect (Размытие картинки как эффект визуализации), как и Image Motion Blur (Размытие картинки в движении), базируется на использовании свойств реальной камеры и имеет аналогичный результат визуализированного кадра (рис. 6.8).

Рис. 6.8. Кадр, визуализированный с использованием Motion Blur Rendering Effect (Размытие картинки как эффект визуализации)

Для использования этого способа размытия выполните описанные ниже действия.

224

Глава 6. Технологии вывода анимированных изображений

1.

Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение).

2.

Откройте окно Environment and Effects (Окружающая среда и эффекты), выполнив команду RenderingEffects (ВизуализацияЭффекты). Щелкните на кнопке Add (Добавить) и выберите строку Motion Blur (Размытие движения).

Scene Motion Blur (Размытие сцены в движении) Scene Motion Blur (Размытие сцены в движении) — относительно «дешевый» способ получения размытого изображения с использованием модуля Video Post (Видеомонтаж). В данном случае при визуализации создается след позади всех движущихся объектов сцены. Это получается с помощью многопроходной визуализации в промежутке между двумя соседними кадрами, которые затем объединяются в одном кадре (рис. 6.9).

Рис. 6.9. Кадр, визуализированный с использованием модуля Video Post (Видеомонтаж)

Для добавления или редактирования Scene Motion Blur (Размытие сцены в движении) нужно сделать следующее. 1.

Открыть окно Video Post (Видеомонтаж), выполнив команду RenderingVideo Post (ВизуализацияВидеомонтаж) главного меню.

Размытие движущихся объектов сцены

2.

225

Щелкнуть на кнопке Add Scene Event (Добавить событие-сцену) и установить флажок Scene Motion Blur (Размытие сцены в движении) в области Scene Options (Параметры сцены) появившегося окна.

Multi-Pass Rendering Effect (Многопроходный эффект визуализации) Multi-Pass Rendering Effect (Многопроходный эффект визуализации) использует многопроходную визуализацию одного кадра, базирующуюся на смещении камеры в каждом проходе. Многопроходная визуализация создает эффект размытия, который фиксирует пленка в определенном состоянии камеры (рис. 6.10).

Рис. 6.10. Кадр, визуализированный с использованием Multi-Pass Rendering Effect (Многопроходный эффект визуализации)

Этот эффект размытия базируется на свойствах камеры, поэтому его можно предварительно просмотреть в окне вида из камеры. Необходимое условие применения этого способа размытия изображения — присутствие в сцене камеры, причем для визуализации должен использоваться вид из камеры. Нужно также сделать следующее. 1.

Выберите в сцене объект-камеру, вид из которой будет визуализироваться, и перейдите на вкладку Modify (Изменение) командной панели.

2.

В области Multi-Pass Effect (Многопроходный эффект) свитка Parameters (Параметры) установите флажок Enable (Включить) и выберите из раскрывающегося списка строку Motion Blur (Размытие движения).

226 3.

Глава 6. Технологии вывода анимированных изображений

При необходимости измените значения параметров в свитке Motion Blur Parameters (Параметры размытия движения) настроек камеры.

Particle Motion Blur (Размытие движения частиц) Particle Motion Blur (Размытие движения частиц) является результатом применения прозрачности и продолжительности движения частиц, основанной на их скорости (рис. 6.11). Такое размытие достигается путем комбинирования назначенного частицам материала и параметров системы частиц. Для применения данного типа размытия необходимо создать для частиц материал с картой прозрачности Particle MBlur (Размытие движения частиц). С картой Particle MBlur (Размытие движения частиц) работают такие системы частиц: PArray (Массив частиц), PCloud (Облако частиц), Super Spray (Супербрызги) или Spray (Брызги). Кроме того, для использования Particle Motion Blur (Размытие движения частиц) нужно сделать следующее.

Рис. 6.11. Кадр, визуализированный с использованием Particle Motion Blur (Размытие движения частиц)

1.

В области Spin Axis Controls (Управление осями вращения) свитка Rotation and Collision (Поворот и столкновения) настроек системы частиц установите переключатель в положение Direction of Travel/Mblur (Направление движения/ размытие движения). В этой же области задайте значение параметра Stretch (Растяжение) больше нуля.

Технология сжатия видео

2.

227

В области Standard Particles (Типовые частицы) свитка Particle Type (Тип частиц) выберите тип частиц, отличный от Constant (Постоянный) и Facing (Плоские), так как с этими двумя типами отображения частиц размытие не работает.

СОВЕТ Кроме описанных выше способов размытия движения, использование которых может многократно увеличить время визуализации, существуют фильтры в графических программах (например, Adobe Photoshop) или программах постобработки (Adobe After Effect или Autodesk Combustion). Такие фильтры могут существенно сократить затраты времени на получение убедительного эффекта размытия объектов в движении. Если вы используете данные фильтры, то лучше выполнять визуализацию последовательности кадров анимации.

Технология сжатия видео Сжатие — это процесс удаления части данных или их реструктуризация с целью уменьшения размера файла. Для уменьшения размера файлов анимации или цифрового видео разработаны различные методы сжатия данных. Когда программа записывает результат визуализации в файл с расширением AVI, происходит сжатие каждого кадра на основе выбранного модуля. Такие модули в общем случае называют кодеками (Codec — COmpressor/DECompressor). Сжатие можно разделить на несколько категорий, основными из них являются сжатие без потерь и сжатие с потерями. При сжатии без потерь качество анимации сохраняется, при этом используется более компактный метод записи данных. Один из методов, с помощью которого выполняется такое сжатие, называется Run Length Encoding (RLE). Он осуществляет поиск строк идентичной информации (например, непрерывные области одинакового цвета) и использует алгоритм для кодирования цвета и местоположения повторяющихся данных. Такой способ кодирования очень эффективен для графики с ровными большими областями одинакового цвета и не является оптимальным для анимации с большим количеством цветовых пятен (например, оцифрованное видео). Сжатие с потерями может значительно уменьшить размеры файлов путем изменения или удаления некоторых данных. Самые популярные типы сжатия с потерями уменьшают насыщенность цвета или используют алгоритмы сжатия для устранения незначительных отличий в цветах пикселов, а также удаляют из палитры некоторые цвета в соответствии с человеческим восприятием. При использовании таких кодеков можно управлять величиной потерь, а следовательно, и качеством файла и его размером. Данные кодеки эффективны в первую очередь при записи анимации, комбинируемой с оцифрованным видео. Кодеки также делятся по тому, как выполняется сжатие во времени. Существует два типа анализа кадров: пространственный и временной. Пространственное сжатие исследует каждый кадр, удаляя из него часть информации. Временное сжатие

228

Глава 6. Технологии вывода анимированных изображений

сравнивает кадры на определенном участке времени, анализирует происходящие изменения и запоминает только измененную информацию. Файлы с расширением AVI можно сжимать с применением любого программного кодека, которые устанавливаются вместе с операционной системой или продуктами мультимедиа, а также кодеками независимых разработчиков. При выборе AVI в качестве формата для сохранения визуализации программа 3ds Max предложит вам выбрать кодек из установленных на вашем компьютере (рис. 6.12). Среди возможных вариантов есть и Uncompressed (Несжатое). Выбор кодека определяется в первую очередь задачами, операционной системой, для которой предназначен файл анимации, приложением и носителем данных. В последнее время широкое распространение получили кодеки Windows Media Video (WMV), MPEG-2 и MPEG-4. Алгоритм сжатия этих кодеков позволяет получить анимацию высокого качества при относительно небольшом размере файла. Если речь идет о возможном воспроизведении файла анимации на различных платформах, то необходимо использовать несжатое AVI или формат записи QuickTime (QT).

Рис. 6.12. Окно настроек сжатия выходного видеофайла с открытым списком доступных кодеков

ВНИМАНИЕ При записи анимации без сжатия или при визуализации последовательности кадров необходимо учитывать, что при этом итоговые файлы имеют большой размер (иногда более 20–40 Гбайт). В связи с этим необходимо предварительно выполнить приблизительный расчет требуемого дискового пространства, визуализировав несколько типовых кадров.

Сетевая визуализация

229

Сетевая визуализация При разговоре о визуализации анимации нельзя не упомянуть возможность работы в 3ds Max по сети. Визуализация анимации может потребовать значительное количество времени (которое иногда измеряется сутками) даже для современного компьютера. Именно для работ, когда необходимо визуализировать значительное количество кадров, лучше всего подойдет визуализация с использованием компьютеров, объединенных в сеть. Используя мощности других компьютеров, можно значительно ускорить процесс визуализации. СОВЕТ Кроме рабочих групп внутри сети, для сетевой визуализации можно использовать компьютеры, подключенные только к Интернету. Полезным может быть также применение для сетевой визуализации одного (например, домашнего) компьютера, который будет в фоновом режиме выполнять отправленные задания, а вы — продолжать работать в своих любимых приложениях. Если вы являетесь счастливым обладателем двух домашних компьютеров, то не составит труда объединить их в сеть для визуализации. Для этого в каждом компьютере должен быть сетевой адаптер (может быть интегрирован в материнскую плату), также вам понадобится кросс-кабель для их прямого соединения (схему разводки контактов можно найти в Интернете или приобрести готовый кабель).

Для запуска сетевой визуализации на компьютерах должны быть установлены три компонента 3ds Max. 

Network Manager (Менеджер сети) — должен быть установлен в качестве файлового сервера на одном из компьютеров рабочей группы, участвующих в сетевой визуализации. Программа Network Manager (Менеджер сети) (рис. 6.13) распределяет и контролирует ход выполнения сетевых задач визуализации. Ее главная задача заключается в наблюдении за распределением кадров каждому из компьютеров, находящихся в сети, а также в организации очереди задач. Несмотря на то что менеджер может работать на любом компьютере, предпочтительно запускать его на более быстром, имеющем значительное количество свободного места на жестком диске.

Рис. 6.13. Окно компонента сетевой визуализации Network Manager (Менеджер сети)

230 

Глава 6. Технологии вывода анимированных изображений

Network Rendering Server (Сервер сетевой визуализации) — устанавливается на всех компьютерах сети, включая и тот, на который устанавливается менеджер сети. После запуска сервер сетевой визуализации (рис. 6.14) отправляет менеджеру свой IP-адрес для регистрации и включения в сетевую визуализацию. Затем менеджер сети отсылает серверу задание на визуализацию кадров. После получения задания сервер запускает 3ds Max в специальном серверном режиме и начинает визуализацию кадра. По окончании визуализации сервер отправляет готовый кадр в папку, указанную в настройках, и получает от менеджера новое задание на визуализацию. Когда выполнена вся визуализация, сервер закрывает приложение.

Рис. 6.14. Окно компонента сетевой визуализации Network Rendering Server (Сервер сетевой визуализации)

ПРИМЕЧАНИЕ Серверный режим не влияет на использование программы для моделирования и визуализации в обычном режиме. 

Queue Monitor (Диспетчер очереди) — приложение управления сетевой визуализацией (рис. 6.15). Его можно установить на всех компьютерах сети. Позволяет не только просматривать ход выполнения задания, но и перераспределять задания, менять очередность их выполнения, отключать и подключать к визуализации компьютеры группы и выполнять многое другое.

ВНИМАНИЕ Правами управления и редактирования заданий обладает тот компьютер, на котором Queue Monitor (Диспетчер очереди) был запущен первым, все остальные диспетчеры будут работать в режиме просмотра. В этом случае в строке заголовка окна программы указывается, какой компьютер сети обладает правом редактирования заданий.

Все три перечисленных выше компонента инсталлируются при установке 3ds Max 2009. Их можно запустить из каталога установки (по умолчанию C:\ Program Files\Autodesk\Backburner) или из списка установленных программ. Например, для запуска менеджера сети в среде Windows XP выполните команду ПускВсе программыAutodeskBackburnermanager. Аналогичным образом запускается сервер и диспетчер очереди.

Сетевая визуализация

231

Рис. 6.15. Окно компонента сетевой визуализации Queue Monitor (Диспетчер очереди)

ВНИМАНИЕ Для сетевой визуализации в 3ds Max 2009 нужно использовать Windows XP Professional или Windows Vista. Более ранние операционные системы Windows не поддерживаются.

Если у вас уже есть локальная сеть с настроенной конфигурацией, то нет необходимости что-либо менять: сетевая визуализация будет работать с существующими настройками. В противном случае вам нужно установить и настроить на каждом компьютере сети протокол TCP/IP (сокращенно от Transmission Control Protocol/ Internet Protocol — протокол управления передачей/межсетевой протокол), представляющий собой «язык общения» между компьютерами, объединенными в сеть. После того как все компьютеры рабочей группы будут сконфигурированы для работы в сети, можно приступать к сетевой визуализации. Для этого должны быть выполнены несколько условий. На всех компьютерах должна быть установлена программа 3ds Max 2009 и запущена Network Rendering Server (Сервер сетевой визуализации), а на одном из компьютеров рабочей группы к тому же должна быть запущена Network Manager (Менеджер сети). На одном из компьютеров следует открыть общий доступ к каталогу, в который будут сохраняться визуализированные изображения. Путь к этому каталогу должен быть указан с учетом правил Universal Naming Convention (UNC) (соглашение по универсальному наименованию), например: \\имя_компьютера\диск\каталог\имя_файла. Обратите внимание на то, что строка начинается с двух слэшей. Можно также указать локальный каталог для сохранения файлов на каждом компьютере, выполняющем визуализацию. В этом случае такой каталог должен присутствовать на каждом компьютере рабочей группы.

232

Глава 6. Технологии вывода анимированных изображений

Для запуска сетевой визуализации нужно выполнить соответствующие настройки в окне Render Setup (Настройки визуализации). Кроме стандартных настроек размера выходного изображения и параметров области Options (Параметры), необходимо в области Time Output (Интервал вывода) свитка Common Parameters (Общие параметры) указать диапазон кадров для визуализации. После этого в области Render Output (Вывод визуализации) необходимо установить флажок Save File (Сохранить файл) и щелкнуть на кнопке Files (Файлы), чтобы выбрать каталог для сохранения. ПРИМЕЧАНИЕ Не забывайте о том, что, даже если вы используете один компьютер, необходимо указывать сетевой путь к каталогу, в который будут сохраняться кадры.

Затем следует установить флажок Net Render (Сетевая визуализация) в области Render Output (Вывод визуализации). После щелчка на кнопке Render (Визуализация) появится окно Network Job Assignment (Назначение сетевого задания). В области Enter Subnet Mask (Ввод маски подсети) этого окна должен быть установлен флажок Automatic Search (Автоматический поиск). Далее следует щелкнуть на кнопке Connect (Соединить). В результате в поле All Servers (Все серверы) отобразятся имена всех компьютеров, входящих в рабочую группу (рис. 6.16).

Рис. 6.16. Окно Network Job Assignment (Назначение сетевого задания)

Общие рекомендации по визуализации видеоизображений

233

В области Options (Параметры) следует установить флажок Include Maps (Включая карты текстур), что позволит вместе с заданием отправлять серверам все текстурные карты, примененные в сцене. СОВЕТ Чтобы компьютеры рабочей группы использовали текстурные карты, находящиеся на одном компьютере, и текстурные карты не надо было бы отправлять вместе с заданием, необходимо для всех файлов текстур прописать сетевые пути (аналогично указанному выше пути для сохранения кадров визуализации).

Осталось только щелкнуть на кнопке Submit (Подтвердить) — и запустится процесс визуализации. Его можно контролировать с помощью компонента Queue Monitor (Диспетчер очереди).

Общие рекомендации по визуализации видеоизображений Подводя итоги сказанного в этой главе, хотелось бы отметить, что работа с анимацией представляет определенные трудности не только на стадии моделирования и настройки просчета, но и при последующей визуализации. Обратите внимание на некоторые общие рекомендации по визуализации видеоизображений. 

Прежде всего определитесь с целями и задачами предстоящей работы. Именно они во многом могут повлиять на ход моделирования, степень детализации, разрешение выходного изображения, глубину цвета, поля и т. д. Если вы выполняете заказ, то должны узнать у заказчика проекта максимум информации. Может оказаться так, что ваша работа будет, например, частью материала для видеоклипа, который должен совмещать в себе реальное видео и анимацию. И хорошо еще, если работа над всеми частями клипа ведется параллельно, но если вдруг видеоматериал уже сняли и он должен «вживляться» в анимацию, которую создаете вы? В этом случае вам будет необходимо уже на стадии моделирования учитывать особенности видео, например цветовую гамму, свет, положение камеры и т. д.



Определитесь с разрешением вывода изображения: для просмотра на мониторе компьютера и на экране телевизора используются совершенно разные форматы. Для монитора свойственны стандартные экранные разрешения, в то время как для показа на телеэкране необходимо учитывать не только размер, но и стандарт видеосигнала.



Установите форматное соотношение пиксела: для показа на мониторе компьютера это 1, а для стандартов телевидения — 0,9 или 1,06.



В зависимости от выбранного формата видео задайте значение кадров в секунду (fps). Для стандарта PAL и SECAM это значение равно 25 кадров в секунду, а для NTSC — 30. Для видео, предназначенного для просмотра на компьютере,

234

Глава 6. Технологии вывода анимированных изображений

жестких требований нет, но можно рекомендовать 30 кадров в секунду для получения более сглаженного движения. 

При создании анимации для телевидения, скорее всего, понадобится обработка полей. В связи с этим установите порядок полей — нечетное/нижнее (Odd/ Lower) или четное/верхнее (Even/Upper) — в зависимости от требований системы видеомонтажа (порядок следования полей обычно указывает заказчик).



Используйте функцию проверки видеоцветов. Это требование относится больше к телевизионным форматам, так как телевизоры имеют ограниченные возможности по сравнению с компьютерными мониторами.



Видео предпочтительнее сохранять с использованием последовательности кадров. Для этого есть несколько причин. •

Можно использовать сетевую визуализацию, что существенно ускорит процесс расчетов.



Для кадров будут доступны форматы с возможностью сохранения не только альфа-канала, но и других дополнительных каналов (форматы RLA и RPF). Это может быть существенным при последующей постобработке в специализированных приложениях, например Combustion.



Для последовательности кадров можно быстро выполнить размытие, цветокоррекцию, настройку яркости, контрастности и применить другие эффекты, доступные в программах редактирования растровой графики и постобработки. Например, в программе Photoshop можно создать макропоследовательность (Action (Действие)) и с ее помощью выполнить пакетную обработку всей папки с файлами.



При изменении части анимации не придется визуализировать анимацию полностью — достаточно будет заменить изменившиеся кадры.



Для достижения лучшего качества выводите последовательные изображения с помощью сжатия без потерь (форматы BMP, TGA или TIFF). Если нужно экономить дисковое пространство, то воспользуйтесь форматом JPG с очень низким уровнем сжатия.



Если в дальнейшем объекты анимации будут редактироваться, то возможным решением по сокращению объемов переделок может стать послойное выполнение анимации. В этом случае анимированные объекты визуализируются отдельным слоем с альфа-каналом для последующей сборки в программах постобработки или с использованием модуля Video Post (Видеомонтаж).



Запустив визуализацию последовательности кадров, убедитесь в том, что кадры формируются правильно. Это можно сделать как с использованием программ для просмотра растровой графики, так и с помощью модуля RAM Player (RAMпроигрыватель) программы 3ds Max.

Часть 2.

Практический курс Глава 7. Освещение Глава 8. Анимация сцен Глава 9. Практическое моделирование Глава 10. Текстурирование Глава 11. Визуализация

До сих пор речь шла об интерфейсе программы и методах работы — теперь же вы с головой окунетесь в мир моделирования. Все упражнения, представленные в книге, не зависят друг от друга, поэтому вам необязательно выполнять их последовательно. Каждое упражнение посвящено определенной теме создания трехмерной графики. Опыт практической работы с приложением показал, что каждый урок рождает новые идеи, которые могут быть в дальнейшем использованы в ваших собственных работах. Все главы сопровождаются файлами упражнений, которые находятся на прилагаемом к книге DVD. Там же можно посмотреть и цветные иллюстрации.

Глава 7.

Освещение • Основы освещения в трехмерной графике • Излучение лазера • Объемный свет • Использование базовых источников света в интерьере

Правильное освещение значительно усиливает впечатление от простой сцены. Оно не только позволяет лучше передать форму предметов, но и создает общее настроение в сцене. С помощью ярких цветов и обилия света можно получить эффект праздника, а приглушенный свет и затененные предметы создадут ощущение напряженности и тревоги. Свет — это мощный инструмент в руках разработчика трехмерной графики, нужно только уметь им пользоваться. В этой главе вы научитесь правильно ставить свет и строить тени, а также познакомитесь с объемным (видимым) светом.

Основы освещения в трехмерной графике Правильно установленный свет может значительно улучшить посредственную сцену, и наоборот: если источники света расставлены произвольным образом, даже хорошо смоделированная сцена покажется «бедной». Грамотное освещение определяет общую атмосферу изображения. С помощью света можно передать настроение, напряженность, радость, тоску, подчеркнуть достоинства и скрыть недостатки. Существует несколько вариантов освещения. Наиболее часто встречаются два из них: трехточечное и местное (зонное). Местное применяется для освещения отдельных участков сцены и используется чаще всего в случае, когда сцена большая и ее невозможно эффективно осветить с помощью трехточечного освещения. Трехточечное освещение является базовым в трехмерном моделировании. В его основе лежат три источника света: ключевой, контурный и заполняющий (иногда можно встретить другие определения). Ключевой свет является основным. Обычно это самый яркий и освещающий большую часть сцены свет. Кроме того, это тот источник света, благодаря которому предметы в сцене отбрасывают тень. Контурный свет используется для разделения предметов и фона, что, в свою очередь, определяет глубину пространства. Такой источник света обычно находится позади объектов сцены и по интенсивности слабее ключевого света. СОВЕТ Технические приемы и принципы работы с источниками света в трехмерных сценах не отличаются от используемых в фотографии, кино, театре и т. д. При желании больше узнать о типах освещения и их применении вы можете воспользоваться соответствующей литературой.

Освещение часто является фундаментом для цветового моделирования, придающего сцене акцент и глубину. Предметы в сцене не будут выглядеть плоскими, если их прорисовать светотенью, то есть характером распределения освещенности по форме в зависимости от положения ее различных поверхностей по отношению к источнику света. Чтобы предметы выглядели объемными, на них должны присутствовать свет, блик, полутон, а на самой затененной части поверхности — собственная тень

Основы освещения в трехмерной графике

239

(рис. 7.1). Последняя всегда в той или иной степени подсвечена светом, отраженным от других предметов, так называемым рефлексом. Наконец, предметы отбрасывают от себя на соседние предметы падающую тень, которая обычно бывает темнее собственной тени. Только при правильном соотношении этих световых фаз можно с предельной правдоподобностью передать объем предмета.

Рис. 7.1. Градации светотени

В природе каждый объемный предмет определенного цвета ограничивается кривыми или плоскими поверхностями, которые при освещении попадают в разные световые и цветовые условия. Лучи света, падая на различные поверхности предметов, освещают их неравномерно, отчего поверхности выглядят различными по тону и цвету. Одни части поверхности получают больше света, другие — меньше. Степень освещенности предмета изменяется, прежде всего, в зависимости от расстояния до источника света: чем ближе находится источник света, тем сильнее освещение. Степень освещенности поверхности зависит от угла падения лучей света на поверхность, а также от фактуры и цвета самой поверхности. Гладкая, полированная поверхность лучше отражает свет, чем шероховатая или матовая. Поверхность темного цвета поглощает больше света, чем светлая. На очень темных и на очень светлых поверхностях светотеневые градации видны плохо, так как глаз не способен различать переходы слишком слабых (рис. 7.2) или сильных (рис. 7.3) световых оттенков.

240

Глава 7. Освещение

Рис. 7.2. Затемненная поверхность предмета

Рис. 7.3. Засвеченная поверхность предмета

Задача разработчика трехмерной графики состоит в том, чтобы найти правильное соотношение световых фаз за счет настроек и расположения источников света в пространстве виртуальной сцены, а также использования ее общей освещенности и создания эффекта глобального освещения.

Рис. 7.4. Падающая тень

На предметах со сложным рельефом или орнаментом наиболее ясно детали видны в полутени, в тени их четкость понижена. Собственная тень всегда в той или иной степени подсвечена светом, отраженным от других предметов. Падающая тень не имеет резких разграничений с собственной тенью. Тональности их сближены, контуры основания предмета сливаются с горизонтальной плоскостью. Чем ближе к предмету падающая тень, тем она темнее. Такая закономерность сохраняется на переднем плане. Внутри и на дальнем плане она высветляется рефлексами от окружения (рис. 7.4).

Рефлексы не только высветляют тени, но и придают им свой цветовой оттенок. Свет, полутень, тень имеют на поверхности предмета определенное местоположение, а блик — нет, так как зависит не только от направления источника света, но и от местоположения камеры (точки в пространстве, с которой мы видим предмет). На предметах с блестящими (глянцевыми) поверхностями блики и рефлексы ярче и определеннее по своим границам, чем на матовых и шероховатых. Форма и цвет их находятся в прямой зависимости от формы и цвета прямого или отраженного источника света. Чтобы лучше понять принцип действия источников света, создайте сцену. Используйте для этого простые примитивы Plane (Плоскость) и Teapot (Чайник). Расположите камеру и источники света так, как показано на рис. 7.5 и 7.6.

Основы освещения в трехмерной графике

Рис. 7.5. Вид сцены в окне проекции Top (Cверху)

241

Рис. 7.6. Вид сцены в окне проекции Front (Спереди)

Рассмотрим более подробно процесс создания сцены, с которой вы будете работать в дальнейшем. Последовательность создания любой сцены приблизительно такова: сначала создаются объекты, затем располагается и настраивается камера, и только после этого ставится свет. Прежде всего создадим плоскость, на которой будет располагаться чайник. Для этого выполните команду CreateStandard PrimitivesPlane (СоздатьПростые примитивыПлоскость) главного меню и в окне проекции Top (Сверху) постройте плоскость произвольного размера. Для того чтобы создать примитив Teapot (Чайник), выполните команду Create Standard PrimitivesTeapot (СозданиеПростые примитивыЧайник). В данном случае размер и плотность сетки чайника не имеют значения. Единственное требование, чтобы он располагался на плоскости и был сопоставим с ней по размерам. СОВЕТ Возможно, вам будет удобнее использовать для создания объекта вкладку Create (Создание) командной панели.

Камера создается аналогичным способом. Выполните команду CreateCamerasTarget Camera (СозданиеКамерыНаправленная камера). После того как построен объект и в сцене установлена камера, направленная на объект-чайник, можно переходить к созданию источников света. Прежде чем создавать источники света, нужно отметить, что освещение сцены зависит также от настроек подсветки в окне Environment and Effects (Окружающая среда и эффекты), которые равномерно распределяют начальный уровень освещенности всех объектов.

242

Глава 7. Освещение

Начинать расстановку источников света в сцене следует с основного освещения, то есть с ключевого. Примерно 80 % сцены будет освещено именно этим источником света, поэтому необходимо правильно расположить его в сцене. Он должен в целом освещать всю сцену (или нужную часть). Такой источник света не должен быть слишком ярким, чтобы не засветить предметы, или темным, иначе исчезнет объем на визуализированном изображении. На рис. 7.7 показано, что получилось у меня после визуализации сцены с одним ключевым источником света. В данном случае я использовал Target Spot (Направленный с целью) с затуханием, чтобы оттенить задний план, на котором ничего нет (если бы в глубине сцены присутствовали другие объекты, то необходимо было бы их показать, увеличив световое пятно). Для его построения выполните команду CreateLightsStandard LightsTarget Spotlight (СозданиеИсточники светаСтандартные источники светаНаправленный с целью). Первое, что бросается в глаза при взгляде на готовое изображение, — отсутствие падающей тени, непонятное положение чайника в пространстве (он то ли стоит на плоскости, то ли висит в воздухе). Активизируйте в настройках источника света тень. Для этого в области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света в нижней части командной панели установите флажок On (Включить). Это позволит источнику света генерировать простые тени от объектов сцены (рис. 7.8).

Рис. 7.7. Сцена, освещенная ключевым источником света

Рис. 7.8. Появилась тень, и положение чайника на плоскости стало более естественным

Теперь чайник не «висит» в воздухе, а стоит на плоскости. Но вместе с тем он стал сливаться с тенью, в результате чего частично пострадало восприятие объема. Добавим в сцену источник света для контурного освещения. Для этой цели используем еще один Target Spot (Направленный с целью) (на рис. 7.5 и 7.6 он расположен справа от камеры). Естественно, что интенсивность его несколько ниже, чем ключевого источника, так как этот источник света является второстепенным и его основная задача в данном случае — «оторвать» чайник от фона. Чтобы дать

Основы освещения в трехмерной графике

243

общее представление о том, какая интенсивность построенных источников света у меня в сцене, приведу значения параметров Multiplier (Яркость): для контурного источника света — 0,49, для ключевого света — 1,25. Выполните последнюю настройку для данного источника света, сняв флажок Specular (Цвет блеска), который находится в свитке Advanced Effects (Дополнительные эффекты). Для наших целей достаточно, чтобы этот источник света освещал область диффузного отражения, не создавая области зеркального отражения. В реальности это обычно отраженный свет от других предметов, который не имеет большой интенсивности и не способен генерировать яркие блики. Как только вы добавили этот источник света, объекты приобрели объем, а сцена — пространство (рис. 7.9). Применим небольшой трюк, который поможет улучшить восприятие предмета и сделать его цвет более естественным. Для этого сделаем источник контурного света цветным, что поможет передать цвет, отраженный от поверхности, на которой стоит чайник. Естественно, применяемый к источнику света цвет должен соответствовать цвету той поверхности, которая будет отражать свет (в нашем случае это плоскость, на которой стоит чайник). Цвет этой поверхности красно-коричневый, значит, именно такой цвет должен присутствовать в свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) (рис. 7.10).

Рис. 7.9. Контурное освещение придало чайнику объем и отделило его от фона

Рис. 7.10. Цвет, добавленный источнику света, придал чайнику более естественную окраску

ПРИМЕЧАНИЕ Для просмотра цветных иллюстраций к упражнению воспользуйтесь прилагаемым к книге DVD.

Общее восприятие всей картины немного портит то, что на чайнике слишком темная собственная тень. Исправить данное положение поможет третий источник

244

Глава 7. Освещение

света — заполняющий. Его назначение — смягчить тени и полутени на предмете. Как и контурный, заполняющий свет не должен быть ярким и не должен создавать на поверхности объектов блики. В данном случае для построения источника освещения воспользуемся точечным источником света Omni (Всенаправленный). Для этого выполните команду CreateLightsStandard LightsOmni (СозданиеИсточники светаСтандартные источники светаВсенаправленный). Данный источник освещения должен находиться между двумя существующими источниками и быть позади камеры. Как уже говорилось выше, назначение его заключается в том, чтобы равномерно заполнить светом промежуток между самым ярким местом на объекте и его собственной тенью. Как и для контурного, запретите в настройках заполняющего источника света создание области зеркального отражения, сняв флажок Specular (Цвет блеска). После этого можно посмотреть на результаты сделанных настроек (рис. 7.11). Рис. 7.11. В сцену добавлен заполняющий свет

Правильное расположение теней очень влияет на восприятие сцены зрителем. Управление тенями играет ключевую роль в использовании источников света. С чрезмерным или недостаточным количеством теней сцена не будет выглядеть реалистичной и убедительной. Отбрасывание теней представляет собой сложный процесс, именно тени добавляют в завершенную сцену реализм. Тени, построенные посредством трассировки лучей, требуют большое количество времени для визуализации, a Shadow Map (Карта теней) в дополнение к используемому времени визуализации — еще и ресурсов памяти. Ограничение падения точечного света только той областью, которая требует теней, сэкономит время визуализации. Уменьшение количества объектов, отбрасывающих тени, с помощью настроек объекта или источника света также сократит расходы ресурсов на визуализацию. По умолчанию источники света работают с тенью Shadow Map (Карта теней). Это относительно быстрая для просчета тень, но вместе с тем и наименее точная с точки зрения трассировки лучей и качества. Более правильную с физической точки зрения тень дает Ray Traced Shadows (Трассированная тень), но она, так же как и тень Shadow Map (Карта теней), не становится светлее по мере удаления от предмета. В тенях типа Area Shadows (Площадная тень) эта проблема решена. В некоторой степени недостатком Shadow Map (Карта теней) и Area Shadows (Площадная тень) является значительное увеличение времени просчета сцены, особенно если в ней используется несколько источников света с такой тенью, а у Area Shadows (Площадная тень) указано большое значение размытия тени на краях.

245

Основы освещения в трехмерной графике

До создания таких теней существовали подключаемые модули или сценарии, которые генерировали по кругу дополнительные источники света на небольшом расстоянии друг от друга. Таким образом, тени, создаваемые многими источниками, перекрывались при визуализации и давали размытый контур. Существует более простой и, что самое приятное, легкоуправляемый способ, который, однако, имеет некоторые ограничения. Он заключается в том, чтобы назначить источнику света с отрицательным значением параметра Multiplier (Яркость) созданную пользователем текстурную карту Projector Map (Карта проектора). Для построения такой карты нужно выделить источник света, который будет отбрасывать тень, и в любом окне проекции (например, в окне Left (Cлева)) выбрать вид из этого источника. Для этого щелкните на названии окна проекции правой кнопкой мыши, в результате чего появится контекстное меню (рис. 7.12), в котором следует выбрать нужный источник света (в моем случае это Spot01), выполнив команду ViewsSpot01 (ВидОбъект Spot01). Если вы все сделали правильно, то в окне проекции будет такой вид, как будто мы смотрим из источника света (рис. 7.13).

Рис. 7.12. Контекстное меню для выбора вида отображения

Далее нужно исключить из визуализации все объекты, которые не будут отбрасывать тень. Сцена содержит всего два геометрических объекта: Plane (Плоскость) и Teapot (Чайник), но их может быть гораздо больше. Чтобы исключить объект из визуализации, выполните следующие действия. 1.

Щелкните на нужном объекте правой кнопкой мыши.

2.

В появившемся контекстном меню выберите пункт Object Properties (Свойства объекта). В результате откроется одноименное окно.

3.

Снимите флажок Renderable (Визуализируемый) в области Rendering Control (Управление визуализацией).

4.

Щелкните на кнопке OK для подтверждения выполненных изменений.

Рис. 7.13. Вид со стороны источника света Spot01

246

Глава 7. Освещение

СОВЕТ Можно исключить объекты из визуализации и другим способом. Для этого выделите все «ненужные» геометрические объекты и щелкните на них правой кнопкой мыши. В появившемся контекстном меню выберите пункт Hide Selection (Спрятать выделенное).

Визуализируйте стандартными средствами вид из окна, в котором установлен источник света, с типовым значением разрешающей способности 800 Ч 600. После этого сохраните изображение в файл в формате, поддерживающем альфа-канал (например, TIFF). Откройте сохраненный файл в программе растровой графики, допустим Adobe Photoshop, и, выделив альфа-канал, залейте его белым цветом. Если фон не черного цвета, то инвертируйте выделение и залейте все остальное черным цветом (то есть объекты сцены должны быть белыми, а фон — черным, как показано на рис. 7.14). Как только вы это сделаете, можно переходить к созданию размытых краев на изображении. Это можно сделать разными способами, например воспользоваться программой Photoshop, где применить для выделения градиентную маску, а затем использовать фильтр размытия по Гауссу. Важно, чтобы по мере удаления от основания объекта (от плоскости, на которой стоит чайник и на которую будет отбрасывать тень) размытие становилось более заметным (рис. 7.15).

Рис. 7.14. Карта теней на начальном этапе

Рис. 7.15. Законченная карта теней

Как только размытие будет готово, сохраните его в любом удобном для вас формате и продолжите работу в 3ds Max. Вернувшись в программу, нужно клонировать источник света, благодаря которому образуется тень (в данном случае это ключевой свет). Для этого выполните следующие действия. 1.

Выделите источник света, который необходимо клонировать.

2.

Выполните команду EditClone (ПравкаКлонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при

247

Основы освещения в трехмерной графике

дублировании объектов, установив переключатель в положение Copy (Независимая копия объекта). 3.

В окне Clone Options (Параметры клонирования) также задайте объекту значимое имя, чтобы впоследствии было легче выбирать его из списка, например shadow.

После этого активизируйте источник света (если он до сих пор не выбран) и разверните свиток Advanced Effects (Дополнительные эффекты), где в качестве Projector Map (Карта прожектора) выберите вашу карту тени (рис. 7.16). В свитке Intensity/Color/Attenuation (Интенсивность/цвет/ затухание) установите отрицательное значение параметра Multiplier (Яркость) (у меня эта величина равна –1,25). Исключите из освещения чайник (чтобы тень не ложилась на него, а только на плоскость). Для этого щелкните в свитке General Parameters (Общие параметры) на кнопке Exclude (Исключение) и в появившемся окне Exclude/Include (Исключение/включение) исключите чайник из визуализации (рис. 7.17).

Рис. 7.16. Свиток Advanced Effects (Дополнительные эффекты) для карты теней

Рис. 7.17. Окно Exclude/Include (Исключение/включение) с исключенным из освещения чайником

Теперь можно выполнить финальную визуализацию сцены (рис. 7.18). Конечно, кроме достоинств, этот метод имеет и недостатки, один из которых — невозможность формирования падающих на объект теней от самого себя (как в данном случае с ручкой крышки). Однако часто можно добиться великолепных результатов при минимальных затратах сил, времени и компьютерных ресурсов.

248

Глава 7. Освещение

Рис. 7.18. Результат финальной визуализации сцены

ПРИМЕЧАНИЕ В папке Examples\Глава 07\Base_light прилагаемого к книге DVD находится файл сцены данного упражнения, который называется Base_light.max.

Излучение лазера Если вы решили создать заставку в стиле «Звездных войн» или нестандартно анимировать надпись, то вам не обойтись без такого эффекта, как луч лазера. В этом небольшом упражнении мы научимся создавать такой луч простыми средствами 3ds Max. Начнем с моделирования объектов сцены. Для этого постройте в начале координат примитив Teapot (Чайник), выбрав из главного меню CreateStandard PrimitivesTeapot (СоздатьПростые примитивыЧайник) с параметрами, показанными на рис. 7.19.

Рис. 7.19. Свиток Parameters (Параметры) настроек примитива Teapot (Чайник)

Излучение лазера можно представить в виде плотного луча направленного света, поэтому для его имитации как нельзя лучше подойдет направленный источник света с цилиндрическим излучением — Target Direct (Нацеленный направленный источник света).

Излучение лазера

249

СОВЕТ Вторым возможным вариантом создания такого луча может служить примитив Cylinder (Цилиндр), которому необходимо присвоить соответствующий материал.

Для построения источника света, имитирующего луч, выполните следующие действия. 1.

Выполните команду меню CreateLightsStandard Lights Target Directional (СоздатьИсточники света Стандартные источники светаНацеленный направленный).

2.

Постройте в окне проекции Top (Cверху) источник света таким образом, чтобы луч проходил через примитив Teapot (Чайник). Сразу подкорректируйте положение источника света и его цели и в других окнах проекций.

3.

В свитке Intensity/Color/Attenuation (Интенсивность/ цвет/затухание) задайте параметру Multiplier (Усилитель) значение 5, а цвет луча сделайте ярко-красным (Red (Красный) — 255; Green (Зеленый) — 0; Blue (Синий) — 0) (рис. 7.20).

4.

В свитке Directional Parameters (Параметры направленного источника света) задайте параметру Hotspot/Beam (Яркое пятно/луч) значение 0,5, а Falloff/Field (Край пятна/область) — 2,5.

Рис. 7.20. Свиток Intensity/Color/ Attenuation (Интенсивность/ цвет/затухание) с настройками для источника света

Если сейчас выполнить визуализацию (например, нажав сочетание клавиш Shift+Q), то результатом будет небольшой красный круг на черном фоне. Это связано с тем, что единственный источник света, который мы используем в сцене, не освещает ничего, кроме небольшого участка на поверхности примитива Teapot (Чайник). В связи с этим необходимо добавить в сцену как минимум еще один источник — ключевой свет с небольшим значением параметра Multiplier (Усилитель), что позволит частично осветить объекты, а затем получить более контрастный луч лазера. ПРИМЕЧАНИЕ В предыдущем разделе мы рассматривали принципы создания и расстановки источников света в сцене. Используя полученные знания, вы можете создать не только ключевой, но и заполняющий свет, а также настроить тени, применяя, кроме объекта Teapot (Чайник), стандартный примитив Plane (Плоскость).

На рис. 7.21 представлена визуализация сцены после добавления плоскости и двух источников света. Перейдем к построению видимого луча света. Для этого выделите направленный источник света Direct01 и в свитке Atmospheres & Effects (Атмосфера и эффекты) командной панели щелкните на кнопке Add (Добавить). В открывшемся окне Add

250

Глава 7. Освещение

Atmosphere or Effect (Добавить атмосферу или эффект) выберите строку Volume Light (Объемное освещение) и щелкните на кнопке OK (рис. 7.22). В результате в списке свитка Atmospheres & Effects (Атмосфера и эффекты) отобразится строка Volume Light (Объемное освещение).

Рис. 7.21. Визуализация сцены с расставленными источниками света

Рис. 7.22. Окно Add Atmosphere or Effect (Добавить атмосферу или эффект)

Для настройки параметров эффекта выделите строку Volume Light (Объемное освещение) и щелкните в нижней части свитка Atmospheres & Effects (Атмосфера и эффекты) на кнопке Setup (Настройки). В результате откроется окно Environment and Effects (Окружающая среда и эффекты). В области Volume (Объем) свитка Volume Light Parameters (Параметры объемного освещения) окна Environment and Effects (Окружающая среда и эффекты) задайте параметру Density (Плотность) значение, равное 12 (рис. 7.23). В принципе, на этом можно было бы закончить настройки, однако существует область параметров, на которые хотелось бы обратить ваше внимание, — это Noise (Зашумление). Иногда требуется создать эффект прохождения светового луча в задымленной или туманной среде. Именно настройка параметров области Noise (Зашумление) позволяет добиться такого эффекта. Примените этот эффект к лучу, для чего выполните следующие действия. 1.

В области Noise (Зашумление) свитка Volume Light Parameters (Параметры объемного освещения) установите флажок Noise On (Включить шум).

2.

Установите переключатель типа зашумления в положение Turbulence (Турбулентный).

3.

Задайте параметру Levels (Уровни) значение 6, а Size (Размер) — 15.

Сейчас можно выполнить окончательную визуализацию (рис. 7.24). В этом небольшом упражнении вы научились делать лучи прожектора видимыми. Используя данный метод, можно добиться потрясающих эффектов не только для статичных, но и для анимированных сцен. Например, таким образом можно ани-

251

Объемный свет

мировать разрезание лазером, луч прожектора, устремленный в ночное небо, полет трассирующей пули или луч солнца.

Рис. 7.23. Настройки цвета и плотности светового луча

Рис. 7.24. Окончательная визуализация луча лазера

ПРИМЕЧАНИЕ В папке Examples\Глава 07\Laser прилагаемого к книге DVD содержится файл сцены данного упражнения, который называется laser_beam.max.

Объемный свет Очень часто в процессе моделирования для придания сцене каких-то индивидуальных особенностей приходится применять различные трюки и эффекты. Одним из таких приемов является Volume Light (Объемный свет). Наверное, любой человек хотя бы раз в жизни наблюдал, как солнечный луч, проходя через оконное стекло запыленной комнаты, выхватывает из атмосферы взвешенные частицы пыли, создавая тем самым светящуюся область пространства. Это и есть эффект объемного освещения. Пытаясь воссоздать интерьер заброшенной комнаты или мастерскую художника, в окно которой пробиваются лучи утреннего солнца, вам не обойтись без объемного освещения. Оно также применяется для создания эффектных рекламных надписей и т. д. В этом разделе будет рассмотрено создание витража, наподобие тех, которые до сих пор еще можно увидеть на окнах старинных церквей. ПРИМЕЧАНИЕ Слово «витраж» происходит от французского vitre — «стекло» и обозначает окна, иногда огромного размера, состоящие из кусочков разноцветного стекла, которые соединены свинцовыми элементами. Эти сверкающие прозрачные цветные стекла составляют какой-нибудь орнамент, иногда даже целые сюжетные картины.

252

Глава 7. Освещение

Вам не понадобится моделировать отдельные части витража, так как вы можете использовать растровое изображение stainglass.jpg, которое находится на прилагаемом к книге DVD в папке Examples\Глава 07\Volume_light. Прежде всего необходимо построить модель комнаты с окном. Для этого подойдет примитив Box (Параллелепипед) с пропорциями, соответствующими комнате, которую вы хотите моделировать. ПРИМЕЧАНИЕ Вы можете пропустить описание процесса моделирования комнаты и загрузить с прилагаемого к книге DVD готовую модель, которая находится в папке Examples\Глава 07\ Volume_light. Файл сцены называется volume_light_start.max.

Чтобы создать параллелепипед, выполните команду CreateStandard PrimitivesBox (СозданиеПростые примитивыПараллелепипед). После построения объекта, имитирующего внешнюю стену комнаты, вам понадобится еще один для внутренней стены (объемные стены нужны для последующего применения булевой операции для вырезания окна). Чтобы не строить второй параллелепипед, клонируем первый. Для этого, выделив объект, выполните команду EditClone (ПравкаКлонировать) и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Copy (Независимая копия объекта). Далее, не снимая выделения с вновь созданного объекта, щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов. Кнопка станет оранжевой. Щелкните на объекте и немного уменьшите его, переместив указатель вниз. СОВЕТ Копировать объект можно также, если активизировать инструмент масштабирования и, удерживая клавишу Shift, щелкнуть на объекте и переместить указатель вниз. После этого появится окно Clone Options (Параметры клонирования), где следует выбрать тип создаваемых при дублировании объектов.

Не снимая выделения с вновь созданного параллелепипеда, примените к нему модификатор Normal (Нормаль). Для этого выберите его в раскрывающемся списке вкладки Modify (Изменение) командной панели. В свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали) (рис. 7.25).

Рис. 7.25. Настройки модификатора Normal (Нормаль)

После этого выделите внутреннюю и внешнюю стены и соедините их. Для этого перейдите на вкладку Utilities (Утилиты) командной панели и щелкните на кнопке Collapse (Свернуть). Раскроется свиток Collapse (Свернуть), в котором нажмите кнопку Collapse Selected (Свернуть выделенное).

253

Объемный свет ПРИМЕЧАНИЕ Если, выбрав Utilities (Утилиты), вы не видите кнопки Collapse (Свернуть), щелкните на кнопке More (Дополнительно) и выберите Collapse (Свернуть) из списка.

Теперь создайте еще один параллелепипед по форме окна и расположите его в пространстве так, чтобы он пересекался со стеной, в которой будет располагаться окно. Выделите комнату. Перейдите на вкладку Create (Создание) командной панели, щелкните на кнопке Geometry (Геометрия), выберите из раскрывающегося списка строку Compound Objects (Составные объекты) и нажмите кнопку Boolean (Булев). В результате появится панель с настройками булевых операций (рис. 7.26). В свитке Pick Boolean (Указать булев) щелкните на кнопке Pick Operand B (Указать операнд В) и выберите параллелепипед, построенный по форме окна. В результате этих операций в стене образуется оконный проем. Чтобы видеть интерьер комнаты, расположите внутри ее камеру и источник света (например, Omni (Всенаправленный)). Снаружи напротив окна нужно установить еще один источник света. Это должен быть Target Spot (Направленный с целью), расположенный в пространстве таким образом, чтобы лучи света, проходя через окно, падали на пол комнаты (рис. 7.27). Чтобы «застеклить» окно, воспользуйтесь примитивом Plane (Плоскость), подогнав его размер под форму оконного проема.

Рис. 7.26. Панель с настройками булевых операций

После этого можно переходить к настройкам объемного света. Сделайте световое пятно на полу комнаты от направленного источника света, находящегося за окном. Для этого создайте новый материал с текстурной картой витража и присвойте его окну следующим образом. 1.

В окне Material Editor (Редактор материалов) выберите свободный материал.

2.

Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).

Рис. 7.27. Взаимное расположение камеры и источников света в сцене

254 3.

Глава 7. Освещение

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) дважды щелкните на строке Bitmap (Растровое изображение). 4. В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением витража. 5. Вернитесь к настройкам материала, щелкнув на кнопке Go to Parent (Вернуться к исходному). 6. Щелкните на кнопке Filter Color (Светофильтр) в свитке Maps (Карты текстур) и повторите операции п. 3, 4 и 5. СОВЕТ Если необходимо создать две одинаковые карты текстуры, то можно щелкнуть на кнопке с загруженной картой и перетащить ее на кнопку, в которую необходимо вставить карту.

7. Установите флажок 2-Sided (Двусторонний) в свитке Shader Basic Parameters (Основные параметры затенения). Рис. 7.28. Настройки материала витража

8. Задайте параметру Opacity (Непрозрачность) значение 50, что позволит свету проходить через окно в комнату (рис. 7.28).

Перед тем как выполнить первую визуализацию, настройте тени для источника света, который светит в окно, и цвет окружающей среды. Чтобы увидеть на полу световое пятно, необходимо включить отбрасывание теней с помощью данного источника света, причем тени должны быть типа Ray Traced Shadows (Трассированные тени). Чтобы витраж не казался темным и за ним угадывался яркий солнечный день, нужно в настройках окружающей среды изменить фоновый цвет на белый или светло-желтый. Для этого выполните команду RenderingEnvironment (ВизуализацияОкружающая среда). Откроется окно Environment and Effects (Окружающая среда и эффекты), где в свитке Common Parameters (Общие параметры) вкладки Environment (Окружающая среда) (рис. 7.29) сделайте необходимые изменения. Рис. 7.29. Свиток Common Parameters (Общие параметры) вкладки Environment (Окружающая среда)

После установки всех настроек можно визуализировать сцену. Если все было

255

Объемный свет

сделано правильно, должно получиться цветное световое пятно на полу комнаты (рис. 7.30).

Рис. 7.30. Результат визуализации витража с трассированными тенями

Осталось добавить изображению объемный свет. Для этого необходимо сделать два изменения: добавить источнику света Projector Map (Карта прожектора) и эффект Volume Light (Объемный свет). Чтобы добавить Projector Map (Карта прожектора), выделите в сцене объект Direct01 (источник света за окном) и в свитке Advanced Effects (Дополнительные эффекты) настроек этого источника света щелкните на кнопке, расположенной рядом с полем Map (Карта текстуры). В результате откроется окно Material/Map Browser (Окно выбора материалов и карт), в котором дважды щелкните на Bitmap (Растровое изображение) и выберите файл с изображением витража. Это позволит сделать лучи объемного света цветными (в соответствии с растровой картой) (рис. 7.31). Перейдем к настройкам атмосферных эффектов. Для этого выполните команду RenderingEnvironment (ВизуализацияОкружение), после чего появится окно Environment and Effects (Окружающая среда и эффекты). Здесь в свитке Atmosphere (Атмосфера) вкладки Environment (Окружение) щелкните на кнопке Add (Добавить) и в открывшемся окне Add Atmospheric Effect (Добавить атмосферный эффект) выберите Volume Light (Объемный свет). Задайте настройки объемного света, как показано на рис. 7.32.

Рис. 7.31. Свиток Advanced Effects (Дополнительные эффекты) настроек источника света, располагающегося за окном

256

Глава 7. Освещение

Рис. 7.32. Свитки настроек объемного освещения для осветителя Direct01

После этого выполните финальную визуализацию (рис. 7.33).

Рис. 7.33. Результат финальной визуализации

ПРИМЕЧАНИЕ В папке Examples\Глава 07\Volume_light прилагаемого к книге DVD содержится файл сцены данного упражнения, который называется volume_light_end.max.

Использование базовых источников света в интерьере

257

При желании вы можете использовать дополнительные настройки и получить новые эффекты. Например, применив Noise (Шум), можно получить эффект прохождения лучей света сквозь дым, а с помощью затухания добиться более реалистичного восприятия картины.

Использование базовых источников света в интерьере Современные визуализаторы, такие как mental ray, V-Ray, finalRender, Maxwell и др., могут использовать в расчетах глобальное освещение, что существенно облегчает работу, связанную с освещением, и повышает степень реалистичности визуализированных изображений. Со временем мы все больше и больше предоставляем программному обеспечению решать, как будет освещена и как будет выглядеть сцена при финальной визуализации. Все меньше времени мы затрачиваем на размещение и настройку источников света, и все еще значительное время требуется программе для того, чтобы рассчитать освещенность. Сейчас достаточно поместить в сцену один источник света, имитирующий солнце, и вся сцена будет заполнена отраженным светом — совсем как в жизни. Однако еще не так давно, выполняя визуализацию интерьера (или другую серьезную работу), приходилось настраивать десятки источников света, чтобы получить приемлемый результат. Использование базовых источников света является основополагающим в изучении и понимании освещения сцены. В данном разделе мы рассмотрим принципы расстановки и настройки источников света программы 3ds Max 2009 для освещения интерьера и создания эффекта глобального освещения. В качестве примера я собираюсь использовать вариант визуализации интерьера кухни, выполненный с помощью подключаемого визуализатора V-Ray (рис. 7.34).

ПРИМЕЧАНИЕ Данная сцена использовалась при создании рекламного видеоролика, в котором отснятое в студии видео с реальными актерами накладывалось на анимацию интерьера с последующим добавлением спецэффектов. Таким образом, созданная модель интерьера с настроенным согласно сценарию освещением позволила сэкономить значительную часть бюджета ролика и добиться желаемого результата.

Освещение сцены стандартными источниками света отличается от того, которое рассчитывается с учетом GI (Global Illumination) (Глобальное освещение). В этом упражнении мы попытаемся максимально имитировать GI, которое учитывает в своих расчетах отраженный свет. Для выполнения урока нам понадобится сцена, которую можно найти на прилагаемом к книге DVD в папке Examples\Глава 07\Kitchen. Файл называется kitchen_start.max.

258

Глава 7. Освещение

Рис. 7.34. Модель интерьера кухни, визуализированная с помощью модуля V-Ray

ВНИМАНИЕ Сцена, расположенная на DVD, имеет свыше 600 000 полигонов. По этой причине на компьютерах со старыми видеоадаптерами изображение может медленно прорисовываться в окнах проекций. Чтобы ускорить прорисовку, можно спрятать неиспользуемые объекты или установить в настройках отображения режим Bounding Box (Габаритный контейнер). Для этого необходимо выполнить команду ViewsViewport Configuration (ПроекцииКонфигурирование окна проекции) главного меню и установить переключатель Rendering Level (Уровень визуализации) в соответствующее положение (рис. 7.35).

Начните упражнение с того, что откройте в программе 3ds Max 2009 сцену и выделите стены, пол и потолок помещения. Для этого можно воспользоваться окном Select From Scene (Выбор из сцены), для вызова которого нажмите клавишу H. В этом окне выберите из списка два объекта с именами Walls (Стены) и Ceiling (Потолок) и нажмите OK для подтверждения выбора. Затем в любом из окон проекций щелкните на выделенном объекте правой кнопкой мыши и выберите из контекстного меню строку Hide Unselected (Спрятать невыделенное). В результате у вас должны остаться в сцене только два объекта, имитирующие стены, пол и потолок кухни. Первое, что необходимо выполнить, настраивая освещение внутренних помещений с помощью стандартных источников света, — это создать общую освещенность сцены. Такая освещенность задает общее настроение в сцене и помогает зрителю определить время суток. Например, для яркого солнечного дня характерны теплые тона, а для искусственного освещения лампами дневного света — холодные.

Использование базовых источников света в интерьере

259

Рис. 7.35. Окно Viewport Configuration (Конфигурирование окна проекции)

Создайте всенаправленный источник света, для чего выполните команду Create LightsStandard LightsOmni (СоздатьИсточники светаСтандартные источники светаВсенаправленный) главного меню и в окне проекции Top (Cверху) щелкните в левой половине модели кухни — именно там будем настраивать освещение сцены. СОВЕТ Выполняя создание и настройку источников света, мы будем использовать вид из камеры Base view, установленной в сцене (показывает вид, представленный на рис. 7.34). В связи с этим я бы не рекомендовал менять положение вида из камеры, что позволит в дальнейшем контролировать процесс визуализации.

Теперь необходимо выполнить предварительную настройку источника света. Мы будем создавать дневную освещенность с использованием солнечного света, и гамма цветов пола, мебели и стен, которая преобладает в сцене, является в большей степени зеленовато-коричневой, значит, и цвет окружающего освещения должен быть именно таким. Чтобы настроить созданный источник света, сделайте следующее. 1.

Выделите построенный источник света и перейдите на вкладку Modify (Изменение) командной панели.

260 2.

Глава 7. Освещение

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 0,9 и выберите цвет со следующими характеристиками: Red (Красный) — 223; Green (Зеленый) — 210; Blue (Синий) — 191.

ПРИМЕЧАНИЕ Выбор цвета определяется не только общей цветовой гаммой интерьера, но и временем суток, которое нужно воспроизвести, созданием эффекта отраженного света, а также глобальной освещенностью сцены.

3. В области Far Attenuation (Затухание вдали) свитка Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите флажки Use (Использовать) и Show (Показывать), что позволит управлять распространением освещения в пространстве и сделать затемненными углы комнаты. Значения этих параметров должны быть такими, чтобы начало области затухания находилось внутри комнаты, на небольшом расстоянии от внутренних стен, а окончание области затухания — за пределами кухни на значительном расстоянии. Например, значение Start (Начало) равно 3600 мм, а End (Конец) — 8500 мм. 4. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка) (рис. 7.36). ВНИМАНИЕ

Рис. 7.36. Настройки источника света общей освещенности

Установка флажка Ambient Only (Только подсветка) является очень важным фактором, так как именно этот параметр определяет то, каким образом будет использоваться источник света. В результате предметы сцены будут освещены равномерным светом с постепенным ослабеванием в зоне, определенной значениями параметров области Far Attenuation (Затухание вдали).

5.

Перейдите в окно проекции Front (Спереди) и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) , масштабируйте источник света по вертикали. Это необходимо для того, чтобы граница начала затухания оказалась между полом и потолком комнаты.

6.

Переместите источник света Omni01 вверх так, чтобы большая часть освещения попадала на потолок (рис. 7.37). Это вызвано тем, что потолок белого цвета, и для передачи его освещенности требуется значительная интенсивность источника, в то время как пол будет дополнительно освещаться солнечным светом, проходящим через окна, и большая контрастность только усилит эффект солнечного освещения.

Использование базовых источников света в интерьере

261

Рис. 7.37. Расположение в сцене источника света Omni01

Проведите тестовую визуализацию вида из камеры, для чего выполните команду RenderingRender Setup (ВизуализацияНастройки визуализации) главного меню, в области Output Size (Выходной размер) открывшегося окна выберите требуемый размер и щелкните на кнопке Render (Визуализировать). СОВЕТ Изменяя размер итогового изображения, старайтесь сохранять отношение высоты к ширине, равное 1,77778, что позволит иметь такие же пропорции, как и у оригинала.

Сравните полученное изображение с оригиналом и убедитесь в том, что цвет и яркость света созданного источника света соответствуют поставленным задачам. На рис. 7.38 показано визуализированное изображение помещения, которое должно получиться после настройки источника света Omni01. Обратите внимание на следующие советы по настройке окружающего света. 

Располагая источник света в комнате, смещайте его относительно центра ближе к потолку и стене, где расположены окна. Потолок, как правило, светлее стен и пола, а стена, на которой расположены окна, получает больше отраженного света, попадающего через эти окна в комнату. По мере удаления от окон свет постепенно затухает.

262

Глава 7. Освещение

Рис. 7.38. Помещение кухни, освещенное всенаправленным источником света



Настраивайте области затухания источника света с таким расчетом, чтобы углы и удаленные от дневного света участки комнаты имели значительные затемнения.



При необходимости масштабируйте источник света, чтобы получить желаемые области затухания.



Задавайте такой цвет источнику, чтобы он создавал не только общее настроение в картине, но и имитировал отраженный свет. В нашем случае преобладание деревянной мебели и пола создает теплую светло-коричневую гамму, а зеленый цвет рабочей области кухни придает этому тону зеленоватый оттенок.



Устанавливайте такое значение параметра Multiplier (Усилитель) источника света, которое создаст освещение, похожее на освещение итогового изображения. Причем созданное освещение должно быть немного темнее итогового, так как в сцену еще будут помещены локальные источники света, которые увеличат ее общее освещение.

Если результат настройки общего освещения вас удовлетворил, можно переходить к созданию источника направленного света, имитирующего солнце. Для этого сделайте следующее. 1.

Выполните команду CreateLightsStandard LightsTarget Directional (СоздатьИсточники светаСтандартные источники светаНацеленный направленный) и в окне проекции Top (Cверху) постройте светильник так, чтобы излучатель находился за пределами левой стены с окнами, а цель, на которую он направлен, — внутри помещения.

Использование базовых источников света в интерьере

2.

263

В окне проекции Front (Спереди) скорректируйте положение источника света так, чтобы угол, образованный источником света и полом комнаты, составлял около 35–40° (рис. 7.39).

Рис. 7.39. Расположение направленного источника света в окне проекции Front (Спереди)

3.

Перейдите на вкладку Modify (Изменить) командной панели, в свитке Intensity/ Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение, равное 2, и выберите цвет с такими параметрами: Red (Красный) — 233; Green (Зеленый) — 249; Blue (Синий) — 250.

Настройка параметров свитка Intensity/Color/Attenuation (Интенсивность/цвет/ затухание) позволит создать яркий пучок света, проходящий через окна кухни и оставляющий на полу световые пятна. Cветло-голубой цвет источника света создает дополнительный эффект отраженного неба. Выполните тестовую визуализацию и убедитесь, что все настройки сделаны правильно (рис. 7.40). Солнечный свет, попадающий в комнату, оставляет не только яркое световое пятно на полу и предметах быта, но и усиливает освещение предметов, расположенных в непосредственной близости от окна. В нашем случае это означает, что как минимум стены в оконном проеме и потолок должны получить дополнительное освещение. ПРИМЕЧАНИЕ Для достижения максимальной реалистичности солнечного света необходимо освещать дополнительным светом не только оконные проемы и потолок, но и пол, а также предметы, расположенные в непосредственной близости от окна. В большинстве случаев для этого достаточно одного всенаправленного источника света, который будет оказывать влияние на определенные объекты. Это не входит в задачу данного урока, поэтому вы можете выполнить такую дополнительную настройку самостоятельно.

264

Глава 7. Освещение

Рис. 7.40. Сцена, освещенная двумя источниками света

Чтобы осветить оконный проем, необходимо построить два источника света: один для освещения простенков, а второй — для оконного переплета. 1.

Постройте свободный источник света, для чего выполните команду Create LightsStandard LightsFree Spotlight (СоздатьИсточники светаСтандартные источники светаНаправленный без цели) и в окне проекции Right (Справа) щелкните кнопкой мыши в середине оконного проема.

2.

В окне проекции Top (Cверху) разместите построенный источник света так, чтобы он находился внутри комнаты на небольшом расстоянии от оконного проема.

Рис. 7.41. Свиток Spotlight Parameters (Параметры прожектора) с настройками нацеленного источника света

3.

В свитке Intensity/Color/Attenuation (Интенсивность/ цвет/затухание) настроек свободного источника задайте параметру Multiplier (Усилитель) значение 0,6. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка).

4.

В свитке Spotlight Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение 0,71 (рис. 7.41).

5.

Параметрам Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) задайте такие значения, чтобы освещение простенков начиналось от угла, не затрагивая стен кухни. В моем случае это 144,5 и 147,4 соответственно. В вашем случае могут быть несколько иные значения, которые зависят от удаленности источника света от оконного проема, на который он светит.

Использование базовых источников света в интерьере

6.

265

В свитке General Parameters (Общие параметры) щелкните на кнопке Exclude (Исключение) и в открывшемся окне Exclude/Include (Исключение/включение) выберите из списка, расположенного слева, объект Сurtains (Шторы). Щелкните на кнопке >> для перемещения его в список объектов, на которые не должен влиять источник света.

Размещенный в окнах проекций и настроенный источник света Fspot01 должен выглядеть, как показано на рис. 7.42.

Рис. 7.42. Расположение источника света Fspot01 в окне проекции Perspective (Перспектива)

Если сейчас выполнить тестовую визуализацию, можно обратить внимание на то, что не только простенки приобрели соответствующее освещение, но и оконная рама стала белого цвета, то есть пересвечена. Исправить положение поможет создание источника света с отрицательным значением параметра Multiplier (Усилитель). В данном случае оптимальным будет использование источника света с параллельными лучами, чтобы освещение по всей поверхности оконной рамы оставалось равномерным. Для построения такого источника света сделайте следующее. 1.

Выполните команду CreateLightsStandard LightsDirectional (СоздатьИсточники светаСтандартные источники светаНаправленный источник света) и в окне проекции Right (Cправа) щелкните кнопкой мыши в середине оконного проема (в месте расположения светильника Fspot01).

2.

В окне проекции Top (Cверху) переместите источник света по оси X так, чтобы он занял свое положение в середине оконного проема.

3.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение, равное –0,45.

266 4.

Глава 7. Освещение

В свитке Directional Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте такое же значение, как и для предыдущего светильника, — 0,71. Настройте также значения параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) таким образом, чтобы светильник охватывал всю поверхность оконной рамы. В моем случае эти значения равны 670 и 720 соответственно.

Выполните тестовую визуализацию и оцените результат настроек источников света для освещения окна (рис. 7.43).

Рис. 7.43. Визуализация вида из камеры с установленными светильниками для дальнего окна

Если все сделано правильно, то можно переходить к созданию источника света, который будет играть роль засветки потолка от окна. ПРИМЕЧАНИЕ Для большего контроля над созданием и настройкой светового пятна на потолке последний был выделен в отдельный объект, что позволило освещать эту область модели независимо от других объектов.

Если вы когда-нибудь рассматривали потолок своей квартиры в солнечный день, то могли обратить внимание, что свет от окна распределяется в виде трапеции и затухает по мере удаления вглубь комнаты. Такой эффект может создать нацеленный источник света. Для его построения сделайте следующее. 1.

Выполните команду CreateLightsStandard LightsTarget Spotlight (СоздатьИсточники светаСтандартные источники светаНаправленный с целью) и в окне проекции Top (Сверху) щелкните кнопкой мыши с внешней

Использование базовых источников света в интерьере

267

стороны оконного проема и, переместив указатель мыши по другую сторону окна в помещение кухни, щелкните еще раз для создания цели. 2.

Расположите построенный источник света и его цель в окне проекции Front (Спереди) так, чтобы он светил через оконный проем на потолок (рис. 7.44).

Рис. 7.44. Расположение источника света, направленного на потолок

3.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 0,75. В области Decay (Ослабление) выберите из списка Type (Тип) строку Inverse (Обратное), а параметру Start (Начало) задайте значение, равное 900. Таким образом, по мере удаления от источника света освещенность потолка будет ослабевать. Кроме того, для источника света можно выбрать светло-голубой цвет, что соответствует дневному свету в яркий солнечный день.

4.

В свитке Spotlight Parameters (Параметры прожектора) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение, равное 0,78. Для параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) выберите такие значения, чтобы освещение потолка начиналось недалеко от места пересечения его со стеной и, расширяясь, уходило вглубь комнаты. В окне проекции Top (Cверху) границы светового пятна должны определять угол распространения света, начиная от оконного проема. В моем случае эти значения равны 30 и 65 соответственно.

ПРИМЕЧАНИЕ Обычно значения затухания света и светового пятна подбираются опытным путем в зависимости от положения и поворота источника света в пространстве, а также от расстояния до объекта, на который он светит.

268

Глава 7. Освещение

5.

В свитке General Parameters (Общие параметры) щелкните на кнопке Exclude (Исключение) и в открывшемся окне Exclude/Include (Исключение/включение) выберите из списка, расположенного слева, объекты Carniz (Карниз) и Ceiling (Потолок). Щелкните на кнопке >> для перемещения этих объектов в правый список. Здесь также установите переключатель в положение Include (Включить) для использования этих объектов в освещении. Все остальные объекты сцены будут проигнорированы.

6.

В области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света установите флажок On (Включить) и выберите из раскрывающегося списка строку Shadow Map (Карта теней).

7.

Перейдите к свитку Shadow Map Params (Параметры карты теней) и задайте параметру Sample Range (Диапазон выборки) значение 40, что позволит получить мягкие размытые тени от карнизов на потолке.

После того как будут выполнены предварительные настройки, скопируйте три только что созданных источника света, предназначенных для освещения окна и потолка, для второго окна кухни. Это можно сделать, воспользовавшись командой главного меню EditClone (ПравкаКлонировать). В появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при дублировании объектов Instance (Образец), что позволит в дальнейшем изменять параметры освещения сразу двух окон. Теперь нужно выполнить тестовую визуализацию, перед которой следует отобразить карниз и шторы, чтобы увидеть, как освещение окна выглядит в целом. Для этого перейдите на вкладку Display (Отображение) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В появившемся окне Unhide Objects (Отобразить объекты) выберите два объекта — Carniz (Карниз) и Curtains (Шторы). Визуализируйте вид из камеры и сравните с результатом, который получил я (рис. 7.45). На представленном изображении явно виден недостаток освещенности стены рядом со шторами. Дело в том, что солнечный свет, попадая через окно на белые шторы, неминуемо вызовет отражение света, которое создаст светлые области на стене в местах расположения штор. Осветлить стены можно с помощью всенаправленного источника света. 1.

Выполните команду CreateLightsStandard LightsOmni (СоздатьИсточники светаСтандартные источники светаВсенаправленный) и в окне проекции Right (Справа) щелкните в середине одной из штор. В окне проекции Top (Cверху) переместите его по оси X так, чтобы он занял свое место между шторой и стеной.

2.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение, равное 0,15. В области Far Attenuation (Затухание вдали) установите флажки Use (Использовать) и Show (Показывать).

Использование базовых источников света в интерьере

269

Рис. 7.45. Визуализация сцены с установленными источниками света для окон кухни

3.

С помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) масштабируйте источник света в вертикальной и горизонтальной плоскостях так, чтобы область распространения света оказалась немного больше шторы (рис. 7.46).

4.

В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка), чтобы получить равномерно ослабевающее освещение стены в местах размещения штор.

Рис. 7.46. Форма и положение в пространстве источника света Omni02

270 5.

Глава 7. Освещение

Cкопируйте источник света Omni02, чтобы разместить аналогичное освещение по всем сторонам, где находятся шторы. Как при настройке освещения оконных проемов, в окне Clone Options (Параметры клонирования) установите переключатель Object (Объект) в положение Instance (Образец), что в дальнейшем позволит редактировать параметры сразу всех источников света, расположенных в районе штор.

СОВЕТ Одним из быстрых способов создания копий является перемещение объекта в окне проекции с нажатой клавишей Shift.

Выполните тестовую визуализацию и при необходимости подкорректируйте параметры источников света. Освещенность сцены должна быть такой, как показано на рис. 7.47.

Рис. 7.47. Сцена с дополнительными источниками света, расположенными позади штор

Рассмотрим еще одну особенность применения стандартных источников света для освещения объектов сцены. На сей раз создадим эффект затенения, который можно наблюдать позади предметов, расположенных в непосредственной близости от стен. Чтобы продолжить упражнение, перейдите на вкладку Display (Отображение) командной панели. В свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В появившемся окне Unhide Objects (Отобразить объекты) выберите объект Picture (Картина). Если сейчас выполнить визуализацию, то окажется, что созданные источники света не влияют на отображение картины, и она больше напоминает аппликацию, чем объемный предмет. Вокруг картины должна

Использование базовых источников света в интерьере

271

быть тень, так как она расположена близко к стене и помещена в черную рамку. Эту тень несложно создать с помощью направленного света с отрицательным значением параметра Multiplier (Усилитель). 1.

В окне проекции Right (Cправа) создайте источник света Directional (Направленный) и расположите его в середине картины. В окне проекции Top (Cверху) переместите его по оси X так, чтобы он расположился впереди картины на небольшом расстоянии.

2.

В свитке Directional Parameters (Параметры направленного источника света) установите переключатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение, равное 0,75. Для параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) подберите такие значения, чтобы световой луч находился на краях либо внутри картины, а край пятна — на небольшом расстоянии от нее (рис. 7.48). В моем случае эти значения равны 218 и 273 соответственно.

Рис. 7.48. Направленный источник света, расположенный перед объектом Picture (Картина)

3.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение –0,1.

4.

В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка).

Если сейчас выполнить визуализацию, то вы увидите, что картина, висящая на стене, приобрела объем, которого ей не хватало. Аналогичным способом выполняется установка и настройка источника света между холодильником и стеной (рис. 7.49).

272

Глава 7. Освещение

Рис. 7.49. Визуализация с затенением, созданным источниками света с отрицательным значением параметра Multiplier (Усилитель)

ВНИМАНИЕ Дальнейшие настройки освещения сцены потребуют значительно большего времени для визуализации, что может вызвать проблемы обновления окон проекций на слабых компьютерах. По этой причине рекомендую для выполнения упражнения использовать только часть объектов, присутствующих в сцене.

Чтобы вы могли создавать и настраивать источники света в собственных сценах, необходимо рассмотреть еще два способа настройки стандартных источников. Откройте спрятанные в самом начале упражнения объекты сцены и выполните тестовую визуализацию. Внимательно рассмотрите полученное изображение и сравните его с оригинальным (см. рис. 7.34), выполненным с помощью визуализатора V-Ray. Первое, что бросается в глаза, — это отсутствие у визуализированного изображения теней, позволяющих подчеркнуть объем предметов, присутствующих в сцене (рис. 7.50). Свет, проходящий на кухню через окна, должен усиливать освещенность фасадов кухни и затенять боковые стороны. Это же правило относится и ко всем остальным предметам сцены. Первое, что необходимо сделать, — использовать источник света с отрицательным значением параметра Multiplier (Усилитель) для затенения боковых сторон объектов, аналогично тому, что мы делали для картины, висящей на стене. В данном случае источник света должен располагаться правее и немного ниже всех объектов, таким образом, чтобы в зоне его действия оказались нижние плоскости подвесных шкафчиков, боковые стенки и стол со стульями (рис. 7.51).

Использование базовых источников света в интерьере

273

Рис. 7.50. Визуализация сцены без настроек освещения мебели и бытовых приборов

Рис. 7.51. Расположение направленного источника света, затеняющего стороны объектов, противоположные стене с окнами

274

Глава 7. Освещение

Кроме того, для данного источника света следует исключить из освещения объекты Walls (Стены) и Ceiling (Потолок). Сделать это можно, щелкнув в свитке General Parameters (Общие параметры) на кнопке Exclude (Исключить). Откроется окно Exclude/Include (Исключение/включение), где следует переместить из левого списка в правый объекты, на которые не должно распространяться освещение. Следующим шагом будет моделирование еще одного источника света, на сей раз создающего мягкую подсветку со стороны окон и размытые тени вокруг объектов сцены. В роли такого источника снова будет выступать Target Directional (Нацеленный направленный). Постройте уже известным вам способом источник света. Расположите его со стороны окон и направьте на кухонную мебель. Ширина светового пятна должна быть такой, чтобы покрыть всю площадь от холодильника до противоположной стены (рис. 7.52).

Рис. 7.52. Расположение направленного источника света для создания дополнительной подсветки кухонной мебели

Настройте следующие параметры источника света. 1.

В свитке General Parameters (Общие параметры) построенного источника света щелкните на кнопке Exclude (Исключение). В открывшемся окне Exclude/Include (Исключение/включение) выберите из списка, расположенного слева, объекты, которые необходимо исключить из освещения. В нашем случае это Walls (Стены), Table&Chair (Стол и стулья), curtains (Шторы) и Ceiling (Потолок).

2.

В области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света установите флажок On (Включить) и выберите из раскрывающегося списка строку Shadow Map (Карта теней).

Использование базовых источников света в интерьере

275

3.

В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите значение параметра Multiplier (Усилитель) равным 0,2. Небольшое значение этого параметра объясняется тем, что мы создаем иллюзию непрямого освещения и нет необходимости высвечивать объекты.

4.

В свитке Advanced Effects (Дополнительные эффекты) задайте параметру Soften Diff. Edge (Размытие краев диффузного света) значение 100, что позволит смягчить границы диффузного отражения и подсветки.

5.

В области Object Shadows (Тень объекта) свитка Shadow Parameters (Параметры тени) задайте параметру Dens. (Плотность) значение –0,3 и измените цвет тени на белый или светло-серый.

СОВЕТ Отрицательное значение параметра плотности карты тени и белый цвет позволят получить инверсную тень, имеющую равномерное распределение затенения во внутренней ее части, чего не удастся достичь обычным способом.

6.

Разверните свиток Shadow Map Params (Параметры карты теней) и задайте параметру Sample Range (Диапазон выборки) значение 40, а параметру Size (Размер) — значение 600, что позволит получить мягкие размытые края.

После установки всех настроек выполните тестовую визуализацию и оцените полученный результат. Изображение, которое получилось у меня после создания и настройки вышеописанного источника света, представлено на рис. 7.53.

Рис. 7.53. Визуализированное изображение с тенями и дополнительной подсветкой

276

Глава 7. Освещение

Изображение стало выглядеть значительно лучше, но все еще не хватает общей глубины тени и теней от мелких и тонких объектов, например от ручек шкафчиков.

ПРИМЕЧАНИЕ На самом деле небольшие объекты также отбрасывают тень, но использованный нами Sample Range (Диапазон выборки) оказывает такое влияние на размытие тени, что она становится практически незаметной.

Для усиления затененных участков необходимо установить еще как минимум два Directional (Направленный источник света) с отрицательным значением параметра Multiplier (Усилитель). Их следует расположить в проеме между шкафчиками над вытяжкой (направленный вниз) и возле правой стороны холодильника (вертикальный источник света, направленный в сторону кухни). Тень для мелких предметов можно создать двумя способами. 

Сделать источник света со значением параметра Multiplier (Усилитель), близким к нулю (чтобы не оказывать дополнительное влияние на общую освещенность сцены), и отрицательным значением параметра Dens. (Плотность).



Создать два источника света, один из которых является копией другого, с той лишь разницей, что он имеет противоположное значение параметра 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 (Площадная тень) укажите значения, представленные на рис. 7.54.

После изменений настроек источника света можно выполнить окончательную визуализацию (см. рис. 7.34).

Использование базовых источников света в интерьере

277

Подведем итоги выполненного упражнения. Одна и та же сцена может быть освещена различными способами, причем если у вас нет в наличии модулей для визуализации с использованием глобального освещения или вы не умеете ими пользоваться, то вполне можно обойтись стандартными источниками света. Кроме того, такое решение подразумевает творческий подход и максимальную свободу использования света. Не лишним будет сказать, что тестовая сцена с использованием визуализатора V-Ray на компьютере с 2 Гбайт оперативной памяти и процессором 3,2 ГГц просчитывалась 1 час 28 минут, а с использованием стандартных источников света — 7 минут. ПРИМЕЧАНИЕ В случае если у вас возникли затруднения с расстановкой или настройкой источников света, то вы можете загрузить файл kitchen_end.max, который находится на прилагаемом к книге DVD в папке Examples\Глава 07\Kitchen, и проанализировать настройки установленных в сцене источников света.

Рис. 7.54. Параметры свитка Area Shadows (Площадная тень) для точной настройки теней

Глава 8.

Анимация сцен • Анимация с использованием деформируемой геометрии • Анимация взрыва • Два варианта анимации страницы книги • Анимация рукописного шрифта • Использование модификатора Cloth (Ткань) для симуляции поведения тканей • Анимация движения танковой гусеницы • Звук в 3ds Max • Песочные часы • Текст, уносимый порывами ветра

В этой главе будут рассмотрены примеры создания анимации. Начнем знакомство с самого простого примера — анимации с применением деформируемой геометрии.

Анимация с использованием деформируемой геометрии В данном разделе мы опишем, насколько просто в 3ds Max 2009 можно создать интересную анимацию с использованием модификаторов и объектов группы Geometric/ Deformable (Деформируемая геометрия) категории Space Warps (Пространственные деформации). Мы создадим анимацию движения капли жидкости сквозь твердый объект и смоделируем движение твердого объекта в мягкой оболочке с помощью объектов FFD (Box) (FFD-контейнер (прямоугольный)), FFD (Cyl) (FFD-контейнер (цилиндрический)) и модификатора Taper (Заострение). Начнем с построения простых объектов. Для первой анимации нам понадобятся два параметрических объекта: Sphere (Сфера) и Tube (Труба). Для создания сферы перейдите в окно проекции Top (Сверху) и выполните команду главного меню CreateStandard PrimitivesSphere (СозданиеПростые примитивыСфера). На вкладке Modify (Изменение) командной панели задайте параметру Radius (Радиус) значение, равное 20, а Segments (Количество сегментов) оставьте равным по умолчанию — 32 (рис. 8.1).

Рис. 8.1. Параметры объекта Sphere (Сфера)

Расположите построенную сферу в начале координат. Для этого выделите сферу в одном из окон проекций и щелкните правой кнопкой мыши на кнопке Select and Move (Выделить и переместить) . В области Absolute: World (Абсолютные: глобальные) открывшегося окна Move Transform Type-In (Ввод данных преобразования перемещения) всем параметрам установите нулевые значения. Создайте объект Tube (Труба). Для этого выполните команду CreateStandard PrimitivesTube (СозданиеПростые примитивыТруба) главного меню и в окне проекции Top (Сверху) постройте объект произвольных размеров. В свитке Parameters (Параметры) настроек объекта Tube (Труба) на командной панели задайте параметрам значения, показанные на рис. 8.2. Мы задали построенному объекту большое количество сегментов по высоте. Это объясняется тем, что для плавного

Рис. 8.2. Параметры объекта Tube (Труба)

280

Глава 8. Анимация сцен

изменения формы объекта необходимо иметь достаточное количество полигонов в области деформации. Расположите сферу в середине трубы, для чего воспользуйтесь инструментом Align (Выравнивание) , расположенным на главной панели инструментов. После создания и выравнивания объектов можно приступать к анимации. Рассмотрим два варианта прохождения твердого объекта (сферы) сквозь эластичную трубу.

Первый вариант (с использованием модификатора) Примените к объекту Tube01 модификатор Taper (Заострение), выполнив команду меню ModifiersParametric DeformersTaper (МодификаторыПараметрические деформацииЗаострение). Перейдите на уровень редактирования подобъектов модификатора Taper (Заострение). Для этого в стеке модификаторов на плюсике, расположенном слева от имени модификатора и в раскрывшемся списке выберите строку Center (Центр). Цвет маркера (перекрестие у основания значка осей) изменится на желтый (по умолчанию). Нажмите кнопку Select and Move (Выделить и переместить) на панели инструментов и переместите центр модификатора по вертикали до нижней границы объекта Tube01 (рис. 8.3).

Рис. 8.3. Расположение центра воздействия модификатора Taper (Заострение)

Перейдите к редактированию габаритного контейнера модификатора. Для этого выделите в стеке модификаторов строку Gizmo (Габаритный контейнер) — в результате контейнер, охватывающий трубу, изменит цвет. Снова воспользуйтесь инструментом перемещения и сместите габаритный контейнер вверх до того места, где сфера пересекается с внутренней стенкой трубы (рис. 8.4).

Анимация с использованием деформируемой геометрии

281

Рис. 8.4. Положение габаритного контейнера относительно сферы

Нажмите на панели инструментов кнопку Select and Uniform Scale (Выделить и равномерно масштабировать) . Масштабируйте габаритный контейнер по вертикали до тех пор, пока верхний край контейнера не опустится до уровня пересечения внутренних стенок трубы со сферой (то есть масштабируйте габаритный контейнер по оси Y примерно до 12 %). Проконтролировать параметры масштабирования можно в строке состояния, расположенной в нижней части окна программы. Задайте модификатору Taper (Заострение) значения параметров, показанные на рис. 8.5. В результате труба деформируется по форме сферы. Для создания анимации сделайте следующее. 1.

Передвиньте ползунок таймера анимации на 85 кадр.

2.

Включите автоматическую запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ). Кнопка выделится цветом, указывая на то, что она находится в активном состоянии.

3.

Передвиньте контейнер модификатора Taper (Заострение) вниз до положения, когда его верхний край сместится за пределы трубы. Обратите внимание на то, что при этом вы должны находиться на уровне подобъектов Gizmo (Габаритный контейнер) модификатора.

4.

Передвиньте ползунок таймера анимации на 15 кадр и снова сместите габаритный контейнер модификатора, но теперь вверх, до тех пор, пока модификатор не покинет пределы трубы.

5.

Выделите и удалите первый ключ, созданный программой автоматически.

282

Глава 8. Анимация сцен

Рис. 8.5. Форма габаритного контейнера и параметры модификатора Taper (Заострение)

6.

Передвиньте ползунок таймера анимации на последний, 100 кадр и переместите сферу вниз за пределы трубы на небольшое расстояние.

7.

Сместите ползунок таймера анимации на нулевой кадр и передвиньте сферу вверх за пределы трубы на небольшое расстояние.

8.

Перейдите в 20 кадр анимации и уточните положение сферы относительно деформированного места трубы так, чтобы сфера находилась внутри деформированного участка. То же самое сделайте и для 80 кадра.

9.

Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

10.

Щелкните на кнопке Play Animation (Воспроизвести анимацию) смотра выполненной анимации.

для про-

Рассмотрим второй способ создания анимации с помощью объекта FFD (Box) (FFDконтейнер (прямоугольный)), используя те же объекты: сферу и трубу.

Второй вариант (с использованием объектов категории Geometric/Deformable (Деформируемая геометрия)) Для продолжения упражнения необходимо выполнить одно из двух действий: создать новый объект Tube (Труба) или копировать существующий и удалить назначенный ему модификатор. Если вы решили создать копию существующего объекта, то сделайте следующее.

Анимация с использованием деформируемой геометрии

283

1.

В одном из окон проекций выделите построенный ранее объект Tube01.

2.

Выполните команду меню EditClone (ПравкаКлонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при дублировании объектов Copy (Копия).

3.

Спрячьте одну из копий трубы. Для этого щелкните на ней правой кнопкой мыши и выберите из контекстного меню строку Hide Selection (Спрятать выделенное).

4.

Удалите из стека модификаторов ранее присвоенный Taper (Заострение). Автоматически удалится вся анимация, относящаяся к деформации трубы.

Анимация объекта Sphere01 нам пригодится в дальнейшей работе, поэтому все, что было сделано с этим объектом, должно оставаться таким как есть. Единственное, что нужно сделать, — перейти в 50 кадр анимации, чтобы сфера оказалась внутри объекта Tube01. Теперь необходимо построить новый объект — FFD (Box) (FFD-контейнер (прямоугольный)). Для этого выполните команду меню CreateSpaceWarpsGeometric/ DeformableFFD (Box) (СозданиеПространственные деформацииДеформируемая геометрияFFD-контейнер (прямоугольный)) и в окне проекции Top (Сверху) создайте прямоугольный контейнер с параметрами, представленными на рис. 8.6. Разместите его в середине сферы.

Рис. 8.6. Параметры и положение в пространстве относительно сферы объекта FFD01

Теперь габаритный контейнер необходимо связать с объектом, на который будет направлено воздействие трансформации, и отредактировать форму самого контейнера в соответствии с формой сферы. Для этого нужно выполнить следующее.

284

Глава 8. Анимация сцен

1.

Свяжите объект FFD01 с трубой. Для этого нажмите кнопку Bind to Space Warp (Связать с воздействием) , затем в одном из окон проекций щелкните на объекте FFD01 и, когда указатель примет соответствующий вид, перетащите его на трубу.

2.

Перейдите на уровень редактирования контрольных точек контейнера, для чего в стеке модификаторов щелкните на плюсике слева от строки FFD (box) 4Ч4Ч4 (FFD-контейнер (прямоугольный) 4Ч4Ч4) и в раскрывшемся списке выберите Control Points (Контрольные точки).

3.

Выделите два средних ряда контрольных точек и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) главной панели инструментов, равномерно масштабируйте точки до 130 %.

4.

Выйдите из режима редактирования контрольных точек контейнера, вернувшись на верхний уровень стека модификаторов. Для этого щелкните в стеке на строке FFD (box) 4Ч4Ч4 (FFD-контейнер (прямоугольный) 4Ч4Ч4).

Таким образом, габаритный контейнер после редактирования будет описывать форму сферы, а труба в месте воздействия контейнера деформации примет нужную форму (рис. 8.7).

Рис. 8.7. Форма трубы после применения модификатора пространственной деформации

Осталось связать контейнер трансформации с анимированной сферой, расположенной внутри трубы, и анимация будет закончена. Чтобы создать такую связь, необходимо выделить габаритный контейнер, нажать кнопку Select and Link (Выделить и связать) главной панели инструментов и указать на сферу.

Анимация с использованием деформируемой геометрии

285

СОВЕТ Выделить непосредственно сферу, находящуюся внутри двух других объектов, достаточно сложно. Самым простым решением будет выбор нужного объекта из списка объектов, который можно вызвать, воспользовавшись кнопкой Select by Name (Выделить по имени) или клавишей H.

Запустите воспроизведение анимации и убедитесь, что все было сделано правильно. В процессе воспроизведения габаритный контейнер вместе со сферой будет опускаться через трубу, деформируя ее в месте своего прохождения. ПРИМЕЧАНИЕ В папке Examples\Глава 08\Deformation прилагаемого DVD находится файл soft_tube.max с двумя вариантами выполненной анимации, а в папке Video\Глава 08 — видеоролик tube_deform.avi, показывающий прохождение сферы через трубу.

Анимация формы сферы При выполнении предыдущего примера мог возникнуть вопрос, можно ли с помощью FFD (Box) (FFD-контейнер (прямоугольный)) трансформировать сферу, проходящую через трубу. Ответ — да, можно. Рассмотрим, как сделать такую анимацию. Создайте новую сцену с теми же объектами: сфера и труба. Вы можете воспользоваться старой сценой, удалив модификатор FFD (Box) (FFD-контейнер (прямоугольный)) из стека. Трубе необходимо придать форму воронки. Для этого следует или применить модификатор Taper (Заострение), или отредактировать положение верхнего ряда вершин. Я воспользовался первым вариантом (рис. 8.8), чтобы потом при необходимости можно было вернуться на уровень редактирования параметров объекта Tube (Труба). Если вы заново создавали сцену, то анимируйте сферу таким образом, чтобы в первом кадре ее положение относительно трубы было выше, а в последнем — ниже. Для этого достаточно воспользоваться автоматической записью ключей анимации, как мы это делали ранее (установить соответствующее положение объекта в пространстве — остальное программа сделает автоматически). Постройте объект FFD (Cyl) (FFD-контейнер (цилиндрический)) и разместите его относительно трубы следующим образом. 1.

Выполните команду меню CreateSpaceWarpsGeometric/DeformableFFD(Cyl) (СозданиеПространственные деформацииДеформируемая геометрия FFD-контейнер (цилиндрический)) и в окне проекции Top (Сверху) постройте объект произвольной формы.

2.

или Align Используя инструмент Select and Move (Выделить и переместить) (Выравнивание) , расположите габаритный контейнер так, чтобы он находился в середине трубы.

286

Глава 8. Анимация сцен

Рис. 8.8. Форма трубы и параметры ее модификатора Taper (Заострение)

3.

В свитке FDD Parameters (FDD-параметры) построенного объекта задайте такие значения параметров, чтобы его диаметр соответствовал внутреннему диаметру в самой широкой части воронки (вверху), а по высоте — высоте трубы. Кроме того, важным является то, сколько разбиений по высоте будет иметь этот контейнер. Расстояние между первым и вторым рядами должно равняться высоте сужающейся части воронки. В моем случае это такое же количество рядов, как и у трубы (то есть равно значению параметра Height Segments (Количество сегментов по высоте)). Их можно установить, воспользовавшись кнопкой Set Numbers of Points (Установить количество точек) области Dimensions (Размеры).

ВНИМАНИЕ Все изменения расположения контрольных точек влияют на объект деформации — изменяют его форму. Именно поэтому начальную форму контейнера желательно задавать с помощью изменения параметров.

Далее необходимо связать габаритный контейнер со сферой и отредактировать его. 1.

Свяжите габаритный контейнер со сферой. Для этого щелкните на кнопке Bind to Space Warp (Связать с воздействием) на панели инструментов, выделите габаритный контейнер и, когда указатель примет соответствующий вид, удерживая кнопку мыши, подведите его к сфере.

2.

Перейдите на уровень редактирования контрольных точек контейнера, для чего в стеке модификаторов щелкните на плюсике, расположенном слева от

Анимация с использованием деформируемой геометрии

287

имени модификатора, и в раскрывшемся списке выберите строку Control Points (Контрольные точки). 3.

Выделяя по очереди все ряды контрольных точек кроме первого, масштабируйте их до внутреннего размера трубы (рис. 8.9). Для этой операции воспользуйтесь инструментом Select and Uniform Scale (Выделить и равномерно масштабиро. вать)

Рис. 8.9. Форма и положение габаритного контейнера

СОВЕТ Описанные действия можно выполнить иначе: выделить все необходимые ряды, начиная со второго, равномерно масштабировать их до размера внутреннего диаметра, а затем масштабировать по высоте, чтобы вернуться к прежнему расположению рядов по горизонтали.

4.

Выйдите из режима редактирования контрольных точек контейнера, щелкнув в стеке на имени модификатора.

Запустите воспроизведение анимации, воспользовавшись кнопкой Play Animation , и убедитесь, что все сделано правильно. (Воспроизвести анимацию) ПРИМЕЧАНИЕ Для ознакомления с выполненной анимацией можно открыть файл soft_sphere.max, расположенный в папке Examples\Глава 08\Deformation прилагаемого DVD. В папке Video\Глава 08 находится видеоролик sphere_deform.avi.

288

Глава 8. Анимация сцен

При желании вы можете улучшить анимацию. Для этого нужно перейти в кадр, в котором сфера появляется из трубы, и изменить значение параметра Falloff (Спад) в области Deform (Деформации) настроек объекта FFD(Cyl) (FFD-контейнер (цилиндрический)). В результате форма сферы будет плавно изменяться во времени.

Анимация взрыва Рассматривая разные варианты анимации объектов, можно заметить, что для ее создания необязательно прибегать к каким-то ухищрениям, часто достаточно стандартных средств. В предыдущем упражнении мы именно так и поступили — создали анимацию с использованием параметрических объектов и модификаторов. В этом разделе рассмотрим один из вариантов создания анимации взрыва с помощью все тех же средств. Начните с того, что загрузите в программу 3ds Max сцену bomb_start.max, находящуюся в папке Examples\Глава 08\Bomb прилагаемого DVD (рис. 8.10).

Рис. 8.10. Объекты сцены, предназначенные для анимации

Итак, у нас есть сфера и цилиндр, играющие роль бомбы, и сплайн пути для запального шнура. Сначала построим запальный шнур и анимируем его. 1.

В окне проекции Top (Сверху) постройте параметрический объект Cylinder (Цилиндр) произвольных размеров.

2.

Перейдите на вкладку Modify (Изменение) командной панели и в свитке Parameters (Параметры) настроек построенного цилиндра задайте параметрам Radius (Радиус), Height (Высота) и Height Segments (Количество сегментов по высоте) значения согласно рис. 8.11.

289

Анимация взрыва

3.

Примените к цилиндру модификатор деформации по траектории. Для этого выполните команду главного меню ModifiersAnimationPath Deform (WSM) (МодификаторыАнимацияДеформация по траектории (WSM)).

4.

В свитке Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM)) щелкните на кнопке Pick Path (Указать путь) и выберите в одном из окон проекций сплайн пути для запального шнура.

5.

Щелкните на кнопке Move to Path (Передвинуть на путь), чтобы цилиндр занял на сплайне формы правильное положение (рис. 8.12).

6.

Активизируйте автоматическую запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ), и передвиньте ползунок таймера анимации на последний кадр.

7.

Перейдите к свитку Parameters (Параметры) настроек цилиндра, для чего в стеке модификаторов щелкните на строке Cylinder (Цилиндр), в результате чего строка выделится цветом.

8.

Задайте параметру Height (Высота) значение, равное нулю.

9.

Выключите запись ключей анимации, для чего повторно щелкните на кнопке Auto Key (Автоключ).

Рис. 8.11. Параметры построенного цилиндра

Рис. 8.12. Цилиндр, деформированный по сплайну пути

290 10.

Глава 8. Анимация сцен

Проверьте правильность выполненных действий, запустив проигрывание анимации кнопкой Play Animation (Воспроизвести анимацию) . Запальный шнур должен уменьшаться и исчезнуть в 100 кадре.

Как видите, совсем простыми действиями мы создали анимацию сгорающего шнура. Чтобы усилить эффект горения, можно добавить на окончание запального шнура систему частиц, которая будет имитировать разлетающиеся в стороны искры. Система частиц должна базироваться на выделенных подобъектах (например, полигонах) либо на объекте в целом. В данном случае выделить полигоны на конце запального шнура невозможно, так как в верхней строке стека модификаторов находится модификатор Path Deform (WSM) (Деформация по траектории (WSM)). По этой причине необходимо построить и анимировать еще один объект. 1. Создайте сферу такого же размера, как и запальный шнур. В моем случае радиус равен 1,8. 2. Примените к построенной сфере модификатор Path Deform (WSM) (Деформация по траектории (WSM)). 3. В свитке Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM)) щелкните на кнопке Pick Path (Указать путь) и выберите в одном из окон проекций сплайн пути для запального шнура. 4. Щелкните на кнопке Move to Path (Передвинуть на путь), чтобы сфера заняла на сплайне формы правильное положение. 5. Задайте такое значение параметра Percent (Проценты), при котором сфера в нулевом кадре шкалы анимации переместится в начало запального шнура. У меня это значение равно 88,3 (рис. 8.13).

Рис. 8.13. Свиток Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM))

6. Активизируйте автоматическую запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ), и передвиньте ползунок таймера анимации на последний кадр. 7. Задайте параметру Percent (Проценты) значение, равное нулю. 8. Проверьте анимацию. Сфера должна перемещаться по сплайну пути вместе с запальным шнуром.

СОВЕТ Сфера используется как вспомогательный объект для построения системы частиц, поэтому нет необходимости в ее визуализации. Ее можно спрятать, воспользовавшись командой Hide Selection (Спрятать выделенное) контекстного меню, вызываемого щелчком правой кнопкой мыши на объекте.

Анимация взрыва

291

Кроме того, можно не прятать сферу, а анимировать параметр Visibility (Видимость) (в окне Object Properties (Свойства объекта)) с таким расчетом, что во время горения запального шнура сфера будет видна (значение параметра равно 1), а начиная с момента взрыва — нет (значение параметра Visibility (Видимость) равно 0). В этом случае сфере можно присвоить красный материал с небольшим значением параметра SelfIllumination (Собственное свечение), что усилит эффект горящего запального шнура.

Теперь займемся искрами. Сделаем простую анимацию системы частиц. Выполните команду CreateParticlesPArray (СозданиеЧастицыМассив частиц) и в произвольном месте любого окна проекции создайте значок массива частиц (рис. 8.14). В свитке Basic Parameters (Базовые параметры) настроек системы частиц PArray01 щелкните на кнопке Pick Object (Указать объект) и выберите в одном из окон проекций построенную ранее сферу (если вы ранее спрятали сферу командой Hide Selection (Спрятать выделенное), прежде всего отобразите ее). Перейдите к свитку Particle Generation (Генерация частиц) настроек системы частиц и задайте значения параметров создаваемых частиц: увеличьте количество генерируемых частиц до 150, измените скорость движения частиц, продлите время окончания их генерации до последнего кадра, уменьшите время жизни до двух кадров и т. д. (рис. 8.15).

Рис. 8.14. Значок системы частиц, расположенный в окне проекции Front (Спереди)

Рис. 8.15. Параметры системы частиц в свитке Particle Generation (Генерация частиц)

292

Глава 8. Анимация сцен

ПРИМЕЧАНИЕ Значения параметров системы частиц подбираются опытным путем в зависимости от желаемого результата и могут существенно отличаться от приведенных на рис. 8.15. Из всех параметров данного свитка наиболее важными являются время окончания генерации частиц, которое должно быть продлено до окончания горения запального шнура (в нашем случае до 100), и установленный флажок Emitter Rotation (Поворот источника), что позволит задать направление движения частиц.

Переключатель Standard Particles (Типовые частицы) свитка Particle Type (Тип частиц) установите в положение Special (Специальный), что позволит задать форму частиц в виде пересекающихся плоскостей. В области Spin Axis Controls (Управление осями вращения) свитка Rotation and Collision (Поворот и столкновения) установите переключатель в положение Direction of Travel/Mblur (Направление движения/размытие движения). Параметру Stretch (Растяжение) задайте значение, равное 50. Изменение значений этих параметров позволит получить протяженное размытие частиц по мере удаления от источника. Настроив основные параметры системы частиц, визуализируйте статичный кадр в середине анимации и убедитесь, что все выполнено правильно. Если результат вас не удовлетворит, проведите дополнительную настройку параметров системы частиц. Следующим шагом будет создание анимации самого взрыва. В данном случае нам поможет объект Bomb (Бомба), относящийся к Space Warps (Пространственные деформации). Для создания и настройки анимации взрыва сделайте следующее. 1.

Выполните команду CreateSpaceWarpsGeometric/DeformableBomb (СозданиеПространственные деформацииДеформируемая геометрияБомба).

2.

Разместите созданный значок бомбы внутри сферы (рис. 8.16).

3.

Свяжите объекты GeoSphere01 и Cylinder01 с воздействием. Для этого щелкните на кнопке Bind to Space Warp (Связать с воздействием) на панели инструментов, затем в одном из окон проекций — на бомбе (GeoSphere01) и, когда указатель примет соответствующий вид, перетащите его на значок объекта Bomb (Бомба). Проделайте те же операции и для цилиндра, расположенного в верхней части бомбы (его также необходимо взорвать).

4.

В одном из окон проекций выделите значок объекта Bomb (Бомба) и перейдите к свитку Bomb Parameters (Параметры бомбы), расположенному на вкладке Modify (Изменение) командной панели.

5.

В области Explosion (Взрыв) задайте параметрам Strength (Мощность) и Spin (Вращение) значения, равные 1,5.

6.

В области Fragment Size (Размер фрагментов) задайте параметрам Min (Минимум) и Max (Максимум) значения 1 и 5 соответственно.

7.

В поле Detonation (Детонация) области General (Общие) укажите номер кадра, в котором произойдет взрыв. В нашем случае это 100 кадр, в котором запальный шнур догорит до конца.

Анимация взрыва

293

Рис. 8.16. Расположение значка объекта Bomb (Бомба)

8.

Увеличьте количество кадров анимации. Для этого щелкните на кнопке Time Configuration (Настройка временных интервалов) в правой нижней части окна 3ds Max и в поле End Time (Время окончания) области Animation (Анимация) открывшегося окна введите количество кадров, равное 200.

9.

Проверьте анимацию. Начиная с 1 по 100 кадр будет гореть запальный шнур, а начиная с сотого кадра должна взорваться бомба.

Таким образом, мы построили простой взрыв. Его реалистичность можно повысить, воспользовавшись эффектом Fire Effect (Эффект огня). Для этого необходимо предварительно построить габаритный контейнер, который будет определять зону действия атмосферного эффекта Fire Effect (Эффект огня). Выполнить это можно с помощью команды главного меню CreateHelpersAtmosphericsSphere Gizmo (СозданиеВспомогательные объектыАтмосферные эффектыСферический контейнер). После построения расположите габаритный контейнер так, чтобы бомба находилась в его середине (рис. 8.17). При активном габаритном контейнере SphereGizmo01 перейдите на вкладку Modify (Изменение) командной панели и в свитке Atmospheres & Effects (Атмосфера и эффекты) щелкните на кнопке Add (Добавить). В открывшемся окне Add Atmosphere (Добавить атмосферный эффект) выберите из списка строку Fire Effect (Эффект огня) и щелкните на кнопке OK для подтверждения выбора. В результате этих действий в список эффектов габаритного контейнера добавится эффект огня (рис. 8.18). Теперь следует настроить параметры эффекта для взрыва. 1.

В свитке Atmospheres & Effects (Атмосфера и эффекты) выделите строку с именем добавленного эффекта и щелкните на кнопке Setup (Настройки).

294

Глава 8. Анимация сцен

Рис. 8.17. Расположение габаритного контейнера относительно объекта-бомбы

Рис. 8.18. Габаритный контейнер с добавленным эффектом огня

2.

Убедитесь в том, что в области Shape (Форма) открывшегося окна Environment and Effects (Окружающая среда и эффекты) переключатель Flame Type (Тип огня) установлен в положение Fireball (Облако пламени).

3.

В этой же области задайте параметру Regularity (Регулярность) значение 0,6, что позволит придать эффекту форму, близкую к форме габаритного контейнера (значение, равное 1, создаст абсолютно круглый огненный шар).

4.

В области Explosion (Взрыв) настроек эффекта установите флажок Explosion (Взрыв). В результате программа будет рассматривать эффект огня как взрыв.

5.

В этой же области щелкните на кнопке Setup Explosion (Настройки взрыва) и в открывшемся окне Setup Explosion Phase Curve (Настройки кривой фаз взрыва) задайте параметрам Start Time (Время начала) и End Time (Время окончания) значения, равные 100 и 180 соответственно. Эти значения определяют начало и окончание действия эффекта взрыва.

Остальные параметры эффекта взрыва могут оставаться заданными по умолчанию, а если вам не понравится результат, вы всегда можете поменять их на свои. Активизируйте окно перспективного вида, переместите ползунок таймера анимации на 102 кадр (начало взрыва) и выполните визуализацию (рис. 8.19).

Анимация взрыва

295

Рис. 8.19. Визуализация эффекта взрыва в 102 кадре анимации

ВНИМАНИЕ Эффект можно визуализировать только в окне проекции Perspective (Перспектива) или в окне вида из камеры. В окнах проекций Front (Спереди), Left (Слева), Top (Сверху), Right (Справа) и других эффект не визуализируется.

Как видно из визуализации, размера эффекта взрыва недостаточно. Сделать его большим можно, увеличив размеры габаритного контейнера SphereGizmo01. Для этого выделите данный объект и в свитке Sphere Gizmo Parameters (Параметры сферического габаритного контейнера) задайте параметру Radius (Радиус) значение 130. Повторите визуализацию эффекта и убедитесь в том, что размер облака пламени приблизительно равен радиусу разлетающихся осколков бомбы (рис. 8.20). Для проверки выполненной анимации визуализируйте и другие кадры анимации. При необходимости измените настройки эффекта или размер габаритного контейнера. Визуализируйте все кадры и сохраните анимацию как последовательность изображений или видеоролик. ПРИМЕЧАНИЕ При необходимости вы можете обратиться к файлу упражнения bomb_end.max с выполненными настройками анимации. Он расположен на прилагаемом DVD в папке Examples\Глава 08\Bomb. В папке Video\Глава 08 содержится готовая анимация bomb.avi.

296

Глава 8. Анимация сцен

Рис. 8.20. Визуализация взрыва с измененным радиусом габаритного контейнера

Два варианта анимации страницы книги Анимацию модели книги, как и многие другие задачи, можно выполнить разными способами. Например, использовать примитив Box (Параллелепипед) для моделирования корешка книги и неподвижно лежащих листов, а для создания переворачивающихся листов — объект Plane (Плоскость) с достаточно плотной сеткой полигонов, чтобы сделать корректный изгиб. После этого применить модификатор FFD (Box) (FFD-контейнер (прямоугольный)) и, манипулируя вершинами контейнера, создать ключи анимации. Можно анимировать параметры модификатора Bend (Изгиб). Я хочу предложить вам собственный способ моделирования книги и два способа анимации переворачивающихся страниц. Один способ анимации основан на смешанной технике моделирования с последующей анимацией вершин, составляющих поверхность листа. При этом вам не придется сидеть и скрупулезно подгонять вершины по форме изгиба страницы, как это неизбежно было бы в случае с полигональным объектом. Для этих целей будет использована поверхность, форма которой описывается математическими выражениями, — NURBS-поверхность. С помощью второго способа анимации вы построите лофт-поверхность по четырем кривым. В этом случае анимация листа книги будет осуществляться не перемещением кривых или их контрольных точек в пространстве, а поворотом этих кривых вокруг точки, расположенной у основания корешка книги. Таким образом, мы создадим и анимируем реалистично выглядящую модель книги, используя простые решения. Основу книги составит лофт-объект, а страницы, подлежащие анимации, — NURBS-поверхность.

Два варианта анимации страницы книги

297

ПРИМЕЧАНИЕ Вы можете пропустить описание процесса моделирования книги и загрузить готовую модель book_start.max из папки Examples\Глава 08\Book прилагаемого к книге DVD.

Моделирование начинается с построения сплайнового прямоугольника. Выполните команду CreateShapesRectangle (СозданиеФормыПрямоугольник), щелкните в левом верхнем углу окна проекции Front (Спереди) и перетащите указатель вправо и немного вниз, создавая тем самым заготовку для боковой стороны книги (рис. 8.21).

Рис. 8.21. Сплайновый прямоугольник, с которого начинается моделирование книги

Преобразуйте прямоугольник в редактируемый сплайн, чтобы иметь возможность менять его форму и размеры. Для этого щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн). В результате в стеке модификаторов на вкладке Modify (Изменение) командной панели появится строка Editable Spline (Редактируемый сплайн). Щелкните на плюсике возле этой строки и в развернувшемся списке выберите Vertex (Вершина). В результате вы переключитесь в режим редактирования вершин сплайна. Находясь в режиме редактирования вершин, добавьте несколько вершин сплайну и измените его форму. Для этого щелкните на кнопке Refine (Уточнить) в свитке Geometry (Геометрия) настроек сплайна. Это позволит добавлять новые опорные точки в промежутках между имеющимися. Щелкните на сплайне в том месте, где нужно добавить точку. Отредактируйте кривизну сплайна и положение вершин в пространстве. Для этого нажмите еще раз кнопку Refine (Уточнить), чтобы отключить режим создания новых точек, а затем щелкните на вершине, которую нужно отредактировать. Когда вершина выделена, вы можете перемещать ее в пространстве и редактировать кривизну сплайна, используя манипуляторы кривой Безье. В результате этого редактирования должен получиться профиль книги в разрезе (рис. 8.22).

Рис. 8.22. Профиль сечения книги

298

Глава 8. Анимация сцен

Осталось применить к созданному сплайну модификатор Extrude (Выдавить). Для этого выполните команду меню ModifiersMesh EditingExtrude (МодификаторыРедактирование сеткиВыдавить). Задайте такое значение величины выдавливания в настройках модификатора Extrude (Выдавить), чтобы она соответствовала пропорциям книги (рис. 8.23).

Рис. 8.23. Книга после применения модификатора Extrude (Выдавливание)

Таким образом, мы создали форму книги, то есть ту ее часть, которая не будет анимироваться. Теперь займемся построением анимируемых страниц.

Первый вариант Чтобы создать страницу, выполните следующие действия. 1.

Щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели и выберите в раскрывающемся списке строку NURBS Surfaces (NURBS-поверхности).

2.

Щелкните на кнопке CV Surf (CV-поверхность), чтобы указать, какие поверхности мы собираемся строить.

3.

Перейдите в окно проекции Top (Cверху) и щелкните в верхней точке середины книги, после чего переместите указатель до правого нижнего угла.

Таким образом, мы построили поверхность, но пока она ровная и мало похожа на страницу книги. Чтобы придать странице нужную форму, перейдите на уровень редактирования подобъектов Surface CV (Управляющие вершины поверхности) на вкладке Modify (Изменение) командной панели и переместите точки плоскости так, чтобы она приняла форму поверхности, на которую будет ложиться (рис. 8.24).

Два варианта анимации страницы книги

299

Рис. 8.24. Лист, уложенный в книгу

Выделяйте и перемещайте управляющие вершины в окне фронтального вида, что позволит манипулировать всем столбцом вершин сразу. СОВЕТ Если у вас возникнут трудности с приданием листу нужной формы, попробуйте увеличить количество управляющих вершин путем добавления дополнительных столбцов (кнопка Col. (Столбец) в области Insert (Вставка)).

Перед тем как переходить к анимации страницы, нужно сделать еще одно уточнение — переместить ось вращения на край страницы в середине книги. 1.

Перейдите на вкладку Hierarchy (Иерархия) командной панели и щелкните на кнопке Affect Pivot Only (Только опора), что позволит воздействовать только на опорную точку.

2.

Переместите опорную точку листа в крайнее левое положение.

3.

Щелкните на кнопке Affect Pivot Only (Только опора) еще раз, чтобы закрепить новое положение опорной точки в пространстве.

Все готово для начала построения анимации. Передвиньте ползунок таймера анимации на 60 кадр. Щелкните на кнопке Auto Key (Автоключ), после этого нажмите кнопку Select and Rotate (Выделить и повернуть) на панели инструментов. Поворачивая манипулятор против часовой стрелки, разверните страницу в левую сторону. Не выключая запись ключей анимации, отредактируйте положение управляющих вершин в пространстве относительно левой стороны книги (рис. 8.25).

300

Глава 8. Анимация сцен

Рис. 8.25. Лист, уложенный на левую сторону книги

Если все было сделано правильно, то, передвигая ползунок шкалы анимации, вы увидите, как переворачивается лист. Базовая анимация сделана (рис. 8.26). Как только вы закончите редактировать положение управляющих вершин, еще раз щелкните на кнопке Auto Key (Автоключ), чтобы выключить автоматическую запись всех изменений. Если вы хотите улучшить анимацию и постараться добиться более реалистичного вида листа во время поворота, нужно добавить новые ключевые кадры в промежутке между первым и последним. Однако старайтесь не перегружать анимацию ключевыми кадрами, так как слишком большое количество ключевых кадров создаст трудности с их редактированием. Оптимальный вариант — установка ключей только там, где без них не обойтись, остальное 3ds Max сделает автоматически. Самый простой вариант проследить, как переворачивается лист, — взять в руки книгу и перевернуть ее лист, обращая внимание на изменение его формы в пространстве. ПРИМЕЧАНИЕ Если у вас возникли трудности с настройкой анимации, можете обратиться к файлу сцены book_var01.max, расположенному в папке Examples\Глава 08\Book прилагаемого DVD. В папке Video\Глава 08 находится готовая анимация book.avi.

Второй вариант В предыдущем примере для контроля формы объекта и его положения в пространстве использовались управляющие вершины. Рассмотрим другой способ анимации страниц книги — с помощью лофт-поверхности. Для продолжения работы выполните одно их трех действий:

Два варианта анимации страницы книги

301

Рис. 8.26. Анимированный лист книги



выделите анимированный лист и, используя команду Hide Selection (Спрятать выделенное) контекстного меню, спрячьте его;



удалите анимированный лист из сцены;



загрузите начальную сцену из файла book_start.max из папки Examples\ Глава 08\Book прилагаемого DVD.

Для создания анимированной страницы нам понадобится построить лофт-поверхность по четырем управляющим кривым. Для этого сделайте следующее. 1.

Щелкните на кнопке Shapes (Формы) вкладки Create (Создание) командной панели и выберите из раскрывающегося списка строку NURBS Curves (NURBSкривые).

2.

Нажмите кнопку CV Curve (CV-кривая) для выбора типа кривой.

3.

Перейдите в окно проекции Top (Сверху), щелкните в верхнем углу книги, вертикально переместите указатель до нижнего края и щелкните еще раз для построения второй точки кривой. Нажмите правую кнопку мыши для завершения построения.

СОВЕТ Чтобы создать контрольные вершины, расположенные строго в вертикальной или горизонтальной плоскости, при построении нажмите и удерживайте клавишу Shift.

302

Глава 8. Анимация сцен

4.

Копируйте созданную кривую, выполнив команду EditClone (ПравкаКлонирование), и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Copy (Независимая копия объекта).

5.

Повторите описанные в п. 4 действия два раза для создания третьей и четвертой копий кривой. После этого разместите построенные кривые так, чтобы первая кривая находилась в области корешка книги, а остальные приблизительно соответствовали положению строящейся страницы (рис. 8.27).

Теперь необходимо создать NURBS-поверхность. Для этого выделите в окне проекции Perspective (Перспектива) первую кривую и в свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) для вызова плавающей панели NURBS с инструментами создания кривых и поверхностей. На плавающей панели NURBS нажмите кнопку Create U Loft Surface (Создать поверхность методом U-лофтинга) (рис. 8.28), после чего указатель примет соответствующий вид.

Рис. 8.27. Положение кривых перед построением поверхности

Рис. 8.28. Плавающая панель NURBS с нажатой кнопкой Create U Loft Surface (Создать поверхность методом U-лофтинга)

Подведите указатель мыши к первой кривой (расположенной в районе корешка), в результате чего она подсветится цветом, и щелкните на ней. Затем щелкните на соседней кривой. В результате этих действий между первой и второй кривой образуется поверхность. ВНИМАНИЕ В отличие от объектов другого типа, на уровне редактирования подобъектов для NURBS-объектов при анимации блокируется кнопка выбора центра трансформации. По этой причине важным фактором является последовательность выделения кривых. Дело в том, что первая выделенная кривая в нашем случае будет являться одновременно и осью вращения для объекта и его подобъектов.

303

Два варианта анимации страницы книги

Продолжите выделение оставшихся двух кривых и создание поверхности страницы, образованной всеми кривыми. После завершения построения щелкните в окне проекции правой кнопкой мыши. Теперь можно окончательно отредактировать положение кривых в пространстве. Для этого перейдите на уровень редактирования подобъектов Curve (Кривая) выделенного объекта. В окне проекции Front (Спереди) передвиньте кривые так, чтобы поверхность листа приняла более естественный вид и при этом не пересекалась со статичной геометрией (рис. 8.29). Все подготовительные действия выполнены — можно приступать к анимации. Передвиньте ползунок шкалы анимации на 60 кадр. Щелкните на кнопке Auto Key (Автоключ). Перейдите на уровень редактирования подобъектов Curve (Кривая) и в окне проекции Front (Спереди) выделите вторую управляющую кривую (в активном состоянии все кривые будут обозначены кружками). Нажмите кнопку Select and Rotate (Выделить и повернуть) на панели инструментов и выберите из раскрывающегося списка Reference Coordinate System (Система координат) пункт Local (Локально) (рис. 8.30).

Рис. 8.29. Расположение управляющих кривых в окне проекции Front (Спереди)

Рис. 8.30. Раскрывающийся список Reference Coordinate System (Система координат)

Поворачивая манипулятор против часовой стрелки, разверните управляющую кривую в левую сторону. Проделайте те же действия для оставшихся двух кривых. Не выключая запись ключей анимации, при необходимости отредактируйте положение управляющих кривых в пространстве относительно левой стороны книги (рис. 8.31).

Рис. 8.31. Положение управляющих кривых на левой стороне книги

304

Глава 8. Анимация сцен

Подводя итоги выполненной анимации листа книги, можно заметить, что второй способ более простой и легкоуправляемый. В общем случае для такой анимации достаточно трех управляющих кривых и создания ключей анимации в первом и последнем кадрах анимации, а небольшое изменение кривой трансформации поворота в Curve Editor (Редактор кривых) позволяет получить реалистичное движение листа при минимальных трудозатратах.

ПРИМЕЧАНИЕ Файл урока с настройками анимации book_var02.max находится на прилагаемом DVD в папке Examples\Глава 08\Book.

Анимация рукописного шрифта В предыдущем разделе мы рассмотрели два варианта анимации страниц книги. А что, если пойти дальше и смоделировать процесс письма шариковой ручкой? А может быть, вспомнить время, когда наши родители, дедушки и бабушки писали перьевыми ручками, аккуратно выводя ровным почерком слово за словом? С точки зрения моделирования и анимации такой текст более сложен, но вместе с тем и более интересен. Рассматривая варианты такой анимации, я пришел к выводу, что сделать ее можно как минимум пятью способами: 

анимируя параметр Length (Длина) примитива Cylinder (Цилиндр) с одновременным использованием модификатора Path Deform (Деформация по траектории);



анимируя параметры объекта Loft (Лофтинговые);



применив альфа-канал материала в качестве средства анимации;



воспользовавшись анимированной текстурой;



применив модификатор Sweep (Шаблон) совместно с анимированной текстурой прозрачности.

Каждый способ имеет свои достоинства и недостатки, но вместе с тем каждый из них может решать конкретные задачи. Мы не станем рассматривать все варианты, а остановимся лишь на том, который предоставляет наибольшую гибкость в работе, но требует больше времени и сил для создания такой анимации. Кроме того, интересным дизайнерским решением может явиться анимация не только самого шрифта, но и ручки, пишущей этот текст. В данном разделе мы не станем рассматривать процесс моделирования объектов, поэтому для работы вам необходимо загрузить сцену animated_text_start. max, которая находится в папке Examples\Глава 08\Text прилагаемого к книге DVD (рис. 8.32).

Анимация рукописного шрифта

305

Рис. 8.32. Вид сцены animated_text_start.max в окне проекции Perspective (Перспектива)

Все, что нам необходимо для начала выполнения упражнения, — это три объекта: лист бумаги (создан с помощью примитива Plane (Плоскость)), любой каллиграфический шрифт (сплайн Text (Текст) с использованием шрифта, установленного на вашем компьютере) и модель перьевой ручки. Вы можете применить любой текст или шрифт. Я создал также дополнительные объекты — чернильницу и плоскость стола. Способ анимации появляющегося шрифта, который я собираюсь описать, основан на использовании модификатора Loft (Лофтинговые), поэтому необходимо построить сплайн пути. Но прежде чем начать какое бы то ни было моделирование, следует подготовить сцену. На самом деле нам нужно убрать со сцены неиспользуемые объекты и заблокировать текст от случайного смещения. Чтобы выполнить первое, щелкните на тексте правой кнопкой мыши и выберите из контекстного меню строку Hide Unselected (Спрятать невыделенное). Для блокирования текста можно воспользоваться командой Freeze Selection (Заморозить выделенное) контекстного меню текста. После этих подготовительных действий выполните команду главного меню Create ShapesLine (СозданиеФормыЛиния), в результате чего на вкладке Create (Создание) командной панели появятся свитки параметров строящейся линии. Установите в свитке Creation Method (Метод создания) переключатели Initial Type (Начальный тип) и Drag Type (Вершина при перетаскивании) в положение Smooth (Сглаживание) для построения сглаженных вершин в процессе создании сплайна. Перейдите в окно проекции Top (Cверху). Постройте сплайн пути таким образом, чтобы он начинался в левой части текста и проходил по середине шрифта (рис. 8.33).

306

Глава 8. Анимация сцен

Рис. 8.33. Сплайн, построенный для первых трех символов текста

Построение удобнее всего вести, развернув окно проекции во весь экран монитора. Для этого необходимо нажать сочетание клавиш Alt+W. Можно также использовать режим эксперта — сочетание клавиш Ctrl+X. При создании сплайна часть шаблона, по которому происходит построение, может оказаться за пределами окна проекции. В этом случае, дойдя до края окна проекции, нажмите клавишу I, и указатель вместе с изображением переместится в середину окна проекции. Если во время построения сплайна вам понадобится удалить последнюю вершину или несколько вершин, то сделать это можно, не выходя из режима построения, нажав клавишу Backspace. Сначала построения ведутся достаточно приблизительно, чтобы создать общую форму сплайна с расчетом на последующее редактирование. Обратите внимание на то, что последовательность создания сплайна должна быть такой же, как и при написании текста пером, то есть как мы построим сплайн, так он будет затем появляться при анимации. ВНИМАНИЕ Сплайн в данном случае необходимо создавать непрерывным от начала до конца, по всей длине текста. Это ограничение вызвано тем, что модификатор Loft (Лофтинговые) для создания объекта может использовать только один непрерывный сплайн пути. Модификатор Sweep (Шаблон) может работать с объектами, имеющими разрывы. Однако он больше подойдет для имитации написания шариковой ручкой, так как не имеет настроек для изменения размеров сечения по пути следования.

Анимация рукописного шрифта

307

После того как будет построена базовая форма, переходите к ее редактированию. Для этого выделите сплайн, перейдите на вкладку Modify (Изменение) командной панели и в свитке Selection (Выделение) щелкните на кнопке Vertex (Вершина), чтобы перейти в режим редактирования вершин. Теперь можно более точно расположить вершины внутри текста, при необходимости удаляя лишние (клавиша Delete) или добавляя новые (кнопка Refine (Уточнить) из свитка Geometry (Геометрия)).

СОВЕТ При редактировании может понадобиться более точная настройка кривых в местах перехода. В этом случае лучшим решением будет не добавление новых вершин, а изменение типа излома вершины: вместо Smooth (Сглаженная) — Bezier (Безье) или Corner (Угловая). Для этого нужно щелкнуть на вершине правой кнопкой мыши и выбрать в появившемся меню соответствующий тип. Если при редактировании манипуляторов вершин типа Bezier (Безье) нажать и удерживать Shift, то тип вершины автоматически изменится на Bezier Corner (Безье угловая).

В результате у вас должен получиться непрерывный сплайн (рис. 8.34).

Рис. 8.34. Сплайн пути, созданный на основе стандартного шрифта

Теперь необходимо создать сплайн сечения. Для этого воспользуемся формой Ellipse (Эллипс), построить которую можно, выполнив команду CreateShapesEllipse (СозданиеФормыЭллипс). Строить необходимо в окне проекции Front (Спереди). Это имеет существенное значение для построения лофт-объектов, так как форма сечения должна располагаться перпендикулярно форме пути. Задайте эллипсу следующие значения параметров: Length (Длина) — 0,2 и Width (Ширина) — 3,5.

308

Глава 8. Анимация сцен

ПРИМЕЧАНИЕ Формой пути может служить не только эллипс, но и прямоугольник, а также линия. Единственное отличие эллипса от этих объектов состоит в том, что позже, при редактировании лофт-объекта, у вас будет возможность применить не только трансформацию масштаба, но и деформацию кручения в местах изменения формы сплайна. В результате на форме не будет видимых изломов.

Чтобы построить надпись по созданным сплайнам пути и сечения, сделайте следующее. 1. Выделите сплайн пути. Перейдите на вкладку Create (Создание) командной панели, щелкните на кнопке Geometry (Геометрия) и в раскрывающемся списке выберите строку Compound Objects (Составные объекты). 2. В свитке Object Type (Тип объекта) щелкните на кнопке Loft (Лофтинговые). В результате в области свитков на командной панели появятся свитки параметров для создания лофт-объектов.

Рис. 8.35. Свиток Surface Parameters (Свойства поверхности) построенного лофт-объекта

3. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Front (Спереди) щелкните на эллипсе для построения формы надписи. 4. В области Mapping (Проекционные координаты) свитка Surface Parameters (Свойства поверхности) установите флажок Apply Mapping (Применить проекционные координаты), а в области Output (Вывод) — переключатель в положение Mesh (Сетка) (рис. 8.35). 5. В свитке Skin Parameters (Параметры поверхности) задайте основные параметры отображения поверхности созданного объекта (рис. 8.36).

Рис. 8.36. Свиток Skin Parameters (Параметры поверхности) настроек лофт-объекта

Проанализируйте полученную поверхность надписи, особенно в том окне проекции, в котором будет создана анимация. В общем случае полученный результат является удовлетворительным для анимации среднего плана, но если вы хотите улучшить форму лофт-объекта, то воспользуйтесь трансформацией масштаба (Scale (Масштабирование)) или трансформацией скручивания (Twist (Скручивание)) из свитка Deformations (Деформации) настроек лофт-объекта на вкладке Modify (Изменение) командной панели. То, что получилось у меня после небольшого редактирования формы текста, представлено на рис. 8.37.

309

Анимация рукописного шрифта

Рис. 8.37. Текст, полученный при использовании составных объектов

Создадим материал для шрифта. Как я уже говорил ранее, это будет материал с анимированной прозрачностью, которая позволит создать эффект написания (последовательного появления букв). Для этого сделайте следующее. 1.

Откройте окно Material Editor (Редактор материалов), выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов).

2.

Выберите свободную ячейку с образцом материала. В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) для параметра Diffuse (Рассеивание) выберите фиолетовый цвет. Он будет определять цвет чернил. В области Self-Illumination (Самосвечение) задайте параметру Color (Цвет) значение 100, чтобы при визуализации цвет текста на всей его поверхности оставался постоянным (рис. 8.38).

3.

Щелкните на кнопке None (Отсутствует) рядом с Opacity (Непрозрачность) в свитке Maps (Карты текстур).

4.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Gradient Ramp (Усовершенствованный градиент).

5.

Настройте параметры карты Gradient Ramp (Усовершенствованный градиент), как показано на рис. 8.39.

Рис. 8.38. Свиток Blinn Basic Parameters (Базовые параметры раскраски по Блинну) с настройками материала чернил

Рассмотрим некоторые выполненные настройки. Использование для создания градиентного перехода двух цветов (белого и черного) обусловлено тем, что белый цвет в канале Opacity (Непрозрачность) соответствует непрозрачности объекта, а черный — полной прозрачности. Причем положение флага для черного цвета в настоящее время не имеет принципиального значения. Тип градиента — Linear (Прямой), интерполяция — Solid (Постоянная), таким образом, прозрачность будет изменяться линейно по мере прохождения по объекту от начала до конца.

310

Глава 8. Анимация сцен

Параметр Blur (Размытие) должен иметь минимальное значение, для того чтобы граница непрозрачности была как можно более четкой.

Рис. 8.39. Настройки карты Gradient Ramp (Усовершенствованный градиент)

После того как будут выполнены все настройки, можно анимировать параметр изменения положения маркера цвета. Для этого достаточно включить запись ключей анимации (нажать кнопку Auto Key (Автоключ)) и передвинуть ползунок таймера анимации в крайнее правое положение. После этого в окне Material/Map Browser (Окно выбора материалов и карт) передвиньте средний флаг (черного цвета) в конец шкалы градиента, что вызовет создание для этого параметра ключа анимации. В результате в строке треков появятся два ключа анимации: в начальном и последнем кадрах. Если сейчас передвинуть ползунок таймера анимации вперед или назад, то и шкала градиента в свитке Gradient Ramp Parameters (Параметры усовершенствованного градиента) должна меняться соответственно. Выключите запись кадров (еще раз щелкните на кнопке Auto Key (Автоключ)). ВНИМАНИЕ Если при изменении положения ползунка таймера анимации не происходит смещение среднего маркера градиента, то необходимо повторить создание ключей анимации сначала.

Теперь нужно подкорректировать ключи анимации. Для этого откройте окно редактирования кривых, выполнив команду Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых). В левой части окна найдите анимированную текстуру (ей в данном случае соответствует строка Gradient Ramp (Усовершенствованный градиент)) и параметр Position (Граница) для третьего флага градиента (рис. 8.40).

Анимация рукописного шрифта

311

Рис. 8.40. Окно Track View — Curve Editor (Просмотр треков — редактирование кривых)

В правой части окна выделите первый ключ анимации, введите в выделенное поле значение 0 и щелкните на кнопке Set Tangents to Linear (Установить линейное управление для касательных) . Затем выделите второй ключ анимации, задайте для него значение, равное 100, и также установите линейное управление для касательных. Таким образом, положение флага черного цвета будет равномерно изменяться в диапазоне от 0 до 100. После настроек анимации необходимо присвоить материал тексту, для чего достаточно перетащить мышью материал из окна редактора на объект в окне проекции. Если сейчас выполнить тестовую визуализацию в 50 кадре анимации, то в результате половина текста окажется невидимой (рис. 8.41).

Рис. 8.41. Результат визуализации текста в 50 кадре анимации

Казалось бы, с анимацией текста можно заканчивать, но осталась еще одна досадная деталь — отображение геометрии между словами. Оказывается, эту неприятность можно легко устранить: достаточно к лофт-объекту применить модификатор редактирования геометрии Edit Mesh (Редактирование поверхности) и, выделив на уровне редактирования полигонов все ненужные участки поверхности, удалить их (рис. 8.42). При этом текстурные координаты объекта сохранятся и, следовательно, анимация нисколько не пострадает.

312

Глава 8. Анимация сцен

Рис. 8.42. Текст после редактирования поверхности

После анимации появляющегося текста можно переходить к анимации ручки. Прежде всего, необходимо отобразить спрятанные ранее ручку и сплайн текста. Для этого перейдите на вкладку Display (Отображение) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В открывшемся окне выберите нужные объекты и нажмите кнопку Unhide (Отобразить). В качестве пути, по которому будет двигаться перо, можно было бы использовать созданный ранее сплайн для лофт-объекта (шрифта). Но поскольку я собираюсь немного подкорректировать вершины сплайна в промежутках между словами и для большей реалистичности изменить сплайн так, чтобы получить движение пера по направлению к чернильнице и обратно к тексту, то необходимо создать копию этого сплайна. ВНИМАНИЕ Копирование сплайна на данном этапе является важным потому, что ранее созданный сплайн для лофт-объекта (текста) — это образец (Instance) и любые изменения его формы отобразятся на внешнем виде текста, созданного с помощью лофтинга.

Прежде всего необходимо выделить вершины сплайна, находящиеся на концах сегментов между словами, и, щелкнув на выделении правой кнопкой мыши, выбрать из контекстного меню тип Bezier Corner (Безье угловая) (рис. 8.43). Это необходимо для того, чтобы, редактируя промежуточные сегменты, не нарушить форму сплайна, описывающего буквы. В окне проекции Front (Спереди) переместите манипуляторы выделенных вершин (только с внутренней стороны сегментов, расположенных между словами) вверх так, чтобы впоследствии перо, проходя по сплайну, в этих местах отрывалось от бумаги (рис. 8.44). Чтобы улучшить анимацию, можно дополнительно отредактировать сплайн на отрезке между буквами o и m, чтобы перо ручки окунулось в чернильницу, а затем продолжило писать. Но в этом случае длина сплайна существенно изменится, что повлияет на скорость движения ручки вдоль текста.

Анимация рукописного шрифта

313

Рис. 8.43. Выделенные вершины сплайна, расположенные на границах между словами после присвоения им типа Bezier Corner (Безье угловая)

Рис. 8.44. Форма сплайна с выделенными управляющими вершинами в окне проекции Perspective (Перспектива) (вверху) и в окне проекции Front (Спереди) (внизу)

В общем случае для того, чтобы движения ручки и появление текста были синхронными, необходимо, чтобы сплайн, по которому строится текст (лофт-объект), и путь, по которому проходит перо ручки, были одинаковой длины. Небольшое изменение высоты сегментов сплайна в местах между словами (при малом расстоянии между ними) критически не влияет на увеличение длины и в данном примере не

314

Глава 8. Анимация сцен

рассматривается. Однако если вы хотите, чтобы движение пера и появление текста идеально совпадали, необходимо изменить анимацию прозрачности материала на всех отрезках между словами. При изменении длины сплайна нужно компенсировать анимацию отображения текста. Для этого необходимо в начале и в конце участка, на котором будет происходить движение ручки к чернильнице и обратно, установить дополнительные ключи анимации. Отследить положение центральной точки воспроизведения анимации будет проще всего после создания вспомогательного объекта и анимации его по сплайну пути. Чтобы создать такую анимацию, сделайте следующее. 1.

Постройте вспомогательный объект, выполнив команду CreateHelpersDummy (СозданиеВспомогательные объектыПустышка). Задайте этому объекту размер, равный половине толщины текста (так будет легче отследить траекторию движения).

2.

Создайте анимацию движения объекта-пустышки (в нашем случае Dummy01) по сплайну пути. Для этого выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграничение по пути) и в любом из окон проекций выберите в качестве пути отредактированный сплайн. В результате этих действий вспомогательный объект переместится в начало сплайна, а при перемещении ползунка таймера анимации будет двигаться вдоль сплайна пути.

3.

Активизируйте окно перспективной проекции и запустите воспроизведение анимации, щелкнув на кнопке Play Animation (Воспроизвести анимацию) .

Обратите внимание на то, что при воспроизведении анимации вспомогательный объект очень быстро проходит по всему пути. Для написания пером это слишком большая скорость движения — необходимо ее замедлить. Это можно сделать, увеличив время воспроизведения анимации следующим образом. 1. Нажмите кнопку Time Configuration (Конфигурация времени) или щелкните правой кнопкой мыши на любой из кнопок управления анимацией. 2. В окне Time Configuration (Конфигурация времени) нажмите кнопку Re-scale Time (Сменить масштаб времени). 3. В области New (Новое) открывшегося окна Re-scale Time (Сменить масштаб времени) задайте параметру End Time (Время окончания) значение, равное 600 (рис. 8.45). Рис. 8.45. Окно Re-scale Time (Сменить масштаб времени)

Запустите воспроизведение анимации в окне проекции Respective (Перспектива) и посмотрите, устроит ли вас время воспроизведения.

Анимация рукописного шрифта

315

ПРИМЕЧАНИЕ Если вы создавали собственный текст, то, возможно, вам придется изменять время воспроизведения анимации соответственно длине надписи.

После того как результат по времени воспроизведения анимации покажется вам удовлетворительным, передвиньте ползунок таймера анимации так, чтобы вспомогательный объект сместился на начало сегмента между буквами o и m (в моем случае это 399 кадр анимации) (рис. 8.46).

Рис. 8.46. Положение вспомогательного объекта Dummy01 в 399 кадре анимации

Откройте окно редактирования графов для карты Gradient Ramp (Усовершенствованный градиент), которую мы построили ранее, выполнив команду Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых) главного меню. В левой части окна выберите строку с анимацией положения третьего флага градиента. Затем в окне редактирования кривых в месте положения текущего кадра анимации, обозначенного двумя белыми вертикальными линиями, создайте ключ. Для этого нужно нажать кнопку Add Keys (Добавить ключи) и щелкнуть кнопкой мыши на кривой в том месте, где должен быть создан ключ (рис. 8.47). Передвиньте ползунок анимации так, чтобы вспомогательный объект переместился к началу буквы m (в моем случае это 428 кадр), и снова создайте ключ анимации для третьего флага карты Gradient Ramp (Усовершенствованный градиент), щелкнув на кривой анимации. Таким образом, мы создали два ключа анимации для карты Gradient Ramp (Усовершенствованный градиент), которые позволят нам скорректировать синхронное отображение текста и перемещение ручки по этому тексту. Сейчас можно вернуться к редактированию сплайна пути и добавить к сегменту между буквами o и m три новые точки (команда Refine (Уточнить)) с таким расчетом, чтобы перо, проходя по этому сплайну, попадало в чернильницу (рис. 8.48).

316

Глава 8. Анимация сцен

Рис. 8.47. Окно Track View — Curve Editor (Просмотр треков — редактор кривых) с ключом в 399 кадре анимации

Рис. 8.48. Новая форма сегмента между буквами о и m

Если сейчас, передвигая ползунок таймера, обратить внимание на то, каким кадрам анимации соответствует положение вспомогательного объекта Dummy01 в начале и в конце редактируемого сплайна, то можно заметить, что они больше не соотносятся с ключами в 399 и 428 кадрах. Увеличив длину сплайна, мы изменили время прохождения контрольных точек. Исправить это можно, отредактировав созданные ключи анимации для градиента. Но прежде будет не лишним изменить скорость прохождения вспомогательного объекта на отрезке к чернильнице и обратно, так как написание текста занимает больше времени, чем перемещение ручки

Анимация рукописного шрифта

317

в пространстве, а движение вспомогательного объекта (соответственно, и ручки) сейчас постоянно. Создадим два новых ключа анимации для вспомогательного объекта Dummy01. 1.

Передвигая ползунок таймера, перейдите в кадр, где Dummy01 становится в начало движения к чернильнице (у меня — 279).

2.

Откройте окно редактирования графов и выберите в левой части окна строку с анимацией объекта Dummy01. В области редактирования кривых в месте положения текущего кадра анимации (кадр 279), обозначенного двумя белыми вертикальными линиями, создайте ключ.

3.

Передвиньте ползунок таймера анимации к тому месту, в котором начинается сплайн буквы m (в моем случае это 480 кадр) и повторите процедуру создания ключа.

4.

В строке треков (в нижней части окна 3ds Max) переместите вновь созданные ключи с 279 кадра на 390 и с 480 на 450 кадр (рис. 8.49). Таким образом мы уменьшим время на прохождение этого участка.

Рис. 8.49. Дополнительные ключи анимации, созданные для объекта Dummy01

Теперь нужно синхронизировать отображение текста с измененным движением объекта Dummy01 и можно приступать к анимации ручки. Это можно сделать, снова воспользовавшись редактором кривых. На сей раз необходимо передвинуть ключи для третьего флага карты Gradient Ramp (Усовершенствованный градиент) в положение 390 и 450 кадров (рис. 8.50).

ПРИМЕЧАНИЕ При желании вы можете выполнить аналогичное создание и редактирование ключей анимации для всех участков сплайна, не относящихся к написанию текста (например, начальное положение ручки в чернильнице).

318

Глава 8. Анимация сцен

Рис. 8.50. Окно Track View — Curve Editor (Просмотр треков — редактирование кривых) после редактирования ключей анимации

Для создания более реалистичных движений ручки понадобится еще один сплайн, который будет управлять перемещением в пространстве второго (верхнего) конца ручки. Сделать такой сплайн совсем несложно: достаточно зеркально отобразить сплайн, по которому проходит перо, увеличить сплайн в два раза по оси Y и разместить его немного выше ручки (рис. 8.51).

Рис. 8.51. Форма и положение сплайна, предназначенного для управления анимацией верхнего конца ручки

Анимация рукописного шрифта

319

ВНИМАНИЕ Я не только зеркально отобразил сплайн для придания более естественного движения ручке, но и откорректировал его форму в месте движения по направлению к чернильнице.

Создадим второй вспомогательный объект Dummy02 для верхнего сплайна. Его, как и Dummy01, необходимо анимировать по пути с помощью команды Animation ConstraintsPath Constraint (АнимацияОграниченияОграничение по пути), а в качестве пути выбрать верхний сплайн. Если сейчас просмотреть анимацию, передвигая ползунок таймера анимации, то можно заметить, что движение по сплайнам первого и второго вспомогательных объектов не совпадает. Это вызвано тем, что для Dummy01 мы ранее устанавливали на пути следования ключи анимации и редактировали их положение. Сейчас то же самое необходимо сделать и для Dummy02 с помощью редактора кривых. Это легко выполнить, если в местах расположения ключей Dummy01 создать ключи для Dummy02 и переместить их в вертикальной плоскости, контролируя изменение положения вспомогательного объекта в окне проекции Top (Cверху). Продолжим создание анимации. Создайте еще один вспомогательный объект Dummy03 размером в 2–3 раза больше первого (Dummy01) и разместите в пространстве так, чтобы опорные точки его и вспомогательного объекта Dummy01 совпадали (рис. 8.52), для чего можно воспользоваться инструментом Align (Выравнивание) , расположенным на главной панели инструментов.

Рис. 8.52. Взаимное положение вспомогательных объектов Dummy01 и Dummy03 в окне проекции Pespective (Перспектива)

320

Глава 8. Анимация сцен

Привяжите вспомогательный объект Dummy03 к первому вспомогательному объекту Dummy01. Для этого выделите Dummy03, нажмите кнопку Select and Link (Выделить и связать) и укажите в окне проекции на Dummy01. Сразу же после привязки проверьте анимацию, передвинув ползунок таймера. Если все было выполнено правильно, оба вспомогательных объекта будут передвигаться по пути синхронно. Третий вспомогательный объект мы создали из-за необходимости позиционирования верхней части ручки на объекте Dummy02, расположенном на верхнем сплайне. В этом должен помочь контроллер LookAt Constraint (Ограничение по линии взгляда). Для этого выполните следующие действия. 1. Расположите ручку в первом кадре анимации так, чтобы перо ручки находилось в середине вспомогательного объекта Dummy03 (иначе говоря, в начале текста). 2. С помощью Select and Link (Выделить и связать) привяжите ручку к объекту Dummy03. 3. Проверьте анимацию. Ручка должна двигаться по сплайну, находясь в вертикальном положении. 4. Выделите вспомогательный объект Dummy03. 5. Выполните команду меню AnimationConstraintsLook At Constraint (АнимацияОграниченияОграничение по линии взгляда) и укажите в окне проекции объект Dummy02, на который будет направлен взгляд.

Рис. 8.53. Свиток LookAt Constraint (Ограничение по линии взгляда) вспомогательного объекта Dummy03

6. В свитке LookAt Constraint (Ограничение по линии взгляда) на командной панели установите ось направления взгляда Z (рис. 8.53), в результате чего ручка повернется в направлении верхнего вспомогательного объекта Dummy02. На этом процесс создания анимации можно считать законченным. Осталось только выполнить визуализацию и сохранить результат в файл.

ПРИМЕЧАНИЕ Файл урока с настройками ключей анимации и отредактированными сплайнами animated_text_end.max можно найти на прилагаемом DVD в папке Examples\Глава 08\ Text. В папке Video\Глава 08 находится готовая анимация animated_text.avi.

Использование модификатора Cloth (Ткань) для симуляции поведения тканей Рассмотрим работу с модификатором Cloth (Ткань). В отличие от одноименного оператора модуля reactor этот модификатор в первую очередь призван облегчить создание и анимацию одежды моделируемых персонажей. Данный модификатор имеет достаточно широкие возможности, которые можно довольно долго описы-

Использование модификатора Cloth (Ткань) для симуляции поведения тканей

321

вать, я же хочу показать, как с помощью модификатора Cloth (Ткань) можно легко и просто создавать объекты, имитирующие поведение ткани. Мы опишем, как создать два объекта: скатерть и развевающийся флаг. Для создания модели скатерти нам понадобится простая сцена, состоящая из двух объектов: столешницы и скатерти. Для построения первого объекта воспользуйтесь параметрическим объектом Box (Параллелепипед) (CreateStandard PrimitivesBox (СоздатьПростые примитивыПараллелепипед)). В качестве второго объекта будет использован объект формы Rectangle (Прямоугольник) (CreateShapesRectangle (СозданиеФормыПрямоугольник)). Создайте оба объекта в окне проекции Top (Сверху). Расположите прямоугольник относительно объекта столешницы сверху и центрируйте по осям X и Y (рис. 8.54).

Рис. 8.54. Взаимное расположение объектов в сцене

ПРИМЕЧАНИЕ Для создания ткани можно также воспользоваться параметрическим объектом Plane (Плоскость) с достаточным количеством сегментов по длине и ширине (допустим, 50), однако применение сплайнов позволяет получить дополнительные возможности: создание объектов произвольной формы (например, скатерть с фигурными краями), внутренние швы и разрезы. Особенно это актуально при создании одежды.

На основе объекта Rectangle (Прямоугольник) необходимо создать поверхность. Самый легкий способ — преобразовать прямоугольник в полигональную поверхность. Однако при этом мы потеряем дополнительные возможности объекта формы. Лучшим выбором в данном случае будет использование модификатора Garment Maker (Моделирование одежды). Чтобы присвоить этот модификатор, выделите в одном из окон проекций прямоугольник и выполните команду главного меню ModifiersClothGarment Maker (МодификаторыТканьМоделирование одежды). Обратите внимание, что два из четырех углов стали закругленными. Избавиться

322

Глава 8. Анимация сцен

от этого можно, выполнив разбиение вершин этих углов, что приведет к созданию самостоятельных сплайнов на уровне подобъектов формы. Для этого перейдите в стеке модификаторов на нижний уровень (то есть выделите в стеке строку Rectangle (Прямоугольник)), щелкните на раскрывающемся списке Modifier List (Список модификаторов) и выберите из списка модификатор Edit Spline (Редактирование сплайна) (рис. 8.55). Для редактирования прямоугольника перейдите на уровень подобъектов Vertex (Вершина), для чего щелкните в настройках модификатора Edit Spline (Редактирование сплайна) на кнопке Vertex (Вершина) в свитке Selection (Выделение) или нажмите горячую клавишу 1. Выделите все четыре вершины прямоугольника, перейдите к свитку Geometry (Геометрия) и щелкните на кнопке Break (Разбить). После этого выйдите из режима редактирования вершин, повторно щелкнув на кнопке Vertex (Вершина), и вернитесь к модификатору Garment Maker (Моделирование одежды). Рис. 8.55. Положение модификатора Edit Spline (Редактирование сплайна) в стеке

Для продолжения работы необходимо обновить созданную модификатором поверхность и увеличить ее топологию. Для этого в свитке Main Parameters (Основные параметры) настроек модификатора Garment Maker (Моделирование одежды) щелкните на кнопке Mesh It! (Рассчитать сетку) и увеличьте значение параметра Density (Плотность) до 2. ВНИМАНИЕ Увеличение количества треугольников, образующих поверхность объекта, позволит создать более естественное поведение ткани. Однако на компьютерах с низкой производительностью это может вызвать длительные расчеты динамики ткани и даже зависания. По данной причине на таких компьютерах лучше не задавать параметру Density (Плотность) значение больше 1.

В результате все углы станут ровными, а плотность сетки повысится, что позволит получить сглаженные складки поверхности ткани. На рис. 8.56, слева показан фрагмент прямоугольника с примененным модификатором Garment Maker (Моделирование одежды) до редактирования, а на рис. 8.56, справа — после. Применим к прямоугольнику модификатор Cloth (Ткань), выполнив команду главного меню ModifiersClothCloth (МодификаторыТканьТкань). Для настройки поведения ткани выполните следующие действия. 1.

В свитке Object (Объект) настроек модификатора Cloth (Ткань) щелкните на кнопке Object Properties (Свойства объекта).

2.

В появившемся окне Object Properties (Свойства объекта) выберите из списка доступных объектов прямоугольник (объект с именем Rectangle01) и установите переключатель в положение Cloth (Ткань).

Использование модификатора Cloth (Ткань) для симуляции поведения тканей

323

Рис. 8.56. Фрагмент прямоугольника до редактирования (слева) и после него (справа)

3.

В области Cloth Properties (Свойства ткани) из раскрывающегося списка Presets (Предустановки) выберите строку Default (Исходный) (рис. 8.57).

4.

Чтобы использовать в расчетах поведения ткани поверхность стола (в нашем случае — это построенный ранее параллелепипед), в окне Object Properties (Свойства объекта) щелкните на кнопке Add Objects (Добавить объекты) и в появившемся окне Add Objects to Cloth Simulation (Добавить объекты к расчетам динамики ткани) выберите объект Box01 и нажмите кнопку Add (Добавить).

5.

Для объекта Box01 установите переключатель в положение Collision Object (Объект столкновения) и оставьте значения, принятые по умолчанию (рис. 8.58).

6.

Щелкните на кнопке OK для закрытия окна Object Properties (Свойства объекта).

Все готово к расчетам динамики ткани. Чтобы запустить эти расчеты, необходимо в области Simulation (Моделирование) свитка Object (Объект) щелкнуть на кнопке Simulate (Моделирование) или на кнопке Simulate Local (Локальное моделирование) (если не планируете создавать анимацию поведения ткани во времени). ПРИМЕЧАНИЕ После запуска расчета динамики вы можете в любое время остановить его и выполнить дополнительную настройку свойств объектов, например изменить плотность сетки модификатора Garment Maker (Моделирование одежды). В этом случае необходимо вернуть ползунок таймера анимации на первый кадр (если вы не использовали локальные расчеты динамики) и щелкнуть на кнопке Erase Simulation (Очистить моделирование) в свитке Object (Объект).

324

Глава 8. Анимация сцен

Рис. 8.57. Настройка свойств объекта Rectangle01

Рис. 8.58. Настройка свойств объекта Box01

На рис. 8.59 показан результат расчета динамики ткани.

Рис. 8.59. Результат расчетов модификатора Cloth (Ткань)

Использование модификатора Cloth (Ткань) для симуляции поведения тканей

325

ПРИМЕЧАНИЕ В папке Examples\Глава 08\Cloth, которую вы найдете на прилагаемом к книге DVD, находится файл table-cloth.max, который можно загрузить для просмотра и анализа выполненной анимации.

Рассмотрим еще один вариант использования модификатора Cloth (Ткань): создадим модель развевающегося флага. В этом нам поможет замечательная особенность данного модификатора, позволяющая взаимодействовать со стандартными объектами категории Force (Сила). Как всегда, начнем с построения объектов. Для имитации флага нам понадобятся два объекта: Plane (Плоскость), имитирующий полотно флага, и Wind (Ветер), который будет удерживать флаг в горизонтальном положении (по умолчанию на объекты, к которым применен модификатор Cloth (Ткань), действует сила тяжести). Для построения плоскости переключитесь в окно проекции Front (Спереди) и выполните команду главного меню CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость). В свитке Parameters (Параметры) построенного объекта установите желаемые размеры флага и увеличьте значения параметров Length Segs (Количество сегментов по длине) и Width Segs (Количество сегментов по ширине) до 20–25. Это позволит получить более естественную деформацию ткани. Для построения объекта, имитирующего ветер, необходимо выполнить команду главного меню CreateSpaceWarpsForcesWind (СозданиеПространственные деформацииСилыВетер) и в окне проекции Top (Сверху) построить значок ветра, развернув его по направлению к флагу (рис. 8.60).

Рис. 8.60. Взаимное расположение плоскости и значка ветра

326

Глава 8. Анимация сцен

Назначьте плоскости модификатор ткани. Для этого в одном из окон проекций выделите плоскость и выполните команду главного меню ModifiersClothCloth (МодификаторыТканьТкань). Настройте модификатор следующим образом. 1. Перейдите на уровень редактирования подобъектов модификатора Cloth (Ткань), для чего щелкните на плюсике, расположенном слева от имени модификатора в стеке, и выделите строку Group (Группа). 2. Выделите слева верхнюю и нижнюю боковые вершины и щелкните на кнопке Make Group (Создать группу) в свитке Group (Группа). В результате откроется окно Make Group (Создать группу), в котором необходимо указать имя группы. Таким образом мы создадим группу из двух точек, которые будут крепиться к древку флага и не будут участвовать в расчетах динамики. 3. После создания группы щелкните на кнопке Drag (Помеха) в свитке Group (Группа). При этом созданная группа должна быть активной (рис. 8.61). 4. Выйдите из режима редактирования подобъектов, для чего щелкните в стеке модификаторов на строке Cloth (Ткань). 5. В свитке Object (Объект) щелкните на кнопке Cloth Forces (Силы, воздействующие на ткань).

Рис. 8.61. Свиток Group (Группа) с созданной группой из двух точек

6. В левой части открывшегося окна Forces (Силы) щелкните на строке Wind01 и нажмите кнопку >, в результате чего Wind01 переместится в список Forces in Simulation (Симуляция сил). 7. Вернитесь к свитку Object (Объект) настроек модификатора Cloth (Ткань) и щелкните на кнопке Object Properties (Свойства объекта).

8.

В открывшемся окне Object Properties (Свойства объекта) выделите строку Plane01 и установите переключатель в положение Cloth (Ткань).

9.

Из раскрывающегося списка в области Cloth Properties (Свойства ткани) выберите строку Silk (Шелк). Таким образом, объекту Plane (Плоскость) будут присвоены свойства шелковой ткани (рис. 8.62).

10.

Подтвердите выполненные изменения щелчком на кнопке OK.

Все предварительные настройки произведены, осталось только увеличить силу ветра и запустить выполнение расчетов динамики ткани. Для этого выделите в одном из окон проекций значок ветра и в свитке Parameters (Параметры) настроек данного объекта увеличьте значение параметра Strength (Мощность) до 5. Чтобы запустить расчет динамики, вернитесь к модификатору Cloth (Ткань) и в свитке Object (Объект) щелкните на кнопке Simulate (Моделирование). На рис. 8.63 представлен флаг, полученный с помощью модификатора Cloth (Ткань).

Использование модификатора Cloth (Ткань) для симуляции поведения тканей

Рис. 8.62. Свойства ткани, настроенные для объекта Plane01

Рис. 8.63. Флаг, полученный с помощью модификатора Cloth (Ткань)

327

328

Глава 8. Анимация сцен

Мы рассмотрели только малую часть того, что можно сделать с помощью модификатора Cloth (Ткань). Симуляция реального поведения ткани требует более детальных настроек с большим количеством экспериментов. В качестве самостоятельного задания вы можете попробовать выполнить расчеты с другими видами ткани и даже составить и сохранить свои собственные настройки для их последующего применения. ПРИМЕЧАНИЕ В папке Examples\Глава 08\Cloth прилагаемого DVD находится файл flag.max, который можно загрузить для просмотра и анализа выполненной анимации.

Анимация движения танковой гусеницы Если вы занимаетесь моделированием и анимацией в программе 3ds Max, то, скорее всего, уже хотя бы раз создавали колесную и гусеничную технику. Выполняя модели такого уровня сложности, всегда хочется добавить в них какую-нибудь «изюминку». Таким дополнением может послужить анимация движения. В данном разделе рассмотрим один из способов создания и анимации танковой гусеницы. Для выполнения упражнения необходимо загрузить начальную сцену track_ start.max с объектами, которые нам понадобятся в работе (рис. 8.64). Она находится на прилагаемом к книге DVD в папке Examples\Глава 08\Track.

Рис. 8.64. Окно проекции Perspective (Перспектива) после загрузки стартовой сцены

Сначала необходимо построить последовательность гусеничных звеньев. Это можно сделать двумя способами: 

создать длинную цепочку из повторяющихся элементов, а затем деформировать ее по сплайну;

Анимация движения танковой гусеницы 

329

используя сплайн, анимировать одно звено, а затем создать копии этого звена со смещением: один кадр анимации — одно звено.

Воспользуемся вторым способом для создания статической геометрии, а затем создадим и анимируем звенья танковой гусеницы с помощью сценария. Сначала необходимо вычислить количество копий звена, которые нам понадобятся, а затем анимировать звено гусеницы по сплайну пути. Для этого выполните следующее. 1.

В окне проекции Top (Сверху) увеличьте масштаб звена гусеницы так, чтобы оно заняло максимально возможную площадь (так будет проще выполнять измерения и они будут точнее).

2.

Измерьте поперечную ширину звена, исключая размер выступающих шипов (реальный размер, который будут иметь звенья, составленные в цепочку). Для этого воспользуйтесь командой главного меню ToolsMeasure Distance (ИнструментыИзмерить расстояние). После выполнения команды щелкните на начальной и конечной точках замеряемого участка и на строке состояния. В результате в поле ввода макрокоманды появится необходимая цифра. В моем случае это 3,805 (рис. 8.65).

Рис. 8.65. Строка состояния с результатами замера

3.

Узнайте длину сплайна, который является формой пути для гусеницы. Для этого достаточно выделить сам сплайн и воспользоваться утилитой Measure (Линейка), находящейся на вкладке Utilities (Утилиты) командной панели. В области Shapes (Формы) будет указана длина сплайна (рис. 8.66).

4.

Разделите длину сплайна на ширину звена, и вы получите необходимое количество копий, а также кадров анимации. Я округлил значение, и в результате у меня получилось 90.

5.

Измените количество кадров анимации до 90. Для этого нажмите кнопку Time Configuration (Настройка временных интервалов) в правом нижнем углу окна 3ds Max. В открывшемся окне задайте параметру End Time (Время окончания) области Animation (Анимация) значение 90 (рис. 8.67).

Для создания анимации сделайте следующее. 1.

В одном из окон проекций выделите звено.

2.

Выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграничение по пути) и укажите на сплайн track_path. В результате он будет использован в качестве формы пути.

3.

В свитке Path Parameters (Параметры пути) настроек контроллера установите флажок Follow (Следовать), чтобы объект поворачивался вместе с поворотом кривой. Установите также флажок Allow Upside Down (Разрешить переворачиваться) (по умолчанию контроллер придерживается одной локальной оси, а у нас замкнутая кривая), выберите ось Y и установите флажок Flip (Обратить) (рис. 8.68).

330

Рис. 8.66. Настройки утилиты Measure (Линейка)

4.

Глава 8. Анимация сцен

Рис. 8.67. Окно Time Configuration (Настройка временных интервалов) с измененным количеством кадров анимации

Рис. 8.68. Свиток Path Parameters (Параметры пути) настроек контроллера

Выделите звено и создайте его копию. Для этого воспользуйтесь командой главного меню ToolsSnapshot (ИнструментыСнимок). В открывшемся одноименном окне установите переключатель в положение Range (Диапазон) и задайте следующие значения параметрам: From (От) — 0, To (До) — 89 и Copies (Копий) — 90. В качестве метода клонирования выберите Instance (Образец) (рис. 8.69). ПРИМЕЧАНИЕ Значение параметра To (До) равно 89, потому что, выполнив полный круг по замкнутой форме, объект вернется в начальное положение.

Результат клонирования одного звена представлен на рис. 8.70. Рис. 8.69. Настройки создаваемых копий в окне Snapshot (Снимок)

Таким же образом строятся и другие статические последовательности объектов, например элементы ограждения, столбы, кнопки и даже ресницы.

Анимация движения танковой гусеницы

331

Рис. 8.70. Копии звеньев, созданные с помощью инструмента Snapshot (Снимок)

Итак, приступим к анимации. Выполнить вручную анимацию такого количества объектов достаточно сложно, даже если речь идет о простом повторении нескольких операций. Все было бы просто, если бы нам пришлось настроить анимацию двух или даже десяти звеньев, но у нас их девяносто. Придется обратиться к макросценарию, который позволит автоматизировать этот процесс. Звучит пугающе, но попробуем все сложности свести к минимуму. Сохраните и закройте выполненную сцену. Затем загрузите с прилагаемого DVD начальный файл данного упражнения track_start.max из папки Examples\ Глава 08\Track. Программа 3ds Max обладает возможностью отслеживать и записывать почти все команды и действия, выполняемые в процессе работы. Делается это с помощью модуля MAXScript Listener (Интерпретатор MAXScript). Его окно можно открыть, выполнив команду главного меню MAXScriptMAXScript Listener (MAXScriptИнтерпретатор MAXScript) или нажав клавишу F11. Мы используем его в качестве основного источника списка будущих макрокоманд. Но сначала рассмотрим кратко, что нужно сделать для создания анимированной гусеницы. В первую очередь нам понадобится анимировать имеющееся звено с помощью контроллера Path Constraint (Ограничение по пути). Затем, используя единственный анимированный параметр этого контроллера (процент пути, пройденный звеном гусеницы в пределах анимированного участка), привяжем к нему созданные копии этого объекта, выполнив их относительное смещение. Таким образом, мы получим один родительский объект, который позволит управлять скоростью движения всей гусеницы путем изменения времени прохождения этим объектом полного цикла,

332

Глава 8. Анимация сцен

иными словами, изменяя время, за которое одно звено гусеницы пройдет полный круг. Начнем с настройки записи макрокоманд. Откройте окно MAXScript Listener (Интерпретатор MAXScript), для чего используйте либо одноименную команду главного меню MAXScript, либо клавишу F11. В появившемся окне выполните команду меню MacroRecorderEnable (Запись макросаВключить) для включения записи всех производимых команд (рис. 8.71).

Рис. 8.71. Настройки меню MacroRecorder (Запись макроса)

В результате окно интерпретатора разделится на две части: в верхней будут выводиться макрокоманды, соответствующие выполняемым действиям, а в нижней — отладочная информация. Одновременно нижнее окно является и полем для ввода макрокоманд. Посмотрим, как это все работает. Выделите в окне проекции Top (Сверху) звено гусеницы и копируйте его через буфер обмена (или любым доступным способом) с помощью сочетаний клавиш копирования Ctrl+C и вставки Ctrl+V. В результате в верхней части окна появится запись, состоящая из четырех строк. Для исполнения этого кода откройте окно редактора макрокоманд, выполнив команду главного меню MAXScriptNew Script (MAXScriptСоздать макрос). В окне отладчика выделите строки, созданные программой автоматически, и перетащите их в окно редактора. Закомментируйте вторую строку, поставив перед ней два минуса, так как она вызывает окно диалога клонирования объекта и нам не нужна (рис. 8.72). Выполните макрос, воспользовавшись командой меню данного окна ToolsEvaluate All (ИнструментыОценить все) и предварительно удалив построенную ранее копию звена. Проверьте список объектов, вызвав его кнопкой Select by Name (Выделить по имени) , и убедитесь в том, что макрос создал копию объекта track. Итак, вы написали свой первый макрос (если, конечно, не делали этого ранее) и проверили его исполнение. Дополним его необходимыми командами и напишем полный цикл создания и редактирования новых звеньев.

333

Анимация движения танковой гусеницы

Рис. 8.72. Окно редактора макрокоманд

В первую очередь нужно анимировать движение звена по пути и получить эту часть макрокоманды для записи в код. Для этого выполните следующее. 1.

В одном из окон проекций выделите звено (объект track).

2.

Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку Position: Position XYZ (Положение: положение по XYZ) (рис. 8.73).

3.

В этом же свитке щелкните на кнопке Assign Controller (Назначить контроллер) и в появившемся окне Assign Position Controller (Назначить контроллер положения) выберите строку Path Constraint (Ограничение по пути) (рис. 8.74).

4.

В свитке Path Parameters (Параметры пути) щелкните на кнопке Add Path (Добавить путь) и в одном из окон проекций укажите на сплайн пути track_path.

Рис. 8.73. Свиток Assign Controller (Назначить контроллер) настроек объекта track

Рис. 8.74. Окно Assign Position Controller (Назначить контроллер положения)

334 5.

Глава 8. Анимация сцен

В этом же свитке в области Path Options (Параметры пути) установите флажки Follow (Следовать) и Allow Upside Down (Разрешить переворачиваться). В области Axis (Оси) выберите ось Y и установите флажок Flip (Обратить). Как вы видите, настройки такие же, как и для построения статических копий звена (см. рис. 8.68).

После выполнения описанных операций откройте окно MAXScript Listener (Интерпретатор MAXScript). Выделите и переместите в окно редактора макрокоманд пять последних строк, относящихся к выбору и настройке контроллера Path Constraint (Ограничение по пути) (рис. 8.75).

Рис. 8.75. Окно редактора макрокоманд после добавления кода

Если бы мы сейчас запустили на выполнение этот код, то у нас было бы создано еще одно звено, а копии звена с именем track01 был бы присвоен контроллер Path Constraint (Ограничение по пути). Но обратите внимание на то, что когда мы выбирали сплайн пути, интерпретатор не внес соответствующую строку в список выполненных операций. В связи с этим в конец кода необходимо дописать в окне редактора следующую строку: $.pos.controller.path=$track_path. У контроллера Path Constraint (Ограничения по пути) есть один анимируемый параметр — Percent (Проценты), который определяет проценты пройденного объектом пути. Этому параметру автоматически было задано значение нулевого и последнего кадров анимации. Но нам не нужна анимация, устанавливаемая по умолчанию, мы собираемся привязывать все копируемые объекты к одному звену — track. В связи с этим необходимо удалить сгенерированные автоматически ключи анимации. Это можно сделать, добавив в код еще одну строку — deleteKeys $.pos.controller.percent.keys. ПРИМЕЧАНИЕ Знак $ указывает на то, что следом за ним должно идти имя объекта, но так как его нет, то подразумевается выделенный объект сцены.

335

Анимация движения танковой гусеницы

Если сейчас запустить код на исполнение, то мы получим копию объекта track, к которому будет применен контроллер движения вдоль пути track_path, и все ключи анимации будут удалены из контроллера. Далее нужно построить зависимость, при которой созданная копия объекта будет следовать за основным объектом. Для этого необходимо выполнить следующее. 1.

Выделите в одном из окон проекций или выберите из списка скопированный объект track01.

2.

Перейдите к свитку Assign Controller (Назначить контроллер) и щелкните на плюсике, расположенном рядом со строкой Position: Path Constraint (Положение: ограничения по пути), после чего щелкните в открывшемся списке на строке Percent: Linear Float (Проценты: линейное значение с плавающей точкой) (рис. 8.76).

3.

Щелкните на кнопке Assign Controller (Назначить контроллер) и в появившемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите строку Float Script (Сценарий, использующий значения с плавающей точкой).

4.

Щелкните на кнопке OK — откроется окно для ввода сценария. Закройте это окно.

5.

Обратитесь к окну MAXScript Listener (Интерпретатор MAXScript), выделите и переместите в окно редактора макрокоманд последнюю строку кода.

Рис. 8.76. Свиток Assign Controller (Назначить контроллер) настроек объекта track01

То, что мы сейчас сделали, позволило нам записать в окно редактора макрокоманд строку кода, меняющую контроллер, созданный по умолчанию на свой, который можно редактировать с использованием сценария. На рис. 8.77 представлен вид редактора со всеми полученными до настоящего момента командами.

Рис. 8.77. Окно редактора макрокоманд на данном этапе

336

Глава 8. Анимация сцен

Теперь нужно добавить в окно редактора несколько строк, написанных самостоятельно, без помощи окна MAXScript Listener (Интерпретатор MAXScript). 1.

Добавьте первой строкой for i = 1 to 90 do(. Таким образом мы создаем цикл, выполняющий выражение, которое находится внутри круглых скобок, начиная от 1 до 90. Число 90 — это количество копий звена танковой гусеницы (если помните, мы рассчитали их ранее).

2.

Удалите закомментированную вторую строку.

3.

В конце кода допишите следующее выражение: $.pos.controller.percent.controller.script =”at time (currenttime) $track.pos. controller.percent*0.01+0.011*”+i as string. В первой части этого выражения мы обращаемся к контроллеру управления по коду, созданному в предыдущей строке, и присваиваем ему строковое выражение, находящееся в правой части. Это означает следующее. В текущий момент времени (at time (currenttime)) контроллеру выделенного объекта, управляющему процентами ($.pos.controller.percent.controller.script), присваиваем значение процентов контроллера объекта track ($track.pos.controller.percent), деленное на 100 (так как на самом деле значение процентов считается не от 0 до 100, а от 0 до 1, то есть используем выражение *0.01), и задаем смещение на одно звено (общие проценты пути, деленные на количество звеньев: 1/90=0.011). Затем это выражение умножаем на порядковый номер (он же номер кадра), который в первой строке присваивается переменной i. Но так как код записывается в виде строковой переменной, числовое значение необходимо вынести за кавычки и обозначить как строковую переменную (i as string), оставив в кавычках знак умножения. Умножение на число i позволит каждому новому звену смещаться на соответствующую величину.

4.

5.

И наконец, две последние строки кода будут указывать на то, что вся анимация до первого ключевого кадра и после последнего будет повторяться, то есть станет непрерывной, вне зависимости от положения ключевых кадров на шкале анимации. Добавьте эти строки: •

setBeforeORT $.pos.controller.percent.controller #cycle



setAfterORT $.pos.controller.percent.controller #cycle

Завершает код закрывающая круглая скобка (рис. 8.78).

ПРИМЕЧАНИЕ На DVD в папке Examples\Глава 08\Track находится файл trackScript.ms. Это созданный нами сценарий. Его можно загрузить в окно редактора макрокоманд и выполнить.

Код готов, но, прежде чем запускать его, необходимо выполнить некоторую подготовительную работу. Выделите объект track и переместите правый ключ анимации объекта в 400 кадр анимации или дальше. Чем дальше расположить этот ключ, тем медленнее будет двигаться гусеница танка, причем ее движение можно ускорить, переместив этот же ключ к началу временного диапазона.

Анимация движения танковой гусеницы

337

Рис. 8.78. Окончательный код в окне редактора макрокоманд

ВНИМАНИЕ Минимальное значение скорости нужно установить сразу, так как в дальнейшем скорость можно будет увеличить.

Для этого задайте общее количество кадров анимации равным не менее 400. Для этого откройте окно Time Configuration (Настройка временных интервалов) и в поле End Time (Время окончания) введите значение 400. После этого в одном из окон проекций выделите объект track и передвиньте ключевой кадр из 100, созданного по умолчанию, в 400.

СОВЕТ Чтобы быстро изменить временной диапазон шкалы анимации, можно нажать сочетание клавиш Ctrl+Alt, щелкнуть правой кнопкой мыши на шкале анимации и перемещать указатель влево (для уменьшения количества кадров) или вправо (для увеличения). Нажатие этих же клавиш в сочетании с левой кнопкой мыши позволяет изменять начало временного диапазона, установленное по умолчанию в нулевой кадр.

Теперь необходимо установить зацикливание для анимации главного звена. Для этого выделите объект track и откройте окно редактора кривых командой Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых). В левой части появившегося окна выберите анимированный трек для выделенного объекта (рис. 8.79).

338

Глава 8. Анимация сцен

Рис. 8.79. Окно редактора кривых с выделенным треком анимации процентов контроллера Path Constraint (Ограничение по пути)

В окне редактора кривых щелкните на кнопке Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) . В открывшемся окне Param Curve Out-of-Range Types (Типы экстраполяции параметрических кривых) щелкните на кнопках со стрелками под значком Cycle (Циклический) (рис. 8.80).

Рис. 8.80. Окно Param Curves Out-of-Range Types (Типы экстраполяции параметрических кривых) с установленным параметром циклического повторения анимации

Теперь все готово к выполнению сценария. Очистите сцену от созданных в процессе экспериментов с кодированием объектов и запустите выполнение сценария. В результате будет создано 90 копий звена гусеницы, распределенных по всей длине сплайна. Запустите воспроизведение анимации и убедитесь, что анимация работает и гусеница движется по сплайну. ПРИМЕЧАНИЕ Как вы помните, основной объект track имеет два ключа анимации, соответствующих положению 0 и 100 % пройденного пути. Если изменять на временной шкале положение ключа, имеющего значение 100 %, то будет изменяться скорость движения. Например, передвинув ключ анимации с 400 на 200, вы увеличите скорость движения гусеницы в два раза.

Анимация движения танковой гусеницы

339

Сейчас анимируем вращение колес, по которым движется гусеница. Очевидно, что колесо выполнит столько оборотов за один оборот гусеницы, сколько длин окружностей колеса укладывается в длине сплайна. Разберемся в этом на практике. Сначала узнаем диаметр колеса. Для этого выделите большое колесо и на вкладке Utilities (Утилиты) командной панели щелкните на кнопке Measure (Линейка). В области Dimensions (Размеры) посмотрите размер колеса по осям Y и Z. Таким образом, диаметр колеса в нашем случае — 16,693. Как известно, длина окружности составляет π Ч D, где число π — постоянная величина, а D — диаметр колеса. Таким образом, длина окружности большого колеса равна 3,14 Ч 16,693 = 52,4066. Разделив длину сплайна пути track_path на полученную величину, узнаем, сколько оборотов сделает колесо за один оборот гусеницы: 344,721 / 52,4066 = 6,578. Теперь нужно привязать вращение колеса к скорости движения гусеницы. Это можно сделать, воспользовавшись анимацией процентов пройденного пути. ПРИМЕЧАНИЕ Создав зависимость вращения колеса от пройденного главным звеном (track) пути, мы оставляем за собой возможность изменения скорости не только движения гусеницы, но и вращения колес.

Для этого сделайте следующее. 1.

Выделите колесо wheel01 и перейдите к свитку Assign Controller (Назначить контроллер) вкладки Motion (Движение) командной панели.

2.

В свитке Assign Controller (Назначить контроллер) раскройте список контроллеров для осей поворота и выберите строку Y Rotation: Bezier Float (Y-поворот: значение Безье с плавающей точкой) (рис. 8.81).

3.

Щелкните на кнопке Assign Controller (Назначить контроллер) и выберите из появившегося списка контроллер Float Expression (Выражение с плавающей точкой). Щелкните на кнопке OK для подтверждения выбора.

4.

В области Create Variables (Создать переменную) открывшегося окна Expression Controller (Контроллер выражения) создайте переменную pathPerc. Для этого в поле Name (Имя) введите имя переменной и щелкните на кнопке Create (Создать) (рис. 8.82).

5.

Рис. 8.81. Свиток Assign Controller (Назначить контроллер) объекта Wheel01

В нижней части окна щелкните на кнопке Assign to Controller (Назначить контроллеру) и в появившемся окне Track View Pick (Выбрать трек) выберите объект track. Раскройте списки его параметров и активизируйте строку Percent: Linear Float (Проценты: линейное значение с плавающей точкой) (рис. 8.83).

340

Глава 8. Анимация сцен

Рис. 8.82. Переменная pathPerc, созданная в окне Expression Controller (Контроллер выражения)

Рис. 8.83. Окно Track View Pick (Выбрать трек)

6.

В области Expression (Выражение) окна Expression Controller (Контроллер выражения) введите следующее выражение: degToRad(6.578*360*pathPerc) — и щелкните на кнопке Evaluate (Оценить). Разберем это выражение. Функция degToRad(), как вы уже знаете, переводит градусы, которыми удобно оперировать пользователю, в радианы, с которыми работает 3ds Max. Выражение в скобках определяет угол поворота колеса в градусах: количество оборотов колеса на один оборот гусеницы, рассчитанный нами ранее (6,578), умноженное

Анимация движения танковой гусеницы

341

на 360° (один полный оборот в градусах) и умноженное на процент пройденного пути, который мы получаем от объекта track, используя созданную нами переменную pathPerc. 7.

Проверьте анимацию, нажав кнопку Play Animation (Воспроизвести анимацию) . Колесо должно вращаться вместе с вращением гусеницы.

Теперь нужно связать анимированное колесо с остальными колесами. Это просто сделать, если воспользоваться окном Parameter Wire Dialog (Окно параметров связей) следующим образом. 1.

Выполните команду меню AnimationWire ParametersParameter Wire Dialog (АнимацияПараметры связейОкно параметров связей).

2.

В левой части открывшегося окна Parameter Wiring (Связываемые параметры) выберите из списка анимированное колесо (wheel01). Разверните список параметров выбранного объекта, щелкнув на плюсе слева от имени, и выберите из списка строку Y Rotation: Float Expression (Y-поворот: выражение с плавающей точкой).

3.

В правой части окна Parameter Wiring (Связываемые параметры) выберите из списка следующее большое колесо — wheel02. Разверните список его параметров и выберите строку Y Rotation: Bezier Float (Y-поворот: значение Безье с плавающей точкой).

4.

Щелкните на кнопке со стрелкой, направленной вправо. В результате выбранный параметр объекта слева будет управлять выбранным параметром объекта справа.

5.

Щелкните на кнопке Connect (Соединить) для завершения создания связи (рис. 8.84).

6.

Повторите вышеописанные операции назначения связей для двух оставшихся больших колес. В моем случае это колеса wheel03 и wheel04.

Рис. 8.84. Окно Parameter Wiring (Связываемые параметры) для большого колеса

342

Глава 8. Анимация сцен

Для меньших колес, расположенных в верхней части гусеницы, необходимо изменить выражение в поле Expression for Y_Rotation (Функция для поворота по оси Y) на следующее: Y_Rotation+degToRad((7.379-6.578)*360)(рис. 8.85). Это выражение означает, что угол поворота по оси Y малого колеса будет равняться углу поворота большого колеса плюс угол, который получился из разницы количества оборотов большого и малого колес, умноженной на 360°. Количество оборотов малого колеса считается по той же формуле, что и для большого, то есть длина пути делится на длину окружности колеса.

Рис. 8.85. Окно Parameter Wiring (Связываемые параметры) для малого колеса

Рассмотрим, как повысить реалистичность сцены и внести изменения в анимацию гусеницу для учета неровности дороги. Это можно сделать с помощью управления положением вершин сплайна пути track_path, привязанным к колесам. Для этого выполните следующее. 1.

Нажмите на панели инструментов кнопку Select by Name (Выделить по имени) и выберите из списка все объекты, в имени которых есть слово track, то есть все звенья танковой гусеницы.

2.

Щелкните на выделении правой кнопкой мыши и выберите из контекстного меню команду Hide Selection (Спрятать выделенное).

3.

В окне проекции Left (Слева) немного выше правого верхнего колеса постройте объект Rectangle (Прямоугольник) небольшого размера (рис. 8.86). Форма и размер этого объекта не имеют принципиального значения, так как он будет играть роль вспомогательного объекта, к которому будут привязываться вершины сплайна пути.

4.

Выделите созданный прямоугольник, если он не остался выделенным после построения, и перейдите на вкладку Utilities (Утилиты) командной панели. В одноименном свитке щелкните на кнопке Reset XForm (Сбросить преобразования).

Анимация движения танковой гусеницы

343

Рис. 8.86. Прямоугольник, построенный над колесом

ВНИМАНИЕ Преобразования необходимо сбросить потому, что профиль колеса строился в окне проекции Front (Спереди), а прямоугольник — в окне проекции Left (Слева). Следовательно, эти два объекта имеют разные локальные системы координат, что вызовет изменение положения колеса при его связывании с прямоугольником, если не сбросить преобразования.

5.

В окне проекции Left (Слева) выберите сплайн пути (track_path) и перейдите на вкладку Modify (Изменение) командной панели.

6.

Перейдите на уровень редактирования вершин и выберите две вершины, расположенные рядом с правым верхним колесом (рис. 8.87).

7.

Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов вкладки Modify (Изменение).

8.

В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите построенный прямоугольник (рис. 8.88).

9.

Проверьте сделанную привязку, для чего в окне проекции Left (Слева) выделите и произвольно переместите прямоугольник. Вместе с прямоугольником должны перемещаться вершины сплайна пути.

10.

Отмените выполненные перемещения, чтобы вершины сплайна пути вернулись в исходное состояние.

344

Глава 8. Анимация сцен

Рис. 8.87. Вершины, выбранные для редактирования

Рис. 8.88. Свиток Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование)

11.

Привяжите к прямоугольнику правое верхнее колесо. Для этого нажмите кнопку Select and Link (Выделить и связать) на главной панели инструментов, затем щелкните на колесе и, когда указатель примет соответствующий вид, перетащите его на прямоугольник.

12.

Снова проверьте правильность привязки, перемещая прямоугольник: теперь вместе с вершинами сплайна будет перемещаться колесо.

Далее необходимо выполнить такие же привязки для всех остальных колес. Отличие состоит лишь в том, что для выбора необходимых вершин применяется модификатор SplineSelect (Выбор сплайна) или Edit Spline (Редактирование сплайна). Рассмотрим пример привязки следующего колеса. 1. 2.

Скопируйте прямоугольник или постройте новый и разместите его напротив второго колеса (рис. 8.89). Если вы построили новый прямоугольник, то сбросьте преобразования, для чего перейдите на вкладку Utilities (Утилиты) командной панели и в одноименном свитке щелкните на кнопке Reset XForm (Сбросить преобразования).

3.

Вернитесь к стеку модификаторов сплайна пути, для чего выделите сплайн track_path и перейдите на вкладку Modify (Изменение) командной панели.

4.

Выберите из списка модификаторов строку SplineSelect (Выбор сплайна) и перейдите на уровень редактирования вершин.

345

Анимация движения танковой гусеницы

5.

Выделите две вершины, расположенные у основания второго колеса.

6.

Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов. В результате стек модификаторов будет выглядеть, как показано на рис. 8.90.

7.

В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите второй прямоугольник.

8.

Привяжите ко второму прямоугольнику второе колесо. Для этого нажмите кнопку Select and Link (Выделить и связать) на главной панели инструментов, затем щелкните на колесе и, когда указатель примет соответствующий вид, перетащите его на прямоугольник. Проверьте анимацию.

Рис. 8.89. Расположение второго управляющего прямоугольника

Рис. 8.90. Стек модификаторов объекта track_path после привязки второй группы вершин

После анимирования всех необходимых объектов можно переходить к тонкой настройке анимации, включая скорость движения, положение в пространстве и т. д., а затем визуализировать ее. ПРИМЕЧАНИЕ Ознакомиться с выполненной анимацией движения гусеницы танка можно, воспользовавшись файлом track_end.max, расположенным в папке Examples\Глава 08\Track прилагаемого DVD. В папке Video\Глава 08 находится готовая анимация track.avi.

346

Глава 8. Анимация сцен

Звук в 3ds Max Наверное, любой специалист, занимающийся видеороликами, скажет, что проще всего звук накладывать в программах постобработки, то есть после того, как выполнена вся анимация. И будет прав, однако бывают случаи, когда необходимо настраивать под звуковую дорожку движения персонажей или объектов. При этом не обойтись без звука в самом приложении. В данном разделе мы рассмотрим возможность использования звука в 3ds Max для создания анимации вибрирующих динамиков и анализатора частотного спектра аудиоаппаратуры. Как обычно, для выполнения упражнения понадобится базовая сцена, которую вы можете загрузить из папки Examples\Глава 08\Sound_wave прилагаемого к книге DVD. Файл называется sound_wave_start.max. Все, что вам необходимо для работы, — это модель акустического динамика и параметрический объект Plane (Плоскость), на основе которого будем строить анализатор частотных характеристик звука. Начнем с анимации динамика. В первую очередь необходимо заставить мембрану динамика двигаться в такт музыке. Это проще всего сделать, анимировав выделенные вершины с помощью модификатора Linked XForm (Связанное преобразование) и контроллера AudioFloat (Звук, использующий значения с плавающей точкой). Для этого сделайте следующее. 1.

В окне проекции Top (Сверху) постройте вспомогательный объект-пустышку, выполнив команду CreateHelpersDummy (СозданиеВспомогательные объектыПустышка).

2.

Используя инструмент Select and Move (Выделить и переместить) , переместите построенный объект Dummy01 так, чтобы он находился прямо перед динамиком (рис. 8.91).

Рис. 8.91. Положение объекта Dummy01 в окне проекции Top (Сверху)

347

Звук в 3ds Max

3.

В одном из окон проекций выделите динамик (объект speakerR) и в стеке модификаторов вкладки Modify (Изменение) командной панели щелкните на плюсике в строке Editable Poly (Редактируемая полигональная поверхность), а в раскрывшемся списке выберите строку Vertex (Вершина).

4.

В окне проекции Front (Спереди) выделите вершины, находящиеся внутри динамика (рис. 8.92) (при необходимости обратитесь к цветной иллюстрации, расположенной на диске в папке Images\Глава 08).

Рис. 8.92. Восемь рядов вершин, выделенных внутри динамика

СОВЕТ Проще всего выделить вершины, расположенные по кругу, с помощью инструмента выделения Circular Selection Region (Область выделения по окружности) . Можно также выделить одну точку, расположенную в середине динамика, и в свитке Selection (Выделение) щелкнуть восемь раз на кнопке Grow (Увеличить), увеличив выделяемую область до нужного размера.

5.

Назначьте выделению модификатор Linked XForm (Связанное преобразование), выполнив команду ModifiersAnimationLinked XForm (МодификаторыАнимацияСвязанное преобразование).

6.

В свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) щелкните на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций выберите объект Dummy01.

7.

На главной панели инструментов активизируйте инструмент Select and Move (Выделить и переместить) и в окне проекции Left (Слева) переместите вспомогательный объект-пустышку Dummy01 в сторону от динамика. При перемещении пустышки должна двигаться и привязанная к ней часть вершин

348

Глава 8. Анимация сцен

динамика. Если этого не происходит, повторите привязку вершин к вспомогательному объекту. 8.

Верните объект-пустышку в первоначальное положение, выполнив команду Undo (Отменить) или воспользовавшись сочетанием клавиш Ctrl+Z.

Далее необходимо назначить вспомогательному объекту Dummy01 контроллер управления положением по звуку. ВНИМАНИЕ Прежде чем назначать любой контроллер, необходимо скорректировать время анимации. Это вызвано тем, что назначенный контроллер использует только тот временной интервал, который использовался при его назначении, и при последующем изменении времени анимации параметры контроллера не изменяются. Программа 3ds Max поддерживает два формата звуковых файлов: WAV и AVI. В связи с этим необходимо конвертировать имеющуюся звуковую дорожку в один из этих форматов. Для этого можно использовать как специализированные программы редактирования звука (такие как Sound Forge), так и простые проигрыватели (например, Winamp).

Увеличьте время анимации до двух с половиной минут. Именно такое время длится звуковая дорожка, которую мы будем использовать в данном упражнении. Для увеличения времени анимации щелкните на кнопке Time Configuration (Настройка временных интервалов) и в области Animation (Анимация) открывшегося окна измените значение параметра End Time (Время окончания) на 4500 кадров (из расчета 30 кадров в секунду). Можно также установить отображение единиц времени в минутах, секундах и тиках, соответственно, в таком же формате устанавливается значение счетчика End Time (Время окончания). Вернемся к анимации. Прежде всего необходимо заморозить трансформацию положения вспомогательного объекта Dummy01, чтобы обнулить все значения координат по осям X, Y и Z. Это облегчит работу с контроллером, использующим звуковую дорожку. Кроме того, следует загрузить в программу звуковой файл, чтобы иметь возможность контролировать процесс анимации не только визуально, но и вместе со звуком. Для этого выполните следующие действия. 1. В одном из окон проекций выделите объектпустышку Dummy01. 2. Удерживая нажатой клавишу Alt, щелкните правой кнопкой мыши в окне проекции. В результате появится контекстное меню. Рис. 8.93. Контекстное меню с выбором команды, замораживающей все трансформации

3. В группе transform (трансформации) щелкните на строке Freeze Transform (Заморозить трансформацию) (рис. 8.93), после чего откроется

349

Звук в 3ds Max

окно с предупреждением о том, что могут быть утеряны ранее выполненные трансформации или анимация. В данном случае это как раз то, что нам нужно. На вопрос о том, желаете ли вы продолжить, ответьте утвердительно. 4.

Откройте окно редактора кривых, для чего выполните команду Graph Editors Track View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых).

5.

В левой части редактора кривых выберите строку Sound (Звук) (рис. 8.94) и щелкните на ней правой кнопкой мыши, в результате чего откроется контекстное меню.

Рис. 8.94. Окно редактора кривых

6.

В контекстном меню выберите строку Properties (Свойства).

7.

В открывшемся окне Sound Options (Свойства звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу. Вы можете выбрать собственный звуковой файл или воспользоваться файлом Sound.wav, расположенным в папке Examples\Глава 08\Sound_wave прилагаемого к книге DVD.

8.

Протестируйте выполненные действия, запустив воспроизведение анимации. Во время проигрывания анимации должен звучать выбранный звуковой файл.

Теперь можно продолжить присвоение объекту Dummy01 контроллера, управляющего перемещением по оси Y (перпендикулярно динамику). 1.

Выделите вспомогательный объект Dummy01 (если он не выделен) и перейдите на вкладку Motion (Движение) командной панели.

2.

В свитке Assign Controller (Назначить контроллер) щелкните на плюсике, расположенном рядом со строкой Position: Position List (Положение: список положения) для раскрытия списка контроллеров положения.

3.

Раскройте строку Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: положение по XYZ) и выберите строку Y Position (Положение по оси Y).

350

Глава 8. Анимация сцен

4.

Щелкните на кнопке Assign Controller (Назначить контроллер) и в раскрывшемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите строку AudioFloat (Звук, использующий значения с плавающей точкой) (рис. 8.95).

5.

В появившемся окне Audio Controller (Контроллер звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.

6.

В области Controller Range (Диапазон контроллера) увеличьте значение параметра Max (Максимум) до 30. В зависимости от уровня записи, которую вы используете, величина максимального значения может быть меньше или больше.

7.

В области Channel (Канал) установите переключатель в положение Right (Правый) (рис. 8.96).

8.

Закройте окно Audio Controller (Контроллер звука) и проверьте анимацию. Объектпустышка и связанный с ним динамик должны колебаться в такт музыке.

Рис. 8.95. Окно Assign Float Controller (Назначить контроллер с плавающей точкой)

Рис. 8.96. Настройки окна Audio Controller (Контроллер звука) для правого динамика

Скопируйте динамик вместе с объектом-пустышкой. Для этого в окне проекции Front (Спереди) выделите оба объекта и, удерживая нажатой клавишу Shift, переместите их вправо на 680 единиц (величину смещения можно увидеть в строке информации в нижней части окна 3ds Max). В качестве способа копирования укажите Copy (Копия). СОВЕТ Копировать со смещением можно разными способами, например используя инструмент Array (Массив).

351

Звук в 3ds Max

После копирования новый динамик унаследует старые связи, что вызовет нежелательную трансформацию. Избавиться от них просто — достаточно на вкладке Modify (Изменение) командной панели переопределить объект контроля. Для этого в свитке Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование) необходимо щелкнуть на кнопке Pick Control Object (Указать контролирующий объект) и в одном из окон проекций указать на новый вспомогательный объект-пустышку Dummy02. Последнее, что осталось сделать для анимации динамиков, — изменить для вновь построенного динамика звуковой канал. Для этого выполните следующее. 1.

Выделите новый объект-пустышку Dummy02.

2.

Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контроллер) выберите строку с именем Y Position (Положение по оси Y), расположенную внутри списка Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: положение по XYZ).

3.

Щелкните на строке Y Position (Положение по оси Y) правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства).

4.

В области Channel (Канал) открывшегося окна Audio Controller (Контроллер звука) установите переключатель в положение Left (Левый) (рис. 8.97).

Рис. 8.97. Окно Audio Controller (Контроллер звука) с установленным каналом для левого динамика

5.

Закройте окно и проверьте анимацию. Оба динамика должны вибрировать в такт музыке.

В начале данного раздела мы говорили о том, что будем анимировать не только динамики, но и анализатор частотного спектра аудиоаппаратуры. На самом деле это будет не настоящий анализатор частоты, а только его имитация, так как все, что мы можем получить от звукового файла, — это характеристики каналов и их смешанное значение, которые не имеют никакого отношения к частотным характеристикам звука.

352

Глава 8. Анимация сцен

Перейдите на вкладку Display (Дисплей) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени), в результате чего откроется окно со списком спрятанных объектов. Выберите из него объект analyzer_wave и щелкните на кнопке Unhide (Отобразить). Этот объект — будущая панель анализатора спектра, разделенная на десять сегментов по горизонтали (по количеству каналов, которые мы будем анимировать). Рассмотрим, как будет работать наш анализатор. Есть несколько способов отображения и передачи информации звукового контроллера параметрам объекта. Мы будем использовать анимированный материал. Такой подход позволит получить приемлемый результат, не создавая дополнительной геометрии. Можно построить сложный материал, основанный на серии масок для каждого канала, однако такой способ может оказаться достаточно трудным для начинающих. По этой причине мы создадим многокомпонентный материал, каждый компонент которого будет являться копией одного материала с измененными параметрами звукового контроллера (для получения колебаний различной амплитуды). 1.

В одном из окон проекций выделите объект analyzer_wave и перейдите на вкладку Modify (Изменение) командной панели.

2.

Выберите из списка модификаторов (или выполните соответствующую команду главного меню) модификатор Edit Mesh (Редактирование поверхности).

3.

Перейдите на уровень редактирования полигонов, для чего в свитке Selection (Выделение) щелкните на кнопке Polygon (Полигон) .

4.

В окне Front (Спереди) выделите первый полигон и присвойте ему первый идентификатор материала, для чего задайте параметру Set ID (Установить идентификатор материала) свитка Surface Properties (Свойства поверхности) значение 1 и нажмите клавишу Enter для подтверждения изменений (рис. 8.98).

Рис. 8.98. Установка идентификатора материала для первого полигона анализатора спектра

Звук в 3ds Max

353

5.

Выделите второй полигон объекта analyzer_wave и установите идентификатор материала равным 2.

6.

Проделайте вышеописанные операции для оставшихся восьми полигонов, присвоив им идентификаторы материала согласно порядку их следования.

Для создания и настройки базовых параметров материала сделайте следующее. 1.

Откройте редактор материалов, выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов) или нажав клавишу M.

2.

Выберите ячейку со свободным материалом и щелкните на кнопке Standard (Стандартный), расположенной справа от имени материала.

3.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка материал Multi/Sub-Object (Многокомпонентный). На вопрос Keep old material as sub-material (Оставить основной материал в качестве одного из компонентов) ответьте утвердительно.

4.

В свитке Multi/Sub-Object Basic Parameters (Базовые параметры многокомпонентного материала) щелкните на кнопке с именем первого материала. В результате появятся его настройки.

5.

В области Self-Illumination (Собственное свечение) свитка Blinn Basic Parameters (Базовые параметры раскраски по Блинну) задайте параметру Color (Цвет) значение 100. Это позволит имитировать яркий светящийся индикатор.

6.

В свитке Maps (Карты текстур) нажмите кнопку None (Отсутствует), расположенную справа от Diffuse Color (Цвет рассеивания).

7.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент) (рис. 8.99) и щелкните на кнопке OK для подтверждения выбора и закрытия окна.

8.

После выбора карты Gradient Ramp (Улучшенный градиент) в окне редактора материалов автоматически отобразятся свитки параметров этой карты. В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) необходимо настроить следующие цвета флагов градиента: •

для первого флага, расположенного в позиции 0, установите зеленый цвет со значениями Red (Красный) — 0, Green (Зеленый) — 255, Blue (Синий) — 0. Для этого дважды щелкните на флаге и в открывшемся окне Color Selector (Выбор цвета) задайте значения цветовых каналов;

Рис. 8.99. Выбор карты улучшенного градиента в окне Material/Map Browser (Окно выбора материалов и карт)

354

Глава 8. Анимация сцен



для флага, расположенного в позиции 100, задайте красный цвет: Red (Красный) — 255, Green (Зеленый) — 0, Blue (Синий) — 0;



флаг, расположенный посередине (в позиции 50), передвиньте в позицию 70 и установите желтый цвет: Red (Красный) — 255, Green (Зеленый) — 220, Blue (Синий) — 20.

СОВЕТ Более точно установить позицию флага, изменить имя, установленное по умолчанию, или назначить ему текстуру можно, щелкнув на флаге правой кнопкой мыши и выбрав из контекстного меню строку Edit Properties (Правка свойств).

ПРИМЕЧАНИЕ Данный градиент влияет на внешний вид анализатора звука. Он настраивается один раз для всех каналов. При желании можно использовать другие цвета анализатора звука. Если вы решите в дальнейшем менять цвет, то эту градиентную карту лучше всего настраивать как внешнюю, с последующим копированием в качестве образца (Instance) в многокомпонентный материал. В таком случае при редактировании одной карты будут изменяться цвета сразу во всех 10 каналах.

9. Поверните градиентную карту в вертикальное положение, задав параметру W области Angle (Угол) свитка Coordinates (Координаты) значение –90 (рис. 8.100). 10. Вернитесь к свитку Maps (Карты текстур), нажав на панели инструментов редактора материалов кнопку Go to Parent (Вернуться к исходному) . Перейдем к настройке карты прозрачности, которая будет имитировать не только разбиение полоски анализатора на отдельные сегменты, но и управлять их отображением. Для этого нам понадобится составная карта Mask (Маска), построением которой мы сейчас и займемся. Рис. 8.100. Настройки карты Gradient Ramp (Улучшенный градиент) для основного цвета

2.

1. В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует), расположенной справа от Opacity (Непрозрачность).

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент) и щелкните на кнопке OK для подтверждения выбора и закрытия окна.

Звук в 3ds Max

3.

355

В свитке Coordinates (Координаты) задайте следующие значения параметров: •

для координат по горизонтали (U) установите смещение (Offset (Смещение)) равным 0,05 и количество повторений (Tiling (Повторения)) — 10, по количеству каналов анализатора. Смещение позиционирует маску в середине используемого полигона;



для координат по вертикали (V) установите смещение (Offset (Смещение)) равным 0,025 и количество повторений (Tiling (Повторения)) — 20, по количеству сегментов одного канала анализатора.

4.

В этом же свитке укажите минимальное размытие карты, задав параметру Blur (Размытие) 0,01.

5.

В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) установите для первого флага белый цвет (карта прозрачности работает с градациями монохромного цвета от белого до черного).

6.

Передвиньте второй флаг, который находится в позиции 50, в позицию 80 и установите для него черный цвет.

7.

В этом же свитке выберите из списка Gradient Type (Тип градиента) строку Box (Параллелепипед), а из списка Interpolation (Интерполяция) — строку Solid (Сплошной) (рис. 8.101).

8.

Перейдем к построению составной карты, для чего справа от имени градиентной карты прозрачности, с которой мы работали, щелкните на кнопке Gradient Ramp (Улучшенный градиент).

9.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Mask (Маска) и щелкните на кнопке OK для подтверждения выбора и закрытия окна. В результате выполненных действий появится окно с вопросом Keep old material as sub-material (Оставить основной материал в качестве одного из компонентов). Ответьте на него утвердительно.

10.

После выбора карты Mask (Маска) в окне редактора материалов автоматически появятся параметры этой карты. В свитке Mask Parameters (Параметры маски) щелкните на кнопке None (Отсутствует) справа от Mask (Маска) и выберите в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) еще одну карту Gradient Ramp (Улучшенный градиент).

Рис. 8.101. Настройка параметров градиентной карты для создания сегментов анализатора

356

Глава 8. Анимация сцен

11. Как и для предыдущей карты градиента, в свитке Gradient Ramp Parameters (Параметры улучшенного градиента) для первого флага установите белый цвет. 12. Для второго флага задайте черный цвет. Его положение не имеет значения. 13. Щелкните на втором флаге правой кнопкой мыши и выберите из контекстного меню строку Edit Properties (Правка свойств). Рис. 8.102. Окно Flag Properties (Свойства флага)

14. В появившемся окне Flag Properties (Свойства флага) в поле имени наберите новое имя флага, например LevelMask (рис. 8.102). Это позволит при последующей анимации проще находить нужные объекты. Закройте окно Flag Properties (Свойства флага).

15.

В свитке Gradient Ramp Parameters (Параметры улучшенного градиента) выберите из списка Interpolation (Интерполяция) строку Solid (Сплошной).

16.

В свитке Coordinates (Координаты) задайте параметру W столбца Angle (Угол) значение –90, что позволит развернуть карту в вертикальное положение (рис. 8.103).

17.

Вернитесь на верхний уровень к многокомпонентной карте, для чего трижды щелкните на кнопке Go to Parent (Вернуться к исходному), расположенной на панели инструментов редактора материалов.

Итак, мы создали составной материал на основе трех градиентных карт и карты маски. Их хватит для решения наших задач. На рис. 8.104 показано дерево материала на данном этапе редактирования. Чтобы посмотреть дерево материалов, щелкните на кнопке Material/Map Navigator (Путеводитель по материалам/картам текстур) . Если вы все сделали правильно, то у вас должно быть точно такое же изображение. Назначьте созданный материал объекту analyzer_wave.

Рис. 8.103. Настройки градиентной карты маски

Сейчас необходимо анимировать положение флага LevelMask в соответствии с уровнями кривой звукового контроллера. Можно было бы использовать один из контроллеров Audio Controller (Контроллер звука), присвоенных вспомогательным объектам для управления динамиками, но я хочу показать, как можно создавать собственные параметры объекта и использовать их для решения задач анимации.

Звук в 3ds Max

357

В одном из окон проекций выделите объект analyzer_wave. Выполните команду AnimationParameter Editor (АнимацияРедактор параметров), в результате откроется окно Parameter Editor (Редактор параметров). В свитке Attribute (Свойства) выберите из раскрывающегося списка Add to Type (Добавить к типу) строку Selected Object's Material (Материал выделенного объекта). Это позволит добавить создаваемый параметр материалу анализатора звука — объекту analyzer_wave. Введите в поле Name (Имя) значимое имя параметра, например sound_wave (рис. 8.105).

Рис. 8.104. Окно Material/Map Navigator (Путеводитель по материалам/картам текстур) на данном этапе редактирования многокомпонентного материала

Рис. 8.105. Окно Parameter Editor (Редактор параметров)

В свитке Attribute (Свойства) щелкните на кнопке Add (Добавить) — и новый параметр будет добавлен к выделенному объекту analyzer_wave. В результате в редакторе материалов в настройках многокомпонентного материала, присвоенного объекту, появится свиток Custom Attributes (Пользовательские свойства) с соответствующим параметром. Нам нужно присвоить этому значению Audio Controller (Контроллер звука), для этого обратимся к редактору кривых. 1.

Выполните команду Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых).

2.

В левой части редактора кривых перейдите по дереву иерархии к многокомпонентному материалу объекта analyzer_wave, выберите строку sound_wave (созданный нами атрибут) (рис. 8.106) и щелкните на ней правой кнопкой мыши.

3.

В появившемся контекстном меню выберите строку Assign Controller (Назначить контроллер). В открывшемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите из списка строку AudioFloat (Звук, использующий значения с плавающей точкой).

358

Глава 8. Анимация сцен

Рис. 8.106. Окно редактора кривых с выделенным дополнительным параметром

4.

В открывшемся окне Audio Controller (Контроллер звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.

5.

В области Controller Range (Диапазон контроллера) увеличьте значение параметра Max (Максимум) до 5. Данное значение можно впоследствии скорректировать с таким расчетом, чтобы колебания уровней анализатора звука длительное время не превышали максимального значения.

6.

Установите переключатель Channel (Канал) в положение Mix (Смешивание). Для строящегося анализатора звука мы возьмем один смешанный канал, хотя можно было бы использовать все три.

7.

В области Sample (Выборка) задайте параметру Oversampling (Усреднение) значение 500 (рис. 8.107). Для имитации анализатора частотных характеристик звука мы используем кривую уровня звука, поэтому увеличение значения этого параметра позволит частично сгладить пороговые значения кривой. 8. Закройте окно Audio Controller (Контроллер звука).

Рис. 8.107. Настройки окна Audio Controller (Контроллер звука) для атрибута sound_wave

В окне редактора кривых присвоим флагу LevelMask карты улучшенного градиента, используемого в канале прозрачности, контроллер Float Expression (Выражение с плавающей точкой). Для этого в левой части редактора кривых выберите объект analyzer_ wa ve из иерархического списка и, передвигаясь по его компонентам, перейдите к параметру Position (Положение) флага LevelMask из канала прозрачности первого материала (рис. 8.108).

359

Звук в 3ds Max

Рис. 8.108. Окно редактора с активным параметром Position (Положение) флага LevelMask

Щелкните на выбранном параметре Position (Положение) правой кнопкой мыши и выберите строку Assign Controller (Назначить контроллер) в контекстном меню. В появившемся окне Assign Float Controller (Назначить контроллер с плавающей точкой) выберите из списка строку Float Expression (Выражение с плавающей точкой). В области Create Variables (Создать переменную) открывшегося окна Expression Controller (Контроллер управления по алгоритмическому выражению) введите в поле Name (Имя) имя создаваемой переменной (например, wave) и щелкните на кнопке Create (Создать). В результате будет создана пользовательская переменная, которой необходимо присвоить значение контроллера звука. Для этого щелкните на кнопке Assign to Controller (Назначить контроллеру) и укажите в открывшемся окне диалога Track View Pick (Выбрать трек) на трек с именем созданного нами атрибута sound_ wave (рис. 8.109) В поле Expression (Выражение) запишите формулу, которая будет управлять поведением флага LevelMask согласно звуковой волне: floor(wave/0.05)*0.05 (рис. 8.110). Щелкните на кнопке Evaluate (Оценить) для присвоения функции анимируемому параметру.

Рис. 8.109. Окно Track View Pick (Выбрать трек)

360

Глава 8. Анимация сцен

Рис. 8.110. Окно Expression Controller (Контроллер управления по алгоритмическому выражению) после выполнения всех настроек

Разберем записанную формулу. Начнем с параметров. Несмотря на то что в настройках диапазона звукового контроллера мы задали максимальное значение равным 5, позиция флага градиентной карты использует значение от 0 до 1. Кроме того, наш анализатор звука имеет 20 сегментов, и смещение значений положения флага должно происходить с учетом количества этих сегментов. Таким образом, первое, что мы делаем в этой функции, — округляем в меньшую сторону значение звукового контроллера (присвоенное переменной wave), деленное на 20 частей (floor(wave/0.05)). Для округления необходимо, чтобы значение было больше нуля, что мы и делаем, используя для деления значение, уменьшенное в 100 раз, но для возврата к прежнему уровню уже округленного значения нам необходимо умножить полученный результат на 0,05. Таким образом, полностью выражение выглядит как floor(wave/0.05)*0.05. В результате расчетов значение положения флага LevelMask в каждом кадре анимации становится кратно 0,05. Теперь следует в настройках многокомпонентного материала анализатора в окне Material Editor (Редактор материалов) скопировать первый материал и вставить вместо расположенных ниже девяти материалов. СОВЕТ Прежде чем копировать созданную анимацию, желательно убедиться в том, что все сделано правильно. Для этого можно воспользоваться одним из двух способов. Первый способ: задать отображение анимации карты улучшенного градиента в окне проекции (для этого перейдите в редакторе материалов к этой карте и щелкните на кнопке Show Standard Map in Viewport (Показать карту в окне проекции стандартно) ). Второй способ: выполнить эскиз анимации текстуры, используя кнопку редактора материалов Make Preview (Создать эскиз) .

Звук в 3ds Max

361

Для создания копий настроенного материала перейдите к верхнему уровню многокомпонентного материала. В свитке Multi/Sub-Object Basic Parameters (Базовые параметры многокомпонентного материала) щелкните на кнопке с именем первого материала и, не отпуская кнопку мыши, перетащите ее на кнопку с именем второго материала. После того как вы отпустите кнопку мыши, появится окно, в котором в качестве метода копирования следует выбрать Copy (Копия). Новый материал для второго канала создан. Теперь необходимо изменить настройки этого материала, чтобы анимация уровней каналов различалась. Для этого обратитесь к редактору кривых и выберите из иерархического списка анимированный флаг LevelMask для градиентной карты второго материала (рис. 8.111).

Рис. 8.111. Редактор кривых с выделенным флагом LevelMask второго материала

Перейдите к параметру Position (Положение) этого флага и, щелкнув на нем правой кнопкой мыши, выберите из контекстного меню строку Properties (Свойства). В результате откроется окно Expression Controller (Контроллер управления по алгоритмическому выражению). После копирования это окно содержит функцию и параметры анимации первой карты. Изменить значения анимации можно следующим образом: 

изменить время, задаваемое в поле Tick Offset (Смещение в тиках) области Variable Parameters (Параметры переменной) для созданной нами переменной;



изменить значение переменной wave в записанной формуле.

На рис. 8.112 представлен пример измененного контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с использованием описанных выше способов. Повторите копирование и настройку анимации для оставшихся восьми материалов. В результате вы получите готовый анализатор частотного спектра, а точнее, его имитацию. На рис. 8.113 представлен кадр из получившейся анимации.

362

Глава 8. Анимация сцен

Рис. 8.112. Окно контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с измененными параметрами для второго материала

Рис. 8.113. Визуализация одного из кадров анимации

И в завершение несколько советов к данному упражнению. Кривая звука имеет нерегулярную форму, что вызывает изменения значений в каждом кадре анимации. Контроллер, который мы использовали, округляет значения кривой до цифры, кратной 0,05 (это необходимо для того, чтобы маска всегда открывала полные сегменты анализатора), но не отслеживает частые скачки значений. Частично сгладить кривую и сделать более плавную анимацию можно с помощью контроллера Float Script (Сценарий, использующий значения с плавающей точкой). В этом случае можно получать значения из кадров до и после текущего и усреднять их. Такой код может выглядеть как на рис. 8.114. Аналогичным способом можно

363

Звук в 3ds Max

написать более сложный код, который будет не только получать значения кривой звука в определенные промежутки времени, но и строить собственную кривую на основе этих значений.

Рис. 8.114. Окно контроллера Float Script (Сценарий, использующий значения с плавающей точкой)

Более простой способ сглаживания анимации анализатора — при котором визуализируется каждый третий кадр анализатора. Естественно, в этом случае необходимо использовать раздельную анимацию, при которой анализатор визуализируется с альфа-каналом для последующего совмещения его с остальной композицией в программе постобработки или в модуле Video Post (Видеомонтаж). При добавлении такой анимации в качестве нового слоя необходимо увеличить в три раза отображение каждого кадра. В модуле Video Post (Видеомонтаж) это делается с помощью параметра Multiplier (Усилитель) в окне Image File List Control (Файл контроля списка изображений) при выборе последовательности кадров. Улучшить эффект анимации анализатора можно, добавив к анимации эффект Glow (Сияние). Проще всего для этого использовать одну из программ постобработки (например, Combustion), предварительно выполнив послойную визуализацию. Можно также применить модуль Video Post (Видеомонтаж), но в данном случае мы используем для анимации один объект и несколько карт прозрачности, что может создать определенные трудности при непосредственной анимации всей сцены. Для создания такого эффекта можно также применить предварительно визуализированные в отдельном слое кадры с анимацией анализатора. ПРИМЕЧАНИЕ Если у вас возникли трудности с присвоением и настройкой контроллеров, загрузите для анализа файл с готовой анимацией sound_wave_end.max, который находится на прилагаемом DVD в папке Examples\Глава 08\Sound_wave. В папке Video\Глава 08 имеется готовая анимация sound_wave.avi.

364

Глава 8. Анимация сцен

Песочные часы При создании анимации песочных часов нужно будет анимировать три объекта: песок в верхней части колбы, сыплющийся песок и горку песка внизу. Если с сыплющимся песком все более или менее понятно (это может быть только система частиц), то остальной песок можно исполнить различными способами. Наиболее сложной, но и самой реалистичной с точки зрения отображения и контроля может быть анимация, созданная с помощью морфинга (Morph) или булевых вычитаний, с анимацией операндов и их подобъектов. В данном разделе мы рассмотрим более простые, но не менее интересные подходы к анимации песка. Загрузите с прилагаемого к книге DVD файл sandglass_start.max, находящийся в папке Examples\Глава 08\sandglass (рис. 8.115). Прежде всего необходимо смоделировать песок в верхней и нижней частях стеклянной колбы. С учетом особенностей анимации, создадим их различными способами. Начнем с верхнего. Для его моделирования сделайте следующее.

Рис. 8.115. Визуализация модели песочных часов

1. В окне проекции Front (Спереди) выделите стеклянную колбу часов или выберите ее (объект Glass) из списка объектов сцены, воспользовавшись клавишей H.

2.

Создайте копию объекта, выполнив команду ToolsSnapshot (ИнструментыСнимок). В открывшемся окне Snapshot (Снимок) переключатель в области Snapshot (Снимок) должен быть установлен в положение Single (Единичный), а переключатель Clone Method (Метод клонирования) — в положение Mesh (Сетка). Щелкните на кнопке OK.

3.

Используя клавишу H, откройте окно Select From Scene (Выбор из сцены) и выберите в нем созданную копию — объект Glass01.

4.

Перейдите в режим изоляции объекта, для чего воспользуйтесь сочетанием клавиш Alt+Q. В результате в окнах проекций останется только выбранный объект, что облегчит режим его редактирования.

5.

Перейдите на вкладку Modify (Изменение) командной панели и переключитесь в режим редактирования подобъектов Element (Элемент).

6.

В любом из окон проекций щелкните на объекте Glass01, в результате чего выделится внешняя поверхность стекла (стекло имеет толщину).

7.

Удалите выделенный элемент, нажав клавишу Delete.

8.

Снова щелкните на объекте для выделения внутренней поверхности стекла и в области Normals (Нормали) свитка Surface Properties (Свойства поверхности) нажмите кнопку Flip (Обратить). Таким образом мы установим правильное

365

Песочные часы

направление нормалей (у внутренней поверхности стекла они были обращены внутрь). 9.

Перейдите на уровень редактирования вершин, выделите нижнюю половину оставшейся внутренней поверхности стекла и удалите ее.

10.

Используя инструмент Select and Uniform Scale (Выделить и равномерно мас, масштабируйте три или четыре нижних ряда вершин таким штабировать) образом, чтобы получилась замкнутая форма (причем нижний ряд необходимо свести в точку), и, используя кнопку Selected (Выделенное) в области Weld (Слияние) свитка Edit Geometry (Редактирование геометрии), объедините образующие форму вершины (рис. 8.116).

Рис. 8.116. Нижняя часть отредактированного объекта

11.

Выйдите из режима редактирования вершин, повторно щелкнув в свитке Selection (Выделение) на кнопке Vertex (Вершина) .

12.

Установите режим использования центра трансформаций на середину выделения, для чего щелкните на кнопке Use Selection Center (Использовать центр главной панели инструментов. выделения)

13.

Используя инструмент Select and Uniform Scale (Выделить и равномерно мас, уменьшите объект на небольшую величину (например, до штабировать) 99,5 %).

ВНИМАНИЕ Необходимость масштабирования вызвана тем, что в результате копирования и редактирования поверхности стекла большинство полигонов объекта-источника и объектакопии стали располагаться в пространстве абсолютно одинаково, что при визуализации стекла неизбежно вызовет артефакты на поверхности.

366

Глава 8. Анимация сцен

Для окончания редактирования этого объекта дайте ему более понятное имя, например Sand_top, и присвойте ему материал песка. Используя клавишу M, откройте редактор материалов, выберите материал Sand и перетащите его на объект Sand_top в одном из окон проекций. Затем вернитесь к отображению полной сцены, для чего щелкните на кнопке Exit Isolation Mode (Выйти из режима изолирования). Анимируем построенный объект следующим образом. 1.

Выделите объект Sand_top, если он не остался выделенным.

2.

Назначьте ему модификатор Slice (Сечение), выполнив команду Modifiers Parametric DeformersSlice (МодификаторыПараметрические деформации Сечение).

3.

В свитке Slice Parameters (Параметры сечения) установите переключатель в положение Remove Top (Отсечь верх).

4.

Перейдите на уровень редактирования подобъектов модификатора Slice (Сечение), для чего в стеке модификаторов щелкните на плюсике рядом с именем модификатора и выберите строку Slice Plane (Секущая плоскость).

5.

Используя инструмент Select and Rotate (Выделить и повернуть), в окне проекции Left (Слева) поверните секущую плоскость на 90° по оси X или Y и передвиньте ее вверх так, чтобы она заняла горизонтальное положение в середине объекта Sand_top (рис. 8.117).

Рис. 8.117. Положение секущей плоскости в пространстве и ее параметры

ПРИМЕЧАНИЕ Секущую плоскость необходимо повернуть потому, что объект, имитирующий стекло, строился с помощью вращения кривой контура в окне проекции Front (Спереди). В результате скопированный и отредактированный объект Sand_top унаследовал локальную систему координат объекта-предка.

Песочные часы

367

Анимируем секущую плоскость таким образом, чтобы она с течением времени срезала все большую часть объекта Sand_top. 1.

Передвиньте ползунок таймера анимации в 280 кадр.

2.

Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto Key (Автоключ), в результате чего кнопка выделится цветом .

3.

Передвиньте секущую плоскость вниз так, чтобы она оказалась в середине стеклянной колбы, а песок в верхней части часов был полностью отрезан секущей плоскостью. В результате будет создано два ключа анимации: в нулевом и 280 кадре.

4.

Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

5.

Проверьте выполненную анимацию, передвинув ползунок таймера вдоль шкалы. Если все было сделано правильно, то вы увидите, как песок начинает уменьшаться в объеме по мере прохождения кадров.

Два небольших штриха помогут нам получить законченную анимацию. Отредактируйте кривую анимации. Для этого откройте редактор кривых, выполнив команду Graph EditorsTrack View — Curve Editor (Редакторы графовПросмотр треков — редактор кривых). В левой части открывшегося окна выберите объект Sand_top и далее строку с именем Y Position (Положение по оси Y). В результате в правой части окна Track View — Curve Editor (Просмотр треков — редактор кривых) появится кривая. Манипулятор второй точки необходимо опустить вниз, чтобы получилась плавная кривая, постепенно поднимающаяся вверх (рис. 8.118).

Рис. 8.118. Кривая анимации положения секущей плоскости

В результате по мере уменьшения диаметра стекла песок будет быстрее уменьшаться в объеме, так же, как это было бы в реальных песочных часах. И последнее, что необходимо сделать для объекта Sand_top, — применить к нему модификатор Cap Holes (Накрыть отверстия), чтобы закрыть дыру, образованную секущей плоскостью (рис. 8.119).

368

Глава 8. Анимация сцен

Теперь можно переходить к моделированию песка внизу. Воспользуемся объектом Top, который создан с помощью вращения профиля кривой. Он до сих пор был спрятан и не показывался в окнах проекций. Для его отображения перейдите на вкладку Display (Отображение) командной панели и в свитке Hide (Спрятать) щелкните на кнопке Unhide All (Отобразить все). Учитывая форму стекла часов, песок в нижней части проще всего анимировать с помощью булевой операции. 1. Используя горячую клавишу H, откройте окно Select From Scene (Выбор из сцены) и выберите в нем объект Glass. Рис. 8.119. Стек модификаторов объекта Sand_top

2. Скопируйте его с помощью команды Snapshot (Снимок) меню Tools (Инструменты) таким же образом, как мы это делали для песка в верхней части часов. 3. Еще раз откройте окно Select From Scene (Выбор из сцены) и выберите в нем объекты Glass01 (скопированный объект) и Top.

4.

Перейдите в режим изолированного отображения объектов, нажав сочетание клавиш Alt+Q, и выделите объект Glass01.

5.

Откройте вкладку Modify (Изменение) командной панели и перейдите в режим редактирования подобъектов Element (Элемент).

6.

В любом из окон проекций щелкните на объекте Glass01, в результате чего выделится внешняя поверхность стекла. Удалите выделенный элемент.

7.

Снова щелкните на объекте Glass01 для выделения внутренней поверхности стекла и в области Normals (Нормали) свитка Surface Properties (Свойства поверхности) нажмите кнопку Flip (Обратить).

СОВЕТ Дальнейшие действия, связанные с выполнением булевых операций над объектами, могут вызвать сбой в работе программы или нежелательный эффект. В связи с этим настоятельно рекомендую сохранить файл перед выполнением данной операции.

8.

Выполните команду CreateCompoundBoolean (СозданиеСоставные объектыБулев), в результате чего на командной панели появятся свитки для работы с составным объектом.

9.

Щелкните на кнопке Pick Operand B (Указать операнд Б) и в одном из окон проекций выберите объект Top.

10.

В свитке Parameters (Параметры) установите переключатель Operation (Операция) в положение Intersection (Пересечение).

11.

Уменьшите немного масштаб объекта, воспользовавшись инструментом Select and Uniform Scale (Выделить и равномерно масштабировать) . Как я уже

369

Песочные часы

говорил, такое уменьшение предотвратит появление артефактов при визуализации. 12.

Используя описанные выше действия, примените к построенному объекту материал песка Sand.

13.

Переименуйте построенный объект в Sand_bottom и вернитесь к отображению полной сцены, для чего щелкните на кнопке Exit Isolation Mode (Выйти из режима изолирования).

Сцена на данном этапе моделирования и анимации показана на рис. 8.120. Анимируем построенный объект. Это можно сделать, анимировав перемещение одного из операндов в вертикальной плоскости. 1.

Перейдите на вкладку Modify (Изменение) командной панели и переключитесь в режим редактирования подобъектов, выделив строку Operands (Операнды).

2.

В области Operands (Операнды) свитка Pick Boolean (Указать булев объект) выделите операнд Top (рис. 8.121).

3.

Передвиньте ползунок таймера анимации в 20 кадр и включите запись ключей анимации, воспользовавшись кнопкой Auto Key (Автоключ) .

4.

Используя инструмент Select and Move (Выделить и переместить) главной панели инструментов, переместите операнд Top вниз на такую величину, чтобы он скрылся за нижней кромкой стекла.

Рис. 8.120. Объекты сцены в нулевом кадре на данном этапе моделирования

Рис. 8.121. Свиток Pick Boolean (Указать булев объект) настроек объекта Sand_bottom

370

Глава 8. Анимация сцен

5.

Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

6.

Выделите ключ, автоматически созданный в нулевом кадре, и переместите его в последний (300) кадр шкалы анимации.

7.

Запустите воспроизведение анимации, воспользовавшись кнопкой Play Animation (Воспроизвести анимацию), и проверьте правильность выполненных действий: верхняя часть песка должна уменьшаться, а нижняя, наоборот, увеличиваться.

С нулевого по 20 кадр песок будет падать, пока не достигнет дна стеклянной колбы. Именно тогда он начнет накапливаться в нижней части часов (это мы сделали, анимировав операнд Top). Аналогичным образом мы создали анимацию и для верхней горки песка, закончив ее анимацию в 280 кадре. Оставшееся время песок находится в полете. ПРИМЕЧАНИЕ При желании вы можете воспользоваться редактором кривых и подкорректировать кривую анимации операнда Top с таким расчетом, чтобы с течением времени скорость его отображения постепенно замедлялась. Это делается способом, описанным ранее для анимации секущей плоскости.

Перейдем к третьей фазе анимации часов: созданию системы частиц, изображающих песчинки в полете. Начнем с построения основного и вспомогательных объектов сцены. Нам понадобятся система частиц, объект, который будет играть роль излучателя частиц, и два объекта пространственных деформаций. 1.

Выполните команду CreateParticlesPArray (СозданиеЧастицыМассив частиц) главного меню и в произвольном месте окна проекции Top (Сверху) постройте значок массива частиц.

2.

С помощью команды CreateSpaceWarpsForcesGravity (СозданиеПространственные деформацииСилыСила тяжести) главного меню в произвольном месте окна проекции Top (Сверху) постройте значок силы тяжести.

3.

Выполните команду CreateSpaceWarpsDeflectorsUDeflector (СозданиеПространственные деформацииОтражателиU-отражатель) главного меню и снова воспользуйтесь окном проекции Top (Сверху) для построения значка отражателя частиц.

4.

С помощью команды главного меню CreateStandard PrimitivesCylinder (СозданиеПростые примитивыЦилиндр) постройте в окне проекции Top (Cверху) цилиндр с высотой, равной 0, и диаметром, соответствующим размеру внутреннего отверстия стекла в самом узком месте. Сразу же расположите построенный цилиндр в месте предполагаемого излучения частиц — немного выше середины стеклянной колбы (объект Glass).

На рис. 8.122 представлены созданные объекты в окне проекции Top (Сверху).

Песочные часы

371

Рис. 8.122. Вспомогательные объекты в окне проекции Top (Сверху)

Все готово для выполнения анимации сыплющегося песка. Начнем с настройки системы частиц. 1.

В окне проекции Top (Сверху) выделите значок системы частиц (объект PArray01) и перейдите на вкладку Modify (Изменение) командной панели.

2.

В свитке Basic Parameters (Базовые параметры) щелкните на кнопке Pick Object (Указать объект) и выберите в качестве излучателя построенный цилиндр.

СОВЕТ Для выбора труднодоступных или небольших объектов сцены лучше всего использовать окно Select From Scene (Выбор из сцены), которое можно вызвать, щелкнув на кнопке Select by Name (Выделить по имени) или нажав клавишу H.

3.

Привяжите к системе частиц гравитацию, для чего на главной панели инструментов нажмите кнопку Bind to Space Warp (Связать с воздействием) и в окне проекции Top (Сверху) щелкните кнопкой мыши сначала на значке системы частиц (PArray01), а затем на значке силы тяготения (Gravity01).

4.

Аналогичным образом привяжите систему частиц к отражателю (UDeflector01), указав соответствующий значок в одном из окон проекций.

ПРИМЕЧАНИЕ Необходимость связать на данном этапе систему частиц с воздействием вызвана тем, что настройка поведения частиц во времени зависит от ряда параметров и должна выполняться комплексно, с учетом силы тяготения.

372 5.

6.

Глава 8. Анимация сцен

Вернитесь к настройкам объекта PArray01 (выделив в стеке модификаторов соответствующую строку) и в свитке Particle Generation (Генерация частиц) задайте параметрам следующие значения: •

параметру Use Rate (Использовать коэффициент) в области Particle Quantity (Количество частиц) — 50;



всем параметрам в области Particle Motion (Движение частиц) — 0;



в области Particle Timing (Время частиц) установите такие значения: Emit Start (Начало излучения) — 0, Emit Stop (Конец излучения) — 280, Display Unit (Отображение единиц) — 300, а Life (Время жизни) — 20;



параметру Size (Размер) в области Particle Size (Размер частиц) — 0,36 мм.

Переключатель Standard Particles (Типовые частицы) в свитке Particle Type (Тип частиц) установите в положение Cube (Куб).

ВНИМАНИЕ Приведенные выше значения могут существенно отличаться от того, что необходимо задать в вашем случае. Это зависит не только от размера объектов сцены, но и от масштаба и используемых системных единиц (System Units).

Рассмотрим выполненные настройки. Начиная с нулевого кадра каждый кадр генерируется по 50 частиц, каждая из которых после 20 кадров исчезнет. Такое излучение частиц будет продолжаться до 280 кадра, а затем прекратится, но оставшиеся частицы будут продолжать двигаться, пока в 300 кадре не исчезнут полностью. Для завершения настройки анимации частиц необходимо подкорректировать параметры гравитации и отражения частиц следующим образом. 1.

Передвиньте ползунок таймера анимации в 20 кадр. В этом кадре по нашему замыслу частицы долетят до дна колбы, и с этого же кадра начнет расти горка песка в нижней части часов.

2.

В окне проекции Top (Сверху) выделите значок объекта Gravity01 и перейдите на вкладку Modify (Изменение) командной панели.

3.

В области Force (Сила) свитка Parameters (Параметры) задайте параметру Strength (Сопротивление) значение с таким расчетом, чтобы нижние частицы достигали дна колбы (рис. 8.123). В моем случае это значение равно 0,13.

4.

В окне проекции Top (Сверху) выделите значок объекта UDeflector01 и перейдите на вкладку Modify (Изменение) командной панели.

5.

В свитке Basic Parameters (Базовые параметры) щелкните на кнопке Pick Object (Указать объект) и выберите в качестве отражателя частиц объект Sand_ bottom.

6.

В области Particle Bounce (Отскоки частиц) свитка Basic Parameters (Основные параметры) установите следующие значения параметров: Bounce (Отскоки) — 0,1; Friction (Сила трения) — 20; оставшиеся значения должны быть равны нулю.

373

Песочные часы

Таким образом, частицы, попадая на растущую горку песка, будут отскакивать от нее на небольшую величину, постепенно исчезая (рис. 8.124). Запустите воспроизведение анимации и проверьте правильность выполненных действий.

Рис. 8.123. Положение частиц в 20 кадре анимации

Рис. 8.124. Поведение частиц в 160 кадре анимации

374

Глава 8. Анимация сцен

Присвойте частицам материал песка. Для этого откройте редактор материалов, нажав клавишу M, выберите материал с именем Sand и перетащите его на значок PArray01 в одном из окон проекций. Теперь можно визуализировать последовательность кадров с дальнейшей сборкой их в одной из программ постобработки или сразу создать файл анимации. На рис. 8.125 представлен кадр из анимации, выполненной с применением модификатора Noise (Зашумление) для создания неравномерности в верхней и нижней горках песка.

ПРИМЕЧАНИЕ Рис. 8.125. Визуализация песочных часов, выполненных с применением системы частиц

При возникновении трудностей с настройкой анимации системы частиц воспользуйтесь файлом sandglass_ end.max, находящимся на прилагаемом к книге DVD в папке Examples\Глава 08\Sandglass. В папке Video\ Глава 08 имеется готовая анимация sandglass.avi.

Текст, уносимый порывами ветра На примере, описанном в данном разделе, я покажу, как простыми средствами можно получить эффект рассеивания, применяемый при анимации природных или иных явлений. Одним из вариантов такой анимации может служить сигаретный дым. Для выполнения упражнения нам понадобится простая сцена — какой-нибудь объект, например текст (рис. 8.126). Для анимации нужно будет создать не только систему частиц, но и силы, действующие на эти частицы. Для построения вспомогательных объектов сделайте следующее. 1.

Выполните команду главного меню CreateSpaceWarpsDeflectorsSDeflector (СозданиеПространственные деформацииОтражателиСферический отражатель) и в окне проекции Top (Сверху) постройте значок объекта.

2.

Используя инструмент Select and Move (Выделить и переместить), расположите значок в середине текста.

3.

Активизируйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) и масштабируйте значок SDeflector01 таким образом, чтобы он оказался немного больше объекта Text01 (рис. 8.127).

4.

Создайте три объекта Wind (Ветер). Для этого выполните команду CreateSpaceWarpsForcesWind (СозданиеПространственные деформацииСилыВетер) и постройте значки в окне проекции Top (Сверху).

Текст, уносимый порывами ветра

375

Рис. 8.126. Текст, подготовленный для выполнения упражнения

Рис. 8.127. Расположение значка отражателя SDeflector01 относительно объекта Text01

5.

Выделите один из построенных объектов Wind (Ветер). Используя инструмент Select and Move (Выделить и переместить), переместите его так, чтобы он находился слева от текста. С помощью инструмента Select and Rotate (Выделить и повернуть) поверните значок Wind (Ветер) на 90° таким образом, чтобы направление ветра приходилось на текст (рис. 8.128).

376

Глава 8. Анимация сцен

Рис. 8.128. Расположение значков ветра и их ориентация в окне проекции Front (Спереди)

6.

Создайте еще один вспомогательный объект — Drag (Помеха). Для этого выполните команду CreateSpaceWarpsForcesDrag (СозданиеПространственные деформацииСилыПомеха) и постройте объект в произвольном месте окна проекции Top (Сверху).

Анимируем отражатель следующим образом. 1.

Передвиньте ползунок таймера в 5 кадр анимации.

2.

Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto Key (Автоключ), в результате чего кнопка выделится цветом .

3.

Выделите отражатель (объект SDeflector01) и в окне проекции Front (Спереди) передвиньте его вправо на такое расстояние, чтобы он оказался за пределами текста.

4.

Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).

5.

Выделите ключ, созданный автоматически в нулевом кадре, и передвиньте его в последний кадр строки треков (в моем случае это 200 кадр).

6.

Проверьте созданную анимацию. В 1 кадре отражатель SDeflector01 должен находиться за пределами текста, а начиная с 5 кадра — перемещаться на текст, полностью перекрывая его.

Создадим систему частиц и необходимые операторы. Выполним все эти действия с помощью окна Particle View (Окно системы частиц), которое можно открыть, выполнив команду Graph EditorsParticle View (Графические редакторыОкно системы частиц). В окне Particle View (Окно системы частиц) сделайте следующее.

Текст, уносимый порывами ветра

1.

377

Для создания излучателя частиц перетащите из списка операторов, находящегося в нижней части окна, в окно событий объект Empty Flow (Пустой поток) (рис. 8.129).

Рис. 8.129. Окно Particle View (Окно системы частиц) с построенным излучателем частиц PF Source (Источник потока частиц)

2.

В окно событий также перетащите оператор Birth (Рождение), который автоматически создаст список событий с оператором отображения частиц.

3.

Свяжите список событий с источником частиц, для чего щелкните на выступающем круглом элементе списка событий (в результате вид указателя изменится) и перетащите его на объект PF Source 01. В результате образуется связь между источником частиц и списком событий (рис. 8.130).

4.

Таким же образом добавьте к списку событий следующие операторы: •

Position Object (Положение объекта) — позволяет расположить частицы по форме выбранного объекта;



Shape (Форма) — задает форму отображения частиц при визуализации;



Collision (Столкновения) — позволяет управлять отражателями частиц.

5.

Добавьте к потоку частиц PF Source 01 оператор Material Static (Статический материал) — материал, используемый для отображения частиц при визуализации (рис. 8.131).

6.

Последнее, что необходимо добавить в окно событий, — объект Force (Сила), который связывается с оператором Collision (Столкновения) (рис. 8.132).

378

Глава 8. Анимация сцен

Рис. 8.130. Список событий, связанный с источником частиц

Рис. 8.131. Окно Particle View (Окно системы частиц) после обновления списка событий

Текст, уносимый порывами ветра

379

Рис. 8.132. Окончательный вид окна событий после добавления всех операторов

ПРИМЕЧАНИЕ Создание второго списка событий вызвано тем, что силы, действующие на частицы, должны инициироваться в области воздействия отражателя SDeflector01, а не на весь объект PF Source 01.

Займемся настройкой параметров системы частиц. Начнем со списка событий Event 01. Выделите оператор Birth 01 (Рождение 01), в результате чего в правой части окна Particle View (Окно системы частиц) появится свиток Birth 01 (Рождение 01). В этом свитке установите значения параметров Emit Start (Начало излучения) и Emit Stop (Конец излучения) равными нулю, а Amount (Величина) — 40 000. Это будет означать, что сразу все частицы будут генерироваться в нулевом кадре анимации. Выделите оператор Position Object 01 (Положение объекта 01). В области Emitter Objects (Объекты-источники) свитка его настроек в правой части окна Particle View (Окно системы частиц) щелкните на кнопке By List (Из списка). В открывшемся окне выберите объект Text01. В результате частицы покроют объект Text01, расположившись на его поверхности. Объект Text01 не должен участвовать в визуализации, поэтому его можно спрятать. Для этого выделите его в одном из окон проекций, щелкните правой кнопкой мыши и выберите в контекстном меню команду Hide Selection (Спрятать выделенное).

380

Глава 8. Анимация сцен

СОВЕТ Исключить объект из визуализации можно и другим способом — сняв в области Rendering Control (Контроль визуализации) окна свойств объекта флажок Renderable (Визуализируемый).

Следующий оператор, который нужно настроить, — Shape 01 (Форма 01). Выделите его и в свитке Shape 01 (Форма 01) выберите из списка Shape (Форма) строку Cube (Куб), а параметру Size (Размер) задайте значение 0,4. Еще один оператор в списке событий Event 01 (Событие 01), требующий настройки, — Collision 01 (Столкновение 01). Выделите его, в свитке его параметров щелкните на кнопке By List (Из списка) и выберите объект SDeflector01 из списка появившегося окна. В свитке Collision 01 (Столкновение 01) выберите из раскрывающегося списка Speed (Скорость) строку Continue (Продолжать). Таким образом, частицы при столкновении с отражателем будут продолжать свое движение. Перейдите ко второму списку событий Event 02 (Событие 02). Выделите в этом списке событие Force 01 (Сила 01). В свитке его настроек в правой части окна Particle View (Окно системы частиц) щелкните на кнопке By List (Из списка) и выберите в раскрывшемся окне все объекты: три объекта, имитирующих ветер, и объект Drag (Помеха). Остался последний оператор, требующий настройки, — Material Static 01 (Статический материал 01). Для присвоения частицам материала, который будет отображаться в окнах проекций, сделайте следующее. 1.

Откройте редактор материалов, для чего воспользуйтесь клавишей M.

2.

Выберите любой свободный материал и задайте параметру Diffuse (Рассеивание) цвет, отличный от черного (по умолчанию черным является цвет фона).

3.

Задайте параметру в области Self-Illumination (Собственное свечение) значение 100.

4.

Присвойте материалу какое-нибудь значимое имя, например particle.

5.

Вернитесь к окну Particle View (Окно системы частиц) и выберите оператор Material Static 01 (Статический материал 01).

6.

В свитке Material Static 01 (Статический материал 01) в правой части окна Particle View (Окно системы частиц) щелкните на кнопке None (Отсутствует).

7.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) установите переключатель Browse From (Просмотреть из) в положение Mtl Editor (Редактор материалов) и выберите из списка материал с именем particle (рис. 8.133).

Если сейчас переместить ползунок таймера анимации, то вы увидите, как при наезде значка отражателя на текст начинается рассеивание частиц, находящихся в этом месте. Пока это не совсем то, что нам нужно, так как на частицы действуют слишком большие силы. В связи с этим необходимо подкорректировать параметры объектов Wind (Ветер) и Drag (Помеха). Начнем с параметров ветра. Они должны быть совсем небольшими, чтобы ветер лишь отрывал частицы от генерирующего

381

Текст, уносимый порывами ветра

их объекта и уносил на небольшое расстояние. На рис. 8.134 показаны примерные настройки ветра, причем Wind01 и Wind02 действуют в вертикальной плоскости, и Wind03 — в горизонтальной и направлен в сторону текста. Для объекта Drag (Помеха) существенными являются характеристики затухания, настройки которого находятся в области Damping Characteristics (Характеристики затухания) свитка Parameters (Параметры). Установите переключатель в этой области в положение Linear Damping (Линейное затухание) и параметрам X Axis (Ось X), Y Axis (Ось Y) и Z Axis (Ось Z) задайте значения 20, 15 и 7 соответственно.

ПРИМЕЧАНИЕ Как и настройки ветра, характеристики затухания для создания требуемого эффекта подбираются опытным путем. Вы можете попробовать задать другие значения параметров и создать собственное поведение частиц в процессе анимации.

а

б

Рис. 8.133. Окно Material/Map Browser (Окно выбора материалов и карт) с выбранным материалом

в

Рис. 8.134. Настройки объектов Wind01 (а), Wind02 (б) и Wind03 (в)

382

Глава 8. Анимация сцен

При анимации частиц такого рода очень уместно использовать эффект размытия в движении. Такой эффект появляется при съемке движения реальной камерой или фотоаппаратом, так как за то время, пока шторка аппарата находится в открытом состоянии, движущийся объект проходит некоторое расстояние и в результате его границы размываются. В 3ds Max такой эффект можно создать несколькими способами, мы рассмотрим самый простой и быстрый с точки зрения визуализации. 1.

Откройте окно редактирования системы частиц, выполнив команду меню Graph EditorsParticle View (Графические редакторыОкно системы частиц).

2.

В окне событий выделите PF Source 01, щелкнув на нем. В результате цвет контура объекта изменится на белый. Щелкните на нем правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства) (рис. 8.135).

Рис. 8.135. Контекстное меню объекта PF Source 01

3.

В области Motion Blur (Размытие движения) открывшегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение), задайте параметру Multiplier (Усилитель) значение 12 и проследите, чтобы флажок Enable (Включить) был установлен.

4.

Откройте окно Render Setup (Настройки визуализации), для чего воспользуйтесь клавишей F10, и перейдите на вкладку Renderer (Визуализатор).

5.

В области Image Motion Blur (Размытие картинки в движении) установите флажок Apply (Применить).

Текст, уносимый порывами ветра

383

На рис. 8.136 показан кадр из анимации, выполненной в данном разделе.

Рис. 8.136. Визуализация 48 кадра анимации

ПРИМЕЧАНИЕ В папке Examples\Глава 08\Text_dispersion прилагаемого к книге DVD находится файл описанной сцены text_dispersion.max. В папке Video\Глава 08 имеется готовая анимация dispertion.avi.

Глава 9.

Практическое моделирование • Натюрморт • Моделирование лофт-объектов • Моделирование штор • Полигональное моделирование телефонной трубки • Моделирование микроволновой печи • Комплексный подход к моделированию: создание крана для ванной • Забавная лошадка

Нет ничего более увлекательного при работе с программами трехмерного моделирования, чем создание объектов сцены. Именно в процессе моделирования обретают форму фантазии и мечты. Нестоит говорить о том, что для создания модели, способной удивить зрителя, надо обладать большим терпением и определенным багажом знаний. В этой главе вы научитесь основным приемам моделирования, начиная с простых упражнений и постепенно переходя к решению более сложных задач. Мы рассмотрим сплайновое, полигональное, Surface- и NURBS-моделирование. Полученные в этой главе знания помогут вам создавать более сложные модели, о которых пойдет речь в следующих главах. Эти базовые знания станут основой для моделирования автомобиля и головы персонажа, о которых пойдет речь в третьей части книги.

Натюрморт Изучая моделирование трехмерных объектов, мы стремимся создавать большие и сложные работы, но оказывается, что простыми средствами можно добиться вполне приемлемых результатов. Ключ к успеху не только в том, чтобы модель или сцена была сложной, но и в том, как подать эту сцену, как расположить источники света и выполнить текстурирование. Рассмотрим упражнение по моделированию натюрморта простыми и доступными всем средствами программы 3ds Max. На рис. 9.1 показан результат визуализации сцены, выполненной с использованием инструментов и модификаторов, доступных еще со второй версии программы.

Рис. 9.1. Натюрморт

Если внимательно посмотреть на эту сцену, то можно увидеть, что все объекты выполнены на основе примитивов или с помощью стандартных модификаторов

386

Глава 9. Практическое моделирование

и не представляют большой сложности в исполнении. Центральное место всей композиции занимает бронзовая ваза — с нее и начнем моделирование. Вы уже знаете, что проще всего симметричные предметы, имеющие ось вращения, строить с использованием модификатора Lathe (Вращение). Не станет исключением и ваза для фруктов. Начнем моделирование с построения ее профиля с помощью сплайна. Для этого сделайте следующее. 1.

Выполните команду CreateShapesLine (СоздатьФормыЛиния) и в окне проекции Front (Спереди) начните построение сплайна формы вазы (рис. 9.2).

Рис. 9.2. Профиль будущей вазы

СОВЕТ Начинайте построение формы профиля для тела вращения с вертикальной линии, определяя таким образом начальную и конечную точки сплайна, постепенно добавляя новые вершины (команда Refine (Уточнить)) и редактируя их положение в пространстве. Кроме того, можно строить профиль, последовательно создавая вершины от начала до конца. В этом случае необходимо следить за тем, чтобы первая и последняя вершины сплайна находились на оси вращения, для чего используйте привязки к сетке.

2.

Примените к построенному сплайну модификатор Lathe (Вращение), для чего выполните команду ModifiersPatch/Spline EditingLathe (МодификаторыРедактирование патчей/сплайновВращение).

3.

В области Align (Выравнивание) свитка Parameters (Параметры) щелкните на кнопке Min (Минимум), чтобы установить ось вращения по левой стороне объекта. При необходимости установите флажок Flip Normals (Обратить нормали).

Натюрморт

387

ПРИМЕЧАНИЕ Вполне возможно, что вам понадобится выбрать другой тип выравнивания, все зависит от того, как построена кривая профиля.

4.

Параметру Segments (Количество сегментов) свитка Parameters (Параметры) задайте значение от 30 до 40, чтобы избежать неровностей на краях построенного объекта.

5.

При необходимости перейдите в стеке модификаторов на уровень редактирования кривой и, нажав кнопку Show end result on/off toggle (Показать конечный результат вкл/выкл), которая находится под стеком модификаторов, измените форму кривой так, чтобы получить приемлемый результат (рис. 9.3).

Рис. 9.3. Ваза, построенная с помощью модификатора Lathe (Вращение)

Ваза построена, пришло время наполнить ее фруктами. Вспомните процесс моделирования яблока, рассмотренный в гл. 2. В том случае мы строили параметрический объект Sphere (Сфера) и с помощью плавного выделения изменили положение выделенных вершин, чтобы получить форму яблока. После этого для придания модели большей реалистичности применили модификатор Noise (Шум). Еще одним простым способом построения модели яблока может быть применение модификатора Lathe (Вращение), который мы только что использовали для создания вазы. Для построения модели яблока сделайте следующее. 1.

В окне проекции Front (Спереди) постройте сплайн формы яблока уже известным вам способом (рис. 9.4).

388

Глава 9. Практическое моделирование

Рис. 9.4. Профиль для построения модели яблока

2.

Примените к сплайну модификатор Lathe (Вращение). В свитке Parameters (Параметры) настроек модификатора задайте значения параметров, аналогичные тем, которые применялись для построения вазы.

3.

При необходимости вернитесь на уровень редактирования вершин сплайна и уточните форму профиля.

4.

Примените к объекту модификатор Noise (Шум) для создания неровностей на поверхности модели, для чего из списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Noise (Шум).

5.

В свитке Parameters (Параметры) настроек модификатора Noise (Шум) задайте параметру Scale (Масштаб) значение, равное 100, а параметрам X, Y и Z области Strength (Численность) — 175, 140 и 135 соответственно (рис. 9.5).

Осталось добавить яблоку небольшой хвостик. 1.

Создайте объект Cylinder (Цилиндр), для чего выполните команду Create Standard PrimitivesCylinder (СозданиеПростые примитивыЦилиндр) и в окне проекции Top (Сверху) постройте цилиндр в месте крепления хвостика к яблоку.

2.

В окне проекции Front (Спереди) с помощью инструмента Select and Move (Выделить и переместить), который находится на панели инструментов, переместите построенный объект в вертикальной плоскости так, чтобы он занял свое место в углублении яблока.

3.

При необходимости уточните значения радиуса и высоты цилиндра в свитке Parameters (Параметры). Они должны иметь пропорции, соответствующие размеру яблока.

389

Натюрморт

Рис. 9.5. Модель яблока после применения модификатора Noise (Шум)

4.

В свитке Parameters (Параметры) настроек цилиндра задайте параметру Height Segments (Количество cегментов по высоте) значение, равное 10. Это позволит в дальнейшем получить равномерный изгиб объекта.

5.

Примените к построенному цилиндру модификатор Taper (Заострение).

6.

Закончите построение хвостика применением модификатора Bend (Изгиб) (рис. 9.6).

Рис. 9.6. Модель яблока с хвостиком

390

Глава 9. Практическое моделирование

Таким образом, мы построили модель яблока. Однако для создания натюрморта одной модели будет мало. С помощью модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) можно легко это исправить, создав яблоко другой формы. 1.

Скопируйте модель яблока вместе с хвостиком, для чего выделите оба объекта и, удерживая нажатой клавишу Shift, в окне проекции Top (Сверху) переместите объекты в сторону. В появившемся окне Clone Options (Параметры клонирования) укажите Copy (Копия).

2.

Выделите модель яблока и примените к ней модификатор FFD Box (Произвольно деформируемый контейнер (прямоугольный)), для чего выполните команду ModifiersFree Form DeformersFFD Box (МодификаторыПроизвольные деформацииПроизвольно деформируемый контейнер (прямоугольный)).

3.

В области Dimensions (Размеры) свитка FFD Parameters (Параметры произвольно деформируемого контейнера) щелкните на кнопке Set Number of Points (Установить количество точек) и в появившемся окне Set FFD Dimensions (Установить размеры произвольно деформируемого контейнера) задайте всем параметрам значение, равное 5.

4.

В стеке модификаторов перейдите на уровень редактирования подобъектов Set Volume (Установить объем) и, используя инструмент масштабирования Select and Uniform Scale (Выделить и равномерно масштабировать) , откорректируйте форму произвольно деформируемого контейнера так, чтобы она в общих чертах повторяла форму яблока (рис. 9.7).

Рис. 9.7. Форма произвольно деформируемого контейнера (слева) и окно стека модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) (справа)

391

Натюрморт

5.

В стеке модификаторов перейдите на уровень редактирования подобъектов Control Points (Контрольные точки) и выделите в верхнем ряду четыре вершины, равноудаленные от центра.

6.

Используя инструмент Select and Move (Выделить и переместить) , переместите выделенные точки немного вверх, формируя модель яблока в области хвостика (рис. 9.8).

Рис. 9.8. Результат формирования верхней части яблока

7.

Выделите в нижнем ряду такие же четыре точки произвольно деформируемого контейнера и сместите их немного вниз для получения окончательной формы яблока (рис. 9.9).

Теперь можно сгруппировать яблоко и хвостик (в первом и втором вариантах), чтобы иметь возможность манипулировать группой и сделать несколько копий для натюрморта.

СОВЕТ Сделав две-три копии объекта, можно изменить форму этих копий, вернувшись к параметрам модификатора Noise (Шум) или FFD Box (Произвольно деформируемый контейнер (прямоугольный)) в стеке модификаторов и сделав там соответствующие изменения.

Создадим модель груши. Процесс построения этой модели совершенно такой же, как для яблока: начинаем с построения профиля с помощью сплайна, затем применяем модификатор Lathe (Вращение) и, наконец, уточняем форму модели с помощью

392

Глава 9. Практическое моделирование

модификатора Noise (Шум) или FFD Box (Произвольно деформируемый контейнер (прямоугольный)) (рис. 9.10).

Рис. 9.9. Окончательная модель яблока

Рис. 9.10. Модель груши

Рассмотрим процесс построения виноградной грозди. На самом деле нам понадобится создать лишь стебель и одну ягоду, скопировав которую получим целую гроздь.

393

Натюрморт

Для построения модели винограда сделайте следующее. 1.

В окне проекции Top (Сверху) постройте объект Sphere (Сфера).

ПРИМЕЧАНИЕ При построении сплайнов для вазы, яблока и груши мы не учитывали реальные размеры этих объектов, а лишь ориентировались на их пропорции. По этой причине и с виноградом необходимо поступить точно так же. По размеру сфера должна соответствовать размеру ягоды винограда и быть сопоставимой с размерами созданных ранее объектов.

2.

Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) , масштабируйте сферу в вертикальной плоскости так, чтобы она приобрела вытянутую форму (рис. 9.11). При желании ее можно уточнить, используя дополнительно модификаторы поверхности.

Рис. 9.11. Форма ягоды винограда, построенная из сферы

3.

В окне проекции Front (Спереди) известным вам способом постройте сплайн, который послужит формой пути лофт-объекта для хвостика, находящегося в верхней части ягоды (рис. 9.12).

4.

В окне проекции Top (Сверху) постройте окружность, которая будет являться формой поперечного сечения хвостика, для чего выполните команду Create ShapesCircle (СозданиеФормыОкружность).

5.

Выделите сплайн пути (если он не выделен) и выполните команду Create CompoundLoft (СозданиеСоставные объектыЛофтинговые).

394

Глава 9. Практическое моделирование

Рис. 9.12. Форма сплайна пути для построения лофт-объекта

6.

В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на окружности.

7.

Перейдите на вкладку Modify (Изменить) командной панели и в свитке Deformations (Деформации) щелкните на кнопке Scale (Масштаб), в результате чего откроется окно Scale Deformation (Деформация масштаба).

8.

Измените форму кривой графика так, чтобы сплайн в окне проекции приобрел нужную форму (рис. 9.13).

В результате ягода винограда должна выглядеть, как показано на рис. 9.14.

Рис. 9.13. Окно Scale Deformation (Деформация масштаба) с уточненной формой хвостика

395

Натюрморт

Рис. 9.14. Ягода винограда

Как и в случае с яблоком и грушей, сгруппируйте хвостик и ягоду винограда, а затем создайте примерно 20–25 копий модели. Распределите созданные объекты в пространстве так, чтобы получилась гроздь винограда, лежащая на блюде. Более сложным объектом для моделирования может показаться банан. Но и здесь можно обойтись построением лофт-объекта с последующей деформацией масштаба, аналогично тому, что мы делали для винограда. Чтобы построить модель банана, сделайте следующее. 1.

В окне проекции Top (Сверху) постройте сплайн пути, который представляет собой немного искривленную линию.

2.

В окне проекции Front (Спереди) создайте форму поперечного сечения, для чего выполните команду CreateShapesNGon (СоздатьФормыМногоугольник).

3.

Параметру Sides (Количество сторон) свитка Parameters (Параметры) настроек многоугольника задайте значение, равное 6 (рис. 9.15).

4.

Постройте лофт-объект, для чего выделите сплайн пути и выполните команду CreateCompoundLoft (СозданиеСоставные объектыЛофтинговые).

5.

В свитке Creation Method (Метод создания) настроек лофт-объекта нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на многоугольнике.

6.

В свитке Deformations (Деформации) настроек лофт-объекта на вкладке Modify (Изменение) командной панели щелкните на кнопке Scale (Масштаб). В результате откроется окно Scale Deformation (Деформация масштаба).

396

Глава 9. Практическое моделирование

Рис. 9.15. Сплайны форм пути и поперечного сечения для построения модели банана

7.

С помощью редактирования кривой измените форму сплайна так, чтобы получился банан (рис. 9.16). Редактируя сплайн, контролируйте изменение формы объекта в окнах проекций.

Рис. 9.16. Окно Scale Deformation (Деформация масштаба) с измененной формой банана

8.

Чтобы сгладить резко очерченные грани модели, необходимо применить модификатор Relax (Ослабление), выбрав его из списка модификаторов на вкладке Modify (Изменение).

9.

В свитке Parameters (Параметры) настроек модификатора Relax (Ослабление) подберите такие значения параметров Relax Value (Величина ослабления) и Iterations (Количество итераций), чтобы получилось небольшое сглаживание на краях (рис. 9.17).

В качестве самостоятельного задания создайте дополнительные объекты сцены. Например, сферу можно использовать для моделирования нескольких объектов: апельсина, мандарина, вишен, клубники и даже половинки лимона и киви. При этом для создания мандарина необходимо применить инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), чтобы сжать сферу в вертикальной плоскости, а половинка киви получается после задания параметру Hemisphere

397

Натюрморт

Рис. 9.17. Банан, полученный с использованием составных объектов (слева), и его параметры (справа)

(Полусфера) свитка Parameters (Параметры) настроек сферы значения, равного 0,5. Мандарин, как и некоторые другие объекты, можно построить путем редактирования вершин на уровне подобъектов модификатора Edit Mesh (Редактирование поверхности). В большинстве случаев такой подход дает максимальный контроль над созданием объектов сцены и, как следствие, лучший результат. На рис. 9.18 представлен натюрморт, который получился после создания дополнительных объектов.

Рис. 9.18. Сцена с расставленными объектами

398

Глава 9. Практическое моделирование

Подводя итоги, можно заметить, что очень часто использования стандартных параметрических объектов и простых методов редактирования вполне достаточно для создания хорошей сцены. В следующей главе, посвященной работе с редактором материалов, мы рассмотрим текстурирование созданной в данном упражнении сцены. ПРИМЕЧАНИЕ На прилагаемом к книге DVD в папке Examples\Глава 09\Fruits находится файл сцены fruits.max.

Моделирование лофт-объектов Допустим, необходимо создать объект, напоминающий машиностроительную деталь. Можно моделировать с помощью разбиений, но, как мне кажется, намного легче и проще будет сделать это с помощью лофтинга. Что же такое лофт-объекты? Представьте корпус корабля, разделенный шпангоутами (поперечными ребрами). Это и есть классический пример лофтинга, где в качестве формы пути выступает киль, а поперечных сечений — шпангоуты. Создание лофтобъектов происходит аналогичным способом. Сначала создается сплайн, являющийся путем, на который нанизывается любое количество поперечных сечений (форм). При построении лофт-объектов можно использовать практически любую форму для поперечного сечения или пути. Если соблюдать некоторые несложные ограничения, можно добиться впечатляющих результатов. Рассмотрим эти ограничения. Что касается формы пути, есть лишь одно ограничение — она может состоять только из одного сплайна. Если при попытке использовать сплайн в качестве формы пути 3ds Max отказывается его воспринимать, это первый признак того, что форма содержит более одного сплайна. Ко всем формам поперечного сечения применяется два ограничения:  формы должны содержать одина-

ковое количество сплайнов;  должны иметь одинаковый порядок

Рис. 9.19. Вложенные сплайны

вложения. Если первая форма на пути содержит три сплайна внутри другого сплайна (рис. 9.19), то все последующие формы также должны содержать три сплайна внутри другого сплайна. Впрочем, это ограничение можно обойти, используя разомкнутый внешний сплайн.

399

Моделирование лофт-объектов

Основной недостаток разомкнутых сплайнов — они не могут иметь крышки на концах объектов. По этой причине, если возникает необходимость закрыть торцы такого объекта, приходится использовать модификатор Edit Mesh (Редактирование поверхности) с последующим редактированием вручную или назначать модификатор Cap Holes (Накрытие отверстий). Можно также применять деформацию масштабирования для лофт-объекта, изменяя параметр деформации до 0 % на концах объекта, или любым доступным способом. Часто форма ведет себя необъяснимо из-за эффектов трансформаций, применяемых к исходным объектам. Они игнорируются впоследствии при создании лофт-объекта. Такие трансформации, как Move (Перемещение), Rotate (Вращение) и Scale (Масштабирование), не передаются с формой в лофт-объект (это концептуально заложено в потоковой схеме объекта). Если вам все-таки необходимо (в чем я очень сомневаюсь) произвести какие-либо трансформации, то выполняйте их после применения модификатора XForm (Преобразование). Кроме того, можно изменять форму лофтинга на уровне подобъектов внутри самого лофт-объекта. Формы можно строить в любом окне проекции, однако полезно придерживаться следующих правил: 

форма пути для горизонтальных объектов строится от основания объекта к его верху или от задней части к передней;



формы поперечных сечений строятся в тех окнах проекций, которые наиболее согласуются с видом объекта сверху или спереди.

Таким образом, лучше всего строить формы пути и поперечного сечения в разных окнах проекций. Рассмотрим пример создания простого лофт-объекта — карандаша. Для этого в окне проекции Front (Спереди) создайте четыре сплайна (хотя можно обойтись и тремя) (рис. 9.20). Четвертый сплайн — это копия шестиугольника со сдвинутыми вверх манипуляторами Безье во всех шести точках сплайна. На рис. 9.21 изображена форма, которая получилась у меня в окне проекции Top (Сверху). В окне этой проекции также следует построить сплайн, который будет формой пути для карандаша. После построения всех сплайнов можно приступать к созданию лофт-объекта. Для этого выполните следующие действия.

Рис. 9.20. Сплайны, определяющие профиль модели карандаша

Рис. 9.21. Форма сплайнов в окне проекции Top (Сверху)

400

Глава 9. Практическое моделирование

1.

В окне проекции Top (Сверху) выделите сплайн пути (прямую).

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, и выберите последнюю форму — маленькую окружность.

Теперь лофт-объект похож на карандаш (рис. 9.22). ПРИМЕЧАНИЕ При необходимости обратитесь к файлу упражнения pencil.max, расположенному в папке Examples\Глава 09\Lofts прилагаемого к книге DVD.

Прежде чем приступить к моделированию следующего объекта более сложной формы, необходимо рассмотреть, как согласовать первые вершины каждой формы поперечного сечения.

Рис. 9.22. Карандаш, построенный с помощью объекта Loft (Лофтинговые)

Любой сплайн имеет первую вершину, которая обозначается квадратиком в точке ее расположения. Чтобы не происходило скручивание лофт-объекта от формы к форме, нужно выровнять первые вершины. Делается это одним из двух способов:

401

Моделирование лофт-объектов 

назначая первую вершину в необходимом месте;



вращая сплайн вокруг своей оси в режиме SubObject (Подобъект) модификатора Loft (Лофтинговые), то есть когда он уже принадлежит лофт-объекту (помните, трансформации в лофт-объект не передаются, поэтому нет смысла вращать сам сплайн).

Возьмем для примера два сплайна (окружность и квадрат) и посмотрим, как выглядят несогласованные и согласованные первые вершины у лофтобъекта. На рис. 9.23, слева изображено расположение первых вершин по умолчанию, а на рис. 9.23, справа — результат такого расположения вершин. Если согласовать расположение первых вершин, то получится правильная форма (рис. 9.24). Иначе говоря, если соединить первые вершины, начиная от основания к верху объекта, воображаемыми отрезками, то должна получиться прямая линия. Перейдем к созданию более сложных форм лофт-объектов. Одним из классических примеров сложного объекта является вилка. В данном случае, кроме того, что сплайн имеет более сложную форму, присутствует большее количество сплайнов внутри формы поперечного сечения. Особенность построения такого лофт-объекта заключается в том, что нужно подогнать количество сплайнов внутри каждого поперечного сечения по максимальному количеству сплайнов в форме. Например, в вилке максимальное количество сплайнов поперечного сечения — три (в зубцах вилки — по одному на каждый зубец).

Рис. 9.23. Сплайн с несогласованными вершинами (слева) и объект, построенный на основе такого сплайна (справа)

Рис. 9.24. Сплайн с согласованными вершинами (слева) и лофт-объект, построенный на основе такого сплайна (справа)

Чтобы получить более сглаженную форму, я использовал четыре сплайна (средний овал разделен на два сплайна). Исходя из этого все остальные формы также должны иметь по четыре сплайна.

402

Глава 9. Практическое моделирование

ВНИМАНИЕ Если в процессе построения сложного сплайна появляется перекрученная поверхность, это первый признак того, что расположенные рядом формы имеют различный порядок следования подобъектов. Для лофт-объектов с количеством сплайнов внутри формы больше одного сплайны всех форм должны иметь одинаковый порядок следования сплайнов и вершин. Иначе говоря, лофт-объект строится от первого сплайна: первой вершины формы к первому сплайну, первой вершине второй формы и т. д.

На рис. 9.25 показаны формы поперечных сечений в окне проекции Front (Спереди). На окружностях, образующих ручку, в режиме редактирования Vertex (Вершина) необходимо добавить дополнительные точки, а затем разделить Рис. 9.25. Формы поперечных сечений, сплайн на четыре части (выделить подготовленные для моделирования вилки нужные точки и применить к ним команду Break (Разбить)). То же самое необходимо сделать и с прямоугольником. В процессе создания лофт-объекта можно редактировать как расположение поперечных сечений вдоль пути, так и их форму. Вместе с тем вы можете уточнять форму сплайна пути, поэтому совсем не обязательно все тщательно подгонять с самого начала.

ПРИМЕЧАНИЕ Для более детального ознакомления с формами объекта и расположением сплайнов на форме пути обратитесь к файлу упражнения fork.max, находящемуся в папке Examples\Глава 09\Lofts прилагаемого к книге DVD.

На рис. 9.26 представлена схема расположения поперечных сечений на сплайне.

Рис. 9.26. Вилка, построенная с помощью лофт-объекта

Еще одной замечательной особенностью лофт-объектов является то, что с помощью комбинации разомкнутых и замкнутых сплайнов можно строить поверхности с разрезами и разрывами. Если необходимо построить поверхность со множеством отверстий, то нужно разделить замкнутые формы на равное количество сплайнов (не забывая о согласовании первых вершин и порядке следования

403

Моделирование лофт-объектов

сплайнов внутри формы). На рис. 9.27 показаны сплайны, из которых я смоделировал лофт-объект с разрывом посередине. Рисунок 9.28 дает представление о взаимном расположении сплайнов формы, нанизанных на сплайн пути, и визуализированном изображении лофт-объекта с дырой.

Рис. 9.27. Сплайны формы, подготовленные для моделирования детали с дырой

ПРИМЕЧАНИЕ В папке Examples\Глава 09\Lofts прилагаемого к книге DVD находится файл сцены hole.max.

Рис. 9.28. Схема расположения сплайнов вдоль пути (слева) и результат визуализации объекта с дырой (справа)

Еще одним классическим примером лофт-объекта является ложка. Несмотря на то что, на первый взгляд, она мало напоминает лофт-объект, ее достаточно просто строить с помощью команды Fit (Подогнать). Деформация подгонки имеет несколько ограничений (однако это не мешает ей оставаться быстрым и мощным средством для построения объектов сложной формы):

404

Глава 9. Практическое моделирование



формы подгонки должны быть одиночными замкнутыми сплайнами;



искривленные сегменты не должны расширяться за пределы первой и последней вершин формы на оси X;



формы подгонки не должны иметь подрезаний, то есть если зрительно провести вертикальную линию, проходящую через сплайн, то она не должна разрезать форму более чем в двух местах;



формы вида сверху и вида сбоку должны иметь одинаковую длину.

Последнее требование не является обязательным, так как 3ds Max может автоматически масштабировать вторую форму, подогнав ее под длину первой, однако в результате могут возникнуть непредвиденные искажения. Для построения модели ложки выполните следующие действия. 1.

В окне проекции Top (Сверху) постройте две формы подгонки — контуры будущей ложки вида сверху и сбоку.

2. В этом же окне проекции постройте прямую — форму пути (рис. 9.29). 3. В окне проекции Left (Слева) постройте три формы поперечного сечения (на самом деле при построении таких объектов их может быть сколько угодно) (рис. 9.30).

Рис. 9.29. Формы подгонки для построения модели ложки

4. Постройте лофт-объект по классической схеме (как строили карандаш): выделив сплайн пути, нажмите кнопку Get Shape (Взять форму), после чего щелкайте кнопкой мыши на сплайнах поперечных сечений, не забывая при этом смещать положение точки пути. В результате должна получиться форма, показанная на рис. 9.31.

Рис. 9.30. Формы поперечного сечения модели ложки

Для дальнейшего моделирования ложки сделайте следующее. 1. В свитке Deformations (Деформации) щелкните на кнопке Fit (Подогнать), в результате чего появится окно деформации подгонки.

Рис. 9.31. Начальная форма ложки после применения сплайнов поперечного сечения

2. В окне деформации подгонки нажмите кнопку Make Symmetrical (Сделать симметричным) , чтобы запретить симметричное построение для обеих осей.

405

Моделирование лофт-объектов

3.

Щелкните на кнопке Display X Axis (Отобразить ось Х) форму подгонки по оси X.

4.

Нажмите Get Shape (Взять форму) форму ложки (рис. 9.32).

, чтобы загрузить

и в окне проекции Top (Сверху) выберите

Рис. 9.32. Форма ложки в окне подгонки деформации по оси X

5.

Проделайте вышеописанные действия для формы подгонки по оси Y, выбрав при этом сплайн вида сбоку.

6.

При необходимости уточните положение точек на профилях (их также можно добавить или удалить).

На рис. 9.33 показано окончательное изображение модели ложки.

Рис. 9.33. Готовая модель ложки

ПРИМЕЧАНИЕ В папке Examples\Глава 09\Lofts прилагаемого к книге DVD находится файл сцены spoon.max.

406

Глава 9. Практическое моделирование

Вернемся к построению лофт-объектов с разомкнутым внешним сплайном. На рис. 9.34 представлены две формы поперечного сечения, каждая из которых состоит из трех сплайнов.

Рис. 9.34. Две формы с разомкнутым сплайном

Рис. 9.35. Деталь, построенная с использованием разомкнутых сплайнов

При построении этих форм использовались скругленные прямоугольники и сплайны окружностей. Прямоугольники имеют разрывы в точках, расположенных на сплайне справа (могут быть в любом месте, но обязательно согласованы). Чтобы выполнить разрыв сплайна, выделите точку на сплайне, затем в свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить). Сам лофт-объект строится обычным способом — с помощью сплайна пути и сплайна формы (рис. 9.35). Остановимся подробнее на моделировании лофт-объектов с возвратными путями. Данный способ позволяет во многих случаях избежать применения булевых операций и получить предсказуемую и легко настраиваемую модель.

В качестве объекта для моделирования возьмем головку для накидного гаечного ключа. Начнем моделирование с создания сплайнов. Для этого выполните следующие действия. 1.

В окне проекции Top (Сверху) постройте две окружности диаметром 70 и 50. Для этого выполните команду CreateShapesCircle (СозданиеФормы Окружность), после чего щелкните в окне проекции Top (Сверху) и переместите указатель в сторону для построения окружности. 2. Для моделирования прямоугольника выполните команду CreateShapesRectangle (СозданиеФормыПрямоугольник) и постройте в окне проекции Top (Сверху) прямоугольник размером 50 Ч 50. 3. Чтобы создать внутреннее отверстие, понадобится сплайн Star (Звезда) с параметрами, показанными на рис. 9.36. Он строится аналогично предыдущим объектам.

Рис. 9.36. Настройки сплайна Star (Звезда)

4. Постройте сплайн возвратного пути. Для этого в окне проекции Front (Спереди) поставьте точку, которая будет служить основанием сплайна, затем точку вверху и опять у основания. В итоге внизу получатся две точки (первая

407

Моделирование лофт-объектов

и последняя), а вверху одна (там сплайн меняет направление на противоположное). На предложение объединить вершины ответьте отрицательно. СОВЕТ Чтобы легче было строить точки, воспользуйтесь привязкой к сетке. Для этого щелкните на кнопке Snaps Toggle (Переключение привязок) правой кнопкой мыши и установите в открывшемся окне флажок Grid Points (Точки сетки).

На рис. 9.37 показаны сплайны, построенные для моделирования детали. Помните, что обязательно нужно согласовывать первые вершины. Желательно, чтобы количество сегментов (вершин) у всех сплайнов формы сечения также совпадало (для получения сглаженной формы). Чтобы количество сегментов было одинаковым во всех сплайнах, выполните следующие действия.

Рис. 9.37. Сплайны для построения ключа

1.

Конвертируйте все формы в Editable Spline (Редактируемый сплайн) командой Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн) контекстного меню.

2.

Выделите сегменты объекта Star (Звезда) (потому что этот сплайн содержит наибольшее количество сегментов) и в свитке Selection (Выделение) посмотрите статистику выделенных сегментов. Их количество — 32. Именно к такому количеству сегментов нужно привести остальные сплайны.

3.

Выделите прямоугольник и затем в режиме редактирования подобъектов Segment (Сегмент) — все его сегменты (четыре). После этого в поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) наберите цифру 7 и щелкните на кнопке Divide (Разделить). В результате в квадрате получится 32 сегмента.

4.

Проведите те же операции для двух оставшихся окружностей.

5.

Согласуйте все первые вершины, для чего выставьте их у всех сплайнов, например, справа.

Теперь можно приступать к построению лофт-объекта. Схема распределения путей такова: 

0 % — большая окружность;



27 % — большая окружность;



27,1 % — меньшая окружность (уменьшается диаметр поверхности детали);



50 % — меньшая окружность;

408

Глава 9. Практическое моделирование



50,1 % — квадрат (в этом месте путь меняет направление на противоположное, и получается внутреннее отверстие);



75 % — квадрат;



75,1 % — звезда (отверстие из квадратного превращается в многогранное);



99,9 % — звезда;



100 % — большая окружность (закрываем пустоту между внешним и внутренним отверстиями). Чтобы закончить построение объекта, внесите следующие изменения. В свитке Skin Parameters (Параметры поверхности) снимите флажки Cap Start (Закрыть начало) и Contour (Контур). Готовый лофт-объект показан на рис. 9.38. ПРИМЕЧАНИЕ Файл упражнения detale.max находится в папке Examples\Глава 09\Lofts прилагаемого к книге DVD. Рис. 9.38. Схема расположения сплайнов вдоль пути (слева) и сам объект (справа)

Подводя итоги, стоит сказать, что с помощью лофт-моделирования можно создавать не только простые, но и достаточно сложные геометрические формы. Кроме того, осталась нерассмотренной такая возможность, как анимация пути, но это тема для отдельного упражнения.

Моделирование штор Моделирование любого объекта сцены должно начинаться с предварительного анализа. Такой подход позволяет экономить и время, и ресурсы компьютера. Итак, что же такое шторы с точки зрения трехмерного объекта? Наверное, проще всего представить штору как прямоугольник с вертикальными складками. В связи с этим встает следующий вопрос: а как же проще всего получить такие складки? При ответе на него вы должны определиться с тем, насколько хорошо знаете возможности программы и какие способы моделирования предпочитаете. Например, я знаю как минимум четыре способа моделирования шторы. 

Моделирование профиля с помощью сплайнов с последующим применением модификатора Extrude (Выдавливание) или объекта Loft (Лофтинговые) и последующего редактирования поверхности с помощью модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) для придания шторе окончательного вида.



Создание объекта Plane (Плоскость) со значительным количеством вертикальных полигонов, затем редактирование положения вершин в пространстве

Моделирование штор

409

и применение модификатора MeshSmooth (Сглаженная поверхность) для сглаживания граней. В данном случае вы можете максимально контролировать итоговую геометрию, но теряете значительное количество времени по сравнению с предыдущим вариантом. 

Моделирование на основе NURBS-объекта с использованием верхнего и нижнего профиля и последующим применением команды Ruled Surface (Поверхность по краям). Именно использование двух профилей позволяет получить более естественный вид подвешенной к карнизу шторы.



Создание Surface-поверхности. В этом случае также используются два сплайна профиля: верхний и нижний, с последующим применением модификаторов CrossSection (Поперечное сечение) и Surface (Поверхность).

Рассмотрим два последних варианта.

Первый вариант Как я уже говорил выше, для моделирования NURBS-поверхности понадобится создать два профиля. Построение необходимо проводить в окне проекции Top (Cверху), а в качестве кривой должна использоваться CV Curve (CV-кривая), для построения которой выполните команду главного меню CreateNURBSCV Curve (СоздатьNURBSCV-кривая). Я думаю, вы знаете, как выглядят шторы, поэтому не стану рассказывать о том, что они собой представляют и каким образом крепятся. Замечу лишь, что в верхней части складки обычно более плотные, что обусловлено способом крепления шторы к карнизу (кольца, зажимы и т. д.). В нижней части штора свободно свисает под воздействием силы гравитации, а те физические законы, которые заставляют ткань распрямляться, в некоторой степени сглаживают неровности, создаваемые в местах крепления. Таким образом, складки нижней части шторы должны в целом соответствовать верхним, но иметь более свободную форму (рис. 9.39).

Рис. 9.39. Форма CV-кривых для верхнего и нижнего края шторы

На самом деле верхняя кривая (на рис. 9.39 она белая) может выглядеть иначе. Я в данном случае предположил, что в качестве шторы у меня используется гладкое

410

Глава 9. Практическое моделирование

полотно (не имеющее декоративной отделки), которое крепится к карнизу зажимами (без создания предварительных складок). В результате, если немного собрать такую штору, как раз получится волна. СОВЕТ После создания сплайнов их кривизну можно редактировать с помощью изменения положения вершин в пространстве, для чего на вкладке Modify (Изменить) командной панели необходимо перейти в режим редактирования Curve CV (Управляющие вершины кривой) (рис. 9.40).

При желании можно создать эффект подвешенной ткани. Обычно в области изгиба ткани, максимально удаленном от места крепления, возникает провисание. Такое провисание ткани легко получить путем выделения среднего ряда вершин (в местах крепления к карнизу) и небольшого смещения их вверх (рис. 9.41).

Рис. 9.40. Уровень подобъектов Curve CV (Управляющие вершины кривой) для редактирования кривой

Кривые готовы. Не забывайте о том, что они должны быть расположены в одной плоскости относительно вертикали и расстояние между ними должно составлять высоту шторы.

Осталось совсем немного — создать поверхность между двумя кривыми. Для этого как нельзя лучше подойдет инструмент Ruled Surface (Поверхность по краям), но прежде необходимо объединить построенные кривые в один объект. Сделать это можно путем присоединения одной кривой к другой. Для этого выделите одну кривую, нажмите кнопку Attach (Присоединить), расположенную в свитке General (Общие) настроек кривой, и щелкните в окне проекции на второй кривой.

Рис. 9.41. Результат перемещения среднего ряда управляющих вершин верхнего сплайна

Моделирование штор

411

Щелкните на кнопке Create Ruled Surface (Создать поверхность по краям) , расположенной на плавающей палитре инструментов NURBS1, и выберите в окне проекции одну кривую, а затем вторую. В результате вышеописанных операций вы получите готовую поверхность шторы (рис. 9.42).

Рис. 9.42. Штора, построенная по двум кривым

ПРИМЕЧАНИЕ После создания поверхности можно продолжить редактировать кривые, поэтому, если вас не удовлетворяет получившейся результат, вы можете изменить форму кривых, контролируя при этом общую форму поверхности шторы.

На этом можно было бы остановиться, но я хотел бы еще в общих чертах описать, как изменить геометрию шторы, если она собрана у основания или в другой части. Наверное, вы уже успели заметить, что NURBS-поверхность не имеет других контрольных точек, кроме тех, которые расположены на сплайнах в верхней и нижней частях шторы. Этого явно недостаточно, для того чтобы редактировать поверхность в горизонтальной плоскости. В связи с этим первое, что необходимо сделать, — это добавить управляющие вершины в среднюю часть. Для этого выполните следующие действия.

1

Плавающую палитру NURBS можно вызвать щелчком на кнопке NURBS Creation Toolbox (Панель инструментов создания NURBS-объекта), расположенной в свитке General (Общие) настроек NURBS-кривой на вкладке Modify (Изменение) командной панели.

412

Глава 9. Практическое моделирование

1.

В стеке модификаторов перейдите на уровень редактирования подобъектов Surface (Поверхность).

2.

Выделите поверхность и в свитке Surface Common (Общие свойства поверхности) щелкните на кнопке Make Point (Создать точку) (рис. 9.43), в результате чего откроется окно Make Point Surface (Создать точки поверхности).

3.

Значение параметра Number In U (Количество по горизонтали) окна Make Point Surface (Создать точки поверхности), который определяет количество точек поверхности по горизонтали, оставьте заданным по умолчанию. Параметру Number in V (Количество по вертикали) задайте значение в пределах от 10 до 20, в зависимости от стоящей перед вами задачи. Я задал значение, равное 14. Этого вполне достаточно, чтобы собрать штору в нижней ее части.

После того как будут добавлены точки поверхности, их можно редактировать, для чего необходимо перейти на уровень подобъектов Point (Точка) и воспользоваться инструментами перемещения, масштабирования и поворота. На рис. 9.44 представлена штора, которую я получил с помощью перемещения точек и использования параметра Soft Selection (Плавное выделение).

Рис. 9.43. Свиток Surface Common (Общие свойства поверхности) настроек построенной шторы

Рис. 9.44. Модель шторы после редактирования вершин

Моделирование штор

413

Второй вариант Второй вариант моделирования шторы в общих чертах напоминает описанный выше, но имеет свои особенности. Как и в первом варианте, необходимо построить кривую, которая будет являться профилем модели шторы. Чтобы ее создать, следует воспользоваться командой главного меню CreateShapesLine (СоздатьФормыЛиния) и построить кривую в окне проекции Top (Сверху). Скопируйте построенную кривую со смещением по вертикали и отредактируйте ее форму так, чтобы получить геометрию нижнего края.

ВНИМАНИЕ Копирование используется для того, чтобы сохранить одинаковое количество вершин обоих сплайнов, — это важно! Если вы решите вместо копирования строить вторую кривую, то позаботьтесь о том, чтобы количество вершин обоих сплайнов было одинаковым.

Для продолжения моделирования нужно, как и в предыдущем случае, чтобы оба сплайна принадлежали одному объекту. Сделать это просто: достаточно выделить один из сплайнов, затем в свитке Geometry (Геометрия) его настроек нажать кнопку Attach (Присоединить) и в окне проекции щелкнуть на втором сплайне. После этого можно перейти к созданию поверхности, которая строится с помощью двух модификаторов: CrossSection (Поперечное сечение) и Surface (Поверхность) (рис. 9.45). В результате применения модификаторов вы получите поверхность шторы, а после небольшого редактирования вершин сплайнов — оригинальную форму. Как и в предыдущем варианте, вы можете редактировать не только вершины верхнего и нижнего рядов, но и всю поверхность. Необходимо лишь применить к объекту соответствующий модификатор, например Edit Patch (Редактирование кусков) или Edit Poly (Редактирование полигонов). На рис. 9.46 представлен второй вариант модели шторы.

Рис. 9.45. Стек модификаторов шторы

ПРИМЕЧАНИЕ В зависимости от того, каким образом были построены сплайны (положение первой вершины), возможно, вам понадобится обратить поверхность объекта к виду из камеры или окна проекции. Для этого просто установите флажок Flip Normals (Обратить нормали) свитка Parameters (Параметры).

414

Глава 9. Практическое моделирование

Рис. 9.46. Модель второго варианта шторы

ПРИМЕЧАНИЕ Для ознакомления с первым и вторым вариантами модели шторы вы можете обратиться к файлам curtain v1.max и curtain v2.max, расположенным в папке Examples\Глава 09\Curtain прилагаемого к книге DVD.

Полигональное моделирование телефонной трубки В этом упражнении рассмотрим создание модели телефонной трубки с помощью полигонального моделирования (рис. 9.47). Начнем моделирование с построения примитива Box (Параллелепипед). В свитке Parameters (Параметры) его настроек укажите габариты объекта и количество его сегментов по длине, ширине и высоте (рис. 9.48). Телефонная трубка имеет изгиб. Чтобы создать его, примените модификатор Bend (Изгиб), выполнив команду ModifiersParametric DeformersBend (МодификаторыПараметрические деформацииИзгиб). В результате в стеке модификаторов появится требуемый элемент. Задайте его параметры согласно изображенным на рис. 9.49. Больше свойства параметрического объекта вам не понадобятся. Дальнейшая работа будет проходить на уровне редактирования подобъектов — вершин, ребер, полигонов и т. д. Чтобы преобразовать объект в редактируемую поверхность, щелкните на параллелепипеде правой кнопкой мыши. Появится контекстное меню, в котором выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность).

Полигональное моделирование телефонной трубки

415

Рис. 9.47. Модель телефонной трубки

Рис. 9.48. Параметры примитива Box (Параллелепипед) для построения трубки телефона

Рис. 9.49. Параметры модификатора Bend (Изгиб)

ПРИМЕЧАНИЕ Если вы работаете в более ранних версиях программы, где еще нет Editable Poly (Редактируемая полигональная поверхность), то используйте для тех же целей Editable Mesh (Редактируемая поверхность). Однако при этом некоторые функции будут недоступны.

416

Глава 9. Практическое моделирование

Перейдите на уровень редактирования вершин, для чего щелкните на кнопке Vertex (Вершина) в свитке Selection (Выделение). После этого в окне проекции Left (Слева) отредактируйте три верхних ряда вершин так, чтобы получился изгиб трубки в поперечном сечении (рис. 9.50). Далее создайте таким же способом изгибы формы на торцах трубки, с той лишь разницей, что основание, которым трубка ставится на базу, должно быть выгнуто меньше, нежели верх (рис. 9.51).

Рис. 9.50. Редактирование изгиба верхней части трубки

Рис. 9.51. Редактирование вершин в окне проекции Top (Сверху)

Чтобы скруглить объект, перейдите на уровень редактирования граней. Для этого нажмите кнопку Edge (Ребро) в свитке Selection (Выделение). Перед тем как начать выделение граней, установите флажок Ignore Backfacing (Без обратной ориентации), что позволит избежать случайного выбора граней, лежащих на противоположных сторонах геометрии. Для выделения необходимых ребер, удерживая клавишу Ctrl, щелкайте поочередно на одном из ребер каждой стороны. Таким образом вы добавите их к выделению. После этого в свитке Selection (Выделение) нажмите кнопку Loop (Петля), чтобы автоматически выбрать остальные ребра (рис. 9.52). Помните, что в процессе выбора ребер нужно контролировать область выделения во всех окнах проекций.

Рис. 9.52. Выделенные ребра верхних и боковых граней для формирования фаски

После выделения необходимых ребер можно применить к ним команду Chamfer (Фаска). Для этого разверните свиток Edit Edges (Редактирование ребер) настроек объекта и щелкните на кнопке Settings (Настройки) рядом с кнопкой Chamfer (Фаска). В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение, равное 4. Щелкните на кнопке OK.

Полигональное моделирование телефонной трубки

417

В результате на краях появятся закругления. Их можно увидеть, установив для объекта сглаживание. Для этого в свитке Subdivision Surface (Поверхности с разбиением) установите флажок Use NURMS Subdivision (Использовать NURMS-разбиения), а в области Display (Отображение) задайте параметру Iterations (Количество итераций) значение, равное 2. Поверхность станет сглаженной (рис. 9.53). Повторим те же действия для нижних ребер. 1.

Выберите ребра, расположенные по периметру нижней плоскости.

2.

Вызовите окно Chamfer Edges (Фаска ребер).

3.

Задайте параметру Chamfer Amount (Величина фаски) значение, равное 2.

4.

Подтвердите внесенные изменения, щелкнув на кнопке OK.

Рис. 9.53. Поверхность после применения фаски и сглаживания

В результате вы получите скругления на нижней части трубки, но с меньшим радиусом (рис. 9.54). Мы создали приблизительную форму трубки телефона. Теперь нужно добавить вершины для редактирования. Это можно сделать разными способами, но мы воспользуемся самым простым и удобным в данном случае — секущей плоскостью. Для выполнения сечения поверхности плоскостью сделайте следующее.

Рис. 9.54. Фаска на нижних гранях трубки

1.

Вернитесь на уровень редактирования вершин, щелкнув на кнопке Vertex (Вершина) в свитке Selection (Выделение).

2.

В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость). В результате кнопка подсветится цветом, а в горизонтальной плоскости объекта появится секущая плоскость.

3.

На панели инструментов щелкните на кнопке Angle Snap Toggle (Переключатель угловых привязок) , что позволит проще поворачивать на заданные углы.

4.

Щелкните на кнопке Select and Rotate (Выделить и повернуть) секущую плоскость на 90° (рис. 9.55).

и поверните

418

Глава 9. Практическое моделирование

5.

Нажмите кнопку Slice (Срез) в свитке Edit Geometry (Редактирование геометрии).

6.

Щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии), чтобы отключить создание сечений. Прежде чем наращивать плотность сетки полигонов, необходимо отредактировать положение вершин в пространстве с учетом добавленных. Для этого в окне проекции Front (Спереди) переместите группы вершин, сформировав таким образом область расположения динамика. Перед этим не забудьте снять флажок Ignore Backfacing (Без обратной ориентации), чтобы можно было выбирать группы вершин по всему сечению (рис. 9.56). Рис. 9.55. Положение секущей плоскости относительно объекта-трубки

Для формирования мест под кнопки вам понадобится сделать еще пять сечений плоскостью в окне проекции Front (Спереди). СОВЕТ

Рис. 9.56. Отредактированная поверхность после разреза секущей плоскостью

Как видите, я не стал делать эти сечения вместе с первым. Это усложнило бы редактирование положения вершин, которых было бы намного больше. Если есть возможность, всегда старайтесь максимально сформировать форму объекта при минимальном количестве полигонов. Это не только упрощает работу, но и позволяет получить более сглаженные формы.

Как делать сечения, вы уже знаете. На рис. 9.57 показана та часть трубки, на которой нужно их сделать. Расстояния между ними должны быть приблизительно одинаковыми.

Рис. 9.57. Дополнительные сечения для формирования мест под кнопки

Перейдем к формированию углубления, в которое обычно встраивается дисплей. У меня трубка старого образца, поэтому на этом месте находится

419

Полигональное моделирование телефонной трубки

всего лишь логотип фирмы Panasonic и индикатор разрядки батареи. Чтобы сформировать углубление, выполните следующие действия. 1.

Перейдите на уровень редактирования вершин и установите флажок Ignore Backfacing (Без обратной ориентации), чтобы случайно не выбрать лишние вершины.

2.

В окне проекции Bottom (Снизу) передвиньте три средние вершины вправо так, чтобы сформировать изгиб нижней части углубления (рис. 9.58).

3.

Перейдите на уровень редактирования полигонов, щелкнув на кнопке Polygon (Полигон) в свитке Selection (Выделение).

4.

Выделите четыре полигона, расположенные левее места изгиба.

5.

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Настройки) рядом с кнопкой Inset (Смещение внутрь).

6.

В появившемся окне Inset Polygons (Сместить полигоны внутрь) задайте параметру Inset Amount (Величина смещения) значение, равное 1,5, и подтвердите внесенные изменения, щелкнув на кнопке OK.

В результате будут построены новые полигоны, смещенные внутрь (рис. 9.59).

Рис. 9.58. Начало формирования углубления

Рис. 9.59. Полигоны для формирования углубления

Чтобы закончить формирование углубления, выполните следующие действия. 1.

Не снимая выделения с полигонов, щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание).

2.

В открывшемся окне Extrude Polygons (Выдавить полигоны) задайте параметру Extrusion Height (Высота выдавливания) значение –7.

3.

Подтвердите внесенные изменения, щелкнув на кнопке OK.

4.

Перейдите на уровень редактирования вершин, нажав кнопку Vertex (Вершина) в свитке Selection (Выделение).

5.

В окне проекции Front (Спереди) отредактируйте положение вершин, как показано на рис. 9.60.

420

Глава 9. Практическое моделирование

Если сейчас посмотреть на созданное углубление, то можно увидеть, как его внутренние грани формируют скругления большого радиуса. В нашем случае, наоборот, внутренние грани по периметру должны образовывать четкую границу плоскостей. Чтобы это сделать, нужно увеличить плотность сетки в местах изгибов. Повысить плотность полигонов можно несколькими способами, но я воспользуюсь уже знакомым вам методом формирования фаски на уровне ребер.

Рис. 9.60. Положение вершин, формирующих углубление

Для построения такой фаски выделите внутренние грани по периметру углубления, исключая сторону изгиба, и примените к ним Chamfer Edges (Фаска ребер). Введите значение Chamfer Amount (Величина фаски), равное 0,5. В результате углубление примет более реалистичный вид (рис. 9.61). Впечатление о проделанной работе портят внешние углы, которые имеют слишком большой радиус закругления. Чтобы избавиться от этого, примените к ребрам, формирующим эти углы, Chamfer Edges (Фаска ребер) с величиной смещения, равной 0,5 (рис. 9.62).

Рис. 9.61. Формирование фаски внутри отверстия

Рис. 9.62. Обработка угла

Теперь можно переходить к формированию углубления в месте нахождения динамика. Легче всего его создать с помощью булевой операции Cut (Вычитание), но, как правило, это искажает полигональную сетку модели, превращая ее в «месиво» из вершин, ребер и полигонов и затрудняя дальнейшее редактирование. Данную операцию можно было бы применить в конце моделирования, но нужно еще сделать отверстия для кнопок, отделку и т. д., поэтому выполним углубление, сформировав его в существующей сетке. Чтобы облегчить построение окружности, создайте в окне проекции Bottom (Снизу) сплайн Circle (Окружность) с радиусом, равным 17. Для этого выполните команду CreateShapesCircle

Полигональное моделирование телефонной трубки

421

(СозданиеФормыОкружность), затем в окне проекции Bottom (Снизу) щелкните кнопкой мыши на месте расположения будущего углубления и переместите указатель в сторону, формируя окружность (рис. 9.63). Задайте параметру Radius (Радиус) настроек окружности значение, равное 17. После появления шаблона, по которому можно выверять форму углубления, нужно увеличить плотность сетки полигонов в этом месте. Для этого воспользуйтесь инструментом Cut (Вычитание). Его можно активизировать в свитке Edit Geometry (Редактирование геометрии) на любом из уровней подобъектов, щелкнув на кнопке Cut (Вычитание). В результате кнопка изменит свой цвет, указывая, что она находится в активном режиме. После этого щелкните на ребре или вершине объекта и, не отпуская кнопку мыши, переместите указатель до другого ребра или вершины. Пунктирная линия вслед за указателем определит место, где будет создано новое ребро. Для выключения режима вычитания щелкните правой кнопкой мыши. Чтобы получить отверстие, нужно выполнить разрезы в несколько приемов, промежуточно редактируя вершины. Первые разрезы показаны на рис. 9.64.

Рис. 9.63. Положение шаблона-окружности для формирования углубления в трубке телефона

Рис. 9.64. Разрезы, сделанные для формирования углубления

К диагональным разрезам добавьте разрезы по периметру отверстия. Отредактируйте положение вершин, но не старайтесь делать это максимально точно, так как после очередных разрезов положение вершин придется уточнять снова (рис. 9.65). Чтобы получить максимально ровный и сглаженный круг, нужно выполнить еще по одному разрезу внутри сформированных лучей, исходящих из центра окружности. После этого

Рис. 9.65. Добавлены новые разрезы по периметру окружности

422

Глава 9. Практическое моделирование

можно переходить к окончательному редактированию вершин. Сейчас их положение должно быть определено шаблоном-окружностью, на котором они находятся, а расстояния между соседними вершинами по возможности должны быть одинаковыми.

Рис. 9.66. Формирование внутренних полигонов углубления

После того как будут расставлены вершины, можно сформировать внутреннее кольцо ребер. Для этого выделите внутренние полигоны и примените команду Inset (Смещение внутрь) описанным выше способом, но только с величиной сдвига, равной половине радиуса круга (рис. 9.66). Перед тем как перейти к формированию мест под кнопки, выполните сдвиг вершин, расположенных внутри окружности, так, чтобы сформировалась небольшая выемка. К внешнему кольцу из ребер примените Chamfer Edges (Фаска ребер) с очень маленькой величиной среза, чтобы по периметру углубления образовалась фаска (рис. 9.67).

Рис. 9.67. Окончательный вид углубления в телефонной трубке

Теперь займемся углублениями для кнопок. Прежде чем выдавливать рельеф, нужно построить форму кнопок. Кнопки пульта мы сделаем как отдельные объекты, например, с помощью примитива ChamferBox (Параллелепипед с фаской). Из шести построенных ранее сечений для формирования кнопок выделите четыре внутренних поперечных ряда ребер и примените к ним Chamfer Edges (Фаска ребер) с величиной среза, равной 4,5, что задаст ширину посадочного места (рис. 9.68).

Рис. 9.68. Применение Chamfer Edges (Фаска ребер) для начала формирования места под кнопки

Выполните те же действия по отношению к продольным ребрам в области построения кнопок. Для этого примените к ним Chamfer Edges (Фаска ребер), но только с величиной среза, равной 6,5.

423

Полигональное моделирование телефонной трубки

В результате данных операций будет сформирована область выдавливания (рис. 9.69). Таким образом, мы создали общую форму отверстий под кнопки. Размер отверстий по длине примерно в полтора раза превышает ширину, что может сказаться на последующем сглаживании, если не разделить широкие стороны пополам. Воспользуйтесь командой Cut (Вычитание) и сделайте продольные разрезы, соединив противоположные вершины полей, где будут кнопки (рис. 9.70).

Рис. 9.69. Применение Chamfer Edges (Фаска ребер) для продольных ребер

Кнопки имеют скругленные грани, что относится и к отверстиям, в которых они будут находиться. Их можно сделать, сначала выдавив отверстия, затем выделив внутренние вертикальные грани и применив Chamfer Edges (Фаска ребер). Но можно поступить по-другому — применив к угловым вершинам Chamfer Vertices (Фаска вершин)1 перед выдавливанием. Можете попробовать оба метода, я опишу первый вариант. Чтобы сделать отверстия под кнопки телефонной трубки, выполните следующее.

Рис. 9.70. Дополнительные разрезы в области расположения кнопок

1.

Выделите все полигоны, относящиеся к будущим отверстиям кнопок.

2.

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание).

3.

В появившемся окне Extrude Polygons (Выдавить полигоны) выставьте величину выдавливания –4 и подтвердите внесенные изменения, щелкнув на кнопке OK.

Теперь необходимо сформировать скругления внутренних углов. Для этого выполните следующие действия. 1.

Перейдите на уровень редактирования Edge (Ребро)

2.

Выделите все внутренние вертикальные ребра сформированных отверстий.

1

.

Чтобы вызвать окно Chamfer Vertices (Фаска вершин), следует щелкнуть на кнопке, расположенной рядом с кнопкой Chamfer (Фаска) в свитке Edit Vertices (Редактирование вершин).

424 3.

Глава 9. Практическое моделирование

Примените к ним Chamfer Edges (Фаска ребер) и задайте параметру Chamfer Amount (Величина фаски) значение 1.

СОВЕТ Чтобы было удобнее выделять грани, воспользуйтесь окном проекции Perspective (Перспектива), развернув его во весь экран с помощью сочетания клавиш Alt+W.

Продолжим формирование фасок отверстий. Выделите по одному верхнему ребру в каждом отверстии и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате должны выделиться все ребра, очерчивающие верхний край отверстия. Примените к ним Chamfer Edges (Фаска ребер) со значением параметра Chamfer Amount (Величина фаски) 0,1.

Рис. 9.71. Окончательно сформированные углубления для кнопок

После того как будет сделана фаска для верхних ребер, перейдите на уровень редактирования полигонов, щелкнув на кнопке Polygon (Полигон) . Внутренние полигоны все еще должны быть выделены. Если это не так, выделите их снова. После этого в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Detach (Отделить) и в появившемся окне выберите метод отделения Detach To Element (Отделить в элемент). То, что должно получиться после редактирования полигонов, показано на рис. 9.71. Теперь нужно сделать сами кнопки. Для этой цели используйте примитив ChamferBox (Параллелепипед с фаской) с параметрами, показанными на рис. 9.72. Можно не изменять созданную кнопку, а преобразовать ее в Editable Mesh (Редактируемая поверхность) и немного изменять положение вершин, чтобы получить небольшое закругление верха кнопки. После того как будет сформирована одна кнопка, сделайте ее копии для всех имеющихся углублений (рис. 9.73).

Рис. 9.72. Параметры объекта ChamferBox (Параллелепипед с фаской), использованного для формирования кнопок

Функциональные кнопки (меньшие по размеру) создаются таким же способом. Теперь пора переходить к антенне,

Полигональное моделирование телефонной трубки

425

формированию мест для функциональных кнопок, отделке и фирменной надписи Panasonic. Начнем с антенны. Для ее моделирования создайте примитив Box и настройте его параметры, как показано на рис. 9.74. Для дальнейшей работы построенный параллелепипед необходимо преобразовать в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши и в открытом контекстном меню выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Перейдите на уровень редактирования граней, щелкнув в свитке Selection (Выделение) на кнопке Edge (Ребро) . После этого выделите все боковые грани и примените к ним Chamfer Edges (Фаска ребер) со значением параметра Chamfer Amount (Величина фаски), равным 2. Затем выделите верхние грани и постройте еще одну фаску, указав величину среза 0,1. На уровне редактирования полигонов с помощью команды Inset (Смещение внутрь) сформируйте внутренний ряд ребер для последующего их выдавливания. Для этого выполните следующие действия. 1.

Перейдите на уровень редактирования Polygon (Полигон) и выделите наружный торцевой полигон.

2.

Щелкните на кнопке Settings (Настройки) рядом с кнопкой Inset (Смещение внутрь), находящейся в свитке Edit Polygons (Редактирование полигонов).

3.

В появившемся окне Inset Polygons (Сместить полигоны внутрь) задайте параметру Inset Amount (Величина смещения) значение 1,2 (рис. 9.75).

Рис. 9.73. Окончательный вид кнопок

Рис. 9.74. Параметры примитива Box (Параллелепипед), предназначенного для моделирования антенны

Рис. 9.75. Формирование внутреннего ряда граней с помощью Inset (Смещение внутрь)

426

Глава 9. Практическое моделирование

С помощью секущей плоскости или вручную разделите моделируемый объект на две части по широкой стороне. Это облегчит процесс дальнейшего формирования закруглений на антенне. Затем при выделенном торцевом полигоне примените к нему команду Bevel (Выдавливание со скосом). Для этого вызовите окно Bevel Polygons (Выдавливание со скосом полигонов), щелкнув на кнопке Settings (Настройки) рядом с кнопкой Bevel (Выдавливание) в свитке Edit Polygons (Редактирование полигонов). Задайте параметрам Height (Высота) и Outline Amount (Величина смещения) значения, показанные на рис. 9.76. Рис. 9.76. Параметры выдавливания верхней части антенны

Рис. 9.77. Окончательный вид антенны

После того как будет сформирована внешняя часть антенны, отредактируйте ее окончание, сделав на торцевых ребрах фаску и передвинув вдоль оси антенны наружу центральные вершины для формирования скругления (рис. 9.77). Сделаем небольшое декоративное расширение в середине трубки. Для этого выделите средние ребра на боках трубки и примените к ним Chamfer Edges (Фаска ребер) со значением Chamfer Amount (Величина фаски), равным 2 (рис. 9.78). Выделите серединный шов по всему периметру модели и примените к нему Extrude Edges (Выдавить ребра), щелкнув на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание). В появившемся окне Extrude Edges (Выдавить ребра) следует ввести значения, показанные на рис. 9.79.

Рис. 9.78. Применение Chamfer Edges (Фаска ребер) для формирования продольного шва

Щелкните на кнопке Apply (Применить), чтобы выполнить первое выдавливание. Затем, не меняя выделение и не закрывая окно Extrude Edges (Выдавить ребра), введите в поля новые значения высоты и ширины выдавливания (рис. 9.80).

Полигональное моделирование телефонной трубки

427

Щелкните на кнопке OK для применения изменения. При кажущейся сложности задачи для построения профиля стыка понадобилось всего две операции. Сделайте тестовую визуализацию трубки (рис. 9.81). В трубке есть еще некоторые детали, которые необходимо смоделировать (например, функциональные кнопки, кнопку включения-выключения и т. д.), но я не стану описывать процесс их создания, так как он ничем не отличается от того, который мы рассмотрели для основных кнопок трубки. Смоделируем место для функциональных кнопок, выполнив следующие действия. 1.

Добавьте еще один поперечный разрез у основания трубки.

2.

В продольной плоскости разрежьте полигоны, лежащие по бокам. В результате должен получиться прямоугольник, сформированный ребрами (рис. 9.82).

3.

Примените к этим ребрам команду Extrude Edges (Выдавить ребра), так же как для бокового шва.

Рис. 9.79. Окно Extrude Edges (Выдавить ребра) с параметрами первого выдавливания

Рис. 9.80. Окно Extrude Edges (Выдавить ребра) с параметрами второго выдавливания

Рис. 9.81. Трубка с боковым швом

Рис. 9.82. Ребра, формирующие площадку для функциональных кнопок

428

Глава 9. Практическое моделирование

В результате у вас получится такой же шов, как и боковой, с той лишь разницей, что окажутся сильно сглаженными внутренние углы прямоугольника. Чтобы избавиться от этого эффекта, добавьте угловым ребрам Chamfer Edges (Фаска ребер) (рис. 9.83). Последний штрих — создание надписи на корпусе трубки. Ее нужно делать в последнюю очередь, так как после создания объекта ShapeMerge (Объединенные с формой) стек разрушится и вы не сможете больше редактировать простую форму. Для создания текста сделайте следующее. 1.

Выполните команду CreateShapesText (СозданиеФормыТекст).

2.

В области Text (Текст) свитка Parameters (Параметры) наберите, например, Panasonic.

3.

Задайте параметру Size (Размер), определяющему величину шрифта, значение, равное 25, и выберите гарнитуру Arial Black.

4.

Щелкните кнопкой мыши в окне проекции Top (Сверху) для завершения создания текста (рис. 9.84).

Чтобы отобразить текст на поверхности трубки, выполните следующие действия. 1.

Выделите модель телефонной трубки.

2.

Перейдите на вкладку Create (Создание) командной панели, нажмите кнопку Geometry (Геометрия), в раскрывающемся списке выберите строку Compound Objects (Составные объекты) и щелкните на кнопке ShapeMerge (Объединенные с формой).

3.

В свитке Pick Operand (Указать булев) нажмите кнопку Pick Shape (Указать форму), после чего щелкните на надписи Panasonic.

В результате надпись спроецируется на поверхность трубки (рис. 9.85). Далее выполните команду ModifiersMesh EditingEdit Mesh (МодификаторыРедактирование поверхностиРедактирование поверхности). Затем перейдите на уровень подобъектов редактирования полигонов, щелкнув в свитке Selection (Выделение) на кнопке Polygon (Полигон) . Сейчас нужно выдавить надпись. По умолчанию она должна быть выделена, поэтому просто щелкните на кнопке Extrude (Выдавливание) и укажите величину выдавливания равной –0,5 (рис. 9.86). На этом моделирование трубки телефона можно считать законченным. СОВЕТ Если у вас возникли трудности с моделированием, обратитесь к файлу phone.max, расположенному в папке Examples\Глава 09\Phone прилагаемого к книге DVD.

429

Моделирование микроволновой печи

Рис. 9.83. Окончательный вид места для функциональных кнопок

Рис. 9.84. Расположение объекта Text (Текст) над корпусом трубки

Рис. 9.85. Надпись, спроецированная на поверхность телефонной трубки

Рис. 9.86. Надпись на трубке, сделанная с помощью команды Extrude (Выдавливание)

Моделирование микроволновой печи Рассматривая процесс создания освещения в разд. «Использование базовых источников света в интерьере» гл. 7, мы использовали в сцене модели мебели и бытовой техники. Одним из таких объектов была микроволновая печь, о моделировании которой пойдет речь в данном разделе. Модель, которую мы будем строить, имеет средний уровень детализации и позволяет углубить знания по технике моделирования полигональных объектов, начатой в предыдущих уроках. На рис. 9.87 показан результат визуализации микроволновой печи, которую нам предстоит моделировать. Минимум, который необходимо знать, прежде чем приступать к моделированию, — это габаритные размеры микроволновой печи. В нашем случае они составляют 325 Ч 280 Ч 455 мм. Начнем с моделирования корпуса. Для этого нужно построить

430

Глава 9. Практическое моделирование

примитив Box (Параллелепипед). Параметрами ширины, длины и высоты параллелепипеда будут габариты микроволновой печи (рис. 9.88). Расположите этот параллелепипед в начале координат.

Рис. 9.87. Визуализация микроволновой печи

Рис. 9.88. Свиток Parameters (Параметры) настроек примитива Box (Параллелепипед)

СОВЕТ Согласно хорошему тону в моделировании считается, что построение самостоятельных объектов должно вестись в нулевой отметке системы координат. Такое расположение модели бывает полезным для создания симметричных копий объекта или просто привязки к координатной сетке.

Построенный объект можно переместить в начало координат достаточно простым способом. Для этого можно выделить объект и, активизировав инструмент Select and Move (Выделить и переместить) на главной панели инструментов, щелкнуть правой кнопкой мыши на стрелках, расположенных справа от полей X, Y и Z в нижнем поле экрана (рис. 9.89). В результате этих действий все значения параметров станут равны 0.

Рис. 9.89. Строка состояния с координатами положения объекта в пространстве

Моделирование микроволновой печи

431

Дальнейшее редактирование параллелепипеда рассмотрим ниже, а пока продолжим моделирование. Построим улучшенный примитив Chamfer Box (Параллелепипед с фаской), который будет выступать в качестве базовой формы для лицевой панели микроволновой печи. Чтобы его создать, воспользуемся командой главного меню CreateExtended PrimitivesChamfer Box (СозданиеУлучшенные примитивыПараллелепипед с фаской). Его размеры должны быть меньше габаритов корпуса, к тому же его грани должны быть немного закруглены. На рис. 9.90 представлены сам объект и его размеры.

Рис. 9.90. Объект ChamferBox (Параллелепипед с фаской) (слева) и его параметры (справа)

Обратите внимание на то, что параметр Width Segs (Сегментов по ширине) стал равен 3, а Fillet Segs (Сегментов закругления) — 10. Это объясняется необходимостью увеличения количества полигонов для дальнейшего редактирования объекта. На этом параметрические свойства обоих объектов нам больше не понадобятся, и их можно конвертировать в Editable Poly (Редактируемая полигональная поверхность). Это проще всего сделать, щелкнув на объекте правой кнопкой мыши и выбрав из контекстного меню строку Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Для дальнейшей работы нам понадобится только объект с именем ChamferBox01, который мы продолжим редактировать на уровне подобъектов. Следовательно, корпус микроволновой печи, построенный ранее (то есть объект Box01), необходимо спрятать. Для этого достаточно выделить его, щелкнуть на нем правой кнопкой мыши и выбрать пункт контекстного меню Hide Selection (Спрятать выделенное). Продолжим моделирование. Выделите ChamferBox01 и перейдите на уровень редактирования полигонов. В окне проекции Left (Слева) выделите закругление, расположенное со стороны корпуса (рис. 9.91), и удалите его.

432

Глава 9. Практическое моделирование

Рис. 9.91. Полигоны, выделенные для удаления

Таким образом, мы уменьшим общее количество полигонов в сцене и немного упростим работу с объектом. Закруглим верхнюю и нижнюю части лицевой панели для придания ей нужной формы. Для изменения формы объекта перейдите на уровень редактирования вершин и выделите в окне проекции Left (Слева) два внутренних горизонтальных ряда вершин (рис. 9.92). Раскройте свиток Soft Selection (Плавное выделение) и установите флажок Use Soft Selection (Использовать плавное выделение). Параметрам Falloff (Спад) и Pinch (Сужение) задайте значения, равные 13 и 1 соответственно (рис. 9.93). ПРИМЕЧАНИЕ Если вы использовали иные размеры микроволновой печи, то вам придется задать другие значения параметров плавного выделения. Обратите внимание на то, чтобы самые крайние вершины остались синего цвета — это означает, что они не будут задействованы в трансформациях.

Рис. 9.92. Внутренние вершины, выделенные для редактирования

Щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) главной панели инструментов и маштабируйте выделенные вершины по оси Y (по вертикали) до 93 % (увидеть

Моделирование микроволновой печи

433

процент масштабирования можно в поле, расположенном рядом с параметром Y в строке состояния) (рис. 9.94).

Рис. 9.93. Настройки свитка Soft Selection (Плавное выделение) и отображение выделенных вершин в окне проекции

Рис. 9.94. Скругление, полученное с помощью масштабирования вершин

Теперь необходимо разделить лицевую панель на две части: дверцу и панель управления. Именно для этого при построении объекта Chamfer Box (Параллелепипед с фаской) мы задали два разбиения по ширине. Воспользуемся ими.

434

Глава 9. Практическое моделирование

Перейдите на уровень редактирования вершин. В окне проекции Front (Спереди) выделите и переместите левый вертикальный внутренний ряд вершин так, чтобы он оказался на расстоянии 3–4 мм от правого. Это и будет то расстояние, которое образуется между дверцей и панелью управления. Выделите оба вертикальных ряда и переместите их немного вправо, так, чтобы они находились на расстоянии 1/4 от правого края (рис. 9.95).

Рис. 9.95. Положение внутренних рядов вершин

Чтобы завершить создание шва, необходимо выполнить еще несколько простых операций. 1.

Перейдите на уровень редактирования полигонов и выделите полигоны между двумя вертикальными рядами вершин, которые только что редактировались.

2.

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке рядом с Extrude (Выдавливание).

3.

Параметру Extrusion Height (Высота выдавливания) открывшегося окна Extrude Polygons (Выдавливание полигонов) задайте значение, равное –17, после чего нажмите OK (рис. 9.96).

Не снимая выделения с полигонов, активизируйте окно проекции Front (Спереди), щелкнув в нем правой кнопкой мыши. В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке View Align (Выровнять по окну), в результате чего полигоны выровняются в плоскости проекции (рис. 9.97). СОВЕТ Еще один способ выравнивания полигонов в одной плоскости — команда Make Planar (Привести к плоскости) из свитка Edit Geometry (Редактирование геометрии).

Моделирование микроволновой печи

435

Рис. 9.96. Полигоны, выдавленные с помощью команды Extrude (Выдавливание)

Рис. 9.97. Выровненные в плоскости полигоны

Дальнейшее редактирование объекта будет относиться к его левой части, то есть к дверце, поэтому можно спрятать все лишние элементы. Для этого на уровне редактирования полигонов выделите часть объекта, относящуюся к панели управления, и только что построенный шов, а затем щелкните на кнопке Hide Selected (Спрятать выделенное) в свитке Edit Geometry (Редактирование геометрии). Продолжим моделирование. Дверца имеет прямоугольное окошко с закругленными углами — его нам сейчас и предстоит строить. Однако сначала необходимо создать

436

Глава 9. Практическое моделирование

шаблон, по которому будет выполняться построение. Это достаточно просто сделать: в окне проекции Front (Спереди) постройте прямоугольник с помощью команды CreateShapesRectangle (СозданиеФормыПрямоугольник) и в свитке Parameters (Параметры) задайте значения параметров, показанные на рис. 9.98.

Рис. 9.98. Расположение прямоугольника относительно дверцы микроволновой печи (слева) и его параметры (справа)

Сейчас, имея шаблон формы окна дверцы, можно сделать соответствующие разрезы на фронтальной плоскости панели. Для этого перейдите на уровень редактирования полигонов и выделите большой внутренний полигон (позади прямоугольника), а затем щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии). В результате кнопка выделится цветом, а в окнах проекций появится секущая плоскость. С помощью инструментов поворота и перемещения расположите секущую плоскость в вертикальной плоскости напротив правой стороны прямоугольника (рис. 9.99), после чего щелкните на кнопке Slice (Сечение). Переместите секущую плоскость к левой стороне прямоугольника и выполните аналогичный разрез. Поверните секущую плоскость в горизонтальном направлении и проделайте эти же операции над верхней и нижней сторонами прямоугольника. В результате центральный полигон будет иметь четыре новых разреза (рис. 9.100). Для скругления углов необходимо перейти на уровень редактирования вершин и выделить четыре угловые вершины, образованные новыми разрезами. После этого в свитке Edit Vertices (Редактирование вершин) следует щелкнуть на кнопке, расположенной рядом с Chamfer (Фаска). Параметру Chamfer Amount (Величина фаски) открывшегося окна Chamfer Vertices (Фаска вершин) задайте такое значение, чтобы линия, образованная новыми вершинами, касалась закругления сплайнового прямоугольника (рис. 9.101).

Моделирование микроволновой печи

437

Рис. 9.99. Положение секущей плоскости относительно прямоугольника

Рис. 9.100. Разрезы, выполненные в средней части дверцы

Щелкните на кнопке Apply (Применить) и задайте такое новое значение параметру Chamfer Amount (Величина фаски), чтобы образованные отрезки вновь касались кривой шаблона (рис. 9.102). При желании на данном этапе моделирования можно не изменять количество вершин. Однако если вы хотите получить более сглаженное закругление угла, то необходимо увеличить количество разбиений.

438

Глава 9. Практическое моделирование

Рис. 9.101. Новые вершины, образованные с помощью инструмента Chamfer (Фаска)

Рис. 9.102. Новые точки, образующие угол

Построив закругления, можно сохранить полученное расположение вершин. Однако я предпочитаю иметь более упорядоченную и оптимизированную геометрию, поэтому, используя команду Target Weld (Объединить целевую) из свитка Edit Vertices (Редактирование вершин), я соединил все свободные вершины в угловой точке (рис. 9.103).

Моделирование микроволновой печи

439

Рис. 9.103. Угол после редактирования вершин

ВНИМАНИЕ Хочу напомнить, что все это время мы работали с точками одновременно в четырех углах лицевой панели дверцы.

Для продолжения формирования окна в дверце микроволновой печи необходимо выдавить построенный полигон. Для этого перейдите на уровень редактирования полигонов и выделите большой центральный полигон с закругленными углами, после чего примените к нему команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания 10–20 мм (рис. 9.104). После выдавливания выделенный полигон можно удалить, создав таким образом сквозное отверстие, которое впоследствии закроем плоскостью с текстурой решетки и стекла. Создавая модели окружающих нас предметов, мы стараемся сделать их максимально похожими на оригиналы, но часто забываем о мелочах, которые усиливают такое сходство при визуализации. В жизни почти нет предметов с абсолютно ровными и острыми углами. То же самое касается окна в дверце микроволновой печи. Если не оставлять края ровными, а сделать фаску, то при визуализации такая форма значительно выиграет. В этом месте получатся блики, которые подчеркнут геометрию. Для получения фаски необходимо перейти на уровень редактирования ребер и выделить все ребра, образующие внешний край отверстия.

440

Глава 9. Практическое моделирование

Рис. 9.104. Формирование углубления для окна

СОВЕТ Чтобы быстро выделить все ребра по кругу, можно выделить одно ребро, а затем в свитке Selection (Выделение) щелкнуть на кнопке Loop (Петля). В результате выделятся сразу все ребра, расположенные по периметру углубления.

В свитке Edit Edges (Редактирование ребер) щелкните на кнопке рядом с Chamfer (Фаска) и задайте параметру Chamfer Amount (Величина фаски) появившегося окна значение, равное 1,5. Щелкните на кнопке Apply (Применить), а затем повторите создание фаски, выбрав значение 0,5. Таким образом, вместо одного ребра, формирующего угол, вы получите четыре (рис. 9.105). После формирования фаски можно считать работу над дверцей законченной. Теперь следует перейти к моделированию панели управления, расположенной в правой части фасада микроволновой печи. Для этого необходимо открыть спрятанную ранее часть объекта и описанным выше способом спрятать отредактированную дверцу. ПРИМЕЧАНИЕ Напомню, что спрятать выделенные объекты можно с помощью кнопок Hide Selected (Спрятать выделенное) из свитка Edit Geometry (Редактирование геометрии), а отобразить все спрятанные объекты — используя кнопку Unhide All (Отобразить все).

На панели управления микроволновой печи находятся ручки управления таймером и мощностью, а также кнопка для открывания дверцы. Смоделируем их.

Моделирование микроволновой печи

441

Рис. 9.105. Фаска, сформированная с помощью инструмента Chamfer (Фаска)

Как и в случае с окном дверцы, предварительно построим шаблоны из стандартных форм, по которым будем проводить моделирование. Для этого нам понадобятся два сплайна Circle (Окружность) радиусом 27 мм и один сплайн Rectangle (Прямоугольник) c закругленными углами (рис. 9.106).

Рис. 9.106. Расположение сплайнов на панели управления (слева) и параметры прямоугольника (справа)

Моделирование углублений для ручек управления и кнопки открывания дверцы начнем с построения разрезов секущей плоскостью.

442

Глава 9. Практическое моделирование

ПРИМЕЧАНИЕ Мы не собираемся анимировать создаваемый объект, поэтому можно упростить моделирование и не строить отдельные объекты (например, кнопку открывания дверцы), а лишь имитировать их.

Прежде чем выполнять разрезы секущей плоскостью, перейдите на уровень редактирования полигонов и выделите центральный полигон, а в свитке Edit Geometry (Редактирование геометрии) нажмите кнопку Slice Plane (Секущая плоскость). В окне проекции Front (Спереди) разместите секущую плоскость так, чтобы она совпадала с одной из сторон прямоугольника, затем щелкните на кнопке Slice (Сечение) для создания разреза. Повторите описанные выше действия для оставшихся сторон прямоугольника (рис. 9.107). После этого сделайте еще три горизонтальных разреза по обе стороны от окружностей и между ними (рис. 9.108).

Рис. 9.107. Центральный полигон, разрезанный для построения кнопки открывания дверцы

Рис. 9.108. Расположение горизонтальных разрезов

ВНИМАНИЕ Первым делается разрез между окружностями для того, чтобы определить расстояние от разреза до края окружности. Именно на такое расстояние необходимо сместиться от внешнего края окружности при втором и третьем разрезах.

Моделирование микроволновой печи

443

Закругления вокруг кнопки открывания дверцы строятся аналогично тому, что мы уже делали на дверце, поэтому лишь напомню последовательность выполнения операций. 1.

Перейдите на уровень редактирования вершин.

2.

Выделите четыре угловые вершины и дважды (можно и больше, если хотите получить более сглаженное закругление) выполните команду Chamfer (Фаска).

3.

При желании отредактируйте положение образованных вершин так, чтобы они сходились в одной или двух точках угла (рис. 9.109).

Рис. 9.109. Расположение граней, формирующих кнопку открывания дверцы

Кнопка, которую мы создаем, имеет небольшое декоративное углубление в середине. Для его моделирования нам нужно построить ребра во внутренней части кнопки. Горизонтальные ребра выполним с помощью команды Connect (Соединенные) из свитка Edit Vertices (Редактирование вершин). Для этого необходимо выделить две горизонтальные точки и щелкнуть на кнопке Connect (Соединенные) (рис. 9.110). Проделайте такую же операцию и с двумя другими горизонтальными точками во внутренней части кнопки. В вертикальной плоскости нам не удастся применить команду Connect (Соединенные), потому что между точками проходят ребра. По этой причине воспользуемся инструментом Cut (Вычитание) из свитка Edit Geometry (Редактирование геометрии) и дважды разрежем внутреннее пространство по вертикали (рис. 9.111). Для формирования углубления понадобится еще некоторое количество ребер. Сделаем это в три приема.

444

Глава 9. Практическое моделирование

Рис. 9.110. Внутренние вершины, соединенные с помощью команды Connect (Соединенные)

Рис. 9.111. Разрезы, выполненные в вертикальной плоскости

1.

Выделите внутренний полигон, образованный разрезами, и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке рядом с Inset (Смещение внутрь). В появившемся окне задайте параметру Inset Amount (Величина смещения) значение 3.

2.

Не снимая выделения с построенного полигона, щелкните на кнопке, расположенной рядом с Tessellate (Разбиение) в свитке Edit Geometry (Редактирование

Моделирование микроволновой печи

445

геометрии). В открывшемся окне установите переключатель в положение Face (Грани) и щелкните на кнопке OK (рис. 9.112).

Рис. 9.112. Дополнительные ребра внутри клавиши

3.

Сдвиньте выделенные полигоны на маленькое расстояние внутрь, чтобы образовалось небольшое прямоугольное выдавливание.

При выделенных полигонах щелкните дважды на кнопке Grow (Увеличить) в свитке Selection (Выделение) для увеличения выделения до границ контура кнопки. После этого щелкните правой кнопкой на объекте и выберите из контекстного меню строку Convert to Edge (Преобразовать в ребра). Чтобы активными остались только внешние границы выделения, удерживая нажатой клавишу Alt, снимите выделение с внутреннего пространства. Далее примените к выделенным ребрам команду Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 0,8 (рис. 9.113). Далее необходимо сделать углубление по периметру кнопки — создать шов между клавишей и корпусом. Выполнить это совсем просто: достаточно выделить внутренние полигоны, образованные построенными ребрами, и применить к ним команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с высотой выдавливания, равной –5 мм (рис. 9.114). После выдавливания вернитесь на уровень редактирования ребер (у вас должны остаться выделенными ребра по обе стороны шва) и создайте для выделенных ребер закругление, используя все тот же инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 0,15. Это позволит получить закругления на краях, а следовательно, и более реалистичный вид модели после визуализации (рис. 9.115).

446

Глава 9. Практическое моделирование

Рис. 9.113. Применение команды Chamfer (Фаска) к выделенным ребрам

Рис. 9.114. Полигоны, выдавленные в области шва

СОВЕТ Время от времени выполняйте тестовую визуализацию моделируемого объекта — это поможет оперативно выявить возможные ошибки.

Моделирование микроволновой печи

447

Рис. 9.115. Визуализированная модель передней панели микроволновой печи на данном этапе моделирования

Займемся отверстиями, в которых будут находиться ручки управления. Несмотря на то что создание окружностей может показаться сложным, сделать его достаточно легко. Для этого в очередной раз обратимся к инструменту Chamfer (Фаска), но прежде нам необходимо провести небольшую подготовительную работу — разделить полигоны внутри будущих отверстий. Для создания дополнительных ребер внутри полигонов выполните следующие действия. 1.

Перейдите на уровень редактирования полигонов и выделите два полигона, расположенных позади сплайнов.

2.

В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке, расположенной рядом с Tessellate (Разбиение).

3.

В открывшемся окне Tessellate Selection (Разбиение выделения) установите переключатель в положение Face (Грани) и щелкните на кнопке OK.

В результате этих операций каждый полигон будет разделен на четыре части (рис. 9.116). Перейдите на уровень редактирования вершин и выделите две вершины, находящиеся в середине окружностей. После этого примените к ним инструмент Chamfer (Фаска) с такой величиной параметра Chamfer Amount (Величина фаски), чтобы образовавшиеся ребра по меньшей стороне (в нашем случае боковые) касались сплайнов окружности (рис. 9.117).

448

Глава 9. Практическое моделирование

Рис. 9.116. Разбиение полигонов командой Tessellate (Разбиение)

Рис. 9.117. Положение вершин после применения инструмента Chamfer (Фаска)

Для продолжения деления ребер с помощью инструмента Chamfer (Фаска) необходимо привести положение сторон внутренних полигонов к такому состоянию, при котором все четыре ребра внутренних полигонов будут соприкасаться со сторонами сплайна окружности. Боковые стороны объекта удовлетворяют такому требованию, поэтому остается скорректировать положение вершин по вертикали. Для этого выделите четыре вершины, относящиеся к одной из окружностей, и с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать)

Моделирование микроволновой печи

449

масштабируйте их по вертикали. После этого выполните те же операции и для второй окружности (рис. 9.118).

Рис. 9.118. Положение скорректированных вершин

Перейдите снова на уровень редактирования вершин и, выделив все восемь вершин, которые образовались после применения инструмента Chamfer (Фаска), повторите создание фаски от трех до четырех раз (в зависимости от того, какая детализация вам необходима) (рис. 9.119).

Рис. 9.119. Окружность, образованная с помощью инструмента Chamfer (Фаска)

450

Глава 9. Практическое моделирование

СОВЕТ Чтобы строящаяся окружность была правильной формы, необходимо при делении вершин с помощью инструмента Chamfer (Фаска) придерживаться двух правил: ребра, образованные делением вершин, должны касаться шаблона окружности, а вершины — по возможности находиться на одинаковом расстоянии друг от друга.

На рис. 9.120 показан фрагмент панели управления после объединения вершин с помощью команды Target Weld (Объединить целевую) из свитка Edit Vertices (Редактирование вершин). ПРИМЕЧАНИЕ Напоминаю, что это необязательные действия, но я предпочитаю по возможности оптимизировать геометрию и упорядочивать расположение вершин.

Рис. 9.120. Положение вершин после оптимизации

В дальнейшем нам понадобится cкруглить границы окружности, поэтому позаботимся о выделении необходимых ребер заранее следующим образом. 1.

Перейдите на уровень редактирования полигонов и в окне проекции Front (Спереди) выделите два полигона в центре окружностей.

2.

Щелкните на выделении правой кнопкой мыши и в контекстном меню выберите строку Convert to Edge (Преобразовать в ребра). В результате этих операций выделятся ребра по границам выделенных ранее полигонов.

3.

Сохраните выделение, чтобы можно было работать с ним в будущем, и объедините выделенные ребра в именованную группу. Для этого укажите любое имя

451

Моделирование микроволновой печи

(лучше значимое, то есть такое, которое в будущем позволит быстро вспомнить, что вы выделяли) в раскрывающемся списке Named Selection Sets (Название выделенной области) главной панели инструментов (рис. 9.121), после чего подтвердите сделанные изменения нажатием клавиши Enter.

Рис. 9.121. Раскрывающийся список Named Selection Sets (Название выделенной области)

Сейчас можно вернуться к выделенным полигонам и продолжить их редактирование. Нам необходимо выдавить окружности с целью получения углубления под ручками регулировки уровня мощности и таймером. Чтобы это сделать, достаточно воспользоваться инструментом Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания, равной –5 (рис. 9.122).

Рис. 9.122. Выдавливание внутренних полигонов окружностей с помощью команды Extrude (Выдавливание)

Как и в предыдущих случаях, на краях образованных углублений необходимо создать фаску. Для этого перейдите на уровень редактирования ребер. Если у вас снялось выделение с ребер, образующих верхний край углублений, то воспользуйтесь именованным списком, а затем примените к выделению инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 0,6 (рис. 9.123). Приступим к моделированию ручек управления, например, с помощью примитива Cylinder (Цилиндр). Он должен иметь размеры, позволяющие расположить его внутри образованного углубления, и количество сторон, близкое к тому количеству ребер, которое получилось на границе образованных углублений (рис. 9.124).

452

Глава 9. Практическое моделирование

Рис. 9.123. Визуализация выполненных углублений для ручек управления

Рис. 9.124. Положение цилиндра и его параметры

Дальнейшая работа предполагает редактирование объекта на уровне подобъектов, поэтому необходимо конвертировать цилиндр в Editable Poly (Редактируемая полигональная поверхность). Кроме того способа конвертации, который мы применяли ранее (использование контекстного меню объекта), эту же операцию можно выполнить с помощью стека модификаторов. Для этого щелкните правой кнопкой мыши

Моделирование микроволновой печи

453

на типе объекта в стеке модификаторов и в появившемся списке выберите Editable Poly (Редактируемая полигональная поверхность). Перейдите на уровень редактирования вершин и в свитке Selection (Выделение) установите флажок Ignore Backfacing (Без обратной ориентации). Это позволит выбирать только вершины, находящиеся с лицевой части объекта. Чтобы построить ручку необходимой формы, нам понадобится добавить новые ребра цилиндру в его фронтальной части. Для этого будем выделять попарно противоположные вершины, расположенные в вертикальной плоскости, и соединять их с помощью команды Connect (Соединенные) из свитка Edit Vertices (Редактирование вершин). Нам понадобится соединить все вершины в вертикальной плоскости, кроме двух пар, расположенных по краям (рис. 9.125).

Рис. 9.125. Ребра, добавленные командой Connect (Соединенные)

Для дальнейшего редактирования объекта нужны еще три горизонтальных разреза в середине цилиндра (рис. 9.126), которые необходимо выполнить с помощью инструмента Cut (Вычитание) из свитка Edit Geometry (Редактирование геометрии). Разрезав объект по горизонтали, перейдите на уровень редактирования полигонов. В окне проекции Front (Спереди) выделите два средних ряда полигонов, начиная со второго и заканчивая предпоследним, а затем примените к выделенным полигонам команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) на величину выдавливания, равную 1,5 мм (рис. 9.127). Теперь изменим положение вершин в пространстве. Нам необходимо расположить передний ряд только что построенных полигонов так, чтобы он образовывал полукруг (рис. 9.128). Легче всего это сделать в окне проекции Top (Сверху), выделяя попарно вершины и двигаясь от края к центру.

454

Глава 9. Практическое моделирование

Рис. 9.126. Горизонтальные разрезы объекта

Рис. 9.127. Полигоны, выдавленные в средней части ручки

СОВЕТ Если у вас недостаточно опыта, вы можете воспользоваться шаблоном, по которому можно выравнивать вершины. В данном случае необходимо построить шаблон окружности в окне проекции Top (Сверху).

Моделирование микроволновой печи

455

Рис. 9.128. Расположение вершин в окне проекции Top (Сверху)

Немного отредактируем вершины, находящиеся в средней части образованного выступа ручки. Для этого выполните следующие действия. 1.

В окне проекции Front (Спереди) выделите средний ряд вершин выступающих вперед полигонов.

2.

В окне проекции Top (Сверху) сместите их по координате Y на –2.

3.

Вернитесь в окно проекции Front (Спереди) и выделите два внешних ряда вершин выступающих вперед полигонов.

4.

С помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) выполните масштабирование по оси X на величину 95 % (рис. 9.129). Это необходимо сделать для того, чтобы выступающая часть ручки получила требуемое закругление.

Осталось только сделать фаску по краю ручки и разбить геометрию. Для того чтобы сделать первое, перейдите на уровень редактирования ребер и выделите одно из ребер, которые лежат на внешней окружности ручки управления, а затем щелкните на кнопке Loop (Петля) из свитка Selection (Выделение). В результате выделятся все ребра, лежащие на окружности. Примените инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 0,6. Чтобы разбить геометрию и получить сглаженный результат, необходимо в свитке Subdivision Surface (Поверхности с разбиением) установить флажок Use NURMS Subdivision (Использовать NURMS-разбиения) и задать количество разбиений равным 2 (рис. 9.130).

456

Глава 9. Практическое моделирование

Рис. 9.129. Форма ручки управления после редактирования вершин

Рис. 9.130. Готовая ручка панели управления

Моделирование микроволновой печи

457

Копируйте созданную ручку, используя команду главного меню EditClone (ПравкаКлонировать), и разместите ее во втором отверстии панели управления. Таким образом, мы закончили моделирование лицевой панели микроволновой печи. Вернемся к самому началу. Еще нужно создать модель корпуса. Параллелепипед для него уже построен. Командой Unhide All (Отобразить все) контекстного меню откройте все ранее спрятанные объекты. Выделите параллелепипед, построенный для корпуса, и преобразуйте его в Editable Poly (Редактируемая полигональная поверхность). Перейдите на уровень редактирования ребер и в окне проекции Top (Сверху) выделите два ребра, расположенных по бокам объекта в верхней его части. Дважды примените к выделенным ребрам фаску со значением параметра Chamfer Amount (Величина фаски), равным 8 и 2,5 (рис. 9.131).

Рис. 9.131. Фаска в верхней части корпуса

Если бы дверца была непрозрачной, то моделирование корпуса на этом можно было бы считать законченным, но в данном случае необходимо выдавить фронтальный полигон, чтобы в корпусе образовалось внутреннее пространство. Для этого перейдите на уровень редактирования полигонов и в окне проекции Front (Спереди) выделите большой полигон лицевой части корпуса, после чего выполните команду Inset (Смещение внутрь) с величиной смещения 3,5 мм (рис. 9.132). Используя инструмент Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания, равной –320 мм, сформируйте внутреннее пространство корпуса микроволновой печи. Чтобы закончить моделирование, постройте плоскость, закрывающую окно дверцы. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость).

458

Глава 9. Практическое моделирование

Рис. 9.132. Создание смещения

На рис. 9.133 представлена окончательная модель микроволновой печи.

Рис. 9.133. Визуализация готовой модели микроволновой печи

ПРИМЕЧАНИЕ Для анализа готовой модели микроволновой печи вы можете загрузить файл сцены из папки Examples\Глава 09\Microwave прилагаемого к книге DVD. Файл называется microwave.max.

Комплексный подход к моделированию: создание крана для ванной

459

В следующей главе мы рассмотрим принципы текстурирования микроволновой печи с использованием процедурных карт и идентификаторов материала.

Комплексный подход к моделированию: создание крана для ванной Я уже неоднократно говорил, что любое моделирование должно начинаться с анализа будущей модели. Самым простым (и, наверное, самым правильным) способом анализа является попытка мысленно разделить сложную модель на части, для каждой из которых можно применить свой способ моделирования. Именно такой подход к моделированию я называю комплексным. Рассмотрим простой пример: нам необходимо создать модель магнитофона. Выполнив предварительный анализ, можно предположить, что большинство частей являются стандартными (Standard) или улучшенными (Extended) примитивами. Некоторые детали магнитофона могут потребовать более сложного подхода к моделированию, например создания составных объектов (Compound Objects). И лишь в редких случаях, допустим, когда нужно иметь полный контроль над геометрией, моделирование идет за счет наращивания полигонов или уточнения формы на уровне подобъектов по пути «от простого к сложному». Если обобщить вышесказанное, то можно сделать вывод, что комплексный подход к моделированию — это такой подход, при котором сложная модель мысленно разбивается на более простые геометрические формы, для моделирования которых применяются различные средства (использование примитивов, полигональное моделирование, NURBS-моделирование, лофт-моделирование и т. д.). В данном разделе рассмотрим комплексный подход к моделированию на примере крана для ванной (рис. 9.134).

Рис. 9.134. Визуализация крана для ванной

460

Глава 9. Практическое моделирование

Первое, что я сделал, прежде чем начать моделирование, — пошел в ванную комнату и произвел необходимые замеры.

СОВЕТ Если у вас есть возможность получить точные размеры объекта, который вы собираетесь моделировать, никогда не пренебрегайте такой возможностью — это поможет не только получить более реалистичную модель, но и сократить время моделирования.

Замеры получены, с чего начинать? Начинать можно с любой детали (если у вас есть размеры, то нет необходимости привязываться к базовой геометрии). Я предпочитаю начинать моделирование с основных форм, постепенно «наращивая» детали. Воспользуемся именно этим способом. Начнем с корпуса крана. Он имеет довольно сложную форму. Казалось бы, здесь не обойтись без NURBS- или Surface-моделирования либо без использования составного объекта. Однако, как показала практика, самым простым способом моделирования в данном случае является полигональное с последующим разделением полигонов.

ПРИМЕЧАНИЕ В процессе написания данного раздела я пробовал создавать корпус с помощью полигонального, NURBS- и Surface-моделирования. В результате этих экспериментов сделал вывод: если вам не нужны точные размеры и идеальная форма, то быстрее и проще всего работать с полигональной моделью.

Построим объект Box (Параллелепипед) с параметрами, представленными на рис. 9.135. Обратите внимание на то, что количество сегментов по длине параллелепипеда установлено равным семи, что обусловлено количеством точек, в которых объект меняет свою форму. Построение параллелепипеда и создание нужного количества сегментов — все что нам нужно от стандартного примитива. Далее необходимо конвертировать объект в Editable Poly (Редактируемые полигоны), для чего щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). , выдеПерейдите на уровень редактирования подобъектов Polygon (Полигон) лите четыре полигона — крайние фронтальные и соответствующие им полигоны с противоположной стороны объекта (рис. 9.136).

Комплексный подход к моделированию: создание крана для ванной

461

Рис. 9.135. Параллелепипед (слева) и его параметры (справа)

Рис. 9.136. Выделенные полигоны

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке, расположенной рядом с кнопкой Inset (Смещение внутрь). В результате появится окно Inset Polygons (Сместить полигоны внутрь), в котором задайте параметру Inset Amount (Величина смещения) значение, равное 0,5 (рис. 9.137). Подтвердите внесенные изменения, щелкнув на кнопке OK.

462

Глава 9. Практическое моделирование

Рис. 9.137. Окно Inset Polygons (Сместить полигоны внутрь)

Сейчас можно включить NURMS-сглаживание и посмотреть результат выполненного редактирования. Напомню, что сделать это можно, установив в свитке Subdivision Surface (Поверхности с разбиением) флажок Use NURMS Subdivision (Использовать NURMS-разбиения). В области Display (Отображение) задайте параметру Iterations (Количество итераций) значение, равное 2 (рис. 9.138).

Рис. 9.138. Деталь крана после применения NURMS-разбиения

Далее необходимо добавить заготовке небольшую «бочковатость» по краям. Именно в этих местах будут крепиться вентили кранов горячей и холодной воды. Сделать это довольно просто — достаточно разрезать три торцевых полигона с двух сторон. Чтобы выполнить такие разрезы, сделайте следующее. 1.

На уровне редактирования полигонов выделите шесть полигонов (по три с каждой стороны), образующих торцы детали.

2.

В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость) и в окнах проекций разместите секущую плоскость так, чтобы она, располагаясь вертикально, проходила через середину детали (рис. 9.139).

3.

Нажмите кнопку Slice (Сечение) для создания новых граней, после чего щелкните на кнопке Slice Plane (Секущая плоскость), чтобы выключить режим секущей плоскости.

4.

Перейдите на уровень редактирования вершин и сдвиньте наружу на расстояние 3 мм по две построенные вершины торцевых полигонов.

На рис. 9.134 видно, что корпус крана имеет заметное утолщение в середине и некоторое сужение ближе к краям. Изменить форму таким образом довольно просто — достаточно передвинуть и масштабировать группы вершин.

Комплексный подход к моделированию: создание крана для ванной

463

Рис. 9.139. Положение секущей плоскости

ВНИМАНИЕ Проводить трансформации необходимо, именно выделяя группу и масштабируя ее относительно центра, а не перемещая отдельные вершины (в противном случае будет сложно сохранить симметрию).

На рис. 9.140 показана модель, после того, как вершины в средней части были масштабированы и перемещены.

Рис. 9.140. Модель после выполненных трансформаций

464

Глава 9. Практическое моделирование

Обратите внимание, что в местах будущего крепления кранов геометрия полученного объекта не представляет собой правильную окружность. Это как раз тот случай, о котором я говорил в самом начале раздела, имея в виду то, что метод полигонального моделирования имеет относительную точность форм. Немного улучшить форму позволит еще одно смещение ребер внутрь четырех полигонов, с которыми мы работали в начале раздела. Выделите их снова и еще раз примените к ним Inset (Смещение внутрь), но уже с большим значением параметра Inset Amount (Величина смещения), например, равным 5 (рис. 9.141).

Рис. 9.141. Окружности, полученные после второго смещения граней

Переходим к моделированию средней части корпуса крана. В этом месте к корпусу крепятся ручка переключения душа, кран и стойка для размещения душа. Нам необходимо создать утолщения в месте крепления этих элементов. Два из них (вертикальные) имеют один размер, а фронтальное (для крепления ручки) — немного меньший. Логично сначала построить их одинаковыми, а потом один из них уменьшить. Для придания детали нужной формы выделите три средних полигона (два вертикальных и один фронтальный) и примените к ним Bevel (Скос) из свитка Edit Polygons (Редактирование полигонов), как показано на рис. 9.142. Сразу же, не снимая выделения с выдавленных полигонов, еще раз примените Bevel (Скос) с небольшим значением параметра Height (Высота), завершив таким образом построение средней части корпуса крана (рис. 9.143). Осталось масштабировать часть корпуса крана, к которой будет крепиться ручка переключения «душ/кран». Воспользуйтесь для этого инструментом Select and Uniform Scale (Выделить и равномерно масштабировать).

Комплексный подход к моделированию: создание крана для ванной

465

Рис. 9.142. Начало формирования средней части

Рис. 9.143. Создание еще одного скоса для выступающих частей корпуса крана

На этом построение корпуса крана можно считать законченным (рис. 9.144). Перейдем к моделированию кранов. Начнем с создания крепления. Внешне оно напоминает гайку, у которой вытянута одна сторона. Думаю, что в данном случае самым простым способом моделирования будет использование Surface-поверхности.

466

Глава 9. Практическое моделирование

Рис. 9.144. Окончательный вид корпуса крана

Начнем с построения сплайнов. Для формы гайки лучше всего подойдет сплайн формы NGon (Многоугольник). 1.

Выполните команду главного меню CreateShapesNGon (СозданиеФормыМногоугольник) и постройте в окне проекции Front (Спереди) многоугольник с шестью сторонами и радиусом 16 мм.

2.

Создайте еще один шестиугольник радиусом 13 мм, в настройках которого установите флажок Circular (Окружность).

3.

Выделите один из построенных многоугольников и преобразуйте его в Editable Spline (Редактируемый сплайн), а затем присоедините к нему второй многоугольник с помощью команды Attach (Присоединить).

4.

Перейдите на уровень редактирования Segment (Сегмент), выделите все сегменты обоих сплайнов и разбейте их. Для этого задайте параметру, расположенному возле кнопки Divide (Разделить) в свитке Geometry (Геометрия), значение 1. Затем щелкните на кнопке Divide (Разделить) (рис. 9.145).

Сплайны необходимо разбить для того, чтобы иметь возможность имитировать на гайке скос. ВНИМАНИЕ Первые вершины обоих сплайнов должны находиться на одной стороне (это важно для дальнейших построений, в противном случае произойдет скручивание поверхности объекта).

Комплексный подход к моделированию: создание крана для ванной

467

Рис. 9.145. Многоугольники с разделенными сегментами

Скопируйте созданные сплайны, для чего перейдите на уровень подобъектов Spline (Сплайн) и в окне проекции Top (Cверху), удерживая нажатой клавишу Shift, переместите оба сплайна по координате Y на 10 мм. Кроме того, нам понадобится еще одна окружность меньшего диаметра, для построения копии которой выделите сплайн окружности и переместите его еще на 20 мм относительно предыдущих. Не снимая выделения, уменьшите его с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать). Теперь необходимо изменить форму двух шестигранников для соответствия их строящемуся объекту. Для этого выделите вершины, находящиеся в серединах сегментов (те, которые были построены путем разделения сегментов), и немного сместите их в противоположные стороны (рис. 9.146). После редактирования положения вершин шестигранников и размера окружностей можно переходить к построению поперечных сечений. В ранних версиях 3ds Max Cross Section (Поперечное сечение) существовала лишь в виде отдельного модификатора, но в последних версиях программы она стала частью редактора сплайнов. Воспользуемся ею для построения поперечных сечений и поверхности. 1.

Выделите объект, состоящий из сплайнов, и перейдите к свитку Geometry (Геометрия) настроек объекта на командной панели. В области New Vertex Type (Тип новых вершин) установите переключатель в положение Smooth (Сглаживание).

ВНИМАНИЕ Все построенные сплайны должны принадлежать одному объекту.

468

Глава 9. Практическое моделирование

Рис. 9.146. Положение и форма сплайнов, подготовленных для создания модели гайки

2.

В свитке Geometry (Геометрия) нажмите кнопку Cross Section (Поперечное сечение), в результате чего она выделится цветом.

3.

В окне проекции Left (Слева) щелкните на сплайне меньшего радиуса, затем на втором сплайне и на следующем за ним шестиграннике (рис. 9.147). Щелкните правой кнопкой мыши для завершения построения поперечных сечений. В области New Vertex Type (Тип новых вершин) установите переключатель в положение Linear (Линейная) и продолжите построение поперечных сплайнов для оставшейся части объекта.

4.

5.

Создайте поверхность, для чего примените к объекту модификатор Surface (Поверхность), выполнив команду главного меню ModifiersPatch/Spline Editing Surface (МодификаторыРедактирование патчей/сплайновПоверхность).

6.

При необходимости в свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали).

После этого получится почти готовая гайка. Ей лишь недостает четкости граней. Это легко исправить, установив для этой части модели отдельную группу сглаживания. Для этого примените к объекту модификатор Edit Mesh (Редактирование поверхности), перейдите на уровень редактирования полигонов и выберите полигоны, расположенные между двумя шестиугольниками. В области Smoothing Groups (Сглаживание) свитка Surface Properties (Свойства поверхности) щелкните на кнопке Clear All (Очистить все).

Комплексный подход к моделированию: создание крана для ванной

469

Рис. 9.147. Поперечные сплайны для правой части гайки

СОВЕТ При желании можно применить к объекту модификатор Shell (Раковина) для придания толщины.

В результате этих действий гайка примет окончательный вид (рис. 9.148).

Рис. 9.148. Готовая модель гайки

470

Глава 9. Практическое моделирование

Теперь построим четыре гайки: три одинаковые, стандартные гайки и одну cо скосом, находящуюся у основания крана. Их следует моделировать описанным выше способом (кроме того, вы можете немного изменить копию созданной гайки), поэтому не стану повторяться, а лишь покажу, как должны выглядеть сплайны и готовая поверхность новых гаек (рис. 9.149).

Рис. 9.149. Форма сплайнов малой гайки

Как видно из рис. 9.149, для этого типа гаек нужны пять сплайнов, четыре из которых попарно зеркально отражены и один (окружность меньшего диаметра) дублирован с масштабированием для придания утолщения на гайке (можно вместо этого использовать модификатор Shell (Раковина)). Две такие гайки будут располагаться с противоположной стороны корпуса крана для крепления к стене, а одна — в верхней части для крепления стойки (рис. 9.150). Для нижней гайки характерно небольшое сужение геометрии книзу. Его можно получить, просто переместив последний сплайн на некоторое расстояние вниз и немного уменьшив его размер (рис. 9.151). Между нижней гайкой и корпусом должна располагаться втулка, роль которой в данном случае играет параметрический объект Cylinder (Цилиндр).

Комплексный подход к моделированию: создание крана для ванной

Рис. 9.150. Корпус крана с гайками

Рис. 9.151. Модифицированная гайка нижней части крана

471

472

Глава 9. Практическое моделирование

Прежде чем приступить к более сложному моделированию, построим два декоративных элемента, закрывающих места крепления крана к стене. В нашем случае это может быть либо объект, выполненный методом вращения (с помощью модификатора Lathe (Вращение)), либо просто немного деформированная половина сферы. Я решил воспользоваться вторым способом, как более простым. Согласно моим измерениям, диаметр окружности «чашки» составляет 70 мм, соответственно необходимо построить половину сферы (в настройках объекта Sphere (Сфера) установить флажок Hemisphere (Полусфера)) радиусом 35 мм и масштабировать ее по оси вращения (ось Z) (рис. 9.152).

Рис. 9.152. Корпус крана с гайками и декоративными элементами

Дальнейшее моделирование может показаться вам более сложным. Это объясняется тем, что моделировать придется с помощью NURBS. В 3ds Max это непростая процедура, так как есть некоторые ограничения, которые необходимо учитывать при моделировании. Возможно, у вас появится закономерный вопрос: «А зачем тогда пользоваться этой технологией, если все можно сделать с помощью полигонального моделирования?» Ответ прост: потому, что при правильном использовании форм, которые описываются неоднородными рациональными В-сплайнами (NURBS), результат окажется лучше (более сглаженные формы), к тому же его быстрее можно достичь. Перейдем к моделированию кранов. По сути, это будут поверхности, созданные с помощью вращения кривых, с построения которых мы и начнем. В окне проекции Top (Сверху) постройте NURBS-кривую размером 20 Ч 17 мм (рис. 9.153). Для этого воспользуйтесь командой CreateNURBSCV Curve (СозданиеNURBSCV-кривая).

Комплексный подход к моделированию: создание крана для ванной

473

Рис. 9.153. CV-кривая, построенная в окне проекции Top (Cверху)

Перейдите на вкладку Modify (Изменение). Чтобы создать поверхность, примените к построенной кривой инструмент Create Lathe Surface (Создать поверхность вращением), расположенный на плавающей панели NURBS. В результате должен получиться объект, напоминающий по форме бочонок (рис. 9.154).

Рис. 9.154. Основание ручки (слева) и кнопка Create Lathe Surface (Создать поверхность вращением) на панели NURBS (справа)

Теперь нужно создать еще один объект таким же способом, то есть вращением кривой профиля. На сей раз это будет кривая каплевидной формы, построенная с помощью CV Curve (CV-кривая) (рис. 9.155).

474

Глава 9. Практическое моделирование

После создания кривой примените к ней инструмент Create Lathe Surface (Создать поверхность вращением), расположенный на плавающей панели NURBS.

Рис. 9.155. Форма кривой части ручки

ПРИМЕЧАНИЕ Неискушенному пользователю может показаться, что легче и привычнее сделать такой объект, используя стандартные способы построения сплайнов и применяя модификатор Lathe (Вращение), в настройках которого переключатель Output (Результат) установлен в положение NURBS. Такой подход вполне подходит для объектов, которые не будут редактироваться как NURBS-поверхность. В противном случае могут возникнуть проблемы, которые при дальнейшем редактировании поверхности могут вызвать значительные затруднения или сбой в работе программы.

Продолжим моделирование. Теперь нужно сделать три копии только что построенного объекта. Эти копии нужно будет расположить по периметру корпуса ручки с помощью инструмента Array (Массив), поэтому сначала необходимо установить опорную точку (Pivot Point) в середину построенного ранее корпуса. Чтобы это сделать, нужно перейти на вкладку Hierarchy (Иерархия) командной панели и нажать кнопку Pivot (Опора). В свитке Adjust Pivot (Настройка опоры) следует щелкнуть на кнопке Affect Pivot Only (Только опора) и переместить в окне проекции Front (Спереди) опорную точку в середину корпуса ручки (рис. 9.156). Теперь можно создать массив из построенной детали. Для этого выполните команду главного меню ToolsArray (ИнструментыМассив), в результате чего откроется окно, в котором необходимо установить параметры, как показано на рис. 9.157.

Комплексный подход к моделированию: создание крана для ванной

475

Рис. 9.156. Опорная точка, размещенная в середине корпуса ручки

Рис. 9.157. Настройки, выполненные в окне Array (Массив)

В результате у вас должны получиться три копии объекта, расположенные по периметру корпуса. Остается только добавить фаску, чтобы поверхности объектов, составляющих ручку крана, выглядели более естественно, плавно перетекая одна в другую. Но прежде, чем это делать, необходимо повернуть среднюю часть (корпус) на 45° (рис. 9.158). Это делается для того, чтобы шов, образованный кривой вращения (белая линия, идущая от центра), не попадал в места пересечения объектов, в противном случае возникнут проблемы с созданием фаски. Сделайте копию средней части ручки и одной из пристыкованных деталей, чтобы впоследствии создать ручку переключения «душ/кран».

476

Глава 9. Практическое моделирование

Рис. 9.158. Взаимное расположение объектов, составляющих ручку

Переходим к созданию фаски. Прежде всего необходимо объединить все детали, относящиеся к ручке, в один объект. Для этого нужно выделить корпус (или любую другую деталь ручки) и, нажав в свитке General (Общие) кнопку Attach (Присоединить), выбрать в окне проекции все необходимые детали, относящиеся к ручке. Только после этого можно воспользоваться инструментом Create Fillet Surface (Создать поверхность-фаску) плавающей палитры NURBS. Выделив инструмент создания фаски, щелкните на одном из внешних объектов ручки (в результате он изменит цвет), а затем на корпусе. В итоге получим фаску, параметры которой необходимо уточнить в свитке Fillet Surface (Поверхность-фаска). Задайте значения величины фаски с помощью параметров Start Radius (Начало радиуса) и End Radius (Конец радиуса) (у меня они равны 3,5). В областях Trim First Surface (Обрезать первую поверхность) и Trim Second Surface (Обрезать вторую поверхность) установите флажки Trim Surface (Обрезать поверхность) (рис. 9.159). Возможно, при обрезании поверхности (Trim Surface) вам понадобится установить флажки Flip Trim (Обратить обрезание) или Flip Normals (Обратить нормали) — все будет зависеть от того, как вы построили поверхность и как ее рассчитывает программа. Создание фаски необходимо повторить для всех деталей рукоятки крана. Чтобы закончить с этой деталью, добавим к фронтальной части улучшенный примитив OilTank (Цистерна) с небольшой фаской, выполненной с помощью выдавливания ребер. Для этого используем модификатор Edit Mesh (Редактирование поверхности) (рис. 9.160). Ручка переключения «душ/кран» делается из созданной ранее копии двух объектов. Это всего лишь немного модифицированная форма рычага переключения.

Комплексный подход к моделированию: создание крана для ванной

477

Рис. 9.159. Параметры фаски (справа) и сопряжение двух деталей, полученных с ее помощью (слева)

Рис. 9.160. Готовая модель рукоятки крана

ПРИМЕЧАНИЕ Напоминаю, что вы можете в любой момент перейти на уровень редактирования вершин и изменить форму кривой, использованной для тела вращения. Это можно сделать даже после создания фаски и обрезания поверхности.

478

Глава 9. Практическое моделирование

Сейчас можно посмотреть на полученную модель крана в целом (рис. 9.161).

Рис. 9.161. Результат визуализации части крана

Прежде чем начинать моделирование стойки, которая представляет собой, пожалуй, самую сложную с точки зрения формы деталь крана, создадим трубку в нижней части крана. Самый простой способ построения в данном случае — использование лофтинга с небольшим редактированием формы профиля. В окне проекции Left (Слева) постройте сплайн Line (Линия) длиной 360 мм и загибами на концах по 80 мм (это будет сплайн пути), а в окне проекции Top (Cверху) — окружность диаметром 18 мм для формы поперечного сечения (рис. 9.162). Чтобы получить лофт-объект, необходимо выделить сплайн пути и выполнить команду главного меню CreateCompoundLoft (СозданиеСоставные объектыЛофтинговые). В результате на командной панели появятся настройки лофтобъекта. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Top (Сверху) щелкните на построенной ранее окружности. В результате у вас должен получиться объект в виде изогнутой трубки. СОВЕТ При необходимости можно скорректировать форму лофт-объекта путем редактирования вершин сплайна пути или радиуса окружности.

Но это еще не все. Нам нужно создать утолщение на конце трубки (в том месте, где крепится сетка фильтра). Это проще всего сделать с помощью редактирования

Комплексный подход к моделированию: создание крана для ванной

479

деформации масштаба. Чтобы получить доступ к этим параметрам, щелкните на кнопке Scale (Масштаб) в свитке Deformations (Деформации) настроек лофт-объекта. В результате откроется окно Scale Deformation (Деформация масштаба). В нем необходимо добавить в самом конце шкалы (а соответственно, и на самом лофтобъекте) несколько точек и отредактировать их положение так, чтобы профиль кривой повторял форму наконечника трубки (рис. 9.163).

Рис. 9.162. Форма сплайна пути

Рис. 9.163. Окно Scale Deformation (Деформация масштаба)

ПРИМЕЧАНИЕ Более подробно о том, как работать с лофт-объектами, рассказано в разд. «Моделирование лофт-объектов» данной главы.

480

Глава 9. Практическое моделирование

После всех вышеописанных операций должен получиться объект, показанный на рис. 9.164.

Рис. 9.164. Визуализация созданной части крана

Моделирование держателя для душа может вызвать определенные затруднения, поэтому рекомендую очень внимательно отнестись к этой части раздела. Начнем с того, что уберем со сцены все объекты, кроме верхней гайки (она нам понадобится для того, чтобы иметь возможность привязаться к размеру ее внутреннего отверстия). В окне проекции Top (Сверху) постройте окружность с диаметром, соответствующим внутреннему диаметру гайки. После создания сплайна конвертируйте его в NURBS, для чего щелкните на нем правой кнопкой мыши и выполните команду Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS) контекстного меню. Используя плавающую палитру инструментов NURBS, примените к окружности инструмент Create Extrude Surface (Создать поверхность выдавливанием) на высоту (значение параметра Amount (Величина) настроек кривой на командной панели) 65 мм. После выдавливания скопируйте полученный объект и поверните его на 90°. Таким образом, получим ответвление в стойке для присоединения гибкого шланга (рис. 9.165). Чтобы получить сглаженное соединение двух поверхностей, присоедините командой Attach (Присоединить) одну поверхность к другой и создайте между ними фаску, как это было описано выше для ручек. В результате у вас должно получиться основание держателя (рис. 9.166).

Комплексный подход к моделированию: создание крана для ванной

481

Рис. 9.165. Начало моделирования стойки

Рис. 9.166. Держатель после создания фаски

Перейдем к построению верхней части держателя. Ее форма является относительно сложной с точки зрения моделирования стандартными средствами, но можно воспользоваться небольшой хитростью — создать этот объект методом лофтинга.

482

Глава 9. Практическое моделирование

В окне проекции Front (Спереди) постройте сплайн пути, а в окне Left (Cлева) — два сплайна поперечного сечения (рис. 9.167).

а

б

Рис. 9.167. Форма сплайнов пути и профиля в окне проекции фронтального вида (а) и вида слева (б)

Создайте лофт-объект, для чего выделите сплайн пути и выполните команду CreateCompoundLoft (СозданиеСоставные объектыЛофтинговые). В результате этих операций на командной панели появятся настройки лофт-объекта. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и выберите в одном из окон проекций прямоугольник в качестве начальной формы поперечного сечения. После этого в свитке Path Parameters (Параметры пути) задайте параметру Path (Путь) значение, равное 5, затем, щелкнув на кнопке Get Shape (Взять форму), выберите прямоугольник еще раз. Продолжите формирование объекта, задав параметру Path (Путь) значение, равное 15, и выбрав модифицированный прямоугольник (с изогнутыми сторонами). Повторите эту же операцию для пути со значением 85 %. И наконец, последнее значение пути равно 95 %, и в качестве формы пути используется правильный прямоугольник (рис. 9.168). ПРИМЕЧАНИЕ Возможно, при построении лофт-объекта у вас окажутся перевернутыми сплайны поперечных сечений. Чтобы это исправить, можно выделить форму поперечного сечения на уровне подобъектов Shape (Форма) лофт-объекта и поворачивать ее до правильного положения в пространстве.

Комплексный подход к моделированию: создание крана для ванной

483

Рис. 9.168. Лофт-объект, построенный в верхней части держателя душа

Теперь необходимо изменить контуры объекта так, чтобы он стал больше похож на реальный держатель. Для этого воспользуемся деформацией масштабирования из свитка Deformations (Деформации). Щелкните на кнопке Scale (Масштаб), в результате чего откроется окно Scale Deformation (Деформация масштаба), в котором нажмите кнопку Display Y Axis (Показать ось Y) и отожмите Make Symmetrical (Сделать симметричным), чтобы деформация происходила только по оси Y. Добавьте кривой, отображенной в окне Scale Deformation (Деформация масштаба), по четыре точки, симметрично расположенные относительно центра, и одну в середине кривой. После этого скорректируйте их положения так, как показано на рис. 9.169.

Рис. 9.169. Окно Scale Deformation (Деформация масштаба)

484

Глава 9. Практическое моделирование

В результате этих действий у вас должен получиться почти готовый элемент верхней части опоры (рис. 9.170).

Рис. 9.170. Держатель после применения деформации масштаба

Далее необходимо сделать углубления в верхней части держателя. Обычно я выполняю подобную работу с помощью редактирования полигональной поверхности на уровне подобъектов. Но есть более простой, хотя и не самый лучший, путь — булева операция вычитания. СОВЕТ Я настоятельно не рекомендую злоупотреблять булевыми операциями, так как геометрия, получаемая после таких вырезаний, становится почти непригодной для дальнейшего редактирования. Кроме того, такая операция иногда приводит к аварийному завершению программы. В связи с этим перед применением булевых операций необходимо сохранить файл и проверить объекты на наличие ошибок (можно воспользоваться модификатором STL Check (STL-тест)). Применять булевы операции лучше всего на завершающей стадии моделирования объекта.

Постройте цилиндр с радиусом 12,5 мм и расположите его в верхней части держателя так, чтобы ось цилиндра совпадала с его верхней кромкой (рис. 9.171). Выделите держатель и выполните команду CreateCompoundBoolean (СозданиеСоставные объектыБулев). В свитке Pick Boolean (Указать булев) щелкните на кнопке Pick Operand B (Указать операнд Б) и в одном из окон проекций выберите построенный цилиндр в качестве второго операнда. В результате у вас должна получиться геометрия верхней части держателя, как показано на рис. 9.172.

Комплексный подход к моделированию: создание крана для ванной

485

Рис. 9.171. Объекты, подготовленные для булевой операции вычитания

Рис. 9.172. Модель на данном этапе

Займемся моделированием ручки душа. Здесь форма объектов сама подсказывает способы моделирования: наконечник с сеткой необходимо выполнять с помощью NURBS, среднюю часть — как Surface-поверхность, а конечную — вращением сплайна.

486

Глава 9. Практическое моделирование

СОВЕТ Большая часть построенных объектов не нужна для продолжения моделирования, поэтому имеет смысл спрятать их с помощью команды Hide (Спрятать), оставив лишь верхнюю часть стойки.

Перейдем к построению NURBS-кривых. Основная форма, завершающаяся сеткой, напоминает колокольчик размером 50 Ч 55 мм. Ее мы сейчас и построим (рис. 9.173).

Рис. 9.173. Форма CV-кривой

Постройте NURBS-кривую и примените к ней инструмент Create Lathe Surface (Создать поверхность вращением) плавающей палитры инструментов NURBS так же, как это описано выше для ручек кранов. В результате у вас должен получиться объект, показанный на рис. 9.174. Построение второй CV-кривой не должно вызвать проблем, так как мы уже не раз выполняли такое построение, кроме того, данная кривая имеет простую форму (рис. 9.175). СОВЕТ При работе с CV Curve (CV-кривая) бывает сложно создавать прямые углы или небольшие закругления, потому что NURBS старается сгладить кривую, расположенную между точками. Чтобы этого избежать, можно располагать соседние точки ближе, а также применять к ним весовой коэффициент (параметр Weight (Вес) в свитке CV уровня подобъектов Curve CV (Управляющие вершины кривой)), что я в данном случае и сделал для угловой точки.

Комплексный подход к моделированию: создание крана для ванной

487

Рис. 9.174. Поверхность, построенная вращением

Рис. 9.175. CV-кривая для формы вращения

Как и в предыдущих случаях, необходимо выполнить сглаженное объединение двух построенных объектов. Как вы уже знаете, чтобы построить фаску между двумя объектами, необходимо в первую очередь присоединить одну поверхность к другой (воспользовавшись инструментом Attach (Присоединить)), а затем применить инструмент Create Fillet Surface (Создать поверхность-фаску) плавающей палитры NURBS. В результате должна получиться законченная верхняя часть ручки душа (рис. 9.176).

488

Глава 9. Практическое моделирование

Рис. 9.176. Построенная часть ручки душа

Для построения средней пластмассовой части ручки снова обратимся к Surfaceповерхности. В данном случае это будет оптимальный и самый быстрый способ решения проблемы, связанной с нестандартной формой объекта. Начните с того, что в окне проекции Left (Слева) постройте окружность, используя сплайн NGon (Многоугольник) радиусом 10 мм. При этом для получения окружности необходимо в свитке Parameters (Параметры) настроек многоугольника установить флажок Circular (Окружность) (рис. 9.177).

Рис. 9.177. Окружность, построенная с помощью сплайна NGon (Многоугольник)

Комплексный подход к моделированию: создание крана для ванной

489

ВНИМАНИЕ Сплайн Circle (Окружность) имеет четыре сегмента, а нам для построения поперечного сечения ручки душа необходимо шесть. В связи с этим окружность должна быть создана именно с помощью сплайна NGon (Многоугольник), который позволяет задавать произвольное количество сегментов сплайна.

Скопируйте данную или постройте новую окружность, но с радиусом 14 мм. Дальнейшая модификация окружностей не представляет сложности, но будьте внимательны при ее выполнении. 1.

Выделите большую окружность (если она еще не выделена).

2.

Щелкните на ней правой кнопкой мыши и преобразуйте ее в Editable Spline (Редактируемый сплайн).

3.

Перейдите на уровень редактирования вершин и выделите все вершины, относящиеся к сплайну (их должно быть шесть).

4.

Примените к ним Fillet (Закругление), для чего в свитке Geometry (Геометрия) введите в поле рядом с кнопкой Fillet (Закругление) значение 1 (на рис. 9.178 это внешние парные вершины).

Рис. 9.178. Внешняя окружность после редактирования вершин

5.

Перейдите на уровень редактирования сегментов и выделите шесть больших сегментов сплайна, принадлежащих окружности.

6.

В поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) установите значение 1 и щелкните на кнопке Divide (Разделить). В результате большие сегменты разделятся посередине на две части.

490

Глава 9. Практическое моделирование

7.

Перейдите на уровень редактирования вершин и выделите те шесть вершин, которые образовались в результате выполнения предыдущей операции.

8.

Используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), масштабируйте все выделенные вершины к центру так, чтобы они расположились на линии меньшего сплайна (см. рис. 9.178).

Выполните описанные операции для меньшего сплайна, за исключением того, что для выполнения команды Divide (Разделить) необходимо выделять не большие сегменты, а маленькие, а также того, что смещение вершин не требуется (рис. 9.179).

Рис. 9.179. Расположение вершин на меньшей окружности

Для построения формы ручки нам потребуется всего пять сплайнов, поэтому, после того как будет скорректирована их форма, необходимо копировать сплайны меньшего диаметра для получения еще трех таких же окружностей. Расположите их в окне проекции Top (Сверху) так, чтобы большой сплайн с криволинейной формой находился в середине построенного ранее держателя, а по краям располагались по два меньших сплайна окружности. Причем размеры второго и четвертого сплайнов необходимо немного увеличить. Это нужно для того, чтобы ручка слегка изгибалась по всей длине (рис. 9.180). Прежде чем перейти к созданию поверхности, необходимо построить поперечные сплайны, соединяющие только что построенные формы поперечного сечения. Аналогичные действия мы выполняли уже не раз, поэтому я лишь вкратце напомню последовательность их выполнения и укажу особенности моделирования. 1.

Используя команду Attach (Присоединить), объедините все сплайны в один объект.

2.

В два этапа постройте поперечные сечения с помощью команды Cross Section (Поперечное сечение) из свитка Geometry (Геометрия):

Комплексный подход к моделированию: создание крана для ванной

491

Рис. 9.180. Расположение сплайнов в окне проекции Top (Сверху)

1) установите переключатель области New Vertex Type (Тип новых вершин) в положение Smooth (Сглаживание) и создайте поперечные сечения для средней части между вторым, третьим и четвертым сплайнами; 2) измените тип строящихся вершин на Linear (Линейная) и закончите построения на краях. ПРИМЕЧАНИЕ Построение поперечных сечений в два этапа позволяет избежать искривления поверхности на краях и в то же время сглаживает кривые в середине (рис. 9.181).

После применения модификатора Surface (Поверхность) к построенным сплайнам должна получиться поверхность средней части ручки, как показано на рис. 9.182.

Рис. 9.181. Форма сплайнов поперечного сечения

492

Глава 9. Практическое моделирование

Рис. 9.182. Результат визуализации средней части ручки душа

Создадим небольшую деталь, расположенную в месте крепления гибкого шланга. Ее можно сделать с помощью формы вращения. Можно также воспользоваться примитивом Cylinder (Цилиндр), для которого следует немного подкорректировать положение вершин, предварительно применив к нему модификатор Edit Mesh (Редактирование поверхности). Я решил воспользоваться вторым вариантом и построил цилиндр с тремя сегментами по высоте и диаметром, немного большим, чем у ручки в месте их соединения. Затем, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), придал нужную форму (рис. 9.183).

Рис. 9.183. Форма детали у основания ручки

Комплексный подход к моделированию: создание крана для ванной

493

Мы построили модель почти всего крана, осталось создать шланг для душа. Начнем с моделирования наконечников, которые крепятся к корпусу стойки и ручке душа с помощью резьбы. В данном случае, как и в предыдущем, можно воспользоваться примитивом Cylinder (Цилиндр) с последующей модификацией на уровне подобъектов или построить объект методом вращения профиля (рис. 9.184).

Рис. 9.184. Форма наконечника шланга

СОВЕТ Вы вполне можете обойтись построением трех цилиндров различного диаметра без последующего их редактирования.

Точно такой же наконечник шланга должен крепиться и к стойке держателя. Нам достаточно просто скопировать уже построенный и поместить его в нужное место (рис. 9.185). Задача построения металлического шланга кажется сложной, однако решается весьма простым способом — созданием лофт-объекта на основе сплайна Helix (Спираль) и небольшого профиля (рис. 9.186). Высота спирали, ее радиусы и количество оборотов должны быть такими, как показано на рис. 9.186. ПРИМЕЧАНИЕ Не забывайте, что создание сплайнов форм пути и профиля проводится в двух различных окнах проекций. В данном случае спираль строится в окне проекции Top (Сверху), а форма профиля — в окне проекции Front (Спереди).

494

Глава 9. Практическое моделирование

Рис. 9.185. Держатель и ручка вместе с наконечниками

Рис. 9.186. Форма сплайна (слева) и параметры спирали, подготовленные для построения лофт-объекта (справа)

На рис. 9.187 показаны основные параметры получившегося объекта и то, как он должен выглядеть. Построив объект с помощью лофтинга, мы получили шланг нужного профиля, однако совершенно прямой, следовательно, его нужно изогнуть. На самом деле это не такая сложная задача, как кажется. Для ее решения необходимо построить сплайн, который бы соответствовал нужной форме и являлся кривой, по которой впоследствии будет деформироваться шланг. Кривая должна начинаться и заканчиваться в середине построенных ранее наконечников (рис. 9.188).

Комплексный подход к моделированию: создание крана для ванной

495

Рис. 9.187. Внешний вид полученного лофт-объекта (слева) и его параметры (справа)

Рис. 9.188. Форма кривой для деформации шланга

Для дальнейшего построения формы сделайте следующее. 1.

Выделите построенный лофт-объект и примените к нему модификатор деформации по пути, выполнив команду ModifiersAnimationPath Deform (WSM) (МодификаторыАнимацияДеформация по траектории).

2.

В свитке Parameters (Параметры) настроек модификатора щелкните на кнопке Pick Path (Указать путь) и выберите в окне проекции сплайн, соответствующий форме, по которой будет деформироваться шланг.

3.

В этом же свитке щелкните на кнопке Move to Path (Передвинуть на путь), чтобы лофт-объект принял форму сплайна (рис. 9.189).

496

Глава 9. Практическое моделирование

Рис. 9.189. Построенный объект (слева) и его стек модификаторов (справа)

Это все, что требовалось сделать для построения модели крана для ванной комнаты. Осталось только открыть все спрятанные ранее объекты и визуализировать модель целиком (рис. 9.190).

Рис. 9.190. Визуализация построенного крана

Забавная лошадка

497

После того как модель выполнена, можно заняться оптимизацией геометрии, созданием материалов и наложением текстур. В завершение данного раздела хотелось бы подвести итоги и дать несколько советов. Начнем с того, что целью раздела было показать преимущество комплексного подхода к моделированию объектов сложной формы, в чем, я надеюсь, вы убедились сами на данном примере. В процессе моделирования крана мы применяли полигональное, NURBS- и Surface-моделирование, использовали параметрические объекты и формы, работали с объектами, полученными методом вращения формы и выдавливания, и, наконец, закончили назначением модификатора анимации формы по пути. Все это в целом помогло нам в работе над сложной моделью, выполнение которой с помощью какой-либо одной техники потребовало бы значительно бульших усилий. В процессе моделирования крана не стояла задача оптимизации геометрии, поэтому конечный объект получился со значительным количеством полигонов. Если вам нужно создать самостоятельный объект (без окружения), то количество полигонов не является критическим, но если он является частью какой-то сцены, то его необходимо оптимизировать. Чтобы сделать это, в первую очередь убедитесь в том, что вам не понадобится редактировать объект (еще лучше, если вы сделаете резервную копию файла), затем сверните стек всех объектов до состояния Editable Mesh (Редактируемая сетка). Для NURBS-объектов можно предварительно настроить аппроксимацию поверхности и затем привести к редактируемой сетке. Кроме того, создание объектов с использованием методов разбиения сетки ведет к избыточному созданию полигонов по всей поверхности, даже там, где они не нужны для передачи формы (например, на ровных плоских участках). В таком случае для уменьшения количества полигонов можно использовать модификатор Optimize (Оптимизация). ПРИМЕЧАНИЕ Для анализа готовой модели крана вы можете загрузить файл сцены shower.max из папки Examples\Глава 09\Shower прилагаемого к книге DVD.

Забавная лошадка Однажды, знакомясь с интересными решениями в области трехмерной графики, я обнаружил в Интернете модель мультипликационного персонажа, выполненную в программе LightWave 3D. Это был молодой игривый жираф. Меня настолько заинтересовала эта модель, что я решил построить в 3ds Max нечто похожее. Время шло, но из-за постоянной занятости и недостатка времени я так и не выполнил задуманное. И вот сегодня вместе с вами мы попробуем реализовать мою давнишнюю мечту. Не станем повторяться и в качестве персонажа для моделирования возьмем лошадку. Для начала определимся с тем, что мы будем моделировать. Во-первых, это будет мультипликационный персонаж, что дает нам возможность свободного творчества и отступления от форм и пропорций реального животного.

498

Глава 9. Практическое моделирование

Большим подспорьем в моделировании могли бы оказаться карандашные наброски, но у нас их нет, и весь процесс моделирования будет происходить в творческом режиме. Во-вторых, низкополигональное моделирование потому так и называется, что при минимальном количестве полигонов, используемых в работе, мы постараемся построить вполне приличную модель. Для реализации поставленной задачи лучше всего подойдет принцип моделирования «от простого к сложному». Иначе говоря, мы будем сначала создавать общую форму модели, а затем уточнять ее и добавлять детали. В-третьих, так как наша модель является симметричным объектом, то моделировать мы будем лишь одну ее сторону. После окончания моделирования достаточно будет выполнить зеркальную копию модели и объединить две половинки в законченный персонаж. С чего начинать? Как мне кажется, любое моделирование, и тем более моделирование живых существ, во многом определяется сложностью задачи и личными предпочтениями. В данном случае моделирование можно вести с использованием техники наращивания полигонов, плоской формы или параметрического объекта (параллелепипед, сфера). Начинать моделирование можно как с головы животного, так и с туловища — в этом нет принципиальной разницы. Мы всегда можем обратиться к какой-то определенной части объекта и изменить ее форму, масштаб, добавить или убрать детали. Главное — всегда сопоставлять то, что вы делаете, с тем, что вы хотите получить в конце работы. Итак, приступим. Чтобы немного ознакомиться с техникой моделирования и «почувствовать» форму, начнем с построения туловища лошади. Затем мы смоделируем ноги и только после этого перейдем к самой сложной части моделирования — голове. Начнем моделирование персонажа с плоской формы. Создайте сплайн, очерчивающий форму туловища лошадки. Для этого выполните команду главного меню CreateShapesLine (СоздатьФормыЛиния) и в окне проекции Front (Спереди) постройте замкнутую линию, по форме напоминающую туловище лошади, если смотреть на нее со стороны (рис. 9.191). При необходимости перейдите на уровень редактирования вершин и уточните их положение в пространстве. Добавьте новые вершины с помощью инструмента Refine (Уточнить) или удалите лишние. СОВЕТ Выполняя такое построение, обращайте внимание на характерные изменения линии формы тела персонажа. Вершины не строятся произвольным образом — их количество и положение должны соответствовать форме модели. Например, в данном случае те места, где позже мы будем создавать шею и ноги лошади, имеют по три вершины: две определяют габариты соответствующей части тела, третья находится посередине между этими двумя. Такое распределение вершин обусловлено тем, что их минимальное количество для создания формы ноги или шеи должно быть равно четырем (четвертая вершина появится после создания зеркальной копии модели).

Забавная лошадка

499

Рис. 9.191. Форма сплайна в окне проекции Front (Спереди)

Продолжим моделирование и преобразуем построенный сплайн в полигональный объект. Для этого щелкните на построенном сплайне правой кнопкой мыши и выберите из контекстного меню команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Таким образом, мы получили полигональный объект на основе построенного сплайна. Чтобы распределение полигонов по поверхности можно было проконтролировать, необходимо выполнить разрезание, соединив противоположные вершины модели в горизонтальном и вертикальном направлениях. Для этого перейдите на уровень редактирования вершин, для чего в свитке Selection (Выделение) щелкните на кнопке Vertex (Вершина) , а затем воспользуйтесь инструментом Cut (Разрезать), расположенным в свитке Edit Geometry (Редактирование геометрии). Выполняя разрезание, следите за тем, чтобы полученные при этом полигоны имели три, а лучше четыре стороны (рис. 9.192). СОВЕТ Несмотря на то что программа 3ds Max способна сглаживать полигоны с любым количеством сторон, наилучшего результата можно добиться при сглаживании полигонов с тремя или четырьмя сторонами.

Добавим построенному объекту объем. Для этого выполните следующие действия. 1.

Перейдите на уровень редактирования полигонов, активизировав в свитке Selection (Выделение) кнопку Polygon (Полигон).

500

Глава 9. Практическое моделирование

Рис. 9.192. Полигональный объект после разрезания

2.

Выделите все полигоны построенного объекта, нажав сочетание клавиш Ctrl+A.

3.

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке, расположенной справа от кнопки Extrude (Выдавливание), в результате чего откроется окно диалога Extrude Polygons (Выдавливание полигонов).

4.

В счетчике Extrusion Height (Высота выдавливания) установите такое значение, чтобы с учетом трех выдавливаний можно было получить половину объема корпуса лошадки (рис. 9.193). Данное значение может быть приблизительным, так как позже мы будем корректировать положение вершин согласно строящейся геометрии и внесем необходимые изменения.

Рис. 9.193. Полигоны после выполнения выдавливания

Забавная лошадка

501

Дальнейшее моделирование потребует от вас контроля над общей формой персонажа. Это необходимо для того, чтобы, не имея виртуальной студии на заднем плане (то есть эскизов персонажа, по которым можно было бы выверять форму), мы могли максимально полно видеть общие габариты и отдельные детали. Существует два способа осуществления данной задачи: создание зеркальной копии, связанной с оригиналом, путем его клонирования (создания образца (Instance) объекта) или применение к оригиналу модификатора Symmetry (Симметрия). Воспользуемся вторым способом, как более простым и быстрым. Для этого выполните команду главного меню ModifiersMesh Editing Symmetry (МодификаторыРедактирование сеткиСимметрия) и в области Mirror Axis (Оси отражения) свитка Parameters (Параметры) настроек модификатора установите переключатель в положение Z (рис. 9.194). После применения модификатора Symmetry (Симметрия) можно вернуться к моделированию лошадки, для чего необходимо в стеке модификаторов перейти к строке Editable Poly (Редактируемая полигональная поверхность). Чтобы видеть модель, состоящую из двух половинок, активизируйте кнопку командной панели Show end result on/off toggle (Показать конечный результат вкл/выкл) .

Рис. 9.194. Настройка модификатора Symmetry (Симметрия)

Сейчас, когда мы можем сопоставить габариты туловища лошади по длине и ширине, перейдите на уровень редактирования Vertex (Вершина) и в окне проекции вида Left (Слева) переместите выдавленные ряды вершин таким образом, чтобы ширина туловища соответствовала его длине. После этого, используя проекции вида Front (Спереди) и Top (Сверху), выделите поочередно вершины, определяющие внешнюю границу туловища, и переместите их внутрь, чтобы получить скругления на краях. Кроме того, вершины, находящиеся на боковой поверхности туловища, должны быть расположены таким образом, чтобы повторялась форма верхней части ног лошади (рис. 9.195). СОВЕТ Перемещая вершины в пространстве, постоянно следите за тем, чтобы их положение соответствовало форме модели во всех окнах проекций. В связи с этим как можно чаще пользуйтесь перспективным видом, рассматривая строящуюся модель со всех сторон. При этом вносите необходимые изменения и исправляйте замеченные недостатки.

После того как наметилась общая форма туловища нашей лошадки, можно переходить к построению ног. Однако тех полигонов, которые были получены в процессе выдавливания, явно недостаточно: чтобы выполнить построение ноги, необходимо как минимум четыре полигона и дополнительно два ряда полигонов для формирования нижней части грудной клетки. Частично задача может быть решена путем

502

Глава 9. Практическое моделирование

Рис. 9.195. Начало редактирования общей формы туловища лошади

построения разрезов уже существующих полигонов. Для этого перейдите на уровень редактирования вершин и в свитке Edit Geometry (Редактирование геометрии) активизируйте кнопку Cut (Разрезать), а затем выполните разрезание ряда полигонов, расположенных со стороны оси симметрии, начиная от основания шеи, через живот и до места крепления хвоста (рис. 9.196). Выполняя разрезы, обратите внимание на то, чтобы в начале и в конце линии разреза были сформированы четырехсторонние полигоны. Итак, мы выполнили разрезы, тем самым добавив в нижней части туловища ряд полигонов, но нам все еще недостаточно полигонов для начала построения ноги. Можно выдавить четыре полигона в плечевой области, и проблема недостающих полигонов будет решена. Продолжите редактирование строящегося персонажа, для чего выделите четыре полигона на боковой поверхности модели. Примените к ним выдавливание с небольшим значением параметра Extrusion Height (Высота выдавливания) таким образом, чтобы на поверхности туловища образовалось утолщение, достаточное для создания плечевого пояса (рис. 9.197). После построения новых полигонов перейдите на уровень редактирования вершин и откорректируйте их положение в пространстве так, чтобы в верхней части плеча

Забавная лошадка

503

Рис. 9.196. Разрез, выполненный по нижней части туловища

Рис. 9.197. Выдавливание полигонов для формирования плечевого пояса передней ноги

образовалось небольшое утолщение, а в нижней части полигоны составляли начало передней ноги (рис. 9.198). Обратите внимание на то, что внешние вершины редактируемых полигонов смещены немного внутрь — такое положение вершин позволяет получить плавный переход при сглаживании.

504

Глава 9. Практическое моделирование

Рис. 9.198. Положение вершин после их редактирования

Перед тем как продолжить построение новых полигонов, обратитесь к окну проекции перспективного вида и внимательно рассмотрите модель со всех сторон. На данном этапе моделирования общая форма туловища строящейся лошадки должна в целом соответствовать поставленным задачам. И хотя мы будем постоянно уточнять общую форму модели, ошибки, выявленные на ранней стадии моделирования, потребуют значительно меньших затрат времени на их переделку. Начнем строить переднюю ногу лошади. Для этого выделите в нижней части плечевого пояса четыре полигона (два из которых были построены немного ранее) и примените к ним выдавливание (рис. 9.199). Активизируйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) , расположенный на главной панели инструментов, и масштабируйте построенные полигоны таким образом, чтобы они образовывали линию ноги, начиная от верха плеча. После этого перейдите на уровень редактирования вершин и уточните положение вершин, образующих переднюю часть грудной клетки, с учетом построенных полигонов. ПРИМЕЧАНИЕ При моделировании «мультяшного» персонажа у вас есть возможность проявить фантазию и творческий подход к работе. Вы можете изменить форму отдельных деталей или всей модели, исходя из собственных представлений о том, что должно получиться в конце. Не бойтесь экспериментировать с формой, при этом не забывая сохранять промежуточные этапы работы. В таком случае при необходимости вы сможете в любое время вернуться на несколько шагов назад и продолжить создание модели в новом направлении.

505

Забавная лошадка

Рис. 9.199. Начало построения передней ноги

На данном этапе моделирования передняя часть лошадки должна выглядеть так, как показано на рис. 9.200.

Рис. 9.200. Формирование грудной клетки в месте сочленения с передней ногой

Продолжим построение передней ноги. Для этого сделайте следующее. 1.

Выполните еще одно выдавливание полигонов и снова примените масштабирование для того, чтобы нога немного сужалась книзу.

506

Глава 9. Практическое моделирование

2.

Обратитесь к окну проекции вида Perspective (Перспектива) и поверните моделируемый объект таким образом, чтобы иметь возможность видеть сечение ноги (полигоны, которые мы выдавливаем). В этом месте они должны вписываться в воображаемую окружность. Таким образом, при последующем применении инструмента, который разбивает поверхность со сглаживанием, нога в сечении окажется округлой формы. Если общая форма полигонов далека от окружности, отредактируйте вершины сейчас, так как дальнейшее построение колена и нижней части ноги может привести к нежелательному эффекту.

3.

Выполните еще два небольших выдавливания для создания колена.

4.

Вернитесь к режиму редактирования. Перейдите на уровень редактирования граней, для чего в свитке Selection (Выделение) нажмите кнопку Edge (Ребро).

5.

Выделите одно из горизонтальных ребер, построенных при предыдущем выдавливании. Щелкните на кнопке Loop (Петля) свитка Selection (Выделение), чтобы выделить весь ряд ребер.

6.

Активизируйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) и масштабируйте выделенные грани с целью создания утолщения в области колена.

7.

Продолжите выдавливание и постройте еще три ряда полигонов.

8.

Отредактируйте два последних ряда полигонов, чтобы сформировалась область, из которой будет смоделировано копыто (рис. 9.201).

Рис. 9.201. Передняя нога после шести выдавливаний полигонов и их редактирования

Для начала формирования копыта лошадки понадобится сместить выделенные полигоны внутрь. Для этого как нельзя лучше подойдет инструмент Inset (Смещение внутрь).

Забавная лошадка

507

Выделите полигоны нижней части ноги и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Параметры), расположенной справа от кнопки Inset (Смещение внутрь). В открывшемся окне диалога Inset Polygons (Смещение полигонов внутрь) установите такое значение счетчика Inset Amount (Величина смещения), чтобы смещение занимало около 1/4 всей площади ноги (рис. 9.202).

Рис. 9.202. Смещение полигонов внутрь до начала формирования копыта

Теперь можно выполнить еще два выдавливания полигонов нижней части ноги, чтобы получить форму копыта. Но это еще не все. При сглаживании часть ноги, переходящая в копыто, и нижняя часть самого копыта могут потерять форму, если не построить в этих местах фаску. СОВЕТ Чтобы увидеть, как будет выглядеть модель при сглаживании с разбиением, перейдите к свитку Subdivision Surface (Поверхность с разбиением) и установите флажок Use NURMS Subdivision (Использовать NURMS-разбиения), а в счетчике Iterations (Количество итераций) области Display (Отображение) установите значение, равное 1 или 2.

Для построения фаски на нижней части ноги лошадки выделите три грани: одну у основания копыта, другую — выше на один ряд полигонов и третью — у основания расширения перед копытом. Примените к выделенным граням инструмент Loop (Петля) для образования кругового выделения. После этого щелкните на кнопке Settings (Параметры), расположенной справа от кнопки Chamfer (Фаска), в результате чего откроется окно диалога Chamfer Edges (Фаска на ребрах). В счетчике Chamfer Amount (Величина фаски) установите такое значение, чтобы выделенные грани образовали небольшой скос (рис. 9.203).

508

Глава 9. Практическое моделирование

Рис. 9.203. Три фаски, выполненные в области копыта

На этом моделирование передней ноги лошадки можно считать законченным. Заднюю ногу следует моделировать аналогичным образом, учитывая различия в форме передней и задней ног. Моделирование задней ноги, как и передней, нужно начинать с добавления полигонов в боковой части туловища. В данном случае задача та же — получить дополнительные полигоны, которые станут частью плоскости, формирующей ногу. Выделите на боковой поверхности туловища персонажа шесть полигонов, соответствующих верхней части задней ноги, и примените к ним выдавливание на небольшую высоту (рис. 9.204). Отредактируйте вновь созданные вершины полигонов, разместив их таким образом, чтобы сформировалась задняя часть туловища. После этого выделите четыре полигона, расположенные в нижней части туловища, и примените к ним выдавливание (рис. 9.205). Постройте заднюю ногу таким же образом, как и переднюю: нарастите полигоны методом выдавливания, затем откорректируйте форму с использованием инструментов масштабирования, поворота и перемещения. В процессе моделирования обратите внимание на характерные особенности строения задней ноги. Верхняя часть должна быть массивной, так как там сосредоточено большое количество мышц, колено отведено назад, а сама нога находится в полусогнутом состоянии. Кроме того, в области колена сетка полигонов должна быть более плотной, иначе при сглаживании колено потеряет форму.

509

Забавная лошадка

Рис. 9.204. Добавление новых полигонов в боковой части туловища

Рис. 9.205. Начало построения задней ноги

СОВЕТ Если вы планируете в дальнейшем анимировать построенный персонаж, необходимо уже на стадии моделирования позаботиться о том, чтобы в местах изгибов модели полигональная сетка была достаточно плотной.

510

Глава 9. Практическое моделирование

После построения задней ноги лошадка должна выглядеть так, как показано на рис. 9.206.

Рис. 9.206. Лошадка после моделирования задней ноги

Самое трудное, на мой взгляд, при создании задуманной модели — построение головы, потому что это основная деталь модели с присущей ей индивидуальностью. По этой причине оставим ее создание напоследок, а сейчас займемся хвостом. Перейдите на уровень редактирования полигонов и выделите полигон, находящийся в задней части туловища. В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Параметры), расположенной справа от кнопки Inset (Смещение внутрь). В появившемся окне диалога Inset Polygons (Смещение полигонов внутрь) задайте небольшое значение параметру Inset Amount (Величина смещения), чтобы сформировался еще один полигон внутри выделенного (рис. 9.207). Прежде чем начать выдавливание полигонов для создания формы хвоста, необходимо удалить полигон, расположенный со стороны осевой линии, и переместить вершины левой стороны построенного полигона на линию оси (рис. 9.208). Это обусловлено тем, что мы строим только одну половинку модели и любые симметричные части должны быть симметричны относительно осевой линии. Теперь можно начинать построение хвоста. Для этого выделите созданный полигон и выполните несколько выдавливаний. Отредактируйте положение вершин, чтобы получить изгиб хвоста по направлению книзу (рис. 9.209, слева). Для корректного объединения двух половинок строящейся модели место соединения не должно содержать полигонов. Именно поэтому необходимо выделить полигоны, образовавшиеся во время выдавливания со стороны осевой линии (рис. 9.209, справа), и удалить их.

Забавная лошадка

511

Рис. 9.207. Создание нового полигона в области хвоста

Рис. 9.208. Полигон в области хвоста посте редактирования

ВНИМАНИЕ Любое корректное объединение оригинала и его зеркальной копии относительно оси симметрии подразумевает наличие как минимум трех условий: все открытые ребра должны лежать в плоскости, параллельной оси симметрии; обе половинки строящегося объекта должны соприкасаться по линии оси симметрии; внутренняя сторона каждой из объединяемых половинок не должна иметь полигонов в плоскости объединения.

512

Глава 9. Практическое моделирование

Рис. 9.209. Начало моделирования хвоста лошади (слева) и полигоны, предназначенные для удаления (справа)

Продолжите моделирование хвоста, выдавливая полигоны. Количество и форму выдавливаемых полигонов вы можете выбрать произвольно. Я построил хвост, свисающий естественным образом (рис. 9.210). Пришло время посмотреть, как будет выглядеть сглаженная модель на данном этапе построения. Напомню, что для этого необходимо перейти к свитку Subdivision Surface (Поверхность с разбиением), установить флажок Use NURMS Subdivision (Использовать NURMS-разбиения) и в счетчике Iterations (Итерации) области Display (Отображение) установить значение, равное 1 или 2. Если вам кажется, что модель требует некоторой доработки, вы можете, не выходя из режима сглаживания, выполнить редактирование на уровне подобъектов. При этом необходимо установить флажок Show Cage (Показать сетку) в свитке Subdivision Surface (Поверхность с разбиением). На рис. 9.211 показана модель лошадки со сглаживанием после построения хвоста. Убедившись, что объект не содержит явных ошибок, можно приступать к следующей стадии моделирования — построению шеи. Место, где должна строиться шея, было создано в самом начале моделирования. Теперь нам нужно только выделить необходимые полигоны и выполнить несколько итераций выдавливания (рис. 9.212). СОВЕТ Вы можете выполнять несколько выдавливаний полигонов за один прием с помощью окна диалога Extrude Polygons (Выдавливание полигонов): каждый раз щелкая на кнопке Apply (Применить), вы создаете новое выдавливание полигонов. При этом можно воспользоваться одним из инструментов редактирования (например, Select and Uniform Scale (Выделить и равномерно масштабировать)) и выполнить промежуточные преобразования.

513

Забавная лошадка

Рис. 9.210. Модель лошадки с построенным хвостом

Рис. 9.211. Модель после NURMS-разбиения

514

Глава 9. Практическое моделирование

Рис. 9.212. Начало моделирования шеи

Продолжите наращивать полигоны и достройте общую форму головы. На данном этапе достаточно выполнить несколько выдавливаний с применением масштабирования (рис. 9.213), а затем удалить полигоны со стороны осевой линии (эти полигоны образовались автоматически, и они нам не нужны, так как мы строим только одну половину лошади).

Рис. 9.213. Общая форма головы, построенная выдавливанием

Забавная лошадка

515

Вы, наверное, уже обратили внимание на то, что голова построена минимальным количеством выдавливаний. Созданных полигонов, конечно, недостаточно для передачи формы, поэтому следующее, что мы сделаем, — разрежем существующие полигоны в верхней части головы. Можно просто активизировать инструмент Cut (Разрезать) и сделать разрезы в нужных местах, а можно поступить, например, следующим образом. 1.

Перейдите на уровень редактирования граней.

2.

Выделите грани на боковой поверхности морды (рис. 9.214, слева).

3.

Примените к выделенным граням инструмент Connect (Соединенные) из свитка Edit Edges (Редактировать ребра). В результате выделенные ребра будут разрезаны посередине с образованием новых полигонов (рис. 9.214, справа).

Рис. 9.214. Ребра, подготовленные для соединения (слева), и результат применения инструмента Connect (Соединенные) (справа)

Выполненных разрезов также будет недостаточно для построения детальной формы головы, поэтому необходимо скорректировать вершины, полученные при предыдущем разрезе ребер, и повторить вышеописанное разрезание еще раз (рис. 9.215). Следующим шагом будет моделирование ноздри. При создании полигональных моделей достаточно часто приходится выполнять построение углублений или выпуклостей на поверхности объекта. Это несложно сделать, если знать принципы сглаживания. Лучше всего, если граница углубления будет иметь четыре или более ребра, а также небольшую фаску. Активизируйте инструмент Cut (Разрезать) и в нижней части морды выполните разрезы в виде ромба (рис. 9.216).

516

Глава 9. Практическое моделирование

Рис. 9.215. Повторное разрезание ребер для увеличения плотности сетки полигонов

Рис. 9.216. Разрезы, выполненные для построения ноздри

СОВЕТ Выполнить построение новых ребер для углубления можно и другим способом. Выделите вершину, которая будет располагаться в середине будущего разреза, а затем примените к ней инструмент Extrude (Выдавливание) из свитка Edit Vertices (Редактирование вершин) с величиной Extrusion Height (Высота выдавливания), равной нулю.

Забавная лошадка

517

Выделите полигоны внутри выполненных разрезов и примените к ним инструмент Inset (Смещение внутрь) с небольшой величиной смещения. Затем последовательно выполните два выдавливания внутрь: первое с небольшой величиной смещения для образования фаски; второе — со смещением, которое будет определять глубину ноздри лошади (рис. 9.217).

Рис. 9.217. Формирование ноздри путем выдавливания полигонов

Продолжим редактирование нижней части морды, где необходимо построить верхнюю и нижнюю губу. Для этого выполните следующие действия. 1.

В окне проекции перспективного вида поверните голову таким образом, чтобы была видна ее нижняя часть.

2.

Активизируйте инструмент Cut (Разрезание).

3.

Выполните разрезание полигонов таким образом, чтобы полученные при разрезании ребра определяли границы верхней и нижней губы (рис. 9.218).

4.

Выделите два полигона в верхней части выполненных разрезов и выполните их выдавливание (рис. 9.219). После выполнения выдавливания стало очевидно, что в верхнем левом углу губы сглаживание будет происходить не совсем так, как нужно (вы можете убедиться в этом, установив флажок Use NURMS Subdivision (Использовать NURMS-разбиения) в свитке Subdivision Surface (Поверхность с разбиением)). В связи с этим потребуется выполнить небольшое разрезание двух полигонов: в левой части губы и месте ее примыкания к базовой форме. После этого можно продолжить моделирование рта.

5.

Выделите полигоны, расположенные ниже построенной верхней губы, и выдавите их внутрь (рис. 9.220).

518

Глава 9. Практическое моделирование

Рис. 9.218. Новые ребра, построенные методом разрезания

Рис. 9.219. Построение верхней губы лошадки

6.

Постройте нижнюю губу лошади способом, аналогичным созданию верхней губы. Для этого выделите полигоны в нижней части основания морды и выдавите их наружу.

Пришло время применить к моделируемому объекту разбиение со сглаживанием. Внимательно рассмотрите модель во всех окнах проекций и внесите необходимые коррективы. Результатом моего анализа модели стало добавление в среднюю часть

519

Забавная лошадка

двух рядов ребер — это необходимо для более корректного создания изгибов профиля головы (рис. 9.221). Сделать это было достаточно просто: я выделил одно из продольных ребер в средней части головы, затем расширил выделение с помощью инструмента Ring (Круг) свитка Selection (Выделение) и применил инструмент Connect (Соединить) свитка Edit Edges (Редактирование ребер) со значением Segments (Количество сегментов), равным 2.

Рис. 9.220. Полигоны, формирующие рот

Рис. 9.221. Построение дополнительных ребер

520

Глава 9. Практическое моделирование

Теперь займемся моделированием глаз. Эта задача может быть условно разделена на два этапа: создание углубления в верхней части головы и построение глаза. Начнем с выполнения углубления. Перейдите на уровень редактирования полигонов и выполните разрезание полигонов аналогично тому, как мы делали для построения ноздрей. В данном случае я решил выполнить моделирование углубления для глазного яблока вытянутой формы, в связи с чем для разрезания использовал не четыре, а шесть полигонов (рис. 9.222).

Рис. 9.222. Новые разрезы, формирующие габариты глаза

Как и в случае с построением ноздри, выделите внутренние полигоны, ограниченные построенными ребрами, и примените к ним инструмент Inset (Смещение внутрь), а затем дважды выполните выдавливание внутрь (рис. 9.223). Приступим к построению глазного яблока. Мы выполним его как самостоятельный объект, что позволит получить дополнительные преимущества как при моделировании, так и при анимации (если она планируется в будущем). Для построения базовой формы глаза перейдите к окну проекции Front (Спереди) и постройте сферу. Это можно сделать, выполнив команду главного меню CreateStandard PrimitivesSphere (СоздатьСтандартные примитивыСфера) (рис. 9.224). ПРИМЕЧАНИЕ При построении сферы обратите внимание на то, чтобы ее габариты соответствовали построенному углублению, а количество сегментов (Segments) было в пределах 18–24.

521

Забавная лошадка

Рис. 9.223. Начало построения глаза

Рис. 9.224. Построение сферы в качестве базовой геометрии для глаза

Можно было бы оставить сферу как есть, но мы выполним небольшое редактирование с целью построения век следующим образом. 1.

Конвертируйте сферу в редактируемую полигональную поверхность, для чего щелкните на ней правой кнопкой мыши и выберите из контекстного меню команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность).

522

Глава 9. Практическое моделирование

2.

Перейдите на уровень редактирования полигонов и выделите три сегмента, расположенных справа (рис. 9.225, слева).

3.

Выдавите выделенные полигоны немного внутрь, и глазное яблоко будет готово (рис. 9.225, справа).

Рис. 9.225. Моделирование глаза лошадки

СОВЕТ Чтобы моделированию глаза не мешали другие объекты, воспользуйтесь режимом Isolation Mode (Режим изолирования). Переключиться в него можно с помощью сочетания клавиш Alt+Q.

Отредактировав глаз, необходимо правильно расположить его в построенном ранее углублении. Прежде всего активизируйте инструмент Select and Rotate (Выделить и повернуть) и в окне проекции Front (Спереди) поверните глаз таким образом, чтобы развернуть веки вдоль линии глаза. Затем с помощью инструмента Select and Move (Выделить и переместить) переместите глаз в построенное углубление (рис. 9.226). Проконтролируйте положение глаза во всех окнах проекций. Для правильного размещения глаза будет недостаточно просто переместить его в углубление. Скорее всего, при использовании разбиений со сглаживанием понадобится отредактировать ту часть геометрии головы, которая окружает глаз. После того как положение глаза в пространстве будет выверено, постройте второй глаз, скопировав первый относительно оси симметрии. Для этого выполните команду главного меню ToolsMirror (ИнструментыОтражение) и в появившемся окне диалога выберите в качестве оси отражения Y, а тип создаваемых при дублировании объектов — Instance (Образец).

Забавная лошадка

523

Рис. 9.226. Размещение глаза в построенном ранее углублении

Сейчас модель лошади с построенными глазами должна выглядеть так, как показано на рис. 9.227.

Рис. 9.227. Модель лошади с построенными глазами

524

Глава 9. Практическое моделирование

Пришла очередь построения ушей лошадки. Их моделирование будет достаточно простым — мы выполним выдавливание полигонов из верхней части головы. Выделите полигон, расположенный во втором ряду относительно оси симметрии, и примените к нему Inset (Смещение внутрь) с небольшим значением параметра Inset Amount (Величина смещения). Таким образом мы создадим основание уха (рис. 9.228).

Рис. 9.228. Начало построения уха

Для построения общей формы ушей выполните последовательно четыре выдавливания полигонов: два из них будут с увеличением размера (одновременно с выдавливанием применяйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать)) и два — с последующим уменьшением (рис. 9.229). Прежде чем перейти к редактированию вершин с целью формирования уха, необходимо добавить два ряда ребер с внутренней стороны. Это необходимо для того, чтобы иметь возможность создать толщину уха и углубление с внутренней стороны. Проще всего добавить такие ребра с помощью фаски — достаточно лишь выделить вертикальный ряд ребер с внутренней стороны и применить к ним инструмент Chamfer Edges (Фаска на ребрах) с количеством сегментов (Segments), равным 2 (рис. 9.230). Сейчас у нас есть все необходимое для создания окончательной формы уха. Перейдите на уровень редактирования вершин и, используя инструмент Select and Move (Выделить и переместить), разместите вершины в пространстве таким образом, чтобы получилась желаемая форма уха (рис. 9.231).

525

Забавная лошадка

Рис. 9.229. Создание общей формы ушей

Рис. 9.230. Построение фаски на ушах лошади

ПРИМЕЧАНИЕ Не забывайте контролировать положение вершин во всех окнах проекций, а также проверять форму модели с NURMS-разбиениями.

526

Глава 9. Практическое моделирование

Рис. 9.231. Окончательная форма ушей

Мы выполнили почти все элементы, кроме гривы. Ее форму можно сделать по-разному: например, развевающуюся, ниспадающую на шею или коротко остриженную. В любом случае начало создания будет одинаковым — грива строится от шеи лошади методом выдавливания полигонов. Прежде всего выполним новые ребра, расположенные вдоль серединной линии по всей длине шеи с заходом на лоб. Это можно сделать путем использования инструмента Inset (Смещение внутрь) или просто с помощью Cut (Разрезать). Единственное, на что необходимо обратить внимание, — обработка углов. Углы, завершающие линию гривы, должны состоять из четырехсторонних полигонов (рис. 9.232). Выделите полигоны, предназначенные для создания гривы, и выполните три или четыре выдавливания, причем первое и последнее выдавливания должны быть небольшими для создания малого радиуса скругления при сглаживании. После выдавливания необходимо удалить получившиеся полигоны со стороны серединной линии, которые образовались автоматически (вы уже знаете о необходимости такой операции в случае создания лишь одной половинки модели). Затем можно перейти к редактированию вершин и закруглить края гривы, используя перемещение вершин в пространстве с помощью инструмента Select and Move (Выделить и переместить) (рис. 9.233), или разделить ее на участки для последующего изменения формы (например, если вы хотите сделать гриву развевающейся на ветру). Осталось лишь внимательно рассмотреть модель лошадки с разбиениями и сглаживанием во всех окнах проекций, а затем при необходимости внести окончательные изменения.

527

Забавная лошадка

Рис. 9.232. Ребра, определяющие линию гривы

Рис. 9.233. Грива, полученная методом выдавливания полигонов

528

Глава 9. Практическое моделирование

На рис. 9.234 представлен результат визуализации построенной модели.

Рис. 9.234. Окончательная модель лошадки

ПРИМЕЧАНИЕ Готовая сцена лошадки horse.max находится в папке Examples\Глава 09\Horse прилагаемого к книге DVD.

Глава 10.

Текстурирование • Материал, имитирующий хром • Текстурирование натюрморта • Текстурирование микроволновой печи • Сложное текстурирование • Текстурирование лошадки

Можно сделать замечательную модель, потратив много времени на создание деталей. Можно безукоризненно выставить свет и сделать многое другое, чтобы улучшить работу, но без хороших текстур вы не сможете добиться реалистичности. Создание материала — как правило, долгий и кропотливый процесс со множеством экспериментов. Иногда приходится потратить не один час на то, чтобы сделать приемлемую текстуру. Редактор материалов в 3ds Max настолько хорош, что позволяет получить практически любую текстуру — все зависит только от ваших знаний и воображения. Работа по созданию материалов не ограничивается возможностями программы 3ds Max, вам не обойтись без приложений растровой графики. Кроме того, существуют программы, позволяющие рисовать непосредственно на трехмерных объектах. В этой главе вы познакомитесь с тем, как создавать реалистичные материалы и текстуры средствами программы 3ds Max.

Материал, имитирующий хром В этом разделе рассмотрим, как с помощью небольшого трюка можно создать вполне приемлемый материал хрома. Хромированные детали очень эффектно смотрятся, поэтому их часто применяют в трехмерной сцене. Прежде чем говорить о создании материала, необходимо определиться с понятием хрома. Что такое хром? Это материал с высокой отражающей способностью и контрастностью, поэтому первое правило, которое нужно помнить при его использовании: для хромированного объекта важно окружение, то есть те предметы, которые будут отражаться в хроме. В данном случае возможны два варианта: смоделировать окружение (если его нет) или создать иллюзию присутствия рядом других предметов с помощью соответствующих текстурных карт. Второе правило реалистичного хрома заключается в том, что объект, которому присваивается хромированный материал, должен иметь сглаженные формы. Например, на примитиве Box (Параллелепипед) значительно сложнее создать реалистичный хром, нежели на ChamferBox (Параллелепипед с фаской). Рассмотрим создание материала хрома с помощью процедурной карты, то есть исключительно средствами программы 3ds Max. Первое, что для этого понадобится, — объекты, с которыми вы будете работать. Для их создания сделайте следующее. 1.

Выполните команду CreateExtended PrimitivesTorus Knot (СозданиеСложные примитивыТороидальный узел).

2.

Щелкните в окне проекции Top (Cверху) и создайте примитив Torus Knot (Тороидальный узел).

3.

На небольшом расстоянии от первого постройте еще один примитив Torus Knot (Тороидальный узел). Два объекта нужны, чтобы они отражались друг в друге.

531

Материал, имитирующий хром

4.

Для создания плоскости, на которой будут располагаться эти объекты, выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость).

5.

Щелкните в левом верхнем углу окна проекции Top (Cверху) и переместите указатель мыши в нижний правый угол, так чтобы построенные ранее примитивы оказались на плоскости (рис. 10.1).

Теперь можно переходить к непосредственному созданию материала. Идея использования карты Gradient Ramp (Усовершенствованный градиент) основывается на простом наблюдении. В хромированном предмете, лежащем на плоскости, отражаются три пространства: 

снизу отражается плоскость, на которой лежит предмет;



сверху — потолок, небо, то есть чтонибудь светлое;



стороны отражают окружающие предметы и пространство, которое уходит вдаль (эти отражения по большей части темные, благодаря «жестким» отражениям).

Рис. 10.1. Два примитива Torus Knot (Тороидальный узел) и примитив Plane (Плоскость)

Для построения материала хрома нужна бело-черно-белая текстура, которую легко создать и контролировать с помощью карты Gradient Ramp (Усовершенствованный градиент). Чтобы ее создать, выполните следующие действия. 1.

, нахоОткройте Material Editor (Редактор материалов), щелкнув на кнопке дящейся на панели инструментов, или выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов).

2.

Выберите ячейку со свободным материалом.

3.

Разверните свиток Maps (Карты текстуры), щелкните на кнопке None (Отсутствует) рядом с картой Reflection (Отражение).

4.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Gradient Ramp (Усовершенствованный градиент).

5.

Настройте параметры материала, как показано на рис. 10.2.

Разберем подробнее настройки этой карты. Прежде всего нужно в раскрывающемся списке Gradient Type (Тип градиента) выбрать значение Linear (Прямой), а в Interpolation (Интерполяция) — строку Solid (Постоянная). После этого назначьте два цвета: белый и черный (или близкий к черному). Для этого дважды щелкните на ползунке под шкалой градиентного перехода и в открывшемся окне Color Selector (Выбор цвета) выберите нужный цвет. Соотношение цветов должно быть

532

Глава 10. Текстурирование

близким 1:2, то есть белый цвет должен занимать в два раза больше места, чем черный. Затем нужно повернуть карту на 90°, задав значение W для Angle (Угол) равным 90, и установить флажок Mirror (Зеркальное отображение) для координаты U. Чтобы избежать резкого перехода на стыке цветов, можно увеличить значение параметра Blur (Размытие). Можно также использовать карту Noise (Шум), чтобы еще больше сгладить резкий переход. В свитке Coordinates (Координаты) необходимо задать способ использования карты, установив переключатель в положение Environment (Окружающая среда), а из списка Mapping (Проекция), который определяет способ наложения координат, выбрать Spherical Environment (Сферическая фоновая), так как вы создаете карту для окружения. На этом с основными настройками можно закончить. В результате вышеописанных операций у вас должна получиться процедурная карта, подобная показанной на рис. 10.3. Следующим шагом разработки материала хрома является создание материала Raytrace (Трассировка), который в качестве карты окружения будет использовать созданную вами градиентную карту. Для этого выполните следующие действия.

Рис. 10.2. Настройки карты Gradient Ramp (Усовершенствованный градиент)

1.

Щелкните на кнопке выбора материала — Gradient Ramp (Усовершенствованный градиент).

2.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт текстур) выберите из списка карту Raytrace (Трассировка).

3.

Ответьте утвердительно на предложение оставить созданную карту Gradient Ramp (Усовершенствованный градиент) в качестве подматериала.

В результате в свитке Maps (Карты текстур) стандартного материала в качестве карты Reflection (Отражение) будет загружена карта Raytrace (Трассировка).

Рис. 10.3. Процедурная карта Gradient Ramp (Усовершенствованный градиент) после выполнения всех настроек

Можно ограничиться этим, но мы создадим еще материал Raytrace (Трассировка). Отличие карты Raytrace (Трассировка) от материала Raytrace (Трассировка) заключается в том, что материал имеет

533

Материал, имитирующий хром

больше параметров и позволяет получить лучшее качество при визуализации. Для создания материала Raytrace (Трассировка) выполните следующие действия. 1.

Выберите в окне Material Editor (Редактор материалов) ячейку со свободным материалом.

2.

Щелкните на кнопке Standard (Стандартный) для выбора материала.

3.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт текстур) выберите из списка материал Raytrace (Трассировка).

4.

Скопируйте карту Gradient Ramp (Улучшенный градиент), щелкнув правой кнопкой мыши на кнопке Gradient Ramp (Улучшенный градиент), созданной ранее, и из появившегося списка выберите способ копирования Copy (Независимая копия объекта).

5.

В свитке Raytrace Basic Parameters (Базовые параметры трассируемого материала) материала Raytrace (Трассируемый) щелкните правой кнопкой мыши на кнопке Environment (Окружающая среда) и из появившегося списка выберите Paste (Copy) (Вставить (копию)).

6.

Измените параметры материала Raytrace (Трассировка) так, как показано на рис. 10.4.

При желании можно увеличить значение параметра Index Of Refr (Коэффициент преломления). В качестве типа затенения из списка Shading (Затенение) выбран Metal (Металл) — это также не обязательно, но создает более жесткие цветовые переходы, характерные для хрома. Более важным в настройках является параметр Reflect (Отражение), который управляет отражательной способностью материала. В данном случае нужно выбрать светло-серый или серо-голубой цвет (для придания этого оттенка хрому). Назначьте материал объектам (рис. 10.5). Немного усложним объекты и добавим надпись, сделанную с помощью карты Bump (Рельефность) и объекта Text (Текст). Результат показан на рис. 10.6.

Рис. 10.4. Настройки параметров материала Raytrace (Трассировка) для хрома

Добавлю, что визуализация проводилась стандартным визуализатором программы 3ds Max 2009 без применения глобального освещения, каустики и других специальных эффектов, придающих изображению более реалистичный вид. В данной сцене использовалось только трехточечное освещение с применением Area Shadow (Область тени).

534

Глава 10. Текстурирование

Рис. 10.5. Объекты сцены после применения материала хрома

Рис. 10.6. Результат просчета с помощью стандартного визуализатора с применением параметра Area Shadow (Область тени)

Еще один способ создания материала хрома — с помощью специальных растровых карт, имитирующих хромированный материал. Как правило, материал на основе таких карт имеет не очень реалистичный вид. Однако у этого способа есть и свои плюсы — минимальное время на настройку и визуализацию. Его использование оправданно для объектов на заднем плане. Неплохого качества визуализации можно достичь, используя HDRI (High Dynamic Range Images — изображение с большим динамическим диапазоном) в качестве карты для материала хрома. Улучшить конечное изображение можно также, применив подключаемый модуль визуализации — V-Ray. На рис. 10.7 показана та же сцена, визуализированная с помощью V-Ray без источников света, но с использованием глобального освещения. Разница заметна, но если для вас имеет значение время визуализации, вы работаете на компьютере со слабым процессором или в сцене большое количество полигонов, то применение стандартного визуализатора вполне приемлемо. При использовании стандартного визуализатора сцена просчитывается быстрее примерно в полтора раза. На рис. 10.8 представлен фрагмент примитива Torus Knot (Тороидальный узел) с надписью. Вы можете также попробовать сделать хром на основе карты Swirl (Завихрение) или Noise (Шум). Более сложных эффектов можно достичь, используя различные комбинации процедурных карт. ПРИМЕЧАНИЕ В папке Examples\Глава 10\Chrom прилагаемого к книге DVD находится файл сцены chrom.max.

Текстурирование натюрморта

535

Рис. 10.7. Сцена, визуализированная с помощью подключаемого модуля V-Ray

Рис. 10.8. Фрагмент примитива Torus Knot (Тороидальный узел) с надписью

Текстурирование натюрморта В разд. «Натюрморт» предыдущей главы мы простыми средствами моделирования создали сцену, представляющую собой натюрморт из фруктов и ягод. Рассмотрим

536

Глава 10. Текстурирование

некоторые способы текстурирования объектов этой сцены стандартными средствами 3ds Max 2009. Для выполнения упражнения вам понадобится продолжить работу с созданной в предыдущей главе сценой натюрморта. Вы также можете загрузить сцену fruits_start.max, расположенную на прилагаемом к книге DVD в папке Examples\Глава 10\Fruits. Прежде чем мы приступим к непосредственному текстурированию объектов сцены, мне бы хотелось напомнить вам о том, что для правильного отображения материалов, содержащих текстурные карты, все моделируемые объекты нуждаются в проекционных координатах. Исключение составляют параметрические объекты, в свойствах которых есть предустановленные проекционные координаты (в свитке Parameters (Параметры) настроек объекта установлен флажок Generate Mapping Coords. (Генерировать координаты проецирования)), объекты, созданные с помощью некоторых модификаторов (например, Loft (Лофтинговые)), или в том случае, когда материал использует процедурные карты (то есть карты текстур, генерируемые программно). Начнем текстурирование с простого объекта — апельсина. Его фактура не требует обязательного применения текстурной карты, ее можно создать с помощью процедурной карты Noise (Зашумление). Для текстурирования апельсина сделайте следующее. 1.

Откройте Material Editor (Редактор материалов) и выберите ячейку со свободным материалом.

2.

В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) для выбора базового цвета апельсина.

Рис. 10.9. Свиток Blinn Basic Parameters (Базовые параметры раскраски по Блинну) настроек материала апельсина

3.

В открывшемся окне Color Selector: Diffuse Color (Выбор цвета: цвет рассеивания) установите значения составляющих цвета RGB: Red (Красный) — 230, Green (Зеленый) — 130 и Blue (Синий) — 50.

4.

В области Specular Highlights (Зеркальные блики) свитка Blinn Basic Parameters (Базовые параметры раскраски по Блинну) задайте значение Specular Level (Уровень блеска) равным 30, а Glossiness (Глянец) — 10 (рис. 10.9).

5.

В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с картой Bump (Рельефность).

6.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Шум).

7.

В свитке Noise Parameters (Параметры зашумления) карты Noise (Шум) установите значение параметра Size (Размер) равным 2.

Текстурирование натюрморта

537

8. Нажмите кнопку Go to Parent (Вернуться к исходному) и в свитке Maps (Карты текстур) настраиваемого материала установите значение величины рельефности равным –50 (рис. 10.10). Для присвоения материала объектам сцены сделайте следующее. 1.

Щелкните на кнопке Select by Name (Выделить по имени) главной панели инструментов и в появившемся окне Select From Scene (Выбор из сцены) выберите из списка объекты Orange_00 и Orange_01.

2.

В редакторе материалов щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) .

Рис. 10.10. Свиток Maps (Карты текстур) настроек материала апельсина

После присвоения объектам материала необходимо выполнить тестовую визуализацию и при необходимости подкорректировать параметры материала. При желании можно улучшить отображение апельсина, создав на основе выполненного материала составной материал Blend (Смешанный). Для этого сделайте следующее. 1.

Щелкните в окне редактора материалов на кнопке Standard (Стандартный) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Blend (Смешанный). В открывшемся окне установите переключатель в положение Keep old material as sub-material? (Оставить старый материал в качестве компонента?).

2.

В свитке Blend Basic Parameters (Базовые параметры смешанного материала) щелкните на кнопке первого материала и перетащите его на второй, а в качестве метода копирования укажите Copy (Копия).

3.

Выберите темно-оранжевый цвет диффузного рассеивания второго материала — это создаст на поверхности апельсина цветовые переходы.

4.

В качестве маски используйте карту Noise (Шум).

На рис. 10.11 представлена схема материала Blend (Смешанный) для текстурирования апельсина. ПРИМЕЧАНИЕ При необходимости вы можете открыть файл с именем fruits_end.max, расположенный на прилагаемом к книге DVD в папке Examples\ Глава 10\Fruits, и проанализировать параметры составного материала.

Рис. 10.11. Схема материала Blend (Смешанный), назначенного апельсину

538

Глава 10. Текстурирование

Аналогичным образом создается материал для модели мандарина, с той лишь разницей, что цвет диффузного рассеивания должен иметь оттенок ближе к оранжевому, а карта рельефности меньшее значение, так как поверхность мандарина имеет менее выраженную рельефность. Рассмотрим текстурирование яблока с применением текстурной карты. Речь идет об использовании растрового изображения в качестве карты диффузного рассеивания, значит, объекту потребуются проекционные координаты. С этого и начнем. 1.

Используя кнопку главной панели инструментов Select by Name (Выделить по имени) , выберите из списка три объекта AppleYellow.

2.

Перейдите в режим Isolation Mode (Режим изолирования), для чего нажмите сочетание клавиш Alt+Q, что позволяет спрятать все объекты сцены за исключением выделенного.

3.

Выполните команду GroupOpen (ГруппаОткрыть), чтобы получить доступ к объектам группы.

4.

В одном из окон проекций выделите яблоко и примените к нему модификатор UVW-проекции, для чего выполните команду ModifiersUV CoordinatesUVW Map (МодификаторыUV-координатыUVW-проекция).

5.

В области Mapping (Проекционные координаты) свитка Parameters (Параметры) установите переключатель в положение Spherical (Сферические).

Таким образом, объекту были присвоены сферические проекционные координаты. Сейчас можно переходить к непосредственному созданию материала с текстурной картой яблока и назначению его объекту. 1.

В окне Material Editor (Редактор материалов) выберите свободный материал.

2.

Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).

3.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).

4.

В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением текстуры яблока. На прилагаемом DVD это AppleYellTex.jpg в папке Examples\Глава 10\Fruits.

5.

Присвойте материал модели яблока, перетащив его мышью из окна редактора материалов на объект в окне проекции, либо при выделенном объекте щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) , находящейся на панели инструментов окна Material Editor (Редактор материалов).

Хвостик яблока небольшого размера и находится в сцене на значительном расстоянии от камеры, поэтому для его текстурирования можно было бы использовать материал с коричневым цветом диффузного рассеивания. Но я хочу показать возможность применения для такого рода текстурирования процедурной карты Gradient Ramp (Улучшенный градиент). Создадим материал с такой картой и присвоим его хвостику.

Текстурирование натюрморта

539

1.

В одном из окон проекций выделите хвостик яблока и примените к нему модификатор UVW-проекции, для чего выполните команду ModifiersUV CoordinatesUVW 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 (Усилить), для того чтобы задать способ перетекания цвета между соседними ползунками цветовой шкалы (рис. 10.12).

12.

Присвойте полученный материал хвостику яблока, перетащив его из окна редактора материалов на объект в окне проекции.

Рис. 10.12. Свиток Gradient Ramp Parameters (Параметры улучшенного градиента) настроек материала хвостика яблока

Теперь можно закрыть группу и выполнить тестовую визуализацию. Если вас удовлетворяет результат, можно переходить к текстурированию других яблок и груш, которые выполняются аналогичным образом (рис. 10.13). Перейдем к настройке материала вазы, имитирующего бронзу. Создание этого материала будет полностью основано на применении процедурных карт.

540

Глава 10. Текстурирование

Рис. 10.13. Тестовая визуализация с материалами для яблок и груш

1.

В редакторе материалов выберите ячейку со свободным материалом.

2.

В свитке Shader Basic Parameters (Базовые параметры раскраски) выберите из раскрывающегося списка строку Metal (Металл).

3.

В области Specular Highlight (Зеркальные блики) свитка Metal Basic Parameters (Базовые параметры раскраски металла) задайте параметру Specular Level (Уровень блеска) значение, равное 80, а Glossiness (Глянец) — 70.

4.

Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).

5.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Зашумление).

6.

В свитке Noise Parameters (Параметры зашумления) карты Noise (Зашумление) установите переключатель Noise Type (Тип шума) в положение Fractal (Фрактальный).

7.

В этом же свитке задайте параметру Size (Размер) значение, равное 15; в области Noise Threshold (Порог уровня шума) параметру High (Высокое) задайте значение, равное 0,8, а Low (Низкое) — 0,4 (рис. 10.14).

8.

Щелкните на образце цвета Color #1 (Цвет 1) и в появившемся окне Color Selector (Выбор цвета) установите значения составляющих цвета RGB: Red (Красный) — 85, Green (Зеленый) — 57 и Blue (Синий) — 44. Цвет образца Color #2 (Цвет 2) должен быть черным.

9.

Перейдите от компонентного уровня на более высокий, используя кнопку Go to Parent (Вернуться к исходному) .

Текстурирование натюрморта

541

10.

В свитке Maps (Карты текстур) настраиваемого материала щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) и, не отпуская кнопку мыши, перетащите карту Noise (Зашумление) на кнопку рядом с Bump (Рельефность), а в качестве способа копирования выберите Instance (Образец).

11.

Здесь же, в свитке Maps (Карты текстур) настраиваемого материала, установите значение величины рельефности равным 15.

12.

Щелкните на кнопке рядом с Reflection (Отражение) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient (Градиент).

13.

В свитке Coordinates (Координаты) карты Gradient (Градиент) установите переключатель в положение Environ (Фон) и выберите из списка строку Shrink-wrap Environment (Обтягивающая фоновая).

14.

В свитке Gradient Parameters (Параметры градиента) щелкните на кнопке, расположенной справа от Color #1 (Цвет 1), и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Зашумление).

15.

Установите такие же параметры карты зашумления, как мы задали для цвета диффузного рассеивания (см. п. 8). Щелкните на кнопке Go to Parent (Вернуться к исходному) .

16.

Скопируйте карту зашумления для Color #1 (Цвет 1) в Color #3 (Цвет 3) (рис. 10.15).

17.

Нажмите кнопку Go to Parent (Вернуться к исходному) и установите значение величины карты Reflection (Отражение) равным 50.

18.

Примените созданный материал объекту Vase.

Рис. 10.14. Настройки свитка Noise Parameters (Параметры зашумления)

Осталось рассмотреть материалы для листиков и винограда, остальные материалы настраиваются аналогично рассмотренным выше. Лист винограда, лежащий на столе, выполнен на основе параметрического объекта Plane (Плоскость) с одной лишь целью — упростить процесс моделирования и текстурирования.

Рис. 10.15. Параметры карты Gradient (Градиент) для карты отражения

542

Глава 10. Текстурирование

Рассмотрим процесс создания материала листа на основе текстур диффузного рассеивания и прозрачности. 1.

В окне Material Editor (Редактор материалов) выберите свободный материал.

2.

Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).

3.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).

4.

В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением текстуры листа. На прилагаемом DVD это Grapes.jpg в папке Examples\Глава 10\Fruits.

5.

В свитке Maps (Карты текстур) щелкните на кнопке рядом с Opacity (Непрозрачность) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).

6.

В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением маски прозрачности листа. На прилагаемом DVD это GrapesMask.jpg в папке Examples\Глава 10\Fruits.

7.

В свитке Shader Basic Parameters (Базовые параметры раскраски) установите флажок 2-Sided (Двусторонний), чтобы лист, который изгибается, при визуализации был виден с обеих сторон.

8.

Примените материал листа к объекту Grape_Leaf.

Выполните тестовую визуализацию и проверьте, все ли правильно было настроено в материале листа (рис. 10.16).

Рис. 10.16. Визуализация натюрморта на данном этапе текстурирования

543

Текстурирование натюрморта

Перейдем к созданию материала для винограда. Ягода винограда состоит из двух объектов: хвостика и непосредственно ягоды. Как текстурировать хвостик, мы уже рассматривали на примере хвостика яблока, поэтому сразу перейдем к созданию материала для ягоды. 1.

В окне Material Editor (Редактор материалов) выберите свободный материал.

2.

Щелкните на кнопке Standard (Стандартный) для вызова окна Material/Map Browser (Окно выбора материалов и карт).

3.

Выберите из списка материал Raytrace (Трассируемый).

4.

В свитке Raytrace Basic Parameters (Базовые параметры трассируемого материала) установите флажок 2-Sided (Двусторонний).

5.

Щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) для выбора базового цвета ягоды винограда.

6.

В открывшемся окне Color Selector: Diffuse (Выбор цвета: цвет рассеивания) укажите значения составляющих цвета: Red (Красный) — 108, Green (Зеленый) — 107 и Blue (Синий) — 10.

7.

Щелкните на образце цвета рядом с Reflect (Отражение) для установки отражательной способности материала.

8.

В открывшемся окне Color Selector: Reflect (Выбор цвета: отражение) задайте значения составляющих цвета: Red (Красный) — 42, Green (Зеленый) — 42 и Blue (Синий) — 42.

ПРИМЕЧАНИЕ Настраивая цвет отражающей способности материала, имейте в виду, что чем ярче цвет, тем более отражающим будет материал и наоборот. Если образец цвета черный, то материал не будет отражать.

9.

Щелкните на образце цвета рядом с Transparency (Прозрачность) для настройки прозрачности материала.

10.

В открывшемся окне Color Selector: Transparency (Выбор цвета: прозрачность) установите значения составляющих цвета: Red (Красный) — 60, Green (Зеленый) — 60 и Blue (Синий) — 60.

11.

В области Specular Highlight (Зеркальные блики) свитка Raytrace Basic Parameters (Базовые параметры трассируемого материала) задайте параметру Specular Level (Уровень блеска) значение, равное 78, а Glossiness (Глянец) — 52.

12.

Щелкните на кнопке рядом с Environment (Внешняя среда) и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).

13.

В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу Lake_mt.jpg из папки Examples\Глава 10\ Fruits.

14.

Нажмите кнопку Go to Parent (Вернуться к исходному)

.

544

Глава 10. Текстурирование

15.

В свитке Extended Parameters (Дополнительные параметры) установите значения составляющих образца цвета RGB для Translucency (Просвечивание) и Fluorescence (Флуоресценция): Red (Красный) — 140, Green (Зеленый) — 140 и Blue (Синий) — 35.

В результате параметры материала Raytrace (Трассируемый) должны быть такими, как показано на рис. 10.17. Примените материал к соответствующим объектам сцены и выполните тестовую визуализацию. Для оставшихся объектов сцены создайте материалы самостоятельно. ПРИМЕЧАНИЕ Рис. 10.17. Параметры материала Raytrace (Трассируемый)

Для анализа параметров материалов сцены вы можете использовать файл fruits_end.max, расположенный в папке Examples\Глава 10\Fruits прилагаемого к книге DVD.

Окончательная визуализация натюрморта представлена на рис. 10.18.

Рис. 10.18. Визуализация натюрморта

545

Текстурирование микроволновой печи

Текстурирование микроволновой печи Опишем текстурирование еще одного объекта, создание которого рассмотренно в предыдущей главе, — микроволновой печи. На этом примере рассмотрим принципы создания сложной процедурной карты, применения архитектурных материалов, а также способ наложения материала на часть объекта. ПРИМЕЧАНИЕ Для выполнения урока загрузите построенную вами в предыдущей главе модель микроволновой печи или используйте файл урока microwave_start.max, расположенный на прилагаемом к книге DVD в папке Examples\Глава 10\Microwave_texturing.

Начнем с простых материалов: стекла и материала корпуса микроволновой печи. Материал стекла можно создать как минимум двумя способами: 

с помощью стандартного материала с картами отражения и преломления;



с использованием материала Raytrace (Трассируемый); это более ресурсоемко, однако в таком случае доступно большее количество настроек при визуализации и получается более качественный результат.

Воспользуемся вторым способом, для чего выполните следующие действия. 1.

Откройте Material Editor (Редактор материалов) и выберите ячейку со свободным материалом.

2.

Щелкните на кнопке Standard (Стандартный) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт).

3.

Выберите из списка материал Raytrace (Трассируемый).

4.

Снимите флажок Reflect (Отражение) и в появившемся поле укажите значение отражения, равное 20.

5.

Снимите флажок Transparency (Прозрачность) и в появившемся поле укажите значение прозрачности, равное 90 (рис. 10.19).

6.

Назначьте материал объекту glass, выбрав его из списка, предварительно щелкнув на кнопке главной панели инструментов Select by Name (Выделить по имени).

Произведите тестовую визуализацию. Создайте перед дверцей любой примитив,

Рис. 10.19. Настройки материала стекла

546

Глава 10. Текстурирование

который мог бы отражаться в стекле, чтобы определить отражательную способность стекла. При необходимости откорректируйте значения параметров Specular Level (Уровень блеска) и Glossiness (Глянец). Для материала корпуса я использовал архитектурный пластик. ВНИМАНИЕ В более ранних версиях 3ds Max архитектурных материалов не было.

Во многих случаях архитектурные материалы с параметрами по умолчанию дают весьма неплохой результат. Применим такой материал к корпусу и лицевой панели нашей модели. 1.

Выберите ячейку со свободным материалом.

2.

Щелкните на кнопке Standard (Стандартный) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт).

Рис. 10.20. Параметры материала пластика

3.

Выберите из списка материал Architectural (Архитектурный).

4.

В свитке Templates (Образцы) выберите из раскрывающегося списка строку Plastic (Пластик).

5.

В свитке Physical Qualities (Физические характеристики) щелкните на образце цвета рядом с Diffuse Color (Цвет рассеивания) для выбора базового цвета корпуса.

6.

В открывшемся диалоговом окне Color Selector: Diffuse (Выбор цвета: цвет рассеивания) выберите белый цвет (рис. 10.20).

7.

Примените полученный материал ко всем объектам, которые должны иметь белый цвет.

Аналогичным образом можно создать материал для поверхности стола, на котором стоит микроволновая печь. Выполните тестовую визуализацию. На данном этапе изображение должно выглядеть, как показано на рис. 10.21. Если вы могли заметить, на панели управления оригинального изображения (см. цветной рис. 9.87 на прилагаемом DVD) на микроволновой печке есть индикаторы. Создадим их.

Текстурирование микроволновой печи

547

Рис. 10.21. Визуализация микроволновой печи на данном этапе текстурирования

1.

В окне проекции выделите лицевую панель микроволновой печи.

2.

Перейдите на уровень редактирования полигонов и выделите все полигоны, расположенные в непосредственной близости от углублений под ручками управления (рис. 10.22).

Рис. 10.22. Выделенные полигоны для последующего текстурирования

548

Глава 10. Текстурирование

3.

В области Material (Материал) свитка Polygon: Materials IDs (Полигон: идентификатор материалов) задайте параметру Set ID (Установить идентификатор материала) значение 2 и нажмите Enter.

4.

Примените к выделенным полигонам модификатор UVW-проекции, выполнив команду ModifiersUV CoordinatesUVW Map (МодификаторыUV-координатыUVW-проекция).

5.

В области 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 (Основные параметры многокомпонентного материала).

4.

Щелкните на первой кнопке с именем архитектурного материала (у меня — Body (Architertural)) и, не отпуская кнопку мыши, перетащите его на вторую кнопку, а в качестве метода копирования укажите Copy (Копия). Таким образом, мы создали материал для второго идентификатора со свойствами первого материала. Если вам в дальнейшем понадобится изменять параметры архитектурного материала для корпуса, то менять их необходимо сразу у двух материалов.

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 (Растровое изображение).

.

Текстурирование микроволновой печи

549

10.

В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу face_mask.jpg из папки Examples\Глава 10\ Microwave_texturing.

11.

Примените полученный материал к лицевой панели микроволновой печи и выполните тестовую визуализацию.

Таким образом, мы создали на основе архитектурного материала многокомпонентный материал, структура которого представлена на рис. 10.23. Более сложным с точки зрения настроек можно считать материал сетки, расположенной за стеклом двери. Для материала сетки можно было бы нарисовать текстурную карту, но я предпочитаю пользоваться процедурными картами — это позволяет получить максимально четкое и качественное изображение, ведь такие карты генерируются программно. Вот и в данном случае карта прозрачности материала сетки построена на основе карт Gradient Ramp (Улучшенный градиент). 1. В окне редактора материалов выберите ячейку со свободным материалом.

Рис. 10.23. Структура материала для корпуса и лицевой панели микроволновой печи

2.

В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) щелкните на образце цвета рядом с Diffuse (Цвет рассеивания) и в открывшемся окне установите цвет, близкий к черному. Это будет основной цвет решетки.

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.

Установите параметры этой карты согласно рис. 10.24. Обратите внимание, что в поле Gradient Type (Тип градиента) выбран тип Radial (Радиальный), что позволяет создавать круги черного цвета, повторяющиеся 70 раз по горизонтали и 60 по вертикали (это определяет параметр Tiling (Повтор)).

550

Глава 10. Текстурирование

9.

Перейдите от карты Gradient Ramp (Улучшенный градиент) к карте Mix (Смешивание) с именем Net, используя кнопку Go to Parent (Вернуться к исходному) .

10.

В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кнопке, расположенной рядом с Color #1 (Цвет 1), и, не отпуская кнопку мыши, перетащите ее на кнопку, расположенную рядом с Color #2 (Цвет 2), а в качестве метода копирования выберите Copy (Копия).

11.

Щелкните на вновь созданной копии карты Gradient Ramp (Улучшенный градиент) и в ее свитке Coordinates (Координаты) установите смещение (Offset (Смещение)) по горизонтали (U), равное 0,009 (рис. 10.25).

Рис. 10.24. Параметры первой карты Gradient Ramp (Улучшенный градиент)

Рис. 10.25. Параметры второй карты Gradient Ramp (Улучшенный градиент)

Таким образом, мы имеем две карты Gradient Ramp (Улучшенный градиент), создающие сетку из кругов черного цвета, с той лишь разницей, что вторая карта имеет смещение по горизонтали на величину половины круга. Выполним еще одну карту Gradient Ramp (Улучшенный градиент), которая будет играть роли маски, смешивающей окружности двух предыдущих карт таким образом, что у первой карты будут видны четные горизонтальные ряды, а у второй — нечетные. 1.

Вернитесь к карте Mix (Смешивание) с именем Net, используя кнопку Go to Parent (Вернуться к исходному) .

2.

В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кнопке, расположенной рядом с Mix Amount (Доля в смеси), и в окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент).

3.

Установите параметры этой карты согласно рис. 10.26.

Текстурирование микроволновой печи

551

Рис. 10.26. Параметры карты Gradient Ramp (Улучшенный градиент), играющей роль маски

Обратите внимание, что Gradient Type (Тип градиента) этой карты — Linear (Линейный). Кроме того, карта повернута на 90°, чтобы создаваемые черно-белые полосы располагались горизонтально, а их повторяемость (Tiling (Повтор)) установлена в соответствии с количеством рядов окружностей. Если применить созданную карту к объекту Reshetka, то при визуализации должно получиться изображение, показанное на рис. 10.27.

Рис. 10.27. Визуализация материала сетки

Сейчас полученная карта заполняет все пространство объекта, но решетка окна должна быть лишь частью, ограниченной прямоугольником. Сделать такое ограничение

552

Глава 10. Текстурирование

можно, снова используя карту 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.

Установите параметры этой карты согласно рис. 10.28.

Обратите внимание, что Gradient Type (Тип градиента) этой карты — Box (Параллелепипед). Это позволяет получить маску прямоугольной формы. На этом создание материала для решетки можно считать завершенным. На рис. 10.29 показана схема выполненного материала.

Рис. 10.28. Параметры карты Gradient Ramp (Улучшенный градиент)

Рис. 10.29. Схема материала решетки

Сложное текстурирование

553

ПРИМЕЧАНИЕ Для анализа параметров материалов сцены вы можете использовать файл microwave_ end.max, расположенный на прилагаемом к книге DVD в папке Examples\Глава 10\ Microwave_texturing.

И наконец, на рис. 10.30 представлен фрагмент модели микроволновой печи вместе с текстурами.

Рис. 10.30. Фрагмент модели микроволновой печи вместе с текстурами

Сложное текстурирование Не стоит пугаться названия упражнения. Оно подразумевает, что мы будем говорить о текстурировании сложных объектов, а не то, насколько сложно это сделать. В понятие «сложные объекты» я включаю такие объекты, к которым невозможно применить один из типов стандартного проецирования (планарный, цилиндрический, кубический) и ограничиться этим. Обычно такие объекты требуют совместного использования нескольких типов проецирования и (или) коррекции наложения текстурных координат вручную с помощью модификатора Unwrap UVW (Расправить UVW-проекцию) или дополнительных подключаемых модулей (например, Deep Paint). На примере данного упражнения рассмотрим возможность текстурирования сложных объектов только средствами 3ds Max, без использования сторонних программ. На рис. 10.31 представлена модель резиновой детской игрушки, с которой вам предстоит работать.

554

Глава 10. Текстурирование

Прежде чем переходить к текстурированию, нужно провести предварительный анализ модели. Это необходимо по двум причинам:  для правильного текстурирования модели нужно

понять, на какое минимальное количество элементов (групп выделения) необходимо разделить объект, чтобы применить к этим группам стандартные типы проецирования;  нужно определиться с количеством материалов, ко-

торые будут использоваться в данном объекте.

Рис. 10.31. Модель игрушки

Поясню подробнее. Любой сложный предмет можно разложить на более простые. Например, у вас есть модель деревянной стремянки (лестницы). Если ни один из известных вам типов проецирования текстурных координат, таких как планарное, прямоугольное, цилиндрическое или любое другое, не может дать желаемого результата, то стоит разделить ее на две вертикальные жерди и некоторое количество поперечных ступенек. Тогда сразу становится очевидной возможность применения прямоугольного проецирования текстурных координат. Оно как нельзя лучше будет отвечать форме составляющих лестницу деталей.

Для объяснения второй причины возьмем модель персонажа, одетого в шорты и майку. Очевидно, что в данном случае необходимы как минимум три текстурные карты (голова, майка и шорты), а учитывая обувь, текстуру рук, ног и деталей головы — может быть, и больше трех. Существует два подхода к созданию материала для такой модели. 

Модель может иметь один материал с одной текстурой, на которой расположены сразу все текстурируемые элементы (голова, майка, шорты и т. д.), что очень часто используется для визуализации в реальном времени (например, в компьютерных играх).



Использование составного материала типа Multi/Sub-Object (Многокомпонентный), позволяющего применить к объекту сразу несколько материалов. При этом объект разделяется на несколько Material ID (Идентификатор материала), что позволяет работать с отдельным материалом (например, при замене текстуры майки не придется менять всю текстуру модели).

Второй подход, в отличие от первого, позволяет более гибко работать с отдельными материалами и применять процедурные карты (то есть карты текстур, генерируемые программно).

Сложное текстурирование

555

Модель игрушки, представленной на рис. 10.31, можно разделить на шесть составляющих ее частей по форме, близкой к стандартным для проецирования: 

основание модели — планарное проецирование;



тело — цилиндрическое;



грива — сферическое;



лапы — цилиндрическое;



голова — сферическое;



уши — планарное.

Далее можно действовать одним из следующих способов. 

Для выделенных частей модели последовательно добавлять в стек модификатор Mesh Select (Выделение поверхности) и UVW Map (UVW-проекция) в зависимости от типа наложения соответствующей выделенной геометрии.



Сразу применить модификатор Unwrap UVW (Расправить UVW-проекцию) и все действия по наложению проекционных координат проводить только с его помощью.

В данном разделе рассмотрим смешанный способ наложения проекционных координат: когда работа ведется попеременно с настройками то одного, то другого модификатора.

ПРИМЕЧАНИЕ C выходом 3ds Max 8 практически всю работу по наложению проекционных координат, за исключением назначения выделенным подобъектам идентификаторов материала, стало можно выполнять с помощью модификатора Unwrap UVW (Расправить UVWпроекцию). В данном разделе будет рассмотрен способ, при котором это упражнение можно выполнить и в предыдущих версиях программы, начиная с пятой. Такой метод наложения проекционных координат является основополагающим и может пригодиться для текстурирования объектов практически любой сложности.

Загрузите файл donkey_start.max, который находится в папке Examples\Глава 10\Donkey прилагаемого к книге DVD.

ПРИМЕЧАНИЕ Если вы решите использовать в работе собственную модель, не забудьте преобразовать ее в Editable Mesh (Редактируемая поверхность) или Editable Poly (Редактируемая полигональная поверхность). Это необходимо, если у вас до сих пор была модель типа Patch (Патч-поверхность) или Surface (Поверхность). После этого у вас будет полигональная модель и вы сможете работать в режиме редактирования полигонов (именно они нужны для создания выделений).

556

Глава 10. Текстурирование

Выделите основание модели. Для этого выполните следующие действия. 1.

Выделите модель ослика, щелкнув на ней в любом из окон проекций, и перейдите в режим редактирования Polygon (Полигон).

СОВЕТ Для быстрого перехода в режим редактирования подобъектов служат горячие клавиши: Vertex (Вершина) — 1, Edge (Ребро) — 2, Face (Грань) — 3, Polygon (Полигон) — 4, Element (Элемент) — 5.

2.

В свитке Selection (Выделение) установите флажок Ignore Backfacing (Без обратной ориентации), чтобы случайно не выделить лишние полигоны.

3.

Переключитесь в окно проекции Bottom (Cнизу), щелкнув на названии окна проекции правой кнопкой мыши и в появившемся контекстном меню выполнив команду VewsBottom (ВидСнизу). Выделите основание модели (рис. 10.32).

Разверните свиток Surface Properties (Свойства поверхности) настроек объекта на командной панели и посмотрите, какой идентификатор материала присвоен выделенным полигонам. Если отличный от заданного по умолчанию (то есть не равен 1), то наберите в поле Set ID (Установить идентификатор материала) цифру 1 и нажмите Enter. Чтобы упростить дальнейшее выделение полигонов, присвойте выделению значимое имя. Для этого введите его в поле Named Selection Set (Название выделенной области) на панели инструментов, после чего подтвердите сделанные изменения нажатием клавиши Enter. Примените к выделению планарное проецирование. Для этого используйте модификатор UVW Map (UVW-проекция) (рис. 10.33).

Рис. 10.32. Модель ослика с выделенным основанием

Рис. 10.33. Стек модификаторов с примененным модификатором UVW Map (UVW-проекция)

Сложное текстурирование

557

Обратите внимание, в какой плоскости расположен Gizmo (Габаритный контейнер) модификатора. У меня указано выравнивание по оси Y. Прежде чем перейти к наложению проекционных координат на другие элементы модели, нужно разрушить стек модификаторов, щелкнув правой кнопкой мыши и выбрав команду Collapse All (Разрушить все) (это необязательное действие, но если периодически не разрушать стек, то это приведет к дополнительному расходованию ресурсов компьютера), и скрыть выделение, выполнив следующее. 1.

В любом окне проекции щелкните на модели правой кнопкой мыши.

2.

В появившемся контекстном меню выполните команду Convert ToConvert to Editable Mesh (ПреобразоватьПреобразовать в редактируемую поверхность).

3.

Не снимая выделения с основания модели, щелкните на кнопке Hide (Спрятать) в свитке Selection (Выделение), чтобы спрятать выделенные полигоны (они в ближайшее время не понадобятся, но могут мешать выделению других).

В результате в стеке модификаторов останется только строка Editable Mesh (Редактируемая поверхность). Текстурные координаты, которые были присвоены основанию модели, сохранятся вместе с геометрией. Перейдем к туловищу модели. Для этого выполните следующие действия. 1.

Выделите полигоны, необходимые для наложения проекционных координат.

СОВЕТ Контролируйте процесс выделения полигонов во всех окнах проекций. Это поможет избежать выделения лишних полигонов и увидеть невыделенные.

2.

Присвойте выделению идентификатор материала 2.

3.

Присвойте выделению значимое имя, например body.

4.

Примените к объекту модификатор UVW Map (UVW-проекция) с цилиндрическим типом проецирования.

5.

Установите выравнивание Gizmo (Габаритный контейнер) модификатора по оси X с помощью переключателя в области Alignment (Выравнивание).

6.

В области Alignment (Выравнивание) щелкните на кнопке Fit (Подогнать), чтобы Gizmo (Габаритный контейнер) трансформировался по форме выделения.

7.

В стеке модификаторов щелкните на плюсике рядом с именем модификатора, затем выберите строку Gizmo (Габаритный контейнер), так вы перейдете в режим редактирования габаритного контейнера.

8.

Вращайте габаритный контейнер так, чтобы зеленая вертикальная линия, указывающая место стыка текстуры, находилась сзади (рис. 10.34).

Теперь нужно посмотреть на то, как выглядят получившиеся развертки текстурных координат. Для этого разрушьте стек модификаторов и добавьте в него модификатор Unwrap UVW (Расправить UVW-проекцию).

558

Глава 10. Текстурирование

В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVW-проекцию) щелкните на кнопке Edit (Правка), после чего откроется окно Edit UVWs (Редактирование UVW) для редактирования текстурных координат. На данном этапе окно Edit UVWs (Редактирование UVW) нужно лишь для контроля правильности наложения текстурных координат.

Рис. 10.34. Модель ослика с примененным к туловищу цилиндрическим проецированием

На рис. 10.35 показан фрагмент окна Edit UVWs (Редактирование UVW) с выбранным для показа вторым идентификатором материала. На данном этапе не стоит выполнять какие-либо действия в редакторе текстурных координат. Это лучше сделать после присвоения координат проецирования всем элементам.

Рис. 10.35. Развертка цилиндрического проецирования для туловища модели ослика

Удалите модификатор Unwrap UVW (Расправить UVW-проекцию) из стека модификаторов (он применялся только для того, чтобы можно было убедиться в правильности присвоения проекционных координат). После этого снова перейдите к выделению полигонов (на сей раз гривы ослика), предварительно спрятав выделенные полигоны туловища. После выделения нужных полигонов примените к выделению модификатор UVW Map (UVW-проекция) со сферическим типом проецирования (рис. 10.36). На этот раз задача усложняется. Нужно не просто применить сферическое проецирование, но и правильно его расположить на выделении. Для этого выполните следующие действия. 1.

Рис. 10.36. Модель ослика с примененным к гриве сферическим проецированием

Выберите режим редактирования габаритного контейнера, щелкнув на плюсике рядом с названием модификатора и далее на строке Gizmo (Габаритный контейнер).

Сложное текстурирование

559

2.

Вращайте габаритный контейнер так, чтобы зеленая вертикальная линия, указывающая место стыка текстуры, оказалась в передней части выделения, а наклон центральной оси габаритного контейнера соответствовал наклону выделения.

3.

Передвиньте габаритный контейнер так, чтобы его ось оказалась впереди выделения.

После этого проверьте правильность наложения проекционных координат, присвоив модификатор Unwrap UVW (Расправить UVW-проекцию), как вы уже это делали для туловища ослика. Развертка гривы ослика должна выглядеть так, как показано на рис. 10.37. Если у вас нет опыта работы с такого рода наложением проекционных координат, то требуемый результат может сразу не получиться, но нужно стремиться к тому, чтобы форма развертки не была «рваной» и соответствовала форме выделения. Выделите поочередно правые и левые ноги. Для них применим цилиндрическое проецирование с крышками на торцах. Последовательность выполнения действий та же, что и в предыдущих случаях. Не забудьте назначить выделению идентификатор материала и контролировать выделение в окнах проекций (рис. 10.38).

Рис. 10.37. Развертка сферического проецирования для гривы модели ослика

Развертку для ног ослика делать значительно сложнее, чем в предыдущих случаях. Наберитесь терпения и выполните все действия тщательно. От наложения проекционных координат будет зависеть внешний вид модели. Перейдем к наложению текстурных координат для головы. Надеюсь, к этому времени вы уже поняли принцип работы с модификаторами и развертками, поэтому не стану вновь повторяться, а лишь представлю вашему вниманию положение Gizmo (Габаритный контейнер) модификатора UVW Map (UVWпроекция) со сферическим типом проецирования (рис. 10.39).

Рис. 10.38. Развертка цилиндрического проецирования для ног ослика

560

Глава 10. Текстурирование

Обратите внимание, что зеленая линия (см. цветной рис. 10.39 на прилагаемом к книге DVD), означающая место стыка текстурной карты, обращена в противоположную от лицевой части сторону и ее ось повернута так, чтобы максимально широко развернуть текстуру. На рис. 10.40 представлена развертка текстурных координат для головы ослика.

Рис. 10.39. Модель ослика с примененным к голове сферическим проецированием

Рис. 10.40. Развертка сферического проецирования для головы модели ослика

С ушами модели проделайте описанные выше действия следующим образом. 1.

Выделите полигоны, составляющие одно ухо.

2.

Присвойте выделению идентификатор материала.

3.

Примените модификатор UVW Map (UVW-проекция) с планарным типом проецирования.

4.

Применив модификатор Unwrap UVW (Расправить UVW-проекцию), проверьте правильность наложения текстурных координат.

5.

При необходимости сделайте соответствующие правки, вернувшись к редактированию Gizmo (Габаритный контейнер) модификатора UVW Map (UVWпроекция).

После выполненных операций развертка для ушей ослика должна выглядеть так, как показано на рис. 10.41 (в данном случае имеется в виду форма развертки, а не масштаб и положение в пространстве). Когда модели назначены все проекционные координаты, нужно разложить созданные развертки в пределах одной текстурной карты. Сделать это можно двумя способами: автоматически и вручную.

Сложное текстурирование

561

Для того чтобы закончить создание проекционных координат для модели ослика, выполните приведенные ниже действия. 1.

Откройте все ранее спрятанные полигоны, для чего щелкните на кнопке Unhide All (Показать все) в свитке Selection (Выделение) настроек объекта Editable Mesh (Редактируемая поверхность).

2.

Примените к модели ослика модификатор Unwrap UVW (Расправить UVW-проекцию).

3.

В свитке настроек Parameters (Параметры) модификатора Unwrap UVW (Расправить UVW-проекцию) щелкните кнопкой мыши на кнопке Edit (Редактировать).

4.

Рис. 10.41. Развертка планарного проецирования для ушей модели ослика

В появившемся окне правки текстурных координат выполните команду ToolsPack UVs (ИнструментыРазместить UV-проекции) и в открывшемся окне диалога Pack (Упаковать) щелкните на кнопке OK. В результате этих действий развертки заполнят свободное пространство в пределах текстурной карты (рис. 10.42). Передвигать и масштабировать их придется вручную.

Теперь создадим текстуру для модели. Обычно я делаю это в программе Adobe Photoshop, но можно использовать любое другое приложение редактирования графики.

Рис. 10.42. Окончательный вид развертки текстуры для модели ослика

Прежде всего необходимо создать визуализацию текстурных координат и сохранить ее в виде растрового изображения. Выполните команду ToolsRender UVW Template (ИнструментыВизуализация образца UVW) из меню окна Edit UVWs (Редактирование UVW) и, не изменяя настроек окна Render UVs (Визуализация UV), щелкните на кнопке Render UV Template (Визуализация образца UV), а затем сохраните выполненную визуализацию. Откройте сохраненное изображение в программе растровой графики (например, Adobe Photoshop).

562

Глава 10. Текстурирование

ПРИМЕЧАНИЕ Можно воспользоваться и более простым способом — максимально увеличить окно редактирования текстурных координат и сделать копию экрана, нажав на клавиатуре Print Screen. После этого создать в Adobe Photoshop новый документ с размерами не менее 512 Ч 512 пикселов (я обычно использую размер 1000 Ч 1000 или 1024 Ч 1024) и вставить изображение, нажав сочетание клавиш Ctrl+V (стандартное сочетание клавиш для вставки содержимого буфера обмена).

Выполните в Adobe Photoshop команду SelectColor Range (ВыделениеЦветовой диапазон) и выделите черный цвет фона, после чего удалите его, нажав клавишу Delete (Удалить). Это позволит лучше видеть слой, который лежит ниже и на котором вы будете рисовать текстуру для модели (рис. 10.43). Нарисуйте на нижнем слое текстуру для модели ослика. Добавляйте слои, цвета, используйте выдавливание и т. д. — и вы сможете получить великолепную модель. Я всего лишь немного растушевал изображение, чтобы слегка оживить модель (рис. 10.44).

Рис. 10.43. Заготовка текстуры

Рис. 10.44. Текстурная карта цвета для модели ослика

Последнее, что осталось сделать, — создать материал и назначить ему в качестве карты цвета созданное растровое изображение. Для этого в 3ds Max 2009 выполните следующие действия. 1.

Откройте окно Material Editor (Редактор материалов) и выберите ячейку со свободным материалом.

2.

В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с кнопкой Diffuse Color (Цвет рассеивания).

Текстурирование лошадки

563

3.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение).

4.

В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту для канала цвета.

5.

Присвойте материал модели ослика, перетащив его мышью из окна редактора материалов на объект в окне проекции, либо при выделенном объекте щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам) , находящейся на панели инструментов окна Material Editor (Редактор материалов).

Чтобы модель выглядела реалистичнее, сделайте текстурные карты для выдавливания и глянца ее поверхности. То, что получилось у меня, показано на рис. 10.45. Конечно, чтобы создать красивую реалистичную модель, требуется достаточно много времени для рисования текстур. Порой это занимает не меньше времени, чем само моделирование объекта. ПРИМЕЧАНИЕ Законченная модель ослика с присвоенными проекционными координатами находится на DVD, прилагаемом к книге, в папке Examples\Глава 10\Donkey. Файл сцены называется donkey_end.max.

Текстурирование лошадки Как это часто бывает, выполнив моделирование персонажа или сложного объекта, мы сталкиваемся с проблемой его текстурирования, хотя правильнее будет сказать — присвоения объекту текстурных координат.

Рис. 10.45. Финальная

визуализация Существуют различные способы наложения текстурных модели ослика координат на сложные объекты: от разделения на идентис картой цвета фикаторы материала (ID) до использования встроенных команд редактора UVW (Edit UVWs (Редактирование UVW)). В основном это очевидные способы работы с текстурными координатами, но мне хотелось бы рассказать о том, как можно использовать для развертки модели модификаторы, казалось бы, не предназначенные для этого.

ПРИМЕЧАНИЕ В данном разделе мы будем рассматривать наложение текстурных координат с использованием двух модификаторов: Cloth (Ткань) и Melt (Таяние). Аналогичного результата можно добиться с использованием Rigid Body Collection (Коллекция твердых тел) и Cloth Collection (Коллекция тканей) модуля reactor.

564

Глава 10. Текстурирование

Прежде всего откройте файл с моделью лошадки, которую мы выполнили в предыдущей главе, и удалите модификатор Symmetry (Симметрия), который применялся для создания симметричной копии выполненной половинки модели. Кроме того, снимите флажок Use NURMS Subdivision (Использовать NURMS-разбиения) из свитка Subdivision Surface (Поверхность с разбиением). ПРИМЕЧАНИЕ Вы можете воспользоваться файлом horseTextStart.max, расположенным на прилагаемом к книге DVD в папке Examples\Глава 10\Horse_Texturing.

СОВЕТ Если у вас низкополигональная модель с NURMS-разбиениями, обязательно отключайте использование разбиений, чтобы упростить работу с моделью и ускорить расчеты.

Для работы нам понадобится поверхность, которая будет использована в качестве твердого тела в расчетах деформации ткани. Для этих целей подойдет плоскость — она уже присутствует у нас в сцене (объект Plane01). Если же вы используете сцену с собственной моделью, то в окне проекции Top (Сверху) создайте плоскость, расположенную у основания модели. Для построения плоскости выполните команду главного меню CreateStandard PrimitivesPlane (СоздатьСтандартные примитивыПлоскость). Поверните копию модели персонажа таким образом, чтобы она располагалась параллельно плоскости и на небольшом расстоянии от нее (рис. 10.46). На этом подготовительные действия можно считать законченными.

Рис. 10.46. Взаимное расположение объектов сцены на начальном этапе работы

Текстурирование лошадки

565

Далее применим к объекту модификаторы и настроим их. Для этого выполните следующие действия. 1.

Выделите копию персонажа и примените к ней модификатор Cloth (Ткань), выполнив команду главного меню ModifiersClothCloth (МодификаторыТканьТкань).

2.

Чтобы получить доступ к настройкам модификатора Cloth (Ткань), щелкните в свитке Object (Объект) на кнопке Object Properties (Свойства объекта).

3.

В открывшемся окне Object Properties (Свойства объекта) выберите из списка объектов, используемых для симуляции ткани, лошадку (в моем случае — объект с именем horse).

4.

В верхней части окна установите переключатель в положение Cloth (Ткань).

5.

Выберите из раскрывающегося списка, расположенного в области Presets (Предустановки), строку Rubber (Резина) (рис. 10.47).

Рис. 10.47. Окно диалога Object Properties (Свойства объекта)

ПРИМЕЧАНИЕ Вы можете поэкспериментировать с другими предустановками или свойствами ткани, для того чтобы понять, как работает данный модификатор, но для понимания этого урока достаточно настроек, используемых по умолчанию.

566

Глава 10. Текстурирование

6.

В верхней части окна диалога Object Properties (Свойства объекта) щелкните на кнопке Add Objects (Добавить объекты) и выберите в списке объектов сцены появившегося окна созданную ранее плоскость.

7.

В нижней части окна установите переключатель в положение Collision Object (Объект столкновения) (рис. 10.48) и щелкните на кнопке OK.

Рис. 10.48. Настройки окна диалога Object Properties (Свойства объекта) для плоскости

8.

Запустите просчет симуляции ткани, для чего в области Simulation (Моделирование) свитка Object (Объект) щелкните на кнопке Simulate (Моделирование).

При расчете симуляции ткани результатом должна стать деформированная по вертикали модель лошадки. Оптимального результата для получения правильной развертки текстурных координат можно достичь, если поверхность модели будет растягиваться в стороны с минимальными пересечениями. При этом совсем не обязательно добиваться полного разворачивания модели в плоскость, этим займется модификатор, который будет применяться следующим. На данном этапе моделирования объект должен выглядеть так, как показано на рис. 10.49.

Текстурирование лошадки

567

Рис. 10.49. Модель после расчетов симуляции ткани

СОВЕТ Если вас не удовлетворит результат первого просчета, щелкните на кнопке Erase Simulation (Удалить моделирование), расположенной в области Simulation (Моделирование) свитка Object (Объект), и измените настройки. Одной из причин неудовлетворительного расчета поведения ткани может служить неверное соотношение системных единиц к размерам объекта, используемого в расчетах. Для редактирования этого отношения в свитке Simulation Parameters (Параметры моделирования) измените значение счетчика cm/unit (сантиметры/системные единицы).

Вы, наверное, успели заметить, что объект не полностью расправился на плоскости. Это может отрицательно повлиять на развертку текстурных координат. Изменить положение поможет модификатор Melt (Таяние). Для его применения к объекту воспользуйтесь командой главного меню ModifiersAnimationMelt (МодификаторыАнимацияТаяние). В области Solidity (Плотность) настроек примененного модификатора установите переключатель в положение Custom (Специальный) и задайте счетчику, расположенному справа, значение 0,2. Кроме того, увеличьте значение параметра Amount (Величина) области Melt (Таяние) таким образом, чтобы поверхность модели превратилась в плоскость (рис. 10.50).

568

Глава 10. Текстурирование

Рис. 10.50. Модель после применения модификатора Melt (Таяние)

В результате мы получили плоскую форму модели. ПРИМЕЧАНИЕ В данном случае текстурные координаты, относящиеся к ногам лошади, не являются критичными для текстурирования модели, но, возможно, у вас будет иная ситуация. В таком случае вам понадобится разделить модель в области ног на две части, а затем, после текстурирования, снова их объединить.

Теперь можно непосредственно заняться созданием текстурных координат. Если бы при растягивании геометрии не происходило пересечение поверхности, можно было бы воспользоваться плоскими координатами модификатора UVW Map (UVWпроекция). Однако нам необходимо выполнить небольшое редактирование, и для этого потребуется модификатор Unwrap UVW (Расправить UVW-проекцию). Примените к модели модификатор Unwrap UVW (Расправить UVW-проекцию), выполнив команду главного меню ModifiersUV CoordinatesUnwrap UVW (МодификаторыUV-координатыРасправить UVW-проекцию). В свитке Parameters (Параметры) щелкните на кнопке Edit (Правка), в результате чего откроется окно Edit UVWs (Редактирование UVW). В этом окне представлена развертка текстурных координат модели после выполненных преобразований. Мы получили относительно неплохой результат, воспользовавшись двумя модификаторами и потратив на это совсем немного времени. Но все же нам необходимо выполнить в этом окне небольшое редактирование. Дело в том, что хвост лошади должен иметь цвет, отличающийся от цвета задних ног и туловища, а это означает, что его необходимо сместить в сторону на свободное пространство.

Текстурирование лошадки

569

В области Selection Modes (Режимы выделения), расположенной в нижней части окна Edit UVWs (Редактирование UVW), нажмите кнопку Face Sub-object Mode (Режим подобъектов Грани) и выделите нижний полигон хвоста. Щелкните несколько раз на кнопке Expand Selection (Расширить выделение) с таким расчетом, чтобы выделился весь хвост. После этого можно переместить хвост на свободное место позади ног и туловища (рис. 10.51).

Рис. 10.51. Новое положение хвоста лошади

Кроме хвоста, можно подправить серединную линию, расположенную внизу живота, которая перекрывается частью геометрии. Вы можете видеть эту линию на развертке — она совпадает со швом (Seam), обозначенным зеленым цветом. Если цвет модели в нижней части не будет иметь различий, то можно оставить все как есть. Но мы рассмотрим случай, когда цвет текстуры меняется. Для редактирования серединной линии выполните следующие действия. 1.

В области Selection Modes (Режимы выделения), расположенной в нижней части окна Edit UVWs (Редактирование UVW), нажмите кнопку Edge Sub-object Mode (Режим подобъектов «Ребра») .

2.

Выделите одно из ребер, расположенное в нижней части живота модели.

570

Глава 10. Текстурирование

3.

Щелкните два раза на кнопке Expand Selection (Расширить выделение) и увеличьте выделение.

4.

Нажмите кнопку Lock selected vertices (Блокировать выделенные вершины) чтобы выделение при смещении осталось неизменным.

5.

Переместите выделенные ребра за пределы области живота (рис. 10.52).

,

Рис. 10.52. Развертка лошади после редактирования

6.

Снимите блокировку, щелкнув на кнопке Lock selected vertices (Блокировать выделенные вершины), и выделите весь объект. Используя инструмент Scale , масштабируйте объект таким образом, чтобы развертка пол(Масштаб) ностью поместилась в область, ограниченную прямоугольником фона (это не что иное, как габариты текстурной карты).

Чтобы закончить с редактированием развертки текстурных координат, выполните команду ToolsRender UV Template (СервисВизуализация образца UV) меню окна Edit UVWs (Редактирование UVW). В открывшемся окне Render UVs (Визуализация UV) оставьте настройки, заданные по умолчанию, и визуализируйте развертку, щелкнув на кнопке Render UV Template (Визуализировать образец UV) (рис. 10.53). Сохраните получившееся изображение на диске в формате, поддерживающем альфа-канал (например, TIFF).

571

Текстурирование лошадки

Рис. 10.53. Результат визуализации развертки лошадки

ПРИМЕЧАНИЕ Полученная развертка применяется в качестве подложки при создании карты текстуры (например, как один из слоев в программе Photoshop). При этом вы имеете возможность правильно расположить рисунок относительно текстурных координат.

На этом мы закончили редактирование текстурных координат лошадки и можем перейти к завершающему этапу данного раздела. Нам нужно вернуться к первоначальному положению модели, но прежде наведем порядок в стеке модификаторов следующим образом. 1.

Передвиньте ползунок таймера анимации в первый кадр (во время симуляции поведения ткани он переместился в последний кадр).

2.

В стеке модификаторов выключите использование модификатора Melt (Таяние), щелкнув на значке, расположенном слева от названия модификатора (рис. 10.54).

3.

Выделите из списка верхний модификатор, щелкните на нем правой кнопкой мыши и выберите в появившемся контекстном меню команду Collapse All (Свернуть все).

Рис. 10.54. Стек модификаторов модели лошадки с выключенным модификатором Melt (Таяние)

572

Глава 10. Текстурирование

4.

Разверните лошадку таким образом, чтобы она приняла первоначальное положение, то есть «встала на ноги».

5.

Для создания второй половины лошадки примените модификатор Symmetry (Симметрия) с осью отражения Z.

6.

Примените к модели модификатор сглаживания MeshSmooth (Сглаженная поверхность). Он работает аналогично инструменту NURMS Subdivision (NURMSразбиения) полигональной поверхности.

На этом упражнение можно считать завершенным. Вам останется выполнить растровую карту применительно к сохраненной визуализации текстурных координат и применить ее к модели. Я приложил еще немного усилий и выполнил простое текстурирование построенной модели. В результате визуализации было получено растровое изображение лошадки, представленное на рис. 10.55.

Рис. 10.55. Визуализация лошадки с текстурой

ПРИМЕЧАНИЕ Готовая модель текстурированной лошадки horseTextEnd.max находится на прилагаемом к книге DVD в папке Examples\Глава 10\Horse_Texturing.

Глава 11.

Визуализация • Интеграция трехмерной графики и фотографии • Маскирование объектов • Объекты в фокусе камеры • Работаем с Video Post (Видеомонтаж)

Существует много вариантов, позволяющих получить хорошее изображение при визуализации, но при этом всегда найдется способ, чтобы улучшить его. В данной главе мы поговорим о том, как это сделать. Для этого рассмотрим методы работы с фотографиями, исследуем возможность улучшения визуализации за счет создания глубины резкости изображения.

Интеграция трехмерной графики и фотографии Когда я работал в рекламном агентстве, специализирующемся на наружной рекламе, мне часто приходилось иметь дело с проектами, требующими размещения рекламных конструкций на фотографии. В этом упражнении мы поговорим о рекламной конструкции и способе ее подачи в программе 3ds Max. На примере создания стелы для банка я объясню процесс построения целостного изображения на основе трехмерной графики и фотографии. Предположим, у вас есть идея для проекта, ее конструктивное решение. Но заказчику мало просто описать проект, он хочет видеть его таким, каким тот будет в жизни. Попробуем выполнить пожелания заказчика. Все начинается с фотографии. Прежде всего нужно определить, какого качества необходимо распечатать проект для заказчика. Это служит отправной точкой для задания разрешения при сканировании (если, конечно, вы не пользуетесь цифровым фотоаппаратом). Если фотография имеет размер 9 Ч 12 см, а вывести на печать нужно формат А4, я сканирую с разрешением 300 dpi и предпочитаю работать с форматом TIFF. После получения цифрового изображения можно считать подготовительную часть законченной (рис. 11.1).

Рис. 11.1. Отсканированное изображение, которое будет использоваться в качестве фона

Интеграция трехмерной графики и фотографии

575

Теперь надо разместить фотографию в качестве фонового изображения в окне проекции Perspective (Перспектива), а также в качестве карты окружающей среды, что позволит не только видеть фотографию в окне проекции, но и визуализировать ее. Для этого сделайте следующее. 1.

Выполните команду RenderingEnvironment (ВизуализацияОкружающая среда).

2.

В свитке Common Parameters (Общие параметры) открывшегося окна Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке None (Отсутствует).

3.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Bitmap (Растровое изображение). Откроется окно Select Bitmap Image File (Выбор растрового изображения).

4.

Укажите путь к файлу фонового изображения и щелкните на кнопке Open (Открыть) (рис. 11.2), после чего закройте окно Environment and Effects (Окружающая среда и эффекты).

Рис. 11.2. Свиток Common Parameters (Общие параметры) после добавления файла фонового изображения

СОВЕТ В окне Select Bitmap Image File (Выбор растрового изображения) не спешите, выбрав файл, щелкать на кнопке Open (Открыть). Обратите внимание на строку статистики внизу окна. Вам понадобится указанное там разрешение изображения в пикселах. Именно этот размер лучше всего выставлять для визуализации проекта как оптимальный с точки зрения качества.

Иногда в процессе работы требуется небольшая коррекция растрового изображения, которую можно выполнить, не выходя из 3ds Max и не загружая его в программы редактирования растровых изображений. Для этого достаточно скопировать карту фонового изображения из свитка Common Parameters (Общие параметры) окна Environment and Effects (Окружающая среда и эффекты) в Material Editor (Редактор материалов). Для копирования сделайте следующее. Откройте редактор материалов, выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов) или нажав клавишу M. Щелкните на кнопке с названием файла фонового изображения в окне Environment and Effects (Окружающая среда и эффекты) и, не отпуская кнопку мыши, перетащите ее в любую свободную ячейку образца материала окна Material Editor (Редактор материалов), а в качестве метода копирования установите Instance (Привязка).

576

Глава 11. Визуализация

При необходимости редактирования изображения откройте свиток Bitmap Parameters (Параметры растрового изображения) или Output (Результат) в окне Material Editor (Редактор материалов). С помощью этих свитков можно подкорректировать размер выходного изображения, провести цветокоррекцию, изменить яркость, насыщенность и другие параметры растрового изображения. Теперь нужно разместить это же растровое изображение в окне проекции и изменить параметры визуализации. Для этого сделайте следующее. 1.

Выполните команду ViewsViewport BackgroundViewport Background (ВидФон окна проекцииФон окна проекции).

2.

В появившемся окне Viewport Background (Фон окна проекции) установите флажки Use Environment Background (Использовать фон окружающей среды) и Display Background (Показать фон).

3.

В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) строку Perspective (Перспектива) (рис. 11.3).

4.

Закончив настройку, щелкните на кнопке OK.

Рис. 11.3. Окно Viewport Background (Фон окна проекции) с настройками для фонового изображения

5.

Выполните команду RenderingRender Setup (ВизуализацияНастройки визуализации), в результате чего откроется окно Render Setup (Настройки визуализации).

Интеграция трехмерной графики и фотографии

6.

577

В области Output Size (Выходной размер) свитка Common Parameters (Общие параметры) укажите значение ширины и высоты в пикселах в соответствии с размером фонового изображения (помните, я советовал при открытии файла обратить внимание на размер изображения).

После выполнения данных действий в окне проекции Perspective (Перспектива) появится фотография в качестве фонового изображения. Проанализируем фоновое изображение. Первое, что нужно сделать, — определить точку в пространстве, с которой производилась съемка (это необходимо для правильной постановки камеры в сцене), а также сделать анализ света и тени (пригодится для выставления источников света). Начнем с камеры. Фотоаппарат находился на уровне глаз фотографа, значит, и камеру в сцене надо разместить на высоте 1600–1700 мм (за нулевую отметку земли возьмем начало координат по оси Z). Чтобы проще было согласовывать объекты сцены с фоновым изображением, лучше использовать Target Camera (Направленная камера). Цель камеры будет находиться несколько выше самой камеры, так как фотография предположительно была сделана под небольшим углом. Идеальный вариант — знать реальные размеры объектов на фотографии, например столбов, и расстояние от них до точки съемки, чтобы максимально верно выставить камеру и объекты сцены. Что же касается освещения на фотографии, то, судя по теням от машины и столба, можно предположить, что солнце находилось слева и немного впереди. СОВЕТ Особую роль в работе такого рода играет последовательность действий. В данном примере можно было сначала построить всю геометрию (плоскость земли и саму стелу) согласно реальным размерам и только потом начинать работу с фотографией. Но гораздо чаще приходится строить объекты, применяя фотографию, то есть заниматься непосредственной подгонкой изображения (например, добавить несколько мелких деталей в интерьер комнаты).

Допустим, что у вас уже есть модель стелы, и сейчас нужно только экспортировать ее в сцену. ПРИМЕЧАНИЕ Вы можете загрузить объекты сцены из файла stela_start.max, расположенного в папке Examples\Глава 11\Stela прилагаемого к книге DVD.

Чтобы показать тень, падающую от стелы на землю, необходимо построить плоскость. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость). В окне проекции Top (Сверху) щелкните кнопкой мыши в верхнем левом углу и, удерживая ее нажатой, переместите указатель в правый нижний угол, построив таким образом плоскость (рис. 11.4).

578

Глава 11. Визуализация

Рис. 11.4. Взаимное расположение объектов сцены

Плоскость нужна для того, чтобы отобразить на ней тень от стелы, поэтому она должна находиться на уровне земли и быть не меньше, чем предполагаемая тень. Кроме того, я использую грани плоскости для выравнивания ее относительно точек схода. Построив плоскость и установив на нее стелу, можно считать работу с геометрией законченной. Теперь перейдем к построению камеры, для чего сделайте следующее. 1.

Выполните команду CreateCamerasTarget Camera (СозданиеКамерыНаправленная камера) главного меню.

2.

В окне проекции Top (Сверху) щелкните немного левее стелы и переместите указатель мыши в направлении, противоположном фронтальной стороне стелы. После того как вы отпустите кнопку мыши, камера будет построена.

Рис. 11.5. Окно Move Transform Type-In (Ввод значений перемещения) со значением высоты камеры над землей

3.

Не снимая выделения с камеры, щелкните правой кнопкой мыши на кнопке Select and Move (Выделить и переместить) , расположенной на панели инструментов.

4.

В открывшемся окне Move Transform TypeIn (Ввод значений перемещения) задайте абсолютное значение по оси Z равным 1700 (расстояние от земли до камеры). Камера займет свое положение в пространстве по оси Z, и двигать ее в этой плоскости больше не следует (рис. 11.5).

Интеграция трехмерной графики и фотографии

579

Теперь окно проекции Perspective (Перспектива) можно заменить окном вида из камеры. Для этого щелкните правой кнопкой мыши на названии окна (в левом верхнем углу) и в появившемся контекстном меню выберите ViewsCamera (ВидКамера). Продолжим настройку положения камеры в пространстве. Для согласования линии горизонта камеры с горизонтом на фотографии надо включить показ горизонта камеры в окне вида из камеры. Для этого выполните следующие действия. 1.

Выделите камеру в окне проекции Top (Сверху).

2.

Щелкните на вкладке Modify (Изменение) командной панели, в результате чего появится доступ к настройкам параметров камеры.

3.

В свитке Parameters (Параметры) установите флажок Show Horizon (Показать горизонт). В окне проекции появится черная горизонтальная линия, указывающая на положение линии горизонта в пространстве.

На рис. 11.6 показаны составляющие правильной настройки камеры и освещения для фонового изображения.

Рис. 11.6. Схема положения объектов сцены относительно изображения фона

Для наглядности (это не обязательно) я провел две линии: параллельно бордюрному камню и по краю газона (они обычно параллельны). На пересечении мы получили точку схода, а следовательно, и линию горизонта фотографии. , передвиньте Используя инструмент Select and Move (Выделить и переместить) Target (Цель) камеры по оси Z так, чтобы черная горизонтальная линия (горизонт камеры) совпала с точкой схода. Затем переместите камеру по осям X и Y, чтобы

580

Глава 11. Визуализация

стела заняла то место, которое для нее предназначено, то есть справа от дороги на газоне. Стелу предполагается расположить перпендикулярно дороге, следовательно, ее можно установить по левой грани плоскости. Кроме того, она размещена в пространстве так, что ее боковая грань расположена параллельно дороге. На рис. 11.7 показано окончательное расположение камеры и источников света в окне проекции Top (Сверху).

Рис. 11.7. Расположение объектов сцены в окне проекции Top (Сверху)

В сцене будет три источника света: два Omni (Всенаправленный) и Target Direct (Нацеленный направленный). В качестве источника света, который будет генерировать тени, я выбрал Target Direct (Нацеленный направленный), как наиболее близкий по теням к солнцу (у солнца лучи почти параллельны, как и у этого источника света). Он размещен в сцене согласно ранее проведенному анализу фотографии, то есть слева и немного впереди. Для этого источника света сделайте следующее. 1.

Выделите Target Direct (Нацеленный направленный) в окне проекции Top (Сверху).

2.

командной панели, в результате Щелкните на вкладке Modify (Изменение) чего появится доступ к настройкам параметров источника света.

3.

В области Shadows (Тени) свитка General Parameters (Общие параметры) установите флажок On (Включить).

4.

В свитке Shadow Map Params (Параметры карты тени) задайте параметру Size (Размер) значение, равное 1000, что позволит генерировать тень с более ровными краями.

Теперь нужно назначить плоскости материал Matte/Shadow (Матовое покрытие/ тень). Он позволяет объектам принимать тени, при этом оставаясь невидимым.

581

Интеграция трехмерной графики и фотографии

Чтобы присвоить плоскости данный материал и настроить его параметры, выполните следующие действия. 1.

Откройте окно Material Editor (Редактор материалов) и выберите любую свободную ячейку образца.

2.

Щелкните на кнопке Standard (Стандартный).

3.

В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень).

4.

В свитке Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) настройте параметры материала, как показано на рис. 11.8.

5.

Для присвоения материала плоскости перетащите материал из окна Material Editor (Редактор материалов) на плоскость в окне проекции.

Рис. 11.8. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для плоскости

Визуализируйте сцену (рис. 11.9).

Рис. 11.9. Результат визуализации стелы на фоне растрового изображения

В данном случае тень от стелы падала на ровную поверхность земли, а что, если тень падает на стену здания с колоннами, окнами и пилястрами? При решении такой задачи нужно имитировать выступы и впадины (достаточно сделать это

582

Глава 11. Визуализация

приблизительно), и на достаточном расстоянии от камеры вы не заметите неточности в форме тени. Сложнее, если объект показан крупным планом. Чтобы он не казался инородным телом, необходимо подобрать параметр сглаживания при визуализации. Это же относится и к подбору цвета для источников света (надо постараться попасть в цветовую гамму фотографии). ПРИМЕЧАНИЕ В папке Examples\Глава 11\Stela прилагаемого к книге DVD находится итоговый файл сцены stеla_end.max.

Маскирование объектов Техника использования маскированных объектов позволяет создавать визуализацию с помощью фонового изображения и объектов сцены. Простым примером может служить создание анимации, при которой объект сцены — самолет — вылетает из-за скалы, расположенной на фотографии, использованной в качестве фонового изображения. Рассмотрим похожий пример с использованием автомобиля. Нам понадобится фотография для фонового изображения (рис. 11.10) и модель автомобиля.

Рис. 11.10. Растровое изображение, взятое для использования в качестве фона

Как установить растровое изображение в качестве фона в окне проекции и подключить его для последующей визуализации, было подробно рассмотрено в двух предыдущих разделах, поэтому я напомню только последовательность работы. 1.

Выполнив команду RenderingEnvironment (ВизуализацияОкружающая среда), загрузите растровое изображение фона для использования его при визуализации.

Маскирование объектов

583

2.

Для показа фона в окне проекции Perspective (Перспектива) или вида из камеры выполните команду ViewsViewport BackgroundViewport Background (ВидФон окна проекцииФон окна проекции).

3.

Задайте разрешение для визуализации соответственно размерам фонового изображения (как минимум должно соответствовать отношение высоты к ширине, в противном случае будут искажения).

4.

Экспортируйте в сцену объекты для работы (в данном случае автомобиль), для чего выполните команду FileMerge (ФайлПрисоединить) и выберите в окне диалога Merge File (Присоединить файл) файл с моделью автомобиля (рис. 11.11).

Рис. 11.11. Окно вида из камеры с фоновым изображением и моделью автомобиля

ПРИМЕЧАНИЕ Все необходимое для выполнения задания можно найти на прилагаемом к книге DVD в папке Examples\Глава 11\Mask. Файл сцены называется mask_start.max.

На рис. 11.11 уменьшенная копия модели автомобиля висит над террасой. Такое впечатление создается из-за того, что ограждение террасы оказалось за автомобилем, а также из-за отсутствия тени, которая помогает ориентироваться в трехмерном пространстве. Чтобы исправить положение, вам понадобится построить плоскость и согласовать ее положение в пространстве с положением автомобиля. Плоскость нужна для того, чтобы автомобиль отбрасывал на нее тень. Для ее построения выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость) и расположите плоскость в окне проекции Top (Сверху) под моделью автомобиля.

584

Глава 11. Визуализация

Назначьте плоскости материал Matte/Shadow (Матовое покрытие/тень) с установленным флажком Receive Shadows (Принимать тень) (рис. 11.12).

Рис. 11.12. Модель автомобиля с плоскостью на фоне растрового изображения

Теперь необходимо построить геометрический объект, соответствующий по форме тем участкам растрового изображения, которые надо открыть на фото (пока они скрыты моделью автомобиля). ВНИМАНИЕ Если в качестве фона вы планируете использовать анимацию, то объекты, играющие роль масок, должны быть объемными копиями объектов на фотографии. В противном случае маскирование не будет использовано при повороте или движении камеры.

Все, о чем я буду говорить дальше, подходит только для статичных (неподвижных) сцен. Дальнейшее построение можно вести тремя способами. 

Если форма маскирующего объекта, которую надо создать, несложная, ее можно строить прямо в окне вида из камеры.



Если форма сложная, то необходимо вставить растровое изображение в качестве фона в окно проекции и, используя масштабирование, приблизить его настолько, чтобы было удобно работать с мелкими деталями. После создания такого объекта нужно уточнить его положение в пространстве относительно вида визуализации.

Маскирование объектов 

585

Можно создать сплайны в программах векторной графики (CorelDRAW или Adobe Illustrator) и импортировать их в 3ds Max.

Воспользуемся первым способом. В качестве объекта, маскирующего автомобиль, я использовал сплайны, к которым затем применил модификатор Edit Mesh (Редактирование поверхности). Чтобы ничего не мешало в работе, можно скрыть все ненужные в данное время объекты (автомобиль, плоскость, камеру и источники света). Для этого выделите все объекты сцены, щелкнув на кнопке Select by Name (Выделить по имени) . В появившемся окне Select From Scene (Выбор из сцены) нажмите кнопку Select All (Выделить все), а затем — OK. В свитке Hide (Спрятать) вкладки Display (Отображение) щелкните на кнопке Hide Selected (Спрятать выделенное). Прежде чем приступить к построению сплайнов, очерчивающих форму деталей растрового изображения (в данном случае это ограждение террасы), нужно выполнить подготовительные действия. 1.

В окне проекции Front (Спереди) постройте объект сетки, выполнив команду CreateHelpersGrid (СозданиеВспомогательные объектыКоординатная сетка).

2.

Выделите созданный объект сетки в окне проекции вида из камеры и выполните команду Tools AlignAlign to View (ИнструментыВыровнять Выровнять по окну проекции).

3.

В открывшемся окне Align to View (Выровнять по окну проекции) установите переключатель в положение Align Z (Выровнять по оси Z) (рис. 11.13) и щелкните на кнопке OK для подтверждения принятых изменений.

4.

Для увеличения рабочей области при выделенном окне проекции вида из камеры щелкните на кнопке Maximize Viewport Toggle (Увеличение окна проекции в правом нижнем углу окна программы. до размеров экрана)

5.

Сделайте активной плоскость сетки. Для этого выделите объект сетки и выполните команду главного меню ToolsGrids and SnapsActivate Grid Object (ИнструментыСетки и привязкиАктивировать объект сетки).

Рис. 11.13. Окно Align to View (Выровнять по окну проекции) с настройками для выравнивания сетки

После выполнения этих действий можно приступать к построению сплайнов. Я использовал объекты Rectangle (Прямоугольник), которые затем присоединил к одному объекту и к которым применил булевы операции для создания цельного сплайна. ВНИМАНИЕ Объект, который мы строим, должен находиться перед автомобилем, то есть в окне проекции вида из камеры он должен перекрывать автомобиль.

586

Глава 11. Визуализация

После редактирования сплайна необходимо применить к нему модификатор Edit Mesh (Редактирование поверхности), выполнив команду ModifiersMesh EditingEdit Mesh (МодификаторыРедактирование поверхностиРедактирование поверхности). В результате должен получиться полигональный объект, закрывающий ограждение террасы (рис. 11.14).

Рис. 11.14. Окно вида из камеры с полигональным объектом, построенным на объекте сетки

Теперь можно приступать к созданию и наложению на построенный объект материала Matte/Shadow (Матовое покрытие/тень).

Рис. 11.15. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для объекта маскирования

1.

Откройте окно Material Editor (Редактор материалов) и выберите ячейку со свободным материалом.

2.

Щелкните на кнопке Standard (Стандартный).

3.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень).

4.

В свитке Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) настройте параметры материала, как показано на рис. 11.15.

Осталось только открыть спрятанные ранее объекты и визуализировать вид из камеры. Для этого в свитке Hide (Спрятать) вкладки

Объекты в фокусе камеры

587

Display (Отображение) командной панели щелкните на кнопке Unhide All (Показать все), а затем — на кнопке панели инструментов Render Production (Итоговая визуализация) . В результате должно получиться изображение, показанное на рис. 11.16.

Рис. 11.16. Окончательная визуализация автомобиля с использованием фонового изображения

ПРИМЕЧАНИЕ Для просмотра и анализа выполненной работы вы можете загрузить готовую сцену mask_end.max из папки Examples\Глава 11\Mask прилагаемого к книге DVD.

Объекты в фокусе камеры Вы когда-нибудь задумывались над тем, почему иногда сцены, созданные в программах трехмерного моделирования, выглядят неестественными? Объяснить это можно несколькими причинами — начиная от неверно выставленного освещения и заканчивая неправильным наложением текстур. В данном разделе я хочу затронуть такую тему, как глубина резкости и фокусное расстояние. Ни для кого не секрет, что, глядя на фотографию, экран телевизора или просто какие-либо предметы на улице или дома, мы не видим все одинаково четким. Это связано с особенностью строения глаза, устройством фотоаппарата и камеры. Однако, невзирая на такой очевидный факт, многие пренебрегают глубиной резкости в своих работах. Разберемся, что такое глубина резкости и фокусное расстояние применительно к сценам в программе 3ds Max. На примере данного упражнения мы рассмотрим четыре подхода к решению этой задачи.

588

Глава 11. Визуализация



Использование размытия с помощью Video Post (Видеомонтаж).



Применение фильтра Depth of Field (Глубина резкости), который относится к Rendering Effects (Эффекты визуализации).



Альтернативный метод, который я однажды использовал для выполнения одного из рекламных проектов, связанных с оптикой. Его суть состоит в том, чтобы визуализировать последовательность кадров, изменяя положение камеры в пространстве (Target (Цель) камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга.



Применение возможностей настройки объекта камеры.

Сначала необходимо создать какую-нибудь сцену для последующей работы. Постройте на плоскости колоннаду из 15 колонн (рис. 11.17).

Рис. 11.17. Окно проекции Perspective (Перспектива) со сценой урока

Установите в сцене Target Camera (Направленная камера). Для этого выполните команду CreateCamerasTarget Camera (СозданиеКамерыНаправленная камера) и в окне проекции Top (Сверху) постройте камеру, направленную на середину колоннады. ПРИМЕЧАНИЕ Сцену, подготовленную для данного задания, можно загрузить из файла focus_start. max, расположенного в папке Examples\Глава 11\Focus прилагаемого к книге DVD.

Объекты в фокусе камеры

589

По поводу создания камеры в сцене хотелось бы сделать небольшое отступление. Некоторые дизайнеры в 80 % случаев работают с перспективой, отодвигая роль камеры на задний план. Я абсолютно не согласен с таким мнением. Кроме того, что она позволяет более гибко настраивать сцену, вид из камеры получается более естественным, не говоря уже о многих других положительных сторонах ее применения. Итак, у нас есть сцена и камера. Обратите внимание, что я установил Target (Цель) камеры на колонну, находящуюся в центре (выделенную цветом), чтобы при настройках глубины резкости, где используются параметры камеры, эта колонна всегда оставалась в фокусе. Я буду настраивать глубину резкости именно по этой колонне — так проще сравнить результаты всех методов. Чтобы размыть объекты сцены при визуализации, используя Video Post (Видеомонтаж), сделайте следующее. 1.

Выполните команду RenderingVideo Post (ВизуализацияВидеомонтаж).

2.

В открывшемся окне Video Post (Видеомонтаж) щелкните на кнопке Add Scene Event (Добавить событие-сцену) .

3.

В появившемся окне Add Scene Event (Добавить событие-сцену) из раскрывающегося списка выберите вашу камеру и щелкните на кнопке OK.

4.

Щелкните на кнопке Add Image Filter Event (Добавить событие фильтрации изображения) .

5.

В области Filter Plug-In (Модули фильтров) появившегося окна Add Image Filter Event (Добавить событие фильтрации изображения) выберите строку Lens Effects Focus (Эффекты линзы, фокусировка) и щелкните на кнопке OK.

В результате левая часть окна Video Post (Видеомонтаж) примет вид, показанный на рис. 11.18. Дальнейшие действия заключаются в настройке параметров фильтра Lens Effects Focus (Эффекты линзы, фокусировка). 1.

В левой части окна Video Post (Видеомонтаж) щелкните дважды на строке Lens Effects Focus (Эффекты линзы, фокусировка).

2.

В открывшемся окне Edit Filter Event (Редактирование события фильтрации) щелкните на кнопке Setup (Настройка), чтобы открыть окно настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка).

3.

Чтобы увидеть в окне настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) вашу сцену, щелкните на кнопке VP Queue (Очередь видеомонтажа), в результате чего она изменит цвет, а затем нажмите кнопку Preview

Рис. 11.18. Фрагмент окна Video Post (Видеомонтаж)

590

Глава 11. Визуализация

(Просмотр). При этом в окно предварительного просмотра загрузится вид окна из камеры. 4.

Установите переключатель в левой части окна настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) в положение Focal Node (Центр фокусировки), что позволит выбрать объект, который будет являться центром фокусировки. При установке переключателя в положение Scene Blur (Размытие сцены) эффект размытия применяется ко всей сцене в целом, а в положение Radial Blur (Радиальное размытие) — размытие сцены происходит радиально, от центра к ее краям.

5.

Чтобы указать объект, который будет все время оставаться в фокусе, щелкните на кнопке Select (Выбор) и в появившемся окне Select Focal Object (Выбор объекта фокусировки) выберите из списка колонну, находящуюся в центре (выделенную цветом) (Column22).

6.

Измените настройки следующих параметров (в окне просмотра, которое обновляется автоматически, вы увидите сделанные изменения):

7.



Affect Alfa (Воздействовать на альфа-канал) — воздействие размытия на альфа-канал изображения при 32-битной глубине цвета;



Horiz/Vert Focal Loss (Расфокусировка по горизонтали/по вертикали) — величина размытия сцены по горизонтали и вертикали в диапазоне от 0 до 100;



Focal Range (Диапазон фокусировки) — определяет, на каком расстоянии от центра (объекта) начинается размытие;



Focal Limit (Предел расфокусировки) — расстояние, на котором происходит максимальное размытие сцены.

Щелкните на кнопке OK для подтверждения сделанных изменений.

Для визуализации сцены щелкните на кнопке Execute Sequence (Выполнить цепочку) . В открывшемся окне Execute Video Post (Выполнить видеомонтаж) настройте параметры выходного изображения и щелкните на кнопке Render (Визуализировать). На рис. 11.19 показана сцена с размытием, полученным с использованием модуля Video Post (Видеомонтаж). ПРИМЕЧАНИЕ Сцену, выполненную с помощью модуля Video Post (Видеомонтаж), можно загрузить из файла focus_v1.max, который находится в папке Examples\Глава 11\Focus прилагаемого к книге DVD.

Продолжим разбираться с глубиной резкости и фокусным расстоянием на примере второго способа. Для размытия сцены сделайте следующее. 1.

Выполните команду RenderingEffects (ВизуализацияЭффекты).

2.

В открывшемся окне Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке Add (Добавить).

Объекты в фокусе камеры

591

Рис. 11.19. Размытие сцены, выполненное в Video Post (Видеомонтаж)

3.

В появившемся окне Add Effect (Добавить эффект) выберите из списка Depth of Field (Глубина резкости) и щелкните на кнопке OK для подтверждения выбора.

После активизации фильтра станет доступным свиток 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 (Параметры фокусировки) я установил переключатель

592

Глава 11. Визуализация

в положение Use Camera (Использовать камеру) и увеличил значения параметров Horiz Focal Loss (Расфокусировка по горизонтали) и Vert Focal Loss (Расфокусировка по вертикали) до 20. На рис. 11.20 представлено изображение, получившееся у меня при визуализации.

Рис. 11.20. Сцена с использованными эффектами визуализации

ПРИМЕЧАНИЕ Сцену, выполненную с помощью Environment and Effects (Окружающая среда и эффекты), можно загрузить из файла focus_v2.max, находящегося в папке Examples\Глава 11\ Focus прилагаемого к книге DVD.

Перейдем к описанию более сложного, но более правильного с физической точки зрения способа создания размытия. Два предыдущих способа хороши своей простотой, но они не совсем верно передают эффект глубины резкости. В итоге размытие появляется там, где его не должно быть. По этой причине, когда мне понадобилось делать рекламный плакат, я стал искать альтернативу этим двум методам. Надо заметить, это было время, когда работа велась во второй версии программы 3ds Max и еще не было глубины резкости в настройках камеры, которая появилась только с выходом четвертой версии и решала аналогичные задачи на приемлемом уровне. Решение проблемы, как оказалось, лежало на поверхности: достаточно было подумать о физических свойствах и принципе работы фотоаппарата. Оно заключается в том, чтобы визуализировать последовательность кадров, изменяя положение

Объекты в фокусе камеры

593

камеры в пространстве (цель камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга. Используя ту же сцену с камерой, построим дополнительный объект — окружность. Для этого выполните команду CreateShapesCircle (СозданиеФормыОкружность). Радиус окружности должен быть небольшим (у меня он равен 5), хотя сейчас это неважно — позже все равно нужно будет подбирать его под величину размытия. После создания сплайна расположите его так, чтобы камера оказалась внутри окружности, а сам сплайн стал перпендикулярен линии от камеры к ее цели. Выстраивать с абсолютной точностью, применяя дополнительные средства выравнивания, не нужно, достаточно воспользоваться инструментами трансформации Select and Move (Выделить и переместить) и Select and Rotate (Выделить и повернуть). В итоге должно получиться изображение, как показано на рис. 11.21. Следующим шагом будет привязка камеры к сплайну. Для этого выделите камеру и выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграничение по пути). В окне проекции Front (Спереди) щелкните на окружности, выбрав ее в качестве сплайна пути. После этого камера сместится в начало сплайна.

Рис. 11.21. Окружность, выровненная относительно камеры

Щелкните в правом нижнем углу программы на кнопке Play Animation (Воспроизведение анимации) для просмотра анимации движения камеры. В окне вида из камеры вы можете проанализировать максимальное размытие, которое получится при применении этого способа. Я, просмотрев анимацию, уменьшил радиус круга до 2,5 для получения более естественного размытия. Здесь наблюдается прямая зависимость: чем больше смещение объектов в процессе выполнения анимации, тем сильнее будет их размытие в итоговой сцене. После того как вы определитесь с величиной размытия, можно приступать к визуализации. Для этого сделайте следующее. 1.

Выполните команду RenderingRender Setup (ВизуализацияНастройки визуализации).

2.

В появившемся окне Render Setup (Настройки визуализации) установите переключатель в положение Active Time Segment (Текущий промежуток времени), чтобы задействовать всю шкалу анимации.

3.

Для создания эффекта размытия достаточно 10 кадров, поэтому, если у вас шкала 100 кадров, задайте параметру Every Nth Frame (Каждый кадр под номером) значение, равное 10.

594

Глава 11. Визуализация

СОВЕТ Если вам необходимо улучшить качество выходного изображения, увеличьте количество визуализируемых кадров.

4.

В области Render Output (Результат визуализации) щелкните на кнопке Files (Файлы).

5.

В открывшемся окне Render Output File (Результирующий файл визуализации) укажите директорию на диске, куда будут сохраняться кадры, а также тип файла.

6.

Щелкните на кнопке Render (Визуализировать) для начала визуализации и сохранения последовательности кадров.

Для этого способа создания размытия вся работа в программе 3ds Max закончена. Осталось только собрать все визуализированные кадры. С этой целью я воспользовался программой Adobe Photoshop (вы же можете применить любое другое приложение для редактирования растровых изображений). После загрузки всех 10 кадров в Adobe Photoshop надо выбрать любой кадр (файл) и перенести на него изображения с девяти оставшихся. Для этого активизируйте инструмент Move (Перемещение) на панели инструментов и, удерживая нажатой клавишу Shift (что обеспечит полное совпадение слоев), перетаскивайте изображения на выбранный файл. В результате получится изображение, состоящее из 10 слоев. После этого каждому слою, исключая нижний, задайте значение параметра Opacity (Непрозрачность) равным 35 % (подбирается опытным путем). Затем сохраните все как один файл (рис. 11.22).

Рис. 11.22. Эффект глубины резкости, выполненный альтернативным способом

Объекты в фокусе камеры

595

ПРИМЕЧАНИЕ Сцену, созданную альтернативным способом, можно загрузить из файла focus_v3.max, который находится в папке Examples\Глава 11\Focus прилагаемого к книге DVD.

Если сравнить данный способ с предыдущими, то можно отметить несравненно лучший результат. В последних версиях программы 3ds Max добиться такого же результата можно значительно более простым способом. Все то, что с таким трудом мы проделывали в предыдущем методе, нашло свое отражение в свитке Depth of Field Parameters (Параметры глубины резкости) настроек камеры. Рассмотрим подробнее эти возможности. Обратимся к области Multi-Pass Effect (Многопроходный эффект) свитка Parameters (Параметры) настроек камеры. Здесь нужно установить флажок Enable (Использовать) и выбрать в раскрывающемся списке строку Depth of Field (Глубина резкости) или Motion Blur (Размытие движения), чтобы активизировать соответствующий процесс. Если в этой области щелкнуть на кнопке Preview (Просмотр), то можно увидеть результат размытия в окне проекции. В области Focal Depth (Глубина фокусировки) свитка Depth of Field Parameters (Параметры глубины резкости) настроек камеры можно установить флажок Use Target Distance (Использовать фокусное расстояние). В таком случае цель камеры будет использоваться как точка, вокруг которой происходит размытие сцены. Если снять флажок, то станет доступным для редактирования параметр Focal Depth (Глубина фокусировки). Область Sampling (Экземпляры) содержит следующие настройки: 

Display Passes (Показать проходы) — позволяет показать проходы1 в окне проекции;



Use Original Location (Использование первичного положения) — определяет, что проходы будут начинаться с первоначального положения камеры;



Total Passes (Общее количество проходов) — указывает количество проходов для генерации эффекта;



Sample Radius (Радиус выборки) — сдвигает сцену на указанное значение при создании размытия (увеличение этого значения ведет к усилению эффекта);



Sample Bias (Смещение выборки) — смещает действие эффекта (размытия) к началу или к концу проходов (по умолчанию находится посередине).

1

Чтобы визуализировать один кадр, визуализатор выполняет серию проходов, то есть промежуточных визуализаций со сдвигом камеры по кругу, «складывая» их в одном кадре (полупрозрачные изображения наслаиваются друг на друга, и там, где изображения не совпадают, появляется размытие).

596

Глава 11. Визуализация

В области Pass Blending (Смешивание проходов) можно управлять параметрами сглаживания мультипроходной визуализации (в окне проекции результата сглаживания не видно): 

Normalize Weights (Нормализовать удельный вес) — уменьшает артефакты при визуализации, увеличивая тем самым степень размытия;



Dither Strength (Сила вибрации) — управляет количеством полутонов в мультипроходах;



Tile Size (Повторяемость размера) — задает размер перекрытия слоев, используемых в передаче полутонов.

Я подробно остановился на параметрах свитка Depth of Field Parameters (Параметры глубины резкости), чтобы вы могли осознанно настраивать размытие сцены, используя возможности программы. Свиток Motion Blur Parameters (Параметры размытия движения) почти полностью повторяет вышеперечисленные настройки. На рис. 11.23 представлен результат визуализации, выполненной с помощью настроек в свитке Depth of Field Parameters (Параметры глубины резкости) для присутствующей в сцене камеры.

Рис. 11.23. Сцена, визуализированная при использовании параметров камеры Depth of Field (Глубина резкости)

Работаем с Video Post (Видеомонтаж)

597

ПРИМЕЧАНИЕ Сцену, использующую настройки свитка Depth of Field Parameters (Параметры глубины резкости) направленной камеры, можно загрузить из файла focus_v4.max, расположенного в папке Examples\Глава 11\Focus прилагаемого к книге DVD.

Таким образом, улучшить визуализированное изображение сцены можно многими способами, но не забывайте о глубине резкости, особенно если вы моделируете большие пространства или нужно сконцентрировать внимание зрителя на одном предмете в сцене.

Работаем с Video Post (Видеомонтаж) Словосочетание Video Post является производным от термина post-production — завершающий этап создания фильма, когда происходит окончательная сборка и доводка отснятого материала, наложение спецэффектов, создание переходов. Модуль Video Post (Видеомонтаж) программы 3ds Max не претендует на лидерство среди таких программ постобработки, как Adobe After Effect или Combustion производства Autodesk. Задачи Video Post (Видеомонтаж) значительно скромнее. Тем не менее с его помощью можно быстро и эффективно создавать переходы, эффекты линзы, звездные поля, собирать послойную анимацию, а также решать другие задачи. Рассмотрим простой пример создания анимации с использованием переходов для трех камер (их количество может быть любым). Для работы вам понадобится несложная сцена — например, примитив Teapot (Чайник), размещенный на Plane (Плоскость) (рис. 11.24), а также три направленные камеры. Их расположение в сцене может быть произвольным. После построения объектов в сцене Рис. 11.24. Сцена, состоящая из примитивов необходимо анимировать положение Teapot (Чайник) и Plane (Плоскость) камер в пространстве. Это нужно для последующего построения переходов между анимированными камерами в модуле Video Post (Видеомонтаж). Для анимации камер выполните следующие действия. 1.

В окне проекции Top (Сверху) выделите одну из трех камер.

2.

Передвиньте ползунок таймера анимации в конец шкалы.

3.

Щелкните на кнопке Auto Key (Автоключ) для активизации автоматического создания ключевых кадров.

598

Глава 11. Визуализация

4.

С помощью инструмента Select and Move (Выделить и переместить) передвиньте камеру в пределах видимости чайника.

5.

Выделите последовательно вторую и третью камеры и сделайте то же самое по отношению к ним.

6.

Щелкните на кнопке Auto Key (Автоключ) для остановки создания ключевых кадров анимации.

Дальнейшие действия будут проводиться в окне Video Post (Видеомонтаж), для вызова которого выполните команду RenderingVideo Post (ВизуализацияВидеомонтаж). Окно Video Post (Видеомонтаж) разделено на две части: слева — область Queue (Очередь), справа — область Edit (Редактирование). В области очереди событий видеомонтажа (Queue (Область)) формируется список элементов анимации. События могут выполняться двумя способами. 

Последовательно, когда события выполняются по очереди сверху вниз. Обычно это событие-сцена, событие-фильтр и событие вывода изображения.



Иерархически. При таком способе последовательность выполнения задается иерархией событий очереди — от дочерних к родительским.

Окно редактирования позволяет управлять шкалой времени для каждого события. Любая шкала имеет на концах маркеры, передвигая которые можно изменять диапазон времени. В верхней части окна расположена панель инструментов. Перейдем к выполнению задания. Добавьте в очередь события-сцены. Для этого сделайте следующее.

Рис. 11.25. Окно Video Post (Видеомонтаж) после добавления событий-сцен

1.

Щелкните на кнопке Add Scene Event (Добавить событие-сцену) , расположенной на панели инструментов.

2.

В появившемся окне Add Scene Event (Добавить событие-сцену) выберите из раскрывающегося списка в области View (Проекция) окно проекции вида из первой камеры.

3.

Щелкните на кнопке OK для подтверждения выбора.

4.

Повторите те же действия для двух других камер (рис. 11.25).

После добавления в очередь видов из трех камер они будут занимать временной интервал, определенный по умолчанию (обычно 100 кадров), от начала и до конца. Нам необходимо указать временные диапазоны для визуализации видов из камеры.

599

Работаем с Video Post (Видеомонтаж)

В зависимости от того, как изменяется положение камер в пространстве, выделите последовательность воспроизведения анимации для каждой камеры с таким расчетом, что две соседние в последовательности камеры должны иметь по 10–15 общих кадров. Для изменения временного диапазона камеры щелкните на ее концевом маркере и перетащите в нужный кадр, контролируя положение маркера в строке состояния в нижней части окна. Проанализировав сцену, я пришел к выводу, что наилучшего композиционного эффекта можно достигнуть, используя анимацию первой камеры начиная с 0 по 40 кадр, второй — с 25 по 80 и третьей — с 65 по 100 (рис. 11.26). Осталось добавить в окно очереди событий переходы между камерами и событие вывода изображения, и на этом с подготовкой к визуализации будет закончено. Для этого выполните следующее.

Рис. 11.26. Окно Video Post (Видеомонтаж) после редактирования временных диапазонов событий сцены

1.

Если в очереди есть выделенные события, щелкните в пустом месте поля окна очереди событий для снятия выделения (иначе событие вывода изображения установится только на выделенное событие сцены).

2.

Нажмите кнопку Add Image Output Event (Добавить событие вывода изображе. ния)

3.

В появившемся окне Add Image Output Event (Добавить событие вывода изображения) щелкните на кнопке Files (Файлы) для открытия окна выбора типа файла и директории для сохранения.

4.

Укажите в качестве выходного расширения файла AVI (видеофайл), укажите его имя, выберите директорию для сохранения и щелкните на кнопке OK для подтверждения выбора.

5.

Удерживая клавишу Ctrl, щелкните в окне очереди событий на первой и второй камерах для их выделения.

6.

Щелкните на кнопке Add Image Layer Event (Добавить событие композиции изображений) .

7.

В появившемся окне Add Image Layer Event (Добавить событие композиции изображений) выберите из раскрывающегося списка событий строку Cross Fade Transition (Микширование наплывом).

8.

Щелкните на кнопке OK для подтверждения выбора.

9.

В области Queue (Очередь) выделите Cross Fade Transition (Микширование наплывом) и третью камеру.

10.

Повторите вышеописанные действия по добавлению перехода Add Image Layer Event (Добавить событие композиции изображений) для второй и третьей камер.

600 11.

Глава 11. Визуализация

Отредактируйте временной диапазон для двух событий композиции изображений так, чтобы переход между первой и второй камерой происходил с 25 по 40 кадр, а между второй и третьей — с 65 по 80 (рис. 11.27).

Рис. 11.27. Окончательный вид окна Video Post (Видеомонтаж)

После этого можно запустить процесс визуализации, для чего щелкните на кнопке Execute Sequence (Выполнить цепочку) , расположенной на панели инструментов окна Video Post (Видеомонтаж). В появившемся окне Execute Video Post (Выполнить видеомонтаж) установите желаемый диапазон визуализации и размер выходного изображения, после чего щелкните на кнопке Render (Визуализировать) для начала визуализации. ПРИМЕЧАНИЕ На прилагаемом к книге DVD в папке Examples\Глава 11\Videopost находится готовая сцена videopost.max. В папке Video\Глава 11 располагается видеоролик videopost.avi.

В данном разделе мы рассмотрели лишь малую часть возможностей модуля Video Post (Видеомонтаж). С его помощью можно создавать великолепные эффекты и переходы, готовить образы к анимации и т. д. Умелое применение возможностей модуля Video Post (Видеомонтаж) в значительной мере облегчит ваш труд и улучшит качество создаваемых сцен.

Часть 3.

Усложненное моделирование Глава 12. Моделирование автомобиля Глава 13. Текстурирование автомобиля Глава 14. Моделирование головы

Для выполнения заданий, содержащихся в данной части книги, вам необходимо обладать запасом знаний начального уровня, которые вы приобрели, изучая разделы предыдущих частей. Задания глав третьей части книги сложны для изучения, но вместе с тем наиболее интересны, например, по моделированию и конечному результату. В разделах этой части рассмотрены разработка и текстурирование модели автомобиля, а также два способа моделирования головы со средним уровнем детализации.

Глава 12.

Моделирование автомобиля • Виртуальная студия — начало всех начал • Создание автомобильного диска с помощью NURBS-моделирования • Моделирование колеса автомобиля с помощью полигонов • Моделируем BMW

Моделирование автомобиля является одной из самых интересных задач, которые могут стоять перед пользователем программы 3ds Max. В то же время эта задача достаточно сложна для неискушенных в моделировании людей, поэтому к изучению упражнений данной главы рекомендуется приступать, предварительно ознакомившись с главой, посвященной моделированию более простых объектов. Моделирование автомобиля описано максимально подробно и сведено к выполнению несложных операций, однако конечный результат зависит от того, насколько развито у пользователя чувство объема и пространства. Ему можно научиться, лишь выполняя реальные работы. Упражнения этой главы построены так, что в результате их последовательного выполнения вы смоделируете автомобиль BMW пятой серии.

Виртуальная студия — начало всех начал Без преувеличения можно сказать, что с виртуальной студии начинаются многие глобальные проекты, а уж о моделировании техники и персонажей говорить не приходится. Мне известно как минимум три способа создания виртуальной студии для последующего моделирования объектов сложной геометрической формы. Попробуем разобраться в достоинствах и недостатках каждого из этих способов. Все начинается с подготовки рисунка для виртуальной студии. Их можно найти как в Интернете, так и в печатных изданиях. Я использовал каталог баварской фирмы BMW. Такой способ имеет преимущество перед поиском изображения в Интернете: можно отсканировать рисунок с достаточно высоким разрешением. Перед использованием в редакторе трехмерной графики изображение необходимо отредактировать. Этот процесс одинаков для всех изображений независимо от того, каким образом в дальнейшем они будут применяться. Для моделирования автомобиля нам понадобится как минимум три вида: сбоку, спереди и сзади. Конечно, желательно также иметь и вид сверху, но в крайнем случае можно обойтись и без него. В рассмотренном далее примере использованы материалы, которые я собрал для моделирования автомобиля марки BMW. Вы можете работать с любым другим изображением, главное — принцип их подготовки. Для редактирования сканированных изображений нам понадобится любая программа для работы с растровыми изображениями, например Adobe Photoshop. На рис. 12.1 представлено изображение автомобиля марки BMW пятой серии, с которым я буду работать. Первое, что нужно сделать, — выровнять изображения (обычно в одном файле представлено несколько видов машины) по горизонтали и вертикали. Затем следует сделать фон изображения светло-серым. Это нужно для того, чтобы при последующей работе в 3ds Max с подобъектами белого цвета они не сливались с фоном изображения. После этого нужно расставить направляющие так, чтобы они прошли по габаритам автомобиля — это в дальнейшем поможет разрезать изображение на нужные части. Чтобы затемнить фон изображения и расставить направляющие, сделайте следующее.

605

Виртуальная студия — начало всех начал

Рис. 12.1. Исходное изображение автомобиля BMW в нескольких видах

1.

Выполните команду ImageAdjustmentsBrightness/Contrast (Изображение КорректировкаЯркость/контраст), в результате чего откроется окно диалога Brightness/Contrast (Яркость/контраст).

2.

Параметру Brightness (Яркость) задайте значение –40 (рис. 12.2).

3.

Если в окне программы Adobe Photoshop отсутствуют линейки в верхней и левой частях окна, то откройте их с помощью сочетания клавиш Ctrl+R.

4.

Для создания горизонтальной направляющей щелкните кнопкой мыши на верхней линейке и, удерживая кнопку нажатой, перетащите направляющую на место изображения, обозначающее габариты автомобиля.

5.

Рис. 12.2. Окно Brightness/Contrast (Яркость/контраст) программы Adobe Photoshop

Для создания вертикальной направляющей нужно щелкнуть на линейке в левой части окна и перетащить указатель на изображение.

Положение направляющих показано на рис. 12.3. Теперь нужно проверить размеры видов спереди и сзади (они должны быть равны по ширине и высоте). Сделать это довольно просто — достаточно с помощью инструмента выделения , расположенного на палитре инструментов, обвести прямоугольник, образованный направляющими, ограничивающими вид автомобиля спереди, и посмотреть размеры в окне Info (Информация) (рис. 12.4), затем то же сделать с видом машины сзади.

606

Глава 12. Моделирование автомобиля

Рис. 12.3. Положение направляющих на изображении

Если размеры различаются, то нужно их подкорректировать. То же самое делается по отношению к видам сбоку и сверху (такого рода сравнение и корректировку можно сделать, используя прозрачные слои).

Рис. 12.4. Окно Info (Информация) с размерами выделенного фрагмента

Далее все очень просто — изображение необходимо разрезать на части и сохранить на диске. Для этой цели вы можете воспользоваться инструментом Crop (Обрезка). На рис. 12.5 показан результат выполнения описанных выше операций.

Конечно, эту работу можно проделать в других программах другим способом. Главное, чтобы в итоге вы получили отдельные изображения проекций автомобиля, сопоставимых по размерам.

ПРИМЕЧАНИЕ Почти все, изложенное выше, можно выполнить и в окне Material Editor (Редактор материалов) программы 3ds Max: загрузить изображение в качестве карты Diffuse Color (Цвет рассеивания), затем, используя область Cropping/Placement (Обрезка/размещение) настроек карты, вырезать только ту часть изображения, которая нужна для наложения на плоскость в качестве текстуры.

Не забывайте, что при сохранении изображений предпочтительно давать им значимые имена, чтобы потом не путаться. Изображения такого рода я сохраняю в формате PNG, так как он обеспечивает максимальное качество при минимальном размере.

Виртуальная студия — начало всех начал

607

Рис. 12.5. Проекции автомобиля, отредактированные в программе Adobe Photoshop

На этом работу с программой редактирования растровой графики можно считать законченной. Переходим к 3ds Max. ПРИМЕЧАНИЕ При желании вы можете воспользоваться материалами, находящимися на прилагаемом DVD в папке Examples\Глава 12\Car blueprint.

Первый способ построения студии Первая и самая простая виртуальная студия — это когда в качестве фонового изображения в окнах проекций используются соответствующие проекции автомобиля следующим образом. 1.

Выполните команду ViewsViewport BackgroundViewport Background (ВидФон окна проекцииФон окна проекции), в результате чего откроется окно диалога Viewport Background (Фон окна проекции).

2.

В области Background Source (Источник фона) щелкните на кнопке Files (Файлы), появится окно Select Background Image (Выбор изображения фона).

3.

Укажите путь к файлу, который будет служить изображением фона (например, вид автомобиля сверху).

4.

Установите переключатель Aspect Ratio (Пропорции) в положение Match Bitmap (По изображению).

5.

Установите флажки Display Background (Показать фон) и Lock Zoom/Pan (Согласовать масштаб/прокрутку).

608

Глава 12. Моделирование автомобиля

6.

В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) значение Top (Сверху), то есть окно вида сверху.

7.

Закончив настройку, щелкните на кнопке OK.

8.

Повторите вышеописанные действия для окна проекции фронтального и бокового видов (рис. 12.6).

Рис. 12.6. Виртуальная студия, размещенная в окнах проекций

Чтобы выровнять изображения в окнах проекций относительно друг друга, необходимо снять флажок Lock Zoom/Pan (Согласовать масштаб/прокрутку) в окне Viewport Background (Фон окна проекции) для окна проекции Front (Спереди) (в нашем случае там оно больше чем нужно) и изменить масштаб изображения. СОВЕТ Управлять привязкой объекта к фоновому изображению проще всего, используя сочетания клавиш — по умолчанию Ctrl+Alt+B.

Достоинством этого способа является то, что в сцене нет дополнительной геометрии, а также то, что такую студию относительно легко создать. Пожалуй, на этом все достоинства заканчиваются. Недостатков больше. Кроме того, что изображения после их загрузки необходимо приводить к общим размерам, в процессе работы они деформируются или смещаются. К тому же в окна можно загрузить только три изображения (окно перспективы не считается — оно необходимо для работы с геометрией и общего контроля), а изображений, которые могут быть использованы, — шесть.

Виртуальная студия — начало всех начал

609

Таким образом, это не самый лучший метод, поэтому не рекомендую его для серьезной работы.

Второй способ построения студии Второй способ создания виртуальной студии — это построение пересекающихся (крестообразный способ) (рис. 12.7, вверху) или примыкающих друг к другу (Г-образный способ) (рис. 12.7, внизу) объектов Plane (Плоскость). Эти два способа очень похожи, поэтому я выделил их в одну категорию.

Рис. 12.7. Два варианта виртуальной студии с использованием плоскостей: крестообразный (вверху) и Г-образный (внизу)

Как видите, здесь присутствуют примитивы Plane (Плоскость), размеры которых соответствуют изображениям (или реальным размерам объекта). Создадим реальную студию на основе подготовленных изображений для нашего автомобиля. Сначала обратимся к размерам автомобиля: они присутствуют на чертеже. Это поможет нам при моделировании (всегда проще оперировать реальными размерами). Итак, высота машины — 1435 мм, ширина — 1981 мм, а длина — 4775 мм. Исходя из этих размеров, построим три примитива Plane (Плоскость) следующим образом. 1.

Щелкните в окне проекции Front (Спереди) для активизации окна.

2.

Выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость), в результате чего в правой части окна программы откроется вкладка Create (Создание) с активной панелью создания плоскости.

610

Рис. 12.8. Свиток Keyboard Entry (Ввод с клавиатуры) с размерами плоскости для фронтального вида

Глава 12. Моделирование автомобиля

3.

В свитке Keyboard Entry (Ввод с клавиатуры) задайте параметру Length (Длина) значение, равное 1435, а Width (Ширина) — 1981 (рис. 12.8).

4.

Щелкните на кнопке Create (Создать) для завершения построения плоскости.

5.

Чтобы построить вторую плоскость, щелкните в окне проекции Top (Сверху) для его активизации.

6.

В свитке Keyboard Entry (Ввод с клавиатуры) параметру Length (Длина) укажите значение, равное 4775, а Width (Ширина) — 1981.

7.

Щелкните на кнопке Create (Создать) для завершения построения второй плоскости.

8.

Выделив окно проекции Left (Cлева), в свитке Keyboard Entry (Ввод с клавиатуры) параметру Length (Длина) укажите значение, равное 1435, а Width (Ширина) — 4775.

9.

Щелкните на кнопке Create (Создать) для завершения построения третьей плоскости.

В результате вы получите пересекающиеся в начале координат плоскости, составляющие геометрию виртуальной студии (см. рис. 12.7, вверху). СОВЕТ Построение плоскостей в начале координат в дальнейшем облегчит вам создание зеркального отображения деталей автомобиля.

Сейчас, когда построена геометрия, можно приступить к присвоению плоскостям текстур. Выполните следующие действия. 1.

Откройте окно Material Editor (Редактор материалов) и выберите любую свободную ячейку образца.

2.

Щелкните на кнопке None (Отсутствует) рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).

3.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Bitmap (Растровое изображение).

4.

В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу изображения автомобиля сверху и щелкните на кнопке Открыть для завершения выбора файла.

5.

Нажмите кнопку Go to Parent (Вернуться к исходному).

6.

В поле области Self-Illumination (Собственное свечение) свитка материала Blinn Basic Parameters (Базовые параметры раскраски по Блинну) укажите значение, равное 100, что позволит более четко отобразить текстуру на плоскости (рис. 12.9).

611

Виртуальная студия — начало всех начал

7.

Щелкните на материале кнопкой мыши и, удерживая ее нажатой, перетащите на плоскость в окне проекции, предназначенную для текстуры вида автомобиля сверху. После того как вы отпустите кнопку мыши, плоскости будет присвоен ранее созданный материал.

8.

На панели инструментов окна Material Editor (Редактор материалов) щелкните на кнопке Show Map in Viewport (Показать карту текстуры в окне проекции) , чтобы увидеть текстуру, присвоенную плоскости.

Рис. 12.9. Свиток материала Blinn Basic Parameters (Базовые параметры раскраски по Блинну) с настройками для материала виртуальной студии

Вполне возможно, что после присвоения плоскости созданного вами материала текстура окажется повернутой относительно оси плоскости (рис. 12.10).

Рис. 12.10. Плоскость с развернутым изображением автомобиля на виде сверху

Чтобы исправить положение текстуры на плоскости, в свитке Maps (Карты текстур) окна Material Editor (Редактор материалов) щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания), откроются поля настроек карты цвета рассеивания. В свитке Coordinates (Координаты) введите значение Angle (Угол) поля поворота по оси W, равное 90 (у вас это может быть ось V или U) (рис. 12.11). Для присвоения материала двум другим плоскостям выполните аналогичные действия, с той разницей, что для каждой плоскости должна выбираться своя растровая текстура и размещение ее должно контролироваться сообразно положению

612

Глава 12. Моделирование автомобиля

остальных. На видах сбоку и сверху передняя часть автомобиля должна быть направлена в одну сторону. Для построения плоскости вида автомобиля сзади выполните следующие действия.

Рис. 12.11. Свиток Coordinates (Координаты) со значением угла поворота по оси W, равным 90

3.

1.

Удерживая нажатой клавишу Shift, щелкните на плоскости с текстурной картой автомобиля вида спереди и сдвиньте ее на небольшое расстояние по оси X. В результате откроется окно Clone Options (Параметры клонирования).

2.

Выберите в качестве способа копирования Copy (Независимая копия объекта) и щелкните на кнопке OK.

Создайте новый материал с текстурной картой автомобиля вида сзади и присвойте его вновь созданной плоскости (рис. 12.12).

Рис. 12.12. Виртуальная студия, построенная из пересекающихся плоскостей

Для окончания работы с виртуальной студией выполните следующие действия. 1.

Щелкните правой кнопкой мыши на имени окна проекции Perspective (Перспектива). Появится меню окна проекции. Щелкните в нем на пункте Configure (Конфигурировать) — появится окно Viewport Configuration (Конфигурирование окна проекции).

2.

В области Rendering Options (Параметры визуализации) установите флажок Force 2-Sided (Изображать обе стороны) и щелкните на кнопке OK.

Виртуальная студия — начало всех начал

613

3.

Выделите все три плоскости. В окне проекции щелкните вне объектов сцены и, удерживая нажатой кнопку мыши, перетащите указатель по диагонали через объекты, создавая таким образом область выделения.

4.

Щелкните на выделении правой кнопкой мыши. Появится контекстное меню, в котором выберите пункт Object Properties (Свойства объекта).

5.

В области Interactivity (Интерактивность) открывшегося окна Object Properties (Свойства объекта) установите флажок Freeze (Фиксировать), а в области Display Properties (Свойства отображения) снимите флажок Show Frozen in Gray (Показывать зафиксированное серым).

6.

Щелкните на кнопке OK для подтверждения сделанных изменений.

Что дают эти действия? Во-первых, вы установили возможность отображения двух сторон для плоскости. В противном случае при повороте плоскости в окне проекции вы не увидите обратной стороны, которая по умолчанию не отображается. Во-вторых, вы заблокировали виртуальную студию от случайного смещения во время работы. ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию студии, обратитесь к файлу упражнения studio_v2, расположенному в папке Examples\Глава 12\Studio прилагаемого к книге DVD.

Такая виртуальная студия, несомненно, лучше предыдущей. С ней проще работать, ее легко создать. Хотя с крестообразной постановкой плоскостей работать сложнее, чем с Г-образной, так как плоскости пересекаются в середине моделируемого объекта и зачастую закрывают половину подобъектов (вершины, ребра и т. д.). В свою очередь, Г-образное расположение не позволяет работать сразу со всеми видами. В данном случае и приходит на помощь третий способ построения студии. Сначала этот способ появился у меня как модификация второго способа, но потом, в процессе работы, он сформировался в самостоятельный и, на мой взгляд, оптимальный для такого рода моделирования. Рассмотрим его подробнее. Для разработки студии создайте примитив Box (Параллелепипед), длина, ширина и высота которого будут соответствовать размерам вашего объекта. 1.

Выполните команду CreateStandard PrimitivesBox (СозданиеПростые примитивыПараллелепипед), в результате чего в правой части окна программы откроется вкладка Create (Создание) с активной панелью создания параллелепипеда.

2.

В свитке Keyboard Entry (Ввод с клавиатуры) задайте параметрам следующие значения: Length (Длина) — 4775, Width (Ширина) — 1981, Height (Высота) — 1435.

3.

Щелкните на кнопке Create (Создание) для завершения построения параллелепипеда.

4.

Добавьте в стек модификатор Normal (Нормаль), для чего выполните команду ModifiersMesh EditingNormal Modifer (МодификаторыРедактирование

614

Глава 12. Моделирование автомобиля

поверхностиНормаль). Установите в его настройках флажок Flip Normals (Обратить нормали), в результате чего будет построена геометрия студии (рис. 12.13).

Рис. 12.13. Параметрический объект параллелепипед с перевернутыми нормалями

ПРИМЕЧАНИЕ Если при установке флажка Flip Normals (Обратить нормали) вы не видите внутренних полигонов параллелепипеда, выполните следующие действия: в свитке Display Properties (Свойства отображения) вкладки Display (Отображение) командной панели установите флажок Backface Cull (Выбрать невидимую поверхность).

Не лишним будет после построения параллелепипеда заблокировать его от случайного смещения (как это делается, рассмотрено выше на примере второго варианта студии). Теперь можно переходить к наложению текстур на плоскости параллелепипеда. Для этого сделайте следующее. 1.

Откройте окно Material Editor (Редактор материалов) и выберите любую свободную ячейку образца.

2.

Щелкните на кнопке Standard (Стандартный). В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Multi/Sub-Object (Многокомпонентный). Щелкните на кнопке OK для подтверждения выбора.

3.

В свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала) нажмите кнопку Set Number (Установить количество) и задайте количество материалов равным количеству плоскостей параллелепипеда, то есть 6.

615

Виртуальная студия — начало всех начал

4.

Назначьте материалам различные цвета, чтобы увидеть, какой плоскости будет соответствовать тот или иной материал (рис. 12.14).

5.

Для присвоения материала параллелепипеду перетащите образец материала из ячейки на объект в окне проекции.

В окне проекции стороны параллелепипеда окрасятся в цвета, соответствующие ранее созданному материалу. Все это делалось только с одной целью — идентифицировать стороны параллелепипеда, чтобы знать, какой стороне какой материал соответствует. Далее мы будем работать с окном Asset Browser (Окно просмотра ресурсов), для вызова которого перейдите на вкладку Utilities (Утилиты) командной панели и щелкните на кнопке Asset Browser (Окно просмотра ресурсов).

Рис. 12.14. Свиток Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного материала)

В левой части окна Asset Browser (Окно просмотра ресурсов) укажите путь к файлам видов автомобиля. В правой части появятся значки с изображением этих видов (рис. 12.15).

Рис. 12.15. Окно Asset Browser (Окно просмотра ресурсов)

Сейчас вам пригодятся разноцветные материалы, которые создавались ранее, чтобы знать, какую текстуру на какую сторону куба накладывать. Делается это просто: нужно мышью перетащить текстуру из окна Asset Browser (Окно просмотра ресурсов) на соответствующую кнопку материала Multi/Sub-Object (Многокомпонентный) в свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпонентного

616

Глава 12. Моделирование автомобиля

материала) окна Material Editor (Редактор материалов). Например, если у вас нижняя часть параллелепипеда зеленого цвета, то и текстура вида сверху предназначается для материала с зеленым цветом. Конечно, можно накладывать текстуры и традиционным способом — непосредственно из окна Material Editor (Редактор материалов), но мне кажется, так проще. Если после присвоения материалу текстур вы не видите их на параллелепипеде в окнах проекций, то щелкните на кнопке Show Map in Viewport (Отобразить карту в окне проекции) в настройках составляющих материала Multi/Sub-Object (Многокомпонентный). После этого внимательно оцените расположение текстур на параллелепипеде — скорее всего, не все текстурные карты будут размещены на плоскостях так, как нам необходимо. У меня некорректно отобразились вид сверху и одна сторона (рис. 12.16).

Рис. 12.16. Виртуальная студия с присвоенными текстурными картами по умолчанию

Это легко исправить — достаточно изменить координаты наложения текстуры. Как это сделать, рассматривалось выше на примере второго способа построения студии. Напомню лишь, что это делается в свитке Coordinates (Координаты) с помощью параметра Angle (Угол). У меня для текстуры вида сбоку понадобилось изменить величину угла V на 180, а для вида сверху — W на 90 (рис. 12.17). Этот вариант, на мой взгляд, лучший из тех, которые мы рассмотрели. У него нет явных недостатков, с ним легко работать, и такая студия максимально удобна для моделирования. Наконец, последняя деталь в создании студии, но далеко не последняя по значимости. Чтобы текстурные карты в окнах проекций выглядели с максимальным качеством, нужно изменить настройки отображения в окнах проекций. Для этого сделайте следующее.

Создание автомобильного диска с помощью NURBS-моделирования

617

Рис. 12.17. Окончательный вид виртуальной студии

1.

Выполните команду CustomizePreferences (НастройкаПараметры).

2.

В открывшемся окне Preference Settings (Параметры установок) перейдите на вкладку Viewports (Окна проекций), щелкните на кнопке Configure Driver (Настроить драйвер) (в моем случае это OpenGL), после чего откроется окно диалога Configure (Конфигурировать).

3.

Установите флажки Match Bitmap Size as Closely as Possible (По изображению насколько возможно точно) (рис. 12.18).

На этом упражнение по созданию виртуальной студии можно считать законченным. ПРИМЕЧАНИЕ На прилагаемом DVD в папке Examples\ Глава 12\Studio находится описанный вариант виртуальной студии studio_v3.max.

Рис. 12.18. Параметры настройки драйвера отображения

Создание автомобильного диска с помощью NURBS-моделирования Работать в 3ds Max, используя технологию NURBS, непросто. Не потому, что это сложная для освоения часть программы, — просто не без оснований считается, что

618

Глава 12. Моделирование автомобиля

3ds Max не совсем корректно работает с данной технологией. Должен заметить, что некоторые объекты все же легче и быстрее смоделировать именно так, нежели с помощью сплайнов, сеток или полигонов, причем выглядеть при визуализации они будут ничуть не хуже, а порой даже лучше. Как обычно, для работы вам понадобится фотография, карандашный набросок или воображаемая модель объекта, который предстоит моделировать. Прежде чем начинать моделирование, вы должны представлять себе то, что должно получиться в конце работы. В настоящем задании мы будем моделировать диск автомобиля Koenigsegg CC (рис. 12.19). Моделировать данный диск с помощью сплайнов или полигонов достаточно затруднительно, а используя NURBS можно построить его без особого труда. Форма диска сама подсказывает путь, по которому лучше идти. Можно в основу положить объект, сделанный с помощью модификатора вращения, а затем прорезать в нем отверстия. Пользователям, знакомым с основами моделирования, покажется логичным построить кривую формы вращения традиционным способом с помощью сплайна, а затем преобразовать его в NURBS-кривую. Не торопитесь так поступать. За этим, казалось бы, правильным решением могут скрываться «подводные камни», которые нужно научиться обходить для успешной работы. На рис. 12.20 представлены три NURBS-кривые, выполненные различными способами и имеющие в основе построения шесть точек с одинаковыми координатами.

Рис. 12.19. Фотография автомобильного диска, предназначенного для моделирования

Рис. 12.20. Три NURBS-кривые, выполненные различными способами

Первая кривая была создана с помощью стандартного метода построения сплайнов. Чтобы сделать такую кривую, выполните команду CreateShapesLine (СозданиеФормыЛиния), а затем преобразуйте ее в NURBS-кривую, щелкнув правой кнопкой мыши на сплайне и выбрав в контекстном меню Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS). В результате вы получите NURBS-кривую, имеющую избыточное количество контрольных точек. Кроме того, кривая состоит из отдельных, ограниченных фиолетовыми точками, отрезков. Они образовались в местах расположения угловых вершин (типа Corner (Угол)).

Создание автомобильного диска с помощью NURBS-моделирования

619

Если вы сейчас попробуете применить к этой кривой команду Create Lathe Surface (Создать поверхность вращением) из области Surfaces (Поверхности) плавающей панели NURBS, то не сможете этого сделать, так как вращение будет применяться к отдельным отрезкам, а не к кривой в целом. Отсюда вытекает первое правило: если сплайн строится для последующего преобразования в NURBS, он не должен содержать угловых точек. Вторая и третья кривые были созданы с помощью команд CreateNURBSPoint Curve (СоздатьNURBSТочечная кривая) и CreateNURBSCV Curve (Создать NURBSCV-кривая) соответственно. В этом случае получаются две кривые, в основу которых положены разные способы интерполяции. Предпочтительнее строить CV Curve (CV-кривая), так как она получается более сглаженной. Можно использовать любой способ, только не забывайте, что не стоит применять угловые точки. Кроме использования NURBS-кривых для создания объекта методом вращения, можно строить его обычным способом, применяя модификатор Lathe (Вращение вокруг оси) с последующим преобразованием в NURBS. Именно этим способом начните строить диск. Для этого сделайте следующее. 1.

Выполните команду CreateShapesLine (СозданиеФормыЛиния).

2.

В окне проекции Top (Сверху) постройте кривую, которая будет являться формой вращения (рис. 12.21).

3.

Примените к сплайну модификатор создания формы вращением: выделите кривую и выполните команду ModifiersPatch/Spline EditingLathe (МодификаторыРедактирование патчей/сплайновВращение).

4.

В области Align (Выравнивание) свитка Parameters (Параметры) настроек модификатора щелкните на кнопке Min (Минимум).

5.

Переключатель Output (Результат) установите в положение NURBS.

6.

При необходимости установите флажок Flip Normals (Обратить нормали).

У вас получится объект общей формы диска (рис. 12.22).

Рис. 12.21. Кривая формы вращения для построения автомобильного диска

Рис. 12.22. Заготовка для автомобильного диска, полученная методом вращения сплайна формы

620

Глава 12. Моделирование автомобиля

При необходимости подкорректируйте геометрию. Выберите в стеке модификаторов строку Line (Линия) и уточните местоположение точек или сегментов кривой в пространстве. После того как основная геометрия выверена, можно приступать к построению окружности, которая в дальнейшем послужит формой для вырезания отверстий в диске. Для этого сделайте следующее. 1.

Выполните команду CreateShapesCircle (СозданиеФормыОкружность) и постройте окружность в окне проекции Front (Спереди) перед диском (проконтролируйте результат в окне проекции Top (Сверху)).

2.

Преобразуйте окружность в Editable Spline (Редактируемый сплайн), для чего щелкните на ней правой кнопкой мыши и в появившемся контекстном меню выберите Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн).

3.

Выделите нижнюю вершину окружности и передвиньте ее немного вниз (рис. 12.23).

Дальнейшее построение будет связано с созданием копий окружности. Чтобы сделать копии окружности и расположить их внутри диска по кругу, необходимо переместить в его центр точку вращения сплайна. Для этого выполните следующее. 1.

Выделите окружность и перейдите на вкладку Hierarchy (Иерархия) мандной панели.

2.

В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате чего появится возможность редактировать положение опорной точки в пространстве.

3.

Переместите опорную точку так, чтобы она заняла положение в центре диска (рис. 12.24).

4.

Еще раз щелкните на кнопке Affect Pivot Only (Только опора) для отмены режима редактирования опорной точки.

Рис. 12.23. Положение и форма окружности относительно диска

Рис. 12.24. Положение опорной точки окружности в пространстве

ко-

Создание автомобильного диска с помощью NURBS-моделирования

621

Теперь все готово для копирования окружностей. Лучше и проще воспользоваться для этих целей инструментом Array (Массив). Для этого сделайте следующее. 1.

Выделите окружность в окне проекции Front (Спереди).

2.

Выполните команду ToolsArray (ИнструментыМассив).

3.

В открывшемся окне Array (Массив) задайте угол поворота, количество объектов копирования и способ копирования, как показано на рис. 12.25.

4.

Щелкните на кнопке OK для подтверждения выполненных изменений.

Рис. 12.25. Окно Array (Массив) с настройками копирования окружности

В результате вы получите пять окружностей, расположенных по кругу. Теперь нужно сделать небольшую, но очень важную операцию с группой окружностей. Выделите все окружности и поверните их вокруг точки вращения так, чтобы ни одна из окружностей не пересекала сплайн, который является контуром для объекта вращения диска. В вашем случае он расположен горизонтально справа от центра в месте построения формы вращения. ПРИМЕЧАНИЕ В этом месте диск имеет шов (фактически мы его не видим). При проецировании сплайнов на поверхность диска шов разделит проекцию попавшей на него окружности на два независимых сплайна. Это в дальнейшем может не только затруднить работу, но в некоторых случаях сделать ее невозможной.

На рис. 12.26 показано окно проекции Front (Спереди) после поворота сплайнов.

Рис. 12.26. Окончательное положение окружностей относительно диска

622

Глава 12. Моделирование автомобиля

ПРИМЕЧАНИЕ При желании вы можете загрузить из папки Examples\Глава 12\NURBS_disk прилагаемого DVD сцену disk_start.max с построенными окружностями и диском и начать работу с этого места.

Для дальнейшей работы необходимо преобразовать диск в объект NURBS-поверхность. Для этого щелкните на диске правой кнопкой мыши и в появившемся контекстном меню выберите Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS). Далее необходимо сделать то же самое по отношению к пяти окружностям, для чего можно выделить сразу все сплайны и ко всем одновременно применить Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS). Следующим шагом будет присоединение сплайнов к NURBS-объекту и проецирование их на поверхность. 1.

Выделите диск (если он не выделен).

2.

В свитке General (Общие) командной панели щелкните на кнопке Attach (Присоединить) и в окне проекции Front (Спереди) последовательно выберите все пять окружностей. Теперь окружности принадлежат диску и их можно спроецировать на поверхность.

3.

В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) для вызова плавающей палитры NURBS с инструментами создания кривых и поверхностей.

4.

На палитре NURBS нажмите кнопку Create Vector Projected Curve (Создать проекцию кривой по вектору) , в результате чего кнопка изменит цвет.

5.

В окне проекции Front (Спереди) выберите окружность и щелкните на поверхности диска рядом с ней. На плоскости диска появится кривая, лежащая на поверхности.

ВНИМАНИЕ Проецировать кривую на поверхность необходимо только в окне проекции Front (Спереди), в противном случае проекции будут иметь искажения.

6.

В свитке Vector Projected Curve (Проекция кривой по вектору) вкладки Modify (Изменение) командной панели установите флажок Trim (Обрезать) и при необходимости Flip Trim (Обратить обрезанное). В результате на поверхности диска появится отверстие (рис. 12.27).

7.

Повторите действия по выделению, проецированию и вырезанию отверстия для оставшихся четырех окружностей (рис. 12.28).

В дальнейшем для создания объемности диска вам понадобятся еще пять окружностей. Конечно, можно сделать еще одну поверхность внутри диска, таким образом сформировав внутреннюю сторону, но она там никогда не будет видна, и поэтому достаточно придать отверстиям толщину.

Создание автомобильного диска с помощью NURBS-моделирования

Рис. 12.27. Диск с прорезанным отверстием

623

Рис. 12.28. Диск со всеми прорезанными отверстиями

Для упрощения дальнейшей работы необходимо временно отключить отображение поверхности: в области Display (Отображение) свитка General (Общие) снимите флажок Surfaces (Поверхности). Можно также удалить сплайны окружностей, если вы не собираетесь редактировать форму отверстий. Кроме того, желательно оптимизировать сплайны, формирующие отверстия, так как после построения они имеют избыточное количество вершин. Для этого выполните следующие действия. 1.

Перейдите на уровень подобъектов Curve (Кривая), для чего щелкните на соответствующей строке на вкладке Modify (Изменение) командной панели (рис. 12.29).

2.

Выделите кривую, очерчивающую отверстие.

3.

В свитке CV Curve (CV-кривая) щелкните на кнопке Rebuild (Перестроить).

4.

В открывшемся диалоговом окне Rebuild CV Curve (Перестроить CV-кривую) установите переключатель в положение Tolerance (Отклонение), задайте данному параметру значение, равное 0,1, и щелкните на кнопке OK (рис. 12.30).

5.

Выполните аналогичные действия для оставшихся кривых.

Продолжим моделирование и построим новые сплайны окружностей. Все делается аналогично, с той разницей, что сейчас они не будут проецироваться на поверхность, а сами будут являться контуром будущей поверхности. Напомню последовательность действий.

Рис. 12.29. Переход в режим редактирования подобъектов Curve (Кривая) для объекта Disk

Рис. 12.30. Окно Rebuild CV Curve (Перестроить CV-кривую)

624

Глава 12. Моделирование автомобиля

1.

В окне проекции Front (Спереди) постройте окружность, по положению и размерам равную одному из отверстий.

2.

Преобразуйте ее в Editable Spline (Редактируемый сплайн).

3.

Отредактируйте положение сплайна и его вершин так, чтобы он находился позади передней поверхности диска, а в окне проекции Top (Сверху) был изогнут внутрь (рис. 12.31).

Рис. 12.31. Положение и форма отредактированной окружности для построения глубины отверстий диска

После построения и редактирования положения внутренней окружности в пространстве скопируйте ее с помощью команды Array (Массив), предварительно выставив ось вращения в середину диска. Как это делается, было рассмотрено выше на примере внешних окружностей. Сейчас вновь созданные окружности необходимо присоединить к диску с помощью команды Attach (Присоединить). Подобная операция уже была описана, поэтому не буду повторяться. После того как вы присоедините построенные окружности к диску, можно придать толщину отверстиям следующим образом. 1.

В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) для вызова плавающей палитры NURBS с инструментами создания кривых и поверхностей.

2.

На палитре NURBS нажмите кнопку Create U Loft Surface (Создать поверхность методом U-лофтинга) , в результате чего кнопка изменит цвет.

Создание автомобильного диска с помощью NURBS-моделирования

625

3.

В окне проекции Front (Спереди) щелкните на одной из пяти окружностей, описывающей границу отверстия, а затем на сплайне позади этого отверстия. В результате между отверстием и сплайном будет построена новая поверхность.

4.

Щелкните правой кнопкой мыши для завершения выбора сплайнов.

5.

В свитке U Loft Surface (Поверхность U-лофтинга) установите флажок Auto Align Curve Starts (Автоматически выравнивать начала кривых) и при необходимости — Flip Normals (Обратить нормали) (рис. 12.32).

6.

Повторите вышеописанные действия для оставшихся четырех отверстий.

На данном этапе еще можно подкорректировать кривые окружностей и их положение в пространстве, если в этом есть необходимость. Я отодвинул кривые окружностей немного вглубь диска, чтобы увеличить толщину стенок отверстий (рис. 12.33).

Рис. 12.32. Свиток с настройками отображения построенной поверхности

Рис. 12.33. Диск с построенными стенками отверстий

Чтобы края отверстий выглядели как на реальном диске, им нужно придать некоторую округлость. Для этого выполните следующие действия. 1.

В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS-объектов) для вызова плавающей палитры NURBS с инструментами создания кривых и поверхностей.

2.

Щелкните на кнопке Create Fillet Surface (Создать поверхность-фаску) вающей палитры NURBS, в результате чего кнопка изменит цвет.

пла-

626

Глава 12. Моделирование автомобиля

3.

В окне проекции Front (Спереди) щелкните на поверхности диска, а затем на плоскости толщины отверстия. В результате на границе двух плоскостей будет построена фаска.

4.

В свитке Fillet Surface (Поверхность-фаска) задайте значения величины фаски в Start Radius (Начало радиуса) и End Radius (Конец радиуса) (у меня они равны 7). В областях Trim First Surface (Обрезать первую поверхность) и Trim Second Surface (Обрезать вторую поверхность) установите флажки Trim Surface (Обрезать поверхность) (рис. 12.34).

5.

Повторите вышеописанные действия для оставшихся четырех отверстий.

На рис. 12.35 показано, как выглядит диск после добавления фасок ко всем отверстиям.

Рис. 12.34. Свиток Fillet Surface (Поверхность-фаска) с настройками, выполненными для фаски отверстия диска

Рис. 12.35. Вид диска с фасками

Осталось добавить диску прокладку, гайку для крепления, и на этом работу можно считать завершенной. Гайка — деталь несложная, но все-таки опишу в общих чертах принцип ее моделирования. За основу я взял шестигранник с закругленными краями (CreateShapesNGon (СозданиеФормыМногоугольник)), к которому применил модификатор выдавливания (ModifiersMesh EditingExtrude (МодификаторыРедактирование поверхностиВыдавливание)). Отверстия были оставлены открытыми, а в качестве типа результирующей поверхности выбрана NURBSповерхность. После этого я создал форму вращения (CreateNURBSCV Curve (СозданиеNURBSCV-кривая)) и применил к ней команду Create Lathe Surface (Создать поверхность вращением) плавающей панели NURBS. В результате получилась поверхность, закрывающая гайку сверху (рис. 12.36).

Моделирование колеса автомобиля с помощью полигонов

627

Далее я спроецировал сплайн NGon (Шестиугольник) на поверхность крышки и обрезал лишние части. Затем, применив команду Attach (Присоединить), объединил две поверхности в одну и добавил фаску, щелкнув на кнопке Create Fillet Surface (Создать поверхность-фаску). Прокладка под гайкой — простой примитив (цилиндр). То, что получилось после финальной визуализации диска, показано на рис. 12.37.

Рис. 12.36. Объекты, выполненные для моделирования гайки

Рис. 12.37. Финальная визуализация автомобильного диска, выполненного с помощью NURBS-моделирования

ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию модели автомобильного диска, обратитесь к файлу упражнения disk_end.max, расположенному в папке Examples\Глава 12\ NURBS_disk прилагаемого DVD.

Моделирование колеса автомобиля с помощью полигонов В этом разделе описано моделирование с помощью полигонов автомобильного колеса с диском более сложной формы, а также шины с геометрическим протектором. Прежде чем приступить к моделированию, нужно иметь представление о том, что вы должны получить в итоге. Форму будущей модели диска и протектора я увидел в рекламном проспекте (рис. 12.38). Начните моделирование с построения в окне проекции Front (Спереди) примитива Tube (Труба). Для этого сделайте следующее. 1.

Выполните команду CreateStandard PrimitivesTube (СозданиеПростые примитивыТруба). В результате откроется доступ к настройкам примитива на вкладке Create (Создание) командной панели.

628

Глава 12. Моделирование автомобиля

Рис. 12.38. Фотография автомобильного диска, взятого в качестве образца для моделирования

2.

В свитке Keyboard Entry (Ввод с клавиатуры) введите значения: Inner Radius (Внутренний радиус) — 196, Outer Radius (Внешний радиус) — 220, Height (Высота) — 140.

3.

Щелкните на кнопке Create (Создание) для построения объекта в окнах проекций.

4.

В свитке Parameters (Параметры) задайте параметру Height Segments (Количество сегментов по высоте) значение 5, а Sides (Количество сторон) — 20 (по 4 на группу спиц).

Построенная геометрия находится в начале координат, что имеет важное значение для последующего моделирования. Теперь нужно заблокировать ее от случайного смещения или поворота. Для этого выполните следующие действия. 1.

Перейдите на вкладку Hierarchy (Иерархия) чего появится доступ к выбору иерархий.

командной панели, в результате

2.

Щелкните на кнопке Link Info (Данные о связях), чтобы получить доступ к свитку Locks (Блокировки).

3.

В свитке Locks (Блокировки) установите флажки Move (Перемещение) и Rotate (Вращение).

Продолжим моделирование. Вам понадобится преобразовать параметрический объект Tube (Труба) в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Дальнейшие преобразования будут проходить на уровне подобъектов. Начните с уточнения положения внутренних рядов вершин. Для этого выполните следующие действия.

Моделирование колеса автомобиля с помощью полигонов

629

1.

Перейдите на уровень редактирования вершин, для чего при выделенном объсвитка Selection (Выделение) екте щелкните на кнопке Vertex (Вершина) или нажмите 1 на клавиатуре.

2.

В окне проекции Left (Слева) выделите четыре внутренних ряда вершин и примените к ним команду Select and Uniform Scale (Выделить и равномерно масштабировать), для чего щелкните на одноименной кнопке на панели инструментов.

3.

Масштабируйте вершины по оси X так, как показано на рис. 12.39.

Затем необходимо выдавить полигоны внутри диска, чтобы получить дополнительную геометрию. Для этого сделайте следующее. 1.

Перейдите на уровень редактирования полигонов, щелкнув при выделенном в свитке Selection (Выделение) или объекте на кнопке Polygon (Полигон) нажав на клавиатуре 4.

2.

Щелкните на кнопке выделения на панели инструментов и активизируйте Circular Selection Region (Круглая область выделения) . В окне проекции Front (Спереди), начиная с середины объекта, выделите внутренние полигоны.

3.

Активизируйте прямоугольное выделение, щелкнув на кнопке Rectangular Selection Region (Прямоугольная область выделения) . В окне проекции Left (Слева), удерживая нажатой кнопку Alt, снимите выделение с крайних рядов (рис. 12.40).

4.

В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание).

5.

В открывшемся окне Extrude Polygons (Выдавливание полигонов) задайте значение величины выдавливания 20, а тип выдавливания — Local Normal (Локальные нормали).

6.

Щелкните на кнопке OK для завершения выдавливания.

Рис. 12.39. Положение вершин в пространстве окна проекции Left (Слева)

Рис. 12.40. Объект с выделенными полигонами внутренней области

630

Глава 12. Моделирование автомобиля

Далее сделайте углубление по внешнему периметру диска (операция скорее номинальная: после того как на диск «наденется» шина, его не будет видно). Для этого выделите полигоны внешнего радиуса, находящиеся в середине, и масштабируйте их внутрь объекта (рис. 12.41). Следующим шагом будет построение фаски на гранях диска: двух с величиной поменьше и одной побольше, чтобы получить закругление на краю диска. Для этого сделайте следующее. Рис. 12.41. Сформированное посадочное место под шину

Рис. 12.42. Ребра, подготовленные для создания фаски

Рис. 12.43. Фаски, примененные к внутренним ребрам для закругления геометрии диска

1.

Щелкните на кнопке Edge (Ребро) в свитке Selection (Выделение) или нажмите на клавиатуре 2.

2.

Выделите по одному ребру во втором и третьем от края внутренних рядах, затем щелкните на кнопке Loop (Петля) для выделения всех ребер по окружности (рис. 12.42).

3.

Щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска).

4.

В открывшемся окне диалога Chamfer Edges (Фаска ребер) выставьте значение величины фаски 2.

5.

Щелкните на кнопке OK для завершения операции создания фаски.

6.

Способом, описанным выше, выделите внешний ряд ребер и примените к нему инструмент создания фаски с величиной 4 (рис. 12.43).

На этом все операции, связанные с геометрией, можно считать законченными. Исходя из того, что диск симметричен, оставьте для моделирования только одну половину. В окне проекции Front (Спереди) выделите полигоны правой стороны диска и удалите их, а чтобы видеть, как проходит моделирование в целом, сделайте зеркальную копию оставшейся половины. Для этого выполните команду

Моделирование колеса автомобиля с помощью полигонов

631

ToolsMirror (ИнструментыЗеркальное отображение), в результате чего откроется окно Mirror (Зеркальное отображение). В нем выставьте в качестве оси зеркального отображения X, а в качестве метода копирования выберите Instance (Привязка). Сейчас все действия в левой части диска будут отображаться в образце справа. Приступим к моделированию спиц. Если присмотреться к форме диска на фотографии, можно заметить, что в ней много симметричных деталей, поэтому моделировать нужно только одну часть, а затем скопировать ее. Начните строить только одну спицу. Для этого в верхней части диска разрежьте три полигона, расположенных рядом, для начала формирования спицы. Чтобы сделать разрезы, щелкните на кнопке Cut (Вычитание) в свитке Edit Geometry (Редактирование геометрии) и затем в окне проекции Front (Спереди) или Perspective (Перспектива) выполните разрезание (рис. 12.44). Выделите два вновь созданных полигона (расположенных на боковой поверхности и на фаске) и сделайте выдавливание с уменьшением, для чего щелкните на кнопке Settings (Установки) рядом с кнопкой Bevel (Выдавливание со скосом). В результате откроется окно Bevel Polygons (Выдавливание со скосом полигонов). В нем выставьте значение для высоты 4, а для величины смещения — 1,5 и щелкните на кнопке OK для создания скоса. Результат данных действий показан на рис. 12.45. Далее выделите два нижних полигона для формирования спицы по направлению к центру диска. Выделенные полигоны необходимо выдавить. Для этого щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). В результате откроется диалоговое окно Extrude Polygons (Выдавливание полигонов). В нем выставьте значение высоты выдавливания, равное 40, а тип выдавливания — Local Normal (Локальные нормали) и щелкните на кнопке Apply (Применить) три раза для создания трех групп выдавливания. После создания новых полигонов перейдите на уровень редактирования вершин (нажмите на клавиатуре 1) и уточните их положение в пространстве согласно фотографии (см. рис. 12.38). Геометрия созданной спицы должна быть такой, как показано на рис. 12.46.

Рис. 12.44. Полигоны, разрезанные для начала формирования спицы

Рис. 12.45. Полигоны, сформированные с помощью команды Bevel (Выдавливание со скосом)

632

Глава 12. Моделирование автомобиля

Выполните еще одно выдавливание на высоту 30. После этого сформируйте закругление в месте соединения двух соседних спиц. Для этого выделите три полигона, расположенные у основания спицы с внутренней стороны (рис. 12.47), и выдавите их на высоту 15.

Рис. 12.46. Средняя часть спицы, сформированная выдавливанием

Рис. 12.47. Полигоны, выделенные у основания спицы, для последующего выдавливания

Не снимая выделения с полигонов, нажмите клавишу Delete для их удаления. Это необходимо сделать, чтобы иметь возможность впоследствии соединить две соседние спицы в один объект и объединить вершины. Далее перейдите на уровень редактирования вершин и, выделив конечные вершины, уточните их положение в пространстве. Они должны быть расположены так, чтобы сформировалось закругление между соседними спицами с понижением плоскости, а конечные вершины находились на границе объекта, то есть значение координаты по оси X должно быть равно 0 (рис. 12.48). На этапе моделирования спицы осталось сделать фаску на краях ребер с внешней стороны, чтобы после применения сглаживания сохранить форму изгиба поверхности. Для этого выполните следующие действия.

Рис. 12.48. Полигоны, формирующие закругление между двумя спицами

1.

Перейдите на уровень подобъектов Edge (Ребро), щелкнув на значке свитка Selection (Выделение) настроек объекта на командной панели или нажав на клавиатуре 2.

2.

Выделите все внешние ребра и щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска).

Моделирование колеса автомобиля с помощью полигонов

633

3.

В открывшемся окне диалога Chamfer Edges (Фаска ребер) параметру величины фаски задайте значение, равное 0,5.

4.

Щелкните на кнопке OK для завершения операции создания фаски.

Теперь присоедините вторую половину диска к первой, чтобы продолжить моделирование двух спиц как одного объекта. Для этого щелкните на кнопке Make unique (Сделать уникальным) на вкладке Modify (Изменение) командной панели, а затем на кнопке Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии) и в любом окне проекции на правой половине диска. Сейчас две половины диска принадлежат одному объекту, но все еще являются двумя отдельными элементами. Чтобы соединить их полностью, нужно объединить вершины в месте стыка этих элементов. Для выполнения этой операции перейдите в режим редактирования Vertex (Вершина) и выделите все вершины, находящиеся в месте соединения двух половин диска, после чего щелкните на кнопке Weld (Объединить) в свитке Edit Vertices (Редактирование вершин). После соединения двух половинок можно визуализировать объект, но прежде нужно выполнить сглаживание. Для этого в свитке Subdivision Surface (Поверхности с разбиением) установите флажок Use NURMS Subdivision (Использовать NURMSразбиения), а в области Display (Отображение) задайте параметру Iterations (Количество итераций) значение 2. Затем можно визуализировать изображение в окне проекции Front (Спереди) (рис. 12.49). Теперь смоделируем отверстия под крепеж. Для этого активизируйте инструмент Cut (Вычитание) в свитке Edit Geometry (Редактирование геометрии) и разрежьте полигон, находящийся между спицами (рис. 12.50).

Рис. 12.49. Визуализированный фрагмент диска со сглаживанием

Рис. 12.50. Разрезы, определяющие форму отверстия

Чтобы завершить формирование отверстия, выделите его внутренние полигоны и примените операцию Extrude (Выдавливание) со значением, равным –15. Для получения сглаженных краев примените к ребрам на границе окружности Chamfer Edges (Фаска ребер).

634

Глава 12. Моделирование автомобиля

После этих операций должен получиться один элемент диска. Всего их пять, следовательно, нужно снова делать копии. Оставьте для работы необходимую вам часть объекта, а все остальное удалите (рис. 12.51). Перед копированием нужно снять блокировку объекта от поворота (в самом начале задания мы заблокировали диск от случайного перемещения). Для этого выполните следующие действия. 1.

Перейдите на вкладку Hierarchy (Иерархия) у вас будет возможность выбора иерархий.

Рис. 12.51. Пятая часть диска, подготовленная для копирования

командной панели, после чего

2.

Щелкните на кнопке Link Info (Данные о связях), в результате чего появится доступ к свитку Locks (Блокировки).

3.

В свитке Locks (Блокировки) снимите флажки в области Rotate (Вращение).

После этого выделите элемент диска и выполните команду ToolsArray (ИнструментыМассив), в результате чего появится окно Array (Массив). Задайте в нем угол поворота, количество копий и метод копирования, как показано на рис. 12.52.

В результате с помощью вращения получился диск, состоящий из пяти самостоятельных элементов, наследующих трансформации друг друга. Сейчас нужно уточнить положение вершин в средней части диска. Для этого достаточно настроить положение вершин в пространстве для одного элемента, а все остальные унаследуют эти трансформации. Необходимо также удалить нижние боковые полигоны, чтобы объединить вершины соседних элементов. То, что получилось после редактирования вершин у меня, представлено на рис. 12.53. Постройте сопряжение между элементами, для которых необходимо выполнить выдавливание боковых полигонов в месте их соединения. После этого снова уточните положение вершин в пространстве, используя фотографию автомобильного диска (см. рис. 12.38). Когда будут сформированы переходы между элементами, можно их объединить в один объект. Для этого щелкните на кнопке Make unique (Сделать уникальным) вкладки Modify (Изменение) и на кнопке Attach (Присоединить) свитка Edit Geometry (Редактирование геометрии). Затем в любом окне проекции последовательно щелкните на всех копиях начального объекта для их присоединения (рис. 12.54). После объединения элементов в один объект в центре образовалось отверстие, которое необходимо закрыть и выполнить выдавливание для формирования углубления с фаской. Для этого сделайте следующее.

Моделирование колеса автомобиля с помощью полигонов

635

Рис. 12.52. Окно Array (Массив) с настройками копирования элемента диска

Рис. 12.53. Объект, полученный при копировании одного элемента диска

Рис. 12.54. Фрагмент диска после объединения элементов

1.

В свитке Selection (Выделение) настроек объекта на командной панели щелкните на значке Border (Граница) .

2.

В окне проекции Front (Спереди) щелкните на границе отверстия для выделения ребер, окаймляющих отверстие.

3.

В свитке Edit Borders (Редактирование границ) щелкните на кнопке Cap (Накрыть), в результате чего отверстие будет закрыто полигонами.

4.

Выделите средний полигон и сделайте выдавливание внутрь на небольшое расстояние.

5.

Выполните фаску для верхних ребер отверстия.

Результат описанных действий представлен на рис. 12.55.

636

Глава 12. Моделирование автомобиля

Рис. 12.55. Средняя часть диска

Осталось совсем немного — добавить мелкие детали, и диск будет готов. Для болтов крепления диска я использовал примитив Cylinder (Цилиндр) с шестью гранями без сглаживания. В центр поместил полусферу, трансформированную по оси Z. Эта полусфера будет служить основой для размещения логотипа. Для гаек, расположенных по периметру, был также использован примитив Cylinder (Цилиндр). Он подошел и для прокладок под гайки. Окончательный вид диска представлен на рис. 12.56.

Рис. 12.56. Окончательная визуализация диска

Для завершения моделирования автомобильного колеса не хватает только шины. Надеюсь, что после построения диска ее моделирование не покажется вам сложным.

Моделирование колеса автомобиля с помощью полигонов

637

Спрячьте построенный диск, чтобы ничто не мешало в работе. Для этого выделите его со всеми дополнительными элементами и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите пункт Hide Selection (Спрятать выделенное). Как обычно, для объектов, которые имеют повторяющиеся или симметричные детали, моделировать будем только уникальную для них часть. В данном случае это небольшая часть протектора. Начнем его моделирование с построения плоскости. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость). В окне проекции Top (Сверху) постройте произвольную плоскость и в свитке Parameters (Параметры) задайте ее параметрам значения, показанные на рис. 12.57. Дальнейшее моделирование будет происходить на уровне подобъектов, для чего необходимо преобразовать плоскость в объект Editable Poly (Редактируемая полигональная поверхность), щелкнув правой кнопкой мыши на объекте и выбрав в появившемся контекстном меню Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). После этого нажмите кнопку Vertex (Вершина) в свитке Selection (Выделение) настроек плоскости на командной панели и в окне проекции Top (Сверху) измените положение вершин, как показано на рис. 12.58.

Рис. 12.57. Свиток Parameters (Параметры) настроек плоскости, с которой начинается моделирование шины

Рис. 12.58. Редактирование вершин объекта в вертикальной (слева) и горизонтальной (справа) плоскостях

Перейдите на уровень редактирования Polygon (Полигон) . Выделите те полигоны, которые должны будут формировать выступающие части протектора шины. После этого примените к выделенным полигонам выдавливание с заданным значением. Для этого щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание). В открывшемся окне Extrude Polygons (Выдавливание полигонов) параметру высоты выдавливания задайте значение, равное 4, а тип выдавливания — Local Normal (Локальные нормали) и щелкните на кнопке OK (рис. 12.59).

638

Глава 12. Моделирование автомобиля

После выполнения стандартных операций необходимо подкорректировать положения вершин в пространстве. В данном случае нужно понизить протектор по направлению к внешнему краю (рис. 12.60).

Рис. 12.59. Фрагмент шины с выдавленными полигонами

Рис. 12.60. Элемент шины после корректировки высоты протектора

Как только вы скорректируете положение вершин в пространстве, изогните боковую часть элемента шины, чтобы придать ей нужную форму. Для этого проще всего воспользоваться модификатором изгиба. Выполните команду ModifiersParametric DeformersBend (МодификаторыПараметрические деформацииИзгиб). В свитке Parameters (Параметры) настроек модификатора Bend (Изгиб) задайте параметрам значения, показанные на рис. 12.61. На этом моделирование одиночного элемента можно считать законченным. Теперь необходимо выполнить его зеркальную копию с последующим присоединением ее к основному объекту. Перед тем как что-либо делать, нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность). Затем в окне проекции Top (Сверху) выделите объект и щелкните на кнопке Mirror (Зеркальное отображение) . В появившемся окне в качестве оси для зеркального отображения выберите XY, а в качестве способа копирования — Copy (Независимая копия объекта). После зеркального отображения объекта выполните подгонку положения копии так, чтобы она встала в место соединения двух половинок протектора (рис. 12.62).

Рис. 12.61. Параметры модификатора Bend (Изгиб) для элемента шины

Рис. 12.62. Элемент шины с зеркальной копией

Создав копию и уточнив ее положение относительно оригинала, необходимо присоединить ее к оригиналу. Для выполнения этих действий щелкните на кнопке Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии) основного объекта, а затем на копии в любом из окон проекций.

Моделирование колеса автомобиля с помощью полигонов

639

Но это еще не все. Нужно объединить и вершины, лежащие на стыке двух элементов. Для этого, находясь на уровне редактирования вершин, выделите средний ряд вершин и щелкните на кнопке Weld (Объединить), находящейся в свитке Edit Vertices (Редактирование вершин). В результате вы получите один полный элемент шины, который сейчас необходимо размножить. Выполните эту операцию с помощью инструмента Array (Массив). Для этого выделите объект в окне проекции. Выполните команду ToolsArray (ИнструментыМассив) и в открывшемся окне Array (Массив) укажите смещение по оси X, равное 40 (это ширина элемента, заданная при его построении), а количество копий — 50. Затем щелкните на кнопке OK для подтверждения сделанных изменений. Вы получите 50 последовательно расположенных элементов, которые нужно объединить в один объект. Снова обратитесь к команде Attach (Присоединить), но сейчас щелкните на кнопке Attach List (Присоединение по списку), находящейся рядом с кнопкой Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии). Откроется окно Attach List (Присоединение по списку), в котором щелкните на кнопке Select All (Выделить все) для выбора всех копий элемента шины. Как и прежде, соседние вершины присоединенных объектов необходимо объединить, для чего в режиме редактирования Vertex (Вершина) выделите все вершины объекта и щелкните на кнопке Weld (Объединить) в свитке Edit Vertices (Редактирование вершин). После присоединения отдельных элементов и объединения вершин в местах стыков примените модификатор Bend (Изгиб), чтобы завернуть объект в кольцо. В параметрах модификатора задайте параметру Angle (Угол) значение 360, а ось — X. Вы получите почти готовую шину, останется только нарастить боковые грани (рис. 12.63). Перед наращиванием боковых граней нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность) и объединить вершины в месте стыка. Далее щелкните на значке Border (Граница) в свитке Selection (Выделение). В окне проекции Front (Спереди) щелкните в стороне от объекта и протащите указатель мыши на противоположную сторону окна по диагонали, выделяя все открытые ребра (в данном случае это внутренние ребра шины с обеих сторон). Щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов и, удерживая нажатой клавишу Shift, дважды скопируйте ребра, чтобы нарастить стороны шины. У вас получится законченная модель шины.

Рис. 12.63. Автомобильная шина после применения модификатора Bend (Изгиб)

640

Глава 12. Моделирование автомобиля

Сейчас можно открыть ранее спрятанный диск и привести при необходимости шину к общему с ним масштабу. На рис. 12.64 показано то, что получилось у меня.

Рис. 12.64. Окончательная визуализация автомобильного колеса

ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию модели автомобильного колеса, обратитесь к файлу сцены poly_disk.max, расположенному в папке Examples\Глава 12\Poly_disk прилагаемого к книге DVD.

Моделируем BMW Моделирование автомобиля — пожалуй, самое сложное задание из представленных в этой книге. Если у вас недостаточно опыта работы в программе 3ds Max, начинать его желательно после освоения упражнений по моделированию полигонами. Моделировать автомобиль можно разными способами. Все они имеют свои плюсы и минусы. Я не стану подробно останавливаться на каждом, а только в общих чертах опишу их. 

NURBS-моделирование. В примерах по моделированию в 3ds Max встречается крайне редко. Моделировать сложно, хотя модель в конечном итоге получается достаточно сглаженная.



Патч-моделирование. При достаточных навыках в работе таким образом можно выполнять моделирование автомобилей любой сложности. Патчи имеют некоторые особенности, знание которых необходимо для нормальной работы. Кроме

Моделируем BMW

641

того, построение кривизны поверхности сводится к редактированию не только положения вершин в пространстве, но и манипуляторов, что дополнительно усложняет задачу. 

Моделирование сплайнами с последующим применением модификатора Surface (Поверхность). Этот способ напоминает патч-моделирование. Я применяю его для моделирования автомобилей со сложной и сглаженной геометрией. Метод очень удачен, но требует подготовки и хорошего пространственного мышления: нужно размещать в пространстве большое количество вершин кривой и уметь работать с манипуляторами.



Низкополигональное моделирование. При таком моделировании за основу берется объект Box (Параллелепипед) с достаточным количеством разбиений и с помощью модификатора Edit Mesh (Редактирование поверхности) изменяется положение вершин, они подгоняются под форму автомобиля. Моделирование ведется по принципу «от простого к сложному» (добавляются грани, полигоны, уточняется геометрия и т. д.). После создания общей формы к объекту применяется модификатор MeshSmooth (Сглаживание).



Полигональное моделирование. Это скорее разновидность низкополигонального моделирования, с той разницей, что применяется метод наращивания полигонов по форме модели с использованием Editable Poly (Редактируемая полигональная поверхность). На сегодняшний день это самый удобный способ создания полигональной модели.

В этом разделе рассмотрим применение последнего способа моделирования как самого распространенного и простого. Преимущество данного метода заключается в том, что мы строим полигоны лишь там, где они необходимы, имея в своем арсенале максимальный набор инструментов для работы с полигональной моделью. В разделах, посвященных моделированию телефонной трубки и колеса, мы уже использовали этот способ, и вы должны были приобрести начальные навыки работы с Editable Poly (Редактируемая полигональная поверхность). Из-за этого материал будет подан в сжатом виде, лишь с описанием техники моделирования. Как обычно, моделирование начинается с создания виртуальной студии. Способы ее построения были рассмотрены в начале главы, поэтому будем считать, что студия у вас уже есть. Если это не так, загрузите файл studio_v3.max из папки Examples\Глава 12\Studio прилагаемого к книге DVD. Несмотря на то что способы построения виртуальной студии мы подробно рассмотрели в отдельном разделе, хочется еще раз вернуться к этой теме и дать несколько рекомендаций. 

Виртуальная студия должна находиться в начале координат, то есть значения ее координат по осям X, Y и Z должны быть равны 0. Это значительно упростит зеркальное отображение объектов моделирования (фары, зеркала, колеса и т. д.), а также половины кузова автомобиля.



Студия должна быть заблокирована от случайного смещения. Для этого щелкните на объекте-студии правой кнопкой мыши и в появившемся контекстном

642

Глава 12. Моделирование автомобиля

меню выберите строку Object Properties (Свойства объекта). Откроется одноименное окно, в котором установите флажок Freeze (Фиксировать) и снимите Show Frozen in Gray (Показывать замороженное серым). Каким бы методом вы ни моделировали автомобиль, поскольку он симметричен, достаточно смоделировать половину объекта, а потом сделать зеркальную копию. Моделировать автомобиль начните с построения объекта Plane (Плоскость) в районе переднего крыла автомобиля. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость) и в окне проекции Front (Спереди) постройте небольшую плоскость, которая будет отправной точкой всего моделирования (рис. 12.65).

Рис. 12.65. Плоскость, с которой начинается построение модели автомобиля

Для удобства работы измените способ отображения объекта. Для этого щелкните на плоскости правой кнопкой мыши и в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Display Properties (Свойства отображения) открывшегося окна Object Properties (Свойства объекта) установите флажок See-Through (Видеть сквозь). После этого вы сможете видеть ту часть виртуальной студии, которая скрывается за моделируемым объектом.

Больше свойства параметрического объекта Plane (Плоскость) вам не понадобятся. Дальнейшее моделирование будет проводиться на уровне редактирования подобъектов (вершин, граней, полигонов). Для доступа к этому уровню необходимо преобразовать объект в Editable Poly (Редактируемая полигональная поверхность). Для этого щелкните на нем правой кнопкой мыши, в появившемся контекстном меню выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). ВНИМАНИЕ Почти все команды моделирования, которые будут использоваться в данном упражнении, находятся на вкладке Modify (Изменение) настроек объекта Editable Poly (Редактируемая полигональная поверхность) командной панели. По этой причине уточнения будут даваться только по свиткам, к которым будем обращаться. Во всех остальных случаях будет приводиться полное описание доступа к инструментам, модификаторам или свойствам объекта.

После преобразования плоскости в Editable Poly (Редактируемая полигональная поверхность) перейдите на уровень редактирования Vertex (Вершина) (при выде-

643

Моделируем BMW

ленном объекте нажмите на клавиатуре 1) и уточните положение вершин в пространстве, используя для контроля окна проекций Front (Спереди) (рис. 12.66, а) и Left (Слева) (рис. 12.66, б). Очень важно контролировать положение вершин во всех окнах проекций. Это поможет избежать формирования искривлений, которые могут быть не видны при использовании одного или двух окон проекций. Далее с помощью выдавливания боковых ребер продолжаем строить крыло машины. Для этого можно применить команду Extrude (Выдавливание), но более простой метод построения дополнительных ребер (а следовательно, и полигонов) — копирование их с клавишей Shift. Делается это так. 1.

Перейдите на уровень редактирования Edge (Ребро) (нажмите на клавиатуре 2).

2.

Нажмите и удерживайте клавишу Shift.

3.

Выделите ребро со стороны, в которую будете наращивать рельеф.

4.

Удерживая нажатой кнопку мыши, перетащите ребро в сторону на расстояние, необходимое для построения новых контрольных точек.

5.

Отпустите кнопку мыши, в результате чего будет построен новый полигон.

6.

При необходимости уточните положение вершин в пространстве.

а

б

Рис. 12.66. Положение начального полигона в окнах проекций Front (Спереди) (а) и Left (Слева) (б)

Используя вышеописанный способ копирования ребер, нарастите геометрию крыла автомобиля (рис. 12.67). СОВЕТ При моделировании автомобиля я придерживаюсь правила, что отдельные детали кузова должны моделироваться как самостоятельные элементы. Это упрощает моделирование и дальнейшее текстурирование автомобиля. Обычно это элементы, которые и у реального автомобиля являются самостоятельными (крылья, капот, двери, багажник, бамперы и т. д.).

а

б

Рис. 12.67. Положение полигонов, огибающих арку от бампера до порога, в окнах проекций Front (Спереди) (а) и Left (Слева) (б)

644

Глава 12. Моделирование автомобиля

Продолжите строить полигоны. Дойдя до бампера с левой стороны и порога с правой, нарастите ребра в стороны, не забывая контролировать положение полигонов во всех окнах проекций (рис. 12.68). Сейчас самое время посмотреть на то, что у нас получается. Для этого я пользуюсь нехитрым приемом: делается визуализированная копия моделируемого объекта, и к ней добавляется модификатор MeshSmooth (Сглаживание). Рассмотрим подробнее, как это сделать. 1.

Удерживая нажатой клавишу Shift (как при копировании ребер), щелкните на моделируемом объекте и перетащите его на значительное расстояние в сторону. 2.

После того как вы отпустите кнопку мыши, появится окно Clone Options (Параметры клонирования), в котором в качестве способа копирования выберите Reference (Подчинение).

3.

В стек модификаторов копии добавьте модификатор MeshSmooth (Сглаживание), выполнив команду ModifiersSubdivision Surfaces MeshSmooth (МодификаторыПоверхности с разбиениемСглаживание).

4.

Из списка Subdivision Method (Метод разбиения) одноименного свитка настроек модификатора MeshSmooth (Сглаживание) выберите NURMS, а в свитке Subdivision Amount (Величина поверхности с разбиением) задайте параметру Iterations (Количество разбиений) значение 2.

5.

Щелкните на объекте правой кнопкой мыши и выберите строку Object Properties (Свойства объекта). В области Display Properties (Свойства отображения) снимите флажок See-Through (Видеть сквозь).

а

б Рис. 12.68. Положение полигонов в окнах проекций Front (Спереди) (а) и Top (Cверху) (б) после их наращивания в стороны

Рис. 12.69. Копия моделируемого объекта со сглаживанием

После создания экземпляра и выполнения вышеописанных действий поместите его в окно проекции Perspective (Перспектива). Сейчас вы сможете, работая с полигонами на низком уровне (то есть до сглаживания), видеть сглаженную модель и лучше контролировать процесс построения геометрии (рис. 12.69).

Моделируем BMW

645

СОВЕТ К сожалению, удобство, связанное с возможностью просмотра сглаженного изображения одновременно с моделированием, занимает дополнительные компьютерные ресурсы (в оперативной памяти хранится информация о выполненных операциях не только для основного объекта, но и для экземпляра). В связи с этим, как только вы почувствуете, что компьютер стал работать медленнее, удалите копию. Вместо этого при необходимости можно контролировать форму объекта, установив в свитке Subdivision Surface (Поверхности с разбиением) настроек объекта флажок Use NURMS Subdivision (Использовать NURMS-разбиения) с теми же параметрами, что у модификатора MeshSmooth (Сглаживание).

Продолжите дальнейшее наращивание геометрии. Сделайте ряд полигонов по верху объекта до излома крыла и ряд по краю арки. ВНИМАНИЕ Когда необходимо наращивать более одного полигона, обязательным условием является выделение для копирования сразу всех ребер. Это связано с тем, что раздельное копирование не только замедлит процесс построения геометрии, но и построит разделенные полигоны. В таком случае необходимо объединить (команда Weld (Объединить)) совпадающие вершины соседних полигонов (если, конечно, раздельное построение не предусмотрено характером моделирования).

При моделировании нужно обходиться минимальным количеством полигонов, но при этом достаточным для правильной передачи формы модели. Вершины полигонов старайтесь располагать в местах изменения формы и не забывайте контролировать их положение в пространстве (рис. 12.70). Обратите внимание, что ребра, находящиеся на стыках полигонов, располагаются с учетом изменения геометрии автомобиля. Кроме того, между аркой и дверью необходимо разделить полигоны на две части, так как большие полигоны не способны передать изгиб крыла по длине. Выполните это деление с помощью инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактирование геометрии).

Рис. 12.70. Полигоны, достроенные над аркой и по верху крыла

Чем больше расстояние между ребрами соседних полигонов, тем более плавную кривую построит программа при сглаживании внутреннего угла. Верно и обратное. По этой причине, если вы хотите сделать излом в каком-то месте поверхности, нужно построить близко лежащие грани. Это мы сейчас и проделаем для геометрии

646

Глава 12. Моделирование автомобиля

крыла. Прежде всего необходимо выделить грань, по которой будет уточняться геометрия. Перейдите на уровень редактирования ребер (нажмите на клавиатуре цифру 2). Выделите одно из ребер по линии будущего излома геометрии. В свитке Selection (Выделение) нажмите кнопку Loop (Петля), в результате чего выделятся все ребра, находящиеся на одной линии с выделенным. Для придания изгибу более заметного излома примените к выделенным ребрам Chamfer (Фаска), разделив таким образом выделенные ребра на две части. Для этого в свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска). В открывшемся окне Chamfer Edges (Фаска ребер) задайте параметру величины фаски значение, равное 3. Затем щелкните на кнопке OK для завершения операции создания фаски. Теперь изгиб крыла над аркой имеет более естественные очертания (рис. 12.71). Напомню, что в окне проекции Perspective (Перспектива) представлен экземпляр объекта, с которым вы работаете, но только со сглаживанием. Продолжите наращивание полигонов вправо, сначала до места соединения передней и задней двери, затем до места соединения задней двери и крыла.

Рис. 12.71. Ребра, сформированные фаской в окнах проекций Orthographic (Ортогональный) (слева) и Perspective (Перспектива) (справа)

Рис. 12.72. Достроены два ряда полигонов, описывающих форму дверей

Обратите внимание, что в окне проекции Top (Сверху) боковая линия геометрии автомобиля в местах расположения дверей почти ровная, поэтому, чтобы передать форму кузова, вам достаточно построить вертикальные ребра в местах стыковки дверей (рис. 12.72). Принципы построения заднего крыла такие же, как и переднего, — ребра строящегося объекта должны пройти по характерным изломам крыла, огибая арку заднего колеса. Затем продолжите построение полигонов вплоть до дверей багажника, огибая заднюю фару. Высота строящихся полигонов должна быть ограничена сверху линией излома геометрии кузова, а снизу — бампером.

СОВЕТ При построении такой сложной модели, как автомобиль, вы вряд ли дважды столкнетесь с одинаковой геометрией кузова. При этом существует простое правило: построение ребер должно вестись с учетом элементов кузова и его формы. На практике

647

Моделируем BMW

это выглядит примерно так: все, что в автомобиле открывается, может быть выполнено отдельными элементами и, соответственно, должно иметь ребра на краях. Ребра также обязательны там, где необходимо сделать излом геометрии.

При построении изгиба заднего крыла в районе фары обратите внимание на форму закругления. Кроме работы в окне проекции Front (Спереди) (рис. 12.73, а), важно контролировать положение вершин в пространстве, используя окна проекции Top (Сверху) и Right (Справа) (рис. 12.73, б). Далее достройте полигоны до боковых окон. Принцип построения все тот же: выделите грани по всей длине и, удерживая нажатой клавишу Shift, скопируйте их, а затем уточните положение вершин в пространстве. Чтобы закончить общую форму боковой геометрии кузова, сделайте продольный излом на крыльях и дверках автомобиля. Эта операция выполняется аналогично созданию излома над арками крыльев автомобиля, описанному ранее. Отличие состоит в том, что сначала с помощью инструмента Chamfer (Фаска) из свитка Edit Edges (Редактирование ребер) строятся разделенные ребра с параметром Chamfer Amount (Величина фаски), равным 10 (имейте в виду, что если размеры вашей модели отличаются от моей, то и величина будет другой). После этого выделяется верхний ряд ребер из только что полученных после применения фаски и еще раз применяется Chamfer (Фаска), но со значением параметра Chamfer Amount (Величина фаски), равным 3.

а

б

Рис. 12.73. Построение полигонов продолжается в окнах проекции Front (Спереди) (а) и Right (Справа) (б)

После построения двух дополнительных рядов ребер необходимо уточнить положение в пространстве нижнего ряда, чтобы создать криволинейную поверхность боковой стороны автомобиля. Для этого можно воспользоваться редактированием на уровне вершин (для переключения нажмите на клавиатуре 1), для чего выделите точки нижнего ряда (из построенных с помощью Chamfer (Фаска)) и в окне проекции Left (Слева) сместите их немного внутрь автомобиля (рис. 12.74). При построении новых ребер методом создания фаски на границе примыкания

Рис. 12.74. Положение и форма излома геометрии кузова, проходящего по боковой поверхности

648

Глава 12. Моделирование автомобиля

горизонтальных ребер к арке переднего крыла появятся артефакты. Это связано с тем, что в данных точках сходятся по пять ребер и в результате применения инструмента Chamfer (Фаска) из свитка Edit Edges (Редактирование ребер) появляется избыточное количество вершин. Решить возникшую проблему можно с помощью команды Weld (Объединить) следующим образом. Для этого перейдите на уровень редактирования Vertex (Вершина) и выделите две вершины, подлежащие объединению. В свитке Edit Vertices (Редактирование вершин) щелкните на кнопке Settings (Установки) рядом с кнопкой Weld (Объединить). В открывшемся окне Weld Vertices (Объединить вершины) задайте значение величины приращения с учетом того, чтобы в окне проекции две выделенные вершины объединились в одну. Затем щелкните на кнопке OK для завершения объединения и повторите те же действия для двух других точек (рис. 12.75). На рис. 12.76 показан вид боковой поверхности экземпляра моделируемого объекта со сглаживанием.

Рис. 12.75. Вершины на стыке шести ребер до (слева) и после (справа) их слияния

Рис. 12.76. Боковая поверхность кузова автомобиля со сглаживанием

СОВЕТ Часто в процессе моделирования по той или иной причине необходимо вернуться к предыдущему состоянию моделирования, и не всегда в этом может помочь команда Undo (Отменить). Поэтому возьмите за правило сохранять рабочий файл после выполнения ключевых задач или через определенные промежутки времени. Лучше всего, если будет использоваться для сохранения команда Save As (Сохранить как) с увеличением имени файла (достаточно в окне Save File As (Сохранить файл как) щелкнуть на кнопке со знаком +).

Дальнейшее построение кузова автомобиля связано с моделированием рамки над дверями, затем можно будет перейти от нее к крыше. Построение начинается сразу с двух сторон путем наращивания полигонов.

649

Моделируем BMW

Думаю, двух рядов полигонов вполне хватит, чтобы передать форму рамки. В ее построении нет особых сложностей, лишь необходимо отметить, что от заднего крыла отходит больше чем два полигона. Их нужно привести в соответствие (по количеству) с теми, которые расположены спереди. Это делается путем объединения вершин. Кроме того, добавьте еще одно горизонтальное ребро в место стыковки рамки с задним крылом — туда, где виден небольшой излом формы (рис. 12.77). Дальнейшее построение крыши автомобиля не должно вызвать затруднения, поэтому вернемся к нему позже, а пока на примере создания порога я хочу показать, как можно строить сочленения отдельных элементов кузова. Когда-то, в самом начале работы в программе 3ds Max, я строил швы и сочленения элементов кузова автомобиля путем применения команды Bevel (Выдавливание со скосом) из свитка Edit Polygons (Редактирование полигонов) к полигонам, проходящим по линии шва. После применения модификатора MeshSmooth (Сглаживание) к таким швам углы закруглялись даже там, где они должны быть прямыми. Чтобы избавиться от этого эффекта, я добавлял ребра, увеличивал вес вершин и т. п. Но все эти меры ведут к увеличению количества полигонов и деформируют форму, поэтому со временем я нашел другое решение. Итак, мы продолжаем строить кузов, а точнее, порог. Выделите нижний ряд ребер и скопируйте его три раза (именно столько рядов полигонов необходимо, чтобы передать небольшое углубление в пороге). После построения новых полигонов уточните положение вершин в окнах проекций Left (Слева) и Top (Сверху) (рис. 12.78). То, о чем я буду говорить далее, важно понять и научиться делать правильно, так как от этого зависит, насколько хорошо будут смотреться швы автомобиля. Начнем с выделения трех нижних рядов полигонов, чтобы сформировать из них отдельный элемент. Выделите три нижних ряда полигонов и щелкните на кнопке Detach (Отделить), расположенной в свитке Edit Geometry (Редактирование геометрии). В появившемся окне Detach (Отделить) установите флажок Detach To Element (Отделить в элемент). Это позволит выделить полигоны в отдельный

а

б

Рис. 12.77. Положение и форма полигонов, формирующих рамку кузова в окнах проекций Front (Спереди) (а) и Right (Cправа) (б)

Рис. 12.78. Дополнительные полигоны, построенные для формирования порога

650

Глава 12. Моделирование автомобиля

элемент, принадлежащий моделируемому объекту. Щелкните на кнопке OK для подтверждения выбора и закрытия окна. СОВЕТ Есть несколько способов упростить навигацию по увеличивающемуся в процессе моделирования количеству вершин, ребер и полигонов. Можно прятать неиспользуемые в работе объекты, использовать плоскости отсечения, Isolation Mode (Режим изолирования) и скрывать неиспользуемые элементы на уровне редактирования подобъектов.

После выделения порога в отдельный элемент (с ним предстоит работать) спрячьте все лишнее. Для этого перейдите на уровень редактирования подобъектов Element (Элемент), используя горячую клавишу 5. Выделите порог автомобиля и в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Hide Unselected (Спрятать невыделенное). После выполнения этих операций на экране остается только порог. В окне проекции Front (Спереди) выделите вершины, принадлежащие верхнему ряду, и немного (на 3–5 мм) сместите их вниз. Это необходимо, чтобы между порогом и дверями образовалась небольшая щель. После этого нужно придать порогу толщину. Выделите открытые грани, для чего на уровне подобъектов Border (Граница) щелкните в любом месте по краю порога. В результате выделятся все ребра по периметру. После этого выполните уже знакомую вам операцию копирования граней на величину около 20 мм со смещением внутрь автомобиля. ПРИМЕЧАНИЕ Значение, на которое изменяется смещение при копировании, можно проследить в строке состояния, расположенной в нижней части окна программы.

Для формирования углубления в средней части порога выделите два больших продольных ребра и переместите их немного внутрь. Осталось еще одно копирование ребер для формирования порога — нужно выделить верхний внутренний ряд (из тех, которые были построены последними) и скопировать его по оси Y примерно на 20 мм вверх. Это необходимо, чтобы закрыть изнутри образовавшееся продольное отверстие между порогом и дверью (с помощью смещения вершин вниз). Последнее, что нужно сделать, перед тем как закончить моделировать порог, — выделить передние грани, образующие внешний край, добавить к выделению ребра в углах и ко всему выделению применить Chamfer (Фаска) с величиной параметра Chamfer Amount (Величина фаски), равной 1 (рис. 12.79). Если то, что получилось у вас, отличается от изображения на рис. 12.79, вернитесь назад с помощью команды Undo (Отменить) и проверьте, правильно ли были выделены грани. Это, как правило, самая распространенная ошибка при построении сглаженных углов. На самом деле операции с гранями не так сложны, как кажется, — главное, понять принцип, по которому делаются фаски. На рис. 12.80 показан результат визуализации боковой стороны автомобиля.

Моделируем BMW

Рис. 12.79. Каркасный вид порога автомобиля после добавления полигонов и создания фаски

651

Рис. 12.80. Результат визуализации боковой стороны автомобиля вместе с построенным порогом

На примере моделирования порога мы рассмотрели один из способов создания элементов кузова автомобиля. Опишу еще один способ моделирования автомобильных швов на примере создания двери. ВНИМАНИЕ При построении закруглений на краях нужно всегда учитывать особенности механизма сглаживания, который в расчетах использует расстояние между соседними рядами ребер (минимум три ряда на угол). На практике это выглядит так: чем ближе расположены ребра, образующие угол, тем меньше радиус закругления получится при сглаживании. Наилучший результат получается, если ребра, образующие закругление, расположены на одном расстоянии от угла.

Учитывая особенности сглаживания, описанные выше, необходимо на боковой поверхности автомобиля добавить вертикальные разрезы так, чтобы по обе стороны от границ дверей получилось по вертикальному ряду ребер. Сделать это можно разными способами, и самый простой — разрезать поверхность с помощью инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактирование геометрии) (рис. 12.81). Начнем построение швов с выделения по одному ребру в трех вертикальных рядах, ограничивающих две двери: между передним крылом и передней дверью, между передней и задней дверью и между задней дверью и задним крылом. После этого щелкните на кнопке Loop (Петля),

Рис. 12.81. Расположение вертикальных ребер в местах соединения дверей

652

Глава 12. Моделирование автомобиля

расположенной в свитке Selection (Выделение), чтобы выделить все ребра, составляющие вертикальные ряды. Проверьте, действительно ли все ребра, относящиеся к одному ряду, выделились. Возможно, что при моделировании создались смежные ребра и, соответственно, сдвоенные вершины. В этом случае выделение в таком месте прервется и продолжить его можно будет, добавив оставшиеся ребра вручную, а вершины придется объединить с помощью команды Weld (Объединить), чтобы избежать искажения геометрии. Если вы выделили все необходимые для работы ребра, нажмите на клавиатуре Пробел, чтобы заблокировать выделенные ребра от случайного изменения. После этого примените команду Extrude (Выдавить) из свитка Edit Edges (Редактирование ребер) с высотой выдавливания, равной 0, и шириной 10 (рис. 12.82). Высота, указываемая в окне Extrude Edges (Выдавить ребра), в данном случае должна всегда быть нулевой, а ширина у вас может быть и другой — все зависит от масштаба модели и ширины требуемого шва. Обычная технология построения шва подразумевает применение не Extrude Edges (Выдавить ребра), а Chamfer Edges (Фаска ребер). Однако в результате получается вместо трех всего два ребра, что усложняет дальнейшую работу. То, что предлагаю я, позволит вам с минимальными затратами построить достаточно удачный шов. Не спешите щелкать на кнопке OK после введения нужных значений. В данном случае вам понадобится продолжить работу в окне Extrude Edges (Выдавить ребра), поэтому нажмите кнопку Apply (Применить), после чего можно ввести новые значения для следующей пары ребер. В этот раз задействуйте отрицательную высоту выдавливания (у меня это значение равно –5) и меньшее значение для ширины (3). В результате вы сделали шов, используя всего две операции выдавливания (рис. 12.83).

Рис. 12.82. Начало построения дверного шва

Рис. 12.83. Автомобильный шов, полученный с помощью двух операций выдавливания, в каркасном виде (слева) и после визуализации (справа)

При желании, добавив еще две операции, вы можете улучшить внешний вид шва. У меня никогда не возникало необходимости в таком улучшении, так как в своих

653

Моделируем BMW

работах я не использую визуализацию с большим приближением, а на расстоянии они практически не отличаются друг от друга. Однако вам это, возможно, понадобится, поэтому я расскажу, как сделать такой шов. Сейчас дверной шов представлен минимально возможным количеством полигонов (имейте это в виду, если для вас критично общее количество полигонов). Если к этому добавить еще одно выдавливание, а затем применить фаску, то получится более правильный с точки зрения геометрии шов (внутри он будет прямоугольным). Для построения такого шва выполните следующие действия. 1.

Не меняя выделения (у вас до сих пор должны быть выделены три средних ряда ребер), щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание).

2.

В открывшемся окне Extrude Edges (Выдавить ребра) задайте параметру величины выдавливания значение, равное –10 (это значение определяет общую глубину шва), а ширины — 4.

3.

Щелкните на кнопке OK для завершения операции выдавливания.

4.

В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска).

5.

В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение, равное 10.

6.

Щелкните на кнопке OK для завершения создания фаски (рис. 12.84).

Перед тем как приступить к следующей фазе моделирования, не забудьте снять блокировку с выделения, для чего еще раз нажмите на клавиатуре Пробел.

Рис. 12.84. Каркасный вид улучшенного шва (слева) и его визуализация (справа)

ПРИМЕЧАНИЕ При моделировании автомобиля совсем не обязательно вести построение в той последовательности, в которой это делаю я. Главное, чтобы ваша последовательность действий была логически оправдана (например, нелогично делать ручки дверей, не имея самих дверей).

После того как вы закончили с построением дверных швов, можно переходить к моделированию капота. Для этого необходимо нарастить полигоны с помощью копирования ребер, придерживаясь геометрии автомобиля. Через весь капот проходит характерный излом, и для правильной передачи формы нужно его повторить,

654

Глава 12. Моделирование автомобиля

используя фаску. В местах расположения фары и решетки радиатора оставьте открытые проемы (позже их будем строить отдельными элементами). На рис. 12.85 показаны линии построения. Теперь, когда вы научились делать закругления на гранях элементов автомобиля, закруглите грани капота и элемента кузова, расположенного ниже фары (рис. 12.86).

Рис. 12.85. Линии построения геометрии капота в окне проекции вида слева

Рис. 12.86. Визуализация фрагмента капота с фасками

Следующий шаг — построение решетки радиатора. Для этого выполните следующие действия. 1.

Выделите ребра, расположенные по периметру отверстия, для чего используйте уровень подобъектов Border (Граница), и щелкните кнопкой мыши на границе отверстия.

2.

Примените к выделенным ребрам команду Cap (Накрыть), щелкнув на одноименной кнопке в свитке Edit Borders (Редактирование границ). Это создаст полигон, закрывающий отверстие.

3.

Сделайте закрытое отверстие как отдельный элемент, для чего в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Detach (Отделить).

Дальнейшее редактирование будет проходить на уровне подобъектов Polygon (Полигон). Выделите вновь созданный полигон и примените к нему последовательно четыре операции Bevel (Выдавливание со скосом) со следующими значениями параметров, заданными в окне Bevel Polygons (Выдавливание со скосом полигонов): 

Height (Высота): 3, Outliner Amount (Величина смещения): –3;



Height (Высота): 0, Outliner Amount (Величина смещения): –15;



Height (Высота): –3, Outliner Amount (Величина смещения):–3;



Height (Высота): –15, Outliner Amount (Величина смещения): –0.

655

Моделируем BMW

После этого уточните положение точек в правом верхнем углу (там обводка немного расширяется). Если вы все сделали правильно, результат должен соответствовать изображению, показанному на рис. 12.87, а. После добавления боксов в качестве вертикальных перегородок решетки получим окончательный вид (рис. 12.87, б). Займемся построением двери багажника. После того как вы выполнили боковую сторону автомобиля, капот и научились делать толщину элементов и швы, ее создание не должно вызвать затруднений. Здесь все просто: построение ведется путем наращивания полигонов от крыла до середины автомобиля (рис. 12.88).

а

б

Рис. 12.87. Решетка автомобиля, представленная каркасом в окне проекции Left (Слева) (а) и визуализированная после добавления вертикальных перегородок (б)

а

б

Рис. 12.88. Геометрия багажника в окне проекции Right (Справа) (а) и Front (Спереди) (б)

Далее постройте швы двери. Для этого либо создайте шов, как описано на примере построения боковых дверей, либо создайте дверь как отдельный элемент (с помощью команды Detach (Отделить)) и достроив толщину двери (как описано выше на примере порога). Создайте небольшой элемент над углублением для регистрационного номера автомобиля (можно сделать его как отдельный объект из параллелепипеда). Все построения при визуализации должны выглядеть примерно так, как показано на рис. 12.89. Перейдем к созданию крыши, лобового стекла и стекла двери багажника. В данном случае также не должно возникнуть проблем. Построения выполняются от краев элементов до середины автомобиля

Рис. 12.89. Визуализация багажника после создания толщины

656

Глава 12. Моделирование автомобиля

(напомню, что виртуальная студия расположена в начале координат и граница строящихся элементов должна проходить по оси Y с координатой 0). При выполнении лобового стекла заведите передние нижние полигоны под капот, опустив их на небольшое расстояние относительно капота. Еще раз напомню: контролируйте построения во всех окнах проекций. Крыша, стекла и часть крыши, примыкающая к двери багажника, строятся как отдельные элементы (рис. 12.90). После построения крыши задача немного усложнится: нужно создать хромированную окантовку верха дверей. Для моделирования окантовки выполните следующие действия. 1.

Перейдите в режим редактирования Edge (Ребро).

2.

Выделите ребра по периметру примыкания окантовки к крыше.

3.

В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Create Shape From Selection (Создать форму из выделенного) для преобразования выделенных ребер в сплайны (это будет самостоятельный объект). В появившемся окне нажмите кнопку OK.

4.

Выделите построенный сплайн (например, с помощью окна Select From Scene (Выбор из сцены)), перейдите на уровень редактирования Spline (Сплайн) и в свитке Geometry (Геометрия) настроек сплайна рядом с кнопкой Outline (Контур) укажите величину контура, равную 25.

5.

Нажмите на клавиатуре Enter для создания контура (рис. 12.91).

Рис. 12.90. Расположение полигонов крыши, лобового стекла и стекла двери багажника в окне проекции Top (Сверху)

Рис. 12.91. Сплайны обводки, построенные из выделенных ребер

После построения сплайна преобразуйте его в Editable Poly (Редактируемая полигональная поверхность), для чего щелкните на сплайне правой кнопкой мыши и в появившемся контекстном меню выберите из списка Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Далее сделайте разрывы геометрии в местах стыковки дверей, чтобы там впоследствии сформировались швы. После выполнения подготовительной части можно придать окантовке толщину (не буду повторяться, так как эта операция делалась не раз и должна быть вам знакома).

657

Моделируем BMW

В качестве стоек я использовал параллелепипеды — просто придал им нужную форму, немного передвинув вершины. Результат показан на рис. 12.92. Достройте стекла боковых дверей. Используйте для этого стандартный примитив Plane (Плоскость) (если вы планируете делать открывающиеся двери, постройте для каждой из них отдельную плоскость), а затем уточните положение вершин в пространстве.

Рис. 12.92. Визуализация стоек

Перейдем к построению бокового зеркаи окантовки двери ла. Трудности при его создании связаны с тем, что зеркало имеет сложную форму, которую нужно моделировать, а информации по ней (я имею в виду чертежи) недостаточно. При построении зеркала я использовал примитив Box (Параллелепипед) с двумя дополнительными гранями по вертикали, одной вдоль и одной по горизонтали. После построения параллелепипеда я преобразовал его в Editable Poly (Редактируемая полигональная поверхность) и все дальнейшие построения вел путем применения инструмента Bevel (Выдавливание со скосом) и перемещения вершин в пространстве. Там, где было необходимо, я добавлял ребра. Углы закруглял с помощью фасок. Само зеркало я сделал как отдельный элемент, что позволило получить ровную отражающую поверхность. Элемент, к которому крепится зеркало, был сделан из отдельного параллелепипеда с последующим его присоединением с помощью команды Attach (Присоединить) к зеркальному отображению (рис. 12.93).

Рис. 12.93. Каркасный вид зеркала в окнах проекций

658

Глава 12. Моделирование автомобиля

Теперь построим заднюю фару и стекло фары. Эти элементы создаются аналогично, поэтому я опишу только построение задней фары. Я делаю это одним из двух следующих способов. 

Строю новый объект Plane (Плоскость) с количеством разбиений, соответствующих примыкающей геометрии. Это делается, чтобы выставить вершины в местах расположения вершин примыкающей геометрии (в частности, крыла и багажника).



Выделяю ребра на крыле и багажнике, чтобы в дальнейшем построить на их основе самостоятельный сплайн (как в случае с обрамлением двери), а уже из сплайна — геометрию. Этот способ хорош, если геометрия вокруг строящегося объекта достаточно сложна и может вызвать затруднения с расположением вершин. Используя один из описанных выше способов, постройте заднюю фару, состоящую из двух элементов (один элемент относится к заднему крылу, другой — к двери багажника). После создания геометрии придайте ей толщину. Для этого выделите ребра по периметру и скопируйте их вглубь автомобиля на 20 мм. Для закругления граней примените Chamfer (Фаска) (рис. 12.94).

а

б

Рис. 12.94. Расположение ребер на модели задней фары в окнах проекций Perspective (Перспектива) (а) и Front (Спереди) (б)

Рис. 12.95. Начало построения бампера (вверху) с последующим уточнением геометрии (внизу)

Затененные полигоны по периметру фары — не что иное, как геометрия, построенная для закрытия щели, образованной между фарой и кузовом (при моделировании фары как отдельного элемента). Теперь можно перейти к выполнению переднего и заднего бамперов. Для создания переднего бампера я использовал наращивание рельефа путем построения новых полигонов (копирование ребер с нажатой клавишей Shift), начиная от арки. Сначала построение велось путем создания общей формы (рис. 12.95, вверху) с последующим уточнением элементов бампера и разбиением его на отдельные части (рис. 12.95, внизу). Решетку, расположенную внутри бампера, постройте из отдельных параллелепипедов с последующим преобразованием в Editable Poly (Редактируемая полигональная поверхность) и уточне-

659

Моделируем BMW

нием положения вершин относительно всей геометрии бампера. Плашка под номер — это немного модифицированный параллелепипед (рис. 12.96). Задний бампер строится аналогично переднему. В нем меньше деталей, и его гораздо легче моделировать. На рис. 12.97 показана схема расположения полигонов, из которых состоит бампер. Прежде чем приступить к построению мелких деталей автомобиля, нужно выполнить моделирование арок и днища кузова. Днище и арки автомобиля строились как отдельный элемент. Для построения арок переднего и заднего колеса выделите открытые ребра, находящиеся по краям крыла, и скопируйте их внутрь на 1/5 от общей ширины автомобиля. После этого постройте ту часть днища автомобиля, которая расположена между арками и кузовом. Построение ведется, как и прежде, методом копирования ребер. Затем заполните внутренние стороны арок полигонами (я строил треугольные полигоны вручную, хотя можно просто «закрыть» их, применив Cap (Накрыть) из свитка Edit Borders (Редактирование границ)). Конечно, при визуализации днища никогда не видно, а геометрия арок не критична, так как закрыта колесом, но аккуратность в работе еще никому не мешала. Как выглядит сетка полигонов на днище и в арках автомобиля, представлено на рис. 12.98.

Рис. 12.96. Визуализация бампера с дополнительными элементами

Рис. 12.97. Задний бампер в каркасном виде (вверху) и его визуализация (внизу)

Перейдем к построению дверных ручек. Такие детали автомобиля, как дверные ручки и крышка бензобака, можно моделировать двумя следующими способами. 

При первом способе в окне проекции вида, перпендикулярного поверхности, на которой нужно построить

Рис. 12.98. Схема расположения полигонов днища и арок в окне проекции User (Пользовательская)

660

Глава 12. Моделирование автомобиля

элемент кузова, строится сплайн, по форме соответствующий этому элементу (например, для крышки бака — прямоугольник с закругленными углами). Затем с помощью построения объекта типа ShapeMerge (Объединенные с формой) этот сплайн проецируется на поверхность. Геометрия становится «разрезанной» по форме сплайна и готова для дальнейшей модификации. Данный способ подходит, когда поверхность, которую нужно «разрезать», не имеет большого количества разбиений, иначе появляется избыточное количество вершин, которые усложняют моделирование. 

Второй способ подразумевает построение всех контуров элемента за счет разрезания полигонов и манипуляции вершинами. Он более трудоемкий, но позволяет получить контроль над всей геометрией строящегося элемента.

В данном случае наиболее подходящим будет второй способ из-за большого количества горизонтальных ребер в области построения. Начните с построения сплайна по форме будущей ручки двери. Конечно, это делать не обязательно, но, создав сплайн, что не отнимет много времени, можно визуально контролировать форму строящегося элемента. Затем, используя сплайн в качестве шаблона, сделайте разрезы полигонов, напротив которых расположен сплайн (рис. 12.99).

Рис. 12.99. Четыре разреза, выполненные по габаритам сплайна

Затем достройте минимально необходимое количество ребер и вершин для получения закругленных краев. Для этого воспользуйтесь инструментами Cut (Вычитание), Chamfer (Фаска) и Weld (Объединить) из свитков Edit Geometry (Редактирование геометрии) и Edit Vertices (Редактирование вершин). На рис. 12.100 представлено расположение ребер, которое получилось у меня. После корректировки формы дверной ручки сплайн, по которому она строилась, можно спрятать или удалить. Можно также спрятать внутренние полигоны ручки, выделив их в отдельный элемент.

Рис. 12.100. Схема расположения ребер, формирующих элемент ручки двери

Далее все как обычно: выделите ребра по периметру образовавшегося отверстия и скопируйте их внутрь. После этого выделите ребра, расположенные на гранях отверстия, и примените к ним инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 1. После создания

661

Моделируем BMW

отверстия для ручки можно перейти к моделированию самой ручки двери. Для этого откройте ранее спрятанную внутреннюю часть и воспользуйтесь тем же методом копирования полигонов с последующим построением фаски по ребрам, образующим прямой угол. Но прежде разделите внутреннюю часть ручки на два элемента (как это есть в реальном автомобиле) и добавьте посередине нижнего углубление, построив ряд полигонов, которые смещены относительно края (рис. 12.101). Ручку второй двери моделировать значительно проще. Достаточно скопировать внутреннюю часть уже построенной, уточнить ее положение в пространстве относительно второй двери и затем в окне проекции Front (Спереди) с помощью инструмента Cut (Вычитание) построить по сплайну разрезы в поверхности двери, как это уже делалось для задней двери. После уточнения положения вершин в пространстве выделите внутреннюю часть и удалите ее. В результате образуется отверстие для ручки. Далее выделите ребра по периметру отверстия и, скопировав их внутрь, придайте объем. Как и раньше, к ребрам, образующим грань, примените Chamfer (Фаска) для их закругления. Расположите внутреннюю часть ручки относительно отверстия и сделайте последние уточнения геометрии, при необходимости подкорректировав положение вершин. Если все проделано правильно, у вас должна получиться ручка двери, показанная на рис. 12.102. Когда речь идет о моделировании автомобиля с высокой степенью детализации, многие мелкие детали, представленные в низкополигональной модели текстурами, необходимо строить с помощью геометрии. Займемся моделированием таких незначительных деталей, присутствие которых сделает модель более интересной и реалистичной, — сделаем противотуманные и основные фары, указатели поворота, молдинги и ограждение. Для того чтобы построить противотуманную фару, нужно предварительно смоделировать посадочное место. Для этого выделите элемент решетки переднего бампера и, спрятав все остальное, разрежьте плоскость так, как показано на рис. 12.103, слева. Затем, выделив внутренние полигоны, примените к ним команду Extrude (Выдавливание) с величиной –100 (рис. 12.103, справа).

Рис. 12.101. Дверная ручка, представленная в каркасном виде в окнах проекций Front (Спереди) (вверху) и Perspective (Перспектива) (внизу)

Рис. 12.102. Визуализация ручки двери

662

Глава 12. Моделирование автомобиля

После этого выделите наружные грани и сделайте фаску для придания им закругления.

Рис. 12.103. Место для противотуманной фары до выдавливания полигонов (слева) и после (справа)

Рис. 12.104. Внешний вид противотуманной фары в окне проекции Perspective (Перспектива)

Постройте фару, используя примитив Sphere (Сфера) со значением параметра Radius (Радиус), равным 40, и количеством сегментов — 19. Преобразуйте сферу в Editable Poly (Редактируемая полигональная поверхность). На уровне полигонов выделите до середины левую сторону сферы и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), сожмите ее по оси X примерно в четыре раза. Затем снимите выделение с внешнего ряда полигонов (в окне проекции Front (Спереди) или Top (Сверху), удерживая нажатой клавишу Alt, обведите те полигоны, с которых нужно снять выделение) так, чтобы остались только те, которые в дальнейшем будут образовывать стекло. Примените к выделенным полигонам команду Bevel (Выдавливание со скосом) размером –1,5 и высотой –1 и выделите построенный скос в отдельный объект, используя команду Detach (Отделить). Увеличив количество разбиений полигонов для обводки вокруг стекла, получим окончательную форму противотуманой фары (рис. 12.104). Перейдем к моделированию передних фар. Чтобы не повторять сделанную работу, скопируйте противотуманную фару и масштабируйте ее в окне проекции Left (Слева).

Рис. 12.105. Внешний вид блок-фары в окне проекции Perspective (Перспектива)

Блок-фара имеет три самостоятельных рефлектора со стеклами-рассеивателями, значит, копий должно быть три. Расположены они уступами, повторяя форму изгиба стекла, закрывающего блок-фару. Блок-фаре необходимо сделать корпус. Смоделируйте самую примитивную форму, напоминающую корпус фары (рис. 12.105), и на этом можно закончить.

Моделируем BMW

663

Вдоль боковых сторон автомобиля расположены декоративные элементы — молдинги. Для их построения нужно создать дополнительные ребра. Сделайте разрез через две двери с заходом на переднее крыло. После этого выделите полигоны, составляющие молдинг, и разделите выделение на отдельные элементы (два на дверях и один на крыле). Далее выполните операции по созданию фасок. Аналогичным образом сделайте сигнал поворота, расположенный на переднем крыле (рис. 12.106). Элементы ограждения на крыше автомобиля можно не моделировать, но, если вы хотите это сделать, самым простым способом будет построение этих элементов с помощью примитива Box (Параллелепипед). Параллелепипед должен иметь 10 сегментов по длине, чтобы можно было сделать закругления на краях и небольшой изгиб по длине. Параллелепипед необходимо конвертировать в Editable Poly (Редактируемая полигональная поверхность) и дальнейшее построение вести на уровне подобъектов. С помощью метода выдавливания полигонов строятся опоры. Там, где необходимо, строится фаска для придания формы (рис. 12.107). Дополнительно нужно смоделировать заднюю и передние щетки, номерные знаки, эмблемы и большую часть внутреннего наполнения машины. Все это необходимо, чтобы автомобиль имел законченный вид. Однако это выходит за рамки упражнения. Если вы прошли все вышеописанные стадии моделирования, для вас не должно составить труда выполнение этих деталей самостоятельно. После создания всех необходимых элементов автомобиля нужно собрать их воедино. Для построения цельного кузова автомобиля примените к построенной половине модификатор Symmetry (Симметрия) или сделайте копию с помощью Mirror (Зеркальное отображение). Таким же образом скопируйте все симметричные элементы автомобиля, сделанные как отдельные объекты моделирования.

Рис. 12.106. Визуализация фрагмента автомобиля с элементами боковой отделки

Рис. 12.107. Элемент ограждения на крыше автомобиля

После добавления к автомобилю колес, текстурирования и добавления фона модели вы можете получить изображение, похожее на рис. 12.108.

664

Глава 12. Моделирование автомобиля

Рис. 12.108. Окончательная визуализация автомобиля стандартными средствами с использованием фотографии заднего плана

ПРИМЕЧАНИЕ Если у вас возникли вопросы по созданию модели автомобиля, обратитесь к файлу упражнения car.max, расположенному в папке Examples\Глава 12\Car прилагаемого к книге DVD, и проанализируйте готовую модель или ее отдельные элементы.

Глава 13.

Текстурирование автомобиля • Основы текстурирования автомобиля • Текстурирование деталей автомобиля

После построения модели автомобиля необходимо ее текстурировать. Именно удачные текстуры придают модели вид, который может претендовать на реалистичность. Текстурирование — не менее сложная и увлекательная задача, чем моделирование. В данной главе я хочу высказать свою точку зрения на текстурирование модели, в частности такой сложной, как автомобиль. Глава разделена на два упражнения. В первом рассматриваются общие вопросы и текстурирование кузова. Второе описывает текстурирование отдельных элементов. Текстурирование неразрывно связано с визуализацией, поэтому речь пойдет и о визуализации, и о текстурировании. Почему именно с визуализацией? Вы когда-нибудь обращали внимание, что на современных компьютерах даже сложная геометрия без текстур визуализируется достаточно быстро? Но стоит ввести в сцену материалы с трассируемыми отражениями, глобальное освещение или мягкие тени, и время визуализации увеличивается в несколько или даже десятки раз.

Основы текстурирования автомобиля Прежде чем начинать текстурировать, необходимо определиться, для каких целей нужна модель. Если для игр или Интернета, то лучше всего подойдет низкополигональная модель с качественными текстурами, скрывающими недочеты подобного моделирования (кроме того, модели для визуализации в реальном времени (Real Time1) чаще всего имеют одну текстуру на весь объект). Если размер (я имею в виду количество полигонов) и время визуализации не принципиальны, то больше внимания стоит уделить качеству модели, материалам и текстурам. При текстурировании модели я придерживаюсь той точки зрения, что все, что можно сгенерировать с помощью процедурных карт и окрасить с помощью материалов, должно быть сделано именно так. Такие материалы дают максимальное качество, возможность быстро менять параметры и не занимают дисковое пространство. Естественно, все должно быть в разумных пределах. Например, я не стал бы делать регистрационный номер на автомобиле методом моделирования с последующим наложением материалов, если он не будет основной деталью изображения. Не следует уделять слишком пристальное внимание и материалам, находящимся в салоне автомобиля, которые будут едва видны через стекло. Очень часто при попытке сделать реалистичные материалы процессор нагружается настолько, что тестовая визуализация длится часами. Хочу предостеречь вас от этого. Всегда существует возможность оптимизировать сцену. Например, исключить из визуализации колеса, которые расположены с противоположной стороны автомобиля, но у которых протектор на шине состоит из большого количества полигонов, а для диска используется такой материал, как Raytrace (Трассировка), и т. д. 1

Визуализация в реальном времени применяется в играх и программах с интерактивным управлением. Суть ее состоит в том, что объекты визуализируются почти мгновенно (без больших затрат времени на просчеты). При этом используются низкополигональные модели, а текстуры не могут быть составными и должны иметь небольшой объем, на них сразу присутствуют тени, отражения и т. д.

Основы текстурирования автомобиля

667

Прежде чем приступить к непосредственному выполнению практической задачи, обратимся к теории. Что делает модель автомобиля реалистичной? Прежде всего, материалы и отражения, затем свет и тени, которые помогают ощутить объем, и, конечно, окружение. Возьмем две фотографии автомобилей. На рис. 13.1 (смотрите также цветное изображение CH13_01.jpg на прилагаемом к книге DVD в папке Images\Глава 13) представлена фотография автомобиля с «жесткими» отражениями, что, с одной стороны, привносит некоторый хаос, а с другой — позволяет лучше ощутить пространство.

Рис. 13.1. Фотография автомобиля с «жесткими» отражениями

На фотографии видно, как отражаются в капоте деревья, небо, а на крыле и пороге — трава. Такие отражения могут появиться, только если краска покрыта слоем лака и отполирована. Создавая их на вашей модели, нужно иметь в виду, что вся геометрия должна быть построена безукоризненно, иначе в отражениях проявятся все неровности кузова. На второй фотографии (рис. 13.2) у автомобиля более «мягкое» распределение цвета по поверхности. Отражения не такие «жесткие» и почти незаметны, но вместе с тем видна глубина цвета, а выглядит автомобиль ничуть не хуже предыдущего. Судя по тени, падающей от автомобиля, фотография сделана в солнечный день, а отсутствие ярко выраженных отражений говорит о том, что поверхность имеет матовую основу. Равномерное распределение цвета по поверхности создает целостное восприятие автомобиля, от чего он только выигрывает.

668

Глава 13. Текстурирование автомобиля

Рис. 13.2. Фотография автомобиля с «мягким» распределением отражений

В качестве исходной модели для текстурирования я буду использовать модель BMW пятой серии (рис. 13.3), вы же можете применить другую модель или BMW из предыдущего упражнения по моделированию автомобиля.

Рис. 13.3. Модель автомобиля без текстур

669

Основы текстурирования автомобиля

Начните с расстановки освещения. Это первое, на что нужно обратить внимание при текстурировании. В данном случае вполне подойдет трехточечное освещение с ключевым тенеобразующим источником света. Сразу же настройте свет так, чтобы он не требовал значительной коррекции в процессе работы. Изменения настроек освещения, которые могут потребоваться в дальнейшем, должны быть незначительными, так как свет влияет на восприятие материалов и текстур, что, в свою очередь, может потребовать повторной настройки этих компонентов. Прежде чем заняться материалом для кузова автомобиля, присвойте какую-нибудь текстуру плоскости, на которой он стоит. Это может быть земля, асфальт или дорожная плитка, как в моем случае. ПРИМЕЧАНИЕ Создание плоскости, на которой стоит автомобиль, имеет важное значение для текстурирования. Это связано с тем, что полированная поверхность автомобиля должна отражать окружающие предметы. Часть окружения можно создать с помощью текстурных карт, но поверхность, на которой стоит автомобиль, лучше делать с помощью редактирования на уровне подобъектов, так как, кроме участия в отражениях, она принимает тени от объектов, создавая глубину пространства.

Напомню, как присваиваются текстуры объектам. 1.

Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке , находящейся на панели инструментов, либо выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов), либо нажав клавишу M.

2.

В окне Material Editor (Редактор материалов) щелкните на любой незадействованной ячейке с образцом материала.

3.

В свитке Maps (Карты текстур) нажмите кнопку None (Отсутствует) рядом с картой Diffuse Color (Цвет рассеивания).

4.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). В результате откроется окно диалога Select Bitmap Image File (Выбор растрового изображения).

5.

Выберите текстурную карту с изображением плитки.

В данном разделе речь идет о создании материала для кузова и лобового стекла автомобиля, поэтому все остальные объекты можно убрать со сцены, чтобы исключить их визуализацию. На рис. 13.4 представлены объекты сцены, с которыми мы будем работать.

Рис. 13.4. Кузов автомобиля, подготовленный для текстурирования

670

Глава 13. Текстурирование автомобиля

Теперь создайте простой материал. Для этого откройте окно Material Editor (Редактор материалов) и щелкните на любой незадействованной ячейке с образцом материала. В качестве тонированной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения) строку Multi-Layer (Многослойная раскраска). ПРИМЕЧАНИЕ Можно воспользоваться и другой тонированной раскраской, например Phong (По Фонгу), но в таком случае придется в качестве цвета рассеивания использовать карту Falloff (Спад), а у Multi-Layer (Многослойная раскраска) данная возможность заложена в базовых параметрах. Именно эта тонированная раскраска лучше всего позволяет управлять двумя независимыми подсветками и создавать вид окрашенной поверхности, покрытой воском или лаком.

В свитке Multi-Layer Basic Parameters (Основные параметры многослойной раскраски) задайте значения параметров раскраски, показанные на рис. 13.5. Задайте для параметров цвета свитка MultiLayer 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

Рис. 13.5. Свиток Multi-Layer Basic Parameters (Основные параметры затенения) со значениями параметров раскраски

(Второй слой отражения): Red (Красный) — 82, Green (Зеленый) — 116, Blue (Синий) — 227.

Обратите внимание, что вряд ли вид визуализированного вами автомобиля будет в точности соответствовать тому, что получится у меня. Я никогда не копирую старых настроек материалов, так как в другой сцене они обычно выглядят иначе. В связи с этим попробуем разобраться с настройками данного материала, чтобы понять, как он работает, и уметь создавать такие материалы самостоятельно. Цвет диффузного рассеивания Diffuse (Цвет рассеивания) — основной цвет, определяющий цвет материала. От него зависит то, какого цвета будет кузов вашего

Основы текстурирования автомобиля

671

автомобиля. Подбирается из возможных цветов заводской раскраски. Цвет окружающей среды Ambient (Цвет подсветки) — это обычно цвет, совпадающий с цветом диффузного рассеивания, но я предпочитаю использовать более темные тона (чаще всего черный). Параметры этого цвета некритичны. Параметр Color (Цвет) в области First Specular Layer (Первый слой отражения) определяет глянец поверхности автомобиля. Он создает впечатление окрашенной поверхности, находящейся под слоем лака. По тону он должен быть близким к цвету, но значительно ярче его. Параметр Color (Цвет) в области Second Specular Layer (Второй слой отражения) задает цвет в местах бликов. Он должен содержать в себе цвет диффузного рассеивания, но стремиться к белому. Остальные параметры — Level (Уровень), Glossiness (Глянец), Anisotropy (Анизотропия) и Orientation (Ориентация) — могут различаться в зависимости от геометрии и источников света. В основном они контролируют положение и размер бликов на поверхности объекта. Счетчик Diffuse Level (Уровень рассеивания), который расположен под параметром цвета диффузного рассеивания, позволяет дополнительно контролировать уровень яркости основного цвета.

Рис. 13.6. Фрагмент свитка Maps (Карты текстур) с картой Falloff (Спад) в качестве карты Reflection (Отражение)

Кроме того, вы можете применить в качестве карты Reflection (Отражение) карту Falloff (Спад) (рис. 13.6), использующую в качестве подматериала карту Raytrace (Трассировка). Материал усложняется картой Falloff (Спад) в качестве карты Reflection (Отражение), но с ее помощью можно получить контроль над интенсивностью отражений на поверхности. Настройки этой карты представлены на рис. 13.7. Цвета Front : Side (Перед : сторона) — градации серого, такие же, как и на рис. 13.7. График Mix Curve (Кривая смешивания) определяет степень участия обеих карт в отражении по мере удаления от середины объекта к его сторонам. Настройки карты Raytrace (Трассировка), являющейся составной частью карты Falloff (Спад), представлены на рис. 13.8. Они не

Рис. 13.7. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)

672

Глава 13. Текстурирование автомобиля

имеют почти никаких изменений относительно установок по умолчанию, кроме цвета окружающей среды в области Background (Фон), который я сделал светлоголубым.

Рис. 13.8. Свиток Raytracer Parameters (Параметры трассировки) настроек карты Raytrace (Трассировка)

После создания и настройки материала можно применить его к элементам кузова автомобиля. Для этого щелкните в окне Material Editor (Редактор материалов) на ячейке образца материала кузова и перетащите его в окно проекции на объект, который надо текстурировать. Затем можно провести тестовую визуализацию. Для этого выполните команду RenderingRender (ВизуализацияВизуализировать). В результате получится визуализированное изображение кузова автомобиля с материалом (рис. 13.9). Вполне возможно, вы обратили внимание, что в изображении отсутствуют блики. Пусть это вас не смущает — просто я отключил их в настройках источников света. В своей работе я предпочитаю выставлять блики позже с помощью специально созданных для этого источников света, когда можно управлять их местоположением на поверхности объекта и интенсивностью вне зависимости от основных источников света.

Проанализируем то, что получилось при визуализации. Цвет покрытия кузова соответствует тому, который предполагался для этого материала, но отражений по-прежнему не хватает. Появились отражения на боковых дверках, бампере и немного на капоте, но этого мало для реалистичной модели. Чтобы усилить ощущение пространства, нужно добавить отражения к кузову автомобиля. Рис. 13.9. Визуализированное изображение с примененным материалом для кузова

В настройках визуализатора или карты Raytrace (Трассировка) можно использовать текстурную карту в качестве карты Environment (Окружающая среда). Это, пожалуй, самый простой способ, но не лучший. Такое качество отражений скорее удовлетворяет требованиям второстепенных деталей, чем основных (рис. 13.10). Можно создать окружение, то есть построить дополнительно геометрию (деревья, здания, людей и т. д.), которая будет отражаться в кузове и стеклах автомобиля. Метод хороший, но чреват долгой визуализацией (ведь процессору придется дополнительно просчитывать все эти объекты). Кроме того, вам придется создавать данные объекты, если нет готовых (рис. 13.11).

673

Основы текстурирования автомобиля

Можно построить полусферу, накрывающую автомобиль на значительном расстоянии (чтобы внутрь поместилась не только машина, но и камеры с источниками света). Затем к внутренней стороне этой полусферы применить текстуру с панорамным изображением того, что должно отражаться в автомобиле (рис. 13.12). Кстати, после того, как будет построена такая полусфера, не забудьте повернуть ее нормали внутрь. Такой метод получения отражений, пожалуй, проще, но требует дополнительной работы с панорамной текстурой и ее местоположением на сфере.

Рис. 13.10. Отражения, полученные с помощью карты окружения

Последний способ — это организовать в сцене присутствие дополнительных плоскостей с текстурами, которые будут отражаться в кузове автомобиля. Он допускает относительную свободу в распределении отражений по поверхности кузова автомобиля и их контроль. Именно четвертый метод будет рассмотрен немного позже как самый подходящий для этой задачи. Сейчас создадим еще один материал — стекло. Это позволит настраивать отражения не только на кузове, но и в стеклах автомобиля, которые также являются отражающей поверхностью и занимают значительное место в восприятии целостного изображения. Можно использовать прозрачное стекло, но я предпочитаю немного тонированное, чтобы скрыть объекты салона, сделанные с малым количеством полигонов и не перегружающие сцену. И лобовое, и заднее стекла имеют темную обводку по периметру, поэтому начните работу с присвоения этим объектам текстурных координат. Рассмотрим данный процесс для лобового стекла (для заднего он аналогичен). Для этого выполните следующие действия.

Рис. 13.11. Отражения на капоте, полученные от объектов сцены

Рис. 13.12. Взаимное расположение объектов сцены при построении отражений от поверхности полусферы

674

Глава 13. Текстурирование автомобиля

1.

В любом окне проекции выделите лобовое стекло (оно должно быть отдельным объектом или как минимум самостоятельным элементом с уникальным значением параметра ID (Идентификатор материала)).

2.

Добавьте модификатор Unwrap UVW (Расправить UVW-проекцию), выполнив команду ModifiersUV CoordinatesUnwrap UVW (МодификаторыUV-координатыРасправить UVW-проекцию).

3.

Щелкните на кнопке Edit (Редактирование), в результате чего откроется окно редактирования текстурных координат.

4.

В меню окна редактирования текстурных координат выполните команду MappingFlatten Mapping (Проекционные координатыПлоские проекционные координаты) и, не меняя настроек в появившемся окне, нажмите OK.

В результате этих операций в окне редактирования должна появиться развертка лобового стекла, показанная на рис. 13.13. Полученную развертку необходимо скопировать в любую программу для работы с растровыми изображениями, где вы сможете сделать карту маски (например, Adobe Photoshop). СОВЕТ Если вы не пользуетесь программами захвата изображения с экрана, то копирование можно провести через буфер обмена, нажав клавишу Print Screen (расположена справа от ряда функциональных клавиш) и затем вставив экранную копию в файл с помощью сочетания клавиш Ctrl+V (стандартная операция вставки из буфера обмена). Рис. 13.13. Развертка проекционных координат лобового стекла автомобиля

Используйте скопированное изображение в качестве слоя фона в приложении растровой графики и сделайте маску для лобового стекла. Если помните, по периметру стекла идет темная, почти черная, тонировка — именно ее необходимо сделать, выполнив отступы на небольшое расстояние от краев контура стекла (рис. 13.14). Теперь сохраните полученное изображение в цветовом режиме Grayscale в любом доступном формате.

Рис. 13.14. Текстурная маска для материала лобового стекла

В качестве материала для лобового стекла я использую Blend (Смешиваемый),

675

Основы текстурирования автомобиля

где первый материал — тонированная окантовка стекла, второй — стекло, а маска (созданный в программе Adobe Photoshop файл GlassFront.jpg) управляет долей каждого материала в результирующем (рис. 13.15). Рассмотрим материал стекла подробнее. Параметр Material 1 (Материал 1) — окантовка лобового стекла. Здесь используется материал Standard (Стандартный) с прозрачностью, равной 80, и цветом, соответствующим тому, который вы хотите видеть на краях стекла. У меня это серо-коричневый цвет для Diffuse (Цвет рассеивания) и для Ambient (Цвет подсветки) с настройками Red (Красный) — 107, Green (Зеленый) — 103, Blue (Синий) — 99. В качестве карты Reflection (Отражение) я использовал карту Falloff (Спад), настройки которой идентичны установкам такой же карты, использованной при создании материала кузова, с той разницей, что величина параметра Reflection (Отражение) в данном случае составляет 45 (рис. 13.16). Параметр Material 2 (Материал 2) — средняя часть лобового стекла (его заполнение). Материал сделан по тому же принципу, что и окантовка, с той разницей, что я использовал немного другой цвет и величина прозрачности здесь составляет уже 35, а отражений — 80. Для Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) заданы следующие значения: Red (Красный) — 83, Green (Зеленый) — 72, Blue (Синий) — 49. Кроме того, я применяю двусторонний материал, а в качестве тонированной раскраски стандартного материала — Phong (По Фонгу), и, хотя большой разницы нет, раскраска по Фонгу позволяет получить более мягкое сглаживание. Если вы внимательно посмотрите на свиток Maps (Карты текстур), то заметите, что отсутствует карта преломления в строке Refraction (Преломление). Хотя стекло и является материалом, преломляющим свет, проходящий через него, но из-за его незначительной толщины и с учетом расстояния, с которого автомобиль будет визуализироваться, я не считаю нужным использовать в данном случае преломления. Эффект от их применения почти незаметен, а процессор получает ощутимую дополнительную нагрузку. При желании вы можете поэкспериментировать, используя карту Raytrace (Трассировка) или

Рис. 13.15. Настройки материала Blend (Смешиваемый) для лобового стекла

Рис. 13.16. Настройки первого материала стекла

676

Глава 13. Текстурирование автомобиля

Reflect/Refract (Отражение/преломление). На рис. 13.17 показаны использованные мною настройки второго материала для лобового стекла автомобиля.

Рис. 13.17. Настройки второго материала стекла

Продолжим наш разговор об организации сцены и вернемся к отражениям. Дальнейшую работу продолжите, используя четвертый способ получения отражений с помощью дополнительных плоскостей. Для этого поместите в сцену несколько примитивов Plane (Плоскость): один должен быть расположен сверху (имитировать небо), оставшиеся (от четырех до восьми) располагаются по сторонам автомобиля. Все плоскости должны находиться на небольшом расстоянии от автомобиля (рис. 13.18).

При создании плоскостей не забудьте проследить, чтобы их нормали были обращены к автомобилю. После этого присвойте плоскостям текстуры с изображениями, которые будут отражаться в автомобиле. Для всех плоскостей, кроме плоскости неба, я использовал одну фотографию, хотя можно и разные — дело вкуса.

Рис. 13.18. Расположение плоскостей с текстурами отражения в окнах проекций программы 3ds Max

677

Текстурирование деталей автомобиля

Перед выполнением визуализации необходимо изменить параметры всех плоскостей. Для этого выполните следующие действия. 1.

В любом окне проекции выделите все плоскости, построенные для генерации отражений.

2.

Щелкните правой кнопкой мыши на выделении, в результате чего откроется контекстное меню.

3.

Выберите пункт Object Properties (Свойства объекта).

4.

В области Rendering Control (Управление визуализацией) появившегося окна Object Properties (Свойства объекта) задайте параметрам объекта значения, показанные на рис. 13.19.

Теперь можно провести тестовую визуализацию. Если использовались темные фотографии, то вам, возможно, понадобится скорректировать положение текстур и изменить значение параметра Self-Illumination (Собственное свечение). Иногда приходится менять положение плоскости, имитирующей небо, чтобы найти оптимальные отражения.

Рис. 13.19. Настройка плоскостей отражения в области Rendering Control (Управление визуализацией)

После добавления плоскостей я поместил в сцену один источник света, который создает блики на бампере и передней части капота, а также дополнил автомобиль некоторыми деталями и провел тестовую визуализацию. На рис. 13.20 показано получившееся у меня изображение. На данном рисунке изображена только первая тестовая визуализация. Чтобы получить хорошие реалистичные отражения, нужно не только подобрать соответствующие текстуры, но и правильно их разместить относительно поверхности автомобиля. Желательно, чтобы текстуры и их отражения соответствовали окружающей среде вашей сцены. ПРИМЕЧАНИЕ На прилагаемом DVD в папке Examples\ Глава 13 находится файл Car_materials.mat, содержащий материалы кузова и стекла.

Рис. 13.20. Визуализация кузова и стекол автомобиля с отражениями

Текстурирование деталей автомобиля В предыдущем разделе мы рассмотрели создание основных материалов для текстурирования модели автомобиля. Сейчас займемся созданием материалов для более мелких, но не менее важных деталей. Начнем с хромированных деталей кузова.

678

Глава 13. Текстурирование автомобиля

Материал хрома хорошо получается тогда, когда он имеет не просто карту текстуры в качестве отражений, а действительно отражает окружающие предметы. Как вариант можно использовать плоскости с текстурами для создания отражений, о чем говорилось в предыдущем разделе. Для создания хрома откройте окно Material Editor (Редактор материалов) и щелкните на любой незадействованной ячейке с образцом материала. В качестве тонированной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения) строку Strauss (По Штраусу) и задайте значения, показанные на рис. 13.21. Выбранный метод раскраски по Штраусу предназначен для имитации полированных металлических поверхностей с блеском. Особенность данного метода заключается в том, что в местах, где нет отражений, поверхность выглядит черной (это необходимо для передачи материала хрома). Для параметра Color (Цвет) этого материала я использовал светло-серый цвет, который, на мой взгляд, лучше всего подходит для правильной передачи хромированных деталей автомобиля. Отражения генерируются картой Raytrace (Трассировка) с настройками по умолчанию. Имеет значение только величина параметра Reflection (Отражение). У меня это значение равно 60, у вас оно может быть другим (зависит от источников света и текстур, использованных для генерации отражений).

Рис. 13.21. Настройки материала хрома

Рис. 13.22. Визуализация хромированной решетки радиатора

После применения материала к хромированным объектам автомобиля можно выполнить тестовую визуализацию фрагмента кузова с решеткой радиатора (рис. 13.22). Теперь поговорим о картах выдавливания. На капоте и багажнике автомобиля находятся две эмблемы BMW, расположенные в небольших углублениях кузова. Моделировать такие углубления, используя геометрию, нецелесообразно, а с помощью карты Bump (Рельефность) это можно выполнить быстро и просто.

Текстурирование деталей автомобиля

679

Чтобы создать текстуру с картой выдавливания, выполните следующие действия. 1.

Щелкните в окне Material Editor (Редактор материалов) на образце материала кузова и, удерживая нажатой кнопку мыши, перетащите его в свободную ячейку.

2.

Присвойте этот материал капоту, перетащив его из Material Editor (Редактор материалов) на капот автомобиля в любом из окон проекций. Если сейчас выполнить визуализацию, ничего не изменится, так как на капоте будет тот же материал, что и раньше.

3.

В строке Bump (Рельефность) свитка Maps (Карты текстур) настроек материала капота щелкните на кнопке None (Отсутствует).

4.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Усовершенствованный градиент).

5.

Настройте параметры карты, как показано на рис. 13.23.

6.

Установите значение величины выдавливания равным 6.

Разберемся с настройками этой карты. Значение Radial (Радиальный) в списке Gradient Type (Тип градиента) необходимо, чтобы градиентная карта получилась в виде круга. Это карта выдавливания, поэтому используются градации серого цвета. Положение ползунков зависит от размера круга и текстурных координат, присвоенных капоту.

Рис. 13.23. Настройки карты Gradient Ramp (Усовершенствованный градиент) для получения круглого выдавливания на капоте автомобиля

Для сглаживания краев применяется размытие. Отключите повторение текстуры, так как у вас только один круг с выдавливанием (снимите флажки Tile (Повторить) в свитке Coordinates (Координаты)). Что касается текстурных координат, то нужно применить к капоту модификатор UVW Mapping (UVW-проекция), после чего сдвинуть и масштабировать Gizmo (Габаритный контейнер Гизмо) (на уровне подобъектов модификатора) так, чтобы текстура легла на капоте под значком логотипа (рис. 13.24). Этот способ можно использовать и для других целей, например обозначить крышку бака или сделать на бампере элементы крепления. Таким образом вы сможете улучшить внешний вид модели, не прибегая к дополнительной геометрии.

680

Глава 13. Текстурирование автомобиля

Рассмотрим вариант изготовления материала для передних фар и задних фонарей.

СОВЕТ Если в сцене фары не будут видны слишком близко, то вполне достаточно просто наложить текстуру. Однако если вы хотите иметь по-настоящему хорошее изображение, то придется моделировать почти все элементы реальной фары. Рис. 13.24. Положение текстуры на капоте автомобиля (слева) и его визуализация (справа)

Начнем со стекла, закрывающего блокфару (у вас может быть другая модель автомобиля, без такого стекла), — прозрачного и гладкого по всей поверхности. Исходя из этого, создадим простой прозрачный материал с высокой отражающей способностью для получения на поверхности бликов. В качестве тонированной раскраски стандартного материала из раскрывающегося списка свитка Shader Basic Parameters (Основные параметры затенения) выберите строку Anisotropic (Анизотропный). Я использовал анизотропную раскраску благодаря ее возможности управлять положением и формой блика. Настройки материала стекла представлены на рис. 13.25.

В качестве Diffuse (Цвет рассеивания) и окружающей среды Ambient (Цвет подсветки) использован светло-коричневый цвет с настройками Red (Красный) — 101, Green (Зеленый) — 92, Blue (Синий) — 77. На этом можно было бы закончить наРис. 13.25. Настройки материала стройку материала, но я решил немного наружного стекла блок-фары улучшить его, добавив в качестве цветового фильтра карту Falloff (Спад). Даже со стандартными настройками эта карта позволяет получить затемнения на краях, что придает стеклу более естественный вид. С помощью карты Raytrace (Трассировка) можно создать на поверхности отражения окружающих предметов. В этой карте настройки также не менялись. На рис. 13.26 показана визуализация фрагмента автомобиля со стеклом фар.

Текстурирование деталей автомобиля

Займемся внутренним пространством фары. Начните с указателей поворота. Воспользуйтесь стандартным материалом, для чего щелкните в окне Material Editor (Редактор материалов) на ячейке со свободным образцом. В свитке Maps (Карты текстур) выбранного материала примените две одинаковые карты Gradient Ramp (Усовершенствованный градиент) в качестве карты Diffuse Color (Цвет рассеивания) и в качестве карты Bump (Рельефность). Параметры карты, которую я использовал для этих целей, показаны на рис. 13.27.

681

Рис. 13.26. Визуализация стекла фар

Величина выдавливания данной карты в свитке Maps (Карты текстур) в моем случае равна 190. Параметры для использованных в градиенте цветов: светло-коричневый: R — 220, G — 124, B — 0; темнокоричневый: R — 126, G — 59, B — 0. Обычно этих настроек более чем достаточно (рис. 13.28), но, если вы хотите визуализировать отдельные элементы автомобиля, вам, возможно, придется улучшить карту выдавливания, сделав более сложный градиент.

Рис. 13.27. Параметры настройки улучшенного градиента для карт Diffuse Color (Цвет рассеивания) и Bump (Рельефность)

Чтобы получить реалистичное изображение фары, нужно иметь рифленое стекло, хромированный корпус и нечто вроде лампочки (вместо нее может быть использован хромированный шар). Материал хрома у вас уже есть. Если вы выполняли упражнение по моделированию автомобиля, то должны помнить, что модель фары состояла из корпуса, стекла и хромированной окантовки. Стекло — Рис. 13.28. Фрагмент фары это полусфера, у которой в параметрах с указателем поворота отключена возможность принимать и отбрасывать тени. Чтобы выставить данные настройки, щелкните правой кнопкой мыши на объекте стекла фары и в появившемся контекстном меню выберите пункт Object Properties (Свойства объекта). В области Rendering Control (Управление визуализацией) открывшегося окна снимите флажки Receive Shadows (Принимать тени) и Cast Shadows (Отбрасывать тени). На рис. 13.29 представлены настройки материала рифленого стекла для автомобильной фары.

682

Глава 13. Текстурирование автомобиля

Для Diffuse (Цвета рассеивания) и Ambient (Цвет подсветки) использован светлосерый цвет. Коэффициент преломления оставлен заданным по умолчанию, но при желании его можно увеличить до 2. Величина параметра Opacity (Непрозрачность) равна 50. Здесь тоже могут быть варианты, но разница значений должна быть небольшой. Чтобы получить на стекле рифленую поверхность, необходимо использовать в качестве карты Bump (Рельефность) карту Checker (Шахматная текстура). Параметры этой карты представлены на рис. 13.30.

Рис. 13.29. Настройки материала стекла автомобильной фары

Рис. 13.30. Параметры карты рельефности для стекла фары

В свитке Checker Parameters (Параметры шахматной текстуры) цвет Color #1 (Цвет 1) — черный, а Color #2 (Цвет 2) — белый. ПРИМЕЧАНИЕ Для карты Bump (Рельефность) обычно используется монохромное изображение (хотя может быть применена цветная карта). При этом 100 % черный цвет не влияет на величину выдавливания, в то время как белый создает максимальный эффект. Градации серого находятся между максимальным и минимальным выдавливанием, в зависимости от интенсивности цвета. Величина эффекта рельефности при использовании карты Bump (Рельефность) ограничена, в связи с чем при необходимости большего выдавливания применяйте модификатор Displace (Смещение) или моделирование неровностей.

683

Текстурирование деталей автомобиля

Количество повторений шахматного поля по вертикали и горизонтали (заданное, например, в полях Tiling (Повтор)) вы можете ставить свое, так же как и любое графическое изображение рельефа в качестве текстуры. Эта же карта (карта рельефности) должна быть использована как составляющая карты Raytrace (Трассировка) для преломлений (рис. 13.31). При текстурировании фары я пытался приблизиться к внешнему виду фар автомобиля BMW. Вам, возможно, понадобится делать другие форму и текстуры, если вы работаете с другой моделью или автомобилем иной марки. СОВЕТ

Рис. 13.31. Параметры трассировки для карты Refraction (Преломление)

Более сложный рисунок неровностей можно получить, используя рисованные карты выдавливания.

На рис. 13.32 показана визуализация фар после применения к ним материала стекла и хрома. Теперь мы можем визуализировать всю блок-фару вместе с геометрией кузова. Возможно, вам придется скорректировать интенсивность освещения или немного изменить параметры материала фары. Окончательная настройка материала проводится в процессе визуализации всех элементов автомобиля в целом. На рис. 13.33 представлен результат визуализации фрагмента передней части текстурируемого автомобиля.

Рис. 13.32. Визуализация фар

Рис. 13.33. Визуализация блок-фары вместе с передней частью автомобиля

Теперь займемся задними фарами. Из-за того, что форма рельефа этих фар значительно сложнее, чем передних, придется рисовать текстуру выдавливания. Но прежде нужно присвоить элементам текстурные координаты. Обычно я использую модификатор Unwrap UVW (Расправить UVW-проекцию). О том, как это делается, говорилось в предыдущем упражнении на примере лобового стекла, поэтому я лишь напомню последовательность работы.

684

Глава 13. Текстурирование автомобиля

1.

Выделите заднюю фару (достаточно одной, затем можно будет сделать зеркальную копию относительно оси автомобиля).

2.

Примените к выделению модификатор Unwrap UVW (Расправить UVW-проекцию).

3.

Выполните развертку текстурных координат.

4.

Сделайте снимок окна с разверткой с помощью клавиши Print Screen или любой программой захвата изображения экрана.

5.

Вставьте изображение в нижний слой приложения редактирования растровой графики (например, Adobe Photoshop) и создайте карту выдавливания.

6.

Сохраните монохромное изображение в формате, доступном программе 3ds Max, например PNG (рис. 13.34). Форма и рисунок карты рельефа должны соответствовать задней фаре настоящего автомобиля.

Рис. 13.34. Карта выдавливания для задней фары автомобиля

Кроме карты рельефа, для материала стекла задней фары вам понадобятся две маски. Они необходимы, чтобы разделить цвета, присутствующие в фаре. Одну маску сделайте с помощью карты Gradient Ramp (Усовершенствованный градиент), а вторую выполните в виде черно-белого изображения в программе Adobe Photoshop. Первая будет разделять цвета по горизонтали, а вторая выделит белый (рис. 13.35).

Данный материал будет немного сложнее предыдущих, но принцип его создания такой же. Как и в случае с передней фарой, нужно позаботиться, чтобы задняя фара имела корпус с хромированным материалом, а стекло не отбрасывало тени. Обычно внутреннее пространство Рис. 13.35. Маска для разделения цвета, корпуса фары разделено на части пересозданная в программе Adobe Photoshop городками, и если смоделировать их, то можно улучшить вид будущей модели. Если вы не планируете визуализацию крупных планов, то моделировать внутреннее пространство не обязательно. На рис. 13.36 представлено изображение фрагмента окна Material Editor (Редактор материалов) с материалом стекла задней фары. Рассмотрим подробнее, из чего состоит этот материал и его основные настройки. 

Значение параметра Index of Refraction (Коэффициент преломления) равно 2,5. Обычно для стекла это много, но с таким коэффициентом оно смотрится лучше.

685

Текстурирование деталей автомобиля 

Параметр Filter (Цвет фильтра) свитка Extended Parameters (Дополнительные параметры) имеет карту Filter Color (Цвет фильтра) и определяет цвет всего объекта. Цвет фары состоит из двух основных: красного и оранжевого, поэтому для их взаимного расположения на объекте использована карта Mix (Смешивание).



Карта Bump (Рельефность) создает на поверхности рельеф. Это монохромное изображение, созданное вами в программе Adobe Photoshop.



Карта Refraction (Преломление) делает стекло прозрачным.

Рассмотрим отдельно каждую карту. В качестве цвета фильтра я решил использовать составную карту, хотя проще сделать трехцветную растровую карту. Проще, но не лучше, так как в процессе настройки материала такую карту приходится несколько раз переделывать: в зависимости от настроек материала и освещения меняется цвет объекта при визуализации. Параметры карты цветового фильтра Mix (Смешивание) показаны на рис. 13.37. Эта карта разделяет геометрию на две части с помощью Gradient Ramp (Усовершенствованный градиент) (рис. 13.38).

Рис. 13.37. Параметры первой карты смешивания

Рис. 13.36. Параметры материала стекла задней фары

Рис. 13.38. Параметры карты Gradient Ramp (Усовершенствованный градиент)

686

Рис. 13.39. Параметры карты смешивания для второго цвета стекла

Глава 13. Текстурирование автомобиля

В верхней части — оранжевый цвет (параметр Color #1 (Цвет 1)) с настройками: Red (Красный) — 244, Green (Зеленый) — 147, Blue (Синий) — 42. Нижняя часть задней фары — темно-красного цвета. В ней присутствует белый параллелепипед, поэтому придется еще раз воспользоваться картой Mix (Смешивание). В данном случае образец цвета Color #2 (Цвет 2) не имеет значения, так как он определяется второй картой смешивания. Карта Gradient Ramp (Усовершенствованный градиент) содержит два цвета — черный и белый, которые задают область смешивания. Положение ползунков подбирается опытным путем так, чтобы линия соединения цветов оказалась в нужном месте. Кроме того, необходимо повернуть отображение карты на 90° по оси W.

Рис. 13.40. Настройки карты преломления

В карте Mix (Смешивание) должны быть определены два цвета. Маска регулирует, как они будут между собой взаимодействовать (рис. 13.39). Если помните, это составной цвет нижней части задней фары. Здесь Color #1 (Цвет 1) имеет параметры: Red (Красный) — 185, Green (Зеленый) — 24, Blue (Синий) — 0. Второй цвет (Color #2 (Цвет 2)) — белый.

Рис. 13.41. Иерархия материала стекла задней фары

Карта Refraction (Преломление) почти не требует настроек. Вам только необходимо использовать в области Background (Фон) в качестве карты окружающей среды карту, подготовленную для выдавливания (рис. 13.40). На рис. 13.41 представлена иерархия материалов, иллюстрирующая, как материалы взаимодействуют между собой и в какой последовательности накладываются.

Рис. 13.42. Результат визуализации задней фары в составе кузова автомобиля

Визуализируем изображение. Нужный результат получился не сразу, но с помощью карты Mix (Смешивание) я быстро подобрал необходимые цвета (рис. 13.42).

687

Текстурирование деталей автомобиля

Последнее, о чем я хочу рассказать в этом упражнении, — текстурирование автомобильного колеса. Начнем с резины. На рис. 13.43 представлены настройки материала. Тонкость создания хорошего материала шины заключается в карте Falloff (Спад) для Diffuse Color (Цвет рассеивания). Не менее важно использовать карту Bump (Рельефность) для протектора (если вы не сделали его с помощью редактирования на уровне подобъектов) или для надписей на боковой стороне шины, но только карта Falloff (Спад) делает реалистичным материал резины. С помощью этой карты (рис. 13.44) можно получить на краях покрышки дымку, которая существует на реальных колесах. Первый цвет определяет основной цвет шины. У меня это темно-серый цвет с параметрами: Red (Красный) — 72, Green (Зеленый) — 72, Blue (Синий) — 72. Второй цвет — цвет дымки. Его параметры: Red (Красный) — 173, Green (Зеленый) — 180, Blue (Синий) — 182. Возможно, вам понадобится немного другой оттенок (все зависит от освещения), но принцип текстурирования от этого не меняется.

Рис. 13.43. Настройки материала шины

Рис. 13.44. Параметры карты Falloff (Спад) для шины

Карту рельефа можно нарисовать в любой программе растровой графики или получить с фотографии шины. В любом случае это должно быть монохромное изображение, где градации цвета, отличного от черного, будут создавать на объекте рельеф (рис 13.45). На рис. 13.46 представлен результат визуализации шины с примененным к ней материалом. Материал диска — хром, который вы делали в начале раздела. Если колесо не будет видно вблизи, я использую текстурную карту в качестве отражений. Это экономит время визуализации,

Рис. 13.45. Карта рельефа для шины

688

Глава 13. Текстурирование автомобиля

так как для просчетов карты Raytrace (Трассировка) требуются дополнительные компьютерные ресурсы.

Рис. 13.46. Визуализация шины

Рис. 13.47. Параметры материала Blend (Смешиваемый)

Иногда для дисков приходится применять логотипы и карты Bump (Рельефность). Я пользуюсь для этих целей материалом Blend (Смешиваемый). Этот материал по своим настройкам похож на рассмотренную выше карту Mix (Смешивание). В качестве примера я представляю вашему вниманию настройки данного материала (рис. 13.47) для логотипа, выполненного на диске колеса. Вторым материалом в данном случае является стандартный материал черного цвета, хотя могут быть применены любые другие карта текстуры или материал. Mask (Маска) — это черно-белое растровое изображение логотипа (рис. 13.48). Именно она определяет взаимное смешивание двух материалов. На рис. 13.49 представлен фрагмент модели колеса с примененным материалом Blend (Смешиваемый). ПРИМЕЧАНИЕ На прилагаемом DVD в папке Examples\ Глава 13 находятся файлы Wheel.mat с материалом шины и диска и Car_details.mat с материалами деталей автомобиля.

Рис. 13.48. Маска для смешивания двух материалов

Рис. 13.49. Фрагмент визуализации диска

На этом упражнение по визуализации автомобиля можно считать законченным. Иногда я оставляю на несколько дней настройку визуализации, а затем возвращаюсь к ней, пытаясь по-новому осмыслить сделанную работу. Это помогает увидеть ошибки. Часто полезно показать работу посторонним людям и выслушать их замечания.

Глава 14.

Моделирование головы • Моделирование головы с помощью модуля Surfacetools • Моделирование головы с помощью полигонов • Моделирование ресниц • Использование UV-проецирования для полигональной модели головы • Текстурирование головы человека • Создание волос

Моделирование головы — не только интересное, но и сложное занятие, которое по плечу только опытным пользователям трехмерной графики. Все описанные в этой главе операции требуют предварительной подготовки. В двух первых разделах рассмотрено моделирование с помощью модуля Surfacetools и полигонального моделирования. Они описывают принципы моделирования головы со средним уровнем детализации, достаточного для создания реалистичного образа. В следующих разделах рассказано, как создаются текстуры лица человека. Кроме того, рассмотрено, как создать волосы для модели.

Моделирование головы с помощью модуля Surfacetools Разработанный Питером Ватье (Peter Watje) для компании Digimation модуль Surfacetools стал незаменимым средством для моделирования объектов органического происхождения. При работе с ним вы размещаете сплайны в соответствии с контурами модели, после чего применяете один из двух инструментов Surfacetools — модификатор поверхности Surface (Поверхность) — и превращаете сплайны в готовую модель. Как только вы начнете работать с этим модулем, вы поймете, насколько просто можно создавать сложные модели. Для того чтобы перейти к моделированию головы, вам необходимо обладать двумя ее фотографиями в фас и профиль. ПРИМЕЧАНИЕ При желании вы можете воспользоваться фотографиями Front.jpg и Side.jpg, подготовленными для работы с данной главой, которые находятся в папке Examples\Глава 14 прилагаемого к книге DVD.

На рис. 14.1 представлены фотографии, с которыми буду работать я.

Рис. 14.1. Фотографии головы в фас (слева) и профиль (справа), подготовленные для моделирования

Моделирование головы с помощью модуля Surfacetools

691

Обратите внимание, что оба вида должны иметь одинаковые размер и пропорции (не забывайте о том, что мы моделируем в трехмерном пространстве). Кроме того, размер изображений должен быть достаточно большим, чтобы были хорошо видны детали (я использовал 1000 Ч 1100 пикселов). Только после того, как будут выполнены все приготовления в программе редактирования растровых изображений, можно переходить к работе в 3ds Max. Практически любое моделирование такого рода начинается с создания виртуальной студии. Для данного случая подойдет самое примитивное пересечение двух плоскостей (рис. 14.2).

Рис. 14.2. Виртуальная студия

Моделирование головы с помощью сплайнов можно вести несколькими способами. Они похожи друг на друга и отличаются только последовательностью моделирования и расположением кривых на поверхности объекта. Я постараюсь как можно доступнее описать весь процесс моделирования так, как выполняю его сам. Подход к моделированию достаточно прост — сначала создадим все необходимые сплайны в окне проекции Front (Спереди), а затем скорректируем их положение в окнах проекций Left (Слева) и Top (Сверху), после чего применим модификатор создания поверхности Surface (Поверхность). Приступим к моделированию. Во-первых, так как мы имеем дело с симметричной моделью, достаточно построить только одну ее половину. Во-вторых, можно создать отдельные части головы и затем соединить их в единое целое. Я предпочитаю отдельно строить только ухо и волосы (если они делаются геометрией). Прежде всего выполните следующие действия. 1.

Для активизации инструмента построения сплайна выполните команду Create ShapesLine (СозданиеФормыЛиния).

692

Рис. 14.3. Настройки для создания сплайна

Глава 14. Моделирование головы

2.

Установите в свитке Creation Method (Метод создания) настроек объекта Line (Линия) переключатели Initial Type (Начальный тип) и Drag Type (Вершина при перетаскивании) в положения Smooth (Сглаживание) для построения сглаженных вершин в процессе создания сплайна (рис. 14.3).

3.

Чтобы видеть вершины сплайна не только при построении, в свитке Display Properties (Свойства отображения) вкладки Display (Отображение) командной панели установите флажок Vertex Ticks (Метки вершин) (рис. 14.4).

ПРИМЕЧАНИЕ Задать отображение вершин сплайна можно также в области Display Properties (Свойства отображения) окна Object Properties (Свойства объекта) для объекта Line (Линия).

Начнем с построения контура глаза (хотя можно начинать создание модели с любой ее части). Для этого при активном инструменте построения линии щелкните в окне проекции Front (Спереди) на левой части глаза и постройте восемь точек по периметру разреза глаза (рис. 14.5). СОВЕТ Рис. 14.4. Настройки отображения вершин в свитке Display Properties (Свойства отображения)

Выполняя упражнение по моделированию головы, не ставьте перед собой задачу сделать модель, похожую на изображение на фотографии, — на данном этапе значительно важнее научиться правильно моделировать, поэтому просто постарайтесь довести работу до конца, что само по себе нелегко. На начальном этапе будет достаточно, если общие формы модели будут соответствовать действительности.

Далее нужно построить новые сплайны вокруг уже существующего, но прежде необходимо сделать так, чтобы новый сплайн принадлежал той форме, которая была уже создана. Для этого надо снять флажок Start New Shape (Начать новую форму) в свитке Object Type (Тип объекта) (рис. 14.6). Можно построить еще один сплайн вокруг существующего. Для этого в окне проекции Front (Спереди), удерживая нажатой клавишу Shift, воспользуйтесь командой Scale (Масштабирование) контекстного меню и увеличьте копию сплайна. После этого на уровне редактирования вершин немного скорректируйте положение вновь созданных вершин. Новый сплайн можно также построить обычным способом (рис. 14.7).

Моделирование головы с помощью модуля Surfacetools

Рис. 14.5. Начало построения сплайнов в окне проекции Front (Спереди)

693

Рис. 14.6. Свиток Object Type (Тип объекта)

В процессе построения сплайна не забывайте о том, что для поверхности такого типа предпочтительно использовать по четыре вершины для образования патча, поэтому старайтесь их строить осознанно и в тех местах, которые обеспечивают именно такое построение. Кроме того, как уже говорилось выше, сплайны должны повторять характерные линии строящейся модели. После того как вы построите два сплайна по форме разреза глаза, создайте еще один вокруг глаза, но уже от середины переносицы, далее по линии брови до окончания глазной впадины и обратно (рис. 14.8).

Рис. 14.7. Второй сплайн, построенный методом копирования

Рис. 14.8. Третий сплайн, построенный вокруг глаза

Для выполнения дальнейших операций построения сплайнов нужно настроить привязки к вершинам. Для этого щелкните правой кнопкой мыши на кнопке Snaps Toggle (Переключение привязок) . В результате откроется окно Grid and Snap Settings (Настройки сетки и привязок). Установите в нем флажки, как показано на рис. 14.9.

694

Глава 14. Моделирование головы

Теперь можно соединить построенные вершины поперечными сплайнами. Для этого в области New Vertex Type (Тип новых вершин) свитка Geometry (Геометрия) настроек сплайна установите переключатель в положение Smooth (Сглаживание), а затем щелкните на кнопке Create Line (Создать линию), после чего начните построение сплайнов (рис. 14.10).

Рис. 14.9. Окно Grid and Snap Settings (Настройки сетки и привязок) с настройками привязок

Рис. 14.10. Созданные поперечные сплайны

Продолжаем строить сплайны. На этот раз спуститесь немного вниз и постройте горизонтальный сплайн, проходящий по верхней части крыльев носа до середины уха, и сплайн по лобной кости вокруг глаза до пересечения с нижним сплайном. Не забывайте при этом выдерживать соответствие уже построенному количеству вершин (рис. 14.11). Продолжите построение сплайнов и соедините вершины двух вновь построенных с вершинами созданных ранее (рис. 14.12). Напомню, что пока все построения ведутся только в окне проекции Front (Спереди).

Рис. 14.11. Добавлены два новых сплайна

Рис. 14.12. Построены поперечные сплайны

Моделирование головы с помощью модуля Surfacetools

695

Создайте еще два сплайна в районе лобной кости. Количество вершин можно сократить до трех в верхнем и до четырех в нижнем сплайнах (рис. 14.13), так как в этом месте геометрия не имеет ярко выраженных изменений. Хочу напомнить, что мы строим модель одной половины головы, следовательно, крайние левые вершины сплайнов должны проходить по осевой линии, то есть через середину лба, носа, губ и подбородка. Далее создайте сплайн по контуру верхней части головы и соедините его с уже существующими (рис. 14.14).

Рис. 14.13. Два сплайна, построенные в области лобной кости

Рис. 14.14. Сплайны, построенные по контуру головы

Продолжите создание сплайнов в нижней части лица. Старайтесь строить вершины так, чтобы сплайны проходили по характерным линиям, образованным основанием и крыльями носа, а также губами и разрезом рта (рис. 14.15). Если бы мы стремились к большей детализации лица, для формирования геометрии носа и губ пришлось бы значительно увеличить количество вершин, но в данном задании постараемся обойтись минимальным. Постройте еще некоторое количество кривых, чтобы закончить формирование каркаса из сплайнов для нижней части лица (рис. 14.16). До сих пор вы создавали сплайны, опираясь лишь на их местоположение в двумерном пространстве (в окне проекции Front (Спереди)), не обращая внимания на то, как они связаны друг с другом и где находятся начало и конец сплайна. Корректировка этих параметров важна для правильного построения поверхности. Обратите внимание, как выделенный сплайн в верхней части головы (у вас это может быть в другом месте) описывает форму лица (рис. 14.17). Сплайн начинается в области верхней части уха, доходит до середины нижней части глаза, далее пересекает его и поднимается к верхней точке осевой линии, а затем снова спускается к височной кости. Если применить модификатор Surface (Поверхность) к таким сплайнам, на выходе получится много искажений поверхности,

696

Глава 14. Моделирование головы

Рис. 14.15. Построение сплайнов в нижней части лица

Рис. 14.16. Форма и расположение сплайнов в нижней части лица

с трудом поддающихся корректировке. Следовательно, необходимо внести изменения в структуру сплайнов. Правильнее будет сделать так, чтобы сплайны разделялись на горизонтальные и вертикальные, проходя через все лицо. Чтобы скорректировать геометрию сплайнов, выполните следующие действия. 1.

Выделите вершины там, где, по вашему мнению, должен заканчиваться сплайн (обычно на границах общей формы).

2.

В свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить), в результате чего сплайн будет разбит в этом месте на две части.

3.

В режиме редактирования подобъектов Segment (Сегмент) выделите те сегменты сплайнов, которые должны будут сформировать новый сплайн и подлежат объединению.

4.

Инвертируйте выделение, нажав Ctrl+I.

5.

В свитке Geometry (Геометрия) щелкните на кнопке Hide (Спрятать). В результате у вас останутся только выделенные сплайны (у меня это сплайны, описывающие контур лица) (рис. 14.18).

Рис. 14.17. Сплайн, описывающий форму лица

Рис. 14.18. Сплайны, выделенные для объединения

Моделирование головы с помощью модуля Surfacetools

697

6.

После того как будут спрятаны все лишние кривые, выделите вершины в местах соединения отдельных сплайнов и объедините их, щелкнув на кнопке Weld (Объединить) в свитке Geometry (Геометрия). В результате получится один непрерывный сплайн.

7.

Откройте ранее спрятанные сплайны, щелкнув в свитке Geometry (Геометрия) на кнопке Unhide All (Показать все).

8.

Повторите те же операции разбиения и слияния для других сплайнов.

На рис. 14.19 показано, как должны выглядеть некоторые из построенных и отредактированных сплайнов. Прежде чем перейти к расположению сплайнов в пространстве, произведем некоторые настройки, облегчающие процесс моделирования.

Рис. 14.19. Форма и расположение отредактированных сплайнов

1.

Задайте локальную систему координат, для чего в раскрывающемся списке Reference Coordinate System (Система координат) на главной панели инструментов выберите Local (Локальная).

2.

На панели инструментов щелкните на кнопке Select and Move (Выделить и переместить), а затем активизируйте перемещение по оси Z, для чего нажмите клавишу F7.

3.

В свитке Selection (Выделение) установите флажок Area Selection (Область выделения) (рис. 14.20), что поможет выбирать сразу две вершины в местах пересечения сплайнов.

После выполнения дополнительных настроек можно передвигать вершины в окне проекции бокового вида по оси Z в направлении линии профиля. Передвинуть в новое положение необходимо все вершины, кроме тех, которые расположены на вертикальном сплайне, очерчивающем контур головы в окне проекции Front (Спереди) (это не относится к серединной линии). На рис. 14.21 показано начало данного процесса. На данном этапе моделирования не стоит пытаться точно найти положение вершин в пространстве, для этого немного позже сделаем соответствующие уточнения. Продолжайте перемещать вершины в окне проекции вида сбоку до тех пор, пока не получится каркас из сплайнов, охватывающий лицевую часть (рис. 14.22).

Рис. 14.20. Настройки свитка Selection (Выделение)

698

Глава 14. Моделирование головы

Рис. 14.21. Начало работы по корректировке положения вершин в окне проекции бокового вида

Рис. 14.22. Положение сплайнов в пространстве на лицевой части головы

Продолжите наращивание сплайнов. На сей раз основные построения нужно вести в окне проекции вида сбоку. Включите привязку к вершинам и достройте сплайны на затылочной части головы. Здесь не требуется построения большого количества вершин — достаточно двух-трех дополнительных вершин на сплайн (рис. 14.23).

Моделирование головы с помощью модуля Surfacetools

699

Продолжите построение, соединив вновь созданные точки вертикальными сплайнами (рис. 14.24).

Рис. 14.23. Сплайны, построенные в окне проекции вида сбоку

Рис. 14.24. Соединенные вертикальные сплайны в окне проекции вида сбоку

Теперь нужно скорректировать положение вновь построенных точек в пространстве и проанализировать состояние сплайнов. Сплайны, которые имеют начало или конец в середине сетки, нужно объединить со сплайнами, к которым они примыкают (так же, как для лицевой части головы). После этого получится почти законченный каркас из сплайнов. На этом этапе моделирования можно посмотреть, какой будет поверхность разрабатываемой модели. Для этого выполните следующие действия. 1.

Выделите в любом окне проекции каркас из сплайнов (это должен быть один объект).

2.

Сделайте его копию, для чего выполните команду EditClone (ПравкаКлонировать) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при клонировании объектов Reference (Подчинение).

3.

Присвойте копии модификатор Surface (Поверхность), выполнив команду ModifiersPatch/Spline EditingSurface (МодификаторыРедактирование патчей/сплайновПоверхность).

4.

При необходимости в свитке Parameters (Параметры) установите флажок Flip Normals (Обратить нормали).

Выполненные действия приведут к тому, что в окнах проекций кроме студии будут присутствовать еще два объекта: каркас из сплайнов и его копия с поверхностью. Если позволяет производительность вашего компьютера, сделайте еще один, симметрично отображенный, экземпляр объекта с поверхностью, чтобы видеть всю геометрию головы (рис. 14.25).

700

Глава 14. Моделирование головы

После этого необходимо уточнить положение вершин в пространстве. Именно сейчас, когда видна вся поверхность, можно передвигать вершины каркасного объекта, чтобы привести геометрию головы к желаемому виду.

Рис. 14.25. Модель головы с каркасом из сплайнов и поверхностью

После коррекции положения вершин в пространстве можно переходить к построению отверстия в носу. Для этого в нижнюю часть носа добавьте сплайны, как показано на рис. 14.26. Внутренний сплайн, образующий отверстие, скопируйте вверх (внутрь носа), чтобы впоследствии создать верхнюю часть отверстия.

Соедините все точки с помощью дополнительных сплайнов. В нижней части носа с помощью команды Refine (Уточнить) свитка Geometry (Геометрия) создайте две дополнительные вершины, после чего соедините их сплайнами (рис. 14.27).

Рис. 14.26. Форма сплайнов, формирующих отверстие в носу

Рис. 14.27. Фрагмент носа с поверхностью

Перед моделированием уха нужно проанализировать всю поверхность и при необходимости внести изменения. Обратите внимание на характерные линии головы. Не забывайте контролировать весь процесс изменения положения вершин во всех окнах проекций. В районе серединной линии могут оставаться погрешности геометрии, связанные с тем, что обе половинки модели являются самостоятельными объектами. В остальном поверхность должна иметь законченный вид (рис. 14.28). Моделирование уха — завершающий и, пожалуй, самый сложный этап. Его сложность заключается в том, что в этой относительно маленькой форме сосредоточено большое количество сплайнов, и без соответствующего опыта моделирования трудно в них разобраться.

Моделирование головы с помощью модуля Surfacetools

701

На начальном этапе построения уха модель головы не понадобится и ее лучше спрятать. Чтобы сделать это, щелкните на модели правой кнопкой мыши и в появившемся контекстном меню щелкните на пункте Hide Selection (Спрятать выделенное). После этого в окне проекции вида сбоку создайте начальный сплайн для уха (рис. 14.29).

Рис. 14.28. Вид модели головы перед началом моделирования уха

Рис. 14.29. Начальный сплайн для построения модели уха

Размер сплайна произвольный — на данном этапе это неважно, впоследствии вы сможете масштабировать так, как вам будет нужно. Добавьте внутрь первого еще один сплайн и, сдвинув его немного относительно первого (в окне проекции Front (Спереди)), соедините с первым (рис. 14.30).

а

б

Рис. 14.30. Взаимное положение сплайнов уха в окнах проекций Right (Справа) (а) и Front (Спереди) (б)

Постройте еще один сплайн, но уже не замкнутый, а от точек, лежащих на внутреннем сплайне. Снова соедините созданный сплайн отрезками с теми, которые были построены ранее. Затем скорректируйте положение точек в пространстве (рис. 14.31).

702

Глава 14. Моделирование головы

Рис. 14.31. Начало формирования ушной раковины

Продолжите формирование ушной раковины. В окне проекции Top (Сверху), удерживая нажатой клавишу Shift, скопируйте последний сплайн, немного сдвинув его вправо. Затем снова соедините отрезками новый сплайн с предыдущими (рис. 14.32).

Рис. 14.32. Сплайны, описывающие внешний контур ушной раковины

По тому же принципу постройте еще один сплайн. На этот раз он должен находиться с внутренней стороны ушной раковины. Проще всего сделать такой сплайн с по-

Моделирование головы с помощью модуля Surfacetools

703

мощью копирования с масштабированием. И конечно, снова соедините вершины соседних сплайнов отрезками (рис. 14.33).

Рис. 14.33. Каркас из сплайнов, формирующий завиток ушной раковины

Постройте последний сплайн внутри уха для формирования противозавитка. Теперь можно скопировать объект Reference (Подчинение) аналогично тому, как это делали для головы, и применить модификатор Surface (Поверхность). Выполненные действия помогут вам увидеть все изменения, вносимые в модель уха, при этом вы можете продолжать работать со сплайнами (рис. 14.34). При создании сплайнов обращайте внимание на то, как они расположены в пространстве, для чего контролируйте построения во всех окнах проекций. Кроме того, время от времени поворачивайте модель в окне проекции Perspective (Перспектива) или Orthographic (Ортографическая), чтобы рассмотреть ее со всех сторон. При выполнении поперечных сплайнов не забывайте соединять вершины и объединять их с помощью команды Weld (Объединить). После того как соединятся все вершины, должно получиться изображение, похожее на рис. 14.35. Дальнейшее моделирование заключается в том, что нужно скорректировать положение построенных вершин. При необходимости преобразуйте вершины в тип Bezier Corner (Угол Безье), чтобы с помощью манипуляторов Безье было удобнее изменять форму сплайна. Для этого выделите необходимые для преобразования вершины и щелкните на них правой кнопкой мыши. В появившемся контекстном меню щелкните на строке Bezier Corner (Угол Безье).

704

Глава 14. Моделирование головы

Рис. 14.34. Модель уха после применения модификатора Surface (Поверхность)

Рис. 14.35. Поверхность модели уха после построения всех сплайнов

Не вдаваясь в детали, постарайтесь передать общую форму ушной раковины (рис. 14.36). Теперь можно присоединить ухо к голове. Откройте модель головы и сопоставьте ухо с ее размером и положением. Используя команды Move (Перемещение), Rotate (Вращение) и Scale (Масштабирование) контекстного меню, установите ухо на место (рис. 14.37).

Рис. 14.36. Готовая модель уха

Рис. 14.37. Положение модели уха относительно головы

СОВЕТ Вы можете воспользоваться виртуальной студией в качестве заднего фона для установки положения модели уха относительно головы.

Чтобы присоединить сплайны уха к модели головы, необходимо прежде всего сделать отверстие. Для этого выделите сплайны головы в том месте, где будет крепиться

Моделирование головы с помощью модуля Surfacetools

705

ухо, и удалите их (рис. 14.38). Затем в свитке Geometry (Геометрия) щелкните на кнопке Attach (Присоединить) и в любом окне проекции — на сплайнах уха для их присоединения. После присоединения уха к голове объедините вершины (где нет возможности сделать это напрямую, добавьте сплайны). СОВЕТ Объединяя вершины, старайтесь двигать вершины уха к вершинам головы. Таким образом вы сохраните геометрию головы, которая должна быть к этому времени выверенной.

На рис. 14.39 показана схема расположения сплайнов головы и уха после того, как были объединены их вершины.

Рис. 14.38. Сплайны головы, которые необходимо удалить

Рис. 14.39. Расположение сплайнов в области уха

После того как модель уха будет присоединена к голове, можно удалить все копии с поверхностью (если вы не сделали этого раньше), в результате чего у вас должна остаться только сплайновая модель половины головы. Сделайте симметричную копию сплайнов. Для этого на панели инструментов щелкните на значке Mirror (Зеркальное отображение) и выберите тип Copy (Независимая копия объекта) создаваемых при дублировании объектов. Для присоединения копии щелкните в свитке Geometry (Геометрия) на кнопке Attach (Присоединить) и в окне проекции — на созданной копии. ВНИМАНИЕ После присоединения одной половины объекта к другой в районе серединной линии окажутся два сплайна, один их которых нужно удалить.

706

Глава 14. Моделирование головы

Объедините вершины в районе серединной линии, для чего последовательно выделяйте вершины и в свитке Geometry (Геометрия) щелкайте на кнопке Weld (Объединить). После того как все вершины в районе серединной линии будут объединены, можно применить модификатор Surface (Поверхность). На рис. 14.40 показан окончательный вид визуализированной модели головы.

Рис. 14.40. Визуализация законченной модели головы

В заключение хочется напомнить о том, что мы делали модель головы со средним уровнем детализации. Если вам нужна более точная копия, необходимо увеличить количество сплайнов, используя тот же подход к построению модели.

ПРИМЕЧАНИЕ Для ознакомления с моделью головы и ее анализа можно загрузить файл surface_head. max, который находится в папке Examples\Глава 14 прилагаемого к книге DVD.

Моделирование головы с помощью полигонов В предыдущем упражнении вы познакомились с моделированием головы с помощью сплайнов. Продолжим эту тему и рассмотрим моделирование головы с помощью полигонов. Прежде всего я хочу познакомить вас с пластической анатомией, то есть с тем, что образует внешние формы головы.

Моделирование головы с помощью полигонов

707

Правильнее было бы начать с изучения черепа, затем мышц лица и т. д., но задание подразумевает лишь практическое моделирование, поэтому я оставляю эти материалы для самостоятельного освоения. У каждого человека голова по своему строению и пропорциям индивидуальна, тем не менее можно вывести усредненную схему человеческого лица. Осевая линия (вертикальная) делит голову пополам. Линия, проходящая через ось глаз, делит общую высоту головы пополам. Зрительно нижняя часть нам кажется больше, это происходит из-за значительного количества «деталей» в этой части лица. Если принять ширину глаза за единицу измерения а, то можно заметить, что высота головы укладывается в семь таких единиц, а высота носа равна высоте уха, расстоянию от носа до подбородка и высоте лба до волосяного покрова (каждый отрезок в отдельности равен двойной величине глаза). Расстояние между глазами, так же как и расстояние от глаз до крайних точек висков, равно величине глаза. Расстояние между крайними точками крыльев носа также равно этой величине. Расстояние от подбородка до линии рта в два раза больше, чем расстояние от линии рта до носа (b). Все приведенные выше измерения, конечно, являются схематичными — в жизни у каждого человека свои пропорции. Тем не менее можно использовать эту схему как отправную точку для создания модели, внося изменения по мере построения индивидуальной головы (рис. 14.41).

Рис. 14.41. Пропорции головы человека

Перейдем к моделированию. В данном упражнении мы не будем применять виртуальную студию, а только используем вышеописанные пропорции и воображение. К тому же задача не заключается в том, чтобы сделать модель, похожую на кого-то.

708

Глава 14. Моделирование головы

Прежде чем начать создавать модель, поговорим немного о полигональном моделировании. Как понятно из названия, это моделирование с помощью полигонов. Сами по себе полигоны создают грубую, ломаную форму, поэтому неотъемлемой частью моделирования форм органического происхождения является сглаживание. Достигается оно как минимум двумя способами: применением к объекту модификатора MeshSmooth (Сглаживание) или моделированием посредством Editable Poly (Редактируемая полигональная поверхность). Это почти одно и то же, за исключением незначительных нюансов. Существенная разница заключается в требованиях к ресурсам компьютера: использование Editable Poly (Редактируемая полигональная поверхность) примерно в полтора раза больше нагружает компьютер. Если это для вас существенно, я рекомендую моделировать посредством Editable Mesh (Редактируемая поверхность) с последующим сглаживанием. В данном задании я опишу моделирование с помощью Editable Poly (Редактируемая полигональная поверхность), как обладающее большими возможностями, но прежде расскажу о некоторых приемах работы с Editable Mesh (Редактируемая поверхность). Постройте Box (Параллелепипед). Его габариты должны приблизительно соответствовать пропорциям головы, а количество сегментов по длине, ширине и высоте задайте такое же, как показано на рис. 14.42. Настоятельно рекомендую строить параллелепипед так, чтобы его ось совпадала с началом координат. Это облегчит работу с зеркальными копиями объектов. В результате создания примитива начальная геометрия для моделирования головы должна выглядеть так, как изображено на рис. 14.43.

Рис. 14.42. Параметры объекта Box (Параллелепипед)

Рис. 14.43. Параллелепипед, с которого начинается моделирование головы

На этом операции с параметрическим объектом закончены. Преобразуйте параллелепипед в объект Editable Mesh (Редактируемая поверхность). Для этого щелкните на нем правой кнопкой мыши и в появившемся контекстном меню выполните команду Convert ToConvert to Editable Mesh (ПреобразоватьПреобразовать в редактируемую поверхность). После того как объект стал редактируемой поверхностью, вы сможете переключаться в режим редактирования подобъектов (вершин, ребер, полигонов).

709

Моделирование головы с помощью полигонов

Начните редактирование с того, что на уровне подобъектов Vertex (Вершина) передвиньте внутренние ряды вершин так, как показано на рис. 14.44. Чтобы начать формирование шеи, переключитесь в режим редактирования Polygon (Полигон) и выделите четыре нижних полигона. Воспользуйтесь инструментом Extrude (Выдавливание) из свитка Edit Geometry (Редактирование геометрии) командной панели и дважды выполните выдавливание (рис. 14.45). Таким образом вы подготовите объект для формирования шеи.

Рис. 14.44. Положение вершин после того, как внутренние ряды были передвинуты вперед

Рис. 14.45. Выдавленные полигоны для начала формирования шеи

Прежде чем продолжать моделирование, необходимо учесть некоторые моменты: 

голова симметрична, следовательно, можно моделировать только ее половину;



иметь в окнах проекций при моделировании только половину объекта неудобно, поэтому необходимо воспользоваться экземпляром, чтобы видеть модель головы целиком;



для удобства работы с каркасом модели используйте параметр текстуры Wire (Каркас).

Выделите в режиме редактирования Polygon (Полигон) левую сторону параллелепипеда и удалите ее. Для оставшейся части сделайте копию. Для этого выполните команду EditClone (ПравкаКлонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при клонировании объектов Reference (Подчинение). Присвойте копии какое-нибудь значимое имя, например Surface, после чего примените к ней модификатор MeshSmooth (Сглаживание). Для этого выполните команду ModifiersSubdivision SurfacesMeshSmooth (МодификаторыПоверхности с разбиениемСглаживание). В настройках модификатора из списка Subdivision Method (Метод разбиения) выберите NURMS, а параметру Iterations (Количество итераций), определяющему количество разбиений, укажите значение, равное 2 (рис. 14.46).

710

Глава 14. Моделирование головы

После того как экземпляру будет назначен модификатор сглаживания, можно сделать его зеркальную копию. Для этого щелкните на кнопке Mirror (Зеркальное отображение) , находящейся на панели инструментов. В открывшемся окне в качестве типа объекта, создаваемого при дублировании, выберите Instance (Привязка). В результате получатся две сглаженные зеркально расположенные половинки модели головы и еще одна без сглаживания (рис. 14.47).

Рис. 14.46. Параметры модификатора сглаживания поверхности

Рис. 14.47. Взаимное расположение трех половинок одного объекта

Создайте и примените к параллелепипеду материал с настройками, позволяющими отображать объект в каркасном виде (рис. 14.48). Используйте в качестве цвета диффузного отражения контрастные по отношению к объектам цвета (я, например, применил желтый на сером фоне). После назначения материала параллелепипеду объекты должны выглядеть так, как показано на рис. 14.49. Чтобы убедиться в правильности настроек, выделите любую вершину объекта, представленного сеткой (у меня это Box01), и попробуйте переместить ее в стороны. Если вслед за вершиной начинают зеркально двигаться обе внутренние половинки, значит, все выполнено удачно, в противном случае проверьте, правильно ли сделаны копии основного объекта. ПРИМЕЧАНИЕ Можно было обойтись и без третьего объекта, просто опустившись в стеке на уровень Editable Mesh (Редактируемая поверхность) и нажав в стеке модификаторов кнопку Show end result on/off toggle (Показать конечный результат вкл/выкл). Но лично я на начальном этапе моделирования предпочитаю работать так, как описано выше.

Моделирование головы с помощью полигонов

Рис. 14.48. Настройки материала для отображения в каркасном виде

711

Рис. 14.49. Отображение объектов в окне проекции Perspective (Перспектива) после применения материала

Все, о чем говорилось выше, относится к построению модели в Editable Mesh (Редактируемая поверхность). Если вы решите моделировать так же, как и я, в Editable Poly (Редактируемая полигональная поверхность), необходимо вернуться к состоянию параллелепипеда до того, как он был преобразован в редактируемую поверхность, и конвертировать его в Editable Poly (Редактируемая полигональная поверхность). Напомню, что это можно сделать, щелкнув на объекте правой кнопкой мыши и выполнив в контекстном меню команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). После преобразования сделайте зеркальную копию половинки объекта и в окне в качестве типа объекта, создаваемого при копировании, выберите Instance (Привязка). В свитке Subdivision Surface (Поверхности с разбиением) настроек основного объекта установите флажок Use NURMS Subdivision (Использовать NURMS-разбиения), а в области Display (Отображение) параметру Iterations (Количество итераций) задайте значение 2 (рис. 14.50). Дальнейшая работа состоит в том, чтобы строить форму от общего к частному. Она напоминает работу скульптора, когда из глыбы мрамора постепенно вырисовывается форма будущей скульптуры. Только вместо инструментов скульптора мы будем использовать инструменты для работы с полигонами, ребрами и вершинами. Переместите вершины так, чтобы придать объекту грубую форму головы (рис. 14.51). Обратите внимание, что не следует передвигать в вертикальной плоскости те вершины, которые находятся на линии глаз, — это положение серединной линии головы и с их помощью мы будем формировать глазные впадины и веки.

Рис. 14.50. Свиток Subdivision Surface (Поверхности с разбиением) настроек основного объекта моделирования

712

Глава 14. Моделирование головы

Рис. 14.51. Моделирование начинается с придания объекту общей формы головы

Далее с помощью Slice Plane (Секущая плоскость) из свитка Edit Geometry (Редактирование геометрии) разделите половину объекта, с которым работаете, по вертикали на две части. Плоскость сечения должна проходить в области расположения носа (рис. 14.52). Применяя все тот же инструмент Slice Plane (Секущая плоскость), сделайте еще один разрез в области бровей. СОВЕТ Работая с секущей плоскостью, удобно использовать при поворотах Angle Snap Toggle (Переключатель угловых привязок), который активизируется нажатием на клавиатуре A.

Этот разрез поможет вам сформировать надбровные дуги и теменную часть затылка (рис. 14.53). Работая с секущей плоскостью, не забывайте после каждого разреза уточнять положение вновь созданных вершин в пространстве. В противном случае после некоторого количества разрезов выставить положение вершин станет значительно сложнее. Следующий шаг — разрез полигонов на фронтальной части модели немного ниже серединной линии для формирования скуловой части лица. Для этого воспользуйтесь инструментом Cut (Вычитание), расположенным в свитке Edit Geometry (Редактирование геометрии) командной панели. Как именно должен проходить разрез, показано на рис. 14.54.

713

Моделирование головы с помощью полигонов

Рис. 14.52. Дополнительные ребра в области носа, полученные с помощью секущей плоскости

Рис. 14.53. Разрез, выполненный в области надбровных дуг

Рис. 14.54. Разрез в области скуловой части лица

Теперь все готово и можно заняться формированием глаза. Для этого вам понадобится сделать еще несколько разрезов, формирующих области вокруг глаза. Начните с диагональных разрезов, а затем используйте их для построения прямоугольника внутри. После выполнения разрезов скорректируйте положение вершин в окне проекции Front (Спереди) (рис. 14.55). Для придания глазу нужной формы вам понадобится сделать еще два вертикальных разреза, один из которых будет проходить через середину глаза (рис. 14.56), а другой — правее его.

714

Глава 14. Моделирование головы

Рис. 14.55. Разрезы, выполненные в области глаза

Рис. 14.56. Вертикальный разрез, проходящий через середину глаза

Прежде чем продолжить дальнейшее построение формы глаза и делать новые разрезы, необходимо уточнить уже существующую геометрию. Как и в предыдущем задании по моделированию головы с помощью сплайнов, необходимо строить ребра в местах изменения поверхности. Таким образом будет легче получить желаемую форму с минимальным количеством полигонов. При построении разрезов в области надбровной дуги образовался треугольник, который в данном случае является лишним из-за того, что в этом месте будет проходить еще один горизонтальный разрез и появится избыточное количество ребер. Поэтому одно из ребер необходимо удалить. Выделите ребро левой стороны треугольника (рис. 14.57, слева) и удалите его, щелкнув на кнопке Remove (Удалить) в свитке Edit Edges (Редактирование ребер). После удаления ребра образуется прямоугольник с пятью вершинами. В отличие от сплайнового моделирования, вы можете оставить пятую вершину как есть, но лучше придерживаться построения полигонов с четырьмя (реже с тремя) вершинами. Поэтому с помощью инструмента Target Weld (Объединить целевую), находящегося в свитке Edit Edges (Редактирование ребер), объедините отдельно стоящую вершину с той, которая расположена слева от нее (рис. 14.57, справа). Продолжим формирование надбровной дуги и глаза. Для этого сделайте вертикальный разрез в правой части глаза, идущий до подбородка, и горизонтальный по надбровной дуге. После этого можно удалить внутренние полигоны, расположенные внутри ребер, формирующих глаз, и уточнить положение вершин в пространстве (рис. 14.58). Чтобы продолжить формирование глаза, выделите открытые ребра и, удерживая нажатой клавишу Shift, с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать), находящегося на панели инструментов, дублируйте ребра внутрь отверстия два раза. Во второй раз сдвиньте ребра на незначительное расстояние и, не снимая выделения, переместите их внутрь модели для формирования века (рис. 14.59).

715

Моделирование головы с помощью полигонов

Рис. 14.57. Ребро, подлежащее удалению (слева), и ребро, вершину которого необходимо объединить с находящейся слева (справа)

Рис. 14.58. Расположение ребер вокруг глаза

Рис. 14.59. Сглаженная форма модели в области глаза

Чтобы построить правильную с геометрической точки зрения поверхность модели в области глаза, необходимо увеличить сетку полигонов. В связи с этим продолжите наращивать в данном месте полигоны. Это можно сделать с помощью дополнительных разрезов вокруг глаза. Для придания более острой формы в местах крепления ресниц воспользуйтесь параметром Crease (Складка) для соответствующих ребер или примените инструмент для создания фаски (Chamfer (Фаска)) (рис. 14.60). Дальнейшее уточнение формы глаза необходимо проводить по сфере, имитирующей форму глазного яблока (само глазное яблоко вы можете смоделировать позже).

716

Глава 14. Моделирование головы

Задача заключается в том, чтобы после уточнения положения вершин в пространстве нижнее и верхнее веко расположились по поверхности сферы (рис. 14.61).

Рис. 14.60. Дополнительные ребра в области глаза

Рис. 14.61. Форма глаза, уточненная по сфере

В процессе моделирования вам, возможно, придется еще не раз возвращаться к уточнению формы головы в области глаза, но на данном этапе той детализации, которую вы уже сделали, будет достаточно. Перейдем к формированию носа и губ. Для их построения нужно сделать два разреза секущей плоскостью у основания носа и через середину губ. Напоминаю, что согласно ранее описанным пропорциям высота нижней части лица составляет 2/7 размера головы и равна расстоянию от подбородка до основания носа (рис. 14.62). Прежде чем приступить к моделированию губ, вам нужно сделать разрезы полигонов вокруг них. Для этого воспользуйтесь инструментом Cut (Вычитание) свитка Edit Geometry (Редактирование геометрии). В верхней части разрез берет начало немного ниже основания носа, а заканчивается во впадине, формирующей подбородок, проходя через крайние точки губ (рис. 14.63).

Рис. 14.62. Состояние модели после выполнения разрезов в области основания носа и середины губ

Рис. 14.63. Начало формирования рта

Моделирование головы с помощью полигонов

717

Если вы в дальнейшем собираетесь анимировать лицо, обязательным условием для этого будет моделирование полости рта, что повлечет раздельное моделирование верхней и нижней губы. Чтобы создать разрез в области рта, выделите ребра, проходящие в середине губ, и щелкните в свитке Edit Edges (Редактирование ребер) на кнопке Split (Разделить). В результате ребра разделятся и образуется по две пары вершин. Разведите соседние вершины в стороны так, чтобы образовалось отверстие, после чего отредактируйте их положения в пространстве (рис. 14.64). Чтобы правильно построить модель губ, необходимо добавить вертикальные полигоны в уголках рта. Это можно сделать, разделив ребра, проходящие от уголка рта до затылка. Для этого выполните следующие действия. 1.

Выделите одно ребро, следующее за уголком губ, и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате выделится весь ряд ребер, вплоть до серединной линии.

2.

Щелкните на кнопке Chamfer (Фаска) в свитке Edit Edges (Редактирование ребер) и в окне проекции Front (Спереди) или Perspective (Перспектива) постройте фаску для выделенных ребер (рис. 14.65).

Рис. 14.64. Ребра, определяющие разрез рта

Рис. 14.65. Фаска, построенная на ребрах, идущих от уголков губ

После этого вершины, относящиеся к разрезу губ, нужно объединить с вновь образованными снаружи, чтобы получилось прямоугольное отверстие в уголках губ (рис. 14.66). Уточните также положение вновь созданных вершин в пространстве (как минимум необходимо раздвинуть их по высоте). Сделайте еще несколько разрезов, формирующих область губ. Первый вертикальный разрез должен пройти от глаза через крайнюю точку крыла носа и до разреза верхней губы (рис. 14.67, слева). Второй — по линии формирования губ, с таким расчетом, чтобы в уголках губ образовалось по одному дополнительному полигону (рис. 14.67, справа).

718

Глава 14. Моделирование головы

Рис. 14.66. Положение ребер в уголках губ после слияния вершин

Рис. 14.67. Вспомогательные разрезы для формирования области губ (слева) и расположение ребер в уголках губ (справа)

Не забывайте уточнять положение вновь сформированных вершин в пространстве, контролируя их во всех окнах проекций. Чтобы сделать линию губ более четкой, необходимо выделить ребра по периметру и построить Chamfer (Фаска) с небольшой величиной смещения. Для завершения моделирования губ на данном этапе нужно правильно расположить в пространстве вершины, формирующие их. Особое внимание уделите вершинам, размещенным в уголках губ. Возможно, вам придется потратить больше времени, чем вы предполагали, но не стоит продолжать моделирование, не получив удовлетворительного результата. В противном случае ошибки начнут накапливаться, и в итоге вид модели окажется далек от желаемого. СОВЕТ Если у вас недостаточно знаний в пластической анатомии и опыта персонажного моделирования, можно воспользоваться зеркалом для подробного изучения отдельных частей лица в процессе моделирования. Рис. 14.68. Размещение ребер, формирующих губы

То, что на данном этапе получилось у меня, представлено на рис. 14.68.

Теперь сформируем подбородок, для чего нужно сделать еще один дополнительный разрез. Он должен пройти от ребра, находящегося на уровне губ, до серединной линии, располагаясь в выступающей части подбородка (рис. 14.69). Ребро, образо-

719

Моделирование головы с помощью полигонов

вавшееся в процессе разреза и проходящее по диагонали через полигон, лежащий справа от губ, удалите с помощью кнопки Remove (Удалить). Построим полость рта. Для этого выделите ребра, окаймляющие разрез губ, и, удерживая нажатой клавишу Shift, сделайте три копии ребер внутрь. После этого объедините крайние вершины, чтобы образовалось замкнутое пространство, а промежуточные немного раздвиньте по вертикали для увеличения внутреннего пространства полости рта (рис. 14.70).

Рис. 14.69. Ребра, формирующие подбородок

Рис. 14.70. Полость рта, сформированная с помощью копирования ребер

Перейдем к построению носа. Прежде всего сделайте дополнительный вертикальный разрез от надбровной дуги до верхней губы (рис. 14.71). Затем так же, как и в случае с подбородком, удалите ребро, ставшее лишним после выполнения разреза. Для формирования крыльев носа сделайте еще один разрез (рис. 14.72).

Рис. 14.71. Вспомогательный вертикальный разрез для моделирования носа

Рис. 14.72. Разрез, определяющий форму крыльев носа

720

Глава 14. Моделирование головы

После выполнения этих разрезов необходимо выделить полигоны, образующие спинку и крылья носа, чтобы применить к ним инструмент Extrude (Выдавливание). Результат показан на рис. 14.73.

Рис. 14.73. Положение полигонов, формирующих нос, после выдавливания

То, что получилось после выдавливания, еще мало похоже на будущий нос. Удалите полигоны, сформировавшиеся в процессе выдавливания с внутренней стороны носа по осевой линии. После сместите вновь созданные вершины. В области переносицы и в верхней части носа (со стороны глаза и щеки) вершины нужно объединить, чтобы создать плавный переход от лобной кости к переносице. Затем расположите оставшиеся вершины в пространстве для придания поверхности объекта формы носа (рис. 14.74). Помните, что контролировать построения нужно во всех окнах проекций и время от времени поворачивать модель в окне проекции Perspective (Перспектива) или Orthographic (Ортографический), чтобы рассмотреть ее в деталях. Продолжая моделирование формы носа, сделайте дополнительные разрезы для увеличения плотности полигонов в нижней части (в области крыльев носа). Линия разреза пройдет по верхнему краю отверстия в носу и внешней части крыла носа. Чтобы получить округление носа в месте излома геометрии, необходим еще один разрез (рис. 14.75). После создания разрезов уточните геометрию носа с помощью перемещения вершин, формирующих его. Перейдем к моделированию отверстия в носу. Для его построения нужно выделить полигон в нижней части и дважды применить выдавливание. Первый раз — на небольшую величину с уменьшением, чтобы сформировать край, а затем — на высоту четверти носа (рис. 14.76).

721

Моделирование головы с помощью полигонов

Сделайте еще несколько сечений, чтобы построить складку, идущую от носа к уголкам губ (рис. 14.77). После этого удалите лишнее ребро, образованное в результате сечения.

Рис. 14.74. Форма носа после предварительной корректировки вершин

Рис. 14.75. Два разреза, выполненные для увеличения количества полигонов у основания носа

Рис. 14.76. Отверстия в носу, выполненные с помощью выдавливания полигонов

Рис. 14.77. Разрезы для формирования складки

СОВЕТ Не забывайте, что лучшего результата сглаживания можно достичь, имея минимальное количество полигонов с тремя сторонами. Таким образом, во всех местах, где можно использовать полигоны с четырьмя сторонами вместо полигонов с тремя, нужно сделать соответствующие изменения.

После выполнения всех уточнений можно перейти к построению уха. Но прежде проверьте еще раз модель во всех окнах проекций, поверните ее в окне проекции Perspective (Перспектива) и рассмотрите со всех сторон. Очень важно это делать

722

Глава 14. Моделирование головы

постоянно, в противном случае можно пропустить ошибки, которые чем дальше, тем сложнее будет исправить. Важно все рассматривать в целом, но не забывать уделять внимание и деталям. На рис. 14.78 показана модель на той стадии, когда начинается построение уха. Создание уха, как и предыдущих деталей модели головы, начинается с разрезов. Сначала необходимо сформировать место, на котором ухо будет крепиться к голове. Для этого выполните разрезы полигонов, как показано на рис. 14.79.

Рис. 14.78. Визуализация модели головы перед началом построения уха

Рис. 14.79. Разрезы, выполненные в местах крепления уха к голове

По форме разрезы, расположенные внутри, должны напоминать немного наклоненный эллипс. Пока можно не обращать внимания на трехсторонние полигоны — позже их нужно будет модифицировать. В окне проекции Right (Справа) выделите полигоны, находящиеся внутри разрезов, и, щелкнув на кнопке Extrude (Выдавливание) в свитке Edit Polygons (Редактирование полигонов), выдавите выделенные полигоны на небольшую величину (рис. 14.80, слева). Не снимая выделения, разверните их немного в сторону лица (рис. 14.80, справа), используя инструмент Select and Rotate (Выделить и повернуть), находящийся на панели инструментов. Почти весь процесс создания ушной раковины заключается в построении с помощью выдавливания новых полигонов и редактировании положения вершин в пространстве. По этой причине желательно удалить (обязательно с помощью кнопки Remove (Удалить)) ребро, проходящее внутри полигонов, образующих ухо. Того количества вершин, которое образовалось в процессе разрезания, вполне хватит для основания уха, но недостаточно для формирования ушной раковины. В связи с этим, прежде чем выполнять дальнейшие выдавливания рельефа и наращивать полигоны, необходимо немного увеличить количество вершин, определяющих форму уха. Для этого выделите три вершины, находящиеся со стороны лица в последнем ряду, и примените к ним Chamfer (Фаска) из свитка Edit Vertices (Редактирование вершин). В результате на верхней грани добавятся три вершины (рис. 14.81).

723

Моделирование головы с помощью полигонов

Рис. 14.80. Полигоны уха, выдавленные с помощью команды Extrude (Выдавливание) (слева) и повернутые в окне проекции Top (Сверху) (справа)

Рис. 14.81. Новые вершины, образованные инструментом Chamfer (Фаска)

Продолжим выдавливание. На этот раз лучше всего воспользоваться инструментом Bevel (Выдавливание со скосом), чтобы не просто выдавить полигоны, но и раздвинуть их в стороны на небольшое расстояние, начав формирование завитка уха. СОВЕТ Того же результата можно достичь, выдавив полигоны с помощью инструмента Extrude (Выдавливание), с последующим масштабированием выдавленных полигонов с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать), находящегося на панели инструментов.

После выдавливания полигонов нужно сдвинуть вершины переднего края уха. Это позволит начать формирование козелка (выступающей части уха, за которой находится ушное отверстие) (рис. 14.82). Выполните еще два выдавливания внутренних полигонов для формирования завитка ушной раковины. Чтобы получить скругленную форму в середине завитка, можно воспользоваться вместо Extrude (Выдавливание) инструментом Bevel (Выдавливание со скосом), находящимся в свитке Edit Polygons (Редактирование полигонов). При формировании новых полигонов нужно немного увеличить средний ряд ребер (рис. 14.83).

а

б

Рис. 14.82. Расположение ребер после выполнения корректировки положения вершин в окнах проекций Right (Справа) (а) и Front (Спереди) (б)

724

Глава 14. Моделирование головы

Теперь можно перейти от формирования внешней части ушной раковины к созданию полигонов ее внутренней части. Для этого постройте ряд полигонов со смещением внутрь, например, с помощью инструмента Bevel (Выдавливание со скосом). Не снимая выделения с полигонов в средней части уха, сделайте скос с нулевым значением по высоте и отрицательным значением величины смещения контура. Это позволит создать ряд внутренних ребер завитка (рис. 14.84).

Рис. 14.83. Полигоны, формирующие внешнюю геометрию завитка уха

Рис. 14.84. Размещение полигонов ушной раковины в окне проекции Orthographic (Ортографический)

Сделайте два разреза для формирования закругления козелка в его верхней части и объедините вершины у его основания, чтобы уменьшить плотность сетки полигонов. Внимательно осмотрите со всех сторон выдавленные полигоны и уточните положение вершин. На данном этапе моделирования уточнения должны носить общий характер, то есть нужно обратить внимание только на большие формы, не вникая в детали (рис. 14.85). Выполните еще одно выдавливание центрального полигона, но с отрицательным значением. Эта операция позволит выполнить закругление завитка ушной раковины и положит начало построению полигонов внутренней части (рис. 14.86). Моделирование внутренней части ушной раковины требует дополнительных разрезов по линии излома. На рис. 14.87 показаны ребра, построенные с помощью инструмента Cut (Вычитание). Рис. 14.85. Положение и форма ребер козелка после их редактирования

Выделите еще раз внутренний полигон и сделайте последнее выдавливание на небольшую величину (рис. 14.88).

725

Моделирование головы с помощью полигонов

Рис. 14.86. Начало формирования внутренней части уха

Рис. 14.87. Разрезы, выполненные во внутренней части ушной раковины

Осталось самое сложное в моделировании ушной раковины — окончательное уточнение положения вершин в пространстве. Вы можете использовать для этого фотографии уха крупным планом, которые можно найти в Интернете. При уточнении формы ушной раковины необходимо сделать предварительное редактирование вершин на модели без сглаживания и только после этого включить сглаживание полигонов и окончательно отредактировать. Еще раз напоминаю: все операции, связанные с перемещением вершин в пространстве, нужно контролировать во всех окнах проекций. Модель уха, которая получилась у меня, представлена на рис. 14.89.

Рис. 14.88. Положение полигона внутренней части ушной раковины в окнах проекций Top (Сверху) (слева) и Orthographic (Ортографический) (справа)

Рис. 14.89. Модель уха в окне проекции Right (Cправа)

Напомню, что модель головы делается со средним уровнем детализации. Для получения большего контроля над формой уха (как и всей модели) необходимо увеличить

726

Глава 14. Моделирование головы

количество контрольных вершин. Это позволит более точно передать его форму, но вместе с тем для человека, не имеющего достаточного опыта в моделировании, может вызвать дополнительные трудности. На рис. 14.90 представлен результат визуализации модели головы после объединения двух половинок с помощью модификатора Symmetry (Симметрия).

Рис. 14.90. Результат визуализации модели головы после применения модификатора Symmetry (Симметрия)

ПРИМЕЧАНИЕ Для ознакомления с моделью головы, выполненной с помощью полигонов, и ее анализа можно загрузить файл poly_head.max, который находится в папке Examples\Глава 14 прилагаемого DVD.

Моделирование ресниц Существует несколько способов создания ресниц для модели головы человека: начиная c использования текстурных карт и заканчивая моделированием каждой ресницы в отдельности. В данном разделе рассмотрим, как автоматизировать процесс создания ресниц для модели головы среднего и высокого уровня детализации. Для работы вам понадобится модель головы или фрагмент (рис. 14.91), который можно найти на прилагаемом DVD в папке Examples\Глава 14. Файл называется eyelashes_start.max.

Моделирование ресниц

727

ПРИМЕЧАНИЕ В данном случае я буду использовать фрагмент полигональной модели головы, хотя метод моделирования, описанный в данном упражнении, можно с таким же успехом применить для Surface- или NURBS-поверхности.

Рис. 14.91. Фрагмент модели головы, предназначенный для моделирования ресниц

Для дальнейшей работы понадобится сплайн, который следует разместить на поверхности модели в местах естественного роста ресниц. Проще всего получить такой сплайн, используя ребра, формирующие поверхность модели лица. Для этого выделите объект Face и перейдите на уровень редактирования ребер. Выделите ребро, расположенное на границе разреза глаза, и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате этих действий должны выделиться все ребра вокруг глаза (рис. 14.92). Щелкните на кнопке Create Shape From Selection (Создать форму из выделения) в свитке Edit Edges (Редактировать ребра). В открывшемся окне Create Shape (Создать форму) необходимо установить переключатель типа создаваемого сплайна в положение Smooth (Сглаженный) (рис. 14.93). Выделите созданный сплайн и перейдите на уровень редактирования сегментов, щелкнув для этого на кнопке Segment (Сегмент) в свитке Selection (Выделение). Выделите сегменты сплайна, расположенные в углах созданной кривой, и удалите их. Таким образом, у вас останется сплайн только там, где должны находиться ресницы (рис. 14.94).

728

Глава 14. Моделирование головы

Рис. 14.92. Ребра, выделенные вокруг глаза после применения инструмента Loop (Петля)

Рис. 14.93. Окно Create Shape (Создать форму)

Рис. 14.94. Форма сплайна после удаления угловых сегментов

Моделирование ресниц

729

СОВЕТ Чтобы было удобнее работать со сплайнами и геометрией ресниц, можно с помощью команды Hide (Скрыть) спрятать все ненужные на данном этапе объекты.

Верхние и нижние ресницы различаются по форме и расположению на поверхности века, поэтому построенный сплайн необходимо разделить на два самостоятельных сплайна — один для верхних ресниц, второй для нижних. Для этого перейдите на уровень редактирования подобъектов Spline (Сплайн) , выделите нижнюю часть общего сплайна и щелкните на кнопке Detach (Отделить) из свитка Geometry (Геометрия). Таким образом, у вас окажется два самостоятельных сплайна (рис. 14.95).

Рис. 14.95. Объект, разделенный на два самостоятельных сплайна

ПРИМЕЧАНИЕ Для Surface-модели можно использовать сплайны поверхности. Для NURBS — кривые поверхности. Можно также построить самостоятельные сплайны, которые находятся на поверхности объекта в местах расположения ресниц. Каким образом это будет сделано — не имеет значения.

Перейдем к построению ресниц. Начнем с создания цилиндра. Расположите его недалеко от сплайнов, чтобы иметь возможность сопоставить размеры и положение в пространстве. В моем случае радиус цилиндра равен 0,005, а высота — 0,36 (если вы будете использовать собственную модель головы или ее фрагмент, то размеры строящегося цилиндра, скорее всего, будут другими). При построении цилиндра необходимо обратить внимание на значение параметра Height Segments (Количество сегментов по высоте) — он должен быть равен не менее 4, а Sides (Количество сторон) — иметь значение от 3 до 5. Кроме того, должен быть установлен флажок Smooth (Сглаживание) (рис. 14.96).

730

Глава 14. Моделирование головы

Рис. 14.96. Относительный размер и свиток параметров строящегося цилиндра

Заострите цилиндр, применив к нему модификатор Taper (Заострение) (рис. 14.97).

Рис. 14.97. Полученный цилиндр (слева) и настройки модификатора Taper (Заострение) (справа)

Далее воспользуйтесь модификатором Bend (Изгиб) и изогните объект так, чтобы он стал похож на ресницу, расположенную на верхнем веке (рис. 14.98). Расположим созданную ресницу на построенном ранее сплайне, а затем размножим ее.

Моделирование ресниц

731

Рис. 14.98. Полученная ресница (слева) и настройки модификатора Bend (Изгиб) (справа)

Начнем с того, что выполним привязку ресницы к сплайну, затем анимируем ее масштаб по мере продвижения к наружной части века. Для этого в одном из окон проекций выделите построенную ресницу и выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграничение по пути). В качестве пути следования ресницы укажите в одном из окон проекций верхний сплайн. В результате на командной панели откроется свиток с настройками параметров контроллера анимации. В свитке Path Parameters (Параметры пути) (рис. 14.99) установите флажок Follow (Следовать), благодаря чему модель ресницы будет все время располагаться перпендикулярно сплайну. Если вы сейчас передвинете ползунок таймера в правую сторону шкалы кадров, то увидите, что модель ресницы начнет движение по кривой от начала сплайна (его первой точки) до его конца. Сделаем так, чтобы ресницы по мере удаления от начала сплайна становились длиннее и гуще. Для этого выполните следующие действия. 1.

Щелкните на кнопке Auto Key (Автоключ), расположенной в правой нижней части окна программы, для автоматической записи ключей анимации. В результате кнопка станет красной, что указывает на ее активное состояние.

Рис. 14.99. Свиток Path Parameters (Параметры пути)

732

Глава 14. Моделирование головы

2.

Выделите ресницу и перейдите в последний кадр анимации (у меня — 100).

3.

Выполните одно из двух действий: либо увеличьте высоту цилиндра в 1,3–1,5 раза в его свойствах, либо на столько же масштабируйте объект с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать).

4.

Еще раз щелкните на кнопке Auto Key (Автоключ), чтобы выключить запись ключей.

Проверьте анимацию, щелкнув на кнопке Play Animation (Воспроизвести анимацию) , расположенной справа от кнопки записи ключей анимации. Ресница должна не только двигаться по сплайну, но и увеличиваться в размере. Далее можно сделать так, чтобы ресницы ближе к внешнему краю века становились гуще. ПРИМЕЧАНИЕ Для верхних ресниц это менее актуально, нежели для нижних, которых меньше, чем верхних, но по мере их расположения ближе к внешнему краю века они обычно становятся гуще. Выполнение этих действий совсем не обязательно, однако может подчеркнуть форму глаза, особенно для женского лица.

Для изменения густоты ресниц необходимо изменить скорость продвижения объекта по сплайну так, чтобы по мере удаления от начала происходило ускорение. Проще всего это сделать, откорректировав кривую в окне редактора кривых, которое можно вызвать кнопкой главной панели инструментов Curve Editor (Open) (Редактор кривых (открыть)) . В левой части окна Track View — Curve Editor (Просмотр треков — редактор кривых) выделите строку с именем Percent (Проценты), относящуюся к анимации ограничения по пути, после чего в правой части окна добавьте к кривой 3–4 новых ключа и определите их положение так, чтобы получилась изогнутая кривая (рис. 14.100). Если бы мы сейчас выполнили построение копий ресницы, то получили бы ряд объектов, расположенных вдоль сплайна, ровно обрезанных и направленных перпендикулярно к сплайну пути. Такое положение не является естественным для ресниц, поэтому необходимо внести некоторое разнообразие, можно даже сказать, некоторый хаос. Это можно сделать с помощью двух контроллеров — поворота и масштаба — следующим образом. 1.

Переместите ползунок анимации на первый кадр и выделите в одном из окон проекций ресницу.

2.

Выполните команду AnimationRotation ControllersNoise (АнимацияКонтроллер поворотаШум). Таким образом, от кадра к кадру будет хаотически изменяться положение ресниц в пространстве.

3.

Выполните команду AnimationScale ControllersNoise (АнимацияКонтроллер масштабаШум). Кроме изменения положения, будет произвольным образом изменяться и масштаб ресниц.

733

Моделирование ресниц

Рис. 14.100. Окно редактора кривых

ПРИМЕЧАНИЕ При желании вы можете изменить параметры контроллера шума для достижения максимально правдоподобного размещения и размера ресниц. Сделать это можно, например, двумя способами. Во-первых, с помощью изменения веса контроллера (значения параметра Weight (Вес) в свитке Scale List (Список масштаба) вкладки Motion (Движение) командной панели). Во-вторых, в окне с настройками свойств контроллера (рис. 14.101), которое вызывается из контекстного меню при щелчке правой кнопкой мыши на имени контроллера (в списке свитка Assign Controller (Назначить контроллер) вкладки Motion (Движение) командной панели).

Теперь нужно скопировать объекты. Для этих целей воспользуемся командой главного меню ToolsSnapshot (СервисСнимок), предварительно выделив модель ресницы. В результате выполнения этой команды откроется окно Snapshot (Снимок), в котором необходимо установить переключатель в положение Range (Диапазон) и задать диапазон с нулевого по 100 кадр со значением параметра Copies (Количество копий), равным 100. Переключатель Clone Method (Метод клонирования) необходимо установить в положение Mesh (Сетка) (рис. 14.102). ВНИМАНИЕ Переключатель Clone Method (Метод клонирования) должен быть обязательно установлен в положение Mesh (Сетка), в противном случае строящиеся объекты будут наследовать свойства клонируемого объекта и не будут уникальными. Иначе говоря, вы не получите того разнообразия форм и положения ресниц, к которому мы стремимся.

Щелкните на кнопке OK, и вы увидите, как построятся 100 копий ресницы, расположенных по всему сплайну (рис. 14.103).

734

Глава 14. Моделирование головы

Рис. 14.101. Параметры контроллера масштаба

Рис. 14.102. Окно Snapshot (Снимок)

Рис. 14.103. Визуализация построенных ресниц

Создание нижних ресниц выполняется аналогичным образом, с той лишь разницей, что их количество должно быть меньшим, например равным 70. На рис. 14.104 представлен окончательный вид фрагмента модели лица с ресницами. СОВЕТ В самом начале упражнения мы разделили сплайн на две части. В результате первая вершина нижнего сплайна оказалась справа. Для удобства в настройке и построении клонированных ресниц можно назначить первой левую вершину сплайна. Для этого

Использование UV-проецирования для полигональной модели головы

735

выделите ее на уровне подобъектов и щелкните на кнопке Make First (Сделать первой) из свитка Geometry (Геометрия).

Рис. 14.104. Визуализация фрагмента лица с построенными ресницами

ПРИМЕЧАНИЕ Если у вас возникли трудности с созданием ресниц, вы можете загрузить файл eyelashes_end.max, который находится в папке Examples\Глава 14 прилагаемого к книге DVD.

Использование UV-проецирования для полигональной модели головы Вы потратили массу драгоценного времени, вложили огромное количество труда и терпения в эту работу, и наконец вот он, результат — готовая модель полигональной головы. Что же дальше? А дальше — присвоение объекту проекционных (текстурных) координат, их редактирование (обычно без этого не обходится) и создание самой текстуры или нескольких текстур для различных каналов. Существуют программы, облегчающие эту задачу: Deep Paint 3D фирмы Right Hemisphere, BodyPaint 3D от MAXON (разработчика CINEMA 4D), небольшая программа, специализирующаяся на присвоении проекционных координат объектам, UVMapper Pro и др. О проекционных координатах мы уже говорили в разделах, посвященных простому и сложному текстурированию, в упражнении по текстурированию ослика. Изучение

736

Глава 14. Моделирование головы

этих уроков поможет вам понять, что такое проекционные координаты и для чего они применяются, а также научиться основам наложения проекционных координат применительно к объектам простой и сложной формы. В данном разделе я хочу рассказать о том, как присвоить проекционные координаты полигональной модели головы человека, используя собственные возможности программы 3ds Max. Итак, обратимся к модели. Если вы, как и я, моделировали голову с помощью полигонов, причем создавали только половину модели с последующим применением модификатора Symmetry (Симметрия), то используйте эту половинку для текстурирования (рис. 14.105).

Рис. 14.105. Половинка модели головы, предназначенная для наложения текстурных координат

Если вы, моделируя голову, успели соединить обе половинки модели, то выполните одно из следующих действий. 

Выделите и удалите одну из половинок симметричной модели. После присвоения проекционных координат вы снова сможете создать симметричную копию и присоединить ее.



Если модель в результате редактирования приобрела асимметрию, то есть одна половинка стала непохожа на другую (например, вы изменили форму подбородка или одного уха), то можно скопировать готовую модель головы и удалить половину копии. При этом главное и единственное требование — обе половинки должны иметь одинаковое количество полигонов (вершин). В результате после назначения проекционных координат копии модели можно будет сохранить созданные координаты в файл (такая возможность есть у модификатора Unwrap UVW (Расправить UVW-проекцию)), а затем подгрузить их в основную модель.

Использование UV-проецирования для полигональной модели головы

737

ПРИМЕЧАНИЕ Вы можете воспользоваться моделью, которая находится на прилагаемом к книге компакт-диске в папке Examples\Глава 14. Файл сцены называется UV_map_start.max.

Обратите внимание, что модель должна иметь максимально упрощенный вид. Для этого в свитке Subdivision Surface (Поверхности с разбиением) отключите использование NURMS-разбиений модели, сняв флажок Use NURMS Subdivision (Использовать NURMS-разбиения). Для упрощения последующих трансформаций поместите модель в начало координат, причем в нулевой координате должен находиться осевой срез половинки модели (рис. 14.106).

Рис. 14.106. Расположение половины модели относительно оси координат

Желательно до начала проецирования определить проблемные зоны и назначить им собственные идентификаторы материала. Для головы это обычно полость рта (если вы ее моделировали), углубления в носу и уши — иначе говоря, это те части геометрии модели, где полигоны перекрывают друг друга. Чтобы назначить идентификатор материала, выполните следующие действия. 1.

Выделите модель и перейдите на уровень редактирования полигонов.

2.

Выделите всю модель и присвойте ей идентификатор материала, соответствующий 1, для чего задайте параметру Set ID (Установить идентификатор) свитка Polygon: Material IDs (Полигон: идентификатор материалов) значение, равное 1 (рис. 14.107), и нажмите Enter для подтверждения.

3.

Любым доступным способом выделите необходимые полигоны внутри полости рта и присвойте им значение идентификатора материала, равное 2. Выделите полигоны, составляющие отверстие в носу, и присвойте им значение 3.

4.

Выделите все ухо или только ту его часть, которая расположена со стороны головы. Назначьте уху идентификатор материала, равный 4.

738

Глава 14. Моделирование головы

ПРИМЕЧАНИЕ Назначение идентификаторов материала не является обязательным при работе с проецированием, однако таким образом можно облегчить выбор вершин при редактировании проекционных координат.

После этого можно переходить к присвоению проекционных координат. Лучше всего сделать это следующим способом. 1.

Назначить модификатор Unwrap UVW (Расправить UVW-проекцию).

2.

Применить цилиндрическое или сферическое проецирование.

3.

Подкорректировать проблемные места.

Начнем с первого. Проследите за тем, чтобы у вас не было выделено подобъектов (полигонов, вершин и т. д.), в противном случае модификатор будет применен только к выделению. После этого выполните команду ModifiersUV Coordinates Unwrap UVW (МодификаторыUV-координатыРасправить UVW-проекцию) и перейдите на уровень редактирования подобъектов модификатора Face (Грань). Выделите все грани модели и назначьте им сферическую систему проецирования, щелкнув на кнопке Spherical (Сферическая) в свитке Map Parameters (Параметры проецирования) (рис. 14.108).

Рис. 14.107. Свиток Polygon: Material IDs (Полигон: идентификатор материалов) с назначенным идентификатором материала

Рис. 14.108. Настройки модификатора Unwrap UVW (Расправить UVW-проекцию) в режиме редактирования Face (Грань)

Использование UV-проецирования для полигональной модели головы

739

Находясь на уровне редактирования подобъектов Face (Грань), с помощью инструмента Select and Move (Выделить и переместить) передвиньте в окне проекции Top (Сверху) габаритный контейнер модификатора так, чтобы его ось выровнялась по срезу модели. После этого разверните контейнер так, чтобы зеленая линия, указывающая на шов карты текстурных координат, оказалась со стороны затылка. Затем с помощью инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) масштабируйте контейнер по оси X так, чтобы он охватил весь объект (рис. 14.109).

Рис. 14.109. Габаритный контейнер модификатора Unwrap UVW (Расправить UVW-проекцию), выровненный по оси симметрии модели

СОВЕТ Чтобы быстро выполнить выравнивание относительно нулевой точки системы координат, необходимо на главной панели инструментов щелкнуть правой кнопкой мыши на Select and Move (Выделить и переместить), а затем ввести 0 в поле для ввода значения по координате Х появившегося окна.

В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVWпроекцию) щелкните на кнопке Edit (Правка), в результате чего откроется окно редактирования проекционных координат Edit UVWs (Редактирование UVW), где будет представлена развертка половинки модели головы (рис. 14.110), созданная в результате выполненных выше действий. На этом предварительная работа заканчивается, теперь можно приступить к редактированию проекционных координат модели.

740

Глава 14. Моделирование головы

Рис. 14.110. Окно Edit UVWs (Редактирование UVW) с разверткой модели

СОВЕТ Если вы собираетесь привязывать проекционные координаты к существующей текстуре (например, выполненной на основе фотографии), то самое время загрузить ее в окно редактирования Edit UVWs (Редактирование UVW), используя раскрывающийся список в верхней части и выбрав в нем строку Pick Texture (Указать текстуру).

Далее будет полезным внести некоторые изменения в окне Unwrap Options (Параметры проекции) (рис. 14.111), вызываемом командой меню OptionsPreferences (СвойстваПараметры), а именно:  в области Colors (Цвета) снимите флажок Show

Grid (Показывать сетку);  если вы используете выполненную ранее тек-

Рис. 14.111. Окно Unwrap Options (Параметры проекции) с настройками отображения

стуру, то обязательно следует задать ее размеры в области Display Preferences (Параметры отображения), указав в полях Render Width (Ширина визуализации) и Render Height (Высота визуализации) ширину и высоту текстуры.

Использование UV-проецирования для полигональной модели головы

741

Прежде чем редактировать вершины, необходимо выделить в отдельные группы проблемные полигоны (помните, мы ранее назначили им идентификаторы материала, отличные от 1). Для этого выполните следующее. 1.

В нижней части окна Edit UVWs (Редактирование UVW) щелкните на треугольнике справа от раскрывающегося списка и выберите цифру 2 (второй идентификатор материала соответствует полости рта).

2.

Выделите все полигоны, оставшиеся в окне редактирования, и выполните команду меню ToolsBreak (СервисРазбить). Таким образом, полигоны будут выделены в отдельную группу (рис. 11.112).

Рис. 14.112. Команда меню Break (Разбить), позволяющая отделить выделенные полигоны

3.

Выполните операции выделения и отделения в самостоятельные группы полигонов для оставшихся идентификаторов материала (нос, ухо).

4.

В раскрывающемся свитке идентификаторов выберите строку All IDs (Все идентификаторы материалов) для отображения всей проекции модели.

5.

Используя инструмент Move (Переместить), переместите группы проблемных полигонов на свободное место в нижней части окна (рис. 14.113).

СОВЕТ Чтобы облегчить процесс выделения групп полигонов, установите флажок Select Element (Выделить элемент) в области Selection Modes (Способы выделения) в нижней части окна Edit UVWs (Редактирование UVW).

742

Глава 14. Моделирование головы

Рис. 14.113. Элементы проекции, размещенные в окне Edit UVWs (Редактирование UVW)

Остается сделать совсем немного — откорректировать положение вершин в местах, где они пересекаются (обычно это рот, нос и ухо). Кроме того, не помешает изменить положение вершин в правом верхнем углу развертки (этого можно и не делать, но я предпочитаю уменьшить эффект растягивания текстуры). Переместить вершины можно очень просто: выделите вершину и с помощью инструмента Move (Переместить) переместите ее в нужное место. На рис. 14.114 представлена развертка с измененной границей контуров. Далее необходимо переместить вершины внутри проекции, чтобы исключить пересечения сетки проекционных координат. Это делается также с помощью инструмента Move (Переместить). Прежде чем редактировать отдельные вершины, можно распределить их в пределах контуров проекции. Для этого выполните в окне редактирования команду ToolsRelax (СервисОслабить), в результате чего откроется окно Relax Tool (Инструмент ослабления). В этом окне задайте параметру Iterations (Количество итераций) значение, равное 3 (рис. 14.115). Сейчас можно закончить корректировку положения вершин проекционных координат, вручную изменив положение вершин в перекрывающихся местах.

Использование UV-проецирования для полигональной модели головы

743

Рис. 14.114. Развертка после редактирования контуров

ПРИМЕЧАНИЕ Как вы уже знаете, для получения наилучшего эффекта при текстурировании в окне редактирования проекционных координат необходимо избавиться от перекрывающихся полигонов. Для головы это обычно нос, губы, глаза и уши.

На рис. 14.116 представлен фрагмент отредактированной проекции текстурных координат модели головы. Для дальнейшего уточнения положения вершин в окне Edit UVWs (Редактирование UVW) необходимо создать и присвоить объекту какую-нибудь повторяющуюся текстуру, например Checker (Шахматная текстура). Такая текстура помогает увидеть места, в которых происходят растяжения или сжатия и от которых по возможности необходимо избавиться. Корректируя положение вершин в окне Edit UVWs (Редактирование UVW), следите за тем, как изменяется геометрия текстуры на объекте в окне проекции. При этом необходимо стремиться к тому, чтобы квадраты шахматного поля были максимально правильной формы (рис. 14.117). Теперь следует окончательно упаковать проекцию текстурных координат в пределах поля будущей текстуры.

744

Глава 14. Моделирование головы

Рис. 14.115. Окно Relax Tool (Инструмент ослабления)

Рис. 14.116. Фрагмент расправленной проекции координат модели головы

Использование UV-проецирования для полигональной модели головы

745

Рис. 14.117. Модель головы с присвоенной текстурой Checker (Шахматная текстура)

ПРИМЕЧАНИЕ Если будущая текстура головы будет полностью симметричной, то нет необходимости выполнять дополнительные действия с проекцией текстурных координат. Однако если обе половинки лица будут различаться (например, из-за шрама или морщин), то необходимо выполнить действия, описанные ниже.

Сейчас пришло время вернуться к модели. После того как половине модели были присвоены и отредактированы проекционные координаты, можно свернуть стек модификаторов (выполнить команду Collapse (Свернуть)) или, не сворачивая, добавить в стек модификатор Symmetry (Симметрия), а затем — модификатор Unwrap UVW (Расправить UVW-проекцию) (рис. 14.118). В настройках модификатора Unwrap UVW (Расправить UVWпроекцию) снова щелкните на кнопке Edit (Правка) свитка Parameters (Параметры). Теперь необходимо выделить часть сетки, принадлежащей левой половине модели (в настоящее время обе проекции находятся в одном месте), и отобразить ее зеркально, используя инструмент Mirror Horizontal (Отобразить по горизонтали) . После этого следует переместить проекцию в левую часть поля текстуры до совпадения серединных линий (рис. 14.119). Выполнив описанные операции, можно снова свернуть стек модификаторов или добавить новый модификатор,

Рис. 14.118. Стек модификаторов модели головы на данном этапе редактирования

746

Глава 14. Моделирование головы

Рис. 14.119. Окончательный вид проекции текстурных координат

на сей раз MeshSmooth (Сглаженная поверхность) (рис. 14.120). Этот модификатор позволит дополнительно разделить полигоны для получения более сглаженной поверхности модели. Если вы свернули стек и вернулись к Editable Poly (Редактируемая полигональная поверхность), то объект сохранит все выполненные вами изменения, связанные с наложением и редактированием проекционных координат. После этого можно повысить уровень сглаживания модели, применив NURMS Subdivision (NURMS-разбиения), можно перемещать подобъекты и даже редактировать их — проецирование сохранится. Однако я не советую этого делать. Лучше, чтобы все изменения были внесены в модель перед наложением и редактированием проекционных координат. На рис. 14.121 представлен окончательный вид модели головы со сглаживанием и присвоенными проекционными координатами. ПРИМЕЧАНИЕ Рис. 14.120. Окончательный вид стека модификаторов модели головы

Для анализа присвоения проекционных координат модели головы вы можете загрузить файл UV_map_end.max, который находится в папке Examples\Глава 14 прилагаемого к книге DVD.

Текстурирование головы человека

747

Рис. 14.121. Модель головы с присвоенными ей проекционными координатами

Текстурирование головы человека В предыдущем разделе мы рассмотрели один из способов присвоения текстурных координат полигональной модели головы человека. Создание такой проекции является неотъемлемой частью процесса текстурирования, о котором пойдет речь в данном разделе. Текстурировать голову человека можно двумя способами: 

с использованием фотографий в фас и профиль;



на основе одной или нескольких текстурных карт, выполненных в программе редактирования растровой графики.

Рассмотрим второй вариант, как более сложный, но позволяющий получить максимальную свободу творчества. Кроме программы 3ds Max, для работы нам понадобится Adobe Photoshop или любая аналогичная программа редактирования растровой графики, работающая со слоями. Вы можете воспользоваться моделью головы с проекционными координатами, присвоенными в предыдущем разделе, или загрузить файл texturing_start. max, расположенный в папке Examples\Глава 14 прилагаемого к книге DVD. На рис. 14.122 представлена модель женской головы, с которой мы будем работать. Прежде чем перейти к непосредственному созданию текстурных карт для модели головы, необходимо получить сетку, образованную проекционными координатами модели. Она нужна в качестве шаблона, по которому мы будем выполнять текстурирование. Получить ее можно следующим образом.

748

Глава 14. Моделирование головы

Рис. 14.122. Модель женской головы без текстур

1.

Выберите в одном из окон проекций модель головы (объект Head).

2.

В свитке Parameters (Параметры) настроек модификатора Unwrap UVW (Расправить UVW-проекцию) щелкните на кнопке Edit (Правка).

3.

Выполните в открывшемся окне Edit UVWs (Редактирование UVW) команду меню ToolsRender UVW Template (ИнструментыВизуализация образца UVW). 4.

5.

В открывшемся окне Render UVs (Визуализация UV) (рис. 14.123) установите желаемые размеры высоты и ширины (обычно не менее 1000 Ч 1000 пикселов) и щелкните на кнопке Render UV Template (Визуализация образца UV). В результате откроется окно Render Map (Визуализация карты) (рис. 14.124) с изображением развертки текстурных координат. Щелкните на кнопке Save Image (Сохранить изображение). Сохраните изображение, полученное при визуализации, на диск в любом формате, желательно в том, который позволяет использовать альфа-канал (например, TIFF).

ПРИМЕЧАНИЕ

Рис. 14.123. Окно Render UVs (Визуализация UV)

Существуют специальные модификаторы, подключаемые модули и сценарии, позволяющие не только получить сетку проекционных координат, но и работать с текстурами. Вы можете воспользоваться одним из таких модулей, например Texporter или PSD Path Unwrapper.

Текстурирование головы человека

749

Рис. 14.124. Окно Render Map (Визуализация карты) с изображением развертки текстурных координат

Откройте программу редактирования растровой графики. Все дальнейшие действия описаны для приложения Adobe Photoshop, но можно воспользоваться любой программой, позволяющей работать со слоями. 1.

Откройте сохраненный файл с изображением развертки текстурных координат.

2.

На вкладке Layers (Слои) дважды щелкните на слое с именем Background (Фон) и в появившемся окне New Layer (Новый слой) измените название слоя (поле Name (Имя)) на что-нибудь более понятное, например Сетка, а затем щелкните на кнопке OK, заменив, таким образом, фоновый слой на слой с возможностью редактирования.

3.

Выполните команду SelectColor Range (ВыделитьЦветовой диапазон) и в открывшемся окне Color Range (Цветовой диапазон) задайте параметру величины Fuzziness (Размытость) значение, равное 100.

4.

Щелкните на черном цвете фона кнопкой мыши (ее указатель при этом примет вид пипетки) и нажмите OK.

5.

Нажмите на клавиатуре Delete для удаления области текстуры с выделенным цветом.

750

Глава 14. Моделирование головы

ПРИМЕЧАНИЕ После удаления фонового цвета изображение сетки будет недостаточно хорошо видно на прозрачном слое. Если нужно проверить, правильно ли все сделано, добавьте ниже сетки новый слой и измените его цвет на любой отличный от белого.

6.

Рис. 14.125. Окно Trim (Обрезать)

Выполните команду меню ImageTrim (ИзображениеОбрезать) и в открывшемся окне Trim (Обрезать) (рис. 14.125) установите переключатель Based On (Основанный на) в положение Transparent Pixels (Прозрачные пикселы).

Таким образом, вы получили слой с сеткой проекционных координат, который будет выступать в качестве шаблона для последующего рисования текстуры. Все создаваемые в дальнейшем слои должны находиться ниже текущего, чтобы вы смогли все время видеть границы рисования.

ПРИМЕЧАНИЕ Для изображения, сохраненного с альфа-каналом, необходимо на вкладке Channels (Каналы) выделить альфа-канал (удерживая нажатой клавишу Ctrl, щелкнуть кнопкой мыши на слое канала), инвертировать выделение (Shift+Ctrl+I) и удалить фон (Delete).

Создайте новый слой, назовите его Color и разместите ниже слоя с сеткой. Залейте его цветом фона — базовым цветом для лица. Я использовал цветовую палитру RGB со следующими значениями: R — 253, G — 191 и B — 154. С помощью рисования с применением различных оттенков цвета кожи создайте базовое изображение карты цвета. СОВЕТ Можно создать два слоя цвета для лица. Нижний цвет должен быть по тону темнее цвета лица, а верхний — светлее. Используя прозрачность верхнего слоя, можно подобрать необходимый цвет. Кроме того, цифровые фотографии лица могут значительно облегчить выбор цвета при рисовании.

Обратите внимание на то, что в области щек цвет должен быть светлее, в то время как глазные впадины существенно темнее основного цвета. Цвет в области ушей имеет красноватый оттенок. На этой же текстуре можно нарисовать брови и ресницы, если вы не делали их с помощью геометрии. Когда все будет готово, отключите слой с сеткой и сохраните текстурную карту с именем Head_Color в любом доступном формате, например TIFF.

Текстурирование головы человека

751

На рис. 14.126 представлена текстурная карта цвета, выполненная в программе Photoshop.

Рис. 14.126. Текстурная карта цвета

После создания карты цвета можно переходить к карте рельефа. Разберемся сначала, как работает такая карта. Прежде всего, вы должны знать, что для карты рельефа используется монохромное изображение с градациями цвета от белого до черного. Причем белый цвет позволяет получить возвышенности на поверхности объекта, а черный — понижения, при этом среднее значение (50%-ный серый цвет) не оказывает никакого эффекта на поверхность, к которой эта карта применяется. Таким образом, если нам необходимо получить на поверхности выпуклость, ее следует рисовать цветом светлее 50%-ного серого. Для вмятин цвет должен быть темнее этого значения. Продолжим рисование в Photoshop. Создайте новый слой и назовите его Bump. Используя инструмент Paint Bucket (Заливка), залейте созданный слой серым цветом (R — 128, G — 128, B — 128). Кожа человека имеет поры, создадим их с помощью фильтра Noise (Шум). Для этого выполните команду меню FilterNoiseAdd Noise (ФильтрШумДобавить шум). В открывшемся окне Add Noise (Добавить шум) (рис. 14.127) установите флажок Monochromatic (Одноцветный) и задайте параметру Amount (Величина) значение в диапазоне от 4 до 8. Таким образом, мы сделали заготовку для карты рельефа. Используя инструмент Brush (Кисть), нарисуйте морщины в области глаз и лба (если они есть у модели). Особое внимание уделите поверхности губ и бровей, если вы не использовали геометрию, причем для бровей необходимо применять светлые тона кисти.

752

Глава 14. Моделирование головы

Работая над картой рельефа, не забывайте, что поры не одинаковы на всей поверхности головы. Например, на кончике носа и щеках поры крупнее, чем в области подбородка и лба, а уши могут иметь едва различимые неровности. СОВЕТ Работая над текстурой, лучше всего создавать дополнительные слои для отдельных элементов. Это позволит при необходимости быстро редактировать их содержимое. Кроме того, может быть полезным использование прозрачности слоя или режима перекрытия.

На рис. 14.128 представлена карта рельефа, выполненная описанным выше способом. Рис. 14.127. Окно Add Noise (Добавить шум)

Сохраните полученную карту рельефа в отдельный файл Head_Bump.

Рис. 14.128. Текстурная карта рельефа

При текстурировании объектов органического происхождения необходимым является создание как минимум двух текстурных карт: цвета диффузного отражения и рельефа. Однако совсем не лишним будет создание еще одной карты — уровня блеска. Эта карта очень похожа на только что выполненную карту рельефа. Для нее

Текстурирование головы человека

753

используется тот же принцип построения монохромного изображения, где светлые места будут отражать свет, а темные — поглощать его. Причем чем ярче текстура, тем ярче будет блеск в этом месте. За основу для этой текстуры можно взять слой с картой рельефа. Создание такой карты не представляет сложности, особенно после того, как вы выполнили две предыдущие. Если вы обращали внимание, то должны были заметить, что самые яркие места на голове человека — это нос и лоб, в меньшей степени щеки, уши и шея. Это связано с тем, что подкожный жир, выступая на поверхность кожи, вызывает ее блеск. Блестеть также может не только жирная, но и влажная кожа. Например, губы имеют высокий уровень блеска благодаря тому, что они почти всегда являются влажными. Кроме того, работая с текстурой женской головы, нужно обратить внимание на то, что если на губы наносится помада, то она станет источником дополнительного блеска. Исходя из вышесказанного, создайте текстуру бликов с таким расчетом, чтобы по тону она была близкой к черному цвету, лишь места расположения предполагаемых бликов должны быть ярче (рис. 14.129).

Рис. 14.129. Текстурная карта уровня блеска

Сохраните полученную текстуру с именем Head_Specular. Текстуры выполнены, осталось только создать материал и применить его к модели головы. Перейдите в окно программы 3ds Max и загрузите модель головы, с которой вы делали шаблон сетки проекционных координат. Откройте редактор материалов

754

Глава 14. Моделирование головы

и выберите свободный материал. Дальнейшие действия можно выполнять несколькими способами с использованием следующих материалов: Standard (Стандартный), Raytrace (Трассируемый) или Composite (Составной). Я опишу простой, но вполне приемлемый с точки зрения конечного результата способ на основе стандартного материала с применением карты Falloff (Спад). ПРИМЕЧАНИЕ Для реалистичного материала кожи требуется создание достаточно сложных многослойных карт, имеющих, в свою очередь, собственные карты смешивания или спада.

Чтобы создать материал для модели головы, выполните следующие действия. 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.

Нажмите кнопку Go to Parent (Вернуться к исходному) на панели инструментов редактора материалов.

2.

Щелкните на кнопке None (Отсутствует) рядом с картой Specular Level (Уровень блеска).

3.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение).

4.

В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту Head_Specular (рис. 14.130).

755

Текстурирование головы человека

Примените созданный материал к модели головы и выполните тестовую визуализацию. Если вы воспользовались файлом texturing_start.max с прилагаемого к книге DVD, то вам не нужно устанавливать и настраивать источники света — они присутствуют в сцене и настроены для работы с объектом. Если же вы решили применить собственную модель для текстурирования, то начните с того, что установите в сцене не менее двух источников света и настройте их положение, интенсивность, способность генерировать тени и цвет (если используется). Это необходимо сделать до начала корректировки созданного материала потому, что источники света значительно влияют на отображение модели при визуализации. В таком случае предварительно настроенный материал после изменения освещенности сцены может потребовать полного изменения настроек.

Рис. 14.130. Свиток Maps (Карты текстур) с загруженными текстурными картами

На рис. 14.131 представлена тестовая визуализация с настройками по умолчанию.

Рис. 14.131. Визуализация модели головы с настройками материала по умолчанию

Изображение, полученное при визуализации, благодаря созданным ранее текстурным картам уже сейчас имеет неплохой вид. Улучшить его, не прибегая к сложным

756

Глава 14. Моделирование головы

настройкам текстурных карт, применению фотометрических светильников и визуализации путем трассировки лучей, можно, создав карту спада для цветового канала материала модели головы и повысив уровень рельефности (сейчас она почти незаметна). Для этого выполните следующие действия. 1.

В редакторе материалов разверните свиток Maps (Карты текстур) для материала модели головы.

2.

Щелкните на кнопке с именем карты цвета (Head_Color.jpg), в результате чего откроются настройки этой карты.

3.

Щелкните на кнопке Bitmap (Растровое изображение).

4.

В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Falloff (Спад) и на вопрос Keep old map as sub-map? (Оставить старую карту в качестве компонента?) ответьте утвердительно.

5.

В появившемся свитке Falloff Parameters (Параметры спада) выберите из списка Falloff Type (Тип спада) строку Shadow/Light (Тень/свет).

6.

В этом же свитке щелкните на образце белого цвета и в появившемся окне Color Selector (Выбор цвета) установите «холодный» цвет в диапазоне от темно-зеленого до темно-коричневого. В моем случае это цвет с такими значениями: Red (Красный) — 86, Green (Зеленый) — 85 и Blue (Синий) — 50.

Выполните тестовую визуализацию и обратите внимание на то, как изменился цвет в затененных участках объекта (рис. 14.132). Применение карты Falloff (Спад) позволило получить более естественный и глубокий цвет в области собственной тени.

Рис. 14.132. Визуализация модели головы после применения карты Falloff (Спад)

757

Создание волос

Улучшить конечное изображение и повысить его реалистичность можно, не только создавая сложные составные материалы, используя трассировку лучей и другие стандартные возможности программы 3ds Max, но и с помощью подключаемых модулей. Например, для визуализации изображения, представленного на рис. 14.133, был использован визуализатор V-Ray.

Рис. 14.133. Изображение, полученное с помощью модуля V-Ray

ПРИМЕЧАНИЕ Для анализа созданного материала модели головы загрузите файл texturing_end.max, который находится в папке Examples\Глава 14 прилагаемого DVD.

Создание волос Выполняя предыдущие упражнения данной главы, вы научились моделировать и текстурировать голову человека. Остался последний шаг на пути к целостному портрету — волосы. Рассмотрим, как делаются волосы с помощью стандартного модификатора Hair and Fur (Волосы и мех). Для выполнения упражнения откройте построенную и текстурированную ранее модель головы, которую можно найти на прилагаемом к книге DVD в папке Examples\Глава 14. Файл называется texturing_end.max. Прежде чем применить модификатор построения волос, необходимо выполнить некоторые подготовительные операции. В первую очередь следует оставить для работы только один объект — модель головы. Для этого в любом из окон проекций выделите объект Head и, щелкнув на нем правой кнопкой мыши, выберите из

758

Глава 14. Моделирование головы

списка контекстного меню строку Hide Unselected (Спрятать невыделенное). Далее необходимо определить область модели, на которой волосы будут расти. Для этого можно воспользоваться модификатором Mesh Select (Выделение сетки), с помощью которого следует выделить область естественного роста волос. Можно также построить сплайны, которые будут определять длину, направление и форму прически. Второй способ предполагает большую свободу в моделировании прически, поэтому им и воспользуемся. Прежде чем строить сплайны для формы волос, рассмотрим некоторые моменты, связанные с таким построением: 

все сплайны должны принадлежать одному объекту;



начало сплайнов (первая точка) должно находиться в начале роста волос (волосы строятся от корней);



при построении волос модификатор Hair and Fur (Волосы и мех) производит линейную интерполяцию между соседними сплайнами, в связи с чем необходимо иметь достаточное количество сплайнов для создания прически нужной формы;



интерполяция ведется с учетом порядковых номеров сплайнов, поэтому сплайны необходимо либо строить в строгой последовательности, либо после построения изменить порядок их следования.

Начните построение сплайнов, для чего выполните команду меню CreateShapesLine (СозданиеФормыЛиния). Начните строить сплайн с лобной части головы и продлите его вниз вдоль правой стороны лица (рис. 14.134).

Рис. 14.134. Первый сплайн, определяющий форму волос

Создание волос

759

Проконтролируйте положение сплайна во всех окнах проекций — он должен иметь форму первого локона волос и не должен пересекаться с поверхностью модели головы. СОВЕТ При создании сплайнов можно использовать минимальное количество вершин для построения базовой формы локона волос с последующим наращиванием вершин до необходимого количества.

Постройте новый сплайн на затылочной части головы или скопируйте и подредактируйте созданный. Продолжите построение сплайнов с таким расчетом, чтобы по периметру головы расположилось от 10 до 15 сплайнов (рис. 14.135).

Рис. 14.135. Форма и расположение сплайнов относительно модели головы

После построения сплайнов убедитесь, что они принадлежат одному объекту и располагаются по номерам в порядке следования. Если этого не произошло в процессе построения (я при построении новых кривых копировал сплайны на уровне подобъектов), то выполните следующие действия. 1.

Выделите первый сплайн, расположенный справа от лицевой части модели головы.

2.

В свитке Geometry (Геометрия) щелкните на кнопке Attach (Присоединить), в результате она выделится цветом.

760 3.

Глава 14. Моделирование головы

В окне проекции Top (Сверху) последовательно выберите все построенные сплайны, продвигаясь по кругу вправо.

Теперь можно применить модификатор для создания волос на основе сплайнов. Для этого выделите построенные сплайны и на командной панели выберите из списка модификаторов строку Hair and Fur (WSM) (Волосы и мех (WSM)). Прежде чем настраивать отображение, установим источник света, который будет генерировать тень от волос. ВНИМАНИЕ Для генерации теней модификатором Hair and 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 (Разрешение), чтобы получить более качественные тени (рис. 14.136).

Рис. 14.136. Свиток Hair Light Attr (Свойства источника света для волос)

Вернитесь к настройкам модификатора Hair and Fur (WSM) (Волосы и мех (WSM)). Определите общие параметры модификатора в свитке General Parameters (Общие параметры), установив количество волос (Hair Count (Количество волос)), количество сегментов по длине волоса (Hair Segments (Количество сегментов)), толщину волоса (Root Thick (Толщина волоса) и Tip Thick (Толщина концов)) и т. д. Флажок Interpolate (Интерполяция) должен оставаться установленным, чтобы поверхность волос строилась с учетом интерполяции между сплайнами (рис. 14.137).

Создание волос

761

В свитке Material Parameters (Параметры материала) укажите параметры, которые будут влиять на отображение волос при визуализации. Образцы цвета Tip Color (Цвет концов) и Root Color (Цвет у корней) определяют соответственно цвет волос на концах и у корней. Параметр Hue Variation (Оттенки цвета) влияет на то, в какой степени цвет волос будет отличаться от указанного в образцах цвета. Параметры Specular (Цвет зеркального отражения) и Glossiness (Глянец) отвечают за блеск волос. Настройте также параметр Self Shadow (Собственная тень) и другие параметры свитка Material Parameters (Параметры материала) (рис. 14.138). Параметры свитков Frizz Parameters (Параметры вьющихся волос) и Kink Parameters (Параметры курчавости) можно использовать для получения вьющихся волос. Более важным с точки зрения общих настроек является свиток Multi Strand Parameters (Параметры локонов), позволяющий настраивать вид локонов, создавая пышность и хаотичность прядей волос. Здесь можно задать параметры плотности (Count (Количество)), расширения волос у основания (Root Splay (Расширение у основания)) и на концах (Tip Splay (Расширение на конце)), а также случайное распределение (Randomize (Случайное распределение)) (рис. 14.139).

Рис. 14.137. Свиток General Parameters (Общие параметры) настроек модификатора Hair and Fur (WSM) (Волосы и мех (WSM))

ПРИМЕЧАНИЕ Все вышеописанные настройки формы и отображения волос в значительной степени зависят от формы, длины и расположения сплайнов относительно друг друга. В связи с этим тонкая настройка параметров возможна только в процессе тестовой визуализации. При этом можно редактировать не только параметры модификатора, но и сами кривые на уровне подобъектов.

Кроме построения сплайнов по периметру модели, можно создать единичные сплайны для отдельных локонов (например, челки). В этом случае необходимо снять флажок Interpolate (Интерполяция) в свитке General Parameters (Общие параметры) и настроить отображение локона, используя свиток Multi Strand Parameters (Параметры локонов). На рис. 14.140 представлена модель головы с созданными волосами.

Рис. 14.138. Свиток с настройками параметров материала волос

Рис. 14.139. Свиток Multi Strand Parameters (Параметры локонов)

762

Глава 14. Моделирование головы

Рис. 14.140. Результат визуализации модели головы вместе с волосами

В качестве самостоятельного задания попробуйте создать прическу, используя выделенные полигоны на уровне редактирования подобъектов модификатора Hair and Fur (Волосы и мех) и инструменты свитка Styling (Стиль). Кроме того, нажав кнопку Load (Загрузить) в области Presets (Предустановки) свитка Tools (Сервис), можно загрузить предварительно сохраненные стили причесок, а щелкнув на кнопке Save (Сохранить) — сохранить созданную прическу. Эта возможность является хорошим способом создания базовых параметров для последующего их редактирования и точной настройки с учетом особенностей модели. ПРИМЕЧАНИЕ Модель головы с волосами представлена в файле hair.max, который находится в папке Examples\Глава 14 прилагаемого к книге DVD.

Заключение

Позади 14 глав, проделана огромная работа по моделированию, текстурированию и анимации объектов. Сейчас вы сами можете оценить, насколько путь, ведущий к созданию правдоподобной трехмерной модели, длинный и трудный. Но результат, которого вы достигнете в конце этого пути, с лихвой компенсирует все ваши усилия. После изучения простого и сложного моделирования вы будете готовы создавать собственные великолепные трехмерные сцены. Не торопитесь браться за работу над сложными заданиями, для выполнения которых у вас недостаточно знаний и опыта. Следствием этого будет разочарование и нежелание продолжать. Постепенное выполнение несложных работ, напротив, поможет вам приобрести практический опыт и почувствовать уверенность в своих силах. Только работая над конкретными заданиями, с каждым разом все более сложными, вы будете совершенствовать свое мастерство. Творческий рост происходит постепенно. На каждом этапе дизайнеру нужен небольшой толчок, чтобы перейти на новый, более высокий уровень. Надеюсь, в этой книге вы нашли те новые идеи, которые будут двигателем вашего творческого и профессионального роста. Пришло ваше время! Найдите достойное применение знаниям, приобретенным в этой книге.

Приложение 1

70 советов пользователям 3ds Max • Интерфейс и окна проекций • Работа с файлами • Моделирование • Анимация • Материалы и текстуры • Источники света и камеры • Визуализация • Разное

В то время, когда я начинал заниматься трехмерным моделированием, книг на эту тему практически не было и приходилось во многом разбираться самостоятельно, собирая информацию в Интернете. Теперь, накопив достаточно опыта, я могу дать пользователям программы 3ds Max советы. Первое, что можно посоветовать новичкам, — тщательно изучить интерфейс программы (также пригодятся знания об освещении, композиции, фотографии и т. п.). Без базовых знаний осваивать редактор трехмерной графики достаточно сложно. После знакомства с интерфейсом приложения и его возможностями можно приступать к выполнению первых работ. Здесь нужно руководствоваться простой, но проверенной временем истиной: работа должна вестись по принципу «от простого к сложному». Не следует начинать моделирование сложной сцены, если вы с трудом справляетесь с простыми объектами. Лучше полностью смоделировать и визуализировать стул, чем пытаться создать модель персонажа и столкнуться с непреодолимыми (ввиду недостаточности знаний) трудностями, потеряв веру в собственные силы. После первой публикации в Интернете моего упражнения по моделированию автомобиля мне пришло много писем с благодарностью, но были и такие, в которых задавалось большое количество вопросов по данной теме. При этом у меня ни разу не возникло ощущение того, что я что-то упустил или дал ложное пояснение. Чаще всего это были вопросы либо невнимательно читающих урок и, как следствие, упустивших в тексте ответ на свой вопрос, либо людей, которые не знакомы даже с интерфейсом программы и спрашивают, где найти ту или иную кнопку, модификатор и т. п. Я понимаю желание тех, кто начинает изучать приложение, сразу же выполнить сложную работу, но все должно развиваться последовательно: нельзя стать гонщиком, не научившись ездить на машине. Итак, приведу некоторые советы по работе с 3ds Max.

Интерфейс и окна проекций Совет 1. Изучайте интерфейс программы и ее возможности — это поможет сэкономить массу времени. Не забывайте о сочетаниях клавиш. Когда речь идет о часто повторяющихся операциях, лучше всего использовать именно клавиатурные комбинации (основные клавиатурные комбинации описаны в приложении 2). Кроме того, можно присваивать свои собственные сочетания клавиш тем операциям, которые вы часто выполняете, но которые не имеют стандартных клавиатурных аналогов. Совет 2. Выполняя специальные задачи, создавайте собственные панели инструментов, пункты меню или квадратичные меню. Примером может служить панель инструментов для работы с полигональными моделями или специальными эффектами. Совет 3. Существует быстрый способ центрирования объектов в окне проекции. Для этого достаточно навести указатель мыши на требуемый объект и нажать клавишу I.

766

Приложение 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) (Редактор структуры (открыть)) на панели инструментов.

Рис. П1.1. Окно Schematic View (Редактор структуры)

Работа с файлами Совет 8. Устанавливая 3ds Max 2009, позаботьтесь, чтобы в разделе жесткого диска, в который инсталлируется программа, было достаточно свободного места. Во время работы будут добавляться библиотеки текстур, подключаемые модули, пакеты обновлений, наборы моделей и т. д., в результате чего может возникнуть нехватка дискового пространства.

Работа с файлами

767

Совет 9. Можно ускорить процесс создания новых сцен с помощью предварительной настройки атрибутов сцены. Если создать пустую сцену и поместить в нее камеру и источники света (либо что-то еще, что вам требуется постоянно), а затем сохранить с именем maxstart.max и поместить файл в каталог scenes в корневой директории 3ds Max, то при загрузке или выполнении команды Reset (Сбросить) произойдет загрузка этого файла. Совет 10. Устанавливая дополнительные модули, не забывайте, что при загрузке программы они находятся в оперативной памяти даже в том случае, если вы их не используете. В связи с этим никогда не оставляйте те модули, которые подключались для тестирования или которыми вы больше не пользуетесь. Как вариант можно создать несколько файлов инициализации (plugin.ini) для загрузки программы с необходимой конфигурацией (указаны пути только к необходимым наборам модулей, собранных в отдельные папки). На практике это могут быть несколько пунктов в меню Пуск или ярлыки на Рабочем столе с параметрами загрузки типа 3dsmax -p (рис. П1.2). Совет 11. Как можно чаще сохраняйте файл, особенно при выполнении опеРис. П1.2. Настройка свойств ярлыка раций, способных вызвать аварийное для вызова 3ds Max 2009 завершение программы (например, бус дополнительными модулями левых операций). Удобно использовать для работы со сплайнами Incremental Save (Приращения при сохранении), чтобы всегда можно было вернуться к промежуточным файлам. Кроме того, не забывайте о существовании режима Auto Backup (Автоматическое сохранение) (по умолчанию включено), что позволит восстановить большую часть работы, потерянной при аварийном завершении работы (рис. П1.3). Совет 12. Если вы собираетесь продолжить свой проект на другом компьютере или сохранить его в архив, то лучшим способом будет создание архива средствами самой программы 3ds Max (FileArchive (ФайлАрхивировать)). Это позволит упаковать не только сцену с материалами, но и все сопутствующие текстурные карты с прописанными к ним путями. Совет 13. Установите флажок Save Viewport Thumbnail Image (Сохранить пиктограмму окна проекции) в окне Preference Settings (Параметры установок) (см. рис. П1.3). Это позволит вам при навигации по файлам видеть то, что в них находится.

768

Приложение 1. 70 советов пользователям 3ds Max

Рис. П1.3. Окно Preference Settings (Параметры установок) с настройками сохранения файлов

Совет 14. Для получения информации о сцене служит пункт Summary Info (Сводка) меню File (Файл). С помощью открывшегося окна вы можете получить информацию о количестве полигонов, присвоенных материалах, подключаемых модулях и т. д. Вы также можете сохранить эту информацию в текстовый файл для последующего анализа. Совет 15. Возможное решение для открытия проблемных файлов — загрузка их содержимого с помощью команды Merge (Присоединить) или XRef Objects (Ссылки на объекты) меню File (Файл) в новую сцену. Совет 16. Одним из быстрых способов открытия файлов сцен, присвоения материалов и т. д. является Asset Browser (Окно просмотра ресурсов) (рис. П1.4). В нем можно перетаскивать в окно проекции с помощью мыши как отдельные объекты, так и целые сцены, присваивать материалы или текстуры объектам сцены, просматривать пиктограммы сцен, выполнять операции с файлами и многое другое. Совет 17. Не забывайте сохранять файл или выполнять команду EditHold (ПравкаЗафиксировать) перед теми операциями, для которых недоступна команда Undo (Отменить) (например, перед Collapse (Свернуть)).

Моделирование Совет 18. Если необходимо изменить какую-либо величину для параметрического объекта, достаточно в поле параметра набрать r и число, на которое нужно изменить значение. Например, если набрать r50, то общее значение изменится на 50 (было 20 — станет 70).

769

Моделирование

Рис. П1.4. Окно Asset Browser (Окно просмотра ресурсов)

Совет 19. Если установить курсор в поле счетчика и нажать сочетание клавиш Ctrl+N, то откроется окно со своеобразным калькулятором, в котором можно выполнять простые математические вычисления, а результат автоматически заносить в поле параметра. Совет 20. Щелчок правой кнопкой мыши на стрелках счетчика позволяет обнулить его. Эта функция удобна, если вам необходимо задать нулевые значения (например, в окне трансформаций или поворота). Совет 21. Если во время построения сплайна вам понадобится удалить последнюю вершину или несколько вершин, то сделать это можно, не выходя из режима построения, воспользовавшись клавишей Backspace. Совет 22. Использование привязок (Snaps) может значительно упростить работу, когда выравниваются или передвигаются объекты или подобъекты. Совет 23. Иногда во время трансформации или поворота возникает необходимость изменения параметров привязок. Это можно сделать, не прерывая операции, нажав клавишу Shift и правую кнопку мыши, в результате чего появится контекстное меню, в котором можно выбрать новые параметры привязок. Совет 24. При работе в режиме редактирования иногда возникает необходимость относительного поворота или перемещения объектов. Чтобы выполнить такой поворот, нужно выделить объект и заблокировать его, используя клавишу Пробел. После этого следует установить в настройках привязок (окно вызывается щелчком правой кнопкой мыши на кнопке Snaps Toggle (Переключение привязок)) флажок Use Axis Constraints (Использовать осевые привязки) (рис. П1.5).

Рис. П1.5. Вкладка Options (Параметры) окна Grid and Snap Settings (Настройки сетки и привязок)

770

Приложение 1. 70 советов пользователям 3ds Max

На панели инструментов выберите Use Transform Coordinate Center (Использовать начало координат) и перейдите в окно проекции для редактирования. В результате выполненных действий поворот объекта будет осуществляться вокруг точки привязки (например, вершины или опорной точки другого объекта). Совет 25. Иногда необходимо выделить ряд ребер, которые проходят по горизонтали или вертикали, не затрагивая другие, перпендикулярные им ребра. Такое выделение можно выполнить с использованием направления движения указателя мыши, для чего предварительно должен быть установлен соответствующий флажок в настройках программы (рис. П1.6).

Рис. П1.6. Окно Preference Settings (Параметры установок) с активизированным выделением по направлению

Перемещение указателя слева направо приводит к выделению только тех ребер, которые попадают в область выделения. Если же выделять указателем в обратном направлении, то выделятся все ребра, которые затрагивает область выделения. Это же справедливо и по отношению к полигонам. Совет 26. В режиме редактирования подобъектов (вершин, ребер, полигонов и т. д.) полезно установить флажок Ignore Backfacing (Без обратной ориентации). Это позволит избежать случайного выделения подобъектов на противоположной стороне модели. Естественно, не забывайте снимать данный флажок, если вам необходимо выделить весь объект. Совет 27. Если у полигональной модели на уровне редактирования вершин выделить группу вершин и, удерживая нажатой клавишу Ctrl, перейти на уровень редактирования полигонов (в свитке Selection (Выделение) щелкнуть на кнопке

Моделирование

771

Polygon (Полигон)), то автоматически выделятся все полигоны, которым принадлежат ранее выделенные вершины. Это же правило справедливо и для других типов подобъектов. Совет 28. Чтобы, редактируя полигональную модель, иметь возможность передвигать вершины вдоль какого-либо ребра или в плоскости полигона, необходимо установить переключатель Constraints (Привязки) свитка Edit Geometry (Редактирование геометрии) настроек полигональной модели в положение Edge (Ребро) либо Face (Грань) соответственно. Совет 29. В процессе редактирования подобъектов можно быстро вернуться к первоначальному положению выделенных элементов, для чего достаточно, удерживая нажатой левую кнопку мыши, щелкнуть правой. Совет 30. Если вы хорошо знакомы с возможностями программы, то всегда найдете 2–3 решения для моделирования одного и того же объекта. Ваша задача — выбрать тот вариант моделирования, который в данном случае будет оптимальным по скорости и качеству. Например, сложный объект, на моделирование которого с помощью полигонов понадобилось бы не меньше часа, можно смоделировать с помощью лофтинга за 10–15 мин. Совет 31. Если вам необходимо редактировать примитивы на уровне подобъектов, сохранив при этом параметрические свойства объекта, применяйте модификаторы Edit Spline (Редактирование сплайна) или Edit Mesh (Редактирование поверхности). В противном случае следует преобразовать объект в Editable Spline (Редактируемый сплайн) и Editable Mesh (Редактируемая поверхность). Это поможет высвободить ресурсы компьютера. Совет 32. При возможности всегда заменяйте геометрию модели текстурными картами. Например, для создания участка леса на втором плане вполне подойдет использование перекрещивающихся плоскостей с нанесенной на них текстурой деревьев в каналах основного цвета (Diffuse) и непрозрачности (Opacity). Совет 33. При создании объектов форм по возможности используйте Renderable Spline (Визуализируемый сплайн) вместо операций лофтинга. Такие объекты требуют меньше системных ресурсов и легче редактируются. Чтобы сплайн был виден в результате визуализации, необходимо произвести настройки в свитке Rendering (Визуализация) (рис. П1.7), например установить флажок Enable In Renderer (Показывать при визуализации) и определить значение параметра Thickness (Толщина).

Рис. П1.7. Свиток Rendering (Визуализация) настроек сплайна

Совет 34. Не забывайте давать объектам сцены значимые имена, тогда при их большом количестве вам не придется гадать, что же скрывается за именем Box25.

772

Приложение 1. 70 советов пользователям 3ds Max

Совет 35. Возьмите за правило, вне зависимости от наполнения сцены, моделировать объекты с минимальным, но достаточным количеством полигонов. Что это означает на практике? Все очень просто. Если, например, для ваших задач сфере достаточно 24 сегментов (и она будет выглядеть сглаженно), а не 32, которые установлены по умолчанию, то именно 24 и нужно использовать. От количества полигонов в сцене напрямую зависит время визуализации, особенно если речь идет о трассируемых материалах и тенях. Кроме того, это упростит процесс визуализации анимации. Совет 36. Если сцена статична и вы не планируете делать анимацию, облеты камерой и т. п., то можно не моделировать заднюю (скрытую от взгляда) часть объекта. То же относится и к тем частям объектов, которые перекрывают друг друга. Совет 37. По возможности избегайте булевых операций, так как, кроме усложнения топологии модели, они создают проблемы с ее дальнейшим редактированием. Всегда можно найти альтернативу булевым операциям, и хотя я не противник их использования в работе, у меня сложился такой стиль моделирования, при котором я вообще их не применяю. Если вам не обойтись без них, не забудьте перед назначением булевой операции свернуть стек модификаторов, выполнив команду Collapse (Свернуть) контекстного меню, и проверить объект на наличие ошибок с помощью модификатора STL Check (STL-тест). После этого сохраните или выполните команду EditHold (ПравкаЗафиксировать) и только тогда приступайте к булевым операциям. Совет 38. В 3ds Max создание NURBS-объектов не поставлено на должный уровень, как, например, в программах Rhino или Avid Studio Tools, но, если это возможно, предпочтительнее использовать именно NURBS-технологию для получения более сглаженных поверхностей (например, при использовании модификатора Lathe (Вращение)). Совет 39. Если вам по какой-либо причине нужно изменить масштаб объекта, это делается на уровне подобъектов с помощью Gizmo (Габаритный контейнер) модификатора XForm (Преобразование). Особенно это актуально для объектов формы, которые используются в качестве сплайна пути или поперечного сечения в лофтобъектах. Совет 40. Если вы делаете симметричную модель, то нет необходимости моделировать ее всю. Достаточно сделать только половину, а затем применить модификатор Symmetry (Симметрия). В ранних версиях программы 3ds Max необходимо сделать копию с помощью инструмента Mirror (Зеркальное отображение), присоединить ее (щелкнуть на кнопке Attach (Присоединить)), а затем объединить вершины в месте стыка двух половин. Совет 41. Если нужно сделать несколько копий одного и того же объекта, полезно выбирать варианты Instance (Привязка) или Reference (Подчинение). При последующем редактировании одного из объектов изменения будут происходить сразу во всех дубликатах. Совет 42. Когда в сцене присутствует большое количество объектов, гораздо проще продолжать моделирование или вносить исправления в объекты, используя

Анимация

773

Isolation Mode (Режим изоляции) (включается с помощью сочетания клавиш Alt+Q). Иногда также очень помогает при моделировании использование прозрачности объектов (сочетание клавиш Alt+X). Совет 43. Если в сцене присутствует некоторое количество объектов, то полезно прятать (с помощью команды Hide Selected (Спрятать выделенное) вкладки Display (Отображение)) те объекты, которые в данный момент не нужны. Так будет проще разбираться с оставшимися объектами, и ускорится прорисовка окон проекций. Совет 44. Если вы используете NURMS Subdivision (NURMSразбиения) для модификатора MeshSmooth (Сглаженная поверхность) или Editable Poly (Редактируемая полигональная поверхность), то задавайте нужное количество итераций для визуализации, при этом выключая или оставляя их минимальное количество для окон проекций (рис. П1.8). Это поможет не только уменьшить размер файла, но и ускорит прорисовку окон проекций.

Анимация

Рис. П1.8. Свиток Subdivision Surface (Поверхности с разбиением) с настройками отображения и визуализации разбиений

Совет 45. Если вы анимируете объект с помощью модификаторов, а производительность компьютера оставляет желать лучшего, то можно немного исправить создавшееся положение путем применения модификатора Point Cache (Точка кэша). Он позволяет сохранять анимацию вершин объекта вместо всех использовавшихся модификаторов. Таким образом, компьютер будет нагружаться гораздо меньше. Совет 46. Если щелкнуть правой кнопкой мыши на ползунке шкалы анимации, то появится окно Create Key (Создать ключ), с помощью которого можно скопировать трансформации выделенного объекта из одного кадра в другой. Совет 47. Если, удерживая нажатой клавишу Shift, щелкнуть правой кнопкой мыши на стрелках, расположенных справа от счетчика анимируемого параметра, то в строке треков будет автоматически создан ключ анимации этого параметра. Совет 48. Активизировав переключатель Key Mode Toggle (Переключение режима ключей) в правом нижнем углу окна программы, можно быстро перемещаться по ключевым кадрам с помощью ползунка таймера или соответствующих кнопок навигации. Совет 49. Если вы используете анимацию материала, то щелчок на кнопке Make Preview (Создать просмотр) в окне Material Editor (Редактор материалов) позволит создать и просмотреть эскиз анимации материала в ячейке образца в реальном времени. Таким же образом можно выполнить и просмотреть анимацию отдельной текстурной карты.

774

Приложение 1. 70 советов пользователям 3ds Max

Совет 50. Для анализа анимации объектов полезно включать режим отображения двойников (ViewsShow Ghostings (ВидПоказать двойников)). Двойники отображаются в каркасном виде до и после текущего кадра (рис. П1.9).

Рис. П1.9. Показ двойников в окне проекции Front (Спереди)

Совет 51. Включая воспроизведение анимации в окне проекции, не забывайте закрывать окно редактора материалов, в противном случае программа будет пытаться обновлять образцы материалов с каждым кадром анимации. Совет 52. Для просмотра тестовой анимации используйте команду Make Preview (Создать просмотр) из пункта главного меню Animation (Анимация). Эта операция позволит вам проанализировать анимацию объектов в реальном времени.

Материалы и текстуры Совет 53. Используйте текстуры и карты выдавливания вместо сложной геометрии, если обратное не продиктовано самой задачей моделирования. Например, при моделировании стены с кирпичной кладкой логичнее наложить текстуру кирпичей, а швы между ними сделать с помощью текстуры выдавливания, а не моделировать кирпичики по отдельности. Менее очевидным является использование этих же приемов, например, для создания кильватерной волны вслед за яхтой. Совет 54. При использовании растровых изображений в качестве карт выдавливания задавайте параметру Blur (Размытие) значение 0,01, а в качестве размытия применяйте небольшое значение параметра Blur offset (Сдвиг смаза) (рис. П1.10). Совет 55. При текстурировании объектов старайтесь как можно чаще использовать процедурные карты (иначе говоря, текстуры, которые создаются программно). Кроме получения максимально возможного качества, вы избавитесь от необходимости держать на диске вместе с проектом лишние текстуры.

775

Источники света и камеры

Совет 56. Если вы применяете текстуры для заднего фона, то их размер должен соответствовать выходному размеру изображения при визуализации (большее изображение качества не улучшит, но место на диске и в памяти будет занимать, а при меньшем произойдет потеря качества). Совет 57. При необходимости использования больших текстур, которые нельзя загрузить стандартным способом, установите в настройках программы (CustomizePreferences (НастройкиПараметры), вкладка Rendering (Визуализация)) в области Bitmap Pager (Пейджер растрового изображения) флажок On (Включить).

Рис. П1.10. Настройка параметров размытия для карты выдавливания

Совет 58. Если по каким-либо причинам вам понадобилось вернуться к материалу, присвоенному объекту по умолчанию, это можно сделать с помощью утилиты UVW Remove (Удалить UVW).

Источники света и камеры Совет 59. Не используйте тени Area Shadows (Область тени) и Ray Traced Shadows (Трассированные тени) при промежуточных визуализациях, так как это значительно увеличивает время просчетов. Проводите тестовую визуализацию с минимальными размерами изображения, но достаточными для контроля над вводимыми изменениями. Для этих же целей применяйте при возможности визуализацию фрагмента или выделенных объектов. Совет 60. Используйте область Clipping Planes (Секущие плоскости) настроек камер для исключения ненужных объектов из визуализации. Очень часто такой прием применяется для визуализации интерьеров, когда необходимо исключить из визуализации передние стены. Принцип секущих плоскостей также применяется для отдельно взятых объектов и в окнах проекций во время моделирования. Совет 61. При желании вы можете быстро добавить в сцену освещение, используемое по умолчанию, с целью создания базового освещения и последующего его редактирования. Для этого необходимо в настройках окна проекции установить использование двух источников света (рис. П1.11) и выполнить команду CreateLightsStandard LightsAdd Default Lights to Scene (СоздатьСветильникиСтандартные светильникиДобавить в сцену встроенные источники света). Совет 62. Повысить качество тени Shadow Map (Тип отбрасываемой тени) можно за счет увеличения значения параметра Size (Размер) свитка Shadow Map Params (Параметры карты теней). Однако увеличение значения этого параметра вызывает создание более четких границ тени, что не всегда приемлемо. Для решения задачи необходимо также увеличить значение параметра Sample Range (Диапазон усреднения) данного свитка.

776

Приложение 1. 70 советов пользователям 3ds Max

Рис. П1.11. Установка использования двух источников света в окне Viewport Configuration (Конфигурирование окна проекции)

Визуализация Совет 63. Если в сцене используются Raytrace-просчеты, обычно для простых материалов и теней хватает глубины в два просчета (значение параметра Maximum Depth (Максимальная глубина) в свитке Raytracer Global Parameters (Глобальные параметры трассировки) вкладки Raytracer (Трассировка) окна Render Setup (Настройки визуализации)), хотя по умолчанию задано 9. Если же в сцене присутствуют прозрачные объекты, то глубина лучей просчитывается в зависимости от количества проходов луча через преломляющие среды. Например, для стакана это четыре (ближняя стенка стакана — внешняя и внутренняя ее поверхности, а также задняя стенка — внутренняя и внешняя поверхности). Совет 64. Если необходимо сделать выходное изображение больше чем 32 768 Ч Ч 32 768 пикселов (предел в настройках визуализатора 3ds Max 2009), то можно использовать окно Video Post (Видеомонтаж), с его помощью можно получить до 99 999 Ч 99 999 пикселов. Существуют также способы визуализации изображения частями с последующей их «склейкой». Совет 65. Часто при работе с большими проектами время визуализации может растянуться на часы и даже дни. Чтобы иметь возможность продолжить работу над текущим или другим проектом, необходимо использовать сетевую визуализацию. В этом случае визуализация будет проходить в фоновом режиме с помощью модуля Backburner, а вы сможете работать с 3ds Max в обычном режиме. Совет 66. Если вам необходимо последовательно визуализировать несколько видов из камеры, это можно выполнить одним из следующих способов.

777

Разное 

С помощью подключаемых модулей (например, RPManager).



Анимировав камеру так, чтобы в ключевых кадрах были необходимые виды, а затем установив параметры визуализации каждого ключевого кадра с сохранением последовательности кадров в файл.



С помощью модуля Video Post (Видеомонтаж). При этом для каждой камеры создается событие Add Scene Event (Добавить событие-сцену) и Add Image Output Event (Добавить событие вывода изображения), где выбирается камера для визуализации и файл для записи визуализированного изображения (рис. П1.12).

Рис. П1.12. Окно модуля Video Post (Видеомонтаж) с настройками последовательной визуализации вида четырех камер

Разное Совет 67. При использовании чертежей для моделирования объектов возникает проблема, связанная с отрисовкой их в окнах проекций. Стандартными способами можно повысить качество до определенных пределов. Как вариант можно использовать чертеж, выполненный в программах векторной графики и импортированный в 3ds Max как набор кривых. Совет 68. Одним из способов борьбы с аварийным завершением программы является переход на современную операционную систему (Microsoft Windows Vista или Microsoft Windows XP Professional) с установленным последним пакетом обновлений (Service Pack 2 или выше). Совет 69. Рассмотрите возможность улучшения конфигурации компьютера. Безусловно, такие решения связаны с материальными затратами, но работать комфортно с 3ds Max 2009 можно только на компьютерах с современной конфигурацией. Совет 70. Для решения возникающих вопросов обращайтесь к файлу справки — это самое полное собрание ответов на них. В заключение хочу отметить, что это только часть тех полезных мелочей, которые необходимо знать при работе с 3ds Max, чтобы облегчить процесс создания своих проектов.

Приложение 2

Основные сочетания клавиш 3ds Max 2009 • Интерфейс программы • Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) • Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) • Сочетания клавиш для работы с NURBS-объектами

Работа в программе станет значительно быстрее и эффективнее, если вы будете пользоваться сочетаниями клавиш для выполнения операций. Для быстрого ознакомления с основными клавиатурными комбинациями интерфейса программы выполните команду HelpKeyboard Shortcuts Map (СправкаКарта сочетаний клавиш). В результате откроется интерактивное окно (рис. П2.1).

Рис. П2.1. Интерактивное окно карты клавиатурных комбинаций 3ds Max 2009

Если передвигать указатель по клавиатуре, расположенной в правом нижнем углу, то автоматически будет меняться отображение сочетаний клавиш. Для просмотра данного окна вам понадобится установленный Flash-проигрыватель. Ниже приведены основные сочетания клавиш, которые могут понадобиться при выполнении упражнений данной книги. ПРИМЕЧАНИЕ Полный список сочетаний клавиш можно получить, выполнив команду Customize Customize User Interface (НастройкаНастройка пользовательского интерфейса) и перейдя в открывшемся окне на вкладку Keyboard (Клавиатура). В данном окне можно также переопределить сочетания клавиш.

Интерфейс программы Команда или операция Align (Выровнять) Angle Snap Toggle (Угловая привязка вкл/выкл) Background Lock (Блокировать фон) Change to Bottom View (Переключить на вид снизу)

Комбинация клавиш Alt+A A Alt+Ctrl+B B Продолжение 

780

Приложение 2. Основные сочетания клавиш 3ds Max 2009

(Продолжение) Команда или операция Change to Camera View (Переключить на вид из камеры) Change to Front View (Переключить на вид спереди) Change to Orthographic View (Переключить на ортографический вид) Change to Left View (Переключить на вид слева) Change to Perspective User View (Переключить на перспективный пользовательский вид) Change to Top View (Переключить на вид сверху) Cycle Subobject Level (Циклический выбор уровня выделения подобъектов) Disable Viewport (Исключить проекцию) Display Grids Toggle (Показать/скрыть координатную сетку в активном окне) Select by Name (Выделить по имени) Expert Mode Toggle (Включение/выключение экспертного режима) Material Editor (Редактор материалов) Maximize View Toggle (Развернуть/восстановить окно проекции) Move Mode (Режим смещения) Open File (Открыть файл) Quick Rendering (Быстрая визуализация) Redo Scene Operation (Повторить операции над объектами сцены) Render Last (Повторить визуализацию) Render Setup (Настройки визуализации) Rotate Mode (Режим вращения) Save File (Сохранить файл) Scale Mode (Режим масштабирования) See-Through Display Toggle (Видеть сквозь объект вкл/выкл) Select Mode (Режим выделения) Selection Lock Toggle (Блокировать выделенный объект) Shade Selected Faces Toggle (Тонировать выделенные грани вкл/выкл) Snap Toggle (Привязка вкл/выкл) Undo Scene Operation (Отменить операцию над объектами сцены) Zoom Mode (Масштаб)

Комбинация клавиш C F U L P T Insert D G H Ctrl+X M Alt+W W Ctrl+O Shift+Q Ctrl+Y F9 F10 E Ctrl+S R Alt+X Q Пробел F2 S Ctrl+Z Z

Сочетания клавиш для работы с Editable Poly

781

Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) Команда Bevel Mode (Режим выдавливания со скосом) Chamfer Mode (Режим фаски) Cut Mode (Режим вычитания) Detach (Отделить) Edge Subobject Mode (Режим ребер) Element Subobject Mode (Режим элементов) Extrude Mode (Режим выдавливания) Face Subobject Mode (Режим граней) Polygon Subobject Mode (Режим полигонов) Vertex Subobject Mode (Режим вершин) Weld Selected (Объединить выделенное) Weld Target Mode (Объединить указанные)

Сочетание клавиш Ctrl+V, Ctrl+B Ctrl+C Alt+C Ctrl+D 2 5 Ctrl+E 3 4 1 Ctrl+W Alt+W

Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) Команда Bevel Mode (Режим выдавливания со скосом) Chamfer Mode (Режим фаски) Connect (Соединить) Cut (Вычитание) Edge Subobject Mode (Режим ребер) Element Subobject Mode (Режим элементов) Extrude Mode (Режим выдавливания) Border Subobject Mode (Режим граней) Grow Selection (Увеличить выделение) Hide (Спрятать) Object Level (Режим объекта) Polygon Subobject Mode (Режим полигонов) Repeat Last Operation (Повтор последней операции) Select Edge Loop (Выделить ребра по петле) Unhide All (Показать все) Vertex Subobject Mode (Режим вершин) Target Weld (Объединить целевую)

Сочетание клавиш Shift+Ctrl+B Shift+Ctrl+C Shift+Ctrl+E Alt+C 2 5 Shift+E 3 Ctrl+Page Up Alt+H 6 4 ; Alt+L Alt+U 1 Ctrl+Shift+W

782

Приложение 2. Основные сочетания клавиш 3ds Max 2009

Сочетания клавиш для работы с NURBS-объектами Команда CV Constrained Normal Move (Ограничение сдвига управляющих точек вдоль нормали) CV Constrained U Move (Ограничение сдвига управляющих точек вдоль оси U) CV Constrained V Move (Ограничение сдвига управляющих точек вдоль оси V) Display Curves (Показывать кривые) Display Lattices (Показывать решетки деформации) Display Shaded Lattice (Показывать тонированную решетку деформации) Display Surfaces (Показывать поверхности) Display Trims (Показывать обрезки) Lock 2D Selection (Заблокировать 2D-выделение) Switch to Curve CV Level (Перейти на уровень управляющих вершин кривой) Switch to Curve Level (Перейти на уровень кривой) Switch to Point Level (Перейти на уровень точек кривой) Switch to Surface Level (Перейти на уровень поверхности) Switch to Top Level (Перейти на верхний уровень)

Сочетание клавиш Alt+N Alt+U Alt+V Shift+Ctrl+C Ctrl+L Alt+L Shift+Ctrl+S Shift+Ctrl+T Пробел Alt+Shift+Z Alt+Shift+C Alt+Shift+P Alt+Shift+S Alt+Shift+T

Приложение 3

Содержимое DVD, прилагаемого к книге

Для более полного восприятия книги к ней прилагается DVD. На нем находятся следующие папки. 

Examples — файлы сцен упражнений, описываемых в книге. Вы можете обращаться к данным файлам, если что-то непонятно из описания в издании. (Обратите внимание, что файлы сцен могут быть открыты только в программе не ниже версии 3ds Max 2009.) Кроме того, в данной папке располагаются некоторые файлы, необходимые для выполнения упражнений.



Images — цветные иллюстрации в формате JPG с номерами, соответствующими номерам иллюстраций в книге. Они помогут вам более полно представить то, что должно происходить в процессе выполнения упражнений.



Video — анимационные ролики, иллюстрирующие результат выполнения некоторых упражнений, описанных в издании. Все они закодированы с помощью кодека Windows Media Video (WMV), и для их просмотра вам достаточно иметь стандартный Проигрыватель Windows Media, обновленный до девятой версии. Если вы используете другие проигрыватели, обратитесь на сайт фирмы Microsoft для загрузки бесплатного декодера.

В данные папки вложены папки с номерами, соответствующими номерам глав книги. Кроме того, в папке Programs вы найдете пробные 32- и 64-битные версии программы 3ds Max 2009, с которыми можете работать в течение 30 дней без ограничений.