Верстак Владимир Антонович
3ds Max 2008. Секреты мастерства (+DVD)
Заведующий редакцией Д. Гурский Ведущий редактор Е. Каляева Художник C. Шутов Корректоры Т. Курьянович, Ю. Цеханович Верстка Г. Блинов
ББК 32.973-018.3 УДК 004.92 В35
Верстак В. А. 3ds Max 2008. Секреты мастерства (+DVD). — СПб.: Питер, 2008. — 736 с.: ил. ISBN 978-5-388-00082-8
Узнайте секреты профессиональной работы в 3ds Max 2008 от настоящего мастера своего дела! Автор — профессионал трехмерного дизайна. Его оригинальный подход к созданию объектов и сцен, к моделированию и визуализации будет полезен и специалисту, и начинающему пользователю. Вы узнаете обо всех возможностях новейшей версии лучшего 3D-пакета, в том числе и скрытых от непосвященных. Особое внимание уделено моделированию: вы начнете с простейших объектов и завершите созданием трехмерного автомобиля. На прилагаемом DVD — файлы сцен упражнений, иллюстрации из книги в цвете, видеоролики, показывающие результат выполнения некоторых упражнений, а кроме того, пробная версия 3ds Max 2008.
© ООО «Питер Пресс», 2008 Все права защищены. Никакая часть данной книги не может быть воспроизведена в какой бы то ни было форме без письменного разрешения владельцев авторских прав. Информация, содержащаяся в данной книге, получена из источников, рассматриваемых издательством как надежные. Тем не менее, имея в виду возможные человеческие или технические ошибки, издательство не может гарантировать абсолютную точность и полноту приводимых сведений и не несет ответственности за возможные ошибки, связанные с использованием книги.
ISBN 978-5-388-00082-8
ООО «Питер Пресс», 198206, Санкт-Петербург, Петергофское шоссе, 73, лит. А29. Подписано в печать 08.02.08. Формат 70×100/16. Усл. п. л. 59,34. Тираж 4000. Заказ 0000. Отпечатано по технологии CtP в ОАО «Печатный двор» им. А. М. Горького. 197110, Санкт-Петербург, Чкаловский пр., 15.
Краткое содержание Введение ......................................................................................... 10 От издательства .............................................................................. 16
Часть 1. Основы работы в 3ds Max 2008 Глава 1. Интерфейс программы ..................................................... 19 Глава 2. Основные приемы работы ................................................ 74 Глава 3. Материалы и текстуры .................................................... 116 Глава 4. Анимация в среде 3ds Max 2008 ..................................... 150 Глава 5. Основы визуализации ..................................................... 178 Глава 6. Технологии вывода анимированных изображений ......... 208
Часть 2. Практический курс Глава 7. Освещение ..................................................................... 235 Глава 8. Анимация сцен ................................................................ 275 Глава 9. Практическое моделирование ........................................ 383 Глава 10. Текстурирование .......................................................... 494 Глава 11. Визуализация ............................................................... 529
Часть 3. Усложненное моделирование Глава 12. Моделирование автомобиля ........................................ 559 Глава 13. Текстурирование автомобиля ...................................... 619 Глава 14. Моделирование головы ................................................ 645 Заключение ................................................................................... 717 Приложение 1. 70 советов пользователям 3ds Max ...................... 718 Приложение 2. Основные сочетания клавиш 3ds Max 9 ................ 732 Приложение 3. Содержимое DVD, прилагаемого к книге .............. 736
Оглавление Введение .................................................................................................. 10 Для кого предназначена книга ......................................................... 11 Структура книги ............................................................................... 11 Требования к программному и аппаратному обеспечению .............. 15 От издательства ........................................................................................ 16
Часть 1. Основы работы в 3ds Max 2008 Глава 1. Интерфейс программы ............................................................... 19 Элементы интерфейса .............................................................................. 20 Главное меню ................................................................................... 21 Панели инструментов ...................................................................... 43 Окна проекций ................................................................................. 47 Командная панель ........................................................................... 49 Подключаемые модули ............................................................................. 58 Настройка программы .............................................................................. 60 Настройка параметров программы .................................................. 61 Настройка пользовательского интерфейса ..................................... 67 Глава 2. Основные приемы работы .......................................................... 74 Объекты в 3ds Max 2008 ............................................................................ 75 ОбъектноBориентированное моделирование ................................... 75 Параметрические и редактируемые объекты ................................... 75 Составные объекты ......................................................................... 77 Объекты форм ................................................................................. 78 Полигональные объекты .................................................................. 79 Объекты сеток Безье ....................................................................... 80 NURBSBобъекты ............................................................................... 81 Источники света и камеры ............................................................... 82 Вспомогательные объекты .............................................................. 83 Объемные деформации ................................................................... 84 Дополнительные инструменты ........................................................ 84
Оглавление
5
Создание объектов сцены ........................................................................ 85 Интерактивный ................................................................................ 86 При помощи ввода значений параметров ........................................ 86 При помощи сетки ........................................................................... 87 Параметрические объекты .............................................................. 88 Объекты форм ................................................................................. 92 Создание составных объектов ......................................................... 96 Создание источников света ........................................................... 101 Создание камер ............................................................................. 103 Модификаторы геометрии ...................................................................... 105 Lathe (Вращение вокруг оси) ......................................................... 106 Extrude (Выдавливание) ................................................................. 108 Bend (Изгиб) .................................................................................. 110 Twist (Скручивание) ....................................................................... 111 Edit Mesh (Редактирование поверхности) ...................................... 112 Noise (Шум) ................................................................................... 114 Глава 3. Материалы и текстуры .............................................................. 116 Окно Material Editor (Редактор материалов) ............................................ 117 Ячейки образцов материалов ........................................................ 117 Интерфейс окна Material Editor (Редактор материалов) ................. 119 Использование Material/Map Browser (Окно выбора материалов и карт) .................................................. 121 Окно Material/Map Navigator (Путеводитель по материалам и картам) ............................................................... 122 Материал типа Standard (Стандартный) .................................................. 123 Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) .................................................................. 123 Типы тонирования ......................................................................... 126 Дополнительные параметры .......................................................... 128 Создание сложных материалов .............................................................. 129 Top/Bottom (Верх/низ) ................................................................... 129 Blend (Смешиваемый) ................................................................... 130 Multi/SubBObject (Многокомпонентный) ......................................... 131 Matte/Shadow (Матовое покрытие/тень) ........................................ 133 Raytrace (Трассируемый) ............................................................... 134
6
Оглавление
Использование текстурных карт ............................................................. 137 Понятие о текстурных картах ......................................................... 137 Проекционные координаты ............................................................ 138 Проецирование при помощи модификатора UVW Map (UVWBпроекция) ............................................................................. 139 Двумерные карты текстур .............................................................. 140 Трехмерные карты текстур ............................................................. 145 Составные карты текстур ............................................................... 148 Глава 4. Анимация в среде 3ds Max 2008 ............................................... 150 Анимация с использованием ключевых кадров ....................................... 151 Использование контроллеров и выражений ............................................ 167 Анимация частиц .................................................................................... 173 Глава 5. Основы визуализации ............................................................... 178 Инструменты визуализации .................................................................... 179 Параметры визуализации ....................................................................... 180 Common Parameters (Общие параметры) ....................................... 181 Default Scanline Renderer ............................................................... 184 Виртуальный буфер кадров .................................................................... 186 Использование модуля RAM Player (RAMBпроигрыватель) ...................... 187 Окружение и атмосферные эффекты ...................................................... 188 Common Parameters (Общие параметры) ....................................... 189 Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции) ..................................... 189 Atmosphere (Атмосфера) ............................................................... 190 Настройка атмосферных эффектов ............................................... 190 Оптические эффекты ..................................................................... 196 Модуль Video Post (Видеомонтаж) .......................................................... 203 Панель инструментов Video Post (Видеомонтаж) ........................... 203 Очередь видеомонтажа ................................................................. 204 События и фильтры видеомонтажа ................................................ 205 Глава 6. Технологии вывода анимированных изображений .................... 208 Визуализация анимации ......................................................................... 209 Определение формата и оптимального разрешения ..................... 209 Глубина цвета ................................................................................ 211
Оглавление
7
Форматы файлов ........................................................................... 212 Форматы и особенности видеосигнала ......................................... 214 Размытие движущихся объектов сцены .................................................. 217 Object Motion Blur (Размытие объекта в движении) ........................ 218 Image Motion Blur (Размытие картинки в движении) ....................... 219 Motion Blur Rendering Effect (Размытие картинки как эффект визуализации) ............................................................. 220 Scene Motion Blur (Размытие сцены в движении) ........................... 220 MultiBPass Rendering Effect (Многопроходный эффект визуализации) ................................................................... 222 Particle Motion Blur (Размытие движения частиц) ........................... 223 Технология сжатия видео ........................................................................ 224 Сетевая визуализация ............................................................................ 226 Общие рекомендации по визуализации видеоизображений ................... 230
Часть 2. Практический курс Глава 7. Освещение ............................................................................... 235 Основы освещения в трехмерной графике ............................................. 236 Луч лазера .............................................................................................. 246 Объемный свет ....................................................................................... 249 Использование базовых источников света в интерьере .......................... 254 Глава 8. Анимация сцен ......................................................................... 275 Анимация с использованием деформируемой геометрии ...................... 276 Первый вариант (с использованием модификатора) ..................... 277 Второй вариант (с использованием объектов категории Geometric/Deformable (Деформируемая геометрия)) .................... 279 Анимация формы сферы ................................................................ 282 Анимация взрыва .................................................................................... 284 Два варианта анимации страницы книги ................................................. 292 Первый вариант ............................................................................. 294 Второй вариант ............................................................................. 297 Анимация рукописного шрифта .............................................................. 299 Использование модификатора Cloth (Ткань) для симуляции поведения тканей .......................................................................... 316 Анимация движения танковой гусеницы ................................................. 324
8
Оглавление
Звук в 3ds Max ........................................................................................ 343 Песочные часы ....................................................................................... 362 Текст, уносимый порывами ветра ............................................................ 373 Глава 9. Практическое моделирование .................................................. 383 Натюрморт ............................................................................................. 384 Моделирование лофтBобъектов .............................................................. 396 Моделирование штор ............................................................................. 407 Первый вариант ............................................................................. 407 Второй вариант ............................................................................. 411 Полигональное моделирование телефонной трубки ............................... 413 Моделирование микроволновой печи ..................................................... 427 Комплексный подход к моделированию: создание крана для ванной ..................................................................................... 456 Глава 10. Текстурирование .................................................................... 494 Материал, имитирующий хром ............................................................... 495 Текстурирование натюрморта ................................................................. 500 Текстурирование микроволновой печи ................................................... 510 Сложное текстурирование ...................................................................... 518 Глава 11. Визуализация ......................................................................... 529 Интеграция трехмерной графики и фотографии ..................................... 530 Маскирование объектов ......................................................................... 538 Объекты в фокусе камеры ....................................................................... 544 Работаем с Video Post (Видеомонтаж) .................................................... 553
Часть 3. Усложненное моделирование Глава 12. Моделирование автомобиля .................................................. 559 Виртуальная студия — начало всех начал ............................................... 560 Первый способ построения студии ................................................ 563 Второй способ построения студии ................................................ 565 Создание автомобильного диска при помощи NURBSBмоделирования ................................................................. 574 Моделирование колеса автомобиля при помощи полигонов .................. 583 Моделируем BMW .................................................................................. 595
Оглавление
9
Глава 13. Текстурирование автомобиля ................................................. 619 Основы текстурирования автомобиля .................................................... 620 Текстурирование деталей автомобиля .................................................... 632 Глава 14. Моделирование головы .......................................................... 645 Моделирование головы при помощи модуля Surfacetools ...................... 646 Моделирование головы при помощи полигонов ..................................... 662 Моделирование ресниц .......................................................................... 681 Использование UVBпроецирования для полигональной модели головы .............................................................................. 690 Текстурирование головы человека .......................................................... 701 Создание волос ...................................................................................... 711 Заключение ............................................................................................ 717 Приложение 1. 70 советов пользователям 3ds Max ................................. 718 Интерфейс и окна проекций .......................................................... 718 Работа с файлами .......................................................................... 720 Моделирование ............................................................................. 722 Анимация ....................................................................................... 726 Материалы и текстуры ................................................................... 728 Источники света и камеры ............................................................. 728 Визуализация ................................................................................ 730 Разное ........................................................................................... 731 Приложение 2. Основные сочетания клавиш 3ds Max 9 ........................... 732 Интерфейс программы .................................................................. 733 Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) ........................................................ 734 Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) ............................... 734 Сочетания клавиш для работы с NURBSBобъектами ...................... 735 Приложение 3. Содержимое DVD, прилагаемого к книге ........................ 736
Введение Стремительное развитие технологий в последнее десятилетие привело к такому же быстрому росту в области компьютерной техники и программного обеспече ния. Еще совсем недавно незначительный, по сегодняшним меркам, эпизод из фильма, созданный при помощи спецэффектов, вызывал бурю восторга и обсуж дений. Сегодня спецэффектами в кино и на телевидении никого не удивишь. Они стали обыденным явлением благодаря массовому распространению программ соз дания компьютерной графики и, в частности, трехмерного моделирования. Редак торы трехмерной графики — самые интересные по своим возможностям и слож ные по освоению приложения. Одно из лидирующих мест среди таких программ занимает 3ds Max. Благодаря своим уникальным возможностям и доступности освоения это приложение сегод ня имеет наибольшее количество поклонников как среди любителей, так и в кругу профессионалов. Пожалуй, осталось очень мало сфер деятельности человека, свя занных с трехмерной графикой, в которых не используется 3ds Max. Ее активно применяют для создания игр и фильмов, в архитектуре и строительстве, в меди цине и физике, а также во многих других областях. При выходе каждой новой версии программа приобретает новые возможности и становится более профессиональной. Сегодня создание и визуализация сцен в 3ds Max ограничены только фантазией пользователя и знанием возможностей приложения. Вы держите в своих руках уникальную книгу, рассказывающую языком живых примеров об удивительном мире статических и анимированных образов в среде программы 3ds Max 2008. Каждое упражнение является самостоятельным, реали зация любого из них не требует более полуторадвух часов (конечно, при соответ ствующем уровне опытности пользователя). Каждый пример отвечает на конкрет но поставленный вопрос: как моделировать и текстурировать микроволновую печь или автомобиль, как анимировать книгу, текст, написанный перьевой ручкой, фонтан или песочные часы и т. д. Существует несколько уровней обучения работе в программе 3ds Max, начиная с самого простого, когда задачей является моделирование простых объектов сце ны или перемещение объекта из точки А в точку Б, до создания реалистичных мо делей и «оживления» анимационных персонажей. Все описанные в книге упраж нения способны натолкнуть на новые идеи для создания различных образов или анимаций. Работая над собственным проектом, вы можете вдруг вспомнить один из уроков книги, который подскажет вам способ решения задачи. Компьютерная анимация, которая используется для содания художественных и анимационных фильмов, в телевизионных программах и компьютерных играх,
Введение
11
является сложной и многокомпонентной. Существует множество способов моде лирования объектов и создания анимации и, как следствие, большое количество трудностей, связанных с этим. Данная книга призвана помочь в преодолении по добных трудностей.
Для кого предназначена книга Книга «3ds Max 2008. Секреты мастерства» предназначена всем пользователям, которые хотели бы заняться или уже работают с трехмерной графикой и желают подняться на новую ступень мастерства. Книга будет полезна и для начинающих разработчиков, делающих свои первые шаги в компьютерной графике, и для пользователей, уже имеющих опыт работы с трехмерной графикой. 3ds Max 2008 — сложная программа, и даже ее опытные пользователи порой стал киваются при работе с трудностями, связанными с недостаточными знаниями. Возможности приложения настолько обширны, что одну и ту же задачу можно ре шать несколькими способами, причем каждый способ уникален. Именно поэтому пользователям, имеющим опыт работы с этой программой, будут интересны раз делы книги, посвященные трехмерному моделированию и анимации, созданию ма териалов и текстурированию, работе с кривыми и поверхностями. Для пользователей, делающих первые шаги в изучении 3ds Max, не лишними будут знания о традиционном искусстве и классической анимации. Знание та ких приложений, как Adobe Photoshop, Corel PHOTOPAINT, Adobe Illustrator и CorelDRAW, Adobe After Effects или Autodesk Combustion, помогут вам значи тельно быстрее освоить 3ds Max. Часто при работе с 3ds Max вам придется создавать собственные текстуры и заниматься постобработкой визуализированных изобра жений. Однако это не означает, что без знания перечисленных выше приложений вы не можете изучать 3ds Max. Как минимум вы должны уметь работать с опера ционной системой и иметь представление о редакторах растровой графики. В первой части книги даны основы, которые помогут вам выполнять уроки, при веденные во второй и третьей частях издания. Если вы сразу обратились ко вто рой части книги и чувствуете, что вам не хватает базовых знаний или в них есть пробелы, начните чтение с самого начала. Если вы пользователь среднего уровня, то можете начать изучение со второй час ти. С ее помощью вы сможете почерпнуть новые знания и овладеть большим ко личеством методов моделирования и анимации. Даже если вы уже достаточно опытный пользователь программы 3ds Max, то практически из каждой главы смо жете узнать чтото новое и полезное.
Структура книги Книга состоит из трех независимых частей и трех приложений. К изданию также прилагается DVD, который содержит сцены примеров, описанных в книге, цвет ные иллюстрации и демонстрационные 32 и 64битные версии 3ds Max 2008.
12
Введение
Часть 1. Основы работы в 3ds Max 2008 Первая часть является в основном ознакомительной и предназначена для начи нающих пользователей программы 3ds Max. В ней в сжатом виде собраны основ ные сведения, необходимые для изучения уроков, которые размещены во второй и третьей частях книги. Здесь вы познакомитесь с интерфейсом приложения, основными приемами работы, научитесь использовать Material Editor (Редактор ма териалов), визуализировать изображения и выполнять другие действия, необхо димые для создания полноценных сцен.
Глава 1 «Интерфейс программы» — в ней описаны элементы интерфейса при ложения, рассмотрены основные панели и инструменты для работы с програм мой 3ds Max 2008. Здесь также идет речь о расширении возможностей прило жения за счет подключаемых модулей, затронуты вопросы тонкой настройки программы и создания собственного пользовательского интерфейса.
Глава 2 «Основные приемы работы» — здесь рассмотрено создание объектов сцены в программе 3ds Max. Возможности приложения настолько обширны, что одни и те же объекты можно смоделировать различными способами. Эта глава дает общее представление об объектах форм, параметрических объектах и модификаторах, применяемых для быстрого изменения форм объектов и соз дания анимации.
Глава 3 «Материалы и текстуры» — рассказывает, что такое Material Editor (Ре дактор материалов) и как с ним работать. В данной главе подробно рассмот рен стандартный материал и даны начальные сведения о составных материалах. Вы узнаете о том, как назначать материал объектам и создавать текстуры.
Глава 4 «Анимация в среде 3ds Max 2008» — здесь приведены основы созда ния анимированных изображений с использованием ключевых кадров, кон троллеров и выражений, а также описано выполнение анимации частиц.
Глава 5 «Основы визуализации» — в ней рассмотрены основные средства ви зуализации в программе 3ds Max и способы получения растровых изображе ний, рассказано о работе модуля Video Post (Видеомонтаж).
Глава 6 «Технологии вывода анимированных изображений» — описывает, как подготавливать и визуализировать сцены с использованием анимации, создан ные в программе 3ds Max. В этой главе рассказывается о том, как сделать раз мытое движение, характерное для съемочной камеры или фотоаппарата, о том, как визуализировать последовательность кадров с применением компьютеров, объединенных в локальную сеть, а также о форматах и технологиях сжатия ви деоизображений.
Часть 2. Практический курс Вторая часть представляет собой собрание уникальных упражнений, сгруппиро ванных по главам и затрагивающих почти все аспекты работы с программой. Все задания являются самостоятельными и не требуют соблюдения последовательно сти при их изучении, хотя по уровню сложности расположены от простых к более сложным. Пользователям, не имеющим достаточного опыта работы с 3ds Max, я рекомендую выполнять упражнения по порядку.
Введение
13
Все упражнения написаны таким образом, чтобы у вас не возникло сложностей с их повторением. Кроме того, практически в каждом задании содержатся сведе ния, поясняющие выполнение тех или иных действий, дается подробное описание команд, а также приведены иллюстрации с настройками и видами окон проекций. Во многих случаях выбор определенных действий сопровождается пояснением. Это поможет вам не просто бездумно выполнять действия, но и понять, почему ис пользована та или иная команда, что очень важно для самостоятельной работы.
Глава 7 «Освещение» — изучив эту главу, вы научитесь правильно устанавли вать свет, располагать тени и освещать интерьер. Вы также познакомитесь с объемным (видимым) светом. Освещение — это мощный инструмент в ру ках дизайнера трехмерной графики, и нужно уметь правильно им пользо ваться.
Глава 8 «Анимация сцен» — описывает различные способы создания комби нированных анимаций. Эта глава позволит вам научиться использовать кон троллеры и выражения, управляющие значениями анимации. Кроме того, вы узнаете о создании систем частиц с использованием окна диалога Particle View (Окно системы частиц) и без него.
Глава 9 «Практическое моделирование» — начиная с простых уроков, вы на учитесь основам моделирования и постепенно перейдете к решению более сложных задач. Вы узнаете, что такое сплайновое моделирование, моделиро вание полигонами, NURBSмоделирование и моделирование лофтобъектов. В данной главе будет рассмотрено комплексное моделирование. Полученные в этой главе знания помогут вам создавать более сложные модели, о которых пойдет речь в следующих главах.
Глава 10 «Текстурирование» — рассказывает о долгом и кропотливом процес се создания материалов для трехмерных объектов. Чтобы сделать приемлемую текстуру, можно экспериментировать не один час. Окно Material Editor (Редак тор материалов) в 3ds Max настолько удачно организовано, что позволяет по лучить практически любой материал, — все ограничено только знаниями и во ображением пользователя. Выполняя упражнения этой главы, вы научитесь создавать реалистичные материалы и текстуры. Кроме того, познакомитесь с материалами подключаемого модуля VRay.
Глава 11 «Визуализация» — описывает, как подготавливать и визуализиро вать сцены, созданные в программе 3ds Max. Существует большое количество вариантов, позволяющих получить при визуализации хорошее изображение, но всегда есть способ улучшить его. В упражнениях этой главы рассказывает ся о том, как это сделать. Рассматриваются методы работы с фотографиями, исследуется возможность улучшения визуализации за счет создания глубины резкости изображения.
Часть 3. Усложненное моделирование Для работы с упражнениями, собранными в данной части книги, вам понадобится обладать как минимум знаниями начального уровня или выполнить задания пре дыдущей части. Уроки сложны для изучения, но вместе с тем являются самыми интересными по своей структуре, моделированию и конечному результату.
14
Введение
В главах этой части описано моделирование и текстурирование автомобиля, а также два способа моделирования головы со средним уровнем детализации, ее текстури рование и создание волос. Чтобы выполнять такие задания, вы должны не только знать инструменты и методы моделирования, у вас должно быть хорошо развито пространственное мышление, иначе можно потеряться в большом количестве вер шин, ребер и полигонов строящейся модели. Кроме того, для моделирования го ловы очень пригодится умение рисовать и образно мыслить.
Глава 12 «Моделирование автомобиля» — описывает одну из интереснейших задач, которые могут стоять перед пользователем программы 3ds Max. Она довольно сложна для людей, не имеющих достаточного опыта моделирования, поэтому к выполнению упражнений этой главы рекомендуется приступать, предварительно ознакомившись с моделированием более простых объектов (например, описанных в гл. 9). Задания данной главы построены так, что их последовательное выполнение позволит вам смоделировать к ее концу авто мобиль BMW пятой серии.
Глава 13 «Текстурирование автомобиля» — в ней рассмотрено текстурирова ние, которое необходимо выполнить после построения модели автомобиля. Именно хорошие текстуры придают модели вид, который может претендовать на реалистичность. Для простоты восприятия глава разделена на два упраж нения. Первое задание затрагивает общие вопросы и текстурирование кузова. Второе — описывает текстурирование отдельных элементов.
Глава 14 «Моделирование головы» — рассказывает об интересном, но в то же время сложном занятии, которое по плечу только опытным дизайнерам. Все описанные в этой главе операции сложны для выполнения и требуют предва рительной подготовки. Упражнения, представленные в данной главе, раскры вают темы моделирования при помощи модуля Surfacetools и полигонального моделирования с последующим текстурированием готовой модели и созда нием волос. Первые два задания основаны на принципе моделирования голо вы среднего уровня детализации, достаточном для создания реалистичного об раза.
Приложения
Приложение 1 «70 советов пользователям 3ds Max» — содержит 70 советов, предназначенных прежде всего пользователям, которые только начинают ра ботать с программой 3ds Max. Все советы, собранные в этом приложении, воз никли на основе практического опыта работы в программе и призваны помочь в ее освоении и решении некоторых проблем.
Приложение 2 «Основные сочетания клавиш 3ds Max 2008» — включает в себя сведения об основных сочетаниях клавиш, ускоряющих процесс выполнения определенных команд и, как следствие, облегчающих работу с приложением. Более полное описание сочетаний клавиш можно найти в файле справки про граммы.
Приложение 3 «Содержимое прилагаемого DVD» — содержит описание со держимого DVD, который поставляется вместе с книгой.
Введение
15
Требования к программному и аппаратному обеспечению Выбор операционной системы Обратите внимание: прежде чем устанавливать 3ds Max 2008 на свой компьютер, вы должны убедиться в том, что он обладает необходимым минимумом аппарат ного и программного обеспечения. Для работы с 32битным приложением 3ds Max 2008 вам понадобится операци онная система Microsoft Windows Vista или Microsoft Windows XP Professional с установленным пакетом обновления Service Pack 2 или выше. Для работы с 64битным приложением 3ds Max 2008 вам понадобится операцион ная система Microsoft Windows Vista или Microsoft Windows XP Professional x64, которая, на мой взгляд, является на сегодняшний день лучшим выбором для рабо ты с большими сценами и сложной визуализацией. Кроме того, на 64битный ком пьютер вы можете устанавливать как 64, так 32битную версии программы.
ВНИМАНИЕ ______________________________________________________________________ В операционных системах Windows 98/Me, Windows NT, Windows 2000, Windows XP Home Edition или Windows 2003 Server программа 3ds Max 2008 работать не будет.
Для установки программы также понадобится предварительно инсталлирован ный DirectX версии не ниже 9c или 10 (для операционной системы Windows Vista).
ПРИМЕЧАНИЕ ___________________________________________________________________ При установке операционной системы Windows XP SP 2 DirectX версии 9c инсталлиB руется автоматически.
Требования к аппаратному обеспечению Для обеспечения наилучшей производительности в среде 3ds Max 2008 нужен до статочно мощный компьютер. В случае 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 как системы с наилучшей производительностью. Наличие второго процессора уве личивает мощность системы и позволяет комфортно работать с другими приложе ниями в процессе визуализации в 3ds Max.
16
От издательства
СОВЕТ ___________________________________________________________________________ На вкладке Процессы окна Диспетчер задач Windows можно указать приложению, сколько процессоров нужно использовать.
Для комфортной работы следует иметь трехкнопочную мышь с колесом прокрут ки (предпочтительно оптическую), что значительно упрощает навигацию по меню и в окнах проекций. Одним из наиболее важных элементов в производительности системы являет ся видеокарта. Не стоит останавливать свой выбор на видеокартах, оптимизи рованных для компьютерных игр. На сайте производителя программы 3ds Max (www.autodesk.com/3dsmax) можно получить список видеокарт, наиболее подходя щих для работы с данным приложением. Рекомендуется, чтобы видеокарта под держивала разрешение экрана как минимум 1024 × 768 с 16битным цветом и име ла в своем составе драйверы для OpenGL и DirectX. Кроме того, видеокарта должна иметь как минимум 32 Мбайт встроенной оперативной памяти. СОВЕТ ___________________________________________________________________________ Хорошим выбором будет приобретение профессионального трехмерного ускориB теля.
Для полной инсталляции и работы с программой необходимо 650 Мбайт (жела тельно 1 Гбайт) свободного места на жестком диске.
От издательства Ваши замечания, предложения, вопросы отправляйте по адресу электронной почты
[email protected] (издательство «Питер», компьютерная редакция). На вебсайте издательства http://www.piter.com вы найдете подробную информа цию о наших книгах.
Часть 1
Основы работы в 3ds Max 2008 Глава 1. Интерфейс программы Глава 2. Основные приемы работы Глава 3. Материалы и текстуры Глава 4. Анимация в среде 3ds Max 2008 Глава 5. Основы визуализации Глава 6. Технологии вывода анимированных изображений
18
Часть 1. Основы работы в 3ds Max 2008
Знакомство с такой сложной и объемной программой, как 3ds Max 2008, логично начать с изучения ее интерфейса и возможностей. Глубокое знание приложения существенно облегчает работу, и этой теме стоило бы посвятить значительную часть книги. Однако цель данного издания — поделиться знаниями и навыками, которые автор приобрел за годы работы с пакетом 3ds Max, поэтому основное вни мание в книге будет уделено практическим упражнениям. Первая часть предназначена для тех пользователей, которые только начинают зна комиться с трехмерным моделированием. В ней представлены минимально необ ходимые знания для выполнения упражнений, размещенных во второй и третьей частях книги.
Глава 1
Интерфейс программы • Элементы интерфейса • Подключаемые модули • Настройка программы
20
Глава 1. Интерфейс программы
Чем важно изучение интерфейса программы? Интерфейс обеспечивает доступ к управлению всеми возможностями приложения. Многие пользователи, прене брегая его изучением, впоследствии сталкиваются с трудностями даже при моде лировании простых сцен, не говоря о том, чтобы применять потенциал програм мы полностью. Приложение 3ds Max имеет очень гибкий интерфейс, позволяющий выполнить одно и то же действие разными путями. Вы также можете создавать собственные пользовательские меню, панели инструментов, назначать сочетания клавиш опе рациям и т. д. Все это не только облегчает работу в программе, но и ускоряет про цесс моделирования и анимации. Большинство задаваемых вопросов по 3ds Max возникают изза поверхностного знакомства пользователей с интерфейсом и возможностями приложения. По этой причине я настоятельно рекомендую тщательно изучить интерфейс и возможнос ти 3ds Max 2008, а также советую не пренебрегать справочной информацией, по ставляемой вместе с программой. Это один из самых обширных и легкодоступ ных источников ответов на вопросы, возникающие у пользователей.
Элементы интерфейса Первое, что вы увидите после запуска программы 3ds Max 2008, — ее основное окно (рис. 1.1). Если вы начинающий пользователь и не знакомы с интерфейсом, сначала осмот рите элементы и ознакомьтесь с окружением. Вы увидите, что интерфейс прило жения состоит из элементов, в которых сгруппированы однотипные команды. На пример, в группе средств управления анимацией собраны кнопки управления воспроизведением и настройкой поведения объектов во времени. Окно программы можно условно разделить на пять основных элементов.
Main Menu (Главное меню). Находится в верхней части окна приложения и обес печивает доступ к основным командам 3ds Max 2008. Все команды меню объединены в категории.
Main Toolbar (Главная панель инструментов). Обычно находится под главным меню, но может отображаться как плавающая панель или располагаться в других местах окна. Содержит кнопки быстрого доступа к наиболее употреб ляемым командам программы.
Viewports (Окна проекций). Расположены в центре окна и занимают его боль шую часть. Четыре раздельных вида сцены отображают проекции сверху Top (Сверху), сбоку Left (Слева), фронтальную Front (Спереди) и перспективную Perspective (Перспектива).
Command Panel (Командная панель). Обычно располагается справа от окон про екций. Эта панель содержит шесть вкладок и обеспечивает выполнение опе раций по созданию и модификации объектов сцены. Каждая вкладка состоит из свитков с настройками объектов.
Элементы интерфейса
21
Рис. 1.1. Окно программы 3ds Max 2008
Lover Interface Bar (Нижняя строка интерфейса). Расположена в нижней части окна программы. Содержит различные поля и кнопки, в состав которых вхо дят поля отображения состояния и подсказок, а также наборы кнопок для управления окнами проекций и воспроизведения анимации.
Welcome Screen (Окно приветствия). При помощи небольших видеороликов в формате Quick Time, вызываемых кнопками окна приветствия, можно крат ко ознакомиться с основными функциями и возможностями программы.
Рассмотрим каждый вышеперечисленный пункт более подробно.
Главное меню Раскрывающиеся меню в верхней части окна программы обеспечивают доступ ко всем основным возможностям программы и являются оптимальным выбором для начинающих пользователей. Главное меню состоит из следующих пунктов: File (Файл), Edit (Правка), Tools (Инструменты), Group (Группировка), Views (Вид),
22
Глава 1. Интерфейс программы
Create (Создание), Modifiers (Модификаторы), reactor, 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 2008, позволяют указать папку для органи зации проектов, создаваемых в 3ds Max, и опубликовать модели для их просмотра при помощи программы Auto desk DWF Viewer.
Рис. 1.2. Меню File (Файл)
Команды загрузки анимации Load Animation (Загрузить анимацию) и ее сохранения Save Animation (Сохранить анимацию) используют формат XAF, позволяющий выбо рочно сохранять и загружать анимацию любого количе ства объектов сцены. Команда Asset Tracking (Средство сле жения за процессами) вызывает окно диалога. В нем можно получить доступ к файлам сцены и растровым изображе ниям, используемым в редакторе материалов, их свой ствам и многому другому.
Элементы интерфейса
23
Команда 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. Меню Edit (Правка) команды 3ds Max 2008, предназначеные для транс формации объектов сцены: 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 By (Выделить по) содержит подменю: Color (Цвету) , Name (Имени) и Layer (Слою). При выборе второго варианта откры вается окно Select From Scene (Выбор из сцены), которое также можно вызвать,
24
Глава 1. Интерфейс программы
нажав клавишу H. В этом окне можно выделять объекты сцены по именам из спис ка, используя для этой цели систему поиска или наборы выделений. Для фильтра ции списка объектов служат кнопки области Display (Отображение). С помощью команды Selection Region (Область выделения) меню Edit (Правка) вы можете указать тип области выделения. Команда Edit Named Selection Sets (Редак тировать название выделенной области) открывает окно, в котором можно выде лять, редактировать и переименовывать созданные наборы объектов сцены. При выборе команды Object Properties (Свойства объекта) появляется окно, содержащее все свойства выделенного объекта.
Меню Tools (Инструменты) Меню Tools (Инструменты) (рис. 1.4) позволяет преобразовывать объекты различ ными способами. Почти все команды этого меню вызывают плавающие окна или окна диалога. ПРИМЕЧАНИЕ ___________________________________________________________________ Плавающее окно отличается от окна диалога тем, что оно может оставаться открытым во время работы с объектами в окнах проекций. Окно диалога после использования необходимо закрыть для продолжения работы.
В данной версии программы появилась новая группа команд, расположенных в верх ней части меню Tools (Инструменты), которые позволяют работать с объектами сце ны, используя Scene Explorer (Проводник сцены). Его можно применять для просмот ра, сортировки, фильтрации и выделения объектов 3ds Max с целью их последующего удаления, изменения видимости, замораживания, редактирования свойств и т. п. Первая команда в этой группе — Open Explorer: … (Открыть проводник: …) — появ ляется, если в сцене присутствует хотя бы один проводник сцены. Она открывает окно диалога последнего активного проводника, имя которого присутствует в кон це названия команды. Команда New Scene Explorer (Новый проводник сцены) позволяет создать новый проводник. При ее выполнении открывается одноименное окно диалога. Команда Manage Scene Explorer (Управление проводником сцены) открывает диа логовое окно, с помощью которого можно сохранять или загружать определенные проводники сцены, удалять или переименовывать существующие и создавать соб ственные проводники, используемые в программе по умолчанию. Команда Saved Scene Explorers (Сохраненные проводники сцены) дает возможность открывать сохраненные ранее проводники сцены. Команда Display Floater (Плавающее окно отображения) вызывает одноименное окно, при помощи которого можно скрывать (настройки области Hide (Спрятать)), фиксировать (Freeze (Фиксировать)) объекты, а также устанавливать свойства их отображения (вкладка Object Level (Уровень объекта)).
25
Элементы интерфейса
При выборе команды Layer Manager (Управление слоя ми) появляется плавающее окно, позволяющее созда вать и удалять слои, управлять их свойствами, а также перемещать объекты в пределах различных слоев и по лучать доступ к их свойствам. Команда Light Lister (Список источников света) открыва ет плавающее окно с основными настройками всех ис точников света, находящихся в сцене. Оно позволяет из менять значения параметра Multiplier (Яркость), задавать возможность отбрасывания тени, управлять включени ем/выключением и другими параметрами источников света. Команда Manage Scene States (Управление состояниями сцены) позволяет записывать информацию о состоянии сцены (объекты, слои, материалы, камеры и свет) в файл с возможностью сохранения и последующего восстанов ления. Если выбрать команду Mirror (Зеркальное отображе ние), то появится окно диалога, позволяющее создавать симметричные копии объектов относительно выбран ных осей координат. Здесь же можно задать тип созда ваемых при копировании объектов: No Clone (Не копи ровать), Copy (Независимая копия объекта), Instance (Привязка) и Reference (Подчинение). Рис. 1.4. Меню Tools
Команда Array (Массив) вызывает одноименное окно (Инструменты) диалога, в котором можно создавать дубликаты выде ленного объекта (или группы выделенных объектов), равномерно распределяя их в пространстве. Массив создается из выделенного объекта путем применения за данной комбинации преобразований (перемещения, поворота и масштабирова ния) с учетом системы координат и центра преобразования. Массивы могут быть одномерными (размещенными вдоль одного направления), двумерными (распо ложенными в двух направлениях) и трехмерными (расположенными в трех на правлениях). Чтобы оперативно просматривать результат настроек, выполненных в окне Array (Массив), необходимо нажать кнопку Preview (Просмотр). Чтобы выровнять объекты друг относительно друга, необходимо выделить один из них, выбрать команду Align (Выравнивание) (или нажать сочетание клавиш Ctrl+A) и щелкнуть на втором объекте. Откроется окно диалога Align Selection (Выравни вание выделенных объектов), которое позволяет выравнивать объекты с исполь зованием осей координат, характерных точек объектов относительно масштаба и ориентации локальных систем координат. Команда Quick Align (Быстрое выравнивание) не имеет предварительных настроек и выравнивает выделенный объект относительно целевого, используя перемеще ние опорной точки выделенного объекта в опорную точку целевого.
26
Глава 1. Интерфейс программы
Команда Snapshot (Снимок) позволяет создавать копии как единичного объекта в текущем кадре, так и набора клонов в определенные промежутки времени ани мации с заданным количеством копий. При выборе команды Spacing Tool (Распределение) появляется одноименное окно диалога, в котором можно задать параметры распределения объектов для создания дубликатов выделенного объекта или совокупности выделенных объектов, выбрав из списка способ распределения и задав кривую траектории или начальную и конеч ную точки линии распределения. Здесь можно также указать тип объектов, полу чаемых при копировании, и способ прикрепления дубликатов к линии пути. Команда Clone and Align (Клонирование и выравнивание) позволяет создавать ко пии объектов с одновременным выравниванием копии относительно целевого объекта. При использовании данной команды можно выбрать более одного целево го объекта (из списка или просто щелкнуть на нем в окне проекции), что позволяет создавать соответствующее количество копий, позиционированных в простран стве относительно этих объектов. Свиток Align Parameters (Параметры выравнива ния) окна Clone and Align (Клонирование и выравнивание) позволяет задавать па раметры положения и выравнивания в пространстве копий выделенных объектов, а свиток настроек Clone Parameters (Параметры клонирования) — тип объектов, соз даваемых при дублировании. Команда Normal Align (Выровнять нормаль), для выполнения которой можно нажать сочетание клавиш Alt+N, позволяет выровнять выделенный объект, совместив его заданную нормаль с указанной нормалью целевого объекта. После указания норма лей выделенного и целевого объекта появляется окно диалога, в котором можно из менить положение и ориентацию выделенного объекта относительно целевого. При помощи команды Align Camera (Выровнять камеру) можно выровнять камеру относительно нормали выбранной грани. В результате направление линии визи рования камеры изменяется так, что плоскость окна проекции выбранной камеры становится параллельной выбранной грани целевого объекта. Команда Align to View (Выровнять по проекции) позволяет выровнять локальные оси выделенного объекта (или совокупности объектов) относительно оси Z актив ного окна проекции. В окне диалога Align to View (Выровнять по проекции) можно задать ось локальной системы координат объекта, которая будет выровнена в на правлении Z системы координат активного окна проекции. Используя команду Place Highlight (Поместить блик), можно точно разместить на поверхности выделенного объекта блик от источника света или отражение друго го объекта. Для этого программа поворачивает целевой объект так, чтобы он был ориентирован в направлении указанной нормали выделенного объекта. Команда Isolate Selection (Изолировать выделение), для выполнения которой мож но также нажать сочетание клавиш Alt+Q, позволяет спрятать все объекты сцены, за исключением выделенного. Это дает возможность освободить ресурсы ком пьютера и упростить для моделирования отображение сцены в окнах проекций. При переходе в данный режим открывается плавающая панель с кнопкой Exit
Элементы интерфейса
27
Isolation Mode (Выход из режима изолированного выделения), щелкнув на которой вы можете выйти из режима изолированного выделения. При выборе команды Rename Objects (Переименовать объекты) появляется плава ющее окно, в котором можно одновременно изменить имена нескольких объектов. Для изменения имени выделенных объектов используется основное имя, к кото рому можно добавить приставку, окончание или номер. Полученные таким об разом новые имена могут быть присвоены объектам, выделенным в окнах проек ций или выбранным из списка окна диалога Pick Objects to Rename (Выбрать объекты для переименования), которое появляется при установке в окне Rename Objects (Переименовать объекты) переключателя в положение Pick (Выбрать). Команды Assign Vertex Colors (Назначить вершинам цвет), Color Clipboard (Буфер обмена с цветом) и Camera Match (Горизонт камеры) открывают соответствующие утилиты, находящиеся на вкладке Utilities (Утилиты) командной панели. При помощи команды Grab Viewport (Снимок окна проекции) можно скопировать изображение активного окна проекции и отобразить его в окне визуализации с воз можностью последующего сохранения. Используя команду Measure Distance (Измерить расстояние), можно измерить рас стояние между двумя точками, указанными в окне проекции. Команда Channel Info (Канал информации) открывает окно Map Channel Info (Карта каналов информации), позволяющее манипулировать данными каналов, которые часто используют разработчики игр. Окно содержит значительное количество ин формации, например об имени объекта, его идентификаторе, имени каналов, ко личестве вершин, граней, а также размере. При помощи этого окна вы можете бы стро определить, какой канал использует больше всего места, и исключить его.
Меню Group (Группировка) Команды меню Group (Группировка) (рис. 1.5) позволяют контролировать создание, редактирование и разрушение име нованных групп объектов. Сгруппированные объекты действуют как единый объект, что позволяет одновременно манипулировать всеми объединен ными в группу объектами. После выделения объектов сцены, которые нужно сгруппиро вать, и выполнения команды Group (Группировать) из меню Group (Группировка) откроется окно диалога с единствен ным параметром — текстовым полем для ввода имени груп пы. В число объектов, выделенных для группировки, могут также входить другие группы.
Рис. 1.5. Меню Group (Группировка)
Команда Ungroup (Разгруппировать) является обратной по отношению к Group (Груп пировать) и разгруппировывает объекты, составляющие группу. При этом вложен ные группы не удаляются, но преобразования, примененные к группе, теряются.
28
Глава 1. Интерфейс программы
При помощи команды Open (Открыть) можно открыть доступ к объектам, находя щимся в группе, для их преобразований или применения к ним модификаторов, которые не должны затрагивать остальных членов группы. После внесения изме нений группу необходимо закрыть. Для этого следует выделить один из объектов, входящих в группу, и щелкнуть на строке команды Close (Закрыть), находящейся в меню Group (Группировка). Команда Attach (Присоединить) позволяет присоединить выделенный объект к груп пе (доступна при наличии выделенного объекта и группы). Противоположной по отношению к этой команде является команда Detach (Отделить), позволяющая выделить объект в открытой группе и вывести его из группы, сделав самостоятель ным объектом. Команда Explode (Разрушить) аналогична команде Ungroup (Разгруппировать) и отличается только тем, что, кроме выделенной группы, удаляются и все вложен ные в нее группы. Подменю команды Assembly (Сборка) содержит те же команды, что и меню Group (Группировка), с той лишь разницей, что, когда вы создаете сборку, програм ма включает в нее специальный тип вспомо гательного объекта — head object (Главный объект).
Меню Views (Вид) Меню Views (Вид) (рис. 1.6) содержит коман ды, относящиеся к окнам проекций и позво ляющие управлять отображением. Для отмены изменений режимов отображе ния в активном окне проекции применяется команда Undo View Change (Отменить измене ние в окне проекции), для выполнения кото рой можно также нажать сочетание клавиш Shift+Z. В частности, эта команда отменяет та кие изменения в окнах проекций, как прокрут ка и масштабирование.
Рис. 1.6. Меню Views (Вид)
Команда Redo View Change (Повторить измене ние в окне проекции) используется для по вторения отмененного изменения состояния активного окна проекции, то есть для возвра та к предыдущему состоянию.
ПРИМЕЧАНИЕ ___________________________________________________________________ Команды отмены и повторения выполненных изменений, которые относятся к соB стоянию активного окна проекции, не отменяют действия, выполненные над объекB тами сцены.
Элементы интерфейса
29
Команда Save Active … View (Сохранить активную проекцию вида) позволяет со хранить в буфере программы состояние окна активной проекции. Одновремен но в буфере может храниться до восьми различных проекций. СОВЕТ ___________________________________________________________________________ Рекомендуется сохранять состояние окон проекций перед внесением существенных изменений в режим отображения сцены, чтобы при необходимости можно было верB нуться к сохраненному состоянию.
Для восстановления сохраненного режима отображения в активном окне проекции служит команда Restore Active … View (Восстановить активную проекцию). Наимено вание проекции, допускающей восстановление, включается в название команды. Команда Grids (Координатные сетки) открывает доступ к подменю, содержащему следующие команды: Show Home Grid (Показать исходную сетку), Activate Home Grid (Активизировать исходную сетку), Activate Grid Object (Активизировать объект сетку) и Align Grid to View (Выровнять сетку в окне проекции). Все эти команды призваны облегчить моделирование объектов и используются в качестве кон струкционных плоскостей, на которых строятся объекты. Команда Viewport Background (Фон окна проекции), для выполнения которой мож но также нажать сочетание клавиш Alt+B, открывает окно диалога, позволяющее загрузить в качестве фона любого окна проекции растровое изображение или ани мацию. Такие изображения облегчают процесс моделирования или согласование объектов сцены с визуализируемыми изображениями с использованием фона. Команда Update Background Image (Обновить изображение фона) применяется для обновления изображения фона в окне проекции после внесения изменения в рас тровое изображение или анимацию, использованную в качестве фона. Для восстановления положения и исходного масштаба изображения фона после примененных к нему преобразований служит команда Reset Background Transform (Восстановить преобразованный фон). Команда Show Transform Gizmo (Показать контейнер преобразования) включает и выключает показ значков векторов координатных осей выделенных объектов во всех окнах проекций. При помощи команды Show Ghosting (Показывать двойников) можно включить и выключить режим отображения двойников в окнах проекций для анимируемых объектов. При включенном режиме отображается позиция выделенного объекта в нескольких кадрах до и (или) после текущего кадра. Команда Show Key Times (Показывать время ключевых кадров) включает и выклю чает режим отображения моментов времени, соответствующих ключевым кадрам анимации вдоль траектории пути, где эти ключевые кадры расположены. Используя команду Shade Selected (Тонировать выделенные объекты), можно вклю чить и выключить режим тонированной раскраски выделенных объектов во всех
30
Глава 1. Интерфейс программы
окнах проекций. Такой режим дает возможность ускорить прорисовку объектов в ок нах проекций, позволяя отображать выделенный объект в тонированном виде. Команда Show Dependencies (Показывать зависимости) включает и выключает ре жим автоматического выделения объектов сцены, которые связаны или являются экземплярами выделенного объекта сцены. Команда Create Camera From View (Создать камеру из окна проекции), для выполне ния которой можно также нажать сочетание клавиш Ctrl+C, позволяет создать ка меру и позиционировать ее по активному окну проекции. ПРИМЕЧАНИЕ ___________________________________________________________________ Объект камеры можно создать только при активном окне проекции Perspective (ПерB спектива). Если активна камера, то она переместится и изменит свою ориентацию так, чтобы изображение в окне этой камеры соответствовало изображению исходB ного окна перспективной проекции.
Используя команду Add Default Lights to Scene (Включить в сцену исходные источ ники света), можно конвертировать исходное освещение в объекты сцены катего рии Lights (Источники света). Эта команда позволяет создавать начальное освеще ние с возможностью последующего изменения его параметров. Команда Redraw All Views (Перерисовать все окна проекций) обновляет изображе ние во всех окнах проекций. Необходимость такой перерисовки возникает в ре зультате модификации или редактирования объектов сцены, при которых линии объектов оказываются не полностью прорисованными. Команда Global Viewport Rendering Setting (Глобальные настройки визуализации окна проекций), появившаяся в 3ds Max 2008, является расширенным вариантом старых команд Activate All Maps (Активизировать все карты текстур) и Deactivate All Maps (Деактивизировать все карты текстур), которые включали показ текстур для всех материалов сцены или выключали его. Новая команда использует программ ный или аппаратный модуль для визуализации содержимого окон проекций. При этом аппаратная визуализация позволяет получить в окне проекции отображение материалов и текстур, близкое по качеству к визуализированному изображению. Команды подменю Standard Display (Стандартное отображение), Standard Display with Maps (Стандартное отображение с текстурными картами), Hardware Display (Аппа ратное отображение), Hardware Display with Maps (Аппаратное отображение с тек стурными картами), как уже говорилось выше, позволяют включать или выклю чать показ текстур для материалов сцены. При помощи команды Update During Spinner Drag (Перерисовать при перетаскива нии счетчиков) можно включить и выключить режим перерисовывания изображе ния в окнах проекций при изменениях значений в счетчиках, выполняемых при помощи мыши. Команда Adaptive Degradation (Адаптивная деградация) позволяет оптимизировать скорость воспроизведения анимации в окнах проекций. На практике это выглядит
Элементы интерфейса
31
так: воспроизведение анимации в тонированном режиме будет происходить до тех пор, пока скорость не упадет ниже установленного порогового значения, после чего 3ds Max понижает качество тонирования до следующего уровня для повыше ния скорости воспроизведения, и т. д. Diagnose Video Hardware (Диагностика видеоадаптера) — еще одна новая команда этого меню, позволяющая получить информацию о возможностях видеоадаптера, которые влияют на отображение объектов в окнах проекций (например, поддерж ку отображения теней). Команда Expert Mode (Экспертный режим) максимально увеличивает окна проек ций, убирая с экрана меню, панель инструментов, командную панель, строки состо яния и подсказки, кнопки управления анимацией и т. д. В данном режиме управ лять программой можно только при помощи сочетаний клавиш.
Меню Create (Создание) Меню Create (Создание) (рис. 1.7) содержит команды быстрого создания объектов без использования командной панели. При выборе команды в меню Create (Создание) на командной панели автоматически появляются настройки соответствующе го объекта. Категория Standard Primitives (Простые примитивы) объединя ет наиболее используемые параметрические объекты (форма таких объектов определяется набором параметров), применяе мые для построения более сложных геометрических форм. В их число входят Box (Параллелепипед), Cone (Конус), Sphere (Сфера), GeoSphere (Геосфера), Cylinder (Цилиндр), Tube (Труба), Torus (Тор), Pyramid (Пирамида), Teapot (Чайник), Plane (Плоскость). Категория Extended Primitives (Улучшенные примитивы) содер жит более сложные по форме параметрические объекты, такие Рис. 1.7. Меню Create (Создание) как Hedra (Многогранник), Torus Knot (Тороидальный узел), Chamfer Box (Параллелепипед с фаской), Chamfer Cylinder (Ци линдр с фаской), OilTank (Цистерна), Capsule (Капсула), Spindle (Веретено), L-Extrusion (Lтело экструзии), Gengon (Многогранная призма), C-Extrusion (Cтело экструзии), RingWave (Круговая волна), Hose (Рукав), Prism (Призма). В категорию AEC Objects (Архитектурные объекты) входят параметрические объек ты, применяемые для построения архитектурных моделей. Эти объекты позволя ют существенно ускорить процесс моделирования зданий, интерьеров и экстерье ров. В число архитектурных объектов входят: Wall (Стена), Railing (Перила), Windows (Окна), Doors (Двери) и Stairs (Лестницы). Категория Compound (Составные) объединяет объекты, составленные из двух и бо лее геометрических моделей или форм. Использование составных объектов позво ляет более эффективно создавать сложные модели органического происхождения (например, машиностроительные детали). В эту категорию входят: Morph (Мор
32
Глава 1. Интерфейс программы
финговые), 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 (Треугольный патч). При помощи сетки патчей можно создавать сглаженные поверхности за счет измене ния управляющих вершин поверхности патча. Категория NURBS1 объединяет инструменты создания поверхностей двух типов: CV Surface (CVповерхность) и Point Surface (Точечная поверхность), а также по строения кривых: CV Curve (CVкривая) и Point Curve (Точечная кривая). В категории Dynamics (Динамика) содержатся динамические объекты Damper (Амор тизатор) и Spring (Пружина), которые имитируют действие сил давления или упру гости при моделировании анимации с учетом динамики взаимодействия объектов сцены. Категория Shapes (Формы) объединяет сплайны различных типов: Line (Линия), Rectangle (Прямоугольник), Circle (Круг), Ellipse (Эллипс), Arc (Дуга), Donut (Коль цо), NGon (Многоугольник), Star (Звезда), Text (Текст), Helix (Спираль) и Section (Сечение). Основное предназначение сплайнов — служить заготовками для созда ния трехмерных объектов и линий, обозначающих траекторию анимации. Следующая категория — Extended Shapes (Улучшенные формы). Она объединяет такие объекты, как WRectangle (Wпрямоугольник), Channel (Канал), Angle (Угол), Tee (Тобразная форма) и Wide Flange (Широкий фланец). В категории Lights (Источники света) объединены различные типы источников света, которые можно использовать в сцене. Она содержит подкатегории Standard Lights (Стандартные источники света) и Photometric Lights (Фотометричес кие источники света), а также команду Daylight System (Система дневного осве щения). Категория Cameras (Камеры) представлена камерами двух типов: Free Camera (Сво бодная камера) и Target Camera (Нацеленная камера). Здесь же находится команда создания камеры из окна проекции Create Camera From View (Создать камеру из окна проекции). В категории Helpers (Вспомогательные объекты) содержатся вспомогательные объекты различных типов, которые не включаются в итоговое изображение сцены и предназначены для упрощения моделирования или анимации. В эту категорию 1
NURBS — Non Uniform Rational BSplines, неоднородные рациональные Bсплайны.
Элементы интерфейса
33
входят Dummy (Пустышка), Grid (Координатная сетка), Point (Точка), Tape Measure (Рулетка), Protractor (Угломер), Compass (Компас) и др. Категория SpaceWarps (Пространственные деформации) представлена пятью разно видностями объемных деформаций: Forces (Сила), Deflectors (Отражатели), Geometric/ Deformable (Деформируемая геометрия), Modifier-Based (На базе модификаторов) и Particles & Dynamics (Частицы и динамика). Каждая разновидность объединяет од нотипные объемные деформации, например в Geometric/Deformable (Деформируе мая геометрия) входят FFD(Box) (Произвольно деформируемый контейнер (прямо угольный)), Wave (Волна), Bomb (Бомба) и т. д. В категорию Systems (Дополнительные инструменты) входят Bones IK Chain (Це почки костей), Daylight System (Система дневного освещения) и Biped (Двуногий).
Меню Modifiers (Модификаторы) Меню Modifiers (Модификаторы) (рис. 1.8) позволяет назначать модификаторы, не переходя на вкладку Modify (Изменение) ко мандной панели. Модификаторы — параметрически управляемые функции, пред назначенные для изменения структуры объектов 3ds Max (напри мер, положения вершин в пространстве или кривизны сегментов). Перед присвоением параметрическому объекту модификатора необходимо выделить сам объект, к которому нужно применить модификатор. При этом в меню будут активны только те моди фикаторы, которые можно назначить данному примитиву. После выделения модификатора в меню Modifiers (Модификаторы) авто матически откроется панель, на которой вы можете изменить параметры выбранного модификатора. Модификаторы, представленные в меню Modifiers (Модифика торы), объединены в 16 категорий. Категория Selection (Выделение) содержит модификаторы, поз воляющие выделять объекты или подобъекты, чтобы потом Рис. 1.8. Меню Modifiers применить другие модификаторы только к выделению. К моди (Модификаторы) фикаторам выделения относятся 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
34
Глава 1. Интерфейс программы
(Поверхность), Sweep (Шаблон) и Trim/Extend (Обрезать/расширить). Например, модификатор Sweep (Шаблон) позволяет выполнять лофтинг профилей вдоль ли ний, импортированных из AutoCAD, или вдоль кривых 3ds Max с возможностью использования предустановленных форм. В отличие от модификатора Loft (Лоф тинговые), при помощи модификатора Sweep (Шаблон) можно использовать в ка честве формы пути кривые, имеющие разрывы. Модификаторы категории Mesh Editing (Редактирование поверхности) применя ются для редактирования сетчатых оболочек объектов. К модификаторам данной категории относятся Cap Holes (Накрытие отверстий), Delete Mesh (Удалить поверх ность), Edit Mesh (Редактирование поверхности), Edit Normals (Редактирование нормалей), Edit Poly (Редактирование полигонов), Extrude (Выдавливание), Face Extrude (Выдавливание граней), MultiRes (Множественное разрешение), Normal Modifier (Модификатор нормалей), Optimize (Оптимизация), Smooth (Сглажива ние), STL Check (STLтест), Symmetry (Симметрия), Tessellate (Разбиение), Vertex Paint (Раскраска вершин) и Vertex Weld (Слияние вершин). Категория Conversion (Замена) представлена тремя модификаторами, применяе мыми для преобразования одного типа объектов в другой: Turn to Mesh (Преобра зовать в поверхность), Turn to Patch (Преобразовать в патчповерхность), Turn to Poly (Преобразовать в полигональную поверхность). В категории Animation (Анимация) содержится 16 модификаторов, применяемых для создания и редактирования анимации. В их число входят Skin (Оболочка), Morpher (Морфинг), Flex (Гибкость), Melt (Таяние), Patch Deform (Деформация по патчу), Path Deform (Деформация по траектории), Surf Deform (Деформация по по верхности) и т. д. Категория Cloth (Ткань) представлена двумя модификаторами: Cloth (Ткань) и Garment Maker (Моделирование одежды). Оба модификатора дают возможность имитиро вать ткани, при этом позволяют создавать выкройки, рассчитывать динамику, учи тывая пересечения с поверхностью, имеют интерактивное управление поведени ем ткани и т. д. Категория Hair and Fur (Волосы и мех) содержит одноименный модификатор, ко торый позволяет создавать прически при помощи «расчески» для сложных конту ров, а также моделируя «завивку», «хвостики» и «пучки». Кроме того, возможно использование динамики волос — наследование инерции от движения кожи или других поверхностей. В категорию UV Coordinates (UVкоординаты) вошли модификаторы, связанные с наложением, редактированием и использованием проекционных координат: Camera Map (Проекция камеры), MapScaler (Масштабирование текстуры), 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)).
Элементы интерфейса
35
В категорию Subdivision Surfaces (Поверхности с разбиением) вошли три модифи катора, относящиеся к поверхностям с разбиением: HSDS1 Modifier (HSDSмодифи катор), MeshSmooth (Сглаженная поверхность) и TurboSmooth (Быстрое сглажива ние). Категория 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 (WSM) (Разбиение (WSM)) и Subdivide (Разбиение). Последняя категория меню Modifiers (Модификаторы) — Cameras (Камеры) — со стоит из одного модификатора Camera Correction (Корректирование камеры).
Меню reactor Меню reactor (рис. 1.9) содержит все необходимые команды для создания имитации физических реакций. Категория Create Object (Создать объект) содержит 21 команду, позволяющую создать объект модуля reactor. Среди них: Rigid Body Collection (Коллекция твердых тел), Cloth Collection (Кол лекция тканей), Soft Body Collection (Коллекция мягких тел), Rope Collection (Коллекция веревок), Wind (Ветер), Water (Вода), Constraint Solver (Решатель ограничений), Car-Wheel Constraint (Ограничение автомобильного колеса) и др. 1
Рис. 1.9. Меню reactor
HSDS — Hierarchical SubDivision Surfaces, поверхности с иерархическими подразделе ниями.
36
Глава 1. Интерфейс программы
В категорию 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 Real-Time Preview (Просмотр в режиме реального времени). Команда Create Animation (Создать анимацию) создает анимацию на основе объек тов модуля reactor, присутствующих в сцене, и их настроек.
Меню Animation (Анимация) Меню Animation (Анимация) (рис. 1.10) содержит множество команд, предназна ченных для создания и управления анимацией сцены. Категория IK Solvers (IKрешатели) содержит четыре ко манды для создания решателей (вспомогательных объек тов, которые управляют положением и поворотом связей и цепочек (например, костей) в инверсной кинематике): HI Solver (HIрешатель), HD Solver (HDрешатель), IK Limb Solver (IKрешатель конечностей) и SplineIK Solver (Сплай новый IKрешатель). В категории Constraints (Ограничения) содержится семь команд для создания контроллеров ограничения анима ции объектов: Attachment Constraint (Ограничение по при вязке), Surface Constraint (Ограничение по поверхности), Path Constraint (Ограничение по пути), Position Constraint (Ограничение по положению), Link Constraint (Ограни чение по связи), LookAt Constraint (Ограничение по ли нии взгляда), Orientation Constraint (Ограничение по пово роту).
Рис. 1.10. Меню Animation (Анимация)
Категория Transform Controllers (Контроллеры преобразо вания) содержит три контроллера преобразования: Link Constraint (Ограничение по связи), Position/Rotation/Scale (Положение/вращение/масштабирование) и Script (Сце нарий).
Элементы интерфейса
37
В категории 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 (Переименовать про смотр) — позволяют увидеть и оценить анимацию, сохранив ее во временном бу фере, за счет визуализации активного окна проекции до выполнения полной визуализации. Впоследствии эту анимацию можно переименовать и сохранить. Команда Toggle Limits (Переключить ограничители) дает возможность включать либо выключать использование контроллеров ограничений.
38
Глава 1. Интерфейс программы
Команда Delete Selected Animation (Удалить выделенную анимацию) удаляет все ключевые кадры анимации выделенного объекта или группы объектов.
Меню Graph Editors (Графические редакторы) Меню Graph Editors (Графические редакторы) (рис. 1.11) содержит команды для работы с графическими редакторами программы 3ds Max 2008. В верхней части данного меню находятся две одно типные команды: Track View — Curve Editor (Просмотр треков — редактор кривых) и Track View — Dope Sheet (Просмотр треков — таблица структуры). Команда New Track View (Новое окно просмотра треков) открывает дополнительное окно Graph Editors (Графи ческие редакторы).
Рис. 1.11. Меню 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.12) содержит команды, используемые для окончательной визуализации сцены. Команда Render (Визуализация), которую также можно выполнить нажатием кла виши F10, открывает окно диалога Render Scene (Визуализация сцены). В данном окне можно установить выходные параметры изображения, номера кадров для ви зуализации, параметры сглаживания, окно проекции, из которого будет проводить ся визуализация, а также выбрать модуль для визуализации и выполнить некоторые другие настройки.
39
Элементы интерфейса
При выборе команды Environment (Окружающая среда) появляется окно диалога Environment and Effects (Окружающая среда и эффекты), в котором настраиваются такие параметры, как цвет фона или фоновое изображение, глобальное освещение и ат мосферные эффекты. Команда Effects (Эффекты) аналогично предыду щей вызывает окно Environment and Effects (Окру жающая среда и эффекты), но с открытой вклад кой Effects (Эффекты). Категория Advanced Lighting (Дополнительное осве щение) содержит команды, открывающие окна с на стройками дополнительного освещения. В число команд входят: Light Tracer (Трассировка лучей), Radiosity (Диффузное отражение), Exposure Control (Контроль экспозиции) и Lighting Analysis (Анализ освещения).
Рис. 1.12. Меню Rendering (Визуализация)
Команда Render To Texture (Визуализация на тек стуру) открывает окно диалога, в котором можно задать параметры визуализации текстуры с использованием освещения, те ней и т. д. Команда Batch Render (Пакетная визуализация) позволяет визуализировать после довательность изображений с разных углов просмотра (камер) с возможностью из менения настроек в промежуточных видах. При выборе команды Raytracer Settings (Установки трассировки) открывается окно Render Scene (Визуализация сцены) на вкладке Raytracer (Трассировка). В нем мож но изменить глобальные параметры трассировки лучей. Команда Raytrace Global Include/Exclude (Глобальное включение/выключение трас сировки) вызывает окно диалога, в котором можно произвольно включать либо выключать объекты из просчетов трассировки лучей. Используя команду mental ray Message Window (Окно сообщения mental ray), мож но вызвать окно, в котором выводятся сообщения модуля визуализации mental ray. При помощи команды Material Editor (Редактор материалов), которая выполняется также нажатием клавиши M, можно открыть окно редактора материалов, позволя ющее создавать и редактировать материалы сцены. Команда Material/Map Browser (Окно выбора материалов и карт) открывает окно диа лога, предназначенное для просмотра и выбора материалов или текстурных карт. Используя команду Video Post (Видеомонтаж), можно открыть окно работы с про граммным модулем Video Post (Видеомонтаж), позволяющим добавить изображе ниям специальные графические эффекты.
40
Глава 1. Интерфейс программы
Команда Show Last Rendering (Показать последнюю визуализацию) вызывает окно с изображением последней выполненной визуализации. При помощи команды Panorama Exporter (Экспортер панорамы) можно визуализи ровать панорамные сцены. Команда Print Size Wizard (Мастер печати) открывает окно диалога, помогающее настроить размер визуализируемого изображения для печати. С помощью команды RAM Player (RAMпроигрыватель) можно воспроизводить различные изображения и анимацию.
Меню Customize (Настройка) Меню Customize (Настройка) (рис. 1.13) объединяет команды, служащие для изме нения, сохранения и загрузки пользовательских настроек интерфейса программы, включая единицы измерения, привязки и т. п. При выборе команды Customize User Interface (Настрой ка пользовательского интерфейса) открывается од ноименное окно диалога, содержащее пять вкладок: для настройки сочетаний клавиш, панелей инстру ментов, контекстных меню, меню и цвета. Команды Save Custom UI Scheme (Сохранить схему поль зовательского интерфейса) и Load Custom UI Scheme (Загрузить заказную схему пользовательского ин терфейса) позволяют сохранить изменения, внесен ные в настройки интерфейса, в отдельных файлах и загрузить их.
Рис. 1.13. Меню Customize (Настройка)
С помощью команды Revert to Startup Layout (Вернуть ся к установкам по умолчанию) можно загрузить на стройки программы, заданные по умолчанию.
СОВЕТ ___________________________________________________________________________ При случайном изменении внешнего вида интерфейса программы самый простой способ вернуться к исходному состоянию — выполнить команду Revert to Startup Layout (Вернуться к установкам по умолчанию) меню Customize (Настройка).
Команда Custom UI and Defaults Switcher (Пользовательская схема и переключение на предварительно установленные) открывает окно диалога, в котором можно про смотреть аннотацию и выбрать предварительно установленную схему интерфей са, а также сохраненные пользовательские схемы. Категория Show UI (Показать пользовательский интерфейс) объединяет четыре команды, которые включают/выключают показ элементов пользовательского ин терфейса: Show Command Panel (Показать командную панель), Show Floating Toolbars
41
Элементы интерфейса
(Показать плавающие панели инструментов), Show Main Toolbar (Показать главную панель инструментов) и Show Track Bar (Показать строку треков). Команда Lock UI Layout (Блокировка схемы пользовательского интерфейса) позво ляет заблокировать пользовательский интерфейс для предотвращения случайных изменений. При выборе команды Configure User Paths (Конфигурация пользовательских путей) открывается одноименное окно диалога, в котором можно добавить либо изменить установленные по умолчанию пути к пользовательским файлам, таким как фай лы сцены, текстур, анимации, дополнительных модулей и т. д. Выполнив команду Configure System Paths (Конфигурация системных путей), можно открыть одно именное окно, которое позволяет изменить пути к системным папкам программы, например указать новый путь для файлов справки или шрифтов, используемых программой. Команда Units Setup (Настройка единиц) открывает одноименное окно диалога, в котором можно изменить отображение системных единиц. С помощью команды Grid and Snap Settings (Настройки сетки и привязок) можно открыть одноименное окно, позволяющее при необходимости задать способ и до пуски привязок, а также настроить размерность и шаг сетки окон проекций. Команда Viewport Configuration (Конфигурирование окна проекции), открывающая одноименное окно диалога, позволяет выполнить настройки активного или всех окон проекций. Используя команду Plug-in Manager (Менеджер подключаемых модулей), можно вы звать одноименное окно, включающее список установленных в системе подклю чаемых модулей с их названием, описанием, статусом (используется или отклю чен), размером и указанием полного пути. Команда Preferences (Параметры) открывает окно диалога, позволяющее настраи вать и контролировать многие аспекты программы 3ds Max. В их число входят на стройки визуализации, окон проекций, анимации, файловой системы, габаритных контейнеров и др.
Меню MAXScript Меню MAXScript (рис. 1.14) содержит команды, позволяю щие работать со встроенным в программу языком макро программирования MAXScript. Команда New Script (Создать сценарий) вызывает окно (Untitled) — MAXScript для написания новых и редактирова ния существующих макрокоманд. При помощи команды Open Script (Открыть сценарий) мож но открыть окно диалога Open File (Открыть файл), с по мощью которого можно открыть файл макроса.
Рис. 1.14. Меню MAXScript
42
Глава 1. Интерфейс программы
Команда Run Script (Выполнить сценарий) вызывает окно диалога Choose Editor File (Выберите файл редактора). После выбора файла макроса он сразу запускается. Используя команду MAXScript Listener (Интерпретатор MAXScript), можно открыть окно интерпретатора команд MAXScript, которое служит для контроля выполне ния макрокоманд. Новая команда меню MAXScript Editor (Редактор MAXScript) открывает окно редак тора, в котором можно набирать текст макрокоманд не только в формате 3ds Max, но также и в других форматах, например XML или простой текст. Команда Visual MAXScript Editor (Графический редактор MAXScript) вызывает окно, позволяющее выполнить построение графических элементов интерфейса для ис пользования вместе с макрокомандами. Команда Debugger Dialog (Окно отладчика) позволяет полнее и проще использо вать редактор макрокоманд 3ds Max.
Меню Help (Справка) Меню Help (Справка) (рис. 1.15) содержит команды доступа к справочной инфор мации и урокам программы 3ds Max. Команда Welcome Screen (Окно приветствия) вызывает од ноименное окно диалога, которое открывается по умол чанию, когда вы впервые запускаете 3ds Max. С помощью этого окна можно познакомиться с основными понятия ми и способами работы в приложении. Для этого использу ются небольшие видеоролики, для запуска которых нуж но щелкнуть на значке с изображением соответствующей темы. Команды Autodesk 3ds Max Help (Справка по Autodesk 3ds Max) и MAXScript Reference (Справочник по MAXScript) позволяют получить помощь по всем элементам и функ циям программы 3ds Max. Информация представлена в стандарте Microsoft Compiled HTML Help.
Рис. 1.15. Меню Help (Справка)
Используя команду Tutorials (Уроки), можно открыть окно, содержащее уроки по всем основным темам про граммы.
Команды Data Exchange Solutions (Информационный обмен), Subscription e-Learning Catalog (Подписка на каталог электронного обучения), Create Support Request (Со здание запроса поддержки), View Support Requests (Просмотр запроса поддержки), Edit Subscription Center Profile (Редактирование профиля подписки) открывают браузер на странице программы для обмена данными между приложениями. Команда Customer Involvement Program (Программа, в которой участвуют пользова тели) — новая программа, позволяющая разработчикам расширять возможности приложения путем сбора и анализа информации об использовании 3ds Max на ва
Элементы интерфейса
43
шем компьютере. В открывшемся окне диалога при помощи переключателя выбери те, принимать вам участие в программе или нет, а затем щелкните на кнопке OK. Команда HotKey Map (Карта сочетаний клавиш) вызывает интерактивное окно, со держащее набор основных сочетаний клавиш. С помощью команды Additional Help (Дополнительная справка) можно получить спра вочную информацию о дополнительных модулях, установленных в приложении. Категория 3ds Max on the Web (3ds Max в Интернете) содержит команды, автомати чески открывающие браузер для поиска и загрузки обновлений, получения сете вой поддержки, уроков и т. д. Команда Activate 3ds Max (Активизировать 3ds Max) вызывает окно активизации продукта, в котором вы можете ввести код авторизации. При выборе команды About 3ds Max (О 3ds Max) открывается окно, показывающее серийный номер продукта, драйвер видеоустройства, тип лицензии и т. д.
Панели инструментов По умолчанию главная панель инструментов отображается под строкой меню в верхней части окна программы. Использование панелей инструментов — один из наиболее удобных способов вы полнения большинства команд, для чего достаточно одного щелчка кнопкой мыши на значке, расположенном на панели инструментов. Кнопки на панели инструментов программы 3ds Max могут быть двух размеров — стандартные (16 × 16 пикселов) и крупные (24 × 24 пиксела) с улучшенным графичес ким отображением. По умолчанию приложение загружается с кнопками крупного размера, изза чего панель инструментов может не помещаться на экране полностью. Для отображения скрытой части панели предусмотрена прокрутка по горизонтали.
ВНИМАНИЕ ______________________________________________________________________ С целью максимального отображения рабочего пространства все кнопки программы, изображенные в книге, имеют стандартный размер.
Чтобы заменить крупные кнопки на стандартные, выполните команду CustomizePreferences (НастройкаПараметры). Откроется окно Preference Settings (Параметры установок), в котором необходимо перейти на вкладку General (Общие). В области UI Display (Интерфейс пользователя) снимите флажок Use Large Toolbar Buttons (Ис пользовать крупные кнопки) и щелкните на кнопке OK. Перезапустите программу для обновления отображения интерфейса. Все закрепленные панели могут быть плавающими (рис. 1.16). Для этого доста точно щелкнуть на двух вертикальных линиях в левой (или верхней) части пане ли и переместить панель. После этого можно масштабировать и перемещать окно
44
Глава 1. Интерфейс программы
в пределах интерфейса программы. Двойной щелчок кнопкой мыши на заголовке окна панели вернет ее на место или пристыкует к любой стороне окна программы.
Рис. 1.16. Главная панель инструментов в виде плавающего окна
Все кнопки панели инструментов снабжены подсказками, которые появляются при наведении указателя мыши на кнопку и удержании над ней. Небольшой тре угольник в правом нижнем углу некоторых кнопок говорит о том, что при нажатии и удержании такой кнопки раскроется панель данного инструмента с дополни тельным набором кнопок.
Главная панель инструментов Рассмотрим кнопки главной панели инструментов. 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 Selection Region (Выделение кистью) (Ctrl+F) — выделяют объекты рам кой различной формой. Window/Crossing (Оконное/Пересекающее выделение) — устанавливает, ка ким образом будет выделяться объект: обводкой или пересечением. Select and Move (Выделить и переместить) (W) — выделяет и перемещает объект. Select and Rotate (Выделить и повернуть) (E) — выделяет и поворачивает объект сцены. Select and Uniform Scale (Выделить и равномерно масштабировать), Select Select and Non-uniform Scale (Выделить и неравномерно масштабировать), and Squash (Выделить и сжать) (R) — выделяет и масштабирует объект различ ными способами.
Элементы интерфейса
45
Reference Coordinate System (Система координат) — раскрывающийся спи сок, при помощи которого устанавливается система координат, используемая для трансформаций. Use Pivot Point Center (Использовать опорные точки объектов), Use Selection Use Transform Coordinate Center (Ис 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 (Зеркальное отображение) — создает зеркальную копию выделенного объекта. Align (Выравнивание) (Alt+A), Quick Align (Быстрое выравнивание), Normal Align (Выравнивание нормали) (Alt+N), Place Highlight (Помес Align Camera (Выровнять камеру), Align to View (Вы тить блик) (Ctrl+H), ровнять по проекции) — открывают окна диалога параметров выравнивания, где можно указать параметры выравнивания либо задать быстрое выравнива ние двух объектов, выравнивание по нормалям, окну проекции или камере. Layer Manager (Управление слоями) — открывает окно управления слоями. Curve Editor (Open) (Редактор кривых (открыть)) — вызывает редактор функци ональных кривых. Schematic View (Open) (Редактор структуры (открыть)) — вызывает редактор структуры. Material Editor (Редактор материалов) (M) — открывает редактор материалов. Render Scene Dialog (Диалоговое окно визуализации сцены) (F10) — вызывает окно с настройками визуализации.
46
Глава 1. Интерфейс программы
Render Type (Тип визуализации) — раскрывающийся список, устанавли вающий тип визуализируемых объектов. Quick Render (Production) (Быстрая визуализация (итоговая)), QuickRender (ActiveShade) (Быстрая визуализация (тонированная)) — запускает визуализа цию сцены без открытия окна диалога.
Плавающие панели инструментов Если выполнить команду CustomizeShow UIShow Floating Toolbars (Настрой каПоказать пользовательский интерфейсПоказать плавающие панели ин струментов), то откроются дополнительные плавающие панели: reactor, Layers (Слои), Animation Layers (Анимация слоев), Snaps (Привязки), Render Shortcuts (Бы стрый доступ к настройкам визуализации), Axis Constraints (Ограничения по осям), Extras (Дополнения) и Brush Presets (Предустановки кистей). Плавающая панель инструментов Layers (Слои) содержит кнопки для создания, активизации, блокировки и выделения слоев, а также средства для назначения и изменения свойств слоя. При помощи панели Snaps (Привязки) можно управ лять свойствами привязок, используемых при моделировании и редактировании объектов. Панель Axis Constraints (Ограничения по осям) позволяет устанавливать ограничения перемещения только выделенной осью или плоскостью. Панель Extras (Дополнения) содержит кнопки переключения подключаемых модулей на сочетания клавиш, автосетки, а также кнопки создания массива, снимков и рас пределенных объектов по пути или заданному точками расстоянию. Панель Brush Presets (Предустановки кистей) позволяет получить доступ к предустановленным кистям, а также создавать собственные. Панель reactor содержит все необходимые команды для создания имитации физических реакций. Панель Animation Layers (Анимация слоев) дает возможность объединять анимаци онные треки одного объекта, настраивая их по отдельности. Рассмотрим некоторые панели инструментов более подробно. Панель инструментов Snaps (Привязки) (рис. 1.17) обеспечивает быстрый доступ к наиболее используемым командам привязки.
Рис. 1.17. Плавающая панель Snaps (Привязки)
Плавающая панель инструментов Render Shortcuts (Быстрый доступ к настройкам визуализации) позволяет сохранять и загружать различные наборы настроек для
Элементы интерфейса
47
визуализации сцены, причем существуют три кнопки для быстрого сохранения и визуализации сцены (рис. 1.18).
Рис. 1.18. Плавающая панель Render Shortcuts (Быстрый доступ к настройкам визуализации)
Удерживая нажатой клавишу Shift, щелкните на кнопке с буквой A, B или C — и на стройки последней визуализации будут сохранены. Для начала визуализации сцены при помощи сохраненных настроек достаточно щелкнуть на одной из трех кнопок.
Окна проекций Наибольшее пространство окна программы занимают окна проекций. И это неуди вительно: именно с их помощью мы получаем доступ к объектам сцены. В окнах проекций можно настроить отображение объектов различным образом, например задать компоновку экрана для управления видом и ориентацией или указать спо собы оптимизации прорисовки экрана во время работы. В приложении 3ds Max используется два вида проекций: аксонометрические и пер спективные (центральные). Частным случаем аксонометрической проекции явля ются ортографические проекции, при построении которых плоскость проекции выравнивается параллельно одной из координатных плоскостей трехмерного про странства. К ортографическим проекциям в 3ds Max относятся виды сверху, сни зу, спереди, сзади, слева и справа. К перспективным проекциям — вид из камеры, перспектива и окно, основанное на источнике направленного света. Одновременно на экране может отображаться от одного до четырех окон проек ций. Каждое окно имеет рамку и имя, расположенное в верхнем левом углу окна. Вид можно присваивать, указав компоновку видового окна в диалоге Viewport Configuration (Конфигурирование окна проекции) (рис. 1.19), которое вызывается командой CustomizeViewport Configuration (НастройкаКонфигурирование окна проекции). При щелчке на образце компоновки видового окна в нижней части окна диалога отображается раскрывающийся список имеющихся видов. Этот список можно также вызвать, щелкнув правой кнопкой мыши на имени окна проекции и выбрав из контекстного меню команду Views (Вид). Типы Camera (Ка мера) и Spotlight (Прожектор) отсутствуют в списке до тех пор, пока на сцене не созданы камеры и источники освещения.
48
Глава 1. Интерфейс программы
Каждое окно проекции может отображать любой поддерживаемый программой вид. Кроме того, эти окна могут использоваться для отображения окон диалога Schematic View (Редактор структуры), Track View (Просмотр треков), Asset Manager (Диспетчер ресурсов) или MAXScript Listener (Интерпретатор MAXScript). Самым быстрым и удобным способом изменить вид окон проекций является ис пользование сочетаний клавиш (см. приложение 2). Стандартные типы окон отображают объекты сцены с ограниченного количества сторон. Однако часто, моделируя объекты сцены, необходимо видеть их со всех сторон, приближаться для работы с деталями и удаляться, чтобы охватить взгля дом всю сцену. Для навигации в окнах проекций существуют кнопки, расположен ные в правом нижнем углу окна программы. Состав кнопок управления меняется в зависимости от выбранного типа проекции.
Рис. 1.19. Окно Viewport Configuration (Конфигурирование окна проекции)
Рассмотрим кнопки управления окнами проекций. Zoom (Масштаб) (Alt+Z или [, или ]) — изменяет масштаб просмотра изображе ния. Zoom All (Масштаб всех окон) — увеличивает или уменьшает масштаб про смотра изображения во всех окнах одновременно. Zoom Extents (Сцена целиком) (Ctrl+Alt+Z), Zoom Extents Selected (Выделен ные объекты целиком) — размещает все объекты (или только выделенные) в пределах активного окна. Zoom Extents All (Сцена целиком во всех окнах) (Ctrl+Shift+Z), Zoom Extents All Selected (Выделенные объекты целиком во всех окнах) (Z) — размещает все объекты (или только выделенные) в пределах всех окон проекций.
Элементы интерфейса
49
Field-of-View (Поле зрения) — доступна только при активном окне проекции Perspective (Перспектива), увеличивает или уменьшает масштаб просмотра Zoom Region (Масштаб области) (Ctrl+W) — увеличивает вы изображения. деленную область до размеров окна. Pan View (Прокрутка) (Ctrl+P или I) — прокручивает изображение, не меняя масштаб. Walk Through (Перейти) («горячая» клавиша ↑) — навигация ка меры и перспективы, аналогична виду от первого лица в видеоиграх. Arc Rotate (Повернуть) (Ctrl+R), Arc Rotate Selected (Повернуть выделенные), Arc Rotate SubObject (Повернуть подобъект) — управляет поворотом в окне проекции. Во втором и третьем случаях вокруг объекта и подобъекта. Maximize Viewport Toggle (Увеличение окна проекции до размеров экрана) (Alt+W) — разворачивает окно проекции во всю рабочую область окна про граммы.
Командная панель В 3ds Max 2008, как и в предыдущих версиях программы, командная панель имеет шесть вкладок: Create (Создание), Modify (Изменение), Hierarchy (Иерархия), Motion (Движение), Display (Отображение) и Utilities (Утилиты). Командная панель распо лагается в правой части окна программы (может быть также пристыкована к любой стороне окна приложения или выступать в качестве плавающей панели). На ней сосредоточены настройки объектов сцены (рис. 1.20).
Рис. 1.20. Командная панель
Основные настройки объектов сосредоточены в свитках вкладок командной пане ли. Свитки — области, сгруппированные по определенным признакам и имеющие
50
Глава 1. Интерфейс программы
в качестве заголовка кнопку шириной во всю ширину свитка (рис. 1.21). Название каждого свитка содержит знак «плюс» или «минус» в зависимости от того, развер нут свиток или свернут (свернутому свитку соответствует знак +, а развернуто му — знак –). Щелчок на заголовке свитка разворачивает или сворачивает свиток. Порядок следования свитков на командной панели (и не только) можно менять, перетаскивая свиток вверх или вниз относительно других.
Рис. 1.21. Свернутый и развернутый свитки на командной панели
ПРИМЕЧАНИЕ ___________________________________________________________________ Положение свитков Object Type (Тип объекта) и Name and Color (Имя и цвет) изменить нельзя.
Достаточно часто развернутые свитки не помещаются в поле экрана и часть их со держимого скрывается за его границей. Для таких случаев предусмотрена возмож ность прокрутки области свитка вверх или вниз. Индикатором того, что на экра не отображено не все содержимое свитков, является узкая вертикальная полоса вдоль их правой части. При наведении на область свитка указатель мыши при мет форму руки, после чего, нажав и удерживая кнопку мыши, можно прокручи вать область свитков вверх или вниз. Свитки имеют контекстное меню, которое появляется при щелчке правой кнопкой мыши на области свитков (вне элементов управления). Оно содержит команды разворачивания и сворачивания всех свитков или свитков по именам и возврата к принятому по умолчанию порядку их расположения. В стандартном режиме командная панель располагается на экране так, что свитки находятся в одном столбце. При желании вы можете увеличить пространство, от водимое под свитки. Для этого подведите указатель мыши к левой границе панели и, когда указатель примет вид двунаправленной стрелки, щелкните на границе
Элементы интерфейса
51
и переместите ее влево. В результате область, занимаемая свитками, будет увели чиваться с шагом в ширину свитка.
Вкладка Create (Создание) Вкладка Create (Создание) предназначена для создания всех типов объектов 3ds Max: Geometry (Геометрия) (например, Box (Параллелепипед), Sphere (Сфера) и т. д.), Shapes (Формы), Lights (Источники света), Cameras (Камеры), Helpers (Вспомога тельные объекты), Spañe Warps (Объемные деформации) и Systems (Дополнитель ные инструменты) (рис. 1.22). Щелчок кнопкой мыши на любой из этих кнопок вызывает набор инструментов для создания объектов соответствующей катего рии.
Рис. 1.22. Вкладка Create (Создание) командной панели
ПРИМЕЧАНИЕ ___________________________________________________________________ Более полно список объектов, доступных для создания в программе 3ds Max, расB сматривался выше при описании меню Create (Создание).
Для создания объекта найдите его кнопку, щелкните на ней и в окне проекции по стройте объект простым перетаскиванием указателя при нажатой левой кнопке мыши. Создав параметрический объект, можно уточнить его размеры, введя необ ходимые значения в поля свитка Parameters (Параметры). Ниже кнопок выбора категорий и списка разновидностей объектов располагают ся свитки Object Type (Тип объекта) и Name and Color (Имя и цвет). Каждому объек ту, созданному при помощи панели Create (Создание), присваиваются имя и цвет, которые можно изменить, используя эти свитки. После нажатия кнопка с именем объекта выделяется цветом. Это означает, что она активна. Одновременно для строящегося объекта раскрываются дополнительные свитки — Parameters (Параметры) и Creation Method (Метод создания). Кнопка,
52
Глава 1. Интерфейс программы
оставаясь выделенной, позволяет создавать объекты выбранного типа до тех пор, пока не будет отключена. Прекратить создание объектов можно также, щелкнув правой кнопкой мыши на активном окне проекции. В качестве примера построим параметрический объект Box (Параллелепипед). Для этого выполните следующие действия. 1.
Щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) команд ной панели.
2.
В раскрывающемся списке разновидностей объектов выберите строку Standard Primitives (Простые примитивы), после чего в свитке Object Type (Тип объекта) появятся кнопки с типами доступных для создания объектов.
3.
Щелкните на кнопке с именем Box (Параллелепипед), в результате чего кноп ка станет оранжевой, а в нижней части командной панели появится три свитка: Creation Method (Метод создания), Keyboard Entry (Ввод с клавиатуры) и Parameters (Параметры).
Дальше строить объект можно двумя способами: введением точных значений пара метров объекта в поля свитка Keyboard Entry (Ввод с клавиатуры) либо интерактивно в окне проекции любого вида. Рассмотрим построение объекта вторым способом. 1.
Щелкните в любом месте окна проекции Perspective (Перспектива) и, удержи вая нажатой левую кнопку мыши, переместите указатель по диагонали, опре делив таким образом длину и ширину объекта.
2.
Отпустите кнопку мыши и переместите указатель вверх для определения вы соты объекта.
3.
Для завершения построения щелкните левой кнопкой мыши.
4.
При необходимости уточните параметры объекта, воспользовавшись свитком Parameters (Параметры).
СОВЕТ ___________________________________________________________________________ Если параметрическому объекту планируется назначать модификатор, связанный с изменением поверхности, например Bend (Изгиб) или Noise (Шум), то необходимо увеличить количество сегментов до 10 и более (подбирается опытным путем с целью получения желаемого эффекта).
Аналогичным способом строятся все параметрические объекты. Исключение со ставляют сложные примитивы Hedra (Многогранник), RingWave (Круговая вол на) и Hose (Рукав). Они не содержат свитков Creation Method (Метод создания) и Keyboard Entry (Ввод с клавиатуры), поэтому строятся только интерактивным способом в окне проекции.
Вкладка Modify (Изменение) Параметры объекта, появляющиеся при его построении на вкладке Create (Созда ние) командной панели, становятся недоступными после выбора другого объекта
Элементы интерфейса
53
или деактивизации кнопки построения объекта. Для продолжения редактирова ния созданного примитива следует воспользоваться вкладкой Modify (Изменение) командной панели (рис. 1.23).
Рис. 1.23. Вкладка Modify (Изменение) командной панели
Выделив объект и перейдя на эту вкладку, вы вновь увидите свиток с параметра ми для редактирования. Кроме изменения параметров примитива, вкладка Modify (Изменение) командной панели позволяет назначать модификаторы выделенному объекту или группе объектов. В последнем случае к каждому объекту применяется образец модифи катора. В верхней части вкладки Modify (Изменение) командной панели постоянно ото бражается строка с именем выделенного объекта и поле с образцом цвета, а немно го ниже — раскрывающийся список Modifier List (Список модификаторов), содер жащий модификаторы, доступные для применения к выделенному объекту. ПРИМЕЧАНИЕ ___________________________________________________________________ Модификаторы можно также применять к объектам, используя команды главного меню Modifiers (Модификаторы) (см. выше).
Содержимое нижней части области свитков вкладки Modify (Изменение) команд ной панели меняется в зависимости от типа выделенных объектов и выбранных модификаторов. В стеке модификаторов, который расположен под списком модификаторов, пока зано все, что происходит с объектом. Он отображает все модификаторы, применен ные к выделенному объекту сцены, позволяет вернуться к настройкам любого
54
Глава 1. Интерфейс программы
модификатора и изменить его параметры, поменять местами расположение моди фикаторов в стеке или удалить их. Под стеком модификаторов расположены кнопки, предназначенные для управле ния стеком. В их число входят 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.24, слева показан объект Box (Параллелепипед), преобразованный при помощи модификатора Bend (Изгиб), а на рис. 1.24, справа — фрагмент вкладки Modify (Изменение) командной панели со стеком модификаторов и настройками модификатора Bend (Изгиб).
Рис. 1.24. Объект Box (Параллелепипед), преобразованный при помощи модификатора Bend (Изгиб) (слева), с соответствующими настройками (справа)
Элементы интерфейса
55
Вкладка Hierarchy (Иерархия) Вкладка Hierarchy (Иерархия) командной панели (рис. 1.25) содержит три кнопки контроля за различными параметрами и состояниями объекта.
Pivot (Опора) — открывает свитки, позволяющие изменять положение в про странстве опорной точки (Pivot Point) выделенного объекта. ПРИМЕЧАНИЕ _______________________________________________________________ Опорная точка (Pivot Point) — точка, вокруг которой происходят все трансформаB ции объекта, включая поворот, масштабирование и т. д.
IK (Inverse Kinematics) (Обратная кинематика) — содержит свитки, позволяю щие применять к связанным объектам анимацию методом обратной кинема тики. Эти свитки также позволяют настраивать параметры связей объектов, указывая на способы взаимодействия этих объектов между собой.
Link Info (Данные о связях) — открывает свитки, позволяющие устанавливать блокировки на перемещение, поворот и масштабирование выделенного объек та. Здесь же можно задать характеристики связей объектов друг с другом.
Рис. 1.25. Вкладка Hierarchy (Иерархия) командной панели
Рассмотрим пример изменения положения опорной точки для управления преоб разованиями объекта. 1.
Выделите объект сцены, предназначенный для преобразований (например, для создания массива экземпляров объекта, повернутых вокруг одной точки).
56
Глава 1. Интерфейс программы
2.
Перейдите на вкладку Hierarchy (Иерархия) командной панели и щелкните на кнопке Pivot (Опора).
3.
В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате контейнер преобразования примет соответству ющий вид.
4.
Используя операцию Move (Перемещение) контекстного меню, установите по ложение опорной точки, требующееся для выполнения преобразований.
5.
Щелкните на кнопке Affect Pivot Only (Только опора), чтобы завершить работу по изменению положения опорной точки.
Вкладка Motion (Движение) Вкладка Motion (Движение) командной панели (рис. 1.26) содержит две кнопки, расположенные в верхней части панели: Parameters (Параметры) и Trajectories (Тра ектории).
Рис. 1.26. Вкладка Motion (Движение) командной панели
Щелчок на кнопке Parameters (Параметры) открывает пять свитков, позволяющих анимировать объект и управлять анимацией при помощи присвоения контролле ров (Controllers) или ограничений (Constraints). Контроллеры влияют на положение объекта в пространстве, его поворот и мас штабирование относительно выбранного направления, а ограничения позволяют задать рамки использования трансформации объекта установленными параметра ми (например, движением объекта вдоль указанного сплайна). Доступ к списку контроллеров анимации можно получить, щелкнув на кнопке Assign Controller (Назначить контроллер), расположенной в верхнем левом углу
57
Элементы интерфейса
одноименного свитка, а также при помощи команд меню 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.27).
6.
При необходимости измените номер кадра и парамет ры масштабирования для созданного ключа анимации.
7.
Перейдите к следующему кадру, в котором вы хотели бы установить ключ анимации, для чего передвиньте ползунок на шкале анимации, расположенной в ниж ней части окна программы.
8.
В области Create Key (Создать ключ) свитка PRS Parameters (Параметры поло жения/поворота/масштабирования) щелкните на кнопке Scale (Масштабиро вание). В результате будет создан следующий ключ анимации.
9.
Измените параметры масштабирования для созданного ключа анимации.
10.
Рис. 1.27. Настройки контроллера масштабирования для объекта Box (Параллелепипед)
Для просмотра созданной анимации щелкните на кнопке Play Animation (Вос произвести анимацию ), расположенной в правой нижней части окна про граммы.
Вкладка Display (Отображение) Вкладка Display (Отображение) содержит команды управления отображением от дельных объектов сцены в окнах проекций (рис. 1.28).
58
Глава 1. Интерфейс программы
На этой вкладке можно установить индивидуальные пара метры отображения каждого объекта и категорий объектов в целом. Используя настройки данной вкладки, вы може те изменять все параметры отображения, а также выпол нить команду Hide (Спрятать) или Freeze (Фиксировать).
ПРИМЕЧАНИЕ __________________________________________ Многие команды управления отображением объектов наB ходятся на плавающей палитре Display Floater (Плавающее окно отображения), а также в окне Object Properties (СвойB ства объекта).
Рис. 1.28. Вкладка Display (Отображение) командной панели с развернутым свитком Display Color (Отображение цвета)
Вкладка Utilities (Утилиты) Разнообразный выбор инструментов предоставляет вклад ка Utilities (Утилиты) (рис. 1.29). По умолчанию свиток Utilities (Утилиты) содержит девять утилит: Asset Browser (Окно просмотра ресурсов), Camera Match (Горизонт камеры), Collapse (Свернуть), Color Clipboard (Буфер обмена с цветом), Measure (Линейка), Motion Capture (Захват движения), Reset XForm (Сбросить преобразования), MAXScript и reactor. Чтобы получить доступ к списку боль шего количества утилит, щелкните на кнопке More (Допол нительно), расположенной в левом верхнем углу свитка. После щелчка на кнопке с названием утилиты кнопка вы делится цветом, а в нижней части вкладки Utilities (Ути литы) появятся свитки с параметрами выбранной утили ты (для некоторых утилит открывается окно диалога).
Подключаемые модули Подключаемые модули (PlugIn) — внешние программы, предоставляющие пользователям 3ds Max дополнитель ные возможности. Открытая архитектура 3ds Max по Рис. 1.29. Вкладка строена так, что позволяет любому разработчику программ Utilities (Утилиты) ного обеспечения улучшить его возможности. MAXScript командной панели и Software Developer’s Kit (SDK) (Набор инструментов раз работчика программ) дают возможность пользователям разрабатывать собствен ные подключаемые модули. Существуют фирмы, специализирующиеся на производстве вспомогательных модулей для популярных пакетов трехмерного моделирования, в частности для 3ds Max. Некоторые из них уже давно обрели заслуженную популярность у пользо вателей, другие пока только осваивают рынок. Каждый модуль предназначен для
Подключаемые модули
59
решения определенной задачи (например, для создания волосяного покрова трех мерного персонажа, добавления эффекта огня, визуализации). Внешний модуль состоит из набора файлов, обычно с расширениями DLO, DLM, DLU и DLE. Последние буквы расширения определяют, в какую группу входит подключаемый модуль. Например, модуль с расширением DLE относится к экс порту из программы, а расширение DLU обозначает, что модуль является ути литой. Если у модуля нет специального мастера установки, то достаточно скопировать его файлы в директорию 3ds Max 2008\plugins и перезапустить 3ds Max. Если мо дуль устанавливается в отдельную директорию, то пути к файлам, используемым модулем, указываются в файле plugins.ini, который расположен в корневой директории 3ds Max 2008. После инсталляции модуля и перезапуска программы остается только найти то место, откуда можно получить доступ к модулю. Как пра вило, это категории Modify (Изменение), Helpers (Вспомогательные объекты) или Utilities (Утилиты) вкладки Create (Создание) командной панели. Некоторые внешние модули поставляются вместе с файлами справки. Эти файлы копируются в папку help, находящуюся в директории, в которой установлена про грамма 3ds Max 2008. Для доступа к файлам справки дополнительных модулей выполните команду HelpAdditional Help (СправкаДополнительная справка). Для просмотра списка установленных в программе внешних модулей выполните команду FileSummary Info (ФайлСведения), появится окно диалога Summary Info (Сведения). В этом окне щелкните на кнопке Plug-In Info (Информация о внеш них модулях), откроется одноименное окно со списком всех установленных моду лей и их описанием (рис. 1.30).
Рис. 1.30. Окно PlugBIn Info (Информация о внешних модулях)
60
Глава 1. Интерфейс программы
Установленными внешними модулями можно управлять при помощи окна Plug-in Manager (Менеджер подключаемых модулей) (рис. 1.31), для открытия которого следует выполнить команду CustomizePlug-in Manager (НастройкиМенеджер подключаемых модулей).
Рис. 1.31. Окно PlugBin Manager (Менеджер подключаемых модулей)
Каждая строка окна менеджера внешних модулей представляет информацию о на именовании, статусе, размере подключаемого модуля, полном пути к папке, в ко торой он установлен, и его описание. Модули, имеющие статус loaded (Загружен), загружены в память и доступны для использования. Они отмечены зеленым кружком в колонке Status (Статус). Мно гие модули имеют статус deferred (Отложенный) и подгружаются по мере обраще ния к ним, а модули, имеющие статус unloaded (Выгружены), не загружены в па мять компьютера и имеют красный кружок в колонке Status (Статус). Щелчок правой кнопкой мыши вызывает контекстное меню, с помощью которого можно управлять загрузкой и выгрузкой модулей из памяти, подключать новые внешние модули, расположенные на жестком диске, и выполнять некоторые дру гие операции.
Настройка программы Чем отличается начинающий пользователь от профессионала? Кроме того, что профессионал знает немного больше, он владеет набором инструментов, позволя ющих выполнить работу быстрее и качественнее. Настройка пользовательского интерфейса и загрузка дополнительных внешних модулей позволят вам поднять ся на ступеньку выше в скорости и качестве выполнения работ.
Настройка программы
61
При помощи подключаемых модулей можно выполнить работу на более высоком уровне, чем позволяют стандартные возможности пакета, а оптимизация приложе ния для потребностей пользователя сокращает затрачиваемые на ее выполнение время и ресурсы. В программе 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.32).
Рис. 1.32. Окно диалога Preference Settings (Параметры установок)
62
Глава 1. Интерфейс программы
Вкладка General (Общие) Вкладка General (Общие) служит для изменения параметров общего назначения и разделена на следующие области:
Scene Undo (Отмены в сцене) — задается максимальное количество отменяе мых действий;
Ref. Coord. System (Система координат) — указывается использование одной системы координат для всех преобразований;
Plug-In Loading (Загрузка внешних модулей) — определяется, будут ли модули загружаться вместе со сценой, в которой они установлены;
Sub-Materials (Подматериалы) — позволяет установить либо снять флажок, определяющий автоматическое назначение подматериалов;
Scene Selection (Выделение в сцене) — указывается, каким образом будет про изводиться выделение, а также размер кисти для выделения;
Spinners (Счетчики) — настраиваются общие параметры всех счетчиков про граммы;
Command Panel (Командная панель) — устанавливается значение приращения при прокрутке;
Vertex Normal Style (Стиль нормалей вершин) — задается стиль нормалей вер шин, базирующийся на четвертой версии программы;
UI Display (Интерфейс пользователя) — настраиваются некоторые элементы отображения. Например, для увеличения количества кнопок, одновременно видимых на панели инструментов, можно снять флажки Use Large Toolbar Buttons (Использовать крупные кнопки) и Fixed Width Text Buttons (Фиксиро ванный размер текстовых кнопок);
Layer Defaults (Слои по умолчанию) — указываются параметры для слоев;
Texture Coordinates (Текстурные координаты) — позволяет включить или вы ключить использование Real-World Map Size (Реальные размеры текстурной кар ты) для вновь создаваемых параметрических объектов и модификаторов, ис пользующих этот параметр.
Вкладка Files (Файлы) На вкладке Files (Файлы) окна Preference Settings (Параметры установок) содер жатся настройки, позволяющие выбрать параметры автосохранения, архивирова ния и создания отчета. Здесь также можно задать сохранение файлов с прираще нием или со сжатием.
Вкладка Viewports (Окна проекций) Вкладка Viewports (Окна проекций) содержит параметры настройки окон проек ций (рис. 1.33). В области Viewport Parameters (Параметры окна проекции) можно настроить пара метры отображения сцены в окнах проекций, например задать размер точек для показа вершин сетчатых оболочек.
Настройка программы
63
Рис. 1.33. Вкладка Viewports (Окна проекций) окна Preference Settings (Параметры установок)
Настройки области Ghosting (Двойники) позволяют настроить параметры отобра жения двойников при отладке анимации. Здесь можно задать общее количество двойников до и после текущего кадра, способ отображения и номера кадров. В области Mouse Control (Управление мышью) можно настроить использование сред ней кнопки мыши, а также режимы масштабирования и способ вызова контекст ного меню. При необходимости вы можете изменить драйвер дисплея в области Display Drivers (Драйверы дисплея), щелкнув на кнопке Choose Driver (Выбор драйвера). Если на компьютере установлен драйвер OpenGL или Direct3D, то предпочтительно ис пользовать их для ускорения отображения геометрии сцены и ее раскраски.
Вкладка Gamma and LUT (Гамма и таблица соответствия) Вкладка Gamma and LUT (Гамма и таблица соответствия) предназначена для выполне ния гаммакоррекции монитора и настройки параметров гаммакоррекции в фай лах растровой графики.
Вкладка Rendering (Визуализация) Вкладка Rendering (Визуализация) окна диалога Preference Settings (Параметры установок) позволяет настроить параметры, использующиеся при визуализации по умолчанию (рис. 1.34).
64
Глава 1. Интерфейс программы
Рис. 1.34. Вкладка Rendering (Визуализация) окна Preference Settings (Параметры установок)
Вкладка Rendering (Визуализация) содержит следующие области:
Video Color Check (Контроль цветности) — указывается, в каком стандарте бу дет формироваться видеосигнал и как 3ds Max должен выполнять контроль цветности этого сигнала;
Output Dithering (Смешивание цветов растра) — определяется режим формиро вания цветов на экране монитора;
Field Order (Порядок полей) — задается порядок следования четных и нечетных полей для анимаций, которые будут показаны на экране телевизора;
Super Black (Сверхчерный) — устанавливается минимальный уровень черного цвета;
HotSpot/Falloff (Яркое пятно/край пятна) — устанавливается минимальная разница угловых размеров конусов HotSpot (Яркое пятно) и Falloff (Край пят на) источников света;
Background (Фон) — задается наличие либо отсутствие сглаживания, фильтра ция и использование масок для фонового изображения;
Default Ambient Light Color (Исходный цвет подсветки) — указывается цвет под светки, используемый при визуализации наиболее темных участков теней сцены;
Настройка программы
65
Output File Sequencing (Нумерация выходных файлов) — определяется порядок нумерации файлов, в которых будут сохраняться результаты визуализации; установка флажка Nth Serial Numbering (Каждый порядковый номер) обеспечи вает последовательную нумерацию кадров;
Render Termination Alert (Сигнал прерывания визуализации) — устанавливает ся звуковой сигнал окончания визуализации;
GBuffer Layers (Слои Gбуфера) — указывается наибольшее допустимое ко личество каналов Gбуфера, которые можно назначить в сцене (может быть от 1 до 1000);
Bitmap Pager (Пейджер растрового изображения) — позволяет выполнять ви зуализацию с текстурными картами очень большого размера или с большим количеством текстур;
Multi-threading (Многопоточный) — распределяет расчеты на многопроцессор ных системах, ускоряя процесс визуализации.
Вкладка Animation (Анимация) Вкладка Animation (Анимация) окна Preference Settings (Параметры установок) (рис. 1.35) содержит настройки анимации сцены.
Рис. 1.35. Вкладка Animation (Анимация) окна Preference Settings (Параметры установок)
66
Глава 1. Интерфейс программы
Вкладка 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 (Габаритные контейнеры) На вкладке Giz mos (Габаритные контейнеры) можно настроить отображение и пове дение габаритных контейнеров объектов. Габаритные контейнеры отображаются в ок нах проекций и обеспечивают возможность интерактивной трансформации объектов. Область Transform Gizmos (Габаритный контейнер преобразования) содержит настрой ки для включения/выключения отображения габаритных контейнеров объектов. Здесь также можно установить возможность отображения более чем одного габа ритного контейнера для выделенного набора объектов. Отдельно настраиваются параметры отображения и поведения для габаритного контейнера перемещения и поворота. В области Move/Rotate Transforms (Преобразования перемещения/вращения) мож но задать приращение для угла поворота, а также поведение мыши во время транс формаций.
Вкладка MAXScript Вкладка MAXScript позволяет настраивать параметры макроязыка MAXScript. В области Startup (При запуске) можно указать параметры загрузки сценариев и контроллеров. Область MAXScript Windows (Окна MAXScript) содержит настройки отображения шрифта (тип и размер), используемого в окне редактора макросов.
Настройка программы
67
В области Macro Recorder (Запись макроса) можно включить запись всех произво димых программой 3ds Max действий, фильтрацию кода и использование явных или относительных ссылок.
Вкладка Radiosity (Диффузное отражение) Вкладка Radiosity (Диффузное отражение) содержит настройки, указывающие, как будет происходить диффузное отражение, будут ли настройки улучшенных источ ников света сохранены вместе со сценой и будут ли содержаться в окне Material Editor (Редактор материалов) параметры отражательной способности и прозрачности. Здесь также можно задать прорисовку диффузного отражения в окнах проекций.
Вкладка mental ray Вкладка mental ray содержит настройки, относящиеся к модулю визуализации mental ray. Здесь можно подключить расширения, управлять параметрами визуа лизации и установить запись и вывод сообщений.
Настройка пользовательского интерфейса Программа 3ds Max позволяет создавать новые и настраивать существующие меню и панели инструментов. Для этой цели служит окно Customize User Interface (Настройка пользовательского интерфейса) (рис. 1.36).
Рис. 1.36. Окно Customize User Interface (Настройка пользовательского интерфейса)
68
Глава 1. Интерфейс программы
Чтобы вызвать это окно, выполните команду CustomizeCustomize User Interface (НастройкаНастройка пользовательского интерфейса). Окно содержит пять вкладок: Keyboard (Клавиатура), Toolbars (Панели инструментов), Quads (Четверти), Menus (Меню) и Colors (Цвета). Рассмотрим каждую из этих вкладок.
Вкладка Keyboard (Клавиатура) Вкладка Keyboard (Клавиатура) позволяет изменять заданные по умолчанию и при сваивать сочетания клавиш командам и инструментам программы. Чтобы назначить команде сочетание клавиш или изменить существующее, выпол ните следующее. 1.
В раскрывающемся списке Group (Группа) выберите группу с командой, кото рой необходимо присвоить сочетание клавиш.
2.
В раскрывающемся списке Category (Категория) укажите категорию, к которой она относится.
3.
Найдите в списке Action (Действие) нужную команду. Если ей уже назначено сочетание клавиш, то оно будет показано в столбце Shortcut (Сочетание кла виш).
4.
Щелкните кнопкой мыши в текстовом поле Hotkey (Горячая клавиша) и вве дите комбинацию клавиш (нажмите их на клавиатуре). Если такая комбина ция уже используется, то имя команды, которой она назначена, появится в окне Assigned to (Назначена для).
5.
Щелкните на кнопке Assign (Назначить) для присвоения команде сочетания клавиш.
6.
Сохраните сделанные изменения, нажав кнопку Save (Сохранить), и в появив шемся окне диалога выберите файл для сохранения или создайте новый.
Вкладка Toolbars (Панели инструментов) Вкладка Toolbars (Панели инструментов) служит для создания новых и изменения существующих панелей инструментов 3ds Max (рис. 1.37). Чтобы создать и настроить новую панель инструментов, выполните следующие действия. 1.
На вкладке Toolbars (Панели инструментов) щелкните на кнопке New (Новая), расположенной в правой части окна под раскрывающимся списком существу ющих панелей.
2.
В открывшемся окне New Toolbar (Новая панель инструментов) введите имя создаваемой панели и щелкните на кнопке OK, в результате на экране появит ся новая панель.
3.
Чтобы наполнить новую панель кнопками, выберите необходимую команду из списка Action (Действие) и перетащите ее на поле панели. Если для команды
Настройка программы
69
Рис. 1.37. Вкладка Toolbars (Панели инструментов) окна Customize User Interface (Настройка пользовательского интерфейса)
существует значок, то он появится на созданной кнопке, в противном случае кнопка будет представлена названием. 4.
Для редактирования кнопки щелкните на ней правой кнопкой мыши и в по явившемся контекстном меню выберите требуемую команду, например Delete Button (Удалить кнопку).
5.
Для сохранения панели щелкните на кнопке Save (Сохранить) и в появившем ся окне выберите файл для сохранения или создайте новый.
Вкладка Quads (Четверти) Вкладка Quads (Четверти) предназначена для настройки и создания новых четверт ных меню, вызываемых щелчком правой кнопкой мыши в окне проекции или со четанием клавиш (рис. 1.38). Для создания и настройки нового четвертного меню выполните следующие действия. 1.
Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню.
2.
В появившемся окне диалога New Quad Set (Новый набор четвертных меню) введите имя для создаваемого четвертного меню и щелкните на кнопке OK.
70
Глава 1. Интерфейс программы
Рис. 1.38. Вкладка Quads (Четверти) окна Customize User Interface (Настройка пользовательского интерфейса)
3.
Щелкните на одном из квадратов значка Label (Ярлык) для выбора, в какой ча сти квадратичного меню будет создаваться новое меню, и в поле справа введи те его название.
4.
В окне четвертных меню, расположенном в правой части вкладки Quads (Чет верти), появится надпись End of Menu (Окончание меню), обозначающая, что меню не заполнено.
5.
Чтобы добавить команду в меню, выберите ее в левой части вкладки из списка Action (Действие) и перетащите в окно четвертных меню выше строки End of Menu (Окончание меню).
6.
При необходимости добавьте Separator (Разделитель), чтобы разделить коман ды на логические группы.
7.
Повторите три последних действия для других частей четвертных меню.
ПРИМЕЧАНИЕ ___________________________________________________________________ После присвоения требуемых команд можно назначить вновь созданному меню соB четание клавиш. Для этого в поле Quad Shotcut (Вызов четвертного меню) введите нужную комбинацию клавиш, нажав их на клавиатуре.
Настройка программы
8.
71
Сохраните новое четвертное меню, щелкнув на кнопке Save (Сохранить), и в по явившемся окне выберите или создайте новый файл для сохранения.
Вкладка Menus (Меню) Вкладка Menus (Меню) окна диалога Customize User Interface (Настройка пользова тельского интерфейса) позволяет создавать и настраивать существующие коман ды любого меню программы 3ds Max (рис. 1.39).
Рис. 1.39. Вкладка Menus (Меню) окна Customize User Interface (Настройка пользовательского интерфейса)
По умолчанию в правой части вкладки Menus (Меню) представлены команды глав ного меню программы. Чтобы создать новое меню и добавить его к главному, вы полните следующие действия. 1.
Щелкните на кнопке New (Новое), расположенной в правой части окна под раскрывающимся списком существующих меню.
2.
В открывшемся окне New Menu (Новое меню) введите имя для создаваемого меню и щелкните на кнопке OK.
3.
Аналогично построению четвертного меню, описанному выше, перетащите нужные команды из списка Action (Действие) в окно меню выше строки End of Menu (Окончание меню).
72
Глава 1. Интерфейс программы
4.
При необходимости добавьте Separator (Разделитель), чтобы разделить коман ды на логические группы.
5.
В списке доступных меню выберите Main Menu Bar (Строка главного меню) или любое другое место, где вы хотели бы поместить созданное меню.
6.
В левом нижнем окне списка Menus (Меню) выберите имя созданного вами меню и перетащите его в правую часть вкладки на дерево основного меню, при этом синяя линия будет указывать то место, куда поместится новый пункт меню.
7.
Сохраните новое или измененное меню, щелкнув на кнопке Save (Сохранить), и в появившемся окне диалога выберите файл для сохранения или создайте новый.
Вкладка Colors (Цвета) Вкладка Colors (Цвета) позволяет настраивать цвета всех элементов интерфейса программы, включая отображение объектов и их составных элементов в окнах про екций (рис. 1.40).
Рис. 1.40. Вкладка Colors (Цвета) окна Customize User Interface (Настройка пользовательского интерфейса)
В раскрывающемся списке Elements (Элементы) верхней части вкладки представ лены элементы интерфейса. Выбрав в окне нужную строку с элементом, щелкните
Настройка программы
73
в правой части вкладки на образце цвета и в появившемся окне Color Selector (Вы бор цвета) выберите нужный цвет. Нижняя часть вкладки содержит список элементов пользовательского интерфей са, которые отвечают за отображение интерфейса программы и настраиваются ана логичным образом. Выполненные изменения можно посмотреть, щелкнув на кнопке Apply Colors Now (Применить цвета сейчас). Если вас все устраивает, сохраните выполненные из менения, щелкнув на кнопке Save (Сохранить). Итак, в этой главе вы познакомились с основными элементами интерфейса про граммы 3ds Max 2008, способами настройки приложения и пользовательского интерфейса. Вопросы настройки путей, единиц измерения, сетки и привязок не рассматривались, так как не должны вызвать затруднений, и предлагаются для са мостоятельного разбора. Однако, прежде чем переходить к следующей главе, обратите внимание на неко торые рекомендации по настройке пользовательского интерфейса.
Для удобства в работе максимальное пространство на экране монитора долж но отводиться окнам проекций, в которых ведется моделирование. В связи с этим используйте сочетания клавиш, освободив окно от лишних панелей. Это ускорит доступ к командам и инструментам программы.
Применяйте кнопки минимального размера, что позволит разместить в поле зрения большее их количество.
Создавайте собственные панели и меню с наиболее часто вызываемыми ко мандами и присваивайте им сочетания клавиш.
При моделировании в двумерном пространстве ограничьтесь только теми окна ми проекций, которые нужны для этого.
Если вы обладаете двухмониторной системой, переместите все панели и от крывающиеся окна на второй монитор, оставив на первом лишь окна проек ций.
Включайте отображение одного окна проекции, когда необходимо более вни мательно рассмотреть модель или выполнить редактирование на уровне под объектов.
По возможности работайте в режиме отображения Expert Mode (Экспертный режим).
Глава 2
Основные приемы работы • Объекты в 3ds Max 2008 • Создание объектов сцены • Модификаторы геометрии
Объекты в 3ds Max 2008
75
Подобно огромному зданию, построенному из маленьких кирпичиков, программа 3ds Max позволяет создавать разноплановые сцены, используя в качестве строи тельных блоков примитивы (параметрические объекты). Вы можете использовать стандартные параметрические объекты для начала любой работы. После создания к ним можно применять модификаторы, строить составные объекты, разрезать, редактировать на уровне подобъектов и выполнять многие другие операции. Объектами в программе 3ds Max являются любые геометрические фигуры, кри вые, камеры, вспомогательные объекты, объемные деформации, системы и источ ники света, которые могут включаться в состав сцены. Процесс создания и преобразования любых объектов в целом одинаков: объект создается с помощью меню Create (Создание), вкладки Create (Создание) команд ной панели или кнопок панели инструментов, затем выбирается инструмент для его изменения.
Объекты в 3ds Max 2008 ОбъектноAориентированное моделирование 3ds Max 2008 — объектноориентированная программа, то есть все, что создается в приложении, является объектами. Геометрия, камеры и источники света на сцене — это объекты. Объектами также являются модификаторы, контроллеры, растровые изображения и определения материалов. Многие объекты, подобные каркасам, сплайнам и модификаторам, допускают манипулирование на уровне подобъектов. Что на практике означает объектноориентированное поведение? Рассмотрим простой пример. Предположим, вам необходимо построить составной объект при помощи булевой операции вычитания. После выбора объекта и щелч ка на кнопке Pick Operand B (Указать операнд Б) программа автоматически опреде лит, какие объекты сцены являются действительными для выполнения булевой операции. Только действительные объекты, определенные на основе текущего со стояния программы, могут быть выбраны и применены для продолжения опера ции вычитания. То же самое касается применения к объектам модификаторов. Доступны будут только те модификаторы, которые можно применить к выделенному объекту, все остальные станут неактивными или скрытыми. Таким образом, программа не поз воляет пользователю ошибиться, в результате повышается производительность и экономится время. Это и есть объектноориентированное поведение.
Параметрические и редактируемые объекты Все геометрические объекты программы 3ds Max 2008 можно условно разделить на две категории: параметрические и редактируемые.
76
Глава 2. Основные приемы работы
Большинство объектов в 3ds Max являются параметрическими, то есть объектами, которые определяются совокупностью установок или параметров. Проще говоря, такие объекты можно контролировать при помощи параметров (свиток Parameters (Параметры) на командной панели). Изменение значений параметров модифици рует геометрию самого объекта. Такой подход позволяет гибко управлять разме рами и формой объектов. Возьмем для примера объект Sphere (Сфера). Параметрическая сфера сохраняет параметры радиуса и количества сегментов и отображает в окнах проекций пред ставление сферы на основе текущего значения параметров (рис. 2.1).
Рис. 2.1. Параметрическая сфера (слева) и ее параметры (справа)
Параметрическое определение сферы записано в виде радиуса и количества сег ментов и может в любое время быть изменено и даже анимировано. Параметрическими в 3ds Max являются все объекты, которые можно построить при помощи меню Create (Создание). Они имеют важные настройки моделирова ния и анимации, поэтому в общем случае необходимо как можно дольше сохранять параметрические определения объекта. Однако сохранение параметрических свойств объектов расходует большое количество ресурсов компьютера и замедля ет работу с объектами, так как все параметры, настройки и модификаторы хранят ся в памяти компьютера. Таким образом, при работе следуйте правилу: если вы не предполагаете в дальнейшем использовать параметрические свойства объекта, преобразуйте его в Editable Mesh (Редактируемая поверхность). Изменение редактируемых объектов происходит за счет подобъектов (верши ны, ребра, грани, полигоны) или функций. В состав редактируемых объектов вхо
Объекты в 3ds Max 2008
77
дят: Editable Spline (Редактируемый сплайн), Editable Mesh (Редактируемая поверх ность), Editable Poly (Редактируемая полигональная поверхность), Editable Patch (Редактируемая патчповерхность) и NURBS (NURBSповерхность). Редактируемые объекты в стеке модификаторов содержат ключевое слово Editable (Редактируемый). Исключение составляют NURBSобъекты, которые называются NURBS Surfaces (NURBSповерхности). Примером непараметрического объекта может служить та же сфера после преоб разования в Editable Mesh (Редактируемая поверхность) (рис. 2.2).
Рис. 2.2. Редактируемая сфера (слева) и свиток Selection (Выделение) ее настроек (справа)
Непараметрическая сфера состоит из совокупности вершин и граней. Информа ция о количестве сегментов и радиусе после преобразования не сохраняется. Если понадобится изменить радиус сферы, то необходимо применить масштабирование или создать новую сферу. Редактируемые объекты получаются путем преобразования других типов объек тов. После преобразования параметрического объекта в другой тип (например, в Editable Mesh (Редактируемая поверхность)) он теряет все свои параметрические свойства и не может быть изменен путем указания параметров. В то же время ре дактируемый объект приобретает свойства, недоступные параметрическому, — возможность редактирования на уровне подобъектов.
Составные объекты Используя вкладку Create (Создание) командной панели, можно объединять два и более объекта для создания нового параметрического объекта Compound Object
78
Глава 2. Основные приемы работы
(Составной объект). Параметры объектов, содержащихся в составном объекте, также можно модифицировать и изменять. Составной объект является типом па раметрического объекта, в параметры которого входят объединяемые объекты и описание способов их объединения. Рассмотрим для примера булеву операцию вычитания цилиндра из сферы (рис. 2.3).
Рис. 2.3. Составной объект (слева) и его параметры (справа)
Во многих программах трехмерного моделирования данная операция привела бы к тому, что ее результатом стал бы явный каркас, являющийся булевым решени ем. Если бы возникла необходимость изменить положение цилиндра или радиус сферы, то следовало бы создать новые сферу и цилиндр и снова выполнить булеву операцию. В 3ds Max цилиндр и сфера сохраняются как часть параметрического составно го булева объекта. Можно попрежнему осуществлять доступ к параметрам сферы и цилиндра и выполнять анимацию с ними, а также их относительных поло жений.
Объекты форм В 3ds Max объекты форм создаются как исходная геометрия для построения дру гих, более сложных объектов, а также в качестве путей анимации. Кроме линий, которые выполняются путем построения вершин в окнах проекций, все остальные формы являются параметрическими объектами. Различаются два типа форм в зависимости от метода их создания: при помощи определения радиу са и прямоугольника. Исключением являются дуга и текст.
Объекты в 3ds Max 2008
79
Для создания объекта формы перейдите на вкладку Create (Создание) командной панели, выберите категорию Shapes (Формы) и щелкните на кнопке с именем нуж ной формы. После этого можно перейти в любое окно проекции и, щелкнув левой кнопкой мыши, переместить мышь по диагонали. Диагональ определяет парамет ры Length (Длина) и Width (Ширина), используемые прямоугольником или эллип сом, либо радиус для объектов, в параметрах которых он присутствует. Примером такого объекта может быть NGon (Многоугольник) с радиусом 50 и ко личеством сторон равным 6 (рис. 2.4).
Рис. 2.4. Объект формы NGon (Многоугольник) (слева) и его параметры (справа)
Текст является простейшей создаваемой формой. Достаточно щелкнуть в любом окне проекции — и текст будет помещен на текущую плоскость.
Полигональные объекты Полигональными являются объекты, основанные на сетке полигонов, из которых состоит поверхность этих объектов. Они похожи на объекты Editable Mesh (Редак тируемая поверхность), но обладают уникальными возможностями. Эти объекты доступны только как Editable Poly (Редактируемая полигональная поверхность). В них могут быть преобразованы любые геометрические объекты сцены путем конвертации в Editable Poly (Редактируемая полигональная поверхность), а также после применения модификатора Edit Poly (Редактирование полигонов) или Poly Select (Выделение полигонов). Примером полигонального объекта может служить преобразованный объект, по лученный при помощи булевой операции вычитания сферы из параллелепипеда (рис. 2.5).
80
Глава 2. Основные приемы работы
Рис. 2.5. Объект Editable Poly (Редактируемая полигональная поверхность) (слева) и свиток Selection (Выделение) его настроек (справа)
Полигональные объекты более ресурсоемкие, чем редактируемые поверхности, и на маломощных компьютерах могут вызывать замедление скорости их работы. Существует несколько простых способов оптимизации сцены.
Моделируйте по возможности простые объекты при помощи Editable Mesh (Ре дактируемая поверхность).
Во время построения сложных и больших по объему граней объектов стоит пери одически разрушать стек модификаторов, выполняя команду Collapse (Свернуть).
Применяя команду NURMS Subdivision (NURMSразбиение), используйте ми нимально необходимое количество разбиений для отображения в окнах про екций и достаточное для визуализации. При необходимости отключите ото бражение разбиений в окнах проекций совсем.
После построения объекта преобразуйте его в Editable Mesh (Редактируемая поверхность).
Объекты сеток Безье Patch Grids (Сетки патчей) — это поверхности Безье (рис. 2.6), состоящие из четы рехугольных (реже — треугольных) фрагментов (лоскутов), основанных на сплай нах, которые управляются при помощи манипуляторов Безье. Меню Create (Создание) содержит два параметрических объекта фрагментов Бе зье, но большинство объектов создается путем преобразования в Editable Patch (Ре дактируемая патчповерхность).
Объекты в 3ds Max 2008
81
Рис. 2.6. Модель муравья, построенная при помощи фрагментов Безье (слева), и свиток Selection (Выделение) его настроек (справа)
Моделирование при помощи фрагментов Безье имеет следующие преимущества перед другими способами создания объектов:
автоматическое сглаживание стыков между фрагментами, при котором полу чается плавный переход от одного фрагмента к другому;
управление фрагментами при помощи манипуляторов Безье;
возможность управления топологией (плотностью) фрагментов Безье, что поз воляет при незначительных затратах получить сглаженную модель;
окончательная модель представляет собой полностью бесшовный каркас, ко торый легко поддается анимированию.
Однако такое моделирование обладает и определенными недостатками:
автоматическое сглаживание стыков из преимущества превращается в недо статок, когда необходимо выполнить моделирование излома поверхности (на пример, ногтя);
фрагменты Безье слишком велики, поэтому работать с маленькими элемента ми или деталями объекта неудобно.
NURBSAобъекты NURBS — это поверхности или кривые, форма которых описывается неоднород ными рациональными Всплайнами. На рис. 2.7 показана модель шляпы, выпол ненная с использованием NURBS Surfaces (NURBSповерхность).
82
Глава 2. Основные приемы работы
Рис. 2.7. Модель шляпы в каркасном (слева) и тонированном (справа) виде, выполненная при помощи NURBSBповерхностей
В зависимости от типа NURBSповерхности могут строиться с использованием управляющих вершин или контрольных точек, лежащих на поверхности. Такие поверхности являются идеальным инструментом для создания форм орга нического происхождения: с ними легко работать, они имеют хороший интерак тивный контроль, позволяют выполнять бесшовные поверхности и могут оста ваться сглаженными даже на криволинейной поверхности. NURBSповерхности предпочтительнее полигональных при моделировании плав ных поверхностей объектов, таких как растения, животные, цветы и т. д.
Источники света и камеры Данные объекты не относятся к моделируемым типам. Тем не менее это очень важные объекты, так как сложно представить серьезный проект, в котором отсут ствовали бы камеры и источники света. Камеры и источники света (рис. 2.8) — это объекты сцены, предназначенные для имитации различных светильников (точечного, направленного, дневного и т. д.) и создания видов из виртуальных камер, имитирующих физические свойства ре альных камер (фокусное расстояние, угол зрения и пр.). Камеры и источники света могут быть свободными и нацеленными. Нацеленные ка меры и источники света, как следует из названия, характеризуются наличием цели. Нацеленные камеры (или источники света) содержат два объекта: камеру (или источник света) и их цель. Камера показывает то, что видите вы, а ее цель указы
Объекты в 3ds Max 2008
83
Рис. 2.8. Нацеленный источник света и нацеленная камера
вает точку, на которую вы смотрите. Камеру и ее цель можно трансформировать независимо, но считается, что камера всегда смотрит на цель. В случае с нацелен ным источником света цель указывает направление, в котором он светит. Цель может двигаться независимо.
ПРИМЕЧАНИЕ ___________________________________________________________________ Для камеры и источника света можно создавать окна проекций, имитирующие вид из каB меры или источника света в направлении цели. Такие окна, используемые для источниB ков света, позволяют с большей точностью расположить освещение и выставить тени.
Существует два типа камер и восемь типов источников света (в том числе два, по ставляемых вместе с визуализатором mental ray).
Вспомогательные объекты К вспомогательным относятся объекты сцены, которые не видны при итоговой визуализации, но упрощают процесс моделирования и анимации (рис. 2.9). Существует восемь групп вспомогательных объектов: Standard (Стандартный), Atmospheric Apparatus (Атмосферная оснастка), Camera Match (Горизонт камеры), reactor, Assembly Heads (Управление сборкой), Manipulators (Манипуляторы), Particle Flow, VRML97. Назначение вспомогательных объектов зависит от их разновидности. Например, манипуляторы предназначены для создания в окнах проекций ползунков или
84
Глава 2. Основные приемы работы
Рис. 2.9. Вспомогательные объекты: Dummy (Пустышка), Grid (Координатная сетка) и Compass (Компас)
джойстиков, для управления параметрами других объектов, а стандартные приме няются при моделировании и анимации объектов сцены.
Объемные деформации В этой категории представлены различные объекты, которые не отображаются при визуализации, но оказывают воздействие на другие объекты сцены, изменяя их форму или поведение. В совокупности с системой частиц модуля Particle Flow объемные деформации позволяют создавать впечатляющие эффекты. Например, можно имитировать силу тяжести, ветер или деформировать плоскую поверхность для создания на ней ряби или волн. В эту категорию входят шесть разновидностей объемных деформаций: Forces (Силы), Deflectors (Отражатели), Geometric/Deformable (Деформируемая геомет рия), Modifier-Based (Основанные на модификаторах), reactor и Particles & Dynamics (Частицы и динамика).
Дополнительные инструменты Категория Systems (Дополнительные инструменты) содержит совокупность свя занных между собой объектов, которые объединены общими параметрами, обес печивающими анимацию. Другими словами, объекты являются комбинацией геомет рии и поведения. На рис. 2.10 представлено два объекта этой категории: Sunlight (Солнечный свет) и Daylight (Дневной свет). В категории Systems (Дополнительные инструменты) содержится пять объектов: Bones (Кости), Sunlight (Солнечный свет), Biped (Двуногий), Ring Array (Хоровод)
Создание объектов сцены
85
Рис. 2.10. Два объекта категории Systems (Дополнительные инструменты): Sunlight (Солнечный свет) и Daylight (Дневной свет)
и Daylight (Дневной свет). Например, Biped (Двуногий) — инструмент, предназна ченный для создания и анимации фигуры и движения персонажей. Скелет двуно гого существа, создаваемый при помощи компонента Biped (Двуногий), обладает иерархической цепочкой связей и специальным набором свойств для анимации.
Создание объектов сцены В данном разделе главы будут рассмотрены основы создания объектов. Речь пой дет о простых объектах, однако применяемые для них правила такие же, как и для большинства сложных объектов. Кроме того, примитивы часто используются в ка честве «строительных блоков» для создания достаточно сложных или органи ческих моделей. Создание объектов в 3ds Max — быстрый и несложный процесс. Каждый создава емый объект по своему характеру является параметрическим, то есть его форма определяется набором параметров. Для создания объектов сцены обычно выпол няются следующие действия. 1.
Выбирается опорная плоскость для объекта (чаще всего это означает просто активизацию какогото окна проекции).
2.
Выбирается место на плоскости, которое будет начальной точкой объекта.
3.
В окне проекции перемещается указатель мыши для определения оставшихся параметров объекта.
Параметрические объекты могут создаваться в двух режимах: интерактивном и с по мощью клавиатуры.
86
Глава 2. Основные приемы работы
Интерактивный Данный способ применяется наиболее часто при построении объектов сцены. Для создания объекта необходимо выбрать тип объекта, а затем щелкнуть в окне про екции и переместить указатель мыши для определения оставшихся параметров. Результирующая геометрия будет рисоваться одновременно во всех окнах проек ций по мере определения расстояний и выполнения процесса создания. Для созда ния таких объектов, как Sphere (Сфера) или Plane (Плоскость), необходимо после щелчка в окне проекции переместить указатель мыши и отпустить его. СОВЕТ ___________________________________________________________________________ Если удерживать нажатой клавишу Ctrl при построении таких объектов, как Box (ПаB раллелепипед) или Plane (Плоскость), точка окна проекции, в которой был произвеB ден щелчок, станет центром объекта, а объект будет строиться равносторонним.
Для построения этих объектов достаточно одного параметра (например, для Sphere (Сфера) — это радиус). После создания объект оказывается выделенным, а параметры вкладки Create (Соз дание) командной панели остаются активными и продолжают оказывать влияние на объект. Связь между вкладкой Create (Создание) командной панели и недавно созданным объектом разрушается при щелчке в окне проекции или переключении на другую операцию. ПРИМЕЧАНИЕ ___________________________________________________________________ Как правило, интерактивное создание объектов предполагает построение примитиB ва приблизительного размера. Для уточнения размеров объекта необходимо перейB ти на панель Modify (Изменение) командной панели и ввести с клавиатуры точные знаB чения параметров.
Место расположения объекта является характеристикой определения объекта. Большинство объектов основываются на плоскости создания, и по ней определя ют высоту. Например, цилиндрические примитивы размещают цоколь на плоско сти создания, а параметр высоты вытягивает перпендикуляр из этой плоскости. Поскольку такие примитивы, как Sphere (Сфера), GeoSphere (Геосфера), Torus (Тор), Hedra (Многогранник), определяются своими опорными точками, они являются исключениями из этого правила и располагают на плоскости конструкции свою опорную точку.
При помощи ввода значений параметров Ввод значений параметров с клавиатуры является альтернативой интерактивно му методу. Иногда требуется точно указать величины, характеризующие координаты опор ной точки объекта и его основные размеры. Для этих целей служит свиток Keyboard
Создание объектов сцены
87
Entry (Ввод с клавиатуры) (рис. 2.11), расположенный на вкладке Create (Создание) командной панели. В зависимости от типа создаваемого объекта список пара метров свитка Keyboard Entry (Ввод с клавиатуры) содержит разное количество счетчиков, едиными остаются только поля для ввода координат опорной точки X, Y и Z. После того как заданы все величины, необходимо щелк нуть на кнопке Create (Создать) для создания объекта в ок нах проекций.
При помощи сетки Если требуется конструировать на плоскостях, отличных от основных сеток, или использовать одну и ту же плоскость во всех окнах проекций, то удобно применять объект Grid (Координатная сетка). Объекты сетки весьма полезны при увеличении сложности модели и создании объектов, раз мещенных в плоскости, отличной от ортогональных проек ций. Сетки играют неоценимую роль при определении плоскостей конструкции, которые выравниваются с вида ми, гранями и объектами. В качестве примера можно при вести создание примитива Box (Параллелепипед) на поверх ности сферы при помощи объекта AutoGrid (Автосетка).
Рис. 2.11. Свиток Keyboard Entry (Ввод с клавиатуры) примитива Box (Параллелепипед)
1.
Для создания сферы выполните команду CreateStandard PrimitivesSphere (СозданиеПростые примитивыСфера).
2.
Щелкните кнопкой мыши в окне проекции Top (Cверху) и переместите указа тель в сторону на расстояние радиуса сферы.
3.
При необходимости уточните размер и положение сферы в пространстве (пу тем изменения значений параметров в свитке Parameters (Параметры) вклад ки Modify (Изменение) командной панели).
4.
Для построения параметрического объекта Box (Параллелепипед) щелкните на кнопке Geometry (Геометрия) вкладки Create (Создание) командной панели и выберите из раскрывающегося списка строку Standard Primitives (Простые примитивы).
5.
В свитке Object Type (Тип объекта) щелкните на кнопке Box (Параллелепипед) и установите флажок AutoGrid (Автосетка).
6.
Перейдите в окно проекции Perspective (Перспектива) и установите указатель мыши поверх сферы. Он примет вид осей координат с координатой Z, распо ложенной перпендикулярно полигону, над которым он стоит.
7.
Выберите положение для начала построения объекта и, удерживая нажатой клавишу Ctrl, щелкните кнопкой мыши и переместите указатель в сторону на величину основания параллелепипеда. Отпустите кнопку мыши и перемести те указатель вверх для создания параметра высоты.
88 8.
Глава 2. Основные приемы работы
При необходимости уточните размеры параллелепипеда, изменив значения параметров в свитке Parameters (Параметры) вкладки Modify (Изменение) ко мандной панели.
На рис. 2.12 показан результат выполненных действий.
Рис. 2.12. Параллелепипед, построенный на поверхности сферы при помощи автосетки
Параметрические объекты С помощью геометрических примитивов 3ds Max 2008 можно создать большое ко личество других форм. Примитивы используются в качестве начальной точки для моделирования каркаса и вершины. В общем случае примитивы служат инструментами построения и моделирования при создании составных объектов. Простыми геометрическими примитивами (категория Standard Primitives (Простые примитивы)) в 3ds Max являются следующие объекты.
Box (Параллелепипед) — параллелепипеды и кубы с любым соотношением сторон.
Sphere (Сфера) — параметрические объекты типа сферы или купола. Базовый объект создает квадратичные секции, похожие на линии долготы и широты глобуса.
Cylinder (Цилиндр) — цилиндры, цилиндрические секторы и многогранные призмы любых пропорций.
Torus (Тор) — кольца с круглой формой поперечного сечения. Может быть соз дан также тороидальный сектор.
Создание объектов сцены
89
Teapot (Чайник) — объект, демонстрирующий возможности 3ds Max. Чайник является сложным параметрическим объектом, состоящим из частей.
Cone (Конус) — общие формы, напоминающие цилиндры; два радиуса позво ляют в любой момент поместить результирующий объект в управляемый конус.
GeoSphere (Геосфера) — параметрические объекты, похожие на сферу и пред ставляющие различные способы определения сферических объемов, которые обеспечивают три различных геометрии сферы и купола. Геосфера создает тре угольные секции, подобно геодезическим куполам.
Tube (Труба) — объекты, подобные цилиндру, но с продольным отверстием внутри. Позволяет также создавать секторы и многогранные призмы с отвер стиями.
Pyramid (Пирамида) — пирамиды (в том числе усеченные) с прямоугольным или квадратным основанием.
Plane (Плоскость) — прямоугольный фрагмент сетчатой оболочки. Единствен ный примитив, не являющийся трехмерным объектом.
В число сложных примитивов (категория Extended Primitives (Улучшенные прими тивы)) входят следующие объекты.
Hedra (Многогранник) — пять разновидностей многогранников с множеством управляющих параметров. Все объекты определяются заданием точки центра и величиной радиуса.
ChamferBox (Параллелепипед с фаской) — параллелепипеды и кубы с любым соотношением сторон. В отличие от объекта Box (Параллелепипед), при ис пользовании объекта ChamferBox (Параллелепипед с фаской) существует воз можность задания фасок на краях.
OilTank (Цистерна) — цилиндры с основаниями в виде сферических сегментов с ярко выраженной границей между основаниями и средней частью объекта. На базе этих объектов можно также строить цилиндрические секторы.
Spindle (Веретено) — цилиндры с коническими основаниями, а также цилинд рические секторы на базе этих объектов.
Gengon (Многогранная призма) — многогранные призмы с фаской и без нее.
RingWave (Круговая волна) — инструмент для создания труб, внешняя и внут ренняя поверхности которых могут быть волнообразно деформированы.
Prism (Призма) — инструмент для создания призм с различным соотношени ем сторон основания.
Torus Knot (Тороидальный узел) — объект, который строится на основе узлов различного вида. Можно изменять как форму сечения, так и базовую форму объекта.
ChamferCyl (Цилиндр с фаской) — цилиндры, цилиндрические секторы и мно гогранные призмы любых пропорций с возможностью задания на краях фас ки, срезанной под углом 45°.
90
Глава 2. Основные приемы работы
Capsule (Капсула) — цилиндры с основаниями в виде полусфер, а также цилин дрические секторы на базе этих объектов.
L-Extrusion (Lтело экструзии) — плоскость Lобразной формы с выдавливани ем по высоте.
C-Extrusion (Cтело экструзии) — объект, аналогичный L-Extrusion (Lтело эк струзии), отличающийся базовой формой, представленной в виде буквы «П». Оба тела экструзии являются базовым материалом для моделирования архи тектурных конструкций.
Hose (Рукав) — инструмент для создания гофрированных рукавов, шлангов и других объектов аналогичной формы. «Привязав» основания Hose (Рукав) к двум другим объектам, можно получить подобие анимированной пружины.
Все примитивы имеют настройки для управления их размерами — количеством сегментов, сглаженностью и генерацией координат проецирования. Пока парамет рический объект не преобразован в другой тип, можно свободно изменять все па раметры. Их всегда легко модифицировать, изменяя значения на вкладке Modify (Изменение) командной панели. Рассмотрим два примера создания простого и сложного геометрических примити вов на основе построения GeoSphere (Геосфера) и ChamferBox (Параллелепипед с фаской). Для построения GeoSphere (Геосфера) выполните следующие действия. 1.
В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Standard Primitives (Простые примитивы).
2.
Щелкните на кнопке GeoSphere (Геосфера) в свитке Object Type (Тип объекта). В результате в области свитков командной панели появятся свитки парамет ров геосферы (рис. 2.13).
3.
Установите переключатель Creation Method (Метод создания) в положение Diameter (Диаметр) или Center (Центр) в зависимости от того, хотите вы созда вать геосферу, перемещая указатель мыши в окне проекции по диаметру (от края к краю) или от центра, указывая радиус.
4.
Щелкните в окне проекции и переместите указатель мыши в сторону для соз дания параметрического объекта GeoSphere (Геосфера).
5.
При необходимости уточните радиус объекта в поле Radius (Радиус).
6.
Укажите количество сегментов в поле Segment (Количество сегментов), что бы задать плотность сетки поверхности объекта.
7.
Переключатель Geodesic Base Type (Базовый тип оболочки) установите в поло жение, соответствующее создаваемому объекту: •
Tetra (Тетраэдр) — четырехгранник (рис. 2.14, слева);
•
Octa (Октаэдр) — восьмигранник (рис. 2.14, посередине);
•
Icosa (Икосаэдр) — двадцатигранник (рис. 2.14, справа).
Создание объектов сцены
Рис. 2.13. Настройки объекта GeoSphere (Геосфера) на командной панели
91
Рис. 2.14. Три объекта GeoSphere (Геосфера), различающиеся типом оболочки: Tetra (Тетраэдр) (слева), Octa (Октаэдр) (посередине), Icosa (Икосаэдр) (справа)
8.
Установите флажок Hemisphere (Полусфера) для получения половины объек та — полусферы.
9.
Установите флажок Base to Pivot (Точка опоры внизу), чтобы переместить точ ку опоры из центра объекта к его основанию.
Построим ChamferBox (Параллелепипед с фаской) с помощью главного меню и вво да значений параметров с клавиатуры. 1.
Выполните команду CreateExtended PrimitivesChamferBox (СозданиеУлуч шенные примитивыПараллелепипед с фаской). В результате на командной панели появятся свитки параметров параллелепипеда с фаской (рис. 2.15).
2.
В полях X, Y и Z введите значения смещения относительно начала координат по соответствующим осям.
3.
Введите значения параметров Length (Длина), Width (Ширина), Height (Высо та) и Fillet (Закругление).
4.
Щелкните на кнопке Create (Создать) для создания объекта в окнах проекций.
5.
При необходимости, используя свиток Parameters (Параметры), задайте коли чество сегментов для сторон параллелепипеда с фаской и количество сегмен тов для закругления.
6.
Для сглаживания поверхности в пределах закругления установите флажок Smooth (Сглаживание) (рис. 2.16).
92
Глава 2. Основные приемы работы
Рис. 2.15. Настройки примитива ChamferBox (Параллелепипед с фаской) на командной панели
Рис. 2.16. Параллелепипед с фаской
Объекты форм Для создания сложных объектов сцены не всегда хватает простых и сложных парамет рических объектов. В этом случае на помощь приходят объекты форм. В 3ds Max объекты форм создаются в качестве исходной геометрии для построения других, более сложных объектов методом лофтинга (то есть размещением набора харак терных сечений объекта вдоль траектории пути), выдавливания, вращения и т. д. Можно также создать формы, управляющие движением во время анимации. Категория Shapes (Формы) состоит из трех групп объектов — Splines (Сплайны), NURBS Curves (NURBSкривые) и Extended Splines (Улучшенные сплайны). Рассмотрим первую группу как наиболее распространенную и часто используемую. Что такое сплайны? Это кривые, представляющие собой набор вершин, соединен ных прямолинейными или криволинейными отрезками — сегментами. Вершины (Vertices), сегменты (Segments) и сплайны (Splines) составляют уровень под объектов кривых этого типа. Вершины — это точки, находящиеся на концах сегментов и определяющие кривиз ну сплайна. Различают четыре типа вершин.
Smooth (Сглаженная) — плавно соединяющая два смежных сегмента, которые имеют равную степень кривизны.
Corner (Угловая) — соединяющая два сегмента, которые образуют излом кри вой в месте соединения.
Bezier (Безье) — подобна сглаженной вершине, но с возможностью управления кривизной в точке соединения сегментов при помощи манипуляторов Безье.
Создание объектов сцены
93
Манипуляторы находятся на одной прямой, позволяя управлять только их накло ном и длиной, что вызывает изменение кривизны сегментов и их ориентации.
Bezier Corner (Угол Безье) — как и вершина типа Bezier (Безье), имеет манипу ляторы, но, в отличие от Bezier (Безье), манипуляторы можно настраивать не зависимо друг от друга.
На рис. 2.17 показана кривая со всеми типами вершин.
Рис. 2.17. Подобъекты сплайна
Сегменты — прямолинейные или криволинейные участки сплайна, ограниченные двумя вершинами. Криволинейные сегменты образуются из прямолинейных участ ков, количество которых определяется значением параметра Steps (Количество шагов) или установкой флажка Adaptive (Адаптивный) для автоматического зада ния кривизны сплайна. В зависимости от типа сегменты бывают:
Line (Линейный) — прямая между двумя вершинами;
Curve (Кривая) — кривая, определяемая типом вершин и настройкой манипу ляторов.
Сплайн — это группа смежных сегментов, образующих непрерывную линию. Сплайны бывают открытые и закрытые (у закрытых первая и последняя вершины совпадают). В зависимости от типа сплайны бывают:
Line (Линия) — все сегменты сплайна являются прямыми;
Curve (Кривая) — все сегменты сплайна имеют некоторую кривизну;
смешанный — сплайн, содержащий как первый, так и второй типы сегментов, то есть имеющий как прямолинейные, так и криволинейные участки.
Программа 3ds Max 2008 содержит 11 типов сплайнов:
Line (Линия) — основной объект формы, позволяющий строить как замкну тые, так и разомкнутые кривые любой нерегулярной формы;
94
Глава 2. Основные приемы работы
Circle (Окружность) — дает возможность создавать окружности произвольно го радиуса;
Arc (Дуга) — позволяет строить сегменты криволинейной формы по заданным начальной и конечной точкам, а также кривизне или центру;
NGon (Многоугольник) — правильный многоугольник с настраиваемым коли чеством сторон и возможностью задания скругления углов;
Text (Сплайновый текст) — объект формы на основе строк текста с элемента ми форматирования: с возможностью выбора гарнитуры, выравнивания, меж строчного и межбуквенного пространства и т. п.;
Section (Сечение) — инструмент, используемый для создания формы на осно ве сечения трехмерных объектов плоскостью;
Rectangle (Прямоугольник) — позволяет создавать прямоугольник или квад рат с возможностью скругления углов прямыми или кривыми фасками;
Ellipse (Эллипс) — позволяет создавать эллипсы и круги по двум осям;
Donut (Кольцо) — состоит из двух концентрических окружностей, с возмож ностью раздельной настройки большего и меньшего радиусов;
Star (Звезда) — применяется для создания звезд с произвольным количеством лучей и возможностью их закручивания и скругления;
Helix (Спираль) — трехмерный объект формы, применяемый для создания спиралей с возможностью контролировать количество витков, высоту, а так же внутренний и наружный радиусы.
Все типы сплайнов представлены в группе Splines (Сплайны) вкладки Create (Соз дание) командной панели (рис. 2.18). В качестве примера построим два объекта форм: Star (Звезда) и Text (Сплайновый текст). Для создания многоугольника в виде звезды выполните следующие действия. 1.
На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны).
2.
В свитке Object Type (Тип объекта) нажмите кнопку Star (Звезда). В результате на командной панели появятся свитки параметров звезды.
3.
Звезда строится от центра, поэтому в окне проекции щелкните на том месте, где должен быть центр объекта, и, удерживая нажатой кнопку мыши, переме стите указатель в сторону на величину первого радиуса. Достигнув нужного размера, отпустите кнопку мыши.
4.
Переместите указатель внутрь или наружу построенного сплайна для указа ния второго радиуса. Щелкните кнопкой мыши для завершения построения (рис. 2.19).
5.
В поле Points (Количество лучей) свитка Parameters (Параметры) укажите тре буемое количество лучей звезды.
95
Создание объектов сцены
Рис. 2.18. Группа Splines (Сплайны) категории Shapes (Формы) командной панели
Рис. 2.19. Объект Star (Звезда) в окне проекции
6.
При необходимости задайте с помощью параметра Distortion (Искажение) угол смещения вершин первого радиуса относительно второго.
7.
В полях Fillet Radius 1 (Радиус закругления 1) и Fillet Radius 2 (Радиус закруг ления 2) укажите значения радиусов для внешних и внутренних углов звезды.
Сплайновый текст представляет собой объект, основанный на последовательнос ти сплайнов с текстовыми атрибутами. К атрибутам такого рода относится воз можность задавать размер символов, межсимвольный и межстрочный интервалы, а также выравнивание строк. Для создания сплайнового текста выполните следующие действия. 1.
На вкладке Create (Создание) командной панели щелкните на кнопке Shapes (Формы) и выберите из раскрывающегося списка строку Splines (Сплайны).
2.
В свитке Object Type (Тип объекта) нажмите кнопку Text (Сплайновый текст). В результате в области свитков командной панели появятся параметры сплай нового текста (рис. 2.20).
3.
В раскрывающемся списке в верхней части свитка Parameters (Параметры) вы берите гарнитуру шрифта.
4.
Задайте начертание шрифта, выбрав наклонный или подчеркнутый.
5.
Установите режим выравнивания строк: Align Left (По левому краю), Align Center (По центру), Align Right (По правому краю) или Justify (По ширине).
6.
При помощи параметров Size (Размер), Kerning (Кернинг) и Leading (Интер линьяж) определите значения размера, межсимвольного и межстрочного ин тервалов соответственно.
96
Глава 2. Основные приемы работы
7.
В текстовое поле введите нужный текст, набрав его с клавиатуры или вставив из буфера обмена.
8.
Разместите набранный текст в любом из окон проекций, щелкнув в поле окна кнопкой мыши.
9.
При необходимости измените параметры созданного текста.
На рис. 2.21 представлен сплайновый текст с параметрами, заданными по умолчанию.
Рис. 2.20. Свиток Parameters (Параметры) настроек объекта Text (Сплайновый текст)
Рис. 2.21. Объект Text (Сплайновый текст) с параметрами, заданными по умолчанию
Создание составных объектов Составные объекты (Compound Objects) в 3ds Max 2008 представлены отдель ной группой категории Geometry (Геометрия) вкладки Create (Создание) команд ной панели. Как правило, это тела, состоящие из двух и более простых объектов, рассмотренных выше (трехмерных объектов или форм). Составные объекты позволяют моделировать тела сложной формы (например, машиностроительные детали) и применять к ним анимацию (например, анимиро вать процесс создания формы сечением по пути). К составным объектам относятся следующие.
Morph (Морфинговые) — сложные объекты, позволяющие осуществлять ани мированный переход исходного объекта в целевой с использованием проме жуточных фазовых объектов.
Создание объектов сцены
97
Conform (Согласованные) — вершины исходного объекта проецируются на по верхность целевого. Таким способом имитируются эффекты таяния свечи, плавления льда, растекания лужи воды и т. п.
BlobMesh (Капля) — системы частиц или геометрические наборы сфер, кото рые позволяют имитировать жидкую субстанцию. Таким образом можно соз давать струю воды, вытекающую из крана.
Boolean (Булев) — составные объекты, полученные путем объединения, пере сечения или вычитания двух других трехмерных объектов. Для выполнения булевых операций два исходных объекта должны пересекаться в некоторой области пространства.
Loft (Лофтинговые) — трехмерные тела, построенные на основании объектов форм методом лофтинга, то есть размещением набора характерных сечений объекта вдоль траектории пути.
Scatter (Распределенные) — совокупность копий одного объекта, распределен ных на поверхности другого объекта. Чаще всего используются для имитации стеблей травы, стада животных, группы деревьев и т. п.
Connect (Соединенные) — объект, создающий соединение в отверстиях на по верхности двух объектов.
ShapeMerge (Слитые с формой) — объект, позволяющий создавать отверстия и проемы на поверхности трехмерного тела с использованием сплайновой формы. В этом случае контур сплайна используется в качестве секущих кро мок и проецируется на поверхность каркасного объекта.
Terrain (Рельеф) — объект, генерирующий трехмерный рельеф горного ландшафта на основе замкнутых сплай нов, представляющих собой изолинии высот анало гично представленным на картах местности.
Mesher (Сеточные) — составной объект, конвертирую щий процедурные объекты (например, системы час тиц) в объекты сетки, к которым в дальнейшем могут применяться модификаторы формы.
ProBoolean (Pro Булев) — добавляет функционально сти традициннному объекту Boolean (Булев), напри мер позволяет одновременно объединять несколько объектов, каждый из которых может использовать соб ственную булеву операцию.
ProCutter (Pro Вычитание) — позволяет выполнять спе циализированные булевы операции, в основном пред назначенные для разделения или разбиения обектов.
На рис. 2.22 показан свиток Object Type (Тип объекта) с ин струментами для создания составных объектов.
Рис. 2.22. Группа Compound Objects (Составные объекты) категории Geometry (Геометрия) вкладки Create (Создание)
98
Глава 2. Основные приемы работы
Рассмотрим два простых примера построения составных объектов: методом лоф тинга и булевой операции вычитания. Для построения заготовки болта методом лофтинга выполните следующие дей ствия. 1.
В окне проекции Top (Сверху) постройте три сплайна: два Circle (Окружность), один немного больше другого, и шестиугольный NGon (Многоугольник) с диа метром в полторадва раза большим, чем окружности.
2.
В окне проекции Front (Спереди) создайте сплайн Line (Линия), расположив его вертикально (рис. 2.23).
Рис. 2.23. Заготовки для создания лофтBобъекта
3.
В любом окне проекции выделите линию, если она не осталась выделенной после построения.
4.
В раскрывающемся списке категории Geometry (Геометрия) вкладки Create (Создание) командной панели выберите строку Compound Objects (Составные объекты).
5.
Щелкните на кнопке Loft (Лофтинговые) в свитке Object Type (Тип объекта). В результате на командной панели появятся свитки параметров, относящиеся к созданию лофтобъектов.
6.
В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) щелкните на шестиуголь нике для построения начальной формы лофтобъекта.
7.
Параметру Path (Путь) в свитке Path Parameters (Параметры пути) задайте зна чение 20.
8.
Нажмите кнопку Get Shape (Взять форму) и в окне проекции Perspective (Пер спектива) еще раз щелкните на шестиугольнике.
9.
Параметру Path (Путь) в свитке Path Parameters (Параметры пути) укажите зна чение 20,01.
10.
Щелкните на кнопке Get Shape (Взять форму) и в качестве формы выберите в окне проекции Perspective (Перспектива) большую окружность.
Создание объектов сцены
99
11.
Параметру Path (Путь) в свитке Path Parameters (Параметры пути) задайте зна чение 95.
12.
Нажмите кнопку Get Shape (Взять форму) и снова выберите в качестве формы большую окружность.
13.
Параметру Path (Путь) в свитке Path Parameters (Параметры пути) укажите зна чение 100.
14.
Щелкните на кнопке Get Shape (Взять форму) и в окне проекции Perspective (Перспектива) выберите последнюю форму — меньшую окружность.
В результате вышеописанных операций должна получиться заготовка для создания болта (рис. 2.24).
Рис. 2.24. Модель заготовки болта, выполненная при помощи операций лофтинга
Продолжим знакомство с составными объектами и рассмотрим пример выполнения резьбы для созданной заготовки болта при помощи булевой операции вычитания. Для этого выполните следующее. 1.
На вкладке Create (Создание) командной панели щелкните на кнопке Geometry (Геометрия) и выберите из раскрывающегося списка строку Dynamics Objects (Динамические объекты).
2.
В свитке Object Type (Тип объекта) щелкните на кнопке Spring (Пружина). В результате на командной панели появятся свитки параметров пружины.
3.
В окне проекции Top (Сверху) создайте объект Spring (Пружина) с таким рас четом, чтобы радиус пружины был немного больше (или равен) радиуса боль шей окружности, использованной при построении лофтобъекта.
4.
В свитке Spring Parameters (Параметры пружины) укажите Turns (Количество витков) и Height (Высота) в соответствии с предположительным расположе нием резьбы. Направление вращения пружины задается соответствующим на правлению резьбы (CCW (Против часовой стрелки)). Значение параметра Segs/ Turn (Количество сегментов на один оборот) в области Common Spring Parameters (Общие параметры пружины) необходимо увеличить до 40–60, а переключа тель Smoothing (Сглаживание) установить в положение Sides (Стороны).
100 5.
Глава 2. Основные приемы работы
В области 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).
Рис. 2.26. Болт, созданный при помощи составных объектов и булевых операций
Создание объектов сцены
101
Создание источников света Источники света играют огромную роль в визуализации сцен 3ds Max. Правиль ное освещение может значительно улучшить сцену, создав соответствующую атмо сферу. В большинстве сцен 3ds Max используется два типа освещения: естественное и искусственное. Естественное освещение применяется при создании экстерьеров на основе имитации солнечного или лунного света. Искусственное освещение предпочтительно для интерьеров, где светильники создают ощущение света от бытовых осветительных приборов. В программе 3ds Max 2008 присутствует восемь типов стандартных источников света, включая два, поставляемых вместе с визуализатором mental ray, и одиннад цать фотометрических. Рассмотрим шесть основных стандартных источников света.
Omni (Всенаправленный) — точечный источник света, располагающийся в ка който точке трехмерного пространства и равномерно излучающий свет во всех направлениях. Его можно сравнить с лампочкой без абажура, подвешенной к потолку.
Target Direct (Нацеленный направленный) — направленный источник света, лучи которого располагаются в пространстве параллельно друг другу. Такой источ ник света можно представить как плоскость, излучающую свет в виде цилин дра или параллелепипеда. Источник света имеет Target (Цель), на которую на правлен пучок лучей. Примером его использования может служить имитация солнечного света, проходящего через окно в помещение.
Free Direct (Свободный направленный) — в отличие от предыдущего источни ка света, не имеет цели. Его положение в пространстве настраивается путем вращения.
Target Spot (Направленный с целью) — аналогичный источнику света Target Direct (Нацеленный направленный), с той лишь разницей, что лучи распро страняются от излучателя не параллельно, а исходя из одной точки, наподо бие света от театральных софитов или автомобильных фар. Такой источник света можно представить в виде конуса или пирамиды с вершиной в точке из лучения. Как и предыдущие источники света, может отбрасывать тени и слу жить проектором изображений на поверхность объектов сцены.
Free Spot (Направленный без цели) — вариант источника света Target Spot (На правленный с целью), не имеющий цели. Как и у Free Direct (Свободный направ ленный), направление светового луча изменяется вращением источника света.
Skylight (Свет неба) — источник света, имитирующий свет неба. В отличие от источников света, рассмотренных ранее, Skylight (Свет неба) накрывает сцену полусферой, все внутренние стороны которой излучают световые лучи. Таким образом достигается мягкое равномерное освещение сцены, характерное для природного освещения. Особенностью этого источника света является то, что для его просчетов необходимо включать Light Tracer (Трассировщик света) (зада ется на вкладке Advanced Lightning (Улучшенное освещение) окна Render Scene (Визуализация сцены)).
102
Глава 2. Основные приемы работы
Фотометрические источники света (группа Photometric (Фотометрический) кате гории Lights (Источники света) вкладки Create (Создание) командной панели) ана логичны стандартным, но позволяют более точно с физической точки зрения вос производить освещенность, цвет, затухание и распределение света в пространстве. В отличие от стандартных, фотометрические источники используют в качестве единиц освещенности канделы, люмены или люксы. В число фотометрических входят следующие восемь основных источников света.
Target Point (Точечный направленный) — аналогично стандартному всенаправ ленному источнику света, излучает свет во всех направлениях с одинаковой силой. Для этого источника света можно задавать пространственное распре деление светового потока.
Free Point (Точечный свободный) — всенаправленный точечный источник света.
Target Linear (Линейный направленный) — источник света, позволяющий ими тировать линейные источники света, наподобие ламп дневного света. Имеет цель для установки направления светового потока и положения в простран стве.
Free Linear (Линейный свободный) — аналогичен Target Linear (Линейный на правленный), но не имеет цели. Положение в пространстве и направление све тового луча изменяются вращением осветителя.
Target Area (Площадный направленный) — источник света, по форме напоми нающий прямоугольник, с возможностью изменения параметров длины и ши рины. Наличие цели позволяет более точно настраивать положение источника света и направление светового потока. Может использоваться для имитации освещения из окна или в качестве световой панели.
Free Area (Площадный свободный) — в отличие от Target Area (Площадный на правленный), не имеет цели. Его положение в пространстве настраивается пу тем вращения.
IES Sun (Свет солнца) и IES Sky (Свет неба) — источники света, способные ими тировать физически правильный солнечный свет и свет неба с облаками и без. Могут использоваться как самостоятельно, так и в составе объектов дневного света.
Пока в сцену не будет введен хотя бы один источник света, в сцене используется базовое освещение за счет встроенных источников света, не имеющих настроек. Эта особенность программы 3ds Max позволяет начинать моделирование объектов сцены без предварительной установки источников света, создание и настройку которых можно выполнить позднее. Рассмотрим создание и основные настройки источника света 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 (Интенсивность/цвет/затухание) при по мощи параметра Multiplier (Яркость) укажите значение уровня интенсивности света. Здесь также можно настроить цвет освещения, а в области Decay (Зату хание) установить способ и начало ослабления светового потока по мере уда ления от источника света.
6.
При необходимости укажите в областях Near Attenuation (Затухание вблизи) и Far Attenuation (Затухание вдали) начальную и конечную границы затухания света.
7.
В свитке Spotlight Parameters (Параметры прожектора) при помощи парамет ров 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) (Поле зрения) и Target Distance (Фокусное рас стояние). Они описывают одно и то же свойство камеры, поэтому изменение па раметра Field of View (Поле зрения) изменяет параметр Target Distance (Фокусное расстояние), и наоборот. Используйте Field of View (Поле зрения) для кадрирова ния вида камеры и для обеспечения кинематографических эффектов (например, наезда на объект). Камеры можно создать двумя способами: преобразованием окна перспективного вида в окно вида из камеры и построением камеры в окне проекции. В первом случае при активном окне проекции Perspective (Перспектива) выполни те команду ViewsCreate Camera From View (ВидСоздать камеру из окна проекции) или нажмите Ctrl+C. Во втором случае для создания камеры в окне проекции сделайте следующее. 1.
На вкладке Create (Создание) командной панели щелкните на кнопке Cameras (Камеры).
2.
В свитке Object Type (Тип объекта) нажмите кнопку Target (Направленная). В результате на командной панели появится свиток Parameters (Параметры).
1
Обычно координата X имеет позитивное направление вправо,Y — вверх, а Z — от на блюдателя. Негативная локальная ось — это ось с противоположным направлением век тора.
2
Мировая система координат — это универсальная система для всех объектов сцены, ко торая является постоянной вне зависимости от того, какое окно проекции активно.
Модификаторы геометрии
3.
105
Щелкните в точке любого окна проекции для размещения камеры и перемес тите указатель в направлении предполагаемого размещения точки нацелива ния (рис. 2.28).
Рис. 2.28. Направленная камера
4.
При необходимости настройте параметры камеры в свитке Parameters (Пара метры).
Модификаторы геометрии Для изменения параметров объектов сцены в среде 3ds Max служит панель Modify (Изменение). Она содержит список модификаторов, позволяет управлять стеком модификаторов и редактировать подобъекты. Каждый модификатор привносит в моделирование большое количество возмож ностей. Некоторые модификаторы сложны, другие — просты и служат узкой цели. Успешное использование любого модификатора зависит от знания их возможнос тей и правильного порядка их применения, который виден в стеке на командной панели. Для достижения максимальной гибкости модификаторы можно приме нять в сочетании с другими модификаторами. При модификации объекта часто следует определить выборки, оптимизировать результат, улучшить сглаживание и присвоить отображение. При описании в книге модификаторы организованы в соответствии с тем, каким способом они воздействуют на объект. Это важная особенность, поскольку, напри мер, некоторые модификаторы преобразуют сплайны и фрагменты в каркасы, ког да это не требуется. Модификаторы делятся на WORLDSPACE MODIFIERS (Модификаторы глобального пространства) и OBJECTSPACE MODIFIERS (Модификаторы пространства объекта). Модификаторы первой группы, в отличие от второй, при обработке объектов все гда используют пространственную привязку к глобальной системе координат, о чем свидетельствует аббревиатура WSM (World Space Modifiers), включенная в их название.
106
Глава 2. Основные приемы работы
Все модификаторы программы 3ds Max 2008 сгруппированы по назначению. Су ществует 16 групп модификаторов, о которых подробно рассказывалось в преды дущей главе. Многие модификаторы используют Gizmo (Габаритный контейнер) для управле ния воздействием на объект. Габаритный контейнер появляется при переходе в режим редактирования подобъектов модификатора и отображается в виде спе циального значка, охватывающего поверхность объекта. Применение габаритного контейнера позволяет дополнительно контролировать модифицируемый объект. Например, смещение габаритного контейнера модификатора UVW Map (UVWпро екция) вызовет смещение текстурных координат объекта, что полезно при нало жении текстурных карт. Очень большое количество встроенных и подключаемых модификаторов не поз воляет рассмотреть их все в рамках данной книги, поэтому остановимся на описа нии принципов работы наиболее используемых из них.
Lathe (Вращение вокруг оси) Модификатор Lathe (Вращение вокруг оси) является одним из наиболее приме няемых. Он используется для создания тел методом поворота вокруг своей оси половины профиля сечения объекта. Примерами объектов такого рода могут слу жить большая часть традиционной посуды, кувшины и вазы, песочные часы, авто мобильные фары, гантели и т. д. Наиболее важными настройками модификатора Lathe (Вращение вокруг оси) являются задание оси вращения и установка поверхности кругового вращения. По умолчанию расположение оси начинается с центра создания формы и вырав нивается с локальной осью Y формы. Центр создания — расположение по умолча нию точки вращения после создания формы. Изменить положение сплайна по от ношению к точке вращения формы можно двумя способами:
используя редактирование формы на уровне подобъектов Spline (Сплайн) для изменения положения этих сплайнов относительно точки вращения;
настроив точку опоры (Pivot Point) при помощи свитка Adjust Pivot (Настрой ка опоры), находящегося на вкладке Hierarchy (Иерархия) командной панели.
Рассмотрим пример построения вазы методом вращения профиля. 1.
В окне проекции Front (Спереди) постройте сплайн, который будет профилем для будущего объекта (рис. 2.29).
СОВЕТ ___________________________________________________________________________ Во время построения сплайнового профиля используйте начало координат для расB положения оси вращения и привязки к сетке для упрощения процесса моделироваB ния. Сплайн должен представлять собой одну непрерывную кривую, начальная и коB нечная точки которой лежат на оси вращения.
107
Модификаторы геометрии
2.
На вкладке Modify (Изменение) командной панели выберите из раскрывающе гося списка модификаторов строку Lathe (Вращение вокруг оси). Будет созда но тело вращения с установками по умолчанию, и появится свиток Parameters (Параметры) настроек модификатора вращения (рис. 2.30).
Рис. 2.29. Сплайновый профиль будущей вазы
Рис. 2.30. Свиток Parameters (Параметры) модификатора Lathe (Вращение вокруг оси)
3.
Скорее всего, объект, полученный после применения модификатора, будет мало похож на ожидаемый. Это связано с тем, что по умолчанию геометри ческий центр кривой является осью вращения объекта, а мы строили симмет ричную половину профиля. Следовательно, необходимо переместить ось вра щения в крайнее левое положение сплайна, для чего щелкните на кнопке Min (Минимум), находящейся в области Align (Выравнивание) свитка Parameters (Параметры). В результате объект должен принять форму, показанную на рис. 2.31.
4.
Очень часто в области оси вращения возникают артефакты, которые портят внешний вид модели (см. рис. 2.31). Чтобы избавиться от этого недостатка, установите флажок Weld Core (Слияние на оси).
5.
При помощи параметра Segments (Количество сегментов) укажите количество сегментов, которое будет размещено по периметру формы вращения, чтобы получить сглаженную поверхность.
6.
При необходимости установите флажок Flip Normals (Обратить нормали).
108 7.
Глава 2. Основные приемы работы
Укажите тип выходной поверхности, установив переключатель в соответству ющее положение: Patch (Патчповерхность), Mesh (Поверхность) или NURBS (NURBSповерхность).
При создании объекта в виде сектора тела вращения с помощью параметра Degrees (Сектор) задайте величину угла поворота, а если тело вращения имеет стенки с не которой толщиной, то в области Capping (Настройки замкнутой поверхности) установите флажки Cap Start (Замкнутая поверхность в начале) и Cap End (Замкну тая поверхность в конце) (рис. 2.32).
Рис. 2.31. Объект после применения модификатора Lathe (Вращение вокруг оси) и выполнения некоторых настроек
Рис. 2.32. Кувшин, выполненный с сектором вращения, равным 360° (слева), и его копия с сектором вращения в 270° (справа)
Extrude (Выдавливание) Модификатор Extrude (Выдавливание) применяется для построения объектов с по стоянным сечением по высоте. Использование модификатора выдавливания по хоже на работу рассмотренного ранее составного объекта Loft (Лофтинговые), ког да формой пути служит прямая линия, а поперечное сечение состоит из одного сплайна кривой. Примерами использования модификатора Extrude (Выдавлива ние) могут служить шестеренки и звездочки, текст, машиностроительные детали и заготовки для стен домов. Как и в случае с телами вращения, для построения выдавливания необходимо соз дать объект формы — профиль сечения, по которому будет строиться выдав ливание. Этим профилем может быть как разомкнутая, так и замкнутая кривая, состоящая из одного или более сплайнов. Как и в случае с телами вращения, для построения профиля могут использоваться NURBSкривые. ПРИМЕЧАНИЕ ___________________________________________________________________ Аналогичным модификатору Extrude (Выдавливание) по способу построения объекB тов, но с большими возможностями редактирования профиля выдавливания являетB ся модификатор Bevel (Выдавливание со скосом). Его следует использовать при созB дании объектов с постоянным сечением и фаской на краях (например, текста).
109
Модификаторы геометрии
Рассмотрим применение модификатора Extrude (Выдавливание) на примере созда ния шестеренки часового механизма. 1.
В окне проекции Top (Сверху) постройте сплайн Star (Звезда) и несколько окруж ностей внутри.
2.
Щелкните на объекте Star (Звезда) правой кнопкой мыши, в результате чего появится контекстное меню. Выполните команду Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн).
3.
В свитке Geometry (Геометрия) настроек объекта Star (Звезда) нажмите кноп ку Attach (Присоединить) и в окне проекции Top (Сверху) щелкните последо вательно на всех созданных окружностях для присоединения их к объекту Star (Звезда). В результате получится объект формы профиля будущей шестерен ки, состоящий из нескольких сплайнов (рис. 2.33).
4.
На вкладке Modify (Изменение) командной панели выберите из раскрываю щегося списка модификаторов строку Extrude (Выдавливание). Будет создан объект выдавливания с установками по умолчанию, а на командной панели появится свиток Parameters (Параметры) настроек модификатора выдавлива ния (рис. 2.34).
Рис. 2.33. Форма поперечного сечения будущей шестеренки
Рис. 2.34. Свиток Parameters (Параметры) модификатора Extrude (Выдавливание)
5.
При помощи параметра Amount (Величина) укажите высоту объекта выдавли вания (рис. 2.35).
6.
Используя параметр Segments (Количество сегментов), увеличьте количество сегментов по высоте, если собираетесь редактировать построенный объект с помощью модификаторов поверхности или на уровне подобъектов, преобра зовав тело выдавливания в Editable Mesh (Редактируемая поверхность).
7.
При необходимости укажите, должен ли объект выдавливания иметь закры тые верхнее и нижнее основания, установив флажки Cap Start (Замкнутая по верхность в начале) и Cap End (Замкнутая поверхность в конце).
110
Глава 2. Основные приемы работы
Рис. 2.35. Результат применения модификатора выдавливания
8.
Укажите тип выходной поверхности, установив переключатель в соответству ющее положение.
Bend (Изгиб) Модификатор Bend (Изгиб) используется для создания деформации изгиба трех мерных объектов. Для корректного применения модификатора объект должен иметь достаточное количество разбиений в направлении оси изгиба. Рассмотрим простой пример применения модификатора Bend (Изгиб) к объекту Cylinder (Цилиндр). 1.
В окне проекции Top (Сверху) постройте цилиндр произвольного размера.
2.
Параметру Height Segments (Количество сегментов по высоте) задайте значе ние от 10 до 20 в зависимости от высоты цилиндра.
3.
Из раскрывающегося списка модификаторов вкладки Modify (Изменение) ко мандной панели выберите строку Bend (Изгиб). Раскроется свиток Parameters (Параметры) настроек модификатора изгиба (рис. 2.36).
4.
При помощи параметра Angle (Угол) задайте значение угла изгиба в граду сах.
5.
При необходимости измените направление изгиба, задав угол поворота в поле Direction (Направление).
6.
Для управления ориентацией деформации изгиба установите переключатель Bend Axis (Ось изгиба) в соответствующее положение: X, Y или Z.
7.
В области Limits (Пределы) задайте при необходимости ограничения на дей ствие модификатора в пределах выбранной оси деформации.
8.
Для получения дополнительного контроля над деформацией изгиба щелкни те на плюсике возле названия модификатора в стеке. В результате появится доступ к габаритному контейнеру Гизмо (строка Gizmo (Габаритный контей нер)) модификатора и его центру (Center (Центр)).
Модификаторы геометрии
111
На рис. 2.37 показаны два варианта применения модификатора Bend (Изгиб).
Рис. 2.36. Свиток Parameters (Параметры) модификатора Bend (Изгиб)
Рис. 2.37. Цилиндр после применения модификатора Bend (Изгиб) со значением угла изгиба 90° (слева) и его копия с ограничением области воздействия и центром модификатора, передвинутым вверх (справа)
Twist (Скручивание) Модификатор Twist (Скручивание) применяется для создания деформации скру чивания. Чаще всего он используется при конструировании витых спиралевидных моделей: веревок, сверл, резьбы, кованых решеток, ювелирных украшений и т. п. (рис. 2.38). Для корректного применения модификатора объект должен иметь до статочное количество разбиений в направлении оси изгиба.
Рис. 2.38. Объекты, созданные при помощи модификатора Twist (Скручивание)
Рассмотрим простой пример применения модификатора Twist (Скручивание). 1.
В окне проекции Top (Сверху) постройте объект Box (Параллелепипед), длина и ширина которого равны 5 мм, а высота — 150 мм. В поле Height Segs (Коли чество сегментов по высоте) укажите значение, равное 100.
112
Глава 2. Основные приемы работы
2.
Из раскрывающегося списка модификаторов вкладки Modify (Изменение) командной панели выберите строку Twist (Скручивание). Появится свиток Parameters (Параметры) настроек модификатора скручивания (рис. 2.39).
3.
Укажите при помощи параметра 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 (Редактирование поверхности) является одним из ключе вых инструментов редактирования геометрии, без которого трудно представить моделирование объектов сложной формы. Кроме непосредственного редактирова ния, его можно использовать для выделения сеток или их подобъектов с целью применения различных модификаторов. Рассмотрим пример создания модели яблока при помощи модификатора Edit Mesh (Редактирование поверхности).
Модификаторы геометрии
113
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), сформировав углубление в ме сте крепления хвостика яблока.
Рис. 2.41. Свиток Soft Selection (Плавное выделение) с параметрами выделения вершин сферы
Рис. 2.42. Изменение положения близлежащих вершин сферы в результате перемещения выделенной вершины
7.
В окне проекции Front (Спереди) выделите две вершины, находящиеся в третьем ряду снизу и в середине объекта (одна на лицевой стороне, другая на проти воположной). Затем, удерживая нажатой клавишу Ctrl, добавьте к выделе нию две такие же вершины в окне проекции Left (Cлева). Таким образом, должны быть выделены четыре вершины, расположенные в третьем ряду сни зу и равноудаленные друг от друга.
8.
Не меняя настройки плавного выделения, переместите выделенные вершины немного вниз, сформировав таким образом нижнюю часть яблока (рис. 2.43).
Рассмотренный пример иллюстрирует лишь малую часть возможностей, которые предоставляет модификатор Edit Mesh (Редактирование поверхности). Выполняя упражнения, описанные во второй и третьей частях книги, вы будете постоянно
114
Глава 2. Основные приемы работы
Рис. 2.43. Четыре вершины, выделенные в нижней части яблока, при перемещении вниз формируют его основание
сталкиваться с редактированием сеток объектов, начиная с самых простых и закан чивая моделированием головы человека. ПРИМЕЧАНИЕ ___________________________________________________________________ После применения модификатора Edit Mesh (Редактирование поверхности) объекты наделяются свойствами, идентичными свойствам объектов Editable Mesh (РедактиB руемая поверхность).
Noise (Шум) Яблоко, созданное с помощью модификатора Edit Mesh (Редактирование поверх ности), получилось почти идеальной формы, однако в природе не существует иде альных форм. Модификатор Noise (Шум) помогает придать геометрии моделей неравномерность, присущую объектам реального мира. Применим модификатор Noise (Шум) к модели яблока и рассмотрим его основные настройки. 1.
Выделите модель яблока, созданную ранее при помощи модификатора Edit Mesh (Редактирование поверхности).
2.
Из списка модификаторов вкладки Modify (Изменение) командной панели вы берите строку Noise (Шум). Раскроется свиток Parameters (Параметры) настро ек модификатора (рис. 2.44).
3.
Укажите в полях X, Y и Z области Strength (Сила воздействия) значения смеще ния в направлении соответствующих осей глобальных координат.
4.
В области Noise (Шум) установите значение счетчика Scale (Масштабирова ние) для определения величины возмущения поверхности объекта. Большие значения ведут к более гладким возмущениям, малые — к более частым. Пара метр Seed (Случайная выборка) устанавливает положение генератора случай ных величин.
115
Модификаторы геометрии
5.
При необходимости установите флажок Fractal (Фрактальный) для включения режима генерации фрактальных возмущений. Значения параметров Roughness (Шероховатость) и Iterations (Количество итераций) позволяют управлять степенью шероховатости поверхности и задают количество вычислительных циклов фрактального алгоритма.
После настройки основных параметров модификатора Noise (Шум) модель ябло ка стала выглядеть реалистичнее, а добавление хвостика, выполненного при помо щи примитива Cylinder (Цилиндр) с примененными к нему модификаторами Bend (Изгиб) и Taper (Заострение), довершило картину (рис. 2.45).
Рис. 2.44. Свиток Parameters (Параметры) модификатора Noise (Шум)
Рис. 2.45. Модель яблока с габаритным контейнером Гизмо после применения модификатора Noise (Шум)
Таким образом, на примере моделирования яблока вы могли убедиться в том, что строить модели некоторых объектов гораздо проще и быстрее с использованием параметрических объектов и модификаторов формы. Кроме того, что такие объек ты продолжают сохранять параметрические свойства, их легко редактировать при помощи изменения параметров самих объектов и настроек присвоенных им моди фикаторов.
Глава 3
Материалы и текстуры • Окно Material Editor (Редактор материалов) • Материал типа Standard (Стандартный) • Создание сложных материалов • Использование текстурных карт
Окно Material Editor (Редактор материалов)
117
Материалы, используемые в 3ds Max, позволяют имитировать внешний вид пред метов реального мира, а именно такие их свойства, как цвет, сглаженность, мяг кость, прозрачность, свечение и др. Эта глава посвящена описанию основных способов работы с материалами и возможностей окна Material Editor (Редактор ма териалов).
Окно Material Editor (Редактор материалов) Material Editor (Редактор материалов) — это окно диалога, позволяющее создавать, редактировать и присваивать материалы объектам сцены. Редактор материалов является расширенной средой, в которой все типы процедурных и текстурных карт и материалов выступают подключаемыми компонентами. Окно Material Editor (Редактор материа лов) можно вызвать, выполнив команду RenderingMaterial Editor (Визуализа цияРедактор материалов), щелкнув на кнопке Material Editor (Редактор ма териалов) главной панели инстру ментов или нажав клавишу Ì. Окно Material Editor (Редактор матери алов) состоит из ячеек образцов мате риалов, кнопок инструментов управле ния и области свитков (рис. 3.1).
Ячейки образцов материалов По умолчанию при работе над новой сценой Material Editor (Редактор мате риалов) показывает шесть ячеек с об разцами материалов. Щелчок на ячей ке активизирует ее и изменяет цвет ее границы на белый. Если ячейка образца содержит материал, который исполь зуется в сцене, то в ее углах помещаются белые треугольники. Позиция в иерар хии материалов при переключении меж ду окнами образцов запоминается. В Material Editor (Редактор материа лов) доступны 24 ячейки материалов. По умолчанию отображается только шесть из них. Просмотреть остальные ячейки можно, используя вертикальную и горизонтальную полосы прокрутки
Рис. 3.1. Окно диалога Material Editor (Редактор материалов)
118
Глава 3. Материалы и текстуры
либо изменив в настройках окна количество отображаемых ячеек. Для этого на жмите кнопку Options (Параметры) (в правой части окна Material Editor (Редактор материалов)) или выполните команду OptionsOptions (ПараметрыПараметры) и в появившемся окне Material Editor Options (Параметры редактора материалов) уста новите переключатель Slots (Слоты) в одно из положений — 3 × 2, 5 × 3 или 6 × 4. В зависимости от своего назначения в сцене материалы 3ds Max имеют три «темпе ратуры»: «горячую», «теплую» и «холодную». Если материал применяется в сцене, он считается «горячим», если является копией материала, используемого в сцене, — «теплым», а если не используется — «холодным» (рис. 3.2).
а
б
в
Рис. 3.2. Ячейки образцов материалов: «холодного» (а), «теплого» (б) и «горячего» (в)
«Горячие» материалы отмечены в окнах образцов материалов четырьмя белыми треугольниками. «Теплым» материал становится при копировании материала с по мощью кнопки Make Material Ñîðó (Сделать копию материала) или перетаскивания образца материала из одной ячейки в другую. Скопированный («теплый») мате риал имеет то же имя, что и оригинал, но не связан напрямую со сценой. Его ре дактирование не влияет на текущее состояние сцены. «Холодный» материал отлича ется от «теплого» только тем, что не разделяет имя с уже существующим в текущей сцене и не присвоен ни одному объекту сцены. СОВЕТ ___________________________________________________________________________ При редактировании «горячего» (назначенного) материала рекомендуется использоB вать его «теплую» версию. Для этого делается копия образца материала, производятB ся все изменения, и затем она назначается соответствующему объекту в сцене как новый «горячий» материал.
После выбора ячейки с образцом материала можно присвоить его объекту, выде ленному в окне проекции. Для этого щелкните на кнопке Assign Material to Selection (Назначить материал выделенным объектам), расположенной ниже ячеек с об разцами материалов, или выполните команду MaterialAssign to Selection (Мате риалНазначить выделенным объектам). Существует более простой и наиболее применяемый способ: перетащить материал из ячейки образца на объект, распо ложенный в окне проекции. Как только материал присваивается объекту сцены, он автоматически попадает в биб лиотеку материалов, которая сохраняется вместе с файлом сцены. Находясь в этой библиотеке, он может не отображаться в ячейках с образцами материала.
Окно Material Editor (Редактор материалов)
119
СОВЕТ ___________________________________________________________________________ При необходимости вы можете просмотреть все материалы, включенные в сцену, установив в окне Material/Map Browser (Окно выбора материалов и карт) переключаB тель 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 in 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 Map in Viewport (Отобразить карту в окне проекции) — отображает дву мерные карты текстур на поверхности объектов в окнах проекций. Кроме того, в данной версии программы появилась возможность выбора способа ото бражения карты при помощи дополнительных кнопок 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 (Окно выбора материалов и карт). Ниже окна с именем и кнопки выбора типа материала находится область свитков текущего материала, состав которой изменяется в зависимости от выбранного типа.
121
Окно Material Editor (Редактор материалов)
Использование Material/Map Browser (Окно выбора материалов и карт) Окно диалога Material/Map Browser (Окно выбора материалов и карт) (рис. 3.3), предназначенное для просмотра и выбора материалов и текстурных карт, откры вается в трех случаях:
при выборе нового материала или тек стурной карты;
при использовании кнопки Type (Тип) для замены текущего подматериала или карты;
при нажатии кнопки Get Material (Уста новить материал).
В 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 (Активная ячейка) — позволяет просматривать материал в активной ячейке образца;
122
Глава 3. Материалы и текстуры
Selected (Выделенные объекты) — позволяет просматривать только те матери алы и текстуры, которые принадлежат выделенным объектам сцены;
Scene (Сцена) — служит для просмотра материалов и карт текстур текущей сцены, независимо от того, присутствуют они в Material Editor (Редактор мате риалов) или нет;
New (Создать) — открывает список всех доступных типов материалов и карт текстур, которые можно использовать для создания новых образцов.
Выбрав один или несколько вариантов в области Show (Показывать) окна Material/ Map Browser (Окно выбора материалов и карт), можно ограничить отображение материалов и текстурных карт:
Materials (Материалы) — включает отображение в окне просмотра материалов;
Maps (Карты текстур) — задает отображение в окне просмотра текстурных карт;
Incompatible (Несовместимые) — включает отображение несовместимых с теку щим визуализатором материалов и текстурных карт; в частности, материалы визуализатора mental ray несовместимы со стандартным визуализатором и при установке флажка Incompatible (Несовместимые) отображаются серым цветом;
Root Only (Только результат) — задает отображение только верхнего уровня материалов в окне просмотра;
By Object (По объектам) — включает режим сортировки списка материалов, при кото ром их названия будут упорядочены по алфавиту.
Кнопки, расположенные в верхней части окна Material/Map Browser (Окно выбора материалов и карт), позволяют изменять режим отображе ния материалов и выполнять некоторые стан дартные операции.
Окно Material/Map Navigator (Путеводитель по материалам и картам)
Рис. 3.4. Окно Material/Map Navigator (Путеводитель по материалам и картам)
Каждый материал сцены может содержать лю бое количество подматериалов, которыми могут быть другие материалы или текстурные карты. Подматериалы можно редактировать при по мощи свитков, в которых они содержатся, но более простым и визуально понятным спосо бом является использование окна Material/Map Navigator (Путеводитель по материалам и кар там) (рис. 3.4).
Материал типа Standard (Стандартный)
123
Окно Material/Map Navigator (Путеводитель по материалам и картам) является со ставной частью Material Editor (Редактор материалов) и предоставляет возмож ность для изучения дерева материалов. Как и в окне Material/Map Browser (Окно выбора материалов и карт), кружки символизируют материалы, а параллелограм мы — текстурные карты. Щелчок на каждом символе настроит Material Editor (Ре дактор материалов) на определенный материал или карту на данном уровне. Это облегчает навигацию внутри или между сложными материалами. В Material/Map Navigator (Путеводитель по материалам и картам), как и в Material/ Map Browser (Окно выбора материалов и карт), кнопки, расположенные в верхней части окна, позволяют изменять режим отображения материалов.
Материал типа 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) позволяют настраивать параметры тонированной
124
Глава 3. Материалы и текстуры
раскраски, трех главных компонентов цве та материала, а также другие характерис тики материала. Создание нового материала начинается с выбора типа тонированной раскраски в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры за тенения). Параметр, определяющий то нированную раскраску, является основ ным в материале Standard (Стандартный). Он управляет выбором метода (алгорит мом) визуализации для оценки и затене ния базовых цветов и сияния. Существуют три теневые характеристики материала Standard (Стандартный).
Ambient (Цвет подсветки) — это цвет объекта, который освещен рассеян ным светом. Хотя значение подсвет ки представляет затененную часть материала, оно существенно влияет на поверхность, так как обычно в заданный момент времени под воздействи ем прямого света находится только небольшая часть объекта.
Рис. 3.5. Свитки настроек Shader Basic Parameters (Основные параметры затенения) и Basic Parameters (Основные параметры) стандартного материала
Diffuse (Цвет рассеивания) — цвет объекта, освещенного прямым светом. Оказывает наибольшее влияние на вид материала, и его проще всего опреде лять. Это цвет, на который ссылаются при описании материала в реальной жизни.
Specular (Цвет зеркального отражения) — цвет пятна отражения. Цвет зеркаль ного отражения смешивается с цветом подсветки. Такая смесь варьируется от материала к материалу, но обычно окрашена в цвет рассеивания (или цвет блика) с небольшой насыщенностью или бесцветна (белая). Влияние, которое цвет зеркального отражения оказывает на материал, прямо связано со значе нием параметра Specular Level (Уровень блеска).
Слева от цветов расположены кнопки, позволяющие заблокировать цвета, чтобы они оставались одинаковыми. После этого настройка одного цвета влияет на цвет другого. СОВЕТ ___________________________________________________________________________ Несмотря на то что Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) блокироB ваны по умолчанию, не стоит оставлять их одинаковыми, если вы не стремитесь поB лучить материал яркого пластика. Сделав 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 (Карта грани) (б), 2BSided (Двусторонний) (в) и Faceted (Огранка) (г)
В свитке Basic Parameters (Основные параметры) также находятся параметры SelfIllumination (Собственное свечение) и Opacity (Непрозрачность). Параметр Self-Illumination (Собственное свечение) помогает создать иллюзию са мостоятельного свечения посредством устранения компонента затенения материала, определяемого параметром Ambient (Цвет подсветки). Увеличение значения па раметра Self-Illumination (Собственное свечение) уменьшает эффект рассеивания
126
Глава 3. Материалы и текстуры
до тех пор, пока затенение не будет больше появляться. Если материал полностью самостоятельно светится (значение параметра Self-Illumination (Собственное све чение) равно 100), то на поверхности нет тени и везде, кроме бликов, использует ся рассеянный цвет. По умолчанию все материалы непрозрачны на 100 %. Общую прозрачность мате риала можно определить, используя карту его непрозрачности. Когда карта непро зрачности активна, она перекрывает параметр Opacity (Непрозрачность), так как задает силу и размещение непрозрачности материала.
Типы тонирования Параметры тонированной окраски управляют тем, какой метод (алгоритм) визу ализации будет использоваться для оценки и затенения базовых цветов, а также сияния. Существует восемь типов тонирования оболочек объектов, представлен ных в раскрывающемся списке свитка Shader Basic Parameters (Основные парамет ры затенения).
Blinn (По Блинну) (рис. 3.7, а), Oren-Nayar-Blinn (По Оурену — Найару — Блинну) (рис. 3.7, б), Phong (По Фонгу) (рис. 3.7, в) — методы тонированной раскрас ки, обеспечивающие сглаживание граней и отображение зеркальных бликов на поверхности материала. Раскраска по Блинну или Фонгу в большинстве случаев применяется для создания стандартных материалов пластика, краше ных поверхностей, дерева, резины и т. п. При этом раскраска по Фонгу дает бо лее мягкое сглаживание между гранями, рассчитывая нормали каждого пик села поверхности. Окраска по Оурену — Найару — Блинну предоставляет дополнительные возможности, связанные с управлением яркостью цвета рас сеивания, что позволяет получить большую гибкость в настройке материалов с шероховатой поверхностью (например, тканей).
а
б
в
Рис. 3.7. Типы тонирования Blinn (По Блинну) (а), OrenBNayarBBlinn (По Оурену — Найару — Блинну) (б) и Phong (По Фонгу) (в)
Metal (Металл) (рис. 3.8, а), Strauss (По Штраусу) (рис. 3.8, б) — применяются для имитации металлов и материалов с металлическим блеском (таких как стекло, сталь и т. п.). Цвет блика металлических материалов зависит от на строек цветового компонента Diffuse (Цвет рассеивания) и формы кривой бли ка. Форма кривой блика и результирующее сияние на поверхности существен но отличаются от получаемого при режиме затенения Phong (По Фонгу), хотя значение сияния остается тем же. Особенность раскраски по Штраусу состо
Материал типа Standard (Стандартный)
127
ит в возможности применения ее не только для имитации металлических по верхностей.
а
б
Рис. 3.8. Типы тонирования Metal (Металл) (а) и Strauss (По Штраусу) (б)
Anisotropic (Анизотропный) (рис. 3.9, а), Multi-Layer (Многослойный) (рис. 3.9, б) — позволяют имитировать несимметричные блики и управлять их ориентацией на поверхности материала. Данные типы тонированной раскраски характери зуются нерадиальным пятном светового блика. Многослойный тип тонирования может управлять двумя независимыми бликами разного цвета и интенсивно сти. Тонирование Anisotropic (Анизотропный) и Multi-Layer (Многослойный) могут применяться для имитации крашеных полированных поверхностей (по крытие автомобиля), стекла, волос и т. п.
а
б
Рис. 3.9. Типы тонирования Anisotropic (Анизотропный) (а) и MultiBLayer (Многослойный) (б)
Translucent Shader (Просвечивающийся) (рис. 3.10) — позволяет свету свобод но проходить сквозь объект, создавая эффект полупрозрачности. Этот тип то нирования напоминает двусторонний эффект, когда подсветка задних граней отображается на передних. Он не имитирует рассеивание света в пределах объекта, поэтому может применяться для имитации тонких объектов (напри мер, бумаги или матового стекла).
Рис. 3.10. Тип тонирования Translucent Shader (Просвечивающийся)
128
Глава 3. Материалы и текстуры
Дополнительные параметры Помимо основных, стандартные материалы обладают дополнительными парамет рами, представленными в свитках Extended Parameters (Дополнительные параметры), SuperSampling (Сверхразрешение) и Dynamics Properties (Динамические свойства), — непрозрачностью, характеристикой каркаса, методом сглаживания и динами ческими характеристиками материала. Свиток Extended Parameters (Дополнитель ные параметры) позволяет настраивать па раметры трех областей (рис. 3.11): Advanced Transparency (Свойства прозрачности), Wire (Каркас) и Reflection Dimming (Ослаб ление зеркального отражения). Переключатель Falloff (Спад) области Advanced Transparency (Свойства прозрачно сти) позволяет указать направление спада Рис. 3.11. Свиток Extended Parameters прозрачности: In (Внутрь) или Out (Нару (Дополнительные параметры) стандартного материала жу). Прозрачность регулируется парамет ром Amt (Степень). Изменение прозрач ности используется на краях таких объектов, как стеклянная бутылка, мыльные пузыри, облака или туман. Переключатель Type (Тип) позволяет задать способ отображения прозрачных ма териалов через канал цвета: Filter (Фильтрующий), Subtractive (Вычитающий) и Additive (Суммарный). Эти три типа взаимодействия цветовой составляющей, пропущенной через прозрачный материал, позволяют в первом случае получить максимально реалистичный эффект прозрачных материалов, во втором и третьем — специальные эффекты, такие как дым, луч прожектора или цветная тень. Параметр Index of Refraction (Коэффициент преломления) задает величину коэф фициента преломления светового луча, проходящего через прозрачный материал. Параметр Size (Размер) области Wire (Каркас) позволяет задавать толщину сетки в режиме каркасного отображения объекта. Переключатель In (Внутри) этой же области определяет единицы измерения, в которых будет измеряться толщина данной сетки:
Pixels (Пикселы) — в пикселах (толщина линии не меняется в зависимости от расстояния до камеры);
Units (Единицы) — в текущих единицах, установленных в программе (изменя ется в зависимости от расстояния до камеры — с удалением уменьшается).
В области Reflection Dimming (Ослабление зеркального отражения) указываются характеристики ослабления блеска для карт зеркального отражения, находящих ся в тени. Свиток SuperSampling (Сверхразрешение) (рис. 3.12) позволяет выбрать один из четырех методов сглаживания изображений: Adaptive Halton (Адаптивный Хэлтона),
129
Создание сложных материалов
Adaptive Uniform (Адаптивный равномер ный), Hammersley (Хаммерсли) и Max 2.5 Star (Максимально 2,5 — звезда). Сглаживание краевых эффектов рассчи тывается для каждого пиксела с учетом цвета соседних. При визуализации в программе 3ds Max происходит фильтрация краевых эффектов. Рис. 3.12. Свиток SuperSampling Настройки свитка SuperSampling (Сверх (Сверхразрешение) разрешение) предоставляют дополнитель ный контроль над сглаживанием, позволяя улучшить выходное изображение. При менение этого метода требует дополнительного времени для расчетов и может замедлить процесс визуализации в несколько раз. Одним из случаев использова ния SuperSampling (Сверхразрешение) может быть применение при визуализации анимации для сглаживания эффекта «мельтешения», связанного с неоднородным отображением цвета пикселов в соседних кадрах. Свиток Dynamics Properties (Динамичес кие свойства) позволяет настраивать ха рактеристики стандартных материалов с учетом динамики для последующего применения их к объектам, участвующим в анимации (рис. 3.13).
Рис. 3.13. Свиток Dynamics Properties
Можно настраивать следующие динами (Динамические свойства) ческие характеристики: Bounce Coefficient (Коэффициент упругости), Static Friction (Статическое трение) и Sliding Friction (Трение скольжения).
Создание сложных материалов Хотя материал Standard (Стандартный) применяется наиболее часто, 3ds Max пре доставляет возможность создавать различные сложные материалы, состоящие из двух или более стандартных материалов. В этом случае материал Standard (Стан дартный) предназначен для комбинирования эффектов других материалов. Доступ к составным материалам можно получить, щелкнув на кнопке Type (Тип) в окне Material Editor (Редактор материалов). В результате откроется окно диалога Material/Map Browser (Окно выбора материалов и карт) со списком доступных ма териалов. Рассмотрим некоторые из них.
Top/Bottom (Верх/низ) Материал Top/Bottom (Верх/низ) позволяет назначить разные материалы верхней и нижней частям объекта. Какая часть объекта считается нижней, а какая верхней, зависит от его ориентации относительно оси Z глобальной или локальной системы координат.
130
Глава 3. Материалы и текстуры
Для доступа к материалу 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), содержащий следующие на стройки:
Рис. 3.14. Свиток Top/Bottom Basic Parameters (Основные параметры материала Верх/низ)
•
•
кнопки Top Material (Материал верх ней части) и Bottom Material (Ма териал нижней части) для загрузки материалов для верхней и нижней частей объекта;
•
кнопку Swap (Поменять), при по мощи которой можно поменять местами материалы верхней и ниж ней частей;
•
параметр Blend (Смешиваемый), задающий значение смешивания двух материалов на границе в пре делах от 0 до 100;
параметр Position (Положение), определяющий положение границы двух материалов (используется диапазон значений от 0 до 100, причем нуле вое значение полностью закроет объект верхним материалом, а 100 — на оборот).
Blend (Смешиваемый) Материал Blend (Смешиваемый) позволяет смешивать два отдельных материала в определенном процентном соотношении. Он также включает возможность при менения маски, управляющей тем, где происходит смешивание, и, следовательно, появления смесевого цвета. Для доступа к материалу Blend (Смешиваемый) выполните следующие действия. 1.
Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).
2.
Выберите из списка материал Blend (Смешиваемый). В результате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить ста рый материал?) или Keep old material as sub-material? (Оставить старый матери ал в качестве компонента?).
131
Создание сложных материалов
3.
Щелкните на кнопке OK. В результа те в области свитков окна Material Editor (Редактор материалов) появится сви ток Blend Basic Parameters (Основные параметры смешивания) (рис. 3.15).
4.
Настройте параметры смешивания ма териала: 1) щелкнув на одной из кнопок Material 1 (Материал 1) или Material 2 (Материал 2), выберите новый ма териал либо перейдите в режим редактирования существующего. В качестве материалов могут вы ступать как стандартные материа лы, так и сложные составные;
Рис. 3.15. Свиток Blend Basic Parameters (Основные параметры смешивания)
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/SubAObject (Многокомпонентный) Материал Multi/Sub-Object (Многокомпонентный) является одним из наиболее применяемых составных материалов. Он позволяет назначить объекту более од ного материала на уровне грани посредством Material ID (Идентификатора матери ала). Для этих целей может использоваться модификатор Mesh Select (Выделение поверхности), при помощи которого на уровне подобъектов выделяются области, которым будут присваиваться различные материалы. Для доступа к материалу Multi/Sub-Object (Многокомпонентный) выполните сле дующие действия. 1.
Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).
132 2.
Глава 3. Материалы и текстуры
Выберите из списка материал Multi/Sub-Object (Многокомпонентный). В ре зультате откроется окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый материал в качестве компонента?). 3. Щелкните на кнопке OK. В резуль тате в области свитков окна Material Editor (Редактор материалов) появится свиток Multi/Sub-Object Basic Parameters (Основные пара метры многокомпонентного ма териала) (рис. 3.16). 4.
Рис. 3.16. Свиток Multi/SubBObject Basic Parameters (Основные параметры многокомпонентного материала)
Настройте параметры многоком понентного материала: 1) щелкните на кнопке Set Number (Установить количество) и задайте в появившемся окне количество компонентов ма териала. Каждый компонент будет представлен образцом материала в левой части стро ки, а активный выделен пря моугольником;
2) щелкните на кнопке Add (До бавить) для добавления ново го компонента или на кнопке Delete (Удалить), чтобы удалить выделенный в списке компонент;
3) при необходимости измените номер ID (Идентификатор материала), ука зав новое значение; 4) в текстовое поле Name (Имя) справа от номера компонента материала вве дите его имя; 5) щелкните на кнопке Material # (Standard) (Материал № (стандартный)) для доступа к настройкам компонента. Вы можете редактировать существую щий материал или назначить новый; 6) при помощи поля образца цвета, расположенного справа от кнопки, из мените, если нужно, цвет Diffuse (Цвет рассеивания) активного компо нента; 7) для включения или выключения компонента из состава материала устано вите либо снимите его флажок в столбце On/Off (Включить/выключить). Чтобы воспользоваться материалом Multi/Sub-Object (Многокомпонентный), при свойте его объекту сцены, после чего примените к объекту модификатор Edit Mesh (Редактирование поверхности) (можно использовать любой способ доступа для перехода в режим редактирования подобъектов). Выделите область объекта на уровне граней и в свитке Surface Properties (Свойства поверхности) выберите тре буемый идентификатор или имя материала в раскрывающемся списке.
Создание сложных материалов
133
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.
При необходимости установите фла Рис. 3.17. Свиток Matte/Shadow Basic жок Apply Atmosphere (Применить ат Parameters (Основные параметры матового покрытия/тени) мосферные эффекты) в области Atmosphere (Атмосфера), чтобы использовать режим формирования атмосферной дымки применительно к объекту с матовым материалом. Настройки области Atmosphere (Атмосфера) интегрируют матовый объект в атмосферные эффек ты. Если флажок установлен, то влияние атмосферы рассчитывается в зави симости от положения, в которое установлен переключатель:
6.
•
At Background Depth (На глубине фона) — влияние атмосферы не зависит от расстояния;
•
At ObjectDepth (На глубине объекта) — расчет влияния атмосферы произ водится с учетом атмосферы.
В области Shadow (Тень) установите флажок Receive Shadows (Принимать тени), чтобы материал мог принимать тени от других объектов сцены. При установ ке флажка Affect Alpha (Воздействовать на альфаканал) будет формироваться
134
Глава 3. Материалы и текстуры
изображение тени в альфаканале выходного изображения, а параметр Shadow Brightness (Интенсивность тени) и образец цвета Color (Цвет) настраивают цвет и прозрачность тени.
Raytrace (Трассируемый) Материал Raytrace (Трассируемый) основан на методе визуализации, который рас считывает растровое изображение с помощью трассировки лучей, проходящих че рез сцену. Эти лучи могут проходить через прозрачные объекты и отражаться от полированных поверхностей. В результате получается довольно реалистичное изображение, однако платой за качество становится увеличение времени, необхо димого для визуализации, особенно если в сцене много источников света и мате риалов Raytrace (Трассируемый). Трассируемый материал поддерживает такие специальные эффекты, как Fog (Ту ман), Color Density (Плотность цвета), Translucency (Просвечивание) и Fluorescence (Флуоресценция). Для создания материала Raytrace (Трассируемый) выполните следующие действия. 1.
Щелкните на кнопке Type (Тип) в окне Material Editor (Редактор материалов) для вызова окна диалога Material/Map Browser (Окно выбора материалов и карт).
2.
Выберите из списка материал Raytrace (Трассируемый). В результате откроет ся окно диалога, в котором необходимо указать: Discard old material? (Удалить старый материал?) или Keep old material as sub-material? (Оставить старый ма териал в качестве компонента?).
3.
Щелкните на кнопке OK. В результате в области свитков окна Material Editor (Редактор материалов) появятся свитки с параметрами редактирования трас сируемого материала Raytrañe Basic Parameters (Основные параметры трасси руемого материала) (рис. 3.18), Extended Parameters (Дополнительные параметры), Raytracer Controls (Управление трассировкой) и SuperSampling (Сверхразреше ние).
Свиток Raytrañe Basic Parameters (Основные параметры трассируемого материала) включает часть описанных ранее параметров для стандартного материала, поэто му остановимся только на тех, которые соответствуют материалу Raytrañe (Трас сируемый). В отличие от стандартного материала, поля образца цвета (за исключением цвета Diffuse (Цвет рассеивания)) могут переключаться между образцом цвета и счетчи ком значения, варьирующегося в диапазоне от 0 до 100, что соответствует белому и черному цветам. Переключение производится с помощью установки или снятия флажка, находящегося рядом с образцом цвета. Параметр Ambient (Цвет подсвет ки) отличается от одноименной настройки стандартного материала. Для материа ла Raytrace (Трассируемый) значение подсветки характеризует степень восприя тия подсветки трассируемым материалом. Установка белого цвета аналогична блокировке цветов Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) в стан дартном материале.
135
Создание сложных материалов
Цвет Reflect (Отражение) управляет отражательной способностью материала. Белый материал будет соответствовать 100 % величины отражения, в то время как черный материал совсем не будет генерировать отражения. При использовании цвета, отличного от чернобелого, последний будет добавляться к отражениям, из меняя их цветовой тон. Образец цвета Luminosity (Светимость), подобно параметру Self-Illumination (Соб ственное свечение) стандартного материала, вызывает эффект свечения материа ла цветом образца. Снятие флажка вызывает смену названия на Self-Illum (Соб ственное свечение) и появление счетчика для настройки собственного свечения в диапазоне от 0 до 100. Параметр Transparency (Прозрачность) устанавливает фильтрацию цвета, проходя щего через прозрачный материал (аналогичен комбинации Filter (Фильтрующий) и Opacity (Непрозрачность) стандартного материала). При использовании белого цве та материал полностью прозрачен и, наоборот, при черном — полностью непрозрачен. В нижней части свитка Raytrañe Basic Parameters (Основные параметры трассируемого материала) располагаются параметры двух карт — Environment and Effects (Окружа ющая среда и эффекты) и Bump (Рельефность). Они также представлены в свитке Maps (Карты текстур):
Environment (Окружающая среда) — предназначена для замены карты текстуры окружающей среды, назначенной в окне диалога Environment (Окружающая сре да); используется для формирования зеркального отражения и цвета прозрачно сти (карта окружающей среды видна только тогда, когда ее значение не равно 0);
Bump (Рельефность) — применяется в качестве карты выдавливания.
Свиток Extended Parameters (Дополнительные параметры) (рис. 3.19) содержит на стройки специальных эффектов материала Raytrace (Трассируемый).
Рис. 3.18. Cвиток Raytraсe Basic Parameters (Основные параметры трассируемого материала)
Рис. 3.19. Свиток Extended Parameters (Дополнительные параметры)
136
Глава 3. Материалы и текстуры
Параметр Extra Lighting (Дополнительное освещение) усиливает эффект подсвет ки за счет рассеянного света другими объектами сцены. Используется для усиле ния влияния цвета соседних объектов, имитируя Radiosity (Диффузное отражение) (например, белая тарелка на синей скатерти приобретет голубоватый оттенок). Настройка параметра Translucency (Просвечивание) позволяет свету проходить сквозь объект, представляя собой результат ненаправленного диффузного рассеивания. Этот эффект можно использовать, например, для имитации воска горящей свечи. При помощи настройки параметра Fluorescence (Флуоресценция) можно задать эф фект флуоресцентного свечения материала. Значение параметра Fluor. Bias (Флу оресцентное смещение) контролирует силу эффекта в диапазоне от 0 до 1. Область Advanced Transparency (Улучшенная прозрачность) позволяет настроить эффекты прозрачности материала.
Transp. (Окружающая среда для прозрачности) — устанавливает карту окружа ющей среды применительно к эффекту преломления фона в прозрачном ма териале.
Density Color (Плотность цвета) и Density Fog (Плотность тумана) — однотип ные параметры, позволяющие настроить свойства цвета в среде прозрачного объекта или тумана. Параметры Start (Начало) и End (Конец) задают ближнюю и дальнюю границы внутри объекта, а Amount (Величина) — величину силы эффекта. Данные настройки можно применять для создания эффекта дымча того стекла.
В области Reflections (Отражения) можно настроить параметры отражений, указав тип эффекта отражения: Default (Исходный) или Additive (Суммарный). Значение параметра Gain (Поглощение) задает яркость зеркальных отражений в диапазоне от 0 до 1. Свиток Raytracer Controls (Управление трас сировкой) (рис. 3.20) позволяет оптими зировать алгоритм трассировки с целью уменьшения времени визуализации ко нечного изображения.
Рис. 3.20. Свиток Raytracer Controls (Управление трассировкой)
Область Local Options (Локальные пара метры) содержит настройки, позволяю щие управлять включением/выключением трассировки, — Enable Raytracing (Вклю чить трассировку), атмосферных эффек тов — Raytrace Atmospherics (Атмосферные эффекты трассировки), самоотражения и самопреломления материала — Enable Self Reflect/Refract (Включить самоотражение и самопреломление материала), а также
Использование текстурных карт
137
отражением и преломлением применительно к каналам Gбуфера (Reflect/Refract Material IDs (Отражение/преломление идентификатора материала)). При помощи настроек области Raytracer Enable (Разрешить трассировку) можно разрешить или запретить преломления или отражения применительно к данному материалу. Кнопка Local Exclude (Локальное исключение) служит для вызова окна, позволяю щего указать объекты, которые не будут участвовать в обработке трассировщиком применительно к данному материалу. Параметр Bump Map Effect (Действие карты рельефа) определяет степень влияния карты рельефа на трассируемые эффекты отражения и преломления. Область Ray Antialiasing Globally (Сглаживание отражений и преломлений при трас сировке) служит для включения сглаживания, а из раскрывающегося списка мож но выбрать один из алгоритмов сглаживания.
Использование текстурных карт Понятие о текстурных картах Использование текстурных карт — еще один способ улучшения визуализации объектов. В 3ds Max текстурные карты представляют собой растровые изображе ния, назначаемые поверхностям объектов. Одни карты накладываются на объект как рисунок, другие (например, Bump (Рельефность) или Raytrace (Трассируе мый)) — служат для изменения отображения поверхности, учитывая только ин тенсивность, считая конечные цвета оттенками серого. Двенадцать каналов проецирования, расположенных в свитке Maps (Карты тек стур) окна стандартного материала, являются отправными точками для совершен ствования его вида. Можно манипулировать, комбинировать, ответвлять текстур ные карты множеством способов, заставляя даже простые поверхности выглядеть сложными и насыщенными. Умелое применение текстурных карт может сделать модель предельно реалистичной. Поскольку канал проецирования может ветвиться достаточно глубоко, способ интерпретации результатов ветвления изменяется в зависимости от различных каналов. Результат канала оценивается в цвете RGB и интенсивности оттенков серого. Помните, что растровые карты, применяемые в каналах проецирования, дают значительную нагрузку на оперативную память. На один пиксел 24разрядная кар та цвета требует 3 байта памяти, то есть при разрешении 3072 × 2048 формата Kodak CDROM изображение будет использовать 25 Мбайт оперативной памяти. Если при этом растровая карта использует фильтрацию (а этот параметр приме няется практически всегда), появляются дополнительные затраты — по 1 байту
138
Глава 3. Материалы и текстуры
на пиксел при Pyramidal (Пирамидальная фильтрация) и 12 байт на пиксел при Summed Area (Площадное усреднение) фильтрации. СОВЕТ ___________________________________________________________________________ Для каналов, основанных на использовании интенсивности растровых изображений, таких как SelfBIllumination (Собственное свечение), Opacity (Непрозрачность), Bump (Рельефность) и др., необходимо использовать карты в оттенках серого. Это позвоB лит не только более правильно использовать канал проецирования, но и сократить на треть загрузку оперативной памяти.
Проекционные координаты Проекционные координаты применяются для указания того, как будет отобра жаться на поверхности объекта карта текстуры. Они используют пространство координат UVW, где U — горизонтальное направление, V — вертикальное, а W — глу бина. Координаты проецирования растровых карт UVW представляют пропорции соответствующих карт. В координатах UVW подсчитывается приращение растро вой карты без ссылки на ее явные размеры. Оси U и V пересекаются в центре растровой карты и определяют центр UVкоорди нат. Центр координат является точкой, вокруг которой вращается карта при на стройке значения параметра Angle (Угол) для типа карты Bitmap (Растровое изо бражение). При моделировании почти все примитивы в свитке настроек Parameters (Парамет ры) содержат параметр Generate Mapping Coords. (Генерировать координаты проеци рования), который присваивает объектам проекционные координаты. Например, для примитива Box (Параллелепипед) проекционные координаты присваиваются каждой грани. Когда проецирование генерируется параметрически, мозаичность и ориента ция настраиваются только при помощи параметров материала, назначенного по верхности. В качестве альтернативы может применяться модификатор UVW Map (UVWпроекция), использование которого предоставляет возможность независи мого управления проекцией отображения, расположением, ориентацией и мозаич ностью текстуры. Присваивание и контроль над проекционными координатами осуществляется раз личными способами: от присваивания модификаторов, таких как UVW Map (UVW проекция) или Unwrap UVW (Расправить UVWпроекцию), до использования под ключаемых модулей и самостоятельных программ. Как и большинство модификаторов 3ds Max, модификаторы проецирования ока зывают влияние на все, что им передается в стеке модификаторов. Если актив ная выборка содержит грани, то проецирование присваивается только выборке подобъектов граней. Такая возможность позволяет смешивать типы проекций отображения и помещать отображение в нескольких местах одного и того же объекта.
139
Использование текстурных карт
Проецирование при помощи модификатора UVW Map (UVWAпроекция) Модификатор 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 (Грань) — проецирование происходит отдельно по каждой грани и мо жет служить для создания повторяющегося узора на поверхности объекта;
•
XYZ to UVW (XYZ в UVW) — применяется, когда необходимо одновременно изменять размеры процедурной карты и поверхности объекта.
Рис. 3.21. Свиток Parameters (Параметры) настроек модификатора UVW Map (UVWB проекция)
140
Глава 3. Материалы и текстуры
С помощью параметров Length (Длина), Width (Ширина) и Height (Высота) можно установить необходимые размеры габаритного контейнера.
Параметры U Tile (Кратность по U), V Tile (Кратность по V) и W Tile (Кратность по W) задают количество повторений текстуры в пределах модели.
Область Channel (Канал) указывает канал проецирования для карты или цве та вершин (к одному объекту может быть применено до 99 типов проекцион ных координат).
Настройки области Alignment (Выравнивание) задают способ выравнивания для габаритного контейнера: Fit (Подогнать), Center (Центрировать), Bitmap Fit (Подогнать по текстуре), Normal Align (Выровнять нормаль), View Align (Выров нять по окну), Region Fit (Подогнать по области), Reset (Сбросить) и Acquire (Получить).
При помощи переключателя Display (Отображение) можно выбрать способ по каза швов граней, отображаемых на уровне подобъектов Gizmo (Габаритный контейнер).
Двумерные карты текстур Двумерные карты названы так изза того, что они не имеют глубины (только ко ординаты UV). Такие карты применяются для наложения на поверхность объектов или в качестве карт окружающей среды. Наиболее распространенными являются карты Bitmap (Растровое изображение), Checker (Шахматная текстура), Gradient Ramp (Усовершенствованный градиент) и Gradient Type (Тип градиента).
Bitmap (Растровое изображение) Текстурная карта Bitmap (Растровое изображение) — наиболее применяемый тип текстуры. Растровая (или битовая) карта представляет собой файлы изображения, сохраненные в одном из форматов растровой графики. Программа 3ds Max под держивает практически все популярные форматы. Чаще всего текстурная карта Bitmap (Растровое изображение) применяется для замещения цвета рассеивания или в качестве карты выдавливания. Настройка параметров карты Bitmap (Ра стровое изображение) производится в сле дующих свитках окна Material Editor (Редак тор материалов): Coordinates (Координаты), Noise (Шум), Bitmap Parameters (Парамет ры растрового изображения), Time (Вре мя) и Output (Результат).
Рис. 3.22. Свиток Coordinates (Координаты) настроек карты Bitmap (Растровое изображение)
Свиток настроек Coordinates (Координаты) (рис. 3.22), аналогично области Mapping (Проекция) параметров модификатора UVW Map (UVWпроекция), применяется для задания способа отображения карты текстуры на поверхности объекта.
141
Использование текстурных карт
В нем вы можете настроить следующие параметры отображения.
В верхней части свитка установить переключатель в одно из двух положений: Texture (Текстура) или Environ (Фон) в зависимости от варианта проецирова ния. В первом случае текстура применяется для отображения на поверхности объекта, во втором — для имитации эффектов окружающей среды (отражения и преломления).
В зависимости от того, какой выбран вариант проецирования (Texture (Тексту ра) или Environ (Фон)), в раскрывающемся списке можно выбрать один из ва риантов проекционных координат: •
при Texture (Текстура) — Explicit Map Channel (Явный канал карты), Vertex Color Channel (Канал цвета вершин), Planar from Object XYZ (Плоская локаль ного объекта), Planar from World XYZ (Плоская глобального пространства);
•
Environ (Фон) — Spherical Environment (Сферическая фоновая), Cylindrical Environment (Цилиндрическая фоновая), Shrink-wrap Environment (Обтяги вающая фоновая) и Screen (Экранная).
Параметры Offset (Смещение) и Tiling (Кратность) задают величину смещения и количество повторений текстурной карты по осям U и V. При этом единицей смещения служит размер карты.
Установить или снять флажки Mirror (Зеркальное отображение) и Tile (Повто рить) для зеркального отражения карты и изменения режима повторяемости.
При помощи параметра Angle (Угол) указать в градусах угол поворота карты по осям U, V и W. Щелкнув на кнопке Rotate (Вращение), повернуть карту ин терактивно в появившемся окне Rotate Mapping Coordinates (Вращение проек ционных координат).
При необходимости установить значение размытия карты, используя парамет ры Blur (Размытие) и Blur offset (Сдвиг размытия).
Установить переключатель в положение, соответствующее плоскости проеци рования координат, — UV, VW или WU.
Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение) позволяет вно сить в текстурную карту некоторые эле менты неоднородности для придания ей большей реалистичности (рис. 3.23). В свитке Noise (Шум) можно настроить следующие параметры:
Рис. 3.23. Свиток Noise (Шум) настроек карты Bitmap (Растровое изображение)
установить флажок On (Включить) для включения режима искажения текстуры;
используя параметр Amount (Величина), задать величину воздействия шума на текстурную карту;
при помощи параметра Levels (Уровни) установить количество циклов алго ритма случайных искажений;
используя параметр Size (Размер), задать размер искажений;
142
Глава 3. Материалы и текстуры
установив флажок Animate (Анима ция), включить режим анимации ис кажений;
задать при помощи параметра Phase (Фаза) скорость изменения фаз шу ма при анимации.
Свиток Bitmap Parameters (Параметры ра стрового изображения) настроек карты Bitmap (Растровое изображение) позво ляет загрузить карту текстуры в состав материала и управлять параметрами ее отображения (рис. 3.24). Рис. 3.24. Свиток Bitmap Parameters (Параметры растрового изображения) настроек карты Bitmap (Растровое изображение)
При помощи свитка Bitmap Parameters (Па раметры растрового изображения) мож но настроить следующие параметры.
При щелчке на кнопке рядом с Bitmap (Растровое изображение) в верхней ча сти свитка откроется окно, с помощью которого можно выбрать файл растро вого изображения с жесткого диска или другого носителя.
Переключатель Filtering (Фильтрация) имеет три положения: •
Pyramidal (Пирамидальная фильтрация) — такая фильтрация применяется для текстурных карт по умолчанию; при такой фильтрации на каждый пик сел текстурной карты требуется дополнительно 1 байт оперативной памяти;
•
Summed Area (Площадное усреднение) — более качественный алгоритм сгла живания, требующий значительных затрат памяти — 12 байт на пиксел;
•
None (Отсутствует) — без фильтрации.
Область Cropping/Placement (Обрезка/размещение) позволяет вырезать из ра стрового изображения часть, которая будет применяться для текстурирова ния. Для этого вызывается окно интерактивного редактора или значения за даются в соответствующих полях.
В области Mono Channel Output (Результат в моноканал) при необходимости мож но указать, какие значения цветовых каналов будут использоваться: RGB Intensity (Интенсивность RGB) или Alpha (Альфаканал).
Переключатель Alpha Source (Альфаканал) содержит три положения: Image Alpha (Альфаканал изображения), RGB Intensity (Интенсивность RGB) или None (Opaque) (Отсутствует (прозрачный)).
Переключатель RGB Channel Output (Выход в цвет) используется для указания формирования цвета растровой карты. Он может быть установлен в одно из двух положений: •
RGB — цвет будет воспроизводиться полностью;
•
Alpha as Gray (Градации серого из альфаканала) — альфаканал будет ото бражаться градациями серого тона.
143
Использование текстурных карт
Свиток 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 (Выходное значение) — задает долю карты в составе материала;
RGB Level (Уровень RGB) — управляет насыщенностью цвета текстурной карты;
Bump Amount (Величина рельефа) — позволяет усилить профиль рельефа вы давливания при использовании текстурной карты в канале Bump (Рельеф ность).
Рис. 3.26. Свиток Output (Результат) настроек карты Bitmap (Растровое изображение)
Checker (Шахматная текстура) Процедурная карта Checker (Шахматная текстура) представляет собой узор в виде шахматного поля, состоящего из двух настраиваемых цветов. Кроме рассмотренных ранее свитков Coordinates (Координаты) и Noise (Шум), карта Checker (Шахматная текстура) содержит дополнительный свиток Checker Parameters (Параметры шахматной текстуры) (рис. 3.27).
144
Глава 3. Материалы и текстуры
Для настройки параметров карты Checker (Шахматная текстура) выполните сле дующие действия. 1.
При помощи параметра Soften (Размытие) укажите значение размытия грани цы между соседними клетками разных цветов.
2.
При необходимости измените цвет клеток, щелкнув на образце цвета и настро ив его в окне Color Selector (Выбор цвета).
Рис. 3.27. Свиток Checker Parameters (Параметры шахматной текстуры) настроек карты Checker (Шахматная текстура)
3.
Чтобы вместо цвета использовать кар ту текстуры, щелкните на одной из кнопок под надписью Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора ма териалов и карт) выберите из списка необходимую карту.
4.
Щелкнув на кнопке Swap (Поменять), поменяйте при необходимости места ми цвета или карты текстур шахмат ного поля.
Gradient Ramp (Усовершенствованный градиент) Процедурная карта Gradient Ramp (Усовершенствованный градиент) позволяет ис пользовать произвольное количество цветов для настройки градиента. Кроме рассмотренных ранее свитков, общих для многих текстурных карт, Gradient Ramp (Усовершенствованный градиент) содержит свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) (рис. 3.28). Для настройки параметров карты Gradient Ramp (Усовершенствованный градиент) выполните следующие действия.
Рис. 3.28. Свиток Gradient Ramp Parameters (Параметры усовершенствованного градиента) настроек карты Gradient Ramp (Усовершенствованный градиент)
1.
В верхней части свитка настройте ото бражение цветов градиента на цвето вой шкале. Для этого дважды щелк ните на требуемом ползунке, чтобы вызвать окно диалога Color Selector (Выбор цвета). Для создания нового ползунка щелкните на поле цвета и пе реместите ползунок в нужное место. Для удаления — перетащите ползу нок в правый угол и после появле ния значка корзины отпустите кноп ку мыши.
2.
В раскрывающемся списке Gradient Type (Тип градиента) выберите один из типов градиента, а в списке Inter-
Использование текстурных карт
145
polation (Интерполяция) — один из шести вариантов перетекания цвета меж ду соседними ползунками цветовой шкалы. 3.
Область Noise (Шум) позволяет внести искажения в градиентную заливку. Вы можете выбрать один из трех алгоритмов генерации шума: Regular (Повторяю щийся), Fractal (Фрактальный) или Turbulence (Турбулентный).
4.
Задайте величину и размер шума градиентной текстуры с помощью парамет ров Amount (Величина) и Size (Размер).
Трехмерные карты текстур Трехмерные карты текстур — это процедурные карты, которые генерируются про граммно и используют в просчетах три измерения: U, V и W. В отличие от растровых изображений, процедурные карты требуют значительно меньше оперативной памяти, но увеличивают время расчетов при конечной визу ализации сцены. К данному типу относятся Cellular (Ячейки), Dent (Вмятины), Falloff (Спад), Noise (Шум), Smoke (Дым), Stucco (Штукатурка), Waves (Волны), Wood (Дерево) и др.
Dent (Вмятины) Процедурная карта Dent (Вмятины) позволяет создать на поверхности объектов случайные пятна и вмятины. Может применяться для создания шероховатых и по мятых поверхностей. Кроме свитка Coordinates (Координаты), рассмотренного ранее, карта Dent (Вмяти ны) содержит свиток Dent Parameters (Параметры вмятин) (рис. 3.29). Для настройки параметров карты Dent (Вмятины) выполните следующие дей ствия. 1.
Используя параметр Size (Размер), установите относительный размер пя тен.
2.
При помощи параметра Strength (Сила воздействия) задайте количество пя тен, которое будет отображаться на поверхности материала.
3.
Используя параметр Iterations (Количество итераций), укажите количество итераций фрактального алгоритма расчета пятен.
4.
При необходимости измените цвет пятен, щелкнув на образце цвета и настро ив его в окне Color Selector (Выбор цвета).
5.
Чтобы вместо цвета использовать карту текстуры, щелкните на кнопке в об ласти Maps (Карты текстур) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка необходимую карту.
Рис. 3.29. Свиток Dent Parameters (Параметры вмятин) настроек карты Dent (Вмятины)
146 6.
Глава 3. Материалы и текстуры
Щелкнув на кнопке Swap (Поменять), при необходимости поменяйте местами цвета или карты текстур.
Falloff (Спад) Процедурная карта Falloff (Спад) чаще всего применяется для материалов, имею щих прозрачность или отражения, для задания неоднородности проявления этих эффектов. Управление параметрами карты осуществляется с помощью свитков Falloff Parameters (Параметры спада) (рис. 3.30), а также Mix Curve (Кривая смешивания) и Output (Ре зультат), рассмотренного выше. Для настройки карты Falloff (Спад) выполните следующие действия.
Рис. 3.30. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)
Рис. 3.31. Свиток Mix Curve (Кривая смешивания) настроек карты Falloff (Спад)
1.
В раскрывающемся списке Falloff Type (Тип спада) выберите один из пяти ти пов спада: Toward/Away (На наблюда теля/от наблюдателя), Perpendicular/ Parallel (Перпендикулярно/параллель но), Fresnel (По Френелю), Shadow/ Light (Тень/свет) и Distance Blend (Рас стояние смешивания).
2.
При необходимости измените цвет со ставляющих спада, щелкнув на образ це цвета и настроив его в окне Color Selector (Выбор цвета).
3.
В полях рядом с образцом цвета устано вите значение величины участия каж дой составляющей в конечном расчете.
4.
При необходимости замените цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсут ствует) и в появившемся окне диало га Material/Map Browser (Окно выбора материалов и карт) выберите необхо димую карту.
5.
Настройте дополнительные парамет ры, вызываемые отдельными типами спада, в нижней части окна.
В свитке Mix Curve (Кривая смешивания) (рис. 3.31) можно вручную настроить кри вую, характеризующую параметр смеши вания двух составляющих карты Falloff (Спад). Данная кривая часто применяет ся для управления спадом прозрачности на краях стеклянных объектов.
147
Использование текстурных карт
Noise (Шум) Текстурная карта Noise (Шум) позволяет генерировать бесконечно большие слу чайные переходы (шум) между двумя цветами или материалами. Применение этой карты в каналах Diffuse (Цвет рассеивания), Ambient (Цвет подсветки) и Bump (Рельефность) позволяет повысить реалистичность моделей за счет создания не однородности материала. Настройки карты Noise (Шум) находятся на трех свитках: Coordinates (Координа ты), Output (Результат) (рассмотрены вы ше) и Noise Parameters (Параметры шума) (рис. 3.32). Для настройки параметров карты Noise (Шум) выполните следующие действия. 1.
Установите переключатель, задаю щий тип генерации случайного шума, в одно из положений: Regular (Повто ряющийся), Fractal (Фрактальный) или Turbulence (Турбулентный).
Рис. 3.32. Свиток Noise Parameters (Параметры шума) настроек карты Noise (Шум)
2.
При помощи параметров High (Верхнее значение) и Low (Нижнее значение) области Noise Threshold (Порог уровня шума) задайте верхнее и нижнее поро говые значения, при которых изменяется уровень краевых сглаживаний цве товых пятен.
3.
Используя параметр Levels (Уровни), задайте значение плотности цветовых пятен для фрактального и турбулентного типов генерации шума.
4.
В поле Phase (Фаза) установите значение скорости изменения фаз шума во вре мя анимации.
5.
С помощью параметра Size (Размер) определите размер цветовых пятен на по верхности материала.
6.
При необходимости измените цвет составляющих карты шума, щелкнув на об разце цвета и настроив его в появившемся окне Color Selector (Выбор цвета).
7.
В области Maps (Карты текстур) при желании можно заменить цвета картами текстур. Для этого щелкните на кнопке с надписью None (Отсутствует) и в от крывшемся окне Material/Map Browser (Окно выбора материалов и карт) выбе рите необходимую карту.
Stucco (Штукатурка) Текстурная карта Stucco (Штукатурка), подобно карте Noise (Шум), позволяет создавать на поверхности материала неровности. Однако эти неровности имеют по сравнению с Noise (Шум) другую структуру, напоминающую оштукатуренную поверхность или кожуру цитрусовых. Параметры текстуры Stucco (Штукатурка) содержатся в двух свитках: Coordinates (Координаты) и Stucco Parameters (Параметры штукатурки) (рис. 3.33).
148
Глава 3. Материалы и текстуры
Для настройки параметров текстуры Stucco (Штукатурка) выполните следующие действия.
Рис. 3.33. Свиток Stucco Parameters (Параметры штукатурки) настроек карты Stucco (Штукатурка)
1.
При помощи параметра Size (Размер) укажите размер неровностей.
2.
Используя параметр Thickness (Тол щина), задайте степень размытия гра ницы цветовых составляющих.
3.
С помощью параметра Threshold (По рог) настройте долю участия каждого цвета в итоговой составляющей мате риала.
Параметры и назначение цветов и кнопок области Maps (Карты текстур) аналогич ны рассмотренным ранее.
Составные карты текстур Составные карты текстур предназначены для объединения нескольких текстур в одну новую сложную текстуру. К таким картам относятся Composite (Составная), Mask (Маска), Mix (Смешивание) и RGB Multiply (RGBумножение). Рассмотрим некоторые типы составных карт.
Composite (Составная) Составная текстура Composite (Составная) образуется путем смешивания двух и более текстурных карт при помощи прозрачности с альфаканалом и без него. Для настройки карты используются параметры свитка Composite Parameters (Пара метры составной) (рис. 3.34). Для задания количества компонентов карты Composite (Составная) щелкните на кнопке Set Number (Установить количество) и в открывшемся окне Set Number of Maps (Установить количество текстурных карт) введите требуемое значение. Для выбора текстуры щелкните на кноп ке с надписью None (Отсутствует) и в по явившемся окне Material/Map Browser (Ок но выбора материалов и карт) выберите необходимую карту. При желании можно выключать карту из просчетов, сняв фла жок, установленный напротив ее названия.
Mask (Маска) Рис. 3.34. Свиток Composite Parameters (Параметры составной) настроек карты Composite (Составная)
Составная текстурная карта Mask (Маска) позволяет перекрывать часть одной тек стуры за счет другой. Белые области кар
Использование текстурных карт
149
ты маски позволяют видеть исходный об раз, черные области блокируют его, а се рые области обеспечивают пропорцио нальную видимость. Настройка карты Mask (Маска) осуществ ляется с помощью единственного свитка параметров Mask Parameters (Параметры маски) (рис. 3.35).
Рис. 3.35. Свиток Mask Parameters (Параметры маски) настроек карты Mask (Маска)
Настройте компонент Map (Карта текстуры). Для этого щелкните на кнопке None (Отсутствует) и выберите его из списка открывшегося окна Material/Map Browser (Окно выбора материалов и карт). Эта карта станет той текстурой, которая будет видна на материале. Для выбора карты маски, которая скроет все лишнее, щелкните на кнопке рядом с надписью Mask (Маска). Действие маски основано на том, что все черные пиксе лы изображения считаются прозрачными, а все белые — непрозрачными. Града ции серого интерполируются между полной прозрачностью и непрозрачностью. Флажок Invert Mask (Инвертировать маску) позволяет поменять местами прозрач ные и непрозрачные области изображения.
Mix (Смешивание) Составная текстурная карта Mix (Смешивание) позволяет смешивать два цвета или две текстуры при помощи третьей текстуры, выступающей в роли маски, или используя процентное соотношение каждого компонента в итоговом материале. Для настройки карты Mix (Смешивание) используется свиток Mix Parameters (Пара метры смешивания) (рис. 3.36). Параметры Color #1 (Цвет 1) и Color #2 (Цвет 2) задают цвет компонентов карты. При необходимости в области Maps (Кар ты текстур) можно выбрать две карты текстур для основного цвета и третью карту, которая будет играть роль маски для смешивания двух первых. Параметр Mix Amount (Доля в смеси) опре деляет долю каждой карты в итоговом изображении.
Рис. 3.36. Свиток Mix Parameters (Параметры смешивания) настроек карты Mix (Смешивание)
Область Mixing curve (Кривая смешивания) позволяет управлять кривой смешива ния двух карт.
Глава 4
Анимация в среде 3ds Max 2008 • Анимация с использованием ключевых кадров • Использование контроллеров и выражений • Анимация частиц
Анимация с использованием ключевых кадров
151
Анимацию можно представить как последовательность сменяющих друг друга изображений. В среде 3ds Max 2008 практически каждый объект и почти все его параметры можно анимировать. Анимации могут подвергаться не только объекты и их параметры, но и модификаторы, материалы, контроллеры и многое другое. В данной главе вы познакомитесь с основами создания анимации и инструмента ми управления ее параметрами. Базовые знания, полученные в этой главе, приго дятся вам для работы с упражнениями, представленными во второй части данного издания, и для создания собственных анимационных роликов.
Анимация с использованием ключевых кадров Анимация с использованием ключевых кадров является базовой. Она позволяет понять принцип работы всего механизма создания движущихся образов. Как уже говорилось выше, почти любой параметр объекта (объектами в 3ds Max являются не только параметрические объекты, но и камеры, источники света, модификато ры и даже материалы), имеющий численное значение, можно сделать ключевым, то есть анимировать. Суть использования ключевых кадров заключается в создании ключей анима ции для начального и конечного положения объекта, при этом состояние объекта в промежуточных стадиях просчитывает компьютер. Рассмотрим некоторые термины, которыми мы будем оперировать в дальнейшем.
Ключ (Key) — маркер, задающий значения анимируемых параметров в опре деленный момент.
Ключевой кадр (Keyframe) — кадр, содержащий ключ анимации.
Автоключ (Auto Key) — функция, отслеживающая изменения анимируемых параметров объекта и позволяющая автоматически создавать ключевой кадр.
Ползунок таймера анимации — элемент интерфейса программы, дающий воз можность вручную устанавливать текущий кадр анимации, переходить к пре дыдущему или следующему кадру, а также создавать ключевые кадры для па раметров положения, масштабирования и поворота.
Строка треков (Track Bar) — элемент интерфейса, позволяющий получить бы стрый доступ к ключам выделенного объекта.
Кривая функции (Function Curve), или анимационная кривая, — графически отображает значения анимации в ключах и интерполированные значения между ключами. Настраивается редактированием положения манипуляторов Безье в окне Track View — Curve Editor (Просмотр треков — редактор кривых).
Прежде чем вы выполните свою первую анимацию, давайте рассмотрим инстру менты создания анимации методом ключевых кадров и управления анимацией, представленные в программе 3ds Max. Средства управления анимацией сосредоточены в нижнем правом углу окна програм мы и, кроме указанной группы, включают в себя ползунок таймера, расположенный
152
Глава 4. Анимация в среде 3ds Max 2008
над строкой треков. Средства управления анимацией состоят из следующих кно пок управления. 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 (Автоключ), вы можете контролировать то, какие именно ключи буду созданы (это задается при помощи фильтра Set Key Filters (Установить фильтры ключа)). Для использования этого режима долж на быть нажата кнопка Toggle Set Key Mode (Переключатель режима установки ключей). Toggle Auto Key Mode (Переключатель режима автоматической записи клю чей) — включает/выключает режим автоматического создания ключей анима ции для выделенного объекта сцены в текущем кадре. В этом режиме записы ваются любые трансформации (перемещение, поворот, масштабирование), а также параметры, которые в принципе можно анимировать. При нажатии кнопки автоматической записи ключей будьте внимательны, так как можно случайно записать ненужные ключи. Не забывайте сразу же после записи
Анимация с использованием ключевых кадров
153
необходимой анимации отключать режим автоматической записи ключей, повторно нажав кнопку Toggle Auto Key Mode (Переключатель режима автома тической записи ключей). Selection Sets drop-down list (Список именованных выделений) — раскрывает список с именованными выделениями, созданными при помощи Named Selection Sets (Название выделенной области), к которым будут приме няться ключи анимации. По умолчанию анимация применяется только к вы деленным объектам. Toggle Set Key Mode (Переключатель режима установки ключей) — включает либо выключает режим, при котором будут записываться только те ключи, ко торые указаны в окне Set Key Filters (Установить фильтры ключа). Default In/Out Tangents for New Keys (Исходный тип касательных) — задает ис ходный тип касательных в ключах, которые строятся при помощи автомати ческой записи ключей анимации. Open Filters Dialog (Открыть окно фильтров ключа) — щелчок на этой кнопке вызывает окно Set Key Filters (Установить фильтры ключа), поз воляющее включить или выключить треки, которые будут анимироваться. Рассмотрим создание простейшей анимации с использованием ключевых кадров. Для этого сделайте следующее. 1.
В окне проекции Top (Сверху) создайте параметрический объект Plane (Плос кость), для чего выполните команду главного меню CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость).
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 (Автоключ),
Рис. 4.1. Окно Move Transform TypeBIn (Ввод данных преобразования перемещения) с параметрами положения сферы
154
Глава 4. Анимация в среде 3ds Max 2008
расположенной в правой нижней части окна программы. В результате кнопка выделится цветом , указывая на то, что находится в активном состоя нии. 7.
Передвиньте ползунок таймера анимации на 20 кадр.
8.
Снова откройте окно Move Transform Type-In (Ввод данных преобразования пе ремещения), щелкнув правой кнопкой мыши на кнопке Select and Move (Вы делить и переместить) на панели инструментов, и параметру Z области Absolute:World (Абсолютные: глобальные) задайте новое значение, равное 0. В результате в строке треков появятся два ключевых кадра: один в нулевом, другой в 20 кадре активного временного сегмента.
9.
Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).
10.
Нажмите кнопку Play Animation (Воспроизвести анимацию) выполненную анимацию в активном окне проекции.
, чтобы увидеть
После выполнения вышеописанных действий вы увидите, как сфера начнет падать по прямой с высоты 100 мм, начиная с нулевого кадра (активный кадр по умолча нию) до 20 кадра, то есть до нулевого значения по вертикали (по оси Z) (рис. 4.2). Такое движение обусловлено автоматически созданными ключевыми кадрами и расчетом интерполяции движения между ними.
Рис. 4.2. Положение объекта Sphere (Сфера) в 10 кадре анимации и траектория его движения
Созданные ключи анимации можно редактировать: изменять анимированные на стройки или изменять положение ключей в строке треков. Проще всего редакти ровать с помощью контекстного меню, которое можно вызвать щелчком правой кнопки мыши на ключе анимации (рис. 4.3).
Анимация с использованием ключевых кадров
155
Рис. 4.3. Контекстное меню, вызванное щелчком правой кнопкой мыши на ключе в 20 кадре анимации
Используя это контекстное меню, вы можете не только редактировать положение объекта в пространстве, но и удалять созданные ранее ключи, фильтровать их по различным признакам, получать доступ к свойствам присвоенного контроллера и конфигурации строки треков. При автоматическом создании ключей анимации программа использует для ин терполяции в начальном и конечном кадрах значения Безье. На практике это вы глядит как плавное начало движения и постепенное затухание к концу анимации. Часто такие значения подходят, и их можно оставлять как есть. Однако если мы, например, анимируем подброшенный вверх мячик, то, поднимаясь вверх, он будет замедлять движение, пока не остановится, а затем начнет падать, постепенно ускоряясь, пока не достигнет земли. Представим, что описанная выше сфера — это тот самый мяч. В этом случае необходимо скорректировать функциональную кри вую анимации так, чтобы, падая, мяч приобретал ускорение. Для этого нужно от редактировать 20 ключ анимации следующим образом. 1.
Щелкните правой кнопкой мыши на 20 ключе анима ции и в появившемся контекстном меню выберите стро ку Sphere01: Z Position (Сфера01: положение по оси Z).
2.
В одноименном открывшемся окне щелкните на кнопке In (Вход) и выберите из раскрывшегося списка быстрое управление сглаживанием сегментов сплайна Безье (рис. 4.4).
3.
Протестируйте выполненную анимацию, щелкнув на . кнопке Play Animation (Воспроизвести анимацию)
Выполнив эти несложные настройки кривой анимации, мы сделали так, что, падая, мяч будет постоянно ускоряться, пока не достигнет плоскости. При реальном столкновении с плоскостью мяч деформи руется, а затем, распрямляясь, отскочит вверх. Чтобы по казать деформацию мяча, воспользуемся модификатором
Рис. 4.4. Выбор кнопки быстрого управления функциональной кривой анимации
156
Глава 4. Анимация в среде 3ds Max 2008
FFD 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.
Активизируйте запись ключей анимации, щелкнув на кнопке Auto Key (Авто . ключ)
5.
Передвиньте ползунок таймера анимации на 22 кадр.
6.
На главной панели инструментов активизируйте инструмент перемещения, . щелкнув на значке Select and Move (Выделить и переместить)
7.
В окне проекции Front (Спереди) выделите верхний ряд контрольных точек контейнера деформации и переместите их вниз на 3 мм (рис. 4.6).
Рис. 4.5. Стек модификаторов объекта Sphere01
Рис. 4.6. Сфера, деформированная при помощи контрольных точек модификатора FFD 2×2×2 (Произвольная деформация 2×2×2)
Таким образом, у нас получилось, что сфера как будто деформировалась от столк новения с поверхностью.
Анимация с использованием ключевых кадров
157
ПРИМЕЧАНИЕ ___________________________________________________________________ В реальной жизни форма мяча при столкновении окажется несколько иной. При столкновении с поверхностью будет больше деформироваться та часть мяча, котоB рая с ней взаимодействует. Чтобы воспроизвести это, нам понадобилось бы строить дополнительные ряды контрольных точек или использовать плавное выделение (Soft Selection) подобъектов сферы. Однако мы рассматриваем создание простой анимаB ции и не ставим такой задачи. При желании вы можете повысить реалистичность аниB мации, воспользовавшись модификатором FFD (Box) (Произвольно деформируемый контейнер (прямоугольный)).
Итак, построенная деформация больше похожа на применяемую в анимационных роликах. Давайте усилим это восприятие, создав анимацию деформации мяча во время падения. Для этого продолжим создавать ключевые кадры. 1.
Передвиньте ползунок таймера анимации в 18 кадр.
2.
Используя инструмент Select and Move (Выделить и переместить), перемести те верхний ряд контрольных точек по оси Z вверх на 6 мм.
3.
На главной панели инструментов щелкните на значке Select and Uniform Scale (Выделить и равномерно масштабировать) и масштабируйте выделенные контрольные точки на 80 % (рис. 4.7).
Рис. 4.7. Положение контрольных точек в 18 кадре анимации
4.
Выключите запись ключей анимации, щелкнув на кнопке Auto Key (Авто ключ).
5.
Проверьте созданную анимацию. Мяч должен деформироваться, вытягиваясь во время полета, а при падении на плоскость — сплющиваться.
158 6.
Глава 4. Анимация в среде 3ds Max 2008
Чтобы закончить создание полной фазы движения мяча, необходимо выпол нить анимацию отскока. Это можно сделать при помощи копирования и ре дактирования построенных ранее ключей. Выделите в строке треков ключ, расположенный в нулевом кадре, и, удерживая нажатой клавишу 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.
СОВЕТ ___________________________________________________________________________ Для обнуления значения любого счетчика достаточно щелкнуть правой кнопкой мыши на стрелках, расположенных справа.
3.
Задайте другой вариант сглаживания функциональной кривой, установив для кнопки In (Вход) скачкообразное управление , а для кнопки Out (Вы
Анимация с использованием ключевых кадров
159
ход) — быстрое управление сглаживанием сегментов (рис. 4.9). сплайна Безье 4.
Проверьте выполненную анимацию, запустив ее вос произведение в активном окне проекции при помощи . кнопки Play Animation (Воспроизвести анимацию)
При желании вы можете самостоятельно подкорректиро вать контрольные точки модификатора FFD 2×2×2 (Произволь ная деформация 2×2×2) после отскока мяча, усилив анима ционный эффект. Для этого в 30 кадре анимации выделите нижний ряд контрольных точек и масштабируйте их на 80 %. Выполнив эти действия, не забудьте внести соответствую щие изменения в предыдущий и последующий кадры.
Рис. 4.9. Окно Sphere01: Z Position (Сфера01: положение по оси Z) с параметрами ключа в 24 кадре анимации
Таким образом, обозначив начальное и конечное положения объекта в простран стве, создав ключи анимации для сферы, а также ключи для положения контрольных точек контейнера деформации, мы построили простую анимацию. Создавать и редактировать ключи анимации можно не только автоматически, ис пользуя кнопку Auto Key (Автоключ), но и при помощи окна 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.
Video Post (Видеомонтаж) — позволяет управлять анимированными парамет рами модуля Video Post (Видеомонтаж).
160
Глава 4. Анимация в среде 3ds Max 2008
Рис. 4.10. Окно Track View — Dope Sheet (Просмотр треков — таблица структуры)
Global Tracks (Общие треки) — треки этой ветви позволяют задавать парамет ры, общие для объектов сцены.
Biped (Двуногий) — дает возможность настраивать ключевые кадры, относя щиеся к двуногому существу, редактировать следы двуногого и уточнять пе риоды свободного положения.
Anim Layer Control Manager (Управление анимированными слоями) — ветвь, поз воляющая управлять анимированными слоями, добавляемыми поверх ориги нальной анимации.
Environment (Внешняя среда) — ветвь с элементами анимации, ассоциирован ными с внешней средой.
Render Effects (Эффекты визуализации) — содержит треки для эффектов, добав ленных в сцену при помощи команды RenderingEffects (ВизуализацияЭф фекты). После добавления эффектов визуализации можно использовать данные треки для анимации таких параметров, как цвет или размер области свечения.
Render Elements (Визуализация элементов) — показывает то, какие дополни тельные элементы выбраны с использованием вкладки Render Elements (Визу ализация элементов) окна Render Scene (Визуализация сцены).
Renderer (Визуализатор) — позволяет анимировать параметры в настройках визуализатора. Например, вы можете анимировать параметр сглаживания тек стуры.
Анимация с использованием ключевых кадров
161
Global Shadow Parameters (Общие параметры теней) — содержит параметры, об щие для источников света, отбрасывающих тени.
Scene Materials (Материалы сцены) — включает в себя параметры всех матери алов, используемых в сцене.
Medit Materials (Материалы редактора) — содержит параметры 24 материалов, представленных в окне редактора материалов.
Objects (Объекты) — включает в себя сцены и их анимируемые параметры. Данная ветвь показывает иерархию связей, подобно окну Select Objects (Выбор объектов).
В верхней части окна Track View (Просмотр треков) располагаются панель инстру ментов с кнопками управления и настройки ключей анимации. В зависимости от режима отображения на панели могут размещаться различные наборы кнопок. Общими для всех режимов являются следующие кнопки. Filters (Фильтры) — открывает одноименное окно для выбора объектов, кото рые будут отображаться в окне просмотра треков. Move Keys (Переместить ключи) — перемещает выбранный ключ (или ключи) во времени. Если передвигать ключ с нажатой клавишей Shift, то он будет ско пирован. Slide Keys (Переместить ключи) — перемещает во времени выбранные ключи, а также ключи, которые расположены со стороны направления смещения, то есть при этом сохраняются расстояния между ключами. Add Keys (Добавить ключи) — добавляет ключи анимации к любому треку. Scale Keys (Масштабировать ключи) — пропорционально масштабирует время, относящееся к выбранным ключам анимации относительно текущего кадра анимации. Lock Selection (Блокировать ключи) — блокирует выбранные ключи для по следующей работы с выделением. Аналогично действию клавиши Ïðîáåë для объектов сцены. Snap Frames (Привязать к кадру) — в процессе редактирования треков привя зывает ключи анимации к отдельным кадрам. Show Keyable Icons (Показать анимацию значком) — в окне иерархического списка отмечает анимированные параметры значком с изображением ключа. В нижней части окна диалога появились три новые кнопки, относящиеся к выбо ру объектов для отображения. Filter — Selected Tracks Toggle (Фильтр — переключатель выделенных треков) — позволяет отображать только те пункты иерархического списка, которые пе ред нажатием данной кнопки были выделены. Filter — Selected Objects Toggle (Фильтр — переключатель выделенных объек тов) — показывает только те пункты иерархического списка, которые относят ся к выделенным объектам сцены. Filter — Animated Tracks Toggle (Фильтр — переключатель анимированных тре ков) — отображаются только те треки, которые содержат анимацию.
162
Глава 4. Анимация в среде 3ds Max 2008
Дополнительными кнопками режима Dope Sheet (Таблица структуры) являются следующие. Edit Keys (Редактировать ключи) — включает режим редактирования ключей с использованием числовых значений или положения этих ключей на шкале времени. Edit Ranges (Редактировать диапазоны) — активизирует режим правки диапа зонов, позволяющий быстрое редактирование диапазона действия, который ограничен белыми маркерами. Select Time (Выделить временной диапазон) — включает режим выделения вре менного сегмента на текущем треке. Delete Time (Удалить временной диапазон) — удаляет выделенный временной диапазон и все ключи, относящиеся к нему. Reverse Time (Обратить время) — изменяет порядок следования выделенных ключей на противоположный. Scale Time (Масштабировать временной диапазон) — позволяет пропорцио нально масштабировать выделенный временной диапазон. Insert Time (Вставить временной диапазон) — дает возможность вставить вре менной интервал в текущий трек. Cut Time (Вырезать диапазон) — вырезает из текущего трека временной диапа зон и помещает его в буфер обмена. Временной диапазон и все ключи, находя щиеся внутри него, удаляются из текущего трека. Copy Time (Копировать диапазон) — копирует выделенный диапазон текущего трека в буфер обмена для последующей вставки в текущий или любой другой трек анимации. Paste Time (Вставить диапазон) — позволяет вставлять вырезанный или скопи рованный диапазон в другое место текущего трека или в другой трек. Modify Subtree (Редактировать поддерево) — включает режим одновременного редактирования объекта сцены и всех связанных с ним элементов, которые расположены на более низких уровнях иерархического списка. Modify Child Keys (Редактировать дочерние ключи) — аналогична Modify Subtree (Редактировать поддерево), с той разницей, что редактирование распростра няется только на элементы сцены, связанные с выделенным объектом. Рассмотрим дополнительные кнопки окна Curve Editor (Редактор кривых) (рис. 4.11). Scale Values (Масштабировать значения) — включает режим изменения значе ний выделенных ключей без изменения их положения на временной шкале. Draw Curves (Рисовать кривые) — позволяет рисовать новые или редактировать построенные ранее кривые анимации. Reduce Keys (Уменьшить количество ключей) — позволяет уменьшить количе ство ключей в выделенном сегменте, по возможности сохраняя характер ани мации. Чаще всего используется после применения инструмента Draw Curves (Рисовать кривые) для оптимизации кривой.
Анимация с использованием ключевых кадров
163
Рис. 4.11. Окно Track View — Curve Editor (Просмотр треков — редактор кривых)
Set Tangents to Auto (Автоматическая установка касательных) — автомати чески устанавливает касательные векторы к функциональной кривой для вы деленных ключей анимации. Set Tangents to Custom (Выборочная установка касательных) — включает режим ручной правки касательных для выбранных ключей. При этом кнопка Show Tangents (Показать касательные) должна быть активной. Set Tangents to Fast (Установить быстрое управление) — создает ускорение в райо не выделенного ключа анимации. В зависимости от выбранного режима уско рение может быть установлено до, после или на входе и выходе ключевого кадра. Set Tangents to Slow (Установить медленное управление) — создает замедление в районе выделенного ключа анимации. В зависимости от выбранного режи ма замедление может быть установлено до, после или на входе и выходе клю чевого кадра. Set Tangents to Step (Установить скачкообразное управление) — создает скач кообразное изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима может быть установлено до, после или на входе и выходе ключевого кадра. Применяется для создания по стоянного значения анимации от одного кадра до другого. Set Tangents to Linear (Установить линейное управление) — создает линейное (равномерное) изменение функциональной кривой в районе выделенного ключа анимации. В зависимости от выбранного режима может быть установ лено до, после или на входе и выходе ключевого кадра. Set Tangents to Smooth (Установить сглаженное управление) — создает сглажен ное изменение функциональной кривой в районе выделенного ключа анима ции. В зависимости от выбранного режима замедление может быть установле но до, после или на входе и выходе ключевого кадра. Чаще всего применяется при создании дискретного движения. Parameter Curve Out-of-Range Types (Типы экстраполяции параметрических кри вых) — используется для задания повторения анимации, созданной при помощи
164
Глава 4. Анимация в среде 3ds Max 2008
ключевых кадров, за пределами диапазона этих ключей. Щелчок на этой кноп ке вызывает окно Param Curve Out-of-Range Types (Типы экстраполяции пара метрических кривых), показанное на рис. 4.12. Оно предоставляет следующие варианты экстраполяции параметрических кривых.
Рис. 4.12. Окно Param Curve OutBofBRange Types (Типы экстраполяции параметрических кривых)
•
Constant (Постоянный) — устанавливает постоянные значения анимации до начала или после завершения функциональной кривой. Применяется, если не нужно анимировать эффект до первого ключа или за пределами диапазона ключевых кадров. Используется по умолчанию.
•
Cycle (Циклический) — включает повторение анимации в том виде, как она задана функциональной кривой.
•
Loop (Периодический) — также задает повторение анимации, но, в отличие от предыдущего варианта, используется интерполяция в начале и конце функциональной кривой для получения сглаженного параметра.
•
Ping Pong (Зеркальный повтор) — попеременное повторение анимации в пря мой и обратной последовательности.
•
Linear (Линейный) — продлевает значения анимации в начале и конце функ циональной кривой с использованием касательной к кривой в первом и по следнем ключах анимации.
•
Relative Repeat (Относительный повтор) — повторяет анимацию, заданную функциональной кривой. При этом каждый раз эта кривая смещается на величину значения последнего ключа.
Show All Tangents (Показать все касательные) — включает отображение во всех ключевых кадрах касательных, определяющих форму функциональной кри вой. Show Tangents (Показать касательные) — включает отображение касательных только в выделенных ключевых кадрах. Lock Tangents (Блокировать касательные) — используется для одновременной манипуляции касательными всех выделенных ключей анимации. Show Biped Position Curves (Показать положение кривой двуногого) — отобража ет положение кривых анимации выделенного объекта Biped (Двуногий). Show Biped Rotation Curves (Показать поворот кривой двуногого) — отображает поворот кривых анимации выделенного объекта Biped (Двуногий).
Анимация с использованием ключевых кадров
165
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).
Рис. 4.13. Окно диалога Filters (Фильтры)
3.
В области Show Only (Показывать только) окна Filters (Фильтры) установи те флажок Animated Tracks (Анимированные треки), снимите все остальные
166
Глава 4. Анимация в среде 3ds Max 2008
и нажмите кнопку OK. В результате выполненных действий в окне иерархи ческого списка останутся только анимированные элементы. 4.
На панели инструментов окна Track View — Curve Editor (Просмотр треков — ре дактор кривых) щелкните на кнопке Show Keyable Icons (Показать анимацию значком) . В результате в области иерархического списка все анимирован ные параметры будут отмечены значком с изображением ключа.
5.
В окне дерева иерархии щелкните на плюсике, расположенном слева от объек тов, для раскрытия всего списка и выберите из него все анимированные эле менты (рис. 4.14).
Рис. 4.14. Окно Track View — Curve Editor (Просмотр треков — редактор кривых) с выбранными анимированными элементами
6.
Щелкните на кнопке Parameter Out-of-Range Curves Types (Типы экстраполяции параметрических кривых) .
7.
В появившемся окне выбора варианта экстраполяции параметрических кри вых щелкните на кнопке со стрелкой, направленной вправо, которая располо жена под значком Cycle (Циклический) (рис. 4.15).
8.
Щелкните на кнопке OK для подтверждения выполненных изменений.
Рис. 4.15. Окно Param Curves OutBofBRange Types (Типы экстраполяции параметрических кривых) с заданной циклической интерполяцией
Использование контроллеров и выражений
167
После выполнения вышеописанных действий справа от функциональной кривой в области редактирования появится пунктирная линия, повторяющая форму этой кривой. Это означает, что выполненная анимация будет непрерывно повторяться. Если сейчас запустить воспроизведение анимации в одном из окон проекций, то можно увидеть, что после одного цикла анимации мяч больше не останавливает ся, а продолжает двигаться.
Использование контроллеров и выражений Каждый раз, когда вы анимируете объекты сцены, программа 3ds Max сохраняет параметры анимации в контроллерах. Контроллерами называются элементы, хранящие значения анимации и управляющие интерполяцией от одного значе ния анимации к другому. Существуют две категории контроллеров.
Базирующиеся на ключах — контроллеры, основанные на ключах анима ции. Такие контроллеры воспринимают в качестве ввода значений данные из ключевых кадров, а затем рассчитывают интерполированные значения между ключами анимации. Для этих контроллеров является характерным то, что кривая функции всегда проходит через ключи анимации. Контроллеры могут оказывать влияние на интерполяцию между ключами, но не на сами ключи. Контроллеры, описывающие трансформации на объектном уровне, можно также редактировать в свитке Key Info (Справка о ключах) вкладки Motion (Движение) командной панели.
Параметрические — рассчитывают анимацию на основе уравнения, реализуе мого контроллером, и основываясь на значениях, которые указаны пользова телем. К параметрическим можно отнести контроллеры, ограничивающие движения объектов в пространстве (Constraints (Ограничения)). При помощи контроллеровограничителей можно заставить объект следовать по пути или оставаться повернутым к другому объекту.
Программа 3ds Max поддерживает большое количество контроллеров различных типов. Контроллеры одного типа могут иметь несколько разновидностей. Кон троллеры можно условно классифицировать по типу возвращаемого ими значе ния, при этом тип данных контроллера должен соответствовать типу данных па раметра объекта. Например, контроллер типа данных Position (Положение) нельзя использовать для параметра поворота или масштаба объекта. Рассмотрим семь типов данных контроллера.
Transform Controller (Контроллер преобразования) — управляет трансформаци ями перемещения, поворота и масштаба.
Position Controller (Контроллер положения) — влияет на положение объекта, позицию габаритного контейнера модификатора или его центра.
Rotation Controller (Контроллер поворота) — управляет преобразованием пово рота объекта или габаритного контейнера модификатора.
Scale Controller (Контроллер масштаба) — влияет на преобразование масштаба объекта или габаритного контейнера модификатора.
168
Глава 4. Анимация в среде 3ds Max 2008
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 (Трехкомпонентный кон троллер).
Bezier (Управление по Безье) — один из самых универсальных контроллеров, доступных в 3ds Max. Он выполняет интерполяцию между ключами анима ции, регулируя изменения кривой, проходящей через ключевые точки. Кон троллер Bezier (Управление по Безье) используется по умолчанию для боль шинства параметров. Его рекомендуется применять, когда необходимо иметь полный контроль над интерполяцией функциональной кривой в промежутках между ключами анимации.
Color RGB (Цвет RGB) — разделяет составляющую цвета RGB на три независи мых трека. Этот контроллер можно применять для анимации цветовых состав ляющих материалов либо других компонентов, использующих цвет. После разделения по умолчанию каждому треку назначается контроллер Bezier Float (Управление по Безье с плавающей точкой).
Euler XYZ Rotation (XYZповорот по Эйлеру) — составной контроллер, объеди няющий отдельные контроллеры, которые имеют значение с плавающей точкой и описывают поворот относительно одной из осей (X, Y или Z). Использова ние данного контроллера не дает такого сглаженного результата, как при менение TCB Rotation (TCBповорот), который использует для управления вращением кватернионовскую математику. Однако, в отличие от последне го, Euler XYZ Rotation (XYZповорот по Эйлеру) позволяет редактировать функ циональные кривые.
169
Использование контроллеров и выражений
Expression (Выражение) — это контроллер по алгоритмическому выражению. Он строит функциональную кривую на основе математических выражений, заданных пользователем в окне Expression Controller (Контроллер управления по алгоритмическому выражению) (рис. 4.16). При помощи данного контрол лера можно получать данные из других контроллеров, оперировать встроен ными функциями и создавать собственные переменные. Контроллер Expression (Выражение) можно применять практически ко всем параметрам 3ds Max, для которых есть возможность анимации.
Рис. 4.16. Окно диалога Expression Controller (Контроллер управления по алгоритмическому выражению)
Linear (Линейное управление) — контроллер линейного управления. Строит функциональную кривую между двумя соседними ключами по прямой линии. Этот контроллер не имеет настроек и использует для интерполяции значения ключевых кадров. Его следует применять, когда необходимо передать движе ние механизмов или изменение цвета.
Noise (Шум) — генерирует хаотичную анимацию в пределах диапазона кад ров. Является параметрическим и не ис пользует ключи анимации. Как только вы назначаете анимированному пара метру этот контроллер, он сразу при меняется ко всему диапазону текущего временного сегмента. Данный контрол лер можно использовать для создания неравномерного движения, пульсиру ющего фонтана, вибрации объектов и т. п., а также применительно к другим контроллерам для изменения функ циональной кривой с учетом среднего значения (рис. 4.17).
Рис. 4.17. Окно диалога контроллера Noise (Шум)
170
Глава 4. Анимация в среде 3ds Max 2008
List (Управление по списку) — объединяет несколько самостоятельных кон троллеров для создания общей анимации. Контроллеры, добавленные в спи сок, выполняются последовательно и по умолчанию имеют вес (значение параметра Weight (Вес)), равный 100. Изменение этого значения влияет на удельный вес данного контроллера в общей анимации. Применяется для соз дания сложных анимаций.
Script (Управление по коду) — подобно контроллеру Expression (Выражение), основанному на алгоритмическом выражении, открывает окно для ввода кода на языке MAXScript с последующим расчетом значения и передачи его кон троллеру. С помощью контроллера Script (Управление по коду) можно аними ровать практически все параметры объекта, даже те, которые не анимируются контроллером Expression (Выражение) (например, вершины полигонального объекта) (рис. 4.18).
Рис. 4.18. Окно диалога Script Controller (Контроллер управления по коду)
Path Constraint (Ограничение по пути) — ограничивает движение объекта по пути, которым является указанный сплайн или усредненное расстояние меж ду несколькими сплайнами. В качестве пути можно использовать сплайн лю бого типа, при этом сам сплайн может иметь собственную анимацию. Данный контроллер применяется для анимации объектов по сложным траекториям (например, движение автомобиля по дороге).
Position Constraint (Ограничение по положению) — изменяет положение исход ного объекта (то есть объекта, к которому применен контроллер) относительно целевого. При этом значение параметра Weight (Вес), равное по умолчанию 100, показывает, что исходный объект займет положение целевого, а значение 0 — то, что исходный объект останется на месте. Все значения, отличные от 0, заста вят объект переместиться в положение, которое равно процентному отноше нию расстояния между исходным и целевым объектами.
171
Использование контроллеров и выражений
Link Constrain (Ограничение по связи) — применяется для анимации передачи свя зи от одного целевого объекта другому. Например, при использовании контрол лера Link Constrain (Ограничение по связи) анимированный персонаж может взять рукой чемодан и переместить его в дру гую руку.
LookAt Constraint (Ограничение по линии взгляда) — используется для ориента ции одного объекта относительно друго го с таким расчетом, чтобы исходный объект постоянно смотрел на целевой. Действие данного контроллера подобно камере Target Camera (Нацеленная каме ра), когда она поворачивается вслед за перемещаемой целью.
Итак, мы рассмотрели основные контролле ры анимации, применяемые в 3ds Max. Более подробную информацию о них можно найти в справочной литературе или файле справки приложения.
Рис. 4.19. Окно диалога Time Configuration (Настройка временных интервалов)
Продолжим анимировать мяч. Используя контроллер Expression (Выражение), создадим для него поступательное движение и постепенное затухание отскоков. 1.
Продолжите выполнение собственной анимации или загрузите с прилагаемого DVD файл ball01.max, который находится в следующей папке: Examples\ Глава 04.
2.
Для увеличения общего времени анимации щелкните на кнопке Time Configuration (Настройка временных интервалов) и в области Animation (Анимация) от крывшегося окна задайте параметру End Time (Время окончания) значение, равное 180 (рис. 4.19).
3.
В одном из окон проекций выделите мяч — объект Sphere01.
4.
Перейдите на вкладку Motion (Движение) командной панели и в свитке Assign Controller (Назначить контрол лер) выберите строку с именем Position: Position XYZ (Положение: положение по XYZ) (рис. 4.20).
5.
В свитке Assign Controller (Назначить контроллер) щелк ните на одноименной кнопке , в результате чего откро ется окно диалога Assign Position Controller (Назначить
Рис. 4.20. Свиток Assign Controller (Назначить контроллер) объекта Sphere01
172
Глава 4. Анимация в среде 3ds Max 2008
контроллер положения). В этом окне выберите из списка контроллер Position List (Контроллер положе ния по списку). После применения этого контроллера в списке контроллеров появится строка Available (До ступный) (рис. 4.21), позволяющая добавлять к спис ку новые контроллеры.
Рис. 4.21. Свиток Assign Controller (Назначить контроллер) после назначения контроллера Position List (Контроллер положения по списку)
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 (ZBположение: управление по Безье с плавающей точкой) в окне Track View Pick (Выбрать трек)
Анимация частиц
173
9.
В поле Expression (Выражение) окна Expression Controller (Контроллер управле ния по алгоритмическому выражению) вместо [0, 0, 0] наберите выражение [F, 0, -Zpoz/180*F], где F — текущий кадр (функция по умолчанию), 180 — общее количество кадров, а Zpoz — созданная нами переменная.
10.
Щелкните на кнопке Evaluate (Оценить) для расчета созданного выражения.
11.
Запустите воспроизведение созданной анимации в активном окне проекции, нажав кнопку 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 (Значок источника). Он является объектом, который порождает частицы. Созданные системы частиц существуют в сцене в динамике, меняясь во времени. Их поведение зависит ис ключительно от значения параметров и внешних сил (если они применяются). Лучший способ научиться работать с частицами — экспериментировать с различ ными значениями их параметров.
174
Глава 4. Анимация в среде 3ds Max 2008
Программа 3ds Max содержит семь различных типов систем частиц.
Particle Flow Source (Источник потока частиц) — частицы, которые можно опре делить с помощью окна Particle View (Окно системы частиц) и контролируемые при помощи действий (Actions) и событий (Events).
Spray (Брызги) — система частиц, имитирующая капли воды, брызги и т. д. Эти капли можно представить в виде Drops (Капли), Dots (Точки) или Ticks (Чер точки). Частицы движутся по прямой линии от излучателя сразу же после соз дания.
Snow (Снег) — создает эффект падающего снега или конфетти. Эта система частиц подобна Spray (Брызги), но имеет дополнительные параметры для на стройки поведения снежинок при падении. Кроме представления в виде точек и черточек, частицы системы Snow (Снег) можно визуализировать в виде сне жинок (Flakes (Снежинки)).
Blizzard (Метель) — усовершенствованная модель частиц Snow (Снег), которая имеет дополнительные параметры и может использовать при визуализации форму различных объектов (треугольников, сфер и т. д.).
PArray (Массив частиц) — дает возможность применять два типа поведения частиц: •
использование объектов сцены в качестве источников для излучаемых частиц;
•
создание усовершенствованных эффектов имитации взрыва.
PCloud (Облако частиц) — создает облако частиц, заключенных в габаритный контейнер, в качестве которого могут выступать другие объекты сцены. Дан ную систему частиц можно применять для имитации стаи птиц, косяков рыб, звездных полей, группы животных и т. д.
Super Spray (Супербрызги) — усовершенствованный вариант частиц Spray (Брыз ги), имеющий множество дополнительных параметров. В 3ds Max системы частиц можно создавать тремя спо собами:
Рис. 4.23. Кнопки создания систем частиц на командной панели
с помощью подменю команды главного меню Create Particles (СозданиеЧастицы);
используя группу Particle Systems (Системы частиц) категории Geometry (Геометрия) вкладки Create (Соз дание) командной панели (рис. 4.23);
при помощи окна Particle View (Окно системы час тиц), которое вызывается командой главного меню Graph EditorsParticle View (Графические редакто рыОкно системы частиц).
При создании системы частиц, не использующих га баритный контейнер (таких как Spray (Брызги), Snow (Снег), Blizzard (Метель)), прежде всего необходимо
Анимация частиц
175
определить положение в пространстве точки генерации частиц, называемой эмит тером, и направление, в котором они будут испускаться. Эмиттер представляет со бой плоскость с перпендикулярным вектором, расположенным в середине этой плоскости (рис. 4.24). Именно направление вектора указывает сторону, в которую будут испускаться частицы.
Рис. 4.24. Эмиттер системы частиц Snow (Снег)
Поскольку системы частиц основаны на анимации во времени, то после построе ния эмиттера в нулевом кадре вы можете не увидеть сгенерированных частиц, так как по умолчанию их излучение начинается именно в нулевом кадре. Чаще всего достаточно передвинуть ползунок таймера анимации вправо, чтобы уви деть поток излучаемых частиц. Аналогичным образом в окнах проекций представлены частицы Particle Flow Source (Источник потока частиц), Super Spray (Супербрызги). Разница лишь в том, что эмиттеры этих объектов имеют форму, отличную от прямоугольника, но, как и рас смотренные выше, имеют вектор, указывающий направление излучения частиц. Несколько иначе отображаются в окнах проекций частицы PArray (Массив частиц) и PCloud (Облако частиц). Их эмиттер представлен в виде габаритного контейне ра. Для частиц PArray (Массив частиц) это куб с возможностью выбора объектов сцены в качестве эмиттера. Для PCloud (Облако частиц), кроме объектов сцены, можно использовать параллелепипед, сферу или цилиндр (рис. 4.25). Помимо одиночных, можно создавать сложные системы частиц с использовани ем операторов и тестирования событий по различным признакам. Для создания сложных систем следует использовать окно Particle View (Окно системы частиц) (рис. 4.26).
176
Глава 4. Анимация в среде 3ds Max 2008
Рис. 4.25. Габаритный контейнер частиц PCloud (Облако частиц) в виде параллелепипеда
Рис. 4.26. Окно Particle View (Окно системы частиц)
Анимация частиц
177
Окно Particle View (Окно системы частиц) имеет следующие элементы управления.
Меню — предоставляет доступ к командам редактирования, выделения, на стройкам отображения и анализа системы частиц.
Окно событий — отображает диаграмму событий с узлами и функциями, из меняя которую, можно редактировать систему частиц. Узлы содержат отдель ные события, которые можно связать друг с другом для управления потоком частиц.
Панель параметров — содержит свитки параметров любых выделенных объектов.
Список операторов — содержит все возможные события, которые могут при меняться с системой частиц. Содержимое этого списка можно разделить на три категории: •
операторы — основные элементы системы частиц, позволяющие организо вывать события (Events), которые описывают поведение частиц в опреде ленный период времени. В окне Particle View (Окно системы частиц) они представлены квадратными значками с пиктограммами на синем фоне. В эту же категорию попадают два зеленых круглых значка, соответствую щих времени жизни частиц;
•
тестировщики — функции, тестирующие систему частиц на соответствие какомулибо заданному условию и позволяющие при выполнении этого условия направить ход выполнения операторов к другому событию. В окне диалога эти элементы представлены ромбовидными значками с пиктограм мами на желтом фоне;
•
потоки частиц — категория, содержащая два оператора, предназначенных для создания начального события системы частиц. Этими операторами являются Empty Flow (Пустой поток) и Standard Flow (Типовой поток), име ющие значки в виде двух связанных между собой белых прямоугольников.
Панель описания — содержит краткую информацию о событии, выделенном в окне списка операторов.
Инструменты отображения — предназначены для навигации в окне Particle View (Окно системы частиц).
ПРИМЕЧАНИЕ ___________________________________________________________________ Практическое использование окна диалога Particle View (Окно системы частиц) опиB сывается в разд. «Текст, уносимый порывами ветра» гл. 8.
Глава 5
Основы визуализации • Инструменты визуализации • Параметры визуализации • Виртуальный буфер кадров • Использование модуля RAM Player (RAMAпроигрыватель) • Окружение и атмосферные эффекты • Модуль Video Post (Видеомонтаж)
Инструменты визуализации
179
Позади долгие часы кропотливой работы, связанной с моделированием, текстури рованием, анимацией, постановкой света и камер. Дальше — финальная визуали зация. Конечно же, пробная (тестовая) визуализация начинается значительно раньше, но только после установки всех параметров и настроек можно увидеть все свойства материала, эффекты внешней среды, глубину резкости, размытие движе ния и т. д. В состав 3ds Max входит визуализатор Default Scanline Renderer, оптимизирован ный для быстрых расчетов, причем, используя определенные настройки оптими зации, скорость просчетов можно существенно увеличить. Знание настроек, нахо дящихся в окне диалога Render Scene (Визуализация сцены), позволяет экономить время и нервы.
Инструменты визуализации Доступ к визуализации в 3ds Max можно получить с помощью меню Rendering (Ви зуализация) либо основной панели инструментов, в состав которой входят группа кнопок и раскрывающийся список, позволяющие задавать режимы визуализации (рис. 5.1).
Рис. 5.1. Кнопки и раскрывающийся список на панели инструментов, предназначенные для управления визуализацией
Рассмотрим назначение каждого инструмента. Render Scene Dialog (Диалоговое окно визуализации сцены) — основная кноп ка настройки параметров визуализации, предназначенная для вызова окна Render Scene (Визуализация сцены). Данное окно позволяет настроить все ба зовые параметры визуализации для активного окна проекции (если не указан другой вариант). Render Type (Тип визуализации) — раскрывающийся список основных вариантов визуализации, содержащий следующие типы. •
View (Проекция) — визуализация активного окна проекции.
•
Selected (Выделенные объекты) — визуализируются только выбранные объекты в активном окне проекции. Данный вариант подходит для тесто вой визуализации элементов сложных сцен, требующих значительных вре менных затрат.
•
Region (Область) — позволяет визуализировать только заданную прямо угольную область, ускоряя таким образом процесс настройки общих пара метров. Установка границ области производится в активном окне проекции при помощи маркеров. Визуализируемое изображение не масштабируется, оставляя поля, выходящие за пределы выделенной области, заполненны ми цветом фона.
180
Глава 5. Основы визуализации
•
Crop (Обрезка) — режим, аналогичный предыдущему, но области, выходя щие за пределы рамки, обрезаются до выбранного размера.
•
Blowup (Увеличение) — режим, аналогичный Region (Область), но при ви зуализации увеличивает выбранную область до полного окна.
•
Box Selected (Габаритный контейнер выделения) — позволяет выполнить визуализацию по габаритным контейнерам выделенных объектов. При этом вызывается окно диалога, в котором можно указать пропорции окна вывода изображения.
•
Region Selected (Область выделения) — режим, позволяющий визуализиро вать область, которая ограничена габаритным контейнером выделенных объектов, без изменения общих размеров визуализации.
•
Crop Selected (Обрезка выделения) — от режима Region Selected (Область выделения) отличается лишь тем, что области, выходящие за пределы кон тейнера визуализации, обрезаются.
Quick Render (Production) (Быстрая визуализация (итоговая)) — позволяет ви зуализировать сцену с установками, заданными по умолчанию либо ранее из мененными в окне Render Scene (Визуализация сцены). Quick Render (ActiveShade) (Быстрая визуализация (активное тонирование)) — режим просчета сцены, при котором интерактивно происходит обновление окна диалога ActiveShade (Активное тонирование). Например, если применя ется данный режим, то можно сразу увидеть изменения параметров источни ка света, вызванные изменением значения Multiplier (Усилитель). Использова ние данного режима требует наличия достаточных аппаратных средств.
Параметры визуализации Для настройки всех базовых параметров визуализации служит окно Render Scene (Визуализация сцены) (рис. 5.2), вызываемое командой меню RenderingRender (ВизуализацияВизуализировать) либо с помощью кнопки Render Scene Dialog (Диалоговое окно визуализации сцены), расположенной на главной панели ин струментов. Окно Render Scene (Визуализация сцены) по умолчанию содержит пять вкладок для детальной настройки процесса визуализации.
Common (Общие) — настройка параметров, общих для различных визуализа торов, в том числе и для подключаемых (например, Brazil r/s или VRay).
Renderer (Визуализатор) — содержит настройки активного визуализатора (по умолчанию — Default Scanline Renderer).
Render Elements (Визуализация элементов) — позволяет визуализировать от дельные элементы изображения (например, тени от объектов, области бликов, диффузное рассеивание и т. д.) для их последующего использования или ре дактирования в программах растровой графики или компоузинга.
181
Параметры визуализации
Raytracer (Трассировка) — содер жит настройки трассировки лучей, общие для всех объектов сцены, ис пользующих трассируемые мате риалы или карты текстур (кроме настройки некоторых параметров, которые влияют на скорость и ка чество просчетов). Можно указать те объекты, которые не будут учи тываться в расчетах трассировки лучей.
Advanced Lighting (Улучшенное осве щение) — позволяет выбрать один из двух способов освещения сцены: •
Light Tracer (Трассировщик све та) — применяется для созда ния сглаженных теней и мягко го освещения сцены;
•
Radiosity (Диффузное отраже ние) — более правильное с физи ческой точки зрения освещение, позволяющее рассчитывать про хождение светового луча с уче том отражения от объектов сце ны, преломления в прозрачных средах и затухания с расстоя нием.
Рассмотрим более подробно основные настройки окна Render Scene (Визуали зация сцены).
Рис. 5.2. Окно Render Scene (Визуализация сцены)
Common Parameters (Общие параметры) Свиток Common Parameters (Общие параметры) вкладки Common (Общие) позволя ет настраивать общие параметры и режимы визуализации (рис. 5.3). Для настройки данного свитка выполните следующие действия. 1.
В области Time Output (Выходные настройки диапазона) установите переклю чатель в одно из четырех положений: •
Single (Единичный) — визуализируется текущий кадр;
•
Active Time Segment (Текущий промежуток времени) — полностью визуали зируется временной диапазон, отображаемый в строке треков;
•
Range (Диапазон) — позволяет визуализировать диапазон кадров, задавае мый в полях, расположенных справа;
182
Глава 5. Основы визуализации •
Frames (Кадры) — визуализирует ся список кадров, указанных через запятую, и (или) диапазон кад ров, заданных через дефис (на пример, 1, 5, 10–100 означает, что будут визуализироваться 1, 5 и с 10 по 100 кадры).
Затем укажите значения следующих параметров:
2.
•
Every Nth Frame (Каждый кадр под номером) — он позволяет задать интервал кадров визуализации, доступный в таких режимах: Active Time Segment (Текущий промежу ток времени) и Range (Диапазон) (по умолчанию просчитывается каждый кадр);
•
File Number Base (База номеров фай лов) — значения, используемые для формирования имен файлов визуализируемой последователь ности.
В области Output Size (Выходные на стройки размера) укажите параметры выходного изображения: •
Рис. 5.3. Свиток Common Parameters (Общие параметры) вкладки Common (Общие) окна Render Scene (Визуализация сцены)
3.
из раскрывающегося списка в верх ней части области выберите один из вариантов размеров кино, фото и видеокадров или вариант Custom (Пользовательская), позволяю щий задавать значения Aperture Width(mm) (Ширина апертуры), Image Aspect (Пропорции изобра жения) и Pixel Aspect (Пропорции пиксела);
•
задайте значения ширины и высоты изображения визуализации, исполь зуя параметры Width (Ширина) и Height (Высота);
•
с помощью четырех кнопок с предустановленными значениями ширины и высоты в пикселах можно быстро задать соответствующие значения для визуализации.
В области Options (Режимы) установите или снимите следующие флажки: •
Atmospherics (Атмосферные эффекты) — включение/выключение режима визуализации эффектов внешней среды (туман, объемное освещение и го рение);
Параметры визуализации
4.
183
•
Effects (Эффекты) — включение/выключение режима визуализации эф фектов (например, Blur (Размытие));
•
Displacement (Смещение) — включение/выключение режима визуализации карт смещения;
•
Video Color Check (Контроль цветности) — включение/выключение режима контроля соответствия цветов визуализируемого изображения стандартам телевещания PAL и NTSC;
•
Render to Fields (Визуализировать полукадры) — режим визуализации изо бражения в виде четных или нечетных строк, необходимых для воспроиз ведения анимации на экране телевизора;
•
Render Hidden Geometry (Визуализировать скрытые объекты) — включение/ выключение режима визуализации объектов сцены, невидимых в окнах проекций;
•
Area Lights/Shadows as Points (Площадное освещение/тени в виде точеч ных) — режим, при котором все площадное освещение и тени визуализи руются так, как если бы это были точечные источники света (позволяет значительно ускорить время просчета визуализации во время отладки);
•
Force 2-Sided (Отображать обе стороны) — включение/выключение режи ма визуализации обеих сторон (увеличивает время расчетов; может пона добиться при визуализации импортированных из других программ объек тов с хаотичным расположением нормалей);
•
Super Black (Сверхчерный) — включение/выключение режима ограниче ния уровня черного цвета (используется для приложений видеомонтажа).
Настройте параметры области Advanced Lighting (Улучшенное освещение): •
Use Advanced Lighting (Использовать улучшенное освещение) — включе ние/выключение режима расчетов трассировки лучей и диффузного отра жения;
•
Compute Advanced Lighting when Required (При необходимости рассчитать улучшенное освещение) — включение/выключение режима расчетов диф фузного отражения во время визуализации (обычно при визуализации последовательности рассчитывается диффузное отражение только для первого кадра).
5.
В области Bitmap Proxies (Замещение растровых изображений) определите, бу дут ли использоваться для визуализации карты максимального разрешения или проксиизображения. Кнопка Setup (Настройки) вызывает окно Global Settings and Defaults for Bitmap Proxies (Глобальные параметры и умолчания для проксиизображений), которое позволяет создавать и использовать прокси изображения, включенные в материалы.
6.
В области Render Output (Результат визуализации) установите параметры вы вода визуализации: •
Files (Файлы) — вызывает окно Render Output File (Результирующий файл визуализации) для ввода имени и выбора необходимого формата файла;
184
Глава 5. Основы визуализации
•
Save File (Сохранить файл) — сохраняет результаты визуализации в файле с указанным именем;
•
Devices (Устройства) — позволяет записать результат визуализации на внеш ний носитель (например, цифровой видеомагнитофон или ленточный на копитель);
•
Rendered Frame Window (Окно кадров визуализации) — кроме записи в файл или на внешний носитель, выводит результаты визуализации в одноимен ное окно;
•
Net Render (Сетевая визуализация) — включает режим просчета последова тельности кадров компьютерами, расположенными в локальной сети;
•
Skip Existing Images (Пропускать существующие изображения) — включает/ выключает режим пропуска визуализации ранее созданных изображений.
В 3ds Max 2008 есть возможность вместе с сохранением последовательности фай лов создавать Image File List (Список файлов изображений), позволяющий получить непосредственный доступ к этой последовательности. Для этого нужно установить флажок Put Image File List(s) in Output Path(s) (Поместить список файлов изображе ний в итоговый путь), установить переключатель, определяющий выходной фор мат списка, в нужное положение (Autodesk ME Image Sequence File (.imsq) или Legacy 3ds max Image File List (.ifl)) и нажать кнопку Create Now (Создать сейчас).
Default Scanline Renderer Свиток Default Scanline Renderer вкладки Renderer (Визуализатор) используется для настройки визуализатора, встроенного в 3ds Max (рис. 5.4). Для настройки общих параметров сканирующего визуализатора предназначены следующие области.
Options (Режимы) содержит такие флажки: •
Mapping (Карты текстур) — включение/выключение режима визуализации материалов и текстур;
•
Shadows (Тени) — прорисовка теней от объектов сцены;
•
Enable SSE (Включить SSE) — использование SSEинструкции для ускоре ния расчетов;
•
AutoReflect/Refract and Mirrors (Автоотражение/преломление и зеркальное ото бражение) — просчет отражений в зеркальных и преломляющих материалах;
•
Force Wireframe (Каркасы объектов) — визуализация всех объектов в виде каркасов (значение параметра Wire Thickness (Толщина каркаса) указывает толщину линий в пикселах).
Antialiasing (Сглаживание) определяет параметры сглаживания: •
Antialiasing (Сглаживание) — сглаживание границ изображения;
•
Filter (Фильтр) — раскрывающийся список с 12 алгоритмами сглаживания текстур;
Параметры визуализации
•
Filter Maps (Фильтрация текстур ных карт) — фильтрация текстур ных карт (фильтрация улучшает отображение материалов, исполь зующих текстурные карты, но уве личивает время визуализации);
•
Filter Size (Размер фильтра) — поз воляет увеличить или уменьшить степень размытия растровых изо бражений.
185
Global SuperSampling (Глобальное сверх разрешение) содержит такие флажки: •
Disable all Samplers (Выключить все фильтры сглаживания) — выклю чение всех алгоритмов сглажива ния, присутствующих в настрой ках материалов и текстур;
•
Enable Global Supersampler (Вклю чить глобальное сверхразреше ние) — дает возможность вклю чить алгоритм сглаживания для всех материалов в сцене.
Object Motion Blur (Размытие объекта в движении) и Image Motion Blur (Раз мытие картинки в движении) позво ляют настроить параметры размытия объектов или изображения, характер ного для анимации движения:
Рис. 5.4. Свиток Default Scanline Renderer вкладки Renderer (Визуализатор) окна Render Scene (Визуализация сцены)
•
Apply (Применить) — визуализа ция размытия;
•
Duration (frames) (Длительность (кадров)) — интервал времени, в течение ко торого будет выполняться размытие (при значении, равном 1, размытие будет проходить от середины предыдущего кадра до середины следующего);
•
Samples (Выборка) — количество пикселов из состава копий, попадающих в итоговый кадр визуализации;
•
Duration Subdivisions (Количество копий в шлейфе) — количество копий размытого объекта в течение интервала размытия;
•
Transparency (Прозрачность) — включается при размытии объектов, имеющих прозрачность; увеличивает общее время визуализации, по умолчанию снят;
•
Apply To Environment Map (Применять к картам внешней среды) — режим, при котором размывается изображение фона.
Auto Reflect/Refract Maps (Карты автоотражения/преломления) содержит па раметр Rendering Iterations (Количество итераций визуализации), который
186
Глава 5. Основы визуализации
указывает кратность отражений одних объектов, использующих карты отра жения/преломления в других. Переключатель Color Range Limiting (Ограничение цветового диапазона) позволяет понизить цветовой диапазон ярких бликов на поверхности объектов с использо ванием одного из двух способов:
Clamp (Ограничить яркость) — интенсивность всех оттенков цвета будет огра ничена диапазоном от 0 до 1;
Scale (Масштабировать) — все три компонента цвета будут масштабироваться так, чтобы интенсивность максимального из компонентов оказалась равной 1;
Memory Management (Управление памятью) — область, содержащая переключа тель Conserve Memory (Сохранить память), позволяющий использовать мень шее количество оперативной памяти в ущерб времени визуализации.
Виртуальный буфер кадров После запуска визуализации на экране появится активное по умолчанию окно Rendered Frame Window (Окно кадров визуализации), отображающее процесс выво да изображения (рис. 5.5).
Рис. 5.5. Окно Rendered Frame Window (Окно кадров визуализации)
Панель инструментов, представленная в верхней части окна Rendered Frame Window (Окно кадров визуализации), служит для выполнения следующих задач: Save Bitmap (Сохранить растровое изображение) — сохраняет визуализирован ное изображение в файле; Copy Bitmap (Копировать растровое изображение) — копирует визуализированное изображение в буфер обмена Windows для последующей вставки его в програм му просмотра или редактирования растровой графики (например, Photoshop); Clone Rendered Frame Window (Копия окна визуализации) — создает копию окна визуализации (при этом вы можете выполнить новую визуализацию в основ ном окне и сравнить результат с предыдущим);
Использование модуля RAM Player (RAMBпроигрыватель)
187
Enable Red/Green/Blue Channel (Включить красный/зеленый/синий канал) — включает или выключает отображение красного, зеленого или синего канала цветности; Display Alpha Channel (Показать альфаканал) — задает отображение альфаканала; Monochrome (Монохромный) — включает отображение результата визуализа ции в оттенках серого; Clear (Очистить) — очищает окно визуализации. Программа 3ds Max позволяет отображать в окне Rendered Frame Window (Окно кадров визуализации) растровые изображения и последовательности кадров таких изображе ний. Для загрузки изображения в окно кадров визуализации выполните команду FileView Image File (ФайлПросмотр растрового изображения). При просмотре по следовательности кадров появляются дополнительные кнопки навигации по кадрам.
Использование модуля RAM Player (RAMAпроигрыватель) Модуль RAM Player (RAMпроигрыватель) (рис. 5.6) используется для загрузки в память компьютера отдельных кадров или последовательности кадров для по следующего их сравнения или просмотра в виде анимации с заданной частотой кад ров в секунду (fps). Его окно можно открыть, выполнив команду RenderingRAM Player (ВизуализацияRAMпроигрыватель).
Рис. 5.6. Окно модуля RAM Player (RAMBпроигрыватель)
Модуль RAM Player (RAMпроигрыватель) имеет два канала (Channel A (Канал A) и Channel B (Канал Б)) и позволяет загружать в эти каналы две различные после довательности растровых изображений, отдельные кадры или анимацию для их одновременного воспроизведения.
188
Глава 5. Основы визуализации
Щелчок кнопкой мыши в окне просмотра каналов с последующим перетаскивани ем позволяет установить и перемещать границу разделения двух каналов. В верхней части окна RAM Player (RAMпроигрыватель) находится панель инстру ментов с набором кнопок для управления окном проигрывателя: Open Channel (Открыть канал) — открывает стандартное окно выбора файла для загрузки в Channel A (Канал A) или Channel B (Канал Б); Open Last Rendered Image in Channel (Загрузить последнее визуализированное изображение в канал) — загружает последнее визуализированное изображе ние в выбранный канал; Close Channel (Закрыть канал) — выгружает изображение или анимацию из те кущего канала; Save Channel (Сохранить канал) — открывает окно диалога сохранения файла и позволяет сохранить как отдельные кадры и их последовательность, так и анимацию; Horizontal/Vertical Split Screen (Разделить экран по горизонтали/вертикали) — переключает два варианта совместного отображения каналов на горизонталь ное или вертикальное; Frame Rate Control (Контроль частоты кадров) — раскрывающийся список с вариантами возможной установки частоты смены кадров в секунду; Double Buffer (Двойной буфер) — синхронизирует отображение анимации в обо их каналах.
Окружение и атмосферные эффекты Использование Environment (Окружаю щая среда) и Effects (Эффекты) позво ляет создавать общее настроение, повы шая реалистичность сцены. Элементы управления атмосферой предлагают ши рокий набор эффектов, включая туман, дымку, огонь, дым и т. д. Окно диалога Environment and Effects (Окружающая среда и эффекты) позво ляет настраивать параметры отображе ния окружающей среды и дополнитель ных эффектов (рис. 5.7). Чтобы получить доступ к настройкам окружающей среды, выполните коман ду RenderingEnvironment (Визуализа цияОкружающая среда). В результате откроется окно Environment and Effects (Окружающая среда и эффекты) на вкладке Environment (Окружающая среда). Рассмотрим свитки настроек данного окна.
Рис. 5.7. Вкладка Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты)
189
Окружение и атмосферные эффекты
Common Parameters (Общие параметры) В свитке Common Parameters (Общие параметры) (см. рис. 5.7) вкладки Environment (Окружающая среда) задаются параметры отображения внешней среды. В облас ти Background (Фон) можно настроить следующие элементы.
Color (Цвет) — цвет фона окружающей среды.
Environment Map (Карта текстуры окружающей среды) — щелчок на кнопке с надписью None (Отсутствует) вызывает окно Material/Map Browser (Окно вы бора материалов и карт) для загрузки любой из доступных текстурных карт или материала в качестве фона изображения. Для последующего редактиро вания такой карты (материала) необходимо перетащить ее на образец мате риала в окне Material Editor (Редактор материалов), выбрав при этом Instance (Привязка) в качестве метода копирования.
Use Map (Использовать карту текстуры) — включает/выключает использова ние карты при визуализации.
Область Global Lighting (Глобальная освещенность) позволяет управлять парамет рами общего освещения сцены.
Tint (Оттенок) — образец цвета, устанавливающий оттенок света всех источ ников света сцены, кроме параметра Ambient (Цвет подсветки).
Level (Уровень) — параметр, изменяющий уровень силы света для всех источ ников света сцены, кроме Ambient (Цвет подсветки) (при значении, равном 1, сила света не меняется).
Ambient (Цвет подсветки) — образец цвета, которым будут равномерно окра шены объекты сцены.
Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции) Свиток Exposure Control (Контроль экспо зиции) позволяет изменять параметры об щей освещенности сцены за счет настройки выходных уровней и цветового диапазона так, как если бы использовалась настрой ка экспозиции фотоаппарата (рис. 5.8). С его помощью можно, например, освет лить слишком темные сцены без измене ния настройки источников света. Неболь шое окно предварительного просмотра позволяет увидеть все изменения, которые производятся при помощи параметров свитка Logarithmic Exposure Control Parameters (Параметры логарифмического кон троля экспозиции).
Рис. 5.8. Свитки Exposure Control (Контроль экспозиции) и Logarithmic Exposure Control Parameters (Параметры логарифмического контроля экспозиции)
190
Глава 5. Основы визуализации
Atmosphere (Атмосфера) Свиток Atmosphere (Атмосфера) (рис. 5.9) дает доступ к четырем типам атмосфер ных эффектов: Fire Effect (Эффект огня), Fog (Туман), Volume Fog (Объемный ту ман) и Volume Light (Объемный свет). Для выбора атмосферного эффекта и управления им при помощи настроек свитка Atmosphere (Атмосфера) выполните следующие действия.
Рис. 5.9. Свиток Atmosphere (Атмосфера)
1.
Щелкните на кнопке Add (Добавить).
2.
В открывшемся окне диалога Add Atmospheric Effect (Добавить атмосфер ный эффект) выберите из списка тип атмосферного эффекта и щелкните на кнопке OK для подтверждения выбо ра. В результате выбранный эффект добавится в список Effects (Эффек ты). При необходимости добавьте та ким же образом другие эффекты.
3.
Для удаления эффекта из списка Effects (Эффекты) выделите его и щелк ните на кнопке Delete (Удалить).
4.
Установка флажка Active (Активный) включает эффект в итоговую визуали зацию сцены.
5.
С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в спис ке. Конечный результат зависит от того, как расположены эффекты в списке, так как визуализация эффектов производится последовательно, начиная с верх него.
6.
Кнопка Merge (Присоединить) позволяет присоединить к текущей сцене эф фекты, подгружаемые из других сцен.
7.
Используя поле Name (Имя), можно переименовать любой эффект в списке.
Настройка атмосферных эффектов Атмосферные эффекты являются визуальными эффектами, позволяющими ими тировать такие природные явления, как дым, огонь, туман, облака, взрывы и т. п. Эффекты, примененные к сцене, становятся видимыми только после визуализа ции. Зона действия атмосферных эффектов может быть ограничена различными спо собами: ближней и дальней границами, границей светового луча, настройками па раметров. Чтобы ограничить действие эффектов Fire Effect (Эффект огня) и Volume Fog (Объемный туман), применяется габаритный контейнер. Он задает границы пространства сцены, в пределах которого будет формироваться эффект. Для созда
191
Окружение и атмосферные эффекты
ния габаритного контейнера необходимо щелкнуть на кноп ке Helpers (Вспомогательные объекты) вкладки Create (Соз дание) командной панели и выбрать из раскрывающего ся списка Atmospheric Apparatus (Атмосферная оснастка) (рис. 5.10). Свиток Object Type (Тип объекта) содержит три кнопки для создания габаритных контейнеров разной формы: BoxGizmo (Параллелепипед Гизмо), SphereGizmo (Сфера Гизмо), а так же CylGizmo (Цилиндр Гизмо). После создания габаритного контейнера к нему можно при менить стандартные преобразования перемещения, враще ния и масштабирования.
Рис. 5.10. Типы габаритных контейнеров
Эффект Fire Effect (Эффект огня) После добавления Fire Effect (Эффект огня) в список Effects (Эффекты) свитка Atmosphere (Атмосфера) окна Environment and Effects (Окружающая среда и эф фекты) настройки данного эффекта появляются в свитке Fire Effect Parameters (Па раметры эффекта огня) вкладки Environment (Окружающая среда) окна Environment and Effects (Окружающая среда и эффекты) (рис. 5.11). Свиток Fire Effect Parameters (Параметры эф фекта огня) содержит следующие области.
Gizmos (Габаритные контейнеры) — поз воляет выбрать габаритный контейнер (кнопка Pick Gizmo (Указать контей нер)) или удалить его из списка (кноп ка Remove Gizmo (Удалить контейнер)).
Colors (Цвета) — дает возможность на страивать цвета компонентов пламени на основе трех образцов цвета: Inner Color (Внутренний цвет), Outer Color (На ружный цвет) и Smoke Color (Цвет дыма).
Shape (Форма) — позволяет настраи вать тип пламени, используя следую щие параметры: •
переключатель Flame Type (Тип пла мени), который имеет два положе ния: Tendril (Язык) — генерируются языки пламени, характерные для эффекта горения свечи, костра и т. п.; Fireball (Огненный шар) — тип пла мени округлой формы, обычно при меняемый для имитации взрывов;
Рис. 5.11. Свиток Fire Effect Parameters (Параметры эффекта огня)
192
Глава 5. Основы визуализации
•
параметр Stretch (Растягивание) — задает длину растяжения пламени в пре делах габаритного контейнера;
•
параметр Regularity (Регулярность) — позволяет указать, как пламя будет заполнять габаритный контейнер.
Characteristics (Характеристики) содержит четыре параметра: •
Flame Size (Размер пламени) — устанавливает размер отдельных языков пламени внутри габаритного контейнера (для достижения лучшего резуль тата рекомендуется использовать значения в пределах от 15 до 30);
•
Flame Detail (Детализация пламени) — контролирует величину изменения цвета и резкость на границах каждого цвета;
•
Density (Плотность) — позволяет задавать прозрачность эффекта горения;
•
Samples (Выборка) — устанавливает частоту дискретизации эффекта.
Motion (Движение) представлена двумя параметрами: •
Phase (Фаза) — контролирует частоту изменения эффекта (если установ лен флажок Explosion (Взрыв), то Phase (Фаза) контролирует стадии от об разования пламени до образования дыма, используя значения от 0 до 300);
•
Drift (Дрейф) — управляет визуализацией пламени вдоль оси Z габаритно го контейнера.
Explosion (Взрыв) позволяет настраивать параметры взрыва: •
Explosion (Взрыв) — включает анимацию размера, плотности и цвета, осно вываясь на анимации параметра Phase (Фаза);
•
Setup Explosion (Настройка взрыва) — открывает окно Setup Explosion Phase Curve (Настройка кривой фаз взрыва), в котором можно задать параметры кривой для начала и окончания взрыва;
•
Smoke (Дым) — включает создание дыма в процессе взрыва, основанном на значениях параметра Phase (Фаза);
•
Fury (Темп взрыва) — задает скорость мерцания вспышки взрыва.
Эффект Fog (Туман) Эффект Fog (Туман) основывается на значениях области Environment Ranges (Диа пазоны окружающей среды) настроек съемочной камеры. В связи с этим для при менения эффекта тумана сцена должна визуализироваться с использованием вида из камеры. Настроить параметры атмосферного эффекта Fog (Туман) можно в свит ке Fog Parameters (Параметры тумана) (рис. 5.12). Рассмотрим настройки свитка Fog Parameters (Параметры тумана).
Fog (Туман) устанавливает следующие параметры: •
Color (Цвет) — отвечает за выбор цвета тумана;
•
Environment Color Map (Карта цвета окружающей среды) — позволяет вы брать карту текстуры для использования ее в качестве цвета тумана;
193
Окружение и атмосферные эффекты
•
Environment Opacity Map (Карта про зрачности окружающей среды) — дает возможность использовать тек стурную карту для управления плот ностью тумана;
•
Fog Background (Туман фона) — вклю чает/выключает применение эффек та тумана к фону сцены;
•
Type (Тип) — переключатель меж ду двумя типами тумана: Standard (Стандартный) и Layered (Слоис тый).
Standard (Стандартный) содержит па раметры стандартного тумана: •
Exponential (Экспоненциально) — позволяет управлять плотностью тумана по мере удаления от камеры;
•
Near (Ближе) и Far (Дальше) — поз воляют задавать процент плотно сти тумана на ближней и дальней границах, определяемых в настрой ках камеры.
Рис. 5.12. Свиток Fog Parameters (Параметры тумана)
Layered (Слоистый) управляет настройками слоистого тумана: •
Top (Верх) — устанавливает верхнюю границу слоя тумана;
•
Bottom (Низ) — задает нижнюю границу слоя тумана;
•
Density (Плотность) — определяет плотность тумана;
•
Horizon Noise (Шум горизонта) — добавляет шум в туман на линии горизон та, что повышает реалистичность эффекта;
•
Size (Размер) — задает значение коэффициента масштаба для области шума;
•
Falloff (Спад) — позволяет переключаться между тремя параметрами затуха ния плотности тумана: Top (Сверху), Bottom (Снизу) и None (Отсутствует);
•
Angle (Угол) — устанавливает угол действия области шума над линией го ризонта;
•
Phase (Фаза) — позволяет анимировать область шума.
Эффект Volume Light (Объемный свет) Эффект Volume Light (Объемный свет) имитирует прохождение светового луча в непрозрачной атмосфере (туман, дым, пыль и т. п.). Параметры данного эффекта появляются в свитке Volume Light Parameters (Пара метры объемного света) (рис. 5.13) после добавления этого эффекта в список
194
Глава 5. Основы визуализации
Effects (Эффекты) свитка Atmosphere (Ат мосфера) окна Environment and Effects (Окру жающая среда и эффекты). С помощью свитка Volume Light Parameters (Параметры объемного света) можно на строить параметры в следующих облас тях.
Рис. 5.13. Свиток Volume Light Parameters (Параметры объемного света)
Lights (Источники света) позволяет вы брать источник света (кнопка Pick Light (Указать источник света)) либо уда лить его из списка (кнопка Remove Light (Удалить источник света)).
Volume (Объем) управляет характерис тиками светового луча: •
Fog Color (Цвет тумана) и Attenuation Color (Цвет затухания) — об разцы цвета, позволяющие задавать основной цвет светового луча и цвет, на который он будет изменяться по мере удаления от источника света;
•
Exponential (Экспоненциально) — экспоненциально увеличивает плот ность тумана по мере удаления от источника света;
•
Density (Плотность) — управляет плотностью тумана;
•
Max Light (Максимальная яркость) — ограничивает максимальную яркость тумана, нарастающую по мере удаления от источника света;
•
Min Light (Минимальная яркость) — определяет настройки уровня подсветки;
•
Atten. Mult. (Усилитель затухания) — управляет эффектом затухания цвета;
•
Filter Shadows (Фильтрация теней) — позволяет улучшить качество визуа лизации объемного света за счет повышения количества отсчетов в выбор ке; может принимать одно из четырех положений: Low (Низкое), Medium (Среднее), High (Высокое) и Use Light Smp Range (Использовать область усреднения источника света).
Attenuation (Затухание) содержит два счетчика, позволяющие задавать Start (Начальная) и End (Конечная) границы затухания эффекта (значения базиру ются на границах ближней и дальней зон источника света).
Noise (Шум) позволяет настраивать режим шума в луче света: •
Noise On (Включить шум) — включает/выключает эффект шума;
•
Amount (Величина) — процентное отношение шума в составе тумана (может принимать значения от 0 (отсутствие шума) до 1 (максимальный шум));
195
Окружение и атмосферные эффекты •
Link To Light (Связать с источником) — связывает эффект шума с системой координат источника света;
•
Type (Тип) — позволяет выбрать один из трех типов шума: Regular (Повто ряющийся), Fractal (Фрактальный) или Turbulence (Турбулентный);
•
Invert (Инвертировать) — установка флажка позволяет инвертировать эф фект шума;
•
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 (Объем) — позволяет настра ивать параметры Color (Цвет), Exponential (Экспоненциально) и Density
Рис. 5.14. Свиток Volume Fog Parameters (Параметры объемного тумана)
196
Глава 5. Основы визуализации
(Плотность), аналогичные настройкам объемного света. Кроме того, данная область содержит такие параметры:
•
Step Size (Размер шага) — позволяет управлять степенью неоднородности тумана;
•
Max Steps (Максимальное количество шагов) — ограничивает количество просчетов выборки тумана;
•
Fog Background (Туман фона) — позволяет применять эффект тумана к фо новому изображению.
Noise (Шум) по своим параметрам практически аналогична рассмотренной выше области для объемного света.
Оптические эффекты Оптические эффекты выступают как часть процесса визуализации, позволяя по высить реалистичность трехмерных сцен. Доступ к группе оптических эффектов можно получить при помощи вкладки Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты) (рис. 5.15). Для выбора оптических эффектов и настройки их параметров в свитке Effects (Эф фекты) выполните следующие действия.
Рис. 5.15. Вкладка Effects (Эффекты) окна Environment and Effects (Окружающая среда и эффекты)
1.
Щелкните на кнопке Add (Добавить). В результате откроется окно диалога Add Effect (Добавить эффект), в кото ром можно выбрать один из следу ющих эффектов: Hair and Fur (Во лосы и мех), Lens Effects (Эффекты линзы), Blur (Размытие), Brightness and Contrast (Яркость и контраст), Color Balance (Цветовой баланс), Depth of Field (Глубина резкости), File Output (Вывод в файл), Film Grain (Зер нистость) и Motion Blur (Размытие движения).
2.
В окне Add Effect (Добавить эффект) выберите из списка тип требуемого эффекта и щелкните на кнопке OK для подтверждения выбора. В ре зультате указанный эффект доба вится в список Effects (Эффекты). При необходимости добавьте таким же образом другие эффекты.
3.
Для того чтобы удалить эффект из списка Effects (Эффекты), выдели те его и щелкните на кнопке Delete (Удалить).
197
Окружение и атмосферные эффекты
4.
Установите флажок Active (Активный), чтобы включить эффект в итоговую визуализацию сцены.
5.
С помощью кнопок Move Up (Переместить вверх) и Move Down (Переместить вниз) измените при необходимости порядок следования эффектов в списке.
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).
Рис. 5.16. Свиток Lens Effects Parameters (Параметры эффектов линзы)
Для выбора необходимого фильтра выде лите его имя в списке слева и щелкните на кнопке со стрелкой >. В результате выделенный фильтр переместится в правое окно. Для удаления выбранного фильтра из просчетов переместите его обратно — из правого окна в левое.
198
Глава 5. Основы визуализации
Настройки общих параметров для всех фильтров находятся в свитке Lens Effects Globals (Глобальные настройки эффектов линзы) (рис. 5.17). Вкладка Parameters (Параметры) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) содержит следующие настройки:
Рис. 5.17. Свиток Lens Effects Globals (Глобальные настройки эффектов линзы)
Load (Загрузить) — позволяет загрузить сохраненные ранее параметры фильт ров данной группы;
Save (Сохранить) — вызывает окно Save Lens Effects file (Сохранить файл эффек тов линзы), в котором вы можете ука зать имя файла и путь для его сохране ния;
Size (Размер) — задает размер участка изображения, подверженного влиянию фильтра (определяется в процентах от всего визуализируемого изображе ния);
Intensity (Интенсивность) — управляет общими параметрами яркости и не прозрачности эффектов линзы;
Seed (Случайная выборка) — задает случайное число для генерации эффектов линзы без изменения начальных параметров;
Angle (Угол) — задает значения угла поворота эффекта линзы относительно начального положения при повороте съемочной камеры;
Squeeze (Сдавливание) — управляет изменением пропорций области эффекта, растягивая его по горизонтали (при положительных значениях счетчика) или по вертикали (при отрицательных);
Lights (Источники света) — содержит две кнопки: Pick Light (Указать источник света), позволяющую выбрать источник света в окне проекции, и Remove (Уда лить), которая удаляет из списка выделенный источник света.
Настройки вкладки Scene (Сцена) свитка Lens Effects Globals (Глобальные настройки эффектов линзы) позволяют более тонко настраивать параметры линзовых эффектов, влияющих на их отображение в сцене. Среди данных настроек присутствуют режим воздействия на альфаканал, действие эффекта в зависимости от расстояния до ка меры или расположения объектов по оси Z (глубины сцены) и некоторые другие. При настройке эффектов линзы обычно используются параметры по умолчанию. Рассмотрим общие параметры, характерные для настройки фильтров группы Lens Effects (Эффекты линзы), на примере фильтра Glow (Сияние). Он позволяет созда вать эффект светящегося ореола вокруг любых выбранных объектов. Одной из за дач, выполняемых при помощи этого фильтра, является создание эффекта свече ния неоновой рекламы. При выборе фильтра Glow (Сияние) становится доступным свиток Glow Element (Элемент сияния) (рис. 5.18) с настройками его параметров.
199
Окружение и атмосферные эффекты
Свиток Glow Element (Элемент сияния) со держит две вкладки: Parameters (Парамет ры) и Options (Режимы). Для настройки элементов вкладки Parameters (Параметры) (см. рис. 5.18) выполните следующие действия. 1.
Установите или снимите флажок On (Включить) в зависимости от того, дол жен или нет просчитываться эффект во время визуализации изображения.
2.
Задайте размер области действия эф фекта, используя параметр Size (Раз мер).
3.
С помощью параметра Intensity (Ин тенсивность) установите уровень яр кости и непрозрачности каждого от дельного эффекта.
4.
Установите флажок Glow Behind (Сия ние позади), чтобы эффект проявлялся позади объектов сцены.
5.
Используя счетчик Occlusion (Перекрытие), укажите, в какой мере на эффекте должно сказываться влияние аналогичного параметра из Lens Effects (Эффек ты линзы) вкладки Scene (Сцена).
6.
Установив флажок Squeeze (Сдавливание), включите режим растяжения об ласти действия эффекта, заданного в свитке Lens Effects (Эффекты линзы) вкладки Parameters (Параметры).
7.
Параметр Use Source Color (Использовать цвет источника) позволяет задать долю использования цвета объекта или источника света по отношению к ука занным цветам Radial Color (Цвет вдоль радиуса) или Circular Color (Цвет вдоль окружности). Значение, равное 0, позволяет использовать только цвета, ука занные в образцах, а значение, равное 100, использует только цвет источника. Промежуточные значения генерируют смешанные цвета.
8.
В области Radial Color (Цвет вдоль радиуса) настройте параметры внешней и внутренней области эффекта сияния:
Рис. 5.18. Свиток Glow Element (Элемент сияния) настроек эффекта Glow (Сияние)
•
при помощи образцов цвета укажите цвет внешней и внутренней области эффекта сияния;
•
щелкните на кнопке None (Отсутствует), если нужно выбрать в качестве образца цвета карту текстуры;
•
нажмите кнопку Falloff Curve (Кривая спада), чтобы настроить кривую вли яния цвета вдоль радиуса с использованием более чем одного цвета или текстурной карты.
200
Глава 5. Основы визуализации
9.
Область Circular Color (Цвет вдоль окружности) позволяет использовать четы ре образца цвета, которые будут располагаться по окружности внешней части эффекта. Параметр Mix (Смешивание) задает степень смешивания цветов группы Circular Color (Цвет вдоль окружности). Действие остальных кнопок не отличается от рассмотренных для области Radial Color (Цвет вдоль радиуса).
10.
При помощи кнопки Size Curve (Кривая размера) настройте в области Radial Size (Радиальный размер) кривую распространения эффекта относительно объекта или источника света, которому назначен этот эффект. Щелчок на кнопке с надписью None (Отсутствует) позволяет загрузить в качестве управ ляющей областью эффекта карту текстуры.
На рис. 5.19 показана вкладка Options (Режимы) свитка Glow Element (Элемент си яния). Для настройки параметров вкладки Options (Режимы) выполните следующие дей ствия. 1.
Рис. 5.19. Вкладка Options (Режимы) свитка Glow Element (Элемент сияния)
2.
В области Apply Element To (Применить элемент к) установите или снимите следующие флажки: •
Lights (Источники света) — приме нение эффекта к источникам света, выбранным в области Lights (Ис точники света) свитка Lens Effects Globals (Глобальные настройки эф фектов линзы) вкладки Parameters (Параметры);
•
Image (Изображение) — примене ние эффекта к визуализированно му изображению с использованием параметров области Image Sources (Источники изображения);
•
Image Centers (Центры изображе ния) — флажок применяется к цен тру объекта (или группе объектов) с учетом настроек области Image Filters (Фильтры изображения).
В области Image Sources (Источники изображения) настройте параметры ис точников сияния. •
Object ID (Идентификатор объекта) — позволяет применять эффект к от дельным объектам сцены с назначенным каналом G-Buffer (Gбуфер). Gбу фер — это буфер графики, который может быть присвоен объекту в облас ти Rendering Control (Управление визуализацией) окна Object Properties (Свойства объекта), вызываемого командой Properties (Свойства) контекст
Окружение и атмосферные эффекты
201
ного меню объекта. Для применения эффекта к отдельным объектам сце ны номера их каналов Gбуфера должны совпадать с номерами в счетчике Object ID (Идентификатор объекта).
3.
•
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 (Цветовой тон) — эффект будет применяться только к тем областям, цветовой тон которых указан в поле образца цвета.
202 4.
Глава 5. Основы визуализации
При помощи настроек области Additional Effects (Дополнительные эффекты) примените к эффектам линзы различные текстурные карты (например, Noise (Шум)). Установка флажка Apply (Применить) активизирует выбранную кар ту текстуры, а кнопка 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 (Видеомонтаж)
203
Модуль Video Post (Видеомонтаж) Программный модуль Video Post (Видеомонтаж) предназначен для обработки ви зуализированных изображений с целью получения таких эффектов, как блики или свечение, создания межкадровых переходов, добавления внешних изображений и многого другого. Для доступа к модулю 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 (Удалить текущее событие) — удаляет текущее событие;
204
Глава 5. Основы визуализации
Swap Events (Переставить события) — меняет местами положение двух выде ленных событий очереди; 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 (Эффекты линзы, сияние) (событие фильтрации изображения).
Модуль Video Post (Видеомонтаж)
4.
Визуализация вида из камеры, а также внешний файл goodyear.jpg объединяются в одно изображение с использованием текстурной маски, указанной в со бытии Alpha Compositor (Альфаобъединитель) (со бытие композиции изображений).
5.
Полученное изображение будет записано в файл с на званием Outpute.jpg (Событие вывода изображе ния).
205
5.21. События Таким образом, положение события в списке важно с точ Рис. очереди видеомонтажа ки зрения конечного результата. Событие можно уда лить или переместить на новое место в очереди, щелкнув на его имени и перетащив в нужное место списка. Формирование последователь ного списка событий происходит тогда, когда при добавлении событий в списке ничего не выделено. Чтобы добавить дочернее событие, необходимо выделить со бытие списка, которое должно стать родительским, и только после этого добавлять новое событие. События композиции изображений и событияциклы всегда до бавляются как родительские события, а внешние события — как дочерние.
События и фильтры видеомонтажа Модуль Video Post (Видеомонтаж) позволяет оперировать следующими типами событий.
Scene Event (Событиесцена) — позволяет выбрать окно проекции, которое бу дет использовано для визуализации в очереди видеомонтажа. Для события сцены можно настроить следующие параметры: •
назначить визуализатор из списка установленных;
•
настроить общие параметры визуализатора (такие как визуализация эф фектов, визуализация полями, смещения и т. д.);
•
включить или выключить из итоговой визуализации показ материалов, расчет теней, отражения и т. д.;
•
включить или выключить сглаживание и фильтрацию текстурных карт.
Image Input Event (Событие ввода изображения) — позволяет добавлять в сце ну статичное или анимированное изображение. В отличие от событиясцены, это может быть ранее сохраненное на диске изображение или изображение, полученное с внешнего устройства. Для использования в качестве события ввода изображения можно применять любые форматы графических файлов, поддер живаемых 3ds Max. Данное событие обычно используется для последующего применения к нему фильтров или в составе событий композиции. Событие ввода изображения позволяет настраивать следующие основные параметры: •
выравнивание, размер и диапазон кадров входящего изображения;
•
начало и конец действия события в рамках шкалы времени видеомонтажа.
Image Filter Event (Событие фильтрации изображения) — позволяет приме нять фильтры для обработки событийсцен или событий ввода изображения.
206
Глава 5. Основы визуализации
Обычно события фильтрации изображений являются родительскими по отно шению к изображениям, к которым они применяются. Доступны следующие типы фильтров.
•
Contrast (Контраст) — настраивает контрастность и яркость изображения при помощи вызываемого окна Image Contrast Control (Контроль контраст ности изображения).
•
Fade (Наплыв) — позволяет постепенно уменьшать или увеличивать ин тенсивность изображения. Применяется для создания переходов между отдельными изображениями или анимацией.
•
Image Alpha (Альфаканал) — переопределяет альфаканал изображения, к которому он применяется, на канал маски, заданный в настройках филь тра. Если маска не определена, то фильтр не оказывает действия. Настрой ка фильтра не требуется. Обычно применяется для отсечения ненужных участков изображения с целью последующего использования с событиями композиции.
•
Lens Effects (Эффекты линзы) — группа фильтров, позволяющая имитиро вать следующие эффекты: Flare (Блики) — блики на линзах объектива съе мочной камеры; Focus (Фокусировка) — эффект размытия объектов, осно ванный на расстоянии от съемочной камеры; Glow (Сияние) — сияние вокруг объектов, к которым применяется данный фильтр; Highlight (Свер кание) — создание зеркальных бликов в виде звездочек.
•
Negative (Негатив) — инвертирует цвета изображения; эффект напомина ет негатив цветной фотопленки.
•
Pseudo Alpha (Мнимый альфаканал) — создает альфаканал для изображе ний, не имеющих его, на основе цвета первого пиксела (первый пиксел — в верхнем левом углу изображения). Все пикселы изображения, имеющие такой же цвет, будут прозрачными. Обычно применяется для композиции изображений, не имеющих альфаканала.
•
Simple Wipe (Шторка) — создает эффект открытия или закрытия изображе ния черной шторкой. Настройки данного фильтра позволяют управлять направлением движения шторки и режимом открытия/закрытия. Обычно этот эффект применяется в сочетании с событием Alpha Compositor (Альфа объединитель) для создания эффекта наплыва одного изображения на дру гое.
•
Starfield (Звездное поле) — генерирует звездное небо с возможностью при менения эффекта размытия. Для применения данного эффекта необходи мо использовать вид из камеры.
Image Layer Event (Событие композиции изображений) — событие, позволяю щее объединять два изображения посредством фильтров. Оно всегда являет ся родительским по отношению к двум дочерним изображениям, которые, в свою очередь, могут быть родительскими и иметь дочерние. Процесс объе динения изображений может контролироваться при помощи маски прозрач
Модуль Video Post (Видеомонтаж)
207
ности, задаваемой в области Mask (Маска). Доступны следующие типы фильт ровобъединителей. •
Adobe Premiere Transition Filter (Фильтр переходных эффектов Adobe Pre miere) — применяется для подключения фильтров межкадровых перехо дов программы 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
Технологии вывода анимированных изображений • Визуализация анимации • Размытие движущихся объектов сцены • Технология сжатия видео • Сетевая визуализация • Общие рекомендации по визуализации видеоизображений
Визуализация анимации
209
Растущая популярность цифрового видео, Интернета и широкое распространение CD и DVD породили спрос на графическое содержимое, поставляемое на цифро вых носителях. В отличие от статического изображения, которое может быть от печатано на бумаге, анимационные ролики могут существовать только в виде са мостоятельных продуктов, отображаемых на экране монитора, телевизора или проектора. Возможности программы 3ds Max настолько обширны, что с ее помощью мож но создавать анимацию с высоким разрешением и цветовой глубиной не только для цифрового воспроизведения, но и для представления на видео. Приложение 3ds Max предназначено для профессионального моделирования и анимации, ко торая способна управлять 64 битами информации на кадр — то есть по 16 бит на каждый канал RGBA. Формат итогового изображения должен определяться задолго до того, как начнет ся визуализация анимированных образов, так как в зависимости от выбранного формата может существенно меняться как творческое, так и техническое решение проекта.
Визуализация анимации Анимация основывается на особенностях человеческого зрения. Если вы видите серию связанных неподвижных картинок, которые быстро сменяют друг друга, то ваш мозг начинает воспринимать их как непрерывное изображение. Каждое такое изображение называется кадром. Именно визуализация диапазона кадров приво дит к тому, что мы на выходе получаем либо последовательность статичных изо бражений (которые затем можно использовать в программах постобработки), либо анимированный файл. Исходя из того что визуализация анимированных образов базируется на визуали зации статичных кадров, настройки визуализатора того и другого во многом совпа дают. Рассмотрим основные требования к визуализации анимированных изобра жений.
Определение формата и оптимального разрешения Как уже говорилось ранее, определение конечных целей проекта на как можно более ранней стадии моделирования является обязательным. Именно до нача ла моделирования вы должны точно знать требования к выходному изображе нию, степень детализации, тип носителя и устройство воспроизведения итогового файла. Разрешением называется горизонтальное и вертикальное количество пикселов в двумерном изображении. Например, разрешение 640 × 480 описывает изобра жение, у которого 640 пикселов по горизонтали и 480 по вертикали. Важной ха рактеристикой изображения является также глубина цвета (см. ниже), например 16 бит, 24 бита или 32 бита (изображение с альфаканалом).
210
Глава 6. Технологии вывода анимированных изображений
Соотношение ширины и высоты изо бражения называется форматным со отношением (Aspect ratio). Оно вы числяется делением горизонтального разрешения на вертикальное. При раз решении 640 × 480 форматное соотно шение равно 1,33 (или 4:3). Такое соот ношение является общепринятым для телевизоров и компьютерных монито ров. Тем не менее, в зависимости от типа монитора, пленки и проекционной си стемы, форматное соотношение может находиться в пределах от 1,33 до 2,35. Задать требуемое разрешение можно, используя вкладку Common (Общие) окна Render Scene (Визуализация сце ны) (рис. 6.1). Рассмотрим основные форматы итого вого изображения для анимации (раз решение, форматное соотношение, со отношение пиксела):
Рис. 6.1. Окно Render Scene (Визуализация сцены) с раскрытым списком предустановленных форматов
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 D1 (европейский телевизионный фор мат);
720 × 486; 1,33; 0,9 — NTSC D1 (телевизионный формат Азии и Америки);
720 × 1280; 1,77; 1 — HDTV (формат DVDустройств);
1080 × 1980; 1,77; 1 —HDTV (формат DVDустройств);
3072 × 2048; 1,5; 1 — 35миллиметровые слайды/пленка (формат Kodak Photo CD).
Кроме описанных выше, существуют форматы, которые предназначены для кино индустрии, и малоиспользуемые телевизионные форматы. Анализируя представленный выше список, можно заметить, что разрешения при разных форматах значительно отличаются друг от друга. Таким образом, фор мат (разрешение) визуализируемой анимации зависит от типа воспроизводящего устройства.
Визуализация анимации
211
ПРИМЕЧАНИЕ ___________________________________________________________________ Обычно заказчик видеоролика или другой анимационной продукции заранее оговаB ривает требования к выводному изображению в зависимости от того, для каких цеB лей выполняется работа и на каком оборудовании будет редактироваться или трансB лироваться созданная анимация. Например, может потребоваться несжатое видео в полях формата QuickTime с разрешением 720 × 576 PAL DB1, соотношением пиксеB ла 1,06 и частотой кадров (fps) 25 кадров в секунду.
Глубина цвета Глубина цвета (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битный цвет с альфаканалом. Альфаканал (Alpha channel) — это дополнительные 8 бит информации о прозрачности изображе ния. Подобная информация добавляется к RGBданным, характеризующим изображение, поэтому 24битное изображение с альфаканалом становится 32битным рисунком. Альфаканал, как и каждый из каналов R, G или В, обладает 256 уровнями интенсивности, однако эта информация относится не к цвету, а к изменению прозрачности соответствующего изображения относи тельно его фона.
212
Глава 6. Технологии вывода анимированных изображений
64битный цвет — достаточно редко используемая глубина цвета. Применяет ся графическими адаптерами, сканерами и другими устройствами, которые могут поддерживать даже более высокую цветовую насыщенность для выпол нения внутренних вычислений и вывода высококачественных изображений. Вместе с тем 64битный цвет является внутренним для 3ds Max и позволяет получать на выходе более сглаженные цветовые переходы.
Кроме того, существуют 48битный цвет и высокоточные форматы с плавающей точкой.
Форматы файлов Кроме форматов выводного изображения, о которых говорилось ранее, необходи мо упомянуть и о форматах анимационных файлов. В зависимости от цели можно использовать различные форматы записи. Представленные далее форматы явля ются в основном 24битными или 32битными, но могут поддерживать и более низкую глубину цвета.
АVI (AudioVideo Interleave) — разработан компанией Microsoft в качестве стандарта цифрового видео для персональных компьютеров. Может записы ваться как в несжатом, так и в сжатом виде.
BMP (BitMaP) — создан компанией Microsoft для пиктограмм и рисунков в среде Windows. Поддерживается практически всеми приложениями и не имеет методов сжатия. Может иметь 8 и 24битный цвет.
GIF (Graphic Interchange Format) — 8битный формат сжатия без потерь, явля ющийся собственностью компании CompuServe. Широко используется для сжатия изображений, имеющих малое количество цветов. В последние годы по пулярность анимации в Интернете, для которой активно используется GIF89a, привела к применению данного формата для анимированных файлов.
JPG, JPEG (Joint Photographic Experts Group) — разработан как метод сжа тия с потерями. Значительно сжимает фотографические изображения путем устранения незначительных различий в цветах пикселов. Этот метод обеспе чивает одну из самых высоких степеней сжатия, но может вызвать нежела тельные искажения изображения при слишком интенсивном использовании или многократном сжатии. Формат часто применяется для сжатия цифровых видеофайлов.
MPG, MPEG (Motion Picture Experts’ Group) — метод сжатия видео с потерями. Существуют две модификации: MPEG1, используемый для формата Video CD, и MPEG2, применяемый в DVDпроигрывателях.
PNG (Portable Network Graphics) — это удобный и надежный формат сжатия без потерь. Аналогично формату GIF, имеет хороший коэффициент сжатия изображений с небольшим количеством ровных, сплошных цветов. Возможна запись альфаканала.
QT (QuickTime) — разработан компанией Apple. Он является первым коммер ческим форматом цифрового видео для Macintosh и может применяться для фото и видеофайлов. Данный формат работает с большим количеством раз
Визуализация анимации
213
личных методов сжатия. Позже была разработана версия для ПК, использую щая расширение MOV. Этот формат желательно применять для записи ви деоматериала, особенно если идет речь о работе с разными программными платформами.
TGA (TarGA) — создан компанией Pinnacle Systems для захвата видео и вы вода на пленку компьютерной графики или цифрового видео. Данный формат поддерживает сжатие без потерь и альфаканал. Применяется для хранения изображений со сглаженными цветовыми градациями или фотографий.
TIF, TIFF (Tagged Image File Format) — формат фотографий. Существуют различные реализации данного формата в зависимости от платформы — ПК или Macintosh. Многие современные программы воспринимают любую вер сию. В TIFF есть несколько разных вариантов сжатия без потерь и возмож ность записи альфаканала.
Отдельно стоит упомянуть о форматах, значительно реже используемых для со хранения компьютерной графики, но имеющих определенную ценность для про грамм постобработки. В первую очередь речь идет о программе Combustion. То, что пользователи 3ds Max предпочитают работать в этом приложении, объясня ется не только большими возможностями данного приложения и его удобством, но и совместимостью с 3ds Max. Это позволяет передавать в программу постобра ботки значительное количество дополнительной информации, такой как эффек ты материалов, информация о нормалях, цвет, скорость и т. д. Можно отметить следующие форматы.
RLA — разработан компанией Silicon Graphics, позволяет включить в изобра жение дополнительные каналы. Если выбрать из списка доступных форматов для записи выходного изображения строку RLA Image File и щелкнуть на кноп ке Save (Сохранить), то откроется окно RLA Image File Format (Формат файла изображения RLA) (рис. 6.2). В нем можно определить, какие каналы из пере численных в области Optional Channels (3ds max Channels) (Дополнительные ка налы (каналы 3ds max)) будут записаны вместе с изображением.
Рис. 6.2. Окно RLA Image File Format (Формат файла изображения RLA)
214
Глава 6. Технологии вывода анимированных изображений
RPF (Rich Pixel Format) — как и RLA, поддерживает дополнительные каналы изображения. При выборе формата RPF появляется окно RPF Image File Format (Формат файла изображения RPF) (рис. 6.3). Данный формат применяется, когда визуализируемая анимация требует последующей постобработки или добавления эффектов. Формат RPF поддерживает большое количество кана лов, недоступных в других случаях.
Рис. 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 строк развертки с часто
Визуализация анимации
215
той 50 Гц. Типовое разрешение визуализации — 720 × 576 пикселов с соотноше нием пиксела 1,06. Анимация стандарта PAL имеет частоту 25 кадров в секунду.
SECAM (Systeme Electronique CouleurAvec Memoire) — используется во Фран ции, а также в России и других странах Европы. Телевизоры этого формата, как и стандарта PAL, характеризуются 625 строками развертки с частотой 50 Гц. Здесь также применяется анимация с частотой 25 кадров в секунду.
ВНИМАНИЕ ______________________________________________________________________ В отличие от форматов, предназначенных для воспроизведения на мониторе, телеB визионные стандарты не используют квадратный пиксел. На практике это означает, что если не задать правильное соотношение пиксела, то на экране телевизора изоB бражение будет выглядеть деформированным.
Как уже говорилось ранее, задать требуемое разрешение можно, используя вклад ку Common (Общие) окна Render Scene (Визуализация сцены) (см. рис. 6.1). В свою очередь, установить необходимую частоту кадров визуализации можно при помо щи настроек области Frame Rate (Частота кадров) окна Time Configuration (Настрой ка временных интервалов), которое можно вызвать, щелкнув на одноименной кнопке в правой нижней части окна программы. Кроме описанных выше параметров, телевизионные форматы характеризуются наличием полей. На практике это означает, что каждый кадр отображается на эк ране телевизора в два прохода: электронный луч телевизора формирует строки изображения, пропуская каждую вторую, а затем возвращается и формирует те, которые были пропущены. При выборе режима визуализации для записи на пленку или последующего ото бражения на экране телевизора необходимо использовать функцию визуализации полей (Render to Fields (Визуализация полей)), которая находится в области Options (Параметры) свитка Common Parameters (Общие параметры) вкладки Common (Об щие) окна Render Scene (Визуализация сцены). Благодаря использованию этого параметра, изображения визуализируются так же, как их отображает телевизор, то есть каждый кадр визуализируется в два прохо да — только четные строки и только нечетные. Применение такого метода занима ет больше времени, однако быстро движущиеся объекты будут выглядеть намного ровнее, потому что изображение обновляется в полном соответствии с частотой обновления телевизора. ВНИМАНИЕ ______________________________________________________________________ Никогда не применяйте визуализацию полей для последующего компьютерного восB произведения анимации, так как в прогрессивных сканирующих устройствах поля не применяются. Это же справедливо и для записи на кинопленку — кинопроекторы восB производят каждый кадр только один раз.
216
Глава 6. Технологии вывода анимированных изображений
Важно отметить, что не существует стандарта относительно того, какое поле долж но быть визуализировано первым — нечетные или четные строки развертки. Поря док, в котором их нужно визуализировать, зависит от используемого аппаратного обеспечения видеомонтажа. СОВЕТ ___________________________________________________________________________ Если при использовании полей вы собираетесь устанавливать задержку для первого или последнего кадра, то необходимо визуализировать их полным кадром без полей. В противном случае остановленный кадр будет выглядеть дрожащим.
Еще одной особенностью формирования изображения для телевизионных прием ников является то, что часть кадра не видна на экране. В связи с этим необходимо учитывать отступы для области видео и области титров (рис. 6.4).
Рис. 6.4. Окно проекции вида из камеры с включенным отображением границ видео и титров
ПРИМЕЧАНИЕ ___________________________________________________________________ Чтобы отобразить границы видео и титров, нужно щелкнуть правой кнопкой мыши на имени окна и выбрать из появившегося меню строку Show Safe Frame (Показывать безопасные области).
Указанные области гарантированно позволят отобразить видеоизображение, на ходящееся внутри внешнего прямоугольника, и любые тексты или титры, вписан ные в рамки внутреннего прямоугольника. При создании анимации для заданного типа видеосигнала необходимо учитывать еще одно ограничение для файлов визуализации — может «выпадать» цвет из ви деоспектра. Для контроля цветности нужно провести некоторое количество тес
Размытие движущихся объектов сцены
217
товых визуализаций с установленным флажком Video Color Check (Проверка цве тов видео) в области Options (Параметры) свитка Common Parameters (Общие па раметры) вкладки Common (Общие) окна Render Scene (Визуализация сцены). При необходимости используйте Scale Luma (Масштабировать яркость) и Scale Saturation (Масштабировать насыщенность) для глобальной настройки «выпада ющих» из спектра значений цвета сцены. Сделать это можно при помощи пере ключателей области Video Color Check (Проверка цветов видео) на вкладке Rendering (Визуализация) окна Preference Settings (Параметры установок). В этом же окне можно задать тип видеосигнала, для которого будут проверяться «выпадающие» из спектра значения цвета, и порядок следования полей (переключатель Field Order (Порядок следования полей)). ВНИМАНИЕ ______________________________________________________________________ Не забудьте снять флажок Video Color Check (Проверка цветов видео) в окне Render Scene (Визуализация сцены) при проведении окончательной визуализации.
Размытие движущихся объектов сцены Рассмотренный выше параметр Render to Fields (Визуализация полей) использует ся не только для правильной визуализации видеоизображений, но и для увеличе ния гладкости оживляемых объектов. При визуализации полей каждый кадр делится на два сканированных образа, при этом каждая половина кадра объединя ется с половиной последующего или предыдущего. Результирующий кадр содер жит два полуобраза, смещенных во времени (рис. 6.5).
Рис. 6.5. Кадр, сформированный полуполями
218
Глава 6. Технологии вывода анимированных изображений
Эффект, создаваемый при помощи визуализации полей, похож на тот, который получается в результате использования эффектов Image Blur (Размытие изображе ния) или Motion Blur (Размытие движения). Однако данный эффект не соответ ствует им. Размытие движущихся объектов существенно повышает реалистичность анима ции. При съемке реальной камерой шторка затвора открывается на какойто ко роткий промежуток времени, и если в этот момент снимаемые объекты двигают ся, то фотография или кадр будут размытыми. В 3ds Max есть шесть способов создания размытой анимации, применяемой для имитации реального размытия и сглаживания движущихся объектов. Рассмотрим эти способы в общих чертах.
Object Motion Blur (Размытие объекта в движении) Object Motion Blur (Размытие объекта в движении) — применяется к быстро движу щимся объектам сцены для создания более сглаженного движения. Такое размы тие базируется на визуализации нескольких копий объекта между кадрами, а за тем визуализации их вместе (рис. 6.6).
Рис. 6.6. Кадр, визуализированный с использованием Object Motion Blur (Размытие объекта в движении)
В реальности движение камеры не оказывает влияния на такое размытие, и поэто му Object Motion Blur (Размытие объекта в движении) обычно не используется для имитации размытия, создаваемого камерой. В этом случае применяется Image Motion Blur (Размытие картинки в движении) или Scene Motion Blur (Размытие сце ны в движении).
Размытие движущихся объектов сцены
219
Чтобы размыть объект в движении, сделайте следующее. 1.
Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Object (Объект).
2.
Откройте окно Render Scene (Визуализация сцены), нажав клавишу F10. В облас ти Object Motion Blur (Размытие объекта в движении) свитка Default Scanline Renderer вкладки Renderer (Визуализатор) установите флажок Apply (Применить).
Image Motion Blur (Размытие картинки в движении) Image Motion Blur (Размытие картинки в движении) — один из способов получения смазанного движения путем размытия изображения после визуализации кадра. Этот способ базируется на информации в соседних кадрах и используется для соз дания эффекта размытия камерой (рис. 6.7).
Рис. 6.7. Кадр, визуализированный с использованием Image Motion Blur (Размытие картинки в движении)
В связи с тем что размытие картинки основывается не на визуализации копий объекта, а на размытии визуализированного изображения, существуют ограниче ния, которые необходимо учитывать, применяя этот способ.
Размытие не учитывает перекрывающиеся объекты, поэтому появляются «провалы» в визуализированном изображении.
Объекты с измененной топологией не размываются. К ним относятся NURBS объекты или объекты, к которым применена карта Displacement (Смещение).
220
Глава 6. Технологии вывода анимированных изображений
Image Motion Blur (Размытие картинки в движении) не отображается в отраже ниях, которые воспринимают только реальные объекты. Это значит, что если, например, мимо витрины магазина (в трехмерной сцене) будет проноситься машина, то в витрине не будет видно размытия этой машины, а окажется толь ко четкое ее отражение, несмотря на то что с помощью Image Motion Blur (Раз мытие картинки в движении) вы получите размытие самой машины.
Чтобы размыть картинку в движении, сделайте следующее. 1.
Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение).
ПРИМЕЧАНИЕ ___________________________________________________________________ Обратите внимание на то, что вы не можете для одного объекта включить одновреB менно параметр Object (Объект) и Image (Изображение). При необходимости можно произвести повторную визуализацию отдельного слоя для последующего использоB вания в Video Post (Видеомонтаж) или программах постобработки.
2.
Откройте окно Render Scene (Визуализация сцены), нажав клавишу F10. В облас ти Image Motion Blur (Размытие картинки в движении) свитка Default Scanline Renderer вкладки Renderer (Визуализатор) установите флажок Apply (Применить).
Motion Blur Rendering Effect (Размытие картинки как эффект визуализации) Motion Blur Rendering Effect (Размытие картинки как эффект визуализации), как и Image Motion Blur (Размытие картинки в движении), базируется на использова нии свойств реальной камеры и имеет аналогичный результат визуализированно го кадра (рис. 6.8). Для использования этого способа размытия сделайте следующее. 1.
Щелкните на объекте правой кнопкой мыши, в появившемся контекстном меню выберите строку Object Properties (Свойства объекта). В области Motion Blur (Размытие движения) появившегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображение).
2.
Откройте окно Environment and Effects (Окружающая среда и эффекты), выпол нив команду RenderingEffects (ВизуализацияЭффекты). Щелкните на кноп ке Add (Добавить) и выберите строку Motion Blur (Размытие движения).
Scene Motion Blur (Размытие сцены в движении) Scene Motion Blur (Размытие сцены в движении) — относительно «дешевый» спо соб получения размытого изображения с использованием модуля Video Post (Ви деомонтаж). В данном случае при визуализации создается след позади всех дви
Размытие движущихся объектов сцены
221
Рис. 6.8. Кадр, визуализированный с использованием Motion Blur Rendering Effect (Размытие картинки как эффект визуализации)
жущихся объектов сцены. Это получается при помощи многопроходной визуали зации в промежутке между двумя соседними кадрами, которые затем объединяют ся в одном кадре (рис. 6.9).
Рис. 6.9. Кадр, визуализированный с использованием модуля Video Post (Видеомонтаж)
222
Глава 6. Технологии вывода анимированных изображений
Для добавления или редактирования Scene Motion Blur (Размытие сцены в движе нии) нужно сделать следующее. 1.
Открыть окно Video Post (Видеомонтаж), выполнив команду RenderingVideo Post (ВизуализацияВидеомонтаж) главного меню.
2.
Щелкнуть на кнопке Add Scene Event (Добавить событиесцену) и установить флажок Scene Motion Blur (Размытие сцены в движении) в области Scene Options (Параметры сцены) появившегося окна.
MultiAPass Rendering Effect (Многопроходный эффект визуализации) Multi-Pass Rendering Effect (Многопроходный эффект визуализации) использует многопроходную визуализацию одного кадра, базирующуюся на смещении каме ры в каждом проходе. Многопроходная визуализация создает эффект размытия, который фиксирует пленка в определенном состоянии камеры (рис. 6.10).
Рис. 6.10. Кадр, визуализированный с использованием MultiBPass Rendering Effect (Многопроходный эффект визуализации)
Данный эффект размытия базируется на свойствах камеры, поэтому его можно предварительно просмотреть в окне вида из камеры. Необходимое условие применения этого способа размытия изображения — при сутствие в сцене камеры, причем для визуализации должен использоваться вид из камеры. Кроме того, нужно выполнить следующее. 1.
Выберите в сцене объекткамеру, вид из которой будет визуализироваться, и перейдите на вкладку Modify (Изменение) командной панели.
Размытие движущихся объектов сцены
223
2.
В области Multi-Pass Effect (Многопроходный эффект) свитка Parameters (Па раметры) установите флажок Enable (Включить) и выберите из раскрывающе гося списка строку Motion Blur (Размытие движения).
3.
При необходимости измените значения параметров в свитке Motion Blur Parameters (Параметры размытия движения) настроек камеры.
Particle Motion Blur (Размытие движения частиц) Particle Motion Blur (Размытие движения частиц) — является результатом примене ния прозрачности и продолжительности движения частиц, основанной на их ско рости (рис. 6.11). Такое размытие достигается путем комбинирования назначен ного частицам материала и параметров системы частиц.
Рис. 6.11. Кадр, визуализированный с использованием Particle Motion Blur (Размытие движения частиц)
Для применения данного типа размытия необходимо создать для частиц материал с картой прозрачности Particle MBlur (Размытие движения частиц). С картой Particle MBlur (Размытие движения частиц) работают такие системы частиц: PArray (Мас сив частиц), PCloud (Облако частиц), Super Spray (Супербрызги) или Spray (Брыз ги). Кроме того, для использования Particle Motion Blur (Размытие движения час тиц) нужно сделать следующее. 1.
В области Spin Axis Controls (Управление осями вращения) свитка Rotation and Collision (Поворот и столкновения) настроек системы частиц установите пере ключатель в положение Direction of Travel/Mblur (Направление движения/раз мытие движения). В этой же области задайте значение параметра Stretch (Рас тяжение) больше нуля.
224 2.
Глава 6. Технологии вывода анимированных изображений
В области Standard Particles (Типовые частицы) свитка Particle Type (Тип час тиц) выберите тип частиц, отличный от Constant (Постоянный) и Facing (Плос кие), так как с этими двумя типами отображения частиц размытие не работает.
СОВЕТ ___________________________________________________________________________ Кроме описанных выше способов размытия движения, использование которых может многократно увеличить время визуализации, существуют фильтры в графических программах (например, Adobe Photoshop) или программах постобработки (Adobe After Effect или Autodesk Combustion). Такие фильтры могут существенно сократить затраты времени на получение убедительного эффекта размытия объектов в движеB нии. Если вы используете данные фильтры, то лучше выполнять визуализацию послеB довательности кадров анимации.
Технология сжатия видео Сжатие — это процесс удаления части данных или их реструктуризация с целью уменьшения размера файла. Для уменьшения размера файлов анимации или циф рового видео разработаны различные методы сжатия данных. Когда программа записывает результат визуализации в файл с расширением AVI, происходит сжа тие каждого кадра на основе выбранного модуля. Такие модули в общем слу чае называют кодеками (сodec — COmpressor/DECompressor). Сжатие можно разделить на несколько категорий, основными из них являются сжатие без потерь и сжатие с потерями. При сжатии без потерь качество анимации сохраняется, при этом используется более компактный метод записи данных. Один из методов, с помощью которого выполняется такое сжатие, называется Run Length Encoding (RLE). Он осуществля ет поиск строк идентичной информации (например, непрерывные области одина кового цвета) и использует алгоритм для кодирования цвета и местоположения повторяющихся данных. Такой способ кодирования очень эффективен для графики с ровными большими областями одинакового цвета и не является оптимальным для анимации с большим количеством цветовых пятен (например, оцифрованное видео). Сжатие с потерями может значительно уменьшить размеры файлов путем изме нения или удаления некоторых данных. Самые популярные типы сжатия с поте рями уменьшают насыщенность цвета или используют алгоритмы сжатия для устранения незначительных отличий в цветах пикселов, а также удаляют из палит ры некоторые цвета в соответствии с человеческим восприятием. При использо вании таких кодеков можно управлять величиной потерь, а следовательно, и каче ством файла и его размером. Данные кодеки эффективны в первую очередь при записи анимации, комбинируемой с оцифрованным видео. Кодеки также делятся по тому, как выполняется сжатие во времени. Существует два типа анализа кадров: пространственный и временной. Пространственное сжа тие исследует каждый кадр, удаляя из него часть информации. Временное сжатие сравнивает кадры на определенном участке времени, анализирует происходящие изменения и запоминает только измененную информацию.
Технология сжатия видео
225
Файлы с расширением AVI можно сжимать с применением любого программного кодека, которые устанавливаются вместе с операционной системой или продукта ми мультимедиа, а также кодеками независимых разработчиков. При выборе AVI в качестве формата для сохранения визуализации программа 3ds Max предложит вам выбрать кодек из установленных на вашем компьютере (рис. 6.12). Среди воз можных вариантов есть и Uncompressed (Несжатое).
Рис. 6.12. Окно настроек сжатия выходного видеофайла с открытым списком доступных кодеков
Выбор кодека определяется в первую очередь задачами, операционной системой, для которой предназначен файл анимации, приложением и носителем данных. В последнее время широкое распространение получили кодеки Windows Media Video (WMV), MPEG2 и MPEG4. Алгоритм сжатия этих кодеков позволяет по лучить анимацию высокого качества при относительно небольшом размере фай ла. Если речь идет о возможном воспроизведении файла анимации на различ ных платформах, то необходимо использовать несжатое AVI или формат записи QuickTime (QT). ВНИМАНИЕ ______________________________________________________________________ При записи анимации без сжатия или при визуализации последовательности кадров необходимо учитывать, что при этом итоговые файлы имеют большой размер (иногB да более 20–40 Гбайт). В связи с этим необходимо предварительно выполнить приB близительный расчет требуемого дискового пространства, визуализировав нескольB ко типовых кадров.
226
Глава 6. Технологии вывода анимированных изображений
Сетевая визуализация При разговоре о визуализации анимации нельзя не упомянуть возможность рабо ты в 3ds Max по сети. Визуализация анимации может потребовать значительное количество времени (которое иногда измеряется сутками) даже для современного компьютера. Именно для работ, когда необходимо визуализировать большое ко личество кадров, лучше всего подойдет визуализация с использованием компьюте ров, объединенных в сеть. Используя мощности других компьютеров, можно значи тельно ускорить процесс визуализации.
СОВЕТ ___________________________________________________________________________ Кроме рабочих групп внутри сети, для сетевой визуализации можно использовать компьютеры, подключенные только к Интернету. Полезным может быть также примеB нение для сетевой визуализации одного (например, домашнего) компьютера, котоB рый будет в фоновом режиме выполнять отправленные задания, а вы — продолжать работать в своих любимых приложениях. Если вы являетесь счастливым обладателем двух домашних компьютеров, то не соB ставит труда объединить их в сеть для визуализации. Для этого в каждом компьютере должен быть сетевой адаптер (может быть интегрирован в материнскую плату), такB же вам понадобится кроссBкабель для их прямого соединения (схему разводки конB тактов можно найти в Интернете или приобрести готовый кабель).
Для запуска сетевой визуализации на компьютерах должны быть установлены три компонента 3ds Max.
Network Manager (Менеджер сети) — должен быть установлен в качестве фай лового сервера на одном из компьютеров рабочей группы, участвующих в се тевой визуализации. Программа Network Manager (Менеджер сети) (рис. 6.13) распределяет и контролирует ход выполнения сетевых задач визуализации. Ее главная задача заключается в наблюдении за распределением кадров каждо му из компьютеров, находящихся в сети, а также в организации очереди задач. Несмотря на то что менеджер может работать на любом компьютере, предпоч тительно запускать его на более быстром компьютере, имеющем значительное количество свободного места на жестком диске.
Network Rendering Server (Сервер сетевой визуализации) — устанавливается на всех компьютерах сети, включая и тот, на который устанавливается менеджер сети. После запуска сервер сетевой визуализации (рис. 6.14) отправляет ме неджеру свой IPадрес для регистрации и включения в сетевую визуализацию. Затем менеджер сети отсылает серверу задание на визуализацию кадров. После получения задания сервер запускает 3ds Max в специальном серверном режи ме и начинает визуализацию кадра. По окончании визуализации сервер от правляет готовый кадр в папку, указанную в настройках, и получает от менед жера новое задание на визуализацию. Когда выполнена вся визуализация, сервер закрывает приложение.
Сетевая визуализация
227
Рис. 6.13. Окно компонента сетевой визуализации Network Manager (Менеджер сети)
Рис. 6.14. Окно компонента сетевой визуализации Network Rendering Server (Сервер сетевой визуализации)
ПРИМЕЧАНИЕ ___________________________________________________________________ Серверный режим не влияет на использование программы для моделирования и виB зуализации в обычном режиме.
Queue Monitor (Диспетчер очереди) — приложение управления сетевой визуали зацией (рис. 6.15). Его можно установить на всех компьютерах сети. Позволяет
228
Глава 6. Технологии вывода анимированных изображений
не только просматривать ход выполнения задания, но и перераспределять за дания, менять очередность их выполнения, отключать и подключать к визуа лизации компьютеры группы и выполнять многое другое.
Рис. 6.15. Окно компонента сетевой визуализации Queue Monitor (Диспетчер очереди)
ВНИМАНИЕ ______________________________________________________________________ Правами управления и редактирования заданий обладает тот компьютер, на котором Queue Monitor (Диспетчер очереди) был запущен первым, все остальные диспетчеры будут работать в режиме просмотра. В этом случае в строке заголовка окна програмB мы указывается, какой компьютер сети обладает правом редактирования заданий.
Все три перечисленных выше компонента инсталлируются при установке про граммы 3ds Max 2008. Их можно запустить из каталога установки (по умолчанию C:\Program Files\Autodesk\Backburner) или из списка установленных программ. Например, для запуска менеджера сети в среде Windows XP выполни те команду ÏóñêÂñå ïðîãðàììûAutodeskBackburnermanager. Аналогичным образом запускаются сервер и диспетчер очереди.
ВНИМАНИЕ ______________________________________________________________________ Для сетевой визуализации в программе 3ds Max 2008 необходимо использовать Windows XP Professional или Windows 2000. Боле ранние операционные системы сеB мейства Windows (Windows 95/98/Me/NT4) не поддерживаются.
Если у вас уже есть локальная сеть с настроенной конфигурацией, то нет необхо димости чтолибо менять — сетевая визуализация будет работать с существующи
Сетевая визуализация
229
ми настройками. В противном случае вам нужно установить и настроить на каж дом компьютере сети протокол TCP/IP (сокращенно от Transmission Control Protocol/Internet Protocol — протокол управления передачей/межсетевой прото кол), представляющий собой «язык общения» между компьютерами, объединен ными в сеть. После того как все компьютеры рабочей группы будут сконфигурированы для ра боты в сети, можно приступать к сетевой визуализации. Для этого должны быть выполнены несколько условий. На всех компьютерах должна быть установлена программа 3ds Max 2008 и запущена служба Network Rendering Server (Сервер сете вой визуализации), а на одном из компьютеров рабочей группы к тому же должен быть запущен Network Manager (Менеджер сети). На одном из компьютеров следу ет открыть общий доступ к каталогу, в котором будут сохраняться визуализи рованные изображения. Путь к этому каталогу должен быть указан с учетом правил Universal Naming Convention (UNC) (соглашение по универсальному наименова нию), например: \\имя_компьютера\диск\каталог\имя_файла. Обратите вни мание на то, что строка начинается с двух слэшей. Кроме того, можно указать ло кальный каталог для сохранения файлов на каждом компьютере, выполняющем визуализацию. В этом случае такой каталог должен присутствовать на каждом компьютере рабочей группы. Чтобы запустить сетевую визуализацию, необходимо выполнить соответствующие настройки в окне Render Scene (Визуализация сцены). Кроме стандартных настро ек размера выходного изображения и параметров области Options (Параметры), необходимо в области Time Output (Интервал вывода) свитка Common Parameters (Общие параметры) указать диапазон кадров для визуализации. После этого в об ласти Render Output (Вывод визуализации) необходимо установить флажок Save File (Сохранить файл) и щелкнуть на кнопке Files (Файлы), чтобы выбрать ката лог для сохранения.
ПРИМЕЧАНИЕ ___________________________________________________________________ Не забывайте о том, что, даже если вы используете один компьютер, необходимо укаB зывать сетевой путь к каталогу, в котором будут сохраняться кадры.
Затем следует установить флажок Net Render (Сетевая визуализация) в области Render Output (Вывод визуализации). После щелчка на кнопке Render (Визуализа ция) появится окно Network Job Assignment (Назначение сетевого задания). В об ласти Enter Subnet Mask (Ввод маски подсети) этого окна должен быть установ лен флажок Automatic Search (Автоматический поиск). Далее следует щелкнуть на кнопке Connect (Соединить). В результате в поле All Servers (Все серверы) отобра зятся имена всех компьютеров, входящих в рабочую группу (рис. 6.16). В области Options (Параметры) следует установить флажок Include Maps (Включая карты текстур), что позволит вместе с заданием отправлять серверам все текстур ные карты, примененные в сцене.
230
Глава 6. Технологии вывода анимированных изображений
Рис. 6.16. Окно Network Job Assignment (Назначение сетевого задания)
СОВЕТ ___________________________________________________________________________ Чтобы компьютеры рабочей группы использовали текстурные карты, находящиеся на одном компьютере, и текстурные карты не надо было бы отправлять вместе с заданиB ем, необходимо для всех файлов текстур прописать сетевые пути (аналогично указанB ному выше пути для сохранения кадров визуализации).
Осталось только щелкнуть на кнопке Submit (Подтвердить) — и запустится про цесс визуализации. Его можно контролировать при помощи компонента Queue Monitor (Диспетчер очереди).
Общие рекомендации по визуализации видеоизображений Подводя итоги сказанного в этой главе, хотелось бы отметить, что работа с анима цией представляет определенные трудности не только на стадии моделирования
Общие рекомендации по визуализации видеоизображений
231
и настройки просчета, но и при последующей визуализации. Обратите внимание на некоторые общие рекомендации по визуализации видеоизображений.
Прежде всего определитесь с целями и задачами предстоящей работы. Имен но они во многом могут повлиять на ход моделирования, степень детализации, разрешение выходного изображения, глубину цвета, поля и т. д. Если вы вы полняете заказ, то должны получить у заказчика проекта максимум информации. Может оказаться так, что ваша работа будет, например, частью материала для видеоклипа, который должен совмещать в себе реальное видео и анимацию. И хорошо еще, если работа над всеми частями клипа ведется параллельно. А если вдруг видеоматериал уже сняли и он должен «вживляться» в анима цию, которую создаете вы? В этом случае вам будет необходимо уже на ста дии моделирования учитывать особенности видео, например цветовую гамму, свет, положение камеры и т. д.
Определитесь с разрешением вывода изображения: для просмотра на мониторе компьютера и на экране телевизора используются совершенно разные форма ты. Для монитора свойственны стандартные экранные разрешения, в то время как для показа на телеэкране необходимо учитывать не только размер, но и стан дарт видеосигнала.
Установите форматное соотношение пиксела: для показа на мониторе ком пьютера это 1, а для стандартов телевидения — 0,9 или 1,06.
В зависимости от выбранного формата видео задайте значение кадров в секун ду (fps). Для стандарта PAL и SECAM это значение равно 25 кадров в секунду, а для NTSC — 30. К видео, предназначенному для просмотра на компьютере, жестких требований нет, но можно рекомендовать 30 кадров в секунду для по лучения более сглаженного движения.
При создании анимации для телевидения, скорее всего, понадобится обработ ка полей. В связи с этим установите порядок полей — нечетное/нижнее (Odd/ Lower) или четное/верхнее (Even/Upper) — в зависимости от требований системы видеомонтажа (порядок следования полей обычно указывает за казчик).
Используйте функцию проверки видеоцветов. Это требование относится больше к телевизионным форматам, так как телевизоры имеют ограниченные возможности по сравнению с компьютерными мониторами.
Видео предпочтительнее сохранять с использованием последовательности кадров. Для этого есть несколько причин: •
можно использовать сетевую визуализацию, что существенно ускорит про цесс расчетов;
•
для кадров будут доступны форматы с возможностью сохранения не толь ко альфаканала, но и других дополнительных каналов (форматы RLA и RPF). Это может быть существенным при последующей постобработке в специализированных приложениях, например Combustion;
•
в отношении последовательности кадров можно быстро выполнить размы тие, цветокоррекцию, настройку яркости, контрастности и применить другие
232
Глава 6. Технологии вывода анимированных изображений
эффекты, доступные в программах редактирования растровой графики и постобработки. Например, в программе Photoshop можно создать макро последовательность (Action (Действие)) и с ее помощью выполнить пакет ную обработку всей папки с файлами; •
при изменении части анимации не придется визуализировать анимацию полностью — достаточно будет заменить изменившиеся кадры.
Для достижения лучшего качества выводите последовательные изображения с помощью сжатия без потерь (форматы BMP, TGA или TIFF). Если нужно экономить дисковое пространство, то воспользуйтесь форматом JPG с очень низким уровнем сжатия.
Если в дальнейшем объекты анимации будут редактироваться, то возможным решением по сокращению объемов переделок может стать послойное выпол нение анимации. В этом случае анимированные объекты визуализируются отдельным слоем с альфаканалом для последующей сборки в программах постобработки или с использованием модуля Video Post (Видеомонтаж).
Запустив визуализацию последовательности кадров, убедитесь в том, что кад ры формируются правильно. Это можно сделать как с использованием про грамм для просмотра растровой графики, так и при помощи модуля RAM Player (RAMпроигрыватель) программы 3ds Max.
Часть 2
Практический курс Глава 7. Освещение Глава 8. Анимация сцен Глава 9. Практическое моделирование Глава 10. Текстурирование Глава 11. Визуализация
234
Часть 2. Практический курс
До сих пор речь шла об интерфейсе программы и методах работы — теперь же вы с головой окунетесь в мир моделирования. Все упражнения, представленные в кни! ге, не зависят друг от друга, поэтому вам не обязательно выполнять их последова! тельно. Каждое упражнение посвящено определенной теме создания трехмерной графики. Опыт практической работы с приложением показал, что каждый урок рождает новые идеи, которые могут быть в дальнейшем использованы в ваших собственных работах. Все главы сопровождаются файлами упражнений, находя! щимися на прилагаемом к книге DVD. Там же можно посмотреть и цветные ил! люстрации.
Глава 7
Освещение • Основы освещения в трехмерной графике • Луч лазера • Объемный свет • Использование базовых источников света в интерьере
236
Глава 7. Освещение
Правильное освещение значительно усиливает впечатление от простой сцены. Оно не только позволяет лучше передать форму предметов, но и создает общее настроение в сцене. При помощи ярких цветов и обилия света можно получить эффект праздника, а приглушенный свет и затененные предметы создадут ощуще! ние напряженности и тревоги. Свет — это мощный инструмент в руках разработ! чика трехмерной графики, нужно только уметь правильно им пользоваться. В этой главе вы научитесь правильно ставить свет и строить тени, а также познакомитесь с объемным (видимым) светом.
Основы освещения в трехмерной графике Правильно установленный свет может значительно улучшить посредственную сцену, и, наоборот, если источники света расставлены произвольным образом, даже хорошо смоделированная сцена покажется «бедной». Грамотное освещение опре! деляет общую атмосферу изображения. При помощи света можно передать на! строение, напряженность, радость, тоску, подчеркнуть достоинства и скрыть недо! статки, а также сделать многое другое. Существует несколько вариантов освещения. Наиболее часто встречаются два из них: трехточечное и местное (зонное). Местное применяется для освещения от! дельных участков сцены и используется чаще всего в случае, когда сцена большая и ее невозможно эффективно осветить при помощи трехточечного освещения. Трехточечное освещение является базовым в трехмерном моделировании. В его основе лежат три источника света: ключевой, контурный и заполняющий (иногда можно встретить другие определения). Ключевой свет является основным. Обычно это самый яркий и освещающий боль! шую часть сцены свет. Кроме того, это тот источник света, благодаря которому предметы в сцене отбрасывают тень. Контурный свет используется для разделения предметов и фона, что, в свою оче! редь, определяет глубину пространства. Такой источник света обычно находится позади объектов сцены и по интенсивности слабее ключевого света. СОВЕТ ___________________________________________________________________________ Технические приемы и принципы работы с источниками света в трехмерных сценах не отличаются от используемых в фотографии, кино, театре и т. д. При желании боль& ше узнать о типах освещения и их применении вы можете воспользоваться соответ& ствующей литературой.
Освещение часто является фундаментом для цветового моделирования, прида! ющего сцене акцент и глубину. Предметы в сцене не будут выглядеть плоски! ми, если их прорисовать светотенью, то есть распределить освещенность по форме в зависимости от положения ее различных поверхностей по отношению к ис! точнику света. Чтобы предметы выглядели объемными, на них должны присут! ствовать свет, блик, полутон, а на самой затененной части поверхности — собствен!
Основы освещения в трехмерной графике
237
ная тень (рис. 7.1). Последняя всегда в той или иной степени подсвечена све! том, отраженным от других предметов, так называемым рефлексом. Наконец, предметы отбрасывают от себя на соседние предметы падающую тень, которая обычно бывает темнее собственной тени. Только при правильном соотношении этих световых фаз можно с предельной правдоподобностью передать объем пред! мета.
Рис. 7.1. Градации светотени
В природе каждый объемный предмет определенного цвета ограничивается кри! выми или плоскими поверхностями, которые при освещении попадают в разные световые и цветовые условия. Лучи света, падая на различные поверхности пред! метов, освещают их неравномерно, отчего поверхности выглядят различными по тону и цвету. Одни части поверхности получают больше света, другие — меньше. Степень освещенности предмета изменяется прежде всего в зависимости от рас! стояния до источника света: чем ближе находится источник света, тем сильнее освещение. Степень освещенности поверхности зависит от угла падения лучей света на по! верхность, а также от фактуры и цвета самой поверхности. Гладкая, полированная поверхность лучше отражает свет, чем шероховатая или матовая. Поверхность темного цвета поглощает больше света, чем светлая. На очень темных и на очень светлых поверхностях светотеневые градации видны плохо, так как глаз не способен
238
Глава 7. Освещение
различать переходы слишком слабых (рис. 7.2) или сильных (рис. 7.3) световых оттенков.
Рис. 7.2. Затемненная поверхность предмета
Рис. 7.3. Засвеченная поверхность предмета
Задача разработчика трехмерной графики состоит в том, чтобы найти правильное соотношение световых фаз за счет настроек и расположения источников света в пространстве виртуальной сцены, а также использования ее общей освещеннос! ти и создания эффекта глобального освещения. На предметах со сложным рельефом или орнаментом наиболее ясно детали вид! ны в полутени, в тени их четкость понижена. Собственная тень всегда в той или иной степени подсвечена светом, отраженным от других предметов. Падающая тень не имеет резких разграничений с собственной тенью. Тональности их сбли! жены, контуры основания предмета сливаются с горизонтальной плоскостью. Чем ближе к предмету падающая тень, тем она темнее. Такая закономерность сохраня! ется на переднем плане. Внутри и на дальнем плане тень высветляется рефлекса! ми от окружения (рис. 7.4).
Рис. 7.4. Падающая тень
Рефлексы не только высветляют тени, но так! же придают им свой цветовой оттенок. Свет, полутень, тень имеют на поверхности предме! та определенное местоположение, а блик — нет, так как зависит не только от направле! ния источника света, но и от местоположения камеры (точки в пространстве, с которой мы видим предмет). На предметах с блестящими (глянцевыми) поверхностями блики и реф! лексы ярче и определеннее по своим грани! цам, чем на матовых и шероховатых. Форма и цвет их находятся в прямой зависимости от формы и цвета прямого или отраженного ис! точника света.
Чтобы лучше понять принцип действия источников света, создайте сцену. Ис! пользуйте для этого простые примитивы Plane (Плоскость) и Teapot (Чайник). Рас! положите камеру и источники света так, как показано на рис. 7.5 и 7.6.
Основы освещения в трехмерной графике
Рис. 7.5. Вид сцены в окне проекции Top (Cверху)
239
Рис. 7.6. Вид сцены в окне проекции Front (Спереди)
Рассмотрим более подробно процесс создания сцены, с которой вы будете работать в дальнейшем. Последовательность создания любой сцены приблизительно такова: сначала со! здаются объекты, затем располагается и настраивается камера, и только после это! го ставится свет. Прежде всего создадим плоскость, на которой будет располагаться чайник. Для этого выполните команду CreateStandard PrimitivesPlane (СоздатьПростые примитивыПлоскость) главного меню и в окне проекции Top (Сверху) построй! те плоскость произвольного размера. Для создания примитива Teapot (Чайник) выполните команду CreateStandard PrimitivesTeapot (СозданиеПростые примитивыЧайник). В данном случае размер и плотность сетки чайника не имеют значения. Единственное требование — чтобы он располагался на плоскости и был сопоставим с ней по размерам. СОВЕТ ___________________________________________________________________________ Возможно, вам будет удобнее использовать для создания объекта вкладку Create (Соз& дание) командной панели.
Камера создается аналогичным способом. Выполните команду CreateCameras Target Camera (СозданиеКамерыНаправленная камера). После того как постро! ен объект и в сцене установлена камера, направленная на объект!чайник, можно переходить к созданию источников света. Прежде чем создавать источники света, нужно отметить, что освещение сцены за! висит также от настроек подсветки в окне Environment and Effects (Окружающая среда и эффекты), которые равномерно распределяют начальный уровень осве! щенности всех объектов. Начинать расстановку источников света в сцене следует с основного освещения, то есть с ключевого. Примерно 80 % сцены будет освещено именно этим источником
240
Глава 7. Освещение
света, поэтому необходимо правильно расположить его в сцене. Он должен в целом освещать всю сцену (или нужную часть). Такой источник света не должен быть слишком ярким, чтобы не засветить предметы, или темным, иначе исчезнет объем в визуализированном изображении. На рис. 7.7 показано, что получилось у меня по! сле визуализации сцены с одним ключевым источником света. В данном случае я ис! пользовал Target Spot (Направленный с целью) с затуханием, чтобы оттенить задний план, на котором ничего нет (если бы в глубине сцены присутствовали другие объек! ты, то необходимо было бы их показать, увеличив световое пятно). Для его построе! ния выполните команду CreateLightsStandard LightsTarget Spotlight (Создание Источники светаСтандартные источники светаНаправленный с целью). Первое, что бросается в глаза при взгляде на готовое изображение, — отсутствие падающей тени, непонятное положение чайника в пространстве (он то ли стоит на плоскости, то ли висит в воздухе). Активизируйте в настройках источника света тень. Для этого в области Shadows (Тени) свитка General Parameters (Общие параметры) настроек источника света в нижней части командной панели установите флажок On (Включить). Это позво! лит источнику света генерировать простые тени от объектов сцены (рис. 7.8).
Рис. 7.7. Сцена, освещенная ключевым источником света
Рис. 7.8. Появилась тень, и положение чайника на плоскости стало более естественным
Теперь чайник не «висит» в воздухе, а стоит на плоскости. Но вместе с тем он стал сливаться с тенью, в результате чего частично пострадало восприятие объема. Добавим в сцену источник света для контурного освещения. Для этой цели ис! пользуем еще один Target Spot (Направленный с целью) (на рис. 7.5 и 7.6 он распо! ложен справа от камеры). Естественно, что интенсивность его несколько ниже, чем ключевого источника, так как этот источник света является второстепенным и его основная задача в данном случае — «оторвать» чайник от фона. Чтобы дать общее представление о том, какая интенсивность построенных источников света у меня в сцене, приведу значения параметров Multiplier (Яркость): для контурного источ! ника света — 0,52, для ключевого — 1,3. Выполните последнюю настройку для данного источника света, сняв флажок Specular (Цвет блеска), который находится в свитке Advanced Effects (Дополнитель!
Основы освещения в трехмерной графике
241
ные эффекты). Для наших целей достаточно, чтобы этот источник света освещал область диффузного отражения, не создавая области зеркального отражения. В ре! альности это обычно отраженный свет от других предметов, который не имеет большой интенсивности и не способен генерировать яркие блики. Как только вы добавили этот источник света, объекты приобрели объем, а сцена — пространство (рис. 7.9). Применим небольшой трюк, который поможет улучшить восприятие предмета и сделать его цвет более естественным. Для этого сделаем источник контурного света цветным, что поможет передать цвет, отраженный от поверхности, на кото! рой стоит чайник. Естественно, применяемый к источнику света цвет должен со! ответствовать цвету той поверхности, которая будет отражать свет (в нашем случае это плоскость, на которой стоит чайник). Цвет этой поверхности красно!коричне! вый, значит, именно такой цвет должен присутствовать в свитке Intensity/Color/ Attenuation (Интенсивность/цвет/затухание) (рис. 7.10).
Рис. 7.9. Падающая тень
Рис. 7.10. Цвет, добавленный источнику света, придал чайнику более естественную окраску
ПРИМЕЧАНИЕ ___________________________________________________________________ Для просмотра цветных иллюстраций к упражнению воспользуйтесь прилагаемым к книге DVD.
Общее восприятие картины немного портит то, что на чайнике слишком темная собственная тень. Исправить положение поможет третий источник света — запол! няющий. Его назначение — смягчить тени и полутени на предмете. Как и контур! ный, заполняющий свет не должен быть ярким и не должен создавать на поверх! ности объектов блики. В данном случае для построения источника освещения воспользуемся точеч! ным источником света Omni (Всенаправленный). Для этого выполните команду CreateLightsStandard LightsOmni (СозданиеИсточники светаСтандартные источники светаВсенаправленный). Данный источник освещения должен нахо! диться между двумя существующими источниками и быть позади камеры. Как уже
242
Глава 7. Освещение
говорилось выше, назначение его заключается в том, чтобы равномерно заполнить светом промежуток между самым ярким местом на объекте и его собственной тенью. Как и для контурного, запретите в настройках заполняющего источника света соз! дание области зеркального отражения, сняв флажок Specular (Цвет блеска). После этого можно посмотреть на результаты сделанных настроек (рис. 7.11). Правильное расположение теней очень влияет на восприятие сцены зрителем. Управление тенями играет ключевую роль в использовании источников света. С чрезмерным или недостаточным количеством теней сцена не будет выглядеть реалистичной и убедительной.
Рис. 7.11. В сцену добавлен заполняющий свет
Отбрасывание теней представляет собой сложный процесс, именно тени добавляют в завершенную сцену реализм. Тени, по! строенные посредством трассировки лучей, требуют большого количества времени для визуализации, a Shadow Map (Карта теней) в дополнение к используемому времени ви! зуализации — еще и ресурсов памяти. Огра! ничение падения точечного света только той областью, которая требует теней, сэкономит время визуализации. Уменьшение количе! ства объектов, отбрасывающих тени, при помощи настроек объекта или источника света также сократит расходы ресурсов на визуализацию.
По умолчанию источники света работают с тенью Shadow Map (Тип отбрасываемой тени). Это относительно быстрая для просчета тень, но вместе с тем и наименее точная с точки зрения трассировки лучей и качества. Более правильную с физи! ческой точки зрения тень дает Ray Traced Shadows (Трассированная тень), но она так же, как и тень Shadow Map (Тип отбрасываемой тени), не становится светлее по мере удаления от предмета. Появление типа Area Shadows (Площадная тень) реши! ло эту проблему. В некоторой степени недостатком Shadow Map (Тип отбрасываемой тени) и Area Shadows (Площадная тень) является значительное увеличение времени просчета сцены, особенно если в ней используется несколько источников света с такой тенью, а у Area Shadows (Площадная тень) указано большое значение размытия тени на краях. До создания таких теней существовали подключаемые модули или сценарии, ко! торые генерировали по кругу дополнительные источники света на небольшом рас! стоянии друг от друга. Таким образом, тени, создаваемые многими источниками, перекрывались при визуализации и давали размытый контур. Существует более простой и, что самое приятное, легкоуправляемый способ, который, однако, имеет некоторые ограничения. Он заключается в том, чтобы назначить источнику света с отрицательным значением параметра Multiplier (Яркость) созданную пользовате! лем текстурную карту Projector Map (Карта проектора).
Основы освещения в трехмерной графике
243
Для построения такой карты нужно выделить источник света, который будет от! брасывать тень, и в любом окне проекции (например, в окне Left (Cлева)) выбрать вид из этого источника. Для этого щелкните на названии окна проекции правой кнопкой мыши, в результате чего появится контекстное меню (рис. 7.12), в кото! ром следует выбрать нужный источник света (в моем случае это Spot01), выпол! нив команду ViewsSpot01 (ВидОбъект Spot01). Если вы все сделали правильно, то в окне проекции будет такой вид, как будто мы смотрим из камеры (рис. 7.13).
Рис. 7.12. Контекстное меню для выбора вида отображения
Рис. 7.13. Вид со стороны источника света Spot01
Далее нужно исключить из визуализации все объекты, которые не будут отбрасы! вать тень. Сцена содержит всего два геометрических объекта: Plane (Плоскость) и Teapot (Чайник), но их может быть гораздо больше. Чтобы исключить объект из визуализации, выполните следующие действия. 1.
Щелкните на нужном объекте правой кнопкой мыши.
2.
В появившемся контекстном меню выберите пункт Object Properties (Свойства объекта). В результате откроется одноименное окно.
3.
Снимите флажок Renderable (Визуализируемый) в области Rendering Control (Управление визуализацией).
4.
Щелкните на кнопке OK для подтверждения выполненных изменений.
СОВЕТ ___________________________________________________________________________ Можно исключить объекты из визуализации и другим способом. Для этого выделите все «ненужные» геометрические объекты и щелкните на них правой кнопкой мыши. В появившемся контекстном меню выберите пункт Hide Selection (Спрятать выде& ленное).
244
Глава 7. Освещение
Визуализируйте стандартными средствами вид из окна, в котором установлен ис! точник света, с типовым значением разрешающей способности 800 × 600. После этого сохраните изображение в формате, поддерживающем альфа!канал (напри! мер, TIFF). Откройте сохраненный файл в программе растровой графики, допустим Adobe Photoshop, и, выделив альфа!канал, залейте его белым цветом. Если фон не черно! го цвета, то инвертируйте выделение и залейте все остальное черным цветом (то есть объекты сцены должны быть белыми, а фон черным, как показано на рис. 7.14). Как только вы это сделаете, можно переходить к созданию размытых краев в изо! бражении. Это можно сделать разными способами, например воспользоваться программой Photoshop, где применить для выделения градиентную маску, а затем использовать фильтр размытия по Гауссу. Важно, чтобы по мере удаления от осно! вания объекта (от плоскости, на которой чайник стоит и на которую будет отбра! сывать тень) размытие становилось более заметным (рис. 7.15).
Рис. 7.14. Карта теней на начальном этапе
Рис. 7.15. Законченная карта теней
Как только размытие будет готово, сохраните его в любом удобном для вас форма! те и продолжите работу в 3ds Max. Вернувшись в программу, нужно клонировать источник света, благодаря которо! му образуется тень (в данном случае это ключевой свет). Для этого выполните сле! дующие действия. 1.
Выделите источник света, который необходимо клонировать.
2.
Выполните команду EditClone (ПравкаКлонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при дублировании объектов, установив переключатель в положение Copy (Незави! симая копия объекта).
3.
В окне Clone Options (Параметры клонирования) также задайте объекту значимое имя, чтобы впоследствии было легче выбирать его из списка, например shadow.
После этого активизируйте источник света (если он до сих пор не выбран) и раз! верните свиток Advanced Effects (Дополнительные эффекты), где в качестве Projector Map (Карта прожектора) выберите вашу карту тени (рис. 7.16).
Основы освещения в трехмерной графике
245
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) установите отрицательное значение параметра Multiplier (Яркость) (у меня эта величина равна –1,25). Исключите из освещения чайник (чтобы тень ложилась не на него, а только на плоскость). Для этого щелкните в свитке General Parameters (Общие па! раметры) на кнопке Exclude (Исключение) и в появившемся окне Exclude/Include (Исключение/включение) исключите чайник из визуализации (рис. 7.17).
Рис. 7.16. Свиток Advanced Effects (Дополнительные эффекты) для карты теней
Рис. 7.17. Окно Exclude/Include (Исключение/включение) с исключенным из освещения чайником
Теперь можно выполнить финальную визуализацию сцены (рис. 7.18).
Рис. 7.18. Результат финальной визуализации сцены
246
Глава 7. Освещение
Конечно, кроме достоинств, этот метод имеет и недостатки, один из которых — невозможность формирования падающих на объект теней от самого себя (как в данном случае с ручкой крышки). Однако часто можно добиться великолеп! ных результатов при минимальных затратах сил, времени и компьютерных ре! сурсов. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 07\Base_light прилагаемого к книге DVD находится файл сце& ны данного упражнения, который называется Base_light.max.
Луч лазера Если вы решили создать заставку в стиле «Звездных войн» или нестандартно ани! мировать надпись, то вам не обойтись без такого эффекта, как луч лазера. В этом небольшом упражнении мы научимся создавать такой луч простыми средствами 3ds Max. Начнем с моделирования объектов сцены. Для этого постройте в начале коорди! нат примитив Teapot (Чайник), выбрав его из главного меню CreateStandard PrimitivesTeapot (СоздатьПростые примитивыЧайник) с параметрами, пока! занными на рис. 7.19. Излучение лазера можно представить в виде плотного луча направленного света, поэтому для его имитации как нельзя лучше подойдет направленный источник света с цилиндрическим излучением — Target Direct (Нацеленный направленный источник света). СОВЕТ ___________________________________________________________________________ Вторым возможным вариантом создания такого луча может служить примитив Cylin& der (Цилиндр), которому необходимо присвоить соответствующий материал.
Для построения источника света, имитирующего луч, произведите следующие дей! ствия. 1.
Выполните команду главного меню CreateLightsStandard LightsTarget Directional (СоздатьИсточники светаСтандартные источники светаНацелен! ный направленный).
2.
Постройте в окне проекции Top (Cверху) источник света таким образом, что! бы луч проходил через примитив Teapot (Чайник). Сразу подкорректируйте положение источника света и его цели и в других окнах проекций.
3.
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение 5, а цвет луча сделайте ярко!красным (Red (Красный) — 255; Green (Зеленый) — 0; Blue (Синий) — 0) (рис. 7.20).
247
Луч лазера
Рис. 7.19. Свиток Parameters (Параметры) настроек примитива Teapot (Чайник)
4.
Рис. 7.20. Свиток Intensity/Color/Attenuation (Интенсивность/цвет/затухание) с настройками для источника света
В свитке Directional Parameters (Параметры направленного источника света) задайте параметру Hotspot/Beam (Яркое пятно/луч) значение 0,5, а Falloff/Field (Край пятна/область) — 2,5.
Если сейчас выполнить визуализацию (например, нажав сочетание клавиш Shift+Q), то результатом будет небольшой красный круг на черном фоне. Это связано с тем, что единственный источник света, который мы используем в сцене, не освещает ничего, кроме небольшого участка на поверхности примитива Teapot (Чайник). В связи с этим необходимо добавить в сцену как минимум еще один источник — ключевой свет с небольшим значением параметра Multiplier (Усилитель), что по! зволит частично осветить объекты, а затем получить более контрастный луч ла! зера. ПРИМЕЧАНИЕ ___________________________________________________________________ В предыдущем разделе мы рассматривали принципы создания и расстановки источ& ников света в сцене. Используя полученные знания, вы можете создать не только ключевой, но и заполняющий свет, а также настроить тени, применяя, кроме объек& та Teapot (Чайник), стандартный примитив Plane (Плоскость).
На рис. 7.21 представлена визуализация сцены после добавления плоскости и двух источников света. Перейдем к построению видимого луча света. Для этого выделите направленный источник света Direct01 и в свитке Atmospheres & Effects (Атмосфера и эффекты) командной панели щелкните на кнопке Add (Добавить). В открывшемся окне Add Atmosphere or Effect (Добавить атмосферу или эффект) выберите строку Volume Light (Объемное освещение) и щелкните на кнопке OK (рис. 7.22). В результате в списке свитка Atmospheres & Effects (Атмосфера и эффекты) отобразится строка Volume Light (Объемное освещение).
248
Рис. 7.21. Визуализация сцены с расставленными источниками света
Глава 7. Освещение
Рис. 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). В этом небольшом упражнении вы научились делать лучи прожектора видимыми. Используя данный метод, можно добиться потрясающих эффектов не только в ста! тичных, но и в анимированных сценах. Например, таким образом можно аними! ровать разрезание лазером, луч прожектора, устремленный в ночное небо, полет трассирующей пули или луч солнца. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 07\Laser прилагаемого к книге DVD содержится файл сцены данного упражнения, который называется laser_beam.max.
249
Объемный свет
Рис. 7.23. Настройки цвета и плотности светового луча
Рис. 7.24. Окончательная визуализация луча лазера
Объемный свет Очень часто в процессе моделирования для придания сцене каких!то индивиду! альных особенностей приходится применять различные трюки и эффекты. Одним из таких приемов является Volume Light (Объемный свет). Наверное, любой человек хотя бы раз в жизни наблюдал, как солнечный луч, про! ходя через оконное стекло запыленной комнаты, выхватывает из атмосферы взве! шенные частицы пыли, создавая тем самым светящуюся область пространства. Это и есть эффект объемного освещения. Пытаясь воссоздать интерьер заброшенной комнаты или мастерскую художника, в окно которой пробиваются лучи утренне! го солнца, вам не обойтись без объемного освещения. Оно также применяется для создания эффектных рекламных надписей и т. д. В этом разделе будет рассмотрено создание витража, наподобие тех, которые до сих пор еще можно увидеть на окнах старинных церквей. ПРИМЕЧАНИЕ ___________________________________________________________________ Слово «витраж» происходит от французского vitre — «стекло» и обозначает окна, иног& да огромного размера, состоящие из кусочков разноцветного стекла, которые соеди& нены свинцовыми элементами. Эти сверкающие прозрачные цветные стекла состав& ляют какой&нибудь орнамент, иногда даже целые сюжетные картины.
Вам не понадобится моделировать отдельные части витража, так как вы можете ис! пользовать растровое изображение stainglass.jpg, которое находится на прила! гаемом к книге DVD в папке Examples\Глава 07\Volume_light. Прежде всего необходимо построить модель комнаты с окном. Для этого подойдет примитив Box (Параллелепипед) с пропорциями, соответствующими комнате, ко! торую вы хотите моделировать.
250
Глава 7. Освещение
ПРИМЕЧАНИЕ ___________________________________________________________________ Вы можете пропустить описание процесса моделирования комнаты и загрузить с при& лагаемого к книге DVD готовую модель, которая находится в папке Examples\Глава 07\ Volume_light. Файл сцены называется volume_light_start.max.
Чтобы создать параллелепипед, выполните команду CreateStandard Primitives Box (СозданиеПростые примитивыПараллелепипед). После построения объек! та, имитирующего внешнюю стену комнаты, вам понадобится еще один для внут! ренней стены (объемные стены нужны для последующего применения булевой операции для вырезания окна). Чтобы не строить второй параллелепипед, клони! руем первый. Для этого, выделив объект, выполните команду EditClone (Прав! каКлонировать) и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Copy (Независимая копия объекта). Далее, не снимая выделения с вновь созданного объекта, щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов. Кнопка станет оранжевой. Щелкните на объекте и немного уменьшите его, пере! местив указатель вниз.
СОВЕТ ___________________________________________________________________________ Копировать объект можно также, если активизировать инструмент масштабирования и, удерживая клавишу Shift, щелкнуть на объекте и переместить указатель вниз. После этого появится окно Clone Options (Параметры клонирования), где следует выбрать тип создаваемых при дублировании объектов.
Не снимая выделения с вновь созданного параллелепипе! да, примените к нему модификатор Normal (Нормаль). Для этого выберите его в раскрывающемся списке вкладки Modify (Изменение) командной панели. В свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали) (рис. 7.25). После этого выделите внутреннюю и внешнюю стены и со! едините их. Для этого перейдите на вкладку Utilities (Ути! литы) командной панели и щелкните на кнопке Collapse (Свернуть). Раскроется свиток Collapse (Свернуть), в кото! ром нажмите кнопку Collapse Selected (Свернуть выделен! ное).
ПРИМЕЧАНИЕ ___________________________________________ Рис. 7.25. Настройки модификатора Normal (Нормаль)
Если, выбрав Utilities (Утилиты), вы не видите кнопки Collapse (Свернуть), то щелкните на кнопке More (Дополнительно) и вы& берите Collapse (Свернуть) из списка.
Объемный свет
251
Теперь создайте еще один параллелепипед по форме окна и расположите его в пространстве так, чтобы он пересекал! ся со стеной, в которой будет располагаться окно. Выделите комнату. Перейдите на вкладку Create (Созда! ние) командной панели, щелкните на кнопке Geometry (Гео! метрия), выберите из раскрывающегося списка строку Compound Objects (Составные объекты) и нажмите кнопку ProBoolean (Pro Булев). В результате появится панель с на! стройками булевых операций (рис. 7.26). В свитке Pick Boolean (Указать булев) щелкните на кнопке Start Picking (Указать) и выберите параллелепипед, постро! енный по форме окна. В результате этих операций в стене образуется оконный проем. Чтобы видеть интерьер комнаты, расположите внутри нее камеру и источник света (например, Omni (Всенаправлен! ный)). Снаружи напротив окна нужно установить еще один источник света. Это должен быть Target Spot (Направлен! ный с целью), расположенный в пространстве таким обра! зом, чтобы лучи света, проходя через окно, падали на пол комнаты (рис. 7.27). Чтобы «застеклить» окно, воспользуйтесь примитивом Plane (Плоскость), подогнав его размер под форму оконно! го проема. После этого можно переходить к настройкам объемного света. Сделайте световое пятно на полу комнаты от направленно! го источника света, находящегося за окном. Для этого со! здайте новый материал с текстурной картой витража и при! свойте его окну следующим образом.
Рис. 7.26. Панель с настройками булевых операций
1.
В окне Material Editor (Редактор материалов) выберите свободный материал.
2.
Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).
3.
В появившемся окне Material/Map Browser (Окно выбора материалов и карт) дважды щелкните на строке Bitmap (Растровое изображение).
4.
В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением витража.
5.
Вернитесь к настройкам материала, щелкнув на кнопке Go to Parent (Вернуть! ся к исходному).
252 6.
Глава 7. Освещение
Щелкните на кнопке Filter Color (Светофильтр) в свитке Maps (Карты текстур) и повторите операции п. 3, 4 и 5.
СОВЕТ ___________________________________________________________________________ Если необходимо создать две одинаковые карты текстуры, можно щелкнуть на кноп& ке с загруженной картой и, не отпуская кнопку мыши, перетащить ее на кнопку, в ко& торую необходимо вставить карту.
7.
Установите флажок 2-Sided (Двусторонний) в свитке Shader Basic Parameters (Основные параметры затенения).
8.
Задайте параметру Opacity (Непрозрачность) значение 50, что позволит свету проходить через окно в комнату (рис. 7.28).
Рис. 7.27. Взаимное расположение камеры и источников света в сцене
Рис. 7.28. Настройки материала витража
Перед тем как выполнить первую визуализацию, настройте тени для источника света, который светит в окно, и цвет окружающей среды. Чтобы увидеть на полу световое пятно, необходимо включить отбрасывание теней при помощи данного источника света, причем тени должны быть типа Ray Traced Shadows (Трассирован! ные тени). Чтобы витраж не казался темным и за ним угадывался яркий солнеч! ный день, нужно в настройках окружающей среды изменить фоновый цвет на белый
253
Объемный свет
или светло!желтый. Для этого выполните команду RenderingEnvironment (Визуали! зацияОкружающая среда). Откроется окно Environment and Effects (Окружаю! щая среда и эффекты), где в свитке Common Parameters (Общие параметры) вклад! ки Environment (Окружающая среда) (рис. 7.29) сделайте необходимые изменения. Задав все настройки, можно визуализировать сцену. Если все было сделано правиль! но, то должно получиться цветное световое пятно на полу комнаты (рис. 7.30).
Рис. 7.29. Свиток Common Parameters (Общие параметры) вкладки Environment (Окружающая среда)
Рис. 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.33).
Рис. 7.31. Свиток Advanced Effects (Дополнительные эффекты) настроек источника света, располагающегося за окном
254
Рис. 7.32. Свитки настроек объемного освещения для осветителя Direct01
Глава 7. Освещение
Рис. 7.33. Результат финальной визуализации
ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 07\Volume_light прилагаемого к книге DVD содержится файл сцены данного упражнения, который называется volume_light_end.max.
При желании вы можете использовать дополнительные настройки и получить но! вые эффекты. Например, применив Noise (Шум), можно получить эффект прохож! дения лучей света сквозь дым, а при помощи затухания добиться более реалистич! ного восприятия картины.
Использование базовых источников света в интерьере Современные визуализаторы, такие как mental ray, V!Ray, finalRender, Maxwell и др., могут использовать в расчетах глобальное освещение, что существенно облегчает работу, связанную с освещением, и повышает степень реалистичности визуализи! рованных изображений. Со временем мы все больше и больше предоставляем про! граммному обеспечению решать, как будет освещена и как будет выглядеть сцена при финальной визуализации. Все меньше времени мы затрачиваем на размеще! ние и настройку источников света, и все еще значительное время требуется про! грамме для того, чтобы рассчитать освещенность. Сейчас достаточно поместить в сцену один источник света, имитирующий солнце, и вся сцена будет заполнена отраженным светом — совсем как в жизни. Однако еще не так давно, выполняя визуализацию интерьера (или другую серьезную работу), приходилось настраи! вать десятки источников света, чтобы получить приемлемый результат. Исполь! зование базовых источников света является основополагающим в изучении и по! нимании освещения сцены. В данном разделе мы рассмотрим принципы расстановки и настройки источников света программы 3ds Max 9 для освещения интерьера и создания эффекта глобаль! ного освещения. В качестве примера я собираюсь использовать вариант визуали!
Использование базовых источников света в интерьере
255
зации интерьера кухни, выполненный при помощи подключаемого визуализатора V!Ray (рис. 7.34).
Рис. 7.34. Модель интерьера кухни, визуализированная при помощи модуля V&Ray
ПРИМЕЧАНИЕ ___________________________________________________________________ Данная сцена использовалась при создании рекламного видеоролика, в котором от& снятое в студии видео с реальными актерами накладывалось на анимацию интерье& ра с последующим добавлением спецэффектов. Таким образом, созданная модель интерьера с настроенным согласно сценарию освещением позволила сэкономить значительную часть бюджета ролика и добиться желаемого результата.
Освещение сцены стандартными источниками света отличается от того, которое рассчитывается с учетом GI (Global Illumination) (Глобальное освещение). В этом упражнении мы попытаемся максимально имитировать GI, которое учитывает в своих расчетах отраженный свет. Для выполнения урока нам понадобится сцена, которую можно найти на прила! гаемом к книге DVD в папке Examples\Глава 07\Kitchen. Файл называет! ся kitchen_start.max. ВНИМАНИЕ ______________________________________________________________________ Сцена, расположенная на DVD, имеет свыше 600 000 полигонов. По этой причине на компьютерах со старыми видеоадаптерами изображение может медленно прорисо& вываться в окнах проекций. Чтобы ускорить прорисовку, можно спрятать неиспользу& емые объекты или установить в настройках отображения режим Bounding Box (Габа& ритный контейнер). Для этого необходимо выполнить команду CustomizeViewport Configuration (НастройкаКонфигурирование окна проекции) главного меню и уста& новить переключатель Rendering Level (Уровень визуализации) в соответствующее положение (рис. 7.35).
256
Глава 7. Освещение
Рис. 7.35. Окно Viewport Configuration (Конфигурирование окна проекции)
Начните упражнение с открытия в программе 3ds Max 9 сцены и выделения стен, пола и потолка помещения. Для этого можно воспользоваться окном Select From Scene (Выбор из сцены), для вызова которого нажмите клавишу H. В этом окне выбе! рите из списка два объекта с именами Walls (Стены) и Ceiling (Потолок) и нажмите OK для подтверждения выбора. Затем в любом из окон проекций щелкните на выде! ленном объекте правой кнопкой мыши и выберите из контекстного меню строку Hide Unselected (Спрятать невыделенное). В результате у вас должны остаться в сцене только два объекта, имитирующие стены, пол и потолок кухни. Первое, что необходимо выполнить, настраивая освещение внутренних помещений при помощи стандартных источников света, — это создать общую освещенность сце! ны. Такая освещенность задает общее настроение в сцене и помогает зрителю опре! делить время суток. Например, для яркого солнечного дня характерны теплые тона, а для искусственного освещения лампами дневного света — холодные. Создайте всенаправленный источник света, для чего выполните команду CreateLights Standard LightsOmni (СоздатьИсточники светаСтандартные источники света Всенаправленный) главного меню и в окне проекции Top (Cверху) щелкните на левой половине модели кухни — именно там будем настраивать освещение сцены.
СОВЕТ ___________________________________________________________________________ Выполняя создание и настройку источников света, мы будем использовать вид из ка& меры Base view, установленной в сцене (показывает вид, представленный на рис. 7.34). В связи с этим я бы не рекомендовал менять положение вида из камеры, что позво& лит в дальнейшем контролировать процесс визуализации.
Использование базовых источников света в интерьере
257
Теперь необходимо выполнить предварительную настройку источника света. По! скольку мы будем создавать дневную освещенность с использованием солнечного света и гамма цветов пола, мебели и стен, которая преобладает в сцене, является в большей степени зеленовато!коричневой, значит, и цвет окружающего освеще! ния должен быть именно таким. Чтобы настроить созданный источник света, сде! лайте следующее. 1.
Выделите построенный источник света и перейдите на вкладку Modify (Изме! нение) командной панели.
2.
В свитке 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).
ВНИМАНИЕ _______________________________________________ Установка флажка Ambient Only (Только подсветка) является очень важным фактором, так как именно этот параметр опре& деляет то, каким образом будет использоваться источник света. В результате предметы сцены будут освещены равномерным светом с постепенным ослабеванием в зоне, определенной значениями параметров области Far Attenuation (Затухание вдали).
Рис. 7.36. Настройки источника света общей освещенности
258
Глава 7. Освещение
5.
Перейдите в окно проекции Front (Спереди) и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) , масштабируй! те источник света по вертикали. Это необходимо для того, чтобы граница на! чала затухания оказалась между полом и потолком комнаты.
6.
Переместите источник света Omni01 вверх так, чтобы большая часть освеще! ния попадала на потолок (рис. 7.37). Это вызвано тем, что потолок белого цве! та и для передачи его освещенности требуется значительная интенсивность источника, в то время как пол будет дополнительно освещаться солнечным светом, проходящим через окна, и большая контрастность только усилит эф! фект солнечного освещения.
Рис. 7.37. Расположение в сцене источника света Omni01
Проведите тестовую визуализацию вида из камеры, для чего выполните команду RenderingRender (ВизуализацияВизуализировать) главного меню, в области Output Size (Выходной размер) открывшегося окна выберите требуемый размер и щелкните на кнопке Render (Визуализировать). СОВЕТ ___________________________________________________________________________ Изменяя размер итогового изображения, старайтесь сохранять отношение высоты к ширине, равное 1,77778, что позволит иметь такие же пропорции, как и у оригиналь& ного изображения.
Использование базовых источников света в интерьере
259
Сравните полученное изображение с оригиналом и убедитесь в том, что цвет и яркость света созданного светильника соответствуют поставленным задачам. На рис. 7.38 по! казано визуализированное изображение помещения, которое должно получиться после настройки источника света Omni01.
Рис. 7.38. Помещение кухни, освещенное всенаправленным источником света
Обратите внимание на следующие советы по настройке окружающего света.
Располагая источник света в комнате, смещайте его относительно центра бли! же к потолку и стене, где расположены окна. Потолок, как правило, светлее стен и пола, а стена, на которой расположены окна, получает больше отражен! ного света, попадающего через эти окна в комнату. По мере удаления от окон свет постепенно затухает.
Настраивайте области затухания источника света с таким расчетом, чтобы углы и удаленные от дневного света участки комнаты имели значительные затемнения.
При необходимости масштабируйте источник света, чтобы получить желае! мые области затухания.
Задавайте такой цвет источнику, чтобы он не только создавал общее настрое! ние в картине, но и имитировал отраженный свет. В нашем случае преоблада! ние деревянной мебели и пола создает теплую светло!коричневую гамму, а зе! леный цвет рабочей области кухни придает этому тону зеленоватый оттенок.
Устанавливайте такое значение параметра Multiplier (Усилитель) источника света, которое создаст освещение, похожее на освещение итогового изображе! ния. Причем созданное освещение должно быть немного темнее итогового, так как в сцену еще будут помещены локальные источники света, которые уве! личат общее освещение сцены.
260
Глава 7. Освещение
Если результат настройки общего освещения вас удовлетворил, можно переходить к созданию источника направленного света, имитирующего солнце. Для этого сде! лайте следующее. 1.
Выполните команду CreateLightsStandard LightsTarget Directional (Создать Источники светаСтандартные источники светаНацеленный направлен! ный) и в окне проекции Top (Cверху) постройте светильник так, чтобы излу! чатель находился за пределами левой стены с окнами, а цель, на которую он направлен, — внутри помещения.
2.
В окне проекции 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). Солнечный свет, попадающий в комнату, оставляет не только яркое световое пятно на полу и предметах быта, но и усиливает освещение предметов, расположенных в непосредственной близости от окна. В нашем случае это означает, что как минимум стены в оконном проеме и потолок должны получить дополнительное освещение.
Использование базовых источников света в интерьере
261
Рис. 7.40. Сцена, освещенная двумя источниками света
ПРИМЕЧАНИЕ ___________________________________________________________________ Для достижения максимальной реалистичности солнечного света необходимо осве& щать дополнительным светом не только оконные проемы и потолок, но и пол, а также предметы, расположенные в непосредственной близости от окна. В большинстве случаев для этого достаточно одного всенаправленного источника света, который будет оказывать влияние на определенные объекты. Это не входит в задачу данного урока, поэтому можете выполнить такую дополнительную настройку самостоятельно.
Чтобы осветить оконный проем, необходимо построить два источника света: один для освещения простенков, а второй — для оконного переплета. 1.
Постройте свободный источник света, для чего выполните команду Create LightsStandard LightsFree Spotlight (СоздатьИсточники светаСтандарт! ные источники светаНаправленный без цели) и в окне проекции Right (Спра! ва) щелкните кнопкой мыши на середине оконного проема.
2.
В окне проекции Top (Cверху) разместите построенный источник света так, чтобы он находился внутри комнаты на небольшом расстоянии от оконного проема.
3.
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) настро! ек свободного источника задайте параметру Multiplier (Усилитель) значение 0,6. В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка).
4.
В свитке Spotlight Parameters (Параметры прожектора) установите переключа! тель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропорции) задайте значение 0,71 (рис. 7.41).
262
Глава 7. Освещение
5.
Параметрам Hotspot/Beam (Яркое пятно/луч) и Falloff/Field (Край пятна/область) задайте такие значения, чтобы освещение простенков начиналось от угла, не затрагивая стен кухни. В моем случае это 144,5 и 147,4 соответственно. В ва! шем случае могут быть несколько иные значения, которые зависят от удален! ности источника света от оконного проема, на который он светит.
6.
В свитке General Parameters (Общие параметры) щелкните на кнопке Exclude (Исключение) и в открывшемся окне Exclude/Include (Исключение/включе! ние) выберите из списка, расположенного слева, объект curtains (Шторы). Щелкните на кнопке >> для перемещения его в список объектов, на которые не должен влиять источник света.
Размещенный в окнах проекций и настроенный источник света Fspot01 должен выглядеть, как показано на рис. 7.42.
Рис. 7.41. Свиток Spotlight Parameters (Параметры прожектора) с настройками нацеленного источника света
Рис. 7.42. Расположение источника света Fspot01 в окне проекции Perspective (Перспектива)
Если сейчас выполнить тестовую визуализацию, можно обратить внимание на то, что не только простенки приобрели соответствующее освещение, но и оконная рама стала белого цвета, то есть пересвечена. Исправить положение поможет со! здание источника света с отрицательным значением параметра Multiplier (Усилитель). В данном случае оптимальным будет использование источника света с параллель! ными лучами, чтобы освещение по всей поверхности оконной рамы оставалось равномерным. Для построения такого источника света сделайте следующее. 1.
Выполните команду CreateLightsStandard LightsDirectional (СоздатьИс! точники светаСтандартные источники светаНаправленный источник све!
Использование базовых источников света в интерьере
263
та) и в окне проекции Right (Cправа) щелкните кнопкой мыши в середине оконного проема (в месте расположения светильника Fspot01). 2.
В окне проекции Top (Cверху) переместите источник света по оси X так, чтобы он занял свое положение в середине оконного проема.
3.
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение, равное –0,45.
4.
В свитке Directional Parameters (Параметры прожектора) установите переклю! чатель в положение Rectangle (Прямоугольник), а параметру Aspect (Пропор! ции) задайте такое же значение, как и для предыдущего светильника, — 0,71. Настройте также значения параметров Hotspot/Beam (Яркое пятно/луч) и Falloff/ Field (Край пятна/область) таким образом, чтобы светильник охватывал всю поверхность оконной рамы. В моем случае эти значения равны 670 и 720 соот! ветственно.
Выполните тестовую визуализацию и оцените результат настроек источников све! та для освещения окна (рис. 7.43).
Рис. 7.43. Визуализация вида из камеры с установленными светильниками для дальнего окна
Если все сделано правильно, то можно переходить к созданию источника света, который будет играть роль засветки потолка от окна.
ПРИМЕЧАНИЕ ___________________________________________________________________ Для большего контроля над созданием и настройкой светового пятна на потолке по& следний был выделен в отдельный объект, что позволило освещать эту область моде& ли независимо от других объектов.
264
Глава 7. Освещение
Если вы когда!нибудь рассматривали потолок своей квартиры в солнечный день, то могли обратить внимание, что свет от окна распределяется в виде трапеции и затухает по мере удаления в глубь комнаты. Такой эффект может создать наце! ленный источник света. Для его построения сделайте следующее. 1.
Выполните команду CreateLightsStandard LightsTarget Spotlight (Создать Источники светаСтандартные источники светаНаправленный с целью), в окне проекции Top (Сверху) щелкните кнопкой мыши с внешней стороны оконного проема и, переместив указатель мыши по другую сторону окна в по! мещение кухни, щелкните еще раз для создания цели.
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 соответственно.
Использование базовых источников света в интерьере
265
ПРИМЕЧАНИЕ ___________________________________________________________________ Обычно значения затухания света и светового пятна подбираются опытным путем в зависимости от положения и поворота источника света в пространстве, а также от расстояния до объекта, на который он светит.
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 так, чтобы он занял свое место между шторой и стеной.
266
Глава 7. Освещение
Рис. 7.45. Визуализация сцены с установленными источниками света для окон кухни
2.
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) задайте параметру Multiplier (Усилитель) значение, равное 0,15. В области Far Attenuation (Затухание вдали) установите флажки Use (Использовать) и Show (Показывать).
3.
При помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать) масштабируйте источник света в вертикальной и гори! зонтальной плоскости так, чтобы область распространения света оказалась не! много больше шторы (рис. 7.46).
Рис. 7.46. Форма и положение в пространстве источника света Omni02
Использование базовых источников света в интерьере
267
4.
В свитке Advanced Effects (Дополнительные эффекты) установите флажок Ambient Only (Только подсветка), чтобы получить равномерно ослабевающее освещение стены в местах размещения штор.
5.
Cкопируйте источник света Omni02, чтобы разместить аналогичное освещение по всем сторонам, где находятся шторы. Как при настройке освещения окон! ных проемов, в окне Clone Options (Параметры клонирования) установите пе! реключатель Object (Объект) в положение Instance (Образец), что в дальнейшем позволит редактировать параметры сразу всех источников света, расположен! ных в районе штор.
СОВЕТ ___________________________________________________________________________ Одним из быстрых способов создания копий является перемещение объекта в окне проекции с нажатой клавишей Shift.
Выполните тестовую визуализацию и при необходимости подкорректируйте па! раметры источников света. Освещенность сцены должна быть такой, как показано на рис. 7.47.
Рис. 7.47. Сцена с дополнительными источниками света, расположенными позади штор
Рассмотрим еще одну особенность применения стандартных источников света для освещения объектов сцены. На сей раз создадим эффект затенения, который можно наблюдать позади предметов, расположенных в непосредственной близости от стен. Чтобы продолжить упражнение, перейдите на вкладку Display (Отображение) ко! мандной панели. В свитке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В появившемся окне Unhide Objects (Отобразить объек! ты) выберите объект Picture (Картина). Если сейчас выполнить визуализацию,
268
Глава 7. Освещение
то окажется, что созданные источники света не влияют на отображение картины и она скорее напоминает аппликацию, чем объемный предмет. Вокруг картины должна быть тень, так как она расположена близко к стене и помещена в черную рамку. Эту тень несложно создать при помощи направленного света с отрицатель! ным значением параметра 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).
Использование базовых источников света в интерьере
269
Рис. 7.49. Визуализация с затенением, созданным источниками света с отрицательным значением параметра Multiplier (Усилитель)
ВНИМАНИЕ ______________________________________________________________________ Дальнейшие настройки освещения сцены потребуют значительно большего времени для визуализации, что может вызвать проблемы обновления окон проекций на сла& бых компьютерах. По этой причине рекомендую для выполнения упражнения исполь& зовать только часть объектов, присутствующих в сцене.
Чтобы вы могли создавать и настраивать источники света в собственных сценах, необходимо рассмотреть еще два способа настройки стандартных источников. Откройте спрятанные в самом начале упражнения объекты сцены и выполните тестовую визуализацию. Внимательно рассмотрите полученное изображение и срав! ните его с оригинальным (см. рис. 7.34), выполненным при помощи визуализато! ра V!Ray. Первое, что бросается в глаза, — это отсутствие у визуализированного изображения теней, позволяющих подчеркнуть объем предметов, присутствую! щих в сцене (рис. 7.50). Свет, проходящий на кухню через окна, должен усиливать освещенность фасадов кухни и затенять боковые стороны. Это же правило отно! сится и ко всем остальным предметам сцены. Первое, что необходимо сделать, — использовать источник света с отрицательным значением параметра Multiplier (Усилитель) для затенения боковых сторон объек! тов, аналогично тому, что мы делали для картины, висящей на стене. В данном слу! чае источник света должен располагаться правее и немного ниже всех объектов, таким образом, чтобы в зоне его действия оказались нижние плоскости подвесных шкафчиков, боковые стенки и стол со стульями (рис. 7.51).
270
Глава 7. Освещение
Рис. 7.50. Визуализация сцены без настроек освещения мебели и бытовых приборов
Рис. 7.51. Расположение направленного источника света, затеняющего стороны объектов, противоположные стене с окнами
Кроме того, для данного источника света следует исключить из освещения объек! ты Walls (Стены) и Ceiling (Потолок). Сделать это можно, щелкнув в свитке General Parameters (Общие параметры) на кнопке Exclude (Исключить). Откроется окно
Использование базовых источников света в интерьере
271
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 (Карта тени).
3.
В свитке Intensity/Color/Attenuation (Интенсивность/цвет/затухание) устано! вите значение параметра Multiplier (Усилитель) равным 0,2. Небольшое значение
272
Глава 7. Освещение
этого параметра объясняется тем, что мы создаем иллюзию непрямого освеще! ния и нет необходимости высвечивать объекты. 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. Визуализированное изображение с тенями и дополнительной подсветкой
Изображение стало выглядеть значительно лучше, но все еще не хватает общей глубины тени и теней от мелких и тонких объектов, например от ручек шкаф! чиков.
273
Использование базовых источников света в интерьере
ПРИМЕЧАНИЕ ___________________________________________________________________ На самом деле небольшие объекты также отбрасывают тень, но использованный нами 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). Подведем итоги выполненного упражнения. Одна и та же сцена может быть освещена различными способами, причем
Рис. 7.54. Параметры свитка Area Shadows (Площадная тень) для точной настройки теней
274
Глава 7. Освещение
если у вас нет в наличии модулей для визуализации с использованием глобально! го освещения или вы не умеете ими пользоваться, то вполне можно обойтись стандартными источниками света. Кроме того, такое решение подразумевает твор! ческий подход и максимальную свободу использования света. Не лишним будет сказать, что тестовая сцена с использованием визуализатора V!Ray на компьюте! ре с 2 Гбайт оперативной памяти и процессором 3,2 ГГц просчитывалась 1 час 28 минут, а с использованием стандартных источников света — 7 минут. ПРИМЕЧАНИЕ ___________________________________________________________________ Если у вас возникли затруднения с расстановкой или настройкой источников света, то вы можете загрузить файл kitchen_end.max, который находится на прилагаемом к книге DVD в папке Examples\Глава 07\Kitchen, и проанализировать настройки уста& новленных в сцене источников света.
Глава 8
Анимация сцен • Анимация с использованием деформируемой геометрии • Анимация взрыва • Два варианта анимации страницы книги • Анимация рукописного шрифта • Использование модификатора Cloth (Ткань) для симуляции поведения тканей • Анимация движения танковой гусеницы • Звук в 3ds Max • Песочные часы • Текст, уносимый порывами ветра
276
Глава 8. Анимация сцен
В этой главе будут рассмотрены примеры создания анимации. Начнем знакомство с самого простого примера — анимации с применением деформируемой геомет! рии.
Анимация с использованием деформируемой геометрии В данном разделе мы опишем, насколько просто в 3ds Max 9 можно создать инте! ресную анимацию с использованием модификаторов и объектов группы Geometric/ Deformable (Деформируемая геометрия) категории Space Warps (Пространственные деформации). Мы создадим анимацию движения капли жидкости сквозь твердый объект и смоделируем движение твердого объекта в мягкой оболочке при помощи объектов FFD (Box) (FFD!контейнер (прямоугольный)), FFD (Cyl) (FFD!контейнер (цилиндрический)) и модификатора Taper (Заострение). Начнем с построения простых объектов. Для первой анимации нам понадобятся два параметрических объекта: Sphere (Сфера) и Tube (Труба). Для создания сферы перейдите в окно проекции Top (Сверху) и выполните команду главного меню CreateStandard PrimitivesSphere (СозданиеПростые примитивыСфера). На вкладке Modify (Изменение) командной панели задайте параметру Radius (Ра! диус) значение, равное 20, а Segments (Количество сегментов) оставьте равным по умолчанию — 32 (рис. 8.1). Расположите построенную сферу в начале координат. Для этого выделите сфе! ру в одном из окон проекций и щелкните правой кнопкой мыши на кнопке Select and Move (Выделить и переместить) . В области Absolute:World (Абсолютные: гло! бальные) открывшегося окна Move Transform Type-In (Ввод данных преобразования перемещения) всем параметрам установите нулевые значения. Создайте объект Tube (Труба). Для этого выполните команду CreateStandard PrimitivesTube (СозданиеПростые примитивыТруба) главного меню и в окне про! екции Top (Сверху) постройте объект произвольных размеров. В свитке Parameters (Параметры) настроек объекта Tube (Труба) на командной панели задайте пара! метрам значения, показанные на рис. 8.2. Мы задали построенному объекту большое количество сегментов по высоте. Это объясняется тем, что для плавного изменения формы объекта необходимо иметь достаточное количество полигонов в области деформации. Расположите сферу в середине трубы, для чего воспользуйтесь инструментом Align (Выравнивание) , расположенным на главной панели инструментов. После создания и выравнивания объектов можно приступать к анимации. Рас! смотрим два варианта прохождения твердого объекта (сферы) сквозь эластичную трубу.
Анимация с использованием деформируемой геометрии
Рис. 8.1. Параметры объекта Sphere (Сфера)
277
Рис. 8.2. Параметры объекта Tube (Труба)
Первый вариант (с использованием модификатора) Примените к объекту Tube01 модификатор Taper (Заострение), выполнив команду меню ModifiersParametric DeformersTaper (МодификаторыПараметрические деформацииЗаострение). Перейдите на уровень редактирования подобъектов модификатора Taper (Заострение). Для этого в стеке модификаторов щелкните на плюсике, расположенном слева от имени модификатора, и в раскрывшемся спис! ке выберите строку Center (Центр). Цвет маркера (перекрестие у основания знач! ка осей) изменится на желтый (по умолчанию). Нажмите кнопку Select and Move (Выделить и переместить) на панели инструментов и переместите центр моди! фикатора по вертикали до нижней границы объекта Tube01 (рис. 8.3). Перейдите к редактированию габаритного контейнера модификатора. Для этого выделите в стеке модификаторов строку Gizmo (Габаритный контейнер) — в ре! зультате контейнер, охватывающий трубу, изменит цвет на красный. Снова вос! пользуйтесь инструментом перемещения и сместите габаритный контейнер вверх до того места, где сфера пересекается с внутренней стенкой трубы (рис. 8.4). Нажмите на панели инструментов кнопку Select and Uniform Scale (Выделить и рав! номерно масштабировать) . Масштабируйте габаритный контейнер по вертика! ли до тех пор, пока верхний край контейнера не опустится до уровня пересечения внутренних стенок трубы со сферой (то есть масштабируйте габаритный контей! нер по оси Y примерно до 12 %). Проконтролировать параметры масштабирования можно в строке состояния, расположенной в нижней части окна программы.
278
Глава 8. Анимация сцен
Рис. 8.3. Расположение центра воздействия модификатора Taper (Заострение)
Рис. 8.4. Положение габаритного контейнера относительно сферы
Задайте модификатору Taper (Заострение) значения параметров, показанные на рис. 8.5. В результате труба деформируется по форме сферы. Для создания анимации сделайте следующее. 1.
Передвиньте ползунок таймера анимации на 85 кадр.
2.
Включите автоматическую запись ключей анимации, щелкнув на кнопке Auto Key (Автоключ). Кнопка выделится цветом, указывая на то, что она находится в активном состоянии.
3.
Передвиньте контейнер модификатора Taper (Заострение) вниз до положения, когда его верхний край сместится за пределы трубы. Обратите внимание на то,
Анимация с использованием деформируемой геометрии
279
Рис. 8.5. Форма габаритного контейнера и параметры модификатора Taper (Заострение)
что при этом вы должны находиться на уровне подобъектов Gizmo (Габарит! ный контейнер) модификатора. 4.
Передвиньте ползунок таймера анимации на 15 кадр и снова сместите габарит! ный контейнер модификатора, но теперь вверх, до тех пор, пока модификатор не покинет пределы трубы.
5.
Выделите и удалите первый ключ, созданный программой автоматически.
6.
Передвиньте ползунок таймера анимации на последний 100 кадр и перемес! тите сферу вниз за пределы трубы на небольшое расстояние.
7.
Сместите ползунок таймера анимации на нулевой кадр и передвиньте сферу вверх за пределы трубы на небольшое расстояние.
8.
Перейдите в 20 кадр анимации и уточните положение сферы относительно деформированного места трубы так, чтобы сфера находилась внутри деформи! рованного участка. То же самое сделайте и для 80 кадра.
9.
Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).
10.
Щелкните на кнопке Play Animation (Воспроизвести анимацию) смотра выполненной анимации.
для про!
Рассмотрим второй способ создания анимации с помощью объекта FFD (Box) (FFD! контейнер (прямоугольный)), используя те же объекты: сферу и трубу.
Второй вариант (с использованием объектов категории Geometric/Deformable (Деформируемая геометрия)) Для продолжения упражнения необходимо выполнить одно из двух действий: создать новый объект Tube (Труба) или копировать существующий и удалить назначенный
280
Глава 8. Анимация сцен
ему модификатор. Если вы решили создать копию существующего объекта, то сде! лайте следующее. 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
Теперь габаритный контейнер необходимо связать с объектом, на который будет направлено воздействие трансформации, и отредактировать форму самого контей! нера в соответствии с формой сферы. Для этого нужно выполнить следующее. 1.
Свяжите объект FFD01 с трубой. Для этого нажмите кнопку Bind to Space Warp , затем в одном из окон проекций щелкните на (Связать с воздействием)
Анимация с использованием деформируемой геометрии
281
объекте FFD01 и, когда указатель примет соответствующий вид, перетащите его на трубу. 2.
Перейдите на уровень редактирования контрольных точек контейнера, для чего в стеке модификаторов щелкните на плюсике слева от строки FFD (box) 4×4×4 (FFD!контейнер (прямоугольный) 4×4×4) и в раскрывшемся списке вы! берите Control Points (Контрольные точки).
3.
Выделите два средних ряда контрольных точек и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) главной пане! ли инструментов, равномерно масштабируйте точки до 130 %.
4.
Выйдите из режима редактирования контрольных точек контейнера, вернув! шись на верхний уровень стека модификаторов. Для этого щелкните в стеке на строке FFD (box) (FFD!контейнер (прямоугольный)).
Таким образом, габаритный контейнер после редактирования будет описывать форму сферы, а труба в месте воздействия контейнера деформации примет нуж! ную форму (рис. 8.7).
Рис. 8.7. Форма трубы после применения модификатора пространственной деформации
Осталось связать контейнер трансформации с анимированной сферой, располо! женной внутри трубы, и анимация будет закончена. Чтобы создать такую связь, необходимо выделить габаритный контейнер, нажать кнопку Select and Link (Вы! главной панели инструментов и указать на сферу. делить и связать) СОВЕТ ___________________________________________________________________________ Выделить непосредственно сферу, находящуюся внутри двух других объектов, до& статочно сложно. Самым простым решением будет выбор нужного объекта из списка объектов, который можно вызвать, воспользовавшись кнопкой Select by Name (Выде& лить по имени) или клавишей H.
282
Глава 8. Анимация сцен
Запустите воспроизведение анимации и убедитесь, что все было сделано правиль! но. В процессе воспроизведения габаритный контейнер вместе со сферой будет опускаться через трубу, деформируя ее в месте своего прохождения. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 08\Deformation прилагаемого DVD находится файл soft_tube.max с двумя вариантами выполненной анимации, а в папке Video\Глава 08 — видеоролик tube_deform.avi, показывающий прохождение сферы через трубу.
Анимация формы сферы При выполнении предыдущего примера мог возникнуть вопрос, можно ли при помощи FFD (Box) (FFD!контейнер (прямоугольный)) трансформировать сферу, проходящую через трубу. Ответ — да, можно. Рассмотрим, как сделать такую ани! мацию. Создайте новую сцену с теми же объектами: сфера и труба. Вы можете восполь! зоваться старой сценой, удалив модификатор FFD (Box) (FFD!контейнер (прямоуголь! ный)) из стека. Трубе необходимо придать форму воронки. Для этого следует или применить мо! дификатор Taper (Заострение), или отредактировать положение верхнего ряда вер! шин. Я воспользовался первым вариантом (рис. 8.8), чтобы потом при необходи! мости можно было вернуться на уровень редактирования параметров объекта Tube (Труба).
Рис. 8.8. Форма трубы и параметры ее модификатора Taper (Заострение)
Анимация с использованием деформируемой геометрии
283
Если вы заново создавали сцену, то анимируйте сферу таким образом, чтобы в пер! вом кадре ее положение относительно трубы было выше, а в последнем — ниже. Для этого достаточно воспользоваться автоматической записью ключей анима! ции, как мы это делали ранее (установить соответствующее положение объекта в пространстве — остальное программа сделает автоматически). Постройте объект FFD (Cyl) (FFD!контейнер (цилиндрический)) и разместите его относительно трубы следующим образом. 1.
Выполните команду меню CreateSpaceWarpsGeometric/DeformableFFD(Cyl) (СозданиеПространственные деформацииFFD!контейнер (цилиндричес! кий)) и в окне проекции Top (Сверху) постройте объект произвольной формы.
2.
Используя инструмент Select and Move (Выделить и переместить) или Align (Выравнивание) , расположите габаритный контейнер так, чтобы он нахо! дился в середине трубы.
3.
В свитке FDD Parameters (FDD!параметры) построенного объекта задайте та! кие значения параметров, чтобы его диаметр соответствовал внутреннему диаметру в самой широкой части воронки (вверху), а по высоте — высоте тру! бы. Кроме того, важным является то, сколько разбиений по высоте будет иметь этот контейнер. Расстояние между первым и вторым рядом должно равняться высоте сужающейся части воронки. В моем случае это такое же количество рядов, как и у трубы (то есть равно значению параметра Height Segments (Количество сегментов по высоте)). Их можно установить, восполь! зовавшись кнопкой Set Numbers of Points (Установить количество точек) обла! сти Dimensions (Размеры).
ВНИМАНИЕ ______________________________________________________________________ Все изменения расположения контрольных точек влияют на объект деформации — изменяют его форму. Именно поэтому начальную форму контейнера желательно за& давать при помощи изменения параметров.
Далее необходимо связать габаритный контейнер со сферой и отредактировать его. 1.
Свяжите габаритный контейнер со сферой. Для этого щелкните на кнопке Bind to Space Warp (Связать с воздействием) на панели инструментов, выделите габаритный контейнер и, когда указатель примет соответствующий вид, удер! живая кнопку мыши, подведите его к сфере.
2.
Перейдите на уровень редактирования контрольных точек контейнера, для чего в стеке модификаторов щелкните на плюсике, расположенном слева от имени модификатора, и в раскрывшемся списке выберите строку Control Points (Контрольные точки).
3.
Выделяя по очереди все ряды контрольных точек, кроме первого, масштаби! руйте их до внутреннего размера трубы (рис. 8.9). Для этой операции восполь! зуйтесь инструментом Select and Uniform Scale (Выделить и равномерно мас! штабировать) .
284
Глава 8. Анимация сцен
Рис. 8.9. Форма и положение габаритного контейнера
СОВЕТ ___________________________________________________________________________ Описанные действия можно выполнить иначе: выделить все необходимые ряды, на& чиная со второго, равномерно масштабировать их до размера внутреннего диамет& ра, а затем масштабировать по высоте, чтобы вернуться к прежнему расположению рядов по горизонтали.
4.
Выйдите из режима редактирования контрольных точек контейнера, щелкнув в стеке на имени модификатора.
Запустите воспроизведение анимации, воспользовавшись кнопкой Play Animation (Воспроизвести анимацию) , и убедитесь, что все сделано правильно. ПРИМЕЧАНИЕ ___________________________________________________________________ Для ознакомления с выполненной анимацией можно открыть файл soft_sphere.max, расположенный в папке Examples\Глава 08\Deformation\ прилагаемого DVD. В папке Video\Глава 08 находится видеоролик sphere_deform.avi.
При желании вы можете улучшить анимацию. Для этого нужно перейти в кадр, в котором сфера появляется из трубы, и изменить значение параметра Falloff (Спад) в области Deform (Деформация) настроек объекта FFD(Cyl) (FFD!контейнер (цилиндрический)). В результате сфера будет плавно изменять форму во вре! мени.
Анимация взрыва Рассматривая разные варианты анимации объектов, можно заметить, что для ее создания не обязательно прибегать к каким!то ухищрениям, часто достаточно
Анимация взрыва
285
стандартных средств. В предыдущем упражнении мы именно так и поступили — создали анимацию с использованием параметрических объектов и модификато! ров. В этом разделе мы рассмотрим один из вариантов создания анимации взрыва при помощи все тех же средств. Начните с того, что загрузите в программу 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.
3.
Примените к цилиндру модификатор деформации по траектории, выполнив команду главного меню ModifiersAnimationPath Deform (WSM) (Модифика! торыАнимацияДеформация по траектории (WSM)).
4.
В свитке Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM)) щелкните на кнопке Pick Path (Ука! зать путь) и выберите в одном из окон проекций сплайн пути для запального шнура.
5.
Щелкните на кнопке Move to Path (Передвинуть на путь), чтобы цилиндр за! нял на сплайне формы правильное положение (рис. 8.12).
6.
Активизируйте автоматическую запись ключей анимации, щелкнув на кноп! ке Auto Key (Автоключ), и передвиньте ползунок таймера анимации на послед! ний кадр.
286
Рис. 8.11. Параметры построенного цилиндра
Глава 8. Анимация сцен
Рис. 8.12. Цилиндр, деформированный по сплайну пути
7.
Перейдите к свитку Parameters (Параметры) настроек цилиндра, для чего в сте! ке модификаторов щелкните на строке Cylinder (Цилиндр), в результате чего строка выделится цветом.
8.
Задайте параметру Height (Высота) значение, равное 0.
9.
Выключите запись ключей анимации, для чего повторно щелкните на кнопке Auto Key (Автоключ).
10.
Проверьте правильность выполненных действий, запустив проигрывание ани! мации кнопкой Play Animation (Воспроизвести анимацию) . Запальный шнур должен уменьшаться и исчезнуть в 100 кадре.
Как видите, совсем простыми действиями мы создали анимацию сгорающего шнура. Чтобы усилить эффект горения, можно добавить на окончание запально! го шнура систему частиц, которая будет имитировать разлетающиеся в стороны искры. Система частиц должна базироваться на выделенных подобъектах (напри! мер, полигонах) либо на объекте в целом. В данном случае выделить полигоны на конце запального шнура невозможно, так как в верхней строке стека моди! фикаторов находится модификатор Path Deform (WSM) (Деформация по траекто! рии (WSM)). По этой причине необходимо построить и анимировать еще один объект. 1.
Создайте сферу такого же размера, как и запальный шнур. В моем случае ра! диус равен 1,8.
2.
Примените к построенной сфере модификатор Path Deform (WSM) (Деформация по траектории (WSM)).
3.
В свитке Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM)) щелкните на кнопке Pick Path (Указать
Анимация взрыва
287
путь) и выберите в одном из окон проекций сплайн пути для запального шнура. 4.
Щелкните на кнопке Move to Path (Передвинуть на путь), чтобы сфера заняла на сплайне формы правильное по! ложение.
5.
Задайте такое значение параметра Percent (Проценты), при котором сфера в нулевом кадре шкалы анимации переместится в начало запального шнура. У меня это значение равно 88,3 (рис. 8.13).
6.
Активизируйте автоматическую запись ключей анима! ции, щелкнув на кнопке Auto Key (Автоключ), и пе! редвиньте ползунок таймера анимации на последний кадр.
7.
Задайте параметру Percent (Проценты) значение, рав! ное 0.
8.
Проверьте анимацию. Сфера должна перемещаться по сплайну пути вместе с запальным шнуром.
Сфера используется как вспомогательный объект для по! строения системы частиц, поэтому нет необходимости в ее визуализации. Ее можно спрятать, воспользовавшись ко! мандой Hide Selection (Спрятать выделенное) контекстного меню, вызываемого щелчком правой кнопки мыши на объ! екте.
Рис. 8.13. Свиток Parameters (Параметры) настроек модификатора Path Deform (WSM) (Деформация по траектории (WSM))
СОВЕТ ___________________________________________________________________________ Можно анимировать параметр Visibility (Видимость) (в окне Object Properties (Свой& ства объекта)) с таким расчетом, что во время горения запального шнура сфера бу& дет видна (значение параметра равно 1), а начиная с момента взрыва — нет (значе& ние параметра Visibility (Видимость) равно 0). В этом случае сфере можно присвоить красный материал с небольшим значением параметра Self&Illumination (Собственное свечение), что усилит эффект горящего запального шнура.
Теперь займемся искрами. Для этого выполним простую анимацию системы час! тиц. Выполните команду CreateParticlesPArray (СозданиеЧастицыМассив частиц) и в произвольном месте любого окна проекции создайте значок массива частиц (рис. 8.14). В свитке Basic Parameters (Базовые параметры) настроек системы частиц PArray01 щелкните на кнопке Pick Object (Указать объект) и выберите в одном из окон про! екций построенную ранее сферу. Перейдите к свитку Particle Generation (Генерация частиц) настроек системы частиц и задайте значения параметров создаваемых ча! стиц: увеличьте количество генерируемых частиц до 150, измените скорость дви! жения частиц, продлите время окончания их генерации до последнего кадра, уменьшите время жизни до двух кадров и т. д. (рис. 8.15).
288
Глава 8. Анимация сцен
Рис. 8.14. Значок системы частиц, расположенный в окне проекции Front (Спереди)
ПРИМЕЧАНИЕ _____________________________________________ Значения параметров системы частиц подбираются опытным путем в зависимости от желаемого результата и могут суще& ственно отличаться от приведенных на рис. 8.15. Из всех па& раметров данного свитка наиболее важными являются время окончания генерации частиц, которое должно быть продлено до окончания горения запального шнура (в нашем случае до 100), и установленный флажок Emitter Rotation (Поворот источника), что позволит задать направление движения частиц.
Переключатель Standard Particles (Типовые частицы) свитка Particle Type (Тип частиц) установите в положение Special (Спе! циальный), что позволит задать форму частиц в виде пере! секающихся плоскостей. В области Spin Axis Controls (Управление осями вращения) свитка Rotation and Collision (Поворот и столкновения) уста! новите переключатель в положение Direction of Travel/Mblur (Направление движения/размывание движения). Парамет! ру Stretch (Растяжение) задайте значение, равное 50. Изме! нение значений этих параметров позволит получить про! тяженное размытие частиц по мере удаления от источника.
Рис. 8.15. Параметры системы частиц в свитке Particle Generation (Генерация частиц)
Настроив основные параметры системы частиц, визуализи! руйте статичный кадр в середине анимации и убедитесь, что все выполнено правильно. Если результат вас не удовлетво! рит, проведите дополнительную настройку параметров сис! темы частиц. Следующим шагом будет создание анимации самого взрыва. В данном случае нам поможет объект Bomb (Бомба), относя!
Анимация взрыва
289
щийся к Space Warps (Пространственные деформации). Для создания и настройки анимации взрыва сделайте следующее. 1.
Выполните команду CreateSpaceWarpsGeometric/DeformableBomb (Созда! ниеПространственные деформацииДеформируемая геометрияБомба).
2.
Разместите созданный значок бомбы внутри сферы (рис. 8.16).
Рис. 8.16. Расположение значка объекта Bomb (Бомба)
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 кадр, в котором запаль! ный шнур догорит до конца.
8.
Увеличьте количество кадров анимации. Для этого щелкните на кнопке Time Configuration (Настройка временных интервалов) в правой нижней части окна 3ds Max и в поле End Time (Время окончания) области Animation (Анима! ция) открывшегося окна введите количество кадров, равное 200.
9.
Проверьте анимацию. С 1 по 100 кадр будет гореть запальный шнур, а начи! ная с 200 кадра должна взорваться бомба.
290
Глава 8. Анимация сцен
Таким образом, мы построили простой взрыв. Его реалистичность можно повы! сить, воспользовавшись эффектом Fire Effect (Эффект огня) (в предыдущих вер! сиях программы 3ds Max он был известен как Combustion (Горение)). Для этого необходимо предварительно построить габаритный контейнер, который будет определять зону действия атмосферного эффекта Fire Effect (Эффект огня). Вы! полнить это можно при помощи команды главного меню CreateHelpersAtmosphericsSphere Gizmo (СозданиеВспомогательные объектыАтмосферные эф! фектыСферический контейнер). После построения расположите габаритный контейнер так, чтобы бомба находилась в его середине (рис. 8.17). При активном габаритном контейнере SphereGizmo01 перейдите на вкладку Modify (Изменение) командной панели и в свитке Atmospheres & Effects (Атмосфера и эффек! ты) щелкните на кнопке Add (Добавить). В открывшемся окне Add Atmosphere (До! бавить атмосферный эффект) выберите из списка строку Fire Effect (Эффект огня) и щелкните на кнопке OK для подтверждения выбора. В результате этих действий в список эффектов габаритного контейнера добавится эффект огня (рис. 8.18).
Рис. 8.17. Расположение габаритного контейнера относительно объекта&бомбы
Рис. 8.18. Габаритный контейнер с добавленным эффектом огня
Теперь следует настроить параметры эффекта для взрыва. 1.
В свитке Atmospheres & Effects (Атмосфера и эффекты) выделите строку с име! нем добавленного эффекта и щелкните на кнопке Setup (Настройки).
2.
Убедитесь в том, что в области Shape (Форма) открывшегося окна Environment and Effects (Окружающая среда и эффекты) переключатель Flame Type (Тип огня) установлен в положение Fireball (Облако пламени).
Анимация взрыва
291
3.
В этой же области задайте параметру Regularity (Регулярность) значение 0,6, что позволит придать эффекту форму, близкую к форме габаритного контей! нера (значение, равное 1, создаст абсолютно круглый огненный шар).
4.
В области Explosion (Взрыв) установите флажок Explosion (Взрыв). В резуль! тате программа будет рассматривать эффект огня как взрыв.
5.
В этой же области щелкните на кнопке Setup Explosion (Настройки взрыва) и в открывшемся окне Setup Explosion Phase Curve (Настройки кривой фаз взры! ва) задайте параметрам Start Time (Время начала) и End Time (Время оконча! ния) значения, равные 100 и 180 соответственно. Эти значения определяют начало и окончание действия эффекта взрыва.
Остальные параметры эффекта взрыва могут оставаться заданными по умолча! нию, а если вам не понравится результат, вы всегда можете поменять их на свои. Активизируйте окно перспективного вида, переместите ползунок таймера анима! ции на 102 кадр (начало взрыва) и выполните визуализацию (рис. 8.19).
Рис. 8.19. Визуализация эффекта взрыва в 102 кадре анимации
ВНИМАНИЕ ______________________________________________________________________ Эффект можно визуализировать только в окне проекции Perspective (Перспектива) или в окне вида из камеры. В окнах проекций Front (Спереди), Left (Слева), Top (Сверху), Right (Справа) и др. эффект не визуализируется.
Как видно из визуализации, размера эффекта взрыва недостаточно. Сделать его большим можно, увеличив размеры габаритного контейнера SphereGizmo01. Для этого выделите этот объект и в свитке Sphere Gizmo Parameters (Параметры сфери! ческого габаритного контейнера) задайте параметру Radius (Радиус) значение 130. Повторите визуализацию эффекта и убедитесь в том, что размер облака пламени приблизительно равен радиусу разлетающихся осколков бомбы (рис. 8.20).
292
Глава 8. Анимация сцен
Рис. 8.20. Визуализация взрыва с измененным радиусом габаритного контейнера
Для проверки выполненной анимации визуализируйте и другие кадры анимации. При необходимости измените настройки эффекта или размер габаритного контей! нера. Визуализируйте все кадры и сохраните анимацию как последовательность изображений или видеоролик. ПРИМЕЧАНИЕ ___________________________________________________________________ При необходимости вы можете обратиться к файлу упражнения bomb_end.max с выпол& ненными настройками анимации. Он расположен на прилагаемом DVD в папке Examples\ Глава 08\Bomb. В папке Video\Глава 08 содержится готовая анимация bomb.avi.
Два варианта анимации страницы книги Анимацию модели книги, как и многие другие задачи, можно выполнить разными способами. Например, использовать примитив Box (Параллелепипед) для модели! рования корешка книги и неподвижно лежащих листов, а для создания перевора! чивающихся листов — объект Plane (Плоскость) с достаточно плотной сеткой по! лигонов, чтобы сделать корректный изгиб. После этого применить модификатор FFD (Box) (FFD!контейнер (прямоугольный)) и, манипулируя вершинами кон! тейнера, создать ключи анимации. Можно анимировать параметры модификато! ра Bend (Изгиб). Я хочу предложить вам собственный способ моделирования кни! ги и два способа анимации переворачивающихся страниц. Один способ анимации основан на смешанной технике моделирования с последующей анимацией вер! шин, составляющих поверхность листа. При этом вам не придется сидеть и скру! пулезно подгонять вершины по форме изгиба страницы, как это неизбежно было бы в случае с полигональным объектом. Для этих целей будет использована поверх! ность, форма которой описывается математическими выражениями, — NURBS! поверхность. При помощи второго способа анимации вы построите лофт!поверхность по четырем кривым. В этом случае анимация листа книги будет осуществляться
Два варианта анимации страницы книги
293
не перемещением кривых или их контрольных точек в пространстве, а поворотом этих кривых вокруг точки, расположенной у основания корешка книги. Таким образом, мы создадим и анимируем реалистично выглядящую модель кни! ги, используя простые решения. Основу книги составит лофт!объект, а страницы, подлежащие анимации, — NURBS!поверхность. ПРИМЕЧАНИЕ ___________________________________________________________________ Вы можете пропустить описание процесса моделирования книги и загрузить готовую модель 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).
294
Глава 8. Анимация сцен
Рис. 8.22. Профиль сечения книги
Осталось применить к созданному сплайну модификатор Extrude (Выдавить). Для этого выполните команду меню ModifiersMesh EditingExtrude (Модификато! рыРедактирование сеткиВыдавить). Задайте такое значение величины выдав! ливания в настройках модификатора Extrude (Выдавить), чтобы она соответство! вала пропорциям книги (рис. 8.23).
Рис. 8.23. Книга после применения модификатора Extrude (Выдавливание)
Таким образом, мы создали форму книги, то есть ту ее часть, которая не будет ани! мироваться. Теперь займемся построением анимируемых страниц.
Первый вариант Чтобы создать страницу, выполните следующие действия. 1.
вкладки Create (Создание) ко! Щелкните на кнопке Geometry (Геометрия) мандной панели и выберите в раскрывающемся списке строку NURBS Surfaces (NURBS!поверхности).
2.
Щелкните на кнопке CV Surf (CV!поверхность), чтобы указать, какие поверх! ности мы собираемся строить.
3.
Перейдите в окно проекции Top (Cверху) и щелкните в верхней точке середи! ны книги, после чего переместите указатель к правому нижнему углу.
Таким образом, мы построили поверхность, но пока она ровная и мало похожа на страницу книги. Чтобы придать странице нужную форму, перейдите на уровень
Два варианта анимации страницы книги
295
редактирования подобъектов Surface CV (Управляющие вершины поверхности) на вкладке Modify (Изменение) командной панели и переместите точки плос! кости так, чтобы она приняла форму поверхности, на которую будет ложиться (рис. 8.24).
Рис. 8.24. Лист, уложенный в книгу
Выделяйте и перемещайте управляющие вершины в окне фронтального вида, что позволит манипулировать всем столбцом вершин сразу. СОВЕТ ___________________________________________________________________________ Если у вас возникнут трудности с приданием листу нужной формы, попробуйте уве& личить количество управляющих вершин путем добавления дополнительных столб& цов (кнопка Col. (Столбец) в области Insert (Вставка)).
Перед тем как переходить к анимации страницы, нужно сделать еще одно уточне! ние — переместить ось вращения на край страницы в середине книги. 1.
Перейдите на вкладку Hierarchy (Иерархия) командной панели и щелкни! те на кнопке Affect Pivot Only (Только опора), что позволит воздействовать только на опорную точку.
2.
Переместите опорную точку листа в крайнее левое положение.
3.
Щелкните на кнопке Affect Pivot Only (Только опора) еще раз, чтобы закрепить новое положение опорной точки в пространстве.
Все готово для начала построения анимации. Передвиньте ползунок таймера ани! мации на 60 кадр. Щелкните на кнопке Auto Key (Автоключ), после этого нажмите кнопку Select and Rotate (Выделить и повернуть) на панели инструментов. Пово! рачивая манипулятор против часовой стрелки, разверните страницу в левую сто! рону. Не выключая запись ключей анимации, отредактируйте положение управ! ляющих вершин в пространстве относительно левой стороны книги (рис. 8.25).
296
Глава 8. Анимация сцен
Рис. 8.25. Лист, уложенный на левую сторону книги
Если все было сделано правильно, то, передвигая ползунок шкалы анимации, вы увидите, как переворачивается лист. Базовая анимация сделана (рис. 8.26). Как только вы закончите редактировать положение управляющих вершин, еще раз щелкните на кнопке Auto Key (Авто! ключ), чтобы выключить автоматическую запись всех изменений. Если вы хотите улучшить анимацию и постараться добиться более реалистичного вида листа во время поворота, нужно добавить новые ключевые кадры в промежутке между пер! вым и последним. Однако старайтесь не перегружать анимацию ключевыми кад! рами, так как слишком большое количество ключевых кадров создаст трудности с их редактированием. Оптимальный вариант — установка ключей только там, где без них не обойтись, остальное 3ds Max сделает автоматически. Самый простой вариант проследить, как переворачивается лист, — взять в руки книгу и перевер! нуть ее лист, обращая внимание на изменение его формы в пространстве.
Рис. 8.26. Анимированный лист книги
Два варианта анимации страницы книги
297
ПРИМЕЧАНИЕ ___________________________________________________________________ Если у вас возникли трудности с настройкой анимации, вы можете обратиться к фай& лу сцены book_var01.max, расположенному в папке Examples\Глава 08\Book прилага& емого DVD. В папке Video\Глава 08 находится готовая анимация book.avi.
Второй вариант В предыдущем примере для контроля формы объекта и его положения в простран! стве использовались управляющие вершины. Рассмотрим другой способ анима! ции страниц книги: при помощи лофт!поверхности. Для продолжения работы вы! полните одно из трех действий:
выделите анимированный лист и, используя команду Hide Selection (Спрятать выделенное) контекстного меню, спрячьте его;
удалите анимированный лист из сцены;
загрузите начальную сцену из файла book_start.max, находящегося в пап! ке Examples\Глава 08\Book прилагаемого DVD.
Для создания анимированной страницы нам понадобится построить лофт!поверх! ность по четырем управляющим кривым. Для этого сделайте следующее. 1.
Щелкните на кнопке Shapes (Формы) вкладки Create (Создание) командной панели и выберите из раскрывающегося списка строку NURBS Curves (NURBS! кривые).
2.
Нажмите кнопку CV Curve (CV!кривая) для выбора типа кривой.
3.
Перейдите в окно проекции Top (Сверху), щелкните в верхнем углу книги, вер! тикально переместите указатель до нижнего края и щелкните еще раз для по! строения второй точки кривой. Нажмите правую кнопку мыши для заверше! ния построения.
СОВЕТ ___________________________________________________________________________ Чтобы создать контрольные вершины, расположенные строго в вертикальной или го& ризонтальной плоскости, при построении нажмите и удерживайте клавишу Shift.
4.
Копируйте созданную кривую, выполнив команду EditClone (ПравкаКло! нирование), и в появившемся окне Clone Options (Параметры клонирования) установите переключатель в положение Copy (Независимая копия объекта).
5.
Повторите описанные в п. 4 действия два раза для создания третьей и четвер! той копий кривой. После этого разместите построенные кривые так, чтобы первая кривая находилась в области корешка книги, а остальные приблизи! тельно соответствовали положению строящейся страницы (рис. 8.27).
Теперь необходимо создать NURBS!поверхность. Для этого выделите в окне проекции Perspective (Перспектива) первую кривую и в свитке General (Общие)
298
Глава 8. Анимация сцен
щелкните на кнопке NURBS Creation Toolbox (Инструменты создания NURBS!объек! тов) для вызова плавающей панели NURBS с инструментами создания кривых и поверхностей. На плавающей панели NURBS нажмите кнопку Create U Loft Surface (Создать поверхность методом U!лофтинга) (рис. 8.28), после чего указатель при! мет соответствующий вид.
Рис. 8.27. Положение кривых перед построением поверхности
Рис. 8.28. Плавающая панель NURBS с нажатой кнопкой Create U Loft Surface (Создать поверхность методом U&лофтинга)
Подведите указатель мыши к первой кривой (расположенной в районе корешка), в результате чего она подсветится цветом, и щелкните на ней. Затем щелкните на соседней кривой. В результате этих действий между первой и второй кривой об! разуется поверхность. ВНИМАНИЕ ______________________________________________________________________ В отличие от объектов другого типа, на уровне редактирования подобъектов для NURBS&объектов при анимации блокируется кнопка выбора центра трансформации. По этой причине важным фактором является последовательность выделения кривых. Дело в том, что первая выделенная кривая в нашем случае будет являться одновре& менно осью вращения и для объекта, и для его подобъектов.
Продолжите выделение оставшихся двух кривых и создание поверхности страни! цы, образованной всеми кривыми. После завершения построения щелкните на окне проекции правой кнопкой мыши. Теперь можно окончательно отредактировать положение кривых в пространстве. Для этого перейдите на уровень редактирова! ния подобъектов Curve (Кривая) выделенного объекта. В окне проекции Front (Спе! реди) передвиньте кривые так, чтобы поверхность листа приняла более естествен! ный вид и при этом не пересекалась со статичной геометрией (рис. 8.29). Все подготовительные действия выполнены — можно приступать к анимации. Передвиньте ползунок шкалы анимации на 60 кадр. Щелкните на кнопке Auto Key (Автоключ). Перейдите на уровень редактирования подобъектов Curve (Кривая) и в окне проекции Front (Спереди) выделите вторую управляющую кривую (в ак! тивном состоянии все кривые будут обозначены кружками). Нажмите кнопку Select
299
Анимация рукописного шрифта
and Rotate (Выделить и повернуть) на панели инструментов и выберите из рас! крывающегося списка Reference Coordinate System (Система координат) пункт Local (Локально) (рис. 8.30).
Рис. 8.29. Расположение управляющих кривых в окне проекции Front (Спереди)
Рис. 8.30. Раскрывающийся список Reference Coordinate System (Система координат)
Поворачивая манипулятор против часовой стрелки, разверните управляющую кривую в левую сторону. Проделайте те же действия для оставшихся двух кривых. Не выключая запись ключей анимации, при необходимости отредактируйте поло! жение управляющих кривых в пространстве относительно левой стороны книги (рис. 8.31).
Рис. 8.31. Положение управляющих кривых на левой стороне книги
Подводя итоги выполненной анимации листа книги, можно заметить, что второй способ более простой и легкоуправляемый. В общем случае для такой анимации достаточно трех управляющих кривых и создания ключей анимации в первом и последнем кадрах анимации, а небольшое изменение кривой трансформации по! ворота в Curve Editor (Редактор кривых) позволяет получить реалистичное движе! ние листа при минимальных трудозатратах. ПРИМЕЧАНИЕ ___________________________________________________________________ Файл урока с настройками анимации book_var02.max находится на прилагаемом DVD в папке Examples\Глава 08\Book.
Анимация рукописного шрифта В предыдущем разделе мы рассмотрели два варианта анимации страниц книги. А что если пойти дальше и смоделировать процесс письма шариковой ручкой?
300
Глава 8. Анимация сцен
А может быть, вспомнить время, когда наши родители, дедушки и бабушки писали перьевыми ручками, аккуратно выводя ровным почерком слово за словом? С точ! ки зрения моделирования и анимации такой текст более сложный, но вместе с тем и более интересный. Рассматривая варианты такой анимации, я пришел к выводу, что сделать ее мож! но как минимум пятью способами:
анимируя параметр Length (Длина) примитива Cylinder (Цилиндр) с одновре! менным использованием модификатора Path Deform (Деформация по траекто! рии);
анимируя параметры объекта Loft (Лофтинговые);
применив альфа!канал материала в качестве средства анимации;
воспользовавшись анимированной текстурой;
применив модификатор Sweep (Шаблон) совместно с анимированной тексту! рой прозрачности.
Каждый способ имеет свои достоинства и недостатки, но вместе с тем каждый из них может решать конкретные задачи. Мы не станем рассматривать все варианты, а остановимся лишь на том, который предоставляет наибольшую гибкость в рабо! те, но требует больше времени и сил для создания такой анимации. Кроме того, интересным дизайнерским решением может явиться анимация не только самого шрифта, но и ручки, пишущей этот текст. В данном разделе мы не станем рассматривать процесс моделирования объектов, по! этому для работы вам необходимо загрузить сцену animated_text_start.max, которая находится в папке Examples\Глава 08\Text прилагаемого к книге DVD (рис. 8.32).
Рис. 8.32. Вид сцены animated_text_start.max в окне проекции Perspective (Перспектива)
Анимация рукописного шрифта
301
Все, что нам необходимо для начала выполнения упражнения, — это три объекта: лист бумаги (создан при помощи примитива Plane (Плоскость)), любой каллигра! фический шрифт (сплайн Text (Текст) с использованием шрифта, установленного на вашем компьютере) и модель перьевой ручки. Вы можете применить любой текст или шрифт. Я создал также дополнительные объекты — чернильницу и плос! кость стола. Способ анимации появляющегося шрифта, который я собираюсь описать, основан на использовании модификатора Loft (Лофтинговые), поэтому необходимо по! строить сплайн пути. Но, прежде чем начать какое бы то ни было моделирование, следует подготовить сцену. На самом деле нам нужно убрать из сцены неисполь! зуемые объекты и заблокировать текст от случайного смещения. Чтобы выполнить первое, щелкните на тексте правой кнопкой мыши и выберите в контекстном меню строку Hide Unselected (Спрятать невыделенное). Для блокирования текста можно воспользоваться командой Freeze Selection (Заморозить выделенное) контекстно! го меню текста. После этих подготовительных действий выполните команду главного меню Create ShapesLine (СозданиеФормыЛиния), в результате чего на вкладке Create (Соз! дание) командной панели появятся свитки параметров строящейся линии. Устано! вите в свитке Creation Method (Метод создания) переключатели Initial Type (Начальный тип) и Drag Type (Вершина при перетаскивании) в положение Smooth (Сглажива! ние) для построения сглаженных вершин в процессе создания сплайна. Перейди! те в окно проекции Top (Cверху). Постройте сплайн пути таким образом, чтобы он начинался в левой части текста и проходил по середине шрифта (рис. 8.33).
Рис. 8.33. Сплайн, построенный для первых трех символов текста
Построение удобнее всего вести, развернув окно проекции во весь экран монито! ра. Для этого необходимо нажать сочетание клавиш Alt+W. Можно также исполь! зовать режим эксперта — сочетание клавиш Ctrl+X.
302
Глава 8. Анимация сцен
При создании сплайна часть шаблона, по которому происходит построение, может оказаться за пределами окна проекции. В этом случае, дойдя до края окна проек! ции, нажмите клавишу I, и указатель вместе с изображением переместится в сере! дину окна проекции. Если во время построения сплайна вам понадобится удалить последнюю вершину или несколько вершин, то сделать это можно, не выходя из режима построения, нажав клавишу Backspace. Сначала построения ведутся достаточно приблизительно, чтобы создать общую форму сплайна с расчетом на последующее редактирование. Обратите внимание на то, что последовательность создания сплайна должна быть такой же, как и при написании текста пером, то есть как мы построим сплайн, так он будет затем появ! ляться при анимации. ВНИМАНИЕ ______________________________________________________________________ Сплайн в данном случае необходимо создавать непрерывным от начала до конца, по всей длине текста. Это ограничение вызвано тем, что модификатор Loft (Лофтинго& вые) для создания объекта может использовать только один непрерывный сплайн пути. Модификатор Sweep (Шаблон) может работать с объектами, имеющими разры& вы. Однако он больше подойдет для имитации написания шариковой ручкой, так как не имеет настроек для изменения размеров сечения по пути следования.
После того как будет построена базовая форма, переходите к ее редактированию. Для этого выделите сплайн, перейдите на вкладку Modify (Изменение) командной панели и в свитке Selection (Выделение) щелкните на кнопке Vertex (Вершина), чтобы перейти в режим редактирования вершин. Теперь можно более точно рас! положить вершины внутри текста, при необходимости удаляя лишние (клавиша Delete) или добавляя новые (кнопка Refine (Уточнить) из свитка Geometry (Геомет! рия)). СОВЕТ ___________________________________________________________________________ При редактировании может понадобиться более точная настройка кривых в местах перехода. В этом случае лучшим решением будет не добавление новых вершин, а из& менение типа излома вершины: вместо Smooth (Сглаженная) — Bezier (Безье) или Corner (Угловая). Для этого нужно щелкнуть на вершине правой кнопкой мыши и вы& брать в появившемся меню соответствующий тип. Если при редактировании манипу& ляторов вершин типа Bezier (Безье) нажать и удерживать Shift, то тип вершины авто& матически изменится на Bezier Corner (Безье угловая).
В результате у вас должен получиться непрерывный сплайн (рис. 8.34). Теперь необходимо создать сплайн сечения. Для этого воспользуемся формой Ellipse (Эллипс), построить которую можно, выполнив команду CreateShapesEllipse (СозданиеФормыЭллипс). Строить необходимо в окне проекции Front (Спе! реди). Это имеет существенное значение для построения лофт!объектов, так как форма сечения должна располагаться перпендикулярно форме пути. Задайте
Анимация рукописного шрифта
303
эллипсу следующие значения параметров: Length (Длина) — 0,2 и Width (Шири! на) — 3,5.
Рис. 8.34. Сплайн пути, созданный на основе стандартного шрифта
ПРИМЕЧАНИЕ ___________________________________________________________________ Формой пути может служить не только эллипс, но и прямоугольник, а также линия. Единственное отличие эллипса от этих объектов состоит в том, что позже, при ре& дактировании лофт&объекта, у вас будет возможность применить не только транс& формацию масштаба, но и деформацию кручения в местах изменения формы сплай& на. В результате на форме не будет видимых изломов.
Чтобы построить надпись по созданным сплайнам пути и сечения, сделайте сле! дующее. 1.
Выделите сплайн пути. Перейдите на вкладку Create (Создание) командной панели, щелкните на кнопке Geometry (Геометрия) и в раскрывающемся спис! ке выберите строку Compound Objects (Составные объекты).
2.
В свитке Object Type (Тип объекта) щелкните на кнопке Loft (Лофтинговые). В результате в области свитков на командной панели появятся свитки пара! метров для создания лофт!объектов.
3.
В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Front (Спереди) щелкните на эллипсе для построе! ния формы надписи.
4.
В области Mapping (Проекционные координаты) свитка Surface Parameters (Свойства поверхности) установите флажок Apply Mapping (Применить проек! ционные координаты), а в области Output (Вывод) — переключатель в положе! ние Mesh (Сетка) (рис. 8.35).
5.
В свитке Skin Parameters (Параметры поверхности) задайте основные парамет! ры отображения поверхности созданного объекта (рис. 8.36).
304
Рис. 8.35. Свиток Surface Parameters (Свойства поверхности) построенного лофт&объекта
Глава 8. Анимация сцен
Рис. 8.36. Свиток Skin Parameters (Параметры поверхности) настроек лофт&объекта
Проанализируйте полученную поверхность надписи, особенно в том окне проек! ции, в котором будет создана анимация. В общем случае полученный результат является удовлетворительным для анима! ции среднего плана, но если вы хотите улучшить форму лофт!объекта, то восполь! зуйтесь трансформацией масштаба (Scale (Масштабирование)) или трансформа! цией скручивания (Twist (Скручивание)) из свитка Deformations (Деформации) настроек лофт!объекта на вкладке Modify (Изменение) командной панели. То, что получилось у меня после небольшого редактирования формы текста, представле! но на рис. 8.37.
Рис. 8.37. Текст, полученный при использовании составных объектов
Создадим материал для шрифта. Как я уже говорил ранее, это будет материал с ани! мированной прозрачностью, которая позволит создать эффект написания (после! довательного появления букв). Для этого сделайте следующее. 1.
Откройте окно Material Editor (Редактор материалов), выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов).
Анимация рукописного шрифта
305
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 (Базовые параметры раскраски по Блинну) с настройками материала чернил
Рис. 8.39. Настройки карты Gradient Ramp (Усовершенствованный градиент)
Рассмотрим некоторые выполненные настройки. Использование для создания градиентного перехода двух цветов (белого и черного) обусловлено тем, что белый цвет в канале Opacity (Непрозрачность) соответствует непрозрачности объекта, а черный — полной прозрачности. Причем положение флага для черного цвета в настоящее время не имеет принципиального значения. Тип градиента — Linear (Прямой), интерполяция — Solid (Постоянная), таким образом, прозрачность бу! дет изменяться линейно по мере прохождения по объекту от начала до конца. Па! раметр Blur (Размытие) должен иметь минимальное значение, для того чтобы гра! ница непрозрачности была как можно более четкой. После того как будут выполнены все настройки, можно анимировать параметр изме! нения положения маркера цвета. Для этого достаточно включить запись ключей
306
Глава 8. Анимация сцен
анимации (нажать кнопку Auto Key (Автоключ)) и передвинуть ползунок таймера анимации в крайнее правое положение. После этого в окне Material/Map Browser (Окно выбора материалов и карт) передвиньте средний флаг (черного цвета) в конец шка! лы градиента, что вызовет создание для этого параметра ключа анимации. В ре! зультате в строке треков появятся два ключа анимации: в начальном и последнем кадрах. Если сейчас передвинуть ползунок таймера анимации вперед или назад, то и шкала градиента в свитке Gradient Ramp Parameters (Параметры усовершенство! ванного градиента) должна меняться соответственно. Выключите запись кадров (еще раз щелкните на кнопке Auto Key (Автоключ)). ВНИМАНИЕ ______________________________________________________________________ Если при изменении положения ползунка таймера анимации не происходит смеще& ние среднего маркера градиента, то необходимо повторить создание ключей анима& ции сначала.
Теперь нужно подкорректировать ключи анимации. Для этого откройте окно ре! дактирования кривых, выполнив команду Graph EditorsTrack View — Curve Editor (Графические редакторыПросмотр треков — редактирование кривых). В левой части окна найдите анимированную текстуру (ей в данном случае соответствует строка Gradient Ramp (Усовершенствованный градиент)) и параметр Position (Гра! ница) для третьего флага градиента (рис. 8.40).
Рис. 8.40. Окно Track View — Curve Editor (Просмотр треков — редактирование кривых)
В правой части окна выделите первый ключ анимации, введите в выделенное поле значение 0 и щелкните на кнопке Set Tangents to Linear (Установить линейное управление для касательных) . Затем выделите второй ключ анимации, задай! те для него значение, равное 100, и также установите линейное управление для ка! сательных. Таким образом, положение флага черного цвета будет равномерно из! меняться в диапазоне от 0 до 100. После настроек анимации необходимо присвоить материал тексту, для чего доста! точно перетащить мышью материал из окна редактора на объект в окне проекции.
Анимация рукописного шрифта
307
Если сейчас выполнить тестовую визуализацию в 50 кадре анимации, то в резуль! тате половина текста окажется невидимой (рис. 8.41).
Рис. 8.41. Результат визуализации текста в 50 кадре анимации
Казалось бы, с анимацией текста можно заканчивать, но осталась еще одна досад! ная деталь — отображение геометрии между словами. Оказывается, эту неприят! ность можно легко устранить: достаточно к лофт!объекту применить модифика! тор редактирования геометрии Edit Mesh (Редактирование поверхности) и, выделив на уровне редактирования полигонов все ненужные участки поверхности, удалить их (рис. 8.42). При этом текстурные координаты объекта сохранятся и, следова! тельно, анимация нисколько не пострадает.
Рис. 8.42. Текст после редактирования поверхности
После анимации появляющегося текста можно переходить к анимации ручки. Прежде всего необходимо отобразить спрятанные ранее ручку и сплайн текста. Для этого перейдите на вкладку Display (Отображение) командной панели и в свит! ке Hide (Спрятать) щелкните на кнопке Unhide by Name (Отобразить по имени). В открывшемся окне выберите нужные объекты и нажмите кнопку Unhide (Ото! бразить).
308
Глава 8. Анимация сцен
В качестве пути, по которому будет двигаться перо, можно было бы использовать созданный ранее сплайн для лофт!объекта (шрифта). Но поскольку я собираюсь немного подкорректировать вершины сплайна в промежутках между словами и для большей реалистичности изменить сплайн так, чтобы получить движение пера по направлению к чернильнице и обратно к тексту, то необходимо создать копию этого сплайна. ВНИМАНИЕ ______________________________________________________________________ Копирование сплайна на данном этапе является важным потому, что ранее создан& ный сплайн для лофт&объекта (текста) — это образец (Instance) и любые изменения его формы отобразятся на внешнем виде текста, созданного при помощи лофтинга.
Прежде всего необходимо выделить вершины сплайна, находящиеся на концах сегментов между словами, и, щелкнув на выделении правой кнопкой мыши, вы! брать из контекстного меню тип Bezier Corner (Безье угловая) (рис. 8.43). Это необ! ходимо для того, чтобы, редактируя промежуточные сегменты, не нарушить фор! му сплайна, описывающего буквы.
Рис. 8.43. Выделенные вершины сплайна, расположенные на границах между словами, после присвоения им типа Bezier Corner (Безье угловая)
В окне проекции Front (Спереди) переместите манипуляторы выделенных вершин (только с внутренней стороны сегментов, расположенных между словами) вверх так, чтобы впоследствии перо, проходя по сплайну, в этих местах отрывалось от бумаги (рис. 8.44). Можно улучшить анимацию, дополнительно отредактировав сплайн на отрезке между буквами o и m, чтобы перо ручки окунулось в чернильницу, а затем продол! жило писать. Но в этом случае длина сплайна существенно изменится, что повли! яет на скорость движения ручки вдоль текста.
Анимация рукописного шрифта
309
Рис. 8.44. Форма сплайна с выделенными управляющими вершинами в окне проекции Perspective (Перспектива) (сверху) и в окне проекции Front (Спереди) (снизу)
ВНИМАНИЕ ______________________________________________________________________ В общем случае для того, чтобы движения ручки и появление текста были синхронны& ми, необходимо, чтобы сплайн, по которому строится текст (лофт&объект), и путь, по которому проходит перо ручки, были одинаковой длины. Небольшое изменение вы& соты сегментов сплайна в местах между словами (при малом расстоянии между ними) критически не влияет на увеличение длины и в данном примере не рассматри& вается. Однако, если вы хотите, чтобы движение пера и появление текста идеально совпадали, необходимо изменить анимацию прозрачности материала на всех отрез& ках между словами.
При изменении длины сплайна нужно компенсировать анимацию отображения текста. Для этого необходимо в начале и в конце участка, на котором будет про! исходить движение ручки к чернильнице и обратно, установить дополнительные ключи анимации. Отследить положение центральной точки воспроизведения ани! мации будет проще всего после создания вспомогательного объекта и анимации его по сплайну пути. Чтобы создать такую анимацию, сделайте следующее. 1.
Постройте вспомогательный объект, выполнив команду CreateHelpersDummy (СозданиеВспомогательные объектыПустышка). Задайте этому объекту размер, равный половине толщины текста (так будет легче отследить траекто! рию движения).
310
Глава 8. Анимация сцен
2.
Создайте анимацию движения объекта!пустышки (в нашем случае Dummy01) по сплайну пути. Для этого выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграничение по пути) и в любом из окон проекций выберите в качестве пути отредактированный сплайн. В результате этих действий вспомогательный объект переместится в начало сплайна, а при перемещении ползунка таймера анимации будет двигаться вдоль сплайна пути.
3.
Активизируйте окно перспективной проекции и запустите воспроизведение анимации, щелкнув на кнопке Play Animation (Воспроизвести анимацию) .
Обратите внимание на то, что при воспроизведении анимации вспомогательный объект очень быстро проходит по всему пути. Для написания пером это слишком большая скорость движения — необходимо ее замед! лить. Это можно сделать, увеличив время воспроизведе! ния анимации следующим образом.
Рис. 8.45. Окно Re&scale Time (Сменить масштаб времени)
1.
Нажмите кнопку Time Configuration (Конфигурация времени) или щелкните правой кнопкой мыши на любой из кнопок управления анимацией.
2.
В окне Time Configuration (Конфигурация времени) нажмите кнопку Re-scale Time (Сменить масштаб вре! мени).
3.
В области New (Новое) открывшегося окна Re-scale Time (Сменить масштаб времени) задайте параметру End Time (Время окончания) значение, равное 600 (рис. 8.45).
Запустите воспроизведение анимации в окне проекции Respective (Перспектива) и посмотрите, устроит ли вас время воспроизведения.
ПРИМЕЧАНИЕ ___________________________________________________________________ Если вы создавали собственный текст, то, возможно, вам придется изменять время воспроизведения анимации соответственно длине надписи.
После того как результат по времени воспроизведения анимации покажется вам удовлетворительным, передвиньте ползунок таймера анимации так, чтобы вспо! могательный объект сместился на начало сегмента между буквами o и m (в моем случае это 399 кадр анимации) (рис. 8.46). Откройте окно редактирования графов для карты Gradient Ramp (Усовершенство! ванный градиент), которую мы построили ранее, выполнив команду Graph Editors Track View — Curve Editor (Графические редакторыПросмотр треков — редактиро! вание кривых) главного меню. В левой части окна выберите строку с анимацией положения третьего флага градиента. Затем в окне редактирования кривых в мес!
Анимация рукописного шрифта
311
те положения текущего кадра анимации, обозначенного двумя белыми вертикаль! ными линиями, создайте ключ. Для этого нужно нажать кнопку Add Keys (Добавить ключи) и щелкнуть кнопкой мыши на кривой в том месте, где должен быть соз! дан ключ (рис. 8.47).
Рис. 8.46. Положение вспомогательного объекта Dummy01 в 399 кадре анимации
Рис. 8.47. Окно Track View — Curve Editor (Просмотр треков — редактирование кривых) с ключом в 399 кадре анимации
Передвиньте ползунок анимации так, чтобы вспомогательный объект переместил! ся к началу буквы m (в моем случае это 428 кадр), и снова создайте ключ анимации для третьего флага карты Gradient Ramp (Усовершенствованный градиент), щелк! нув на кривой анимации. Таким образом, мы создали два ключа анимации для карты Gradient Ramp (Усовершен! ствованный градиент), которые позволят нам скорректировать синхронное ото! бражение текста и перемещение ручки по этому тексту. Сейчас можно вернуться
312
Глава 8. Анимация сцен
к редактированию сплайна пути и добавить к сегменту между буквами o и m три новые точки (команда Refine (Уточнить)) с таким расчетом, чтобы перо, проходя по этому сплайну, попадало в чернильницу (рис. 8.48).
Рис. 8.48. Новая форма сегмента между буквами о и m
Если сейчас, передвигая ползунок таймера, обратить внимание на то, каким кад! рам анимации соответствует положение вспомогательного объекта Dummy01 в на! чале и в конце редактируемого сплайна, то можно заметить, что они больше не со! относятся с ключами в 399 и 428 кадрах. Увеличив длину сплайна, мы изменили время прохождения контрольных точек. Исправить это можно, отредактировав созданные ключи анимации для градиента. Но прежде будет не лишним изменить скорость прохождения вспомогательного объекта на отрезке к чернильнице и об! ратно, так как написание текста занимает больше времени, чем перемещение руч! ки в пространстве, а движение вспомогательного объекта (соответственно, и руч! ки) сейчас постоянно. Создадим два новых ключа анимации для вспомогательного объекта Dummy01. 1.
Передвигая ползунок таймера, перейдите в кадр, где Dummy01 становится в на! чало движения к чернильнице (у меня — 279).
2.
Откройте окно редактирования графов и выберите в левой части окна строку с анимацией объекта Dummy01. В области редактирования кривых в месте по! ложения текущего кадра анимации (кадр 279), обозначенного двумя белыми вертикальными линиями, создайте ключ.
3.
Передвиньте ползунок таймера анимации к тому месту, где начинается сплайн буквы m (в моем случае это 480 кадр), и повторите процедуру создания ключа (рис. 8.49).
Анимация рукописного шрифта
313
Рис. 8.49. Дополнительные ключи анимации, созданные для объекта Dummy01
4.
В строке треков (в нижней части окна 3ds Max) переместите вновь созданные ключи с 279 кадра на 390 и с 480 на 450 кадр. Таким образом мы уменьшим время на прохождение этого участка.
Теперь нужно синхронизировать отображение текста с измененным движением объекта Dummy01 и можно приступать к анимации ручки. Это можно сделать, сно! ва воспользовавшись редактором кривых. На сей раз необходимо передвинуть ключи для третьего флага карты Gradient Ramp (Усовершенствованный градиент) в положение 390 и 450 кадров (рис. 8.50).
Рис. 8.50. Окно Track View — Curve Editor (Просмотр треков — редактирование кривых) после редактирования ключей анимации
ПРИМЕЧАНИЕ ___________________________________________________________________ При желании вы можете выполнить аналогичное создание и редактирование ключей анимации для всех участков сплайна, не относящихся к написанию текста (например, начальное положение ручки в чернильнице).
314
Глава 8. Анимация сцен
Для создания более реалистичных движений ручки понадобится еще один сплайн, который будет управлять перемещением в пространстве ее второго (верхнего) конца. Сделать такой сплайн совсем не сложно: достаточно зеркально отобразить сплайн, по которому проходит перо, увеличить сплайн в два раза по оси Y и размес! тить его немного выше ручки (рис. 8.51).
Рис. 8.51. Форма и положение сплайна, предназначенного для управления анимацией верхнего конца ручки
ВНИМАНИЕ ______________________________________________________________________ Я не только зеркально отобразил сплайн для придания более естественного движе& ния ручке, но и откорректировал его форму в месте движения по направлению к чер& нильнице.
Создадим второй вспомогательный объект Dummy02 для верхнего сплайна. Его, как и Dummy01, необходимо анимировать по пути при помощи команды Animation ConstraintsPath Constraint (АнимацияОграниченияОграничение по пути), а в качестве пути выбрать верхний сплайн. Если сейчас просмотреть анимацию, передвигая ползунок таймера анимации, то можно заметить, что движения по сплайнам первого и второго вспомогательных объектов не совпадают. Это вызвано тем, что для Dummy01 мы ранее устанавлива! ли на пути следования ключи анимации и редактировали их положение. Сейчас то же самое необходимо сделать и для Dummy02 при помощи редактора кривых. Это легко выполнить, если в местах расположения ключей Dummy01 создать клю! чи для Dummy02 и переместить их в вертикальной плоскости, контролируя изме! нение положения вспомогательного объекта в окне проекции Top (Cверху).
Анимация рукописного шрифта
315
Продолжим создание анимации. Создайте еще один вспомогательный объект Dummy03 размером в 2–3 раза больше первого (Dummy01) и разместите в простран! стве так, чтобы опорные точки его и вспомогательного объекта Dummy01 совпада! ли (рис. 8.52), для чего можно воспользоваться инструментом Align (Выравнива! ние) , расположенным на главной панели инструментов.
Рис. 8.52. Взаимное расположение вспомогательных объектов Dummy01 и Dummy03 в окне проекции Pespective (Перспектива)
Привяжите вспомогательный объект Dummy03 к первому вспомогательному объек! ту Dummy01. Для этого выделите Dummy03, нажмите кнопку Select and Link (Выделить и связать) и укажите в окне проекции на Dummy01. Сразу же после привязки про! верьте анимацию, передвинув ползунок таймера. Если все было выполнено пра! вильно, оба вспомогательных объекта будут передвигаться по пути синхронно. Третий вспомогательный объект мы создали из!за необходимости позициониро! вания верхней части ручки на объект Dummy02, расположенный на верхнем сплай! не. В этом должен помочь контроллер LookAt Constraint (Ограничение по линии взгляда). Для этого выполните следующие действия. 1.
Расположите ручку в первом кадре анимации так, чтобы перо ручки находи! лось в середине вспомогательного объекта Dummy03 (иначе говоря, в начале текста).
2.
При помощи Select and Link (Выделить и связать) привяжите ручку к объекту Dummy03.
3.
Проверьте анимацию. Ручка должна двигаться по сплайну, находясь в верти! кальном положении.
4.
Выделите вспомогательный объект Dummy03.
316
Глава 8. Анимация сцен
5.
Выполните команду меню AnimationConstraintsLookAt Constraint (АнимацияОграниченияОграничение по линии взгляда) и укажите в окне проекции объект Dummy02, на который будет направлен взгляд.
6.
В свитке LookAt Constraint (Ограничение по линии взгля! да) на командной панели установите ось направления взгляда Z (рис. 8.53), в результате чего ручка повернет! ся в направлении верхнего вспомогательного объекта Dummy02.
На этом процесс создания анимации можно считать закон! ченным. Осталось только выполнить визуализацию и со! хранить результат в файл.
Рис. 8.53. Свиток LookAt Constraint (Ограничение по линии взгляда) вспомогательного объекта Dummy03
ПРИМЕЧАНИЕ ____________________________________________ Файл урока с настройками ключей анимации и отредактиро& ванными сплайнами animated_text_end.max можно найти на при& лагаемом DVD в папке Examples\Глава 08\Text. В папке Video\ Глава 08 находится готовая анимация animated_text.avi.
Использование модификатора Cloth (Ткань) для симуляции поведения тканей Рассмотрим работу с модификатором Cloth (Ткань). В отличие от одноименного оператора модуля reactor, этот модификатор в первую очередь призван облегчить создание и анимацию одежды моделируемых персонажей. Данный модификатор имеет достаточно широкие возможности, которые можно довольно долго описы! вать, я же хочу показать, как при помощи модификатора Cloth (Ткань) можно лег! ко и просто создавать объекты, имитирующие поведение ткани. Мы опишем, как создать два объекта: скатерть и развевающийся флаг. Для создания модели скатерти нам понадобится простая сцена, состоящая из двух объектов: столешницы и скатерти. Для построения первого объекта воспользуй! тесь параметрическим объектом Box (Параллелепипед). В качестве второго будет использован объект формы Rectangle (Прямоугольник). Создайте оба объекта в окне проекции Top (Сверху). Расположите прямоугольник относительно объек! та столешницы сверху и центрируйте по осям X и Y (рис. 8.54).
ПРИМЕЧАНИЕ ___________________________________________________________________ Для создания ткани можно также воспользоваться параметрическим объектом Plane (Плоскость) с достаточным количеством сегментов по длине и ширине (допустим, 50), однако применение сплайнов позволяет получить дополнительные возможности: со& здание объектов произвольной формы (например, скатерть с фигурными краями), внутренних швов и разрезов. Особенно это актуально при создании одежды.
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
317
Рис. 8.54. Взаимное расположение объектов в сцене
На основе объекта Rectangle (Прямоугольник) необходимо создать поверхность. Самый легкий способ — преобразовать прямоугольник в полигональную поверх! ность. Однако при этом мы потеряем дополнительные возможности объекта формы. Лучшим выбором в данном случае будет использование модификатора Garment Maker (Моделирование одежды). Чтобы присвоить этот модификатор, выдели! те в одном из окон проекций прямоугольник и выполните команду главного меню ModifiersClothGarment Maker (МодификаторыТканьМоделирование одеж! ды). Обратите внимание, что два из четырех углов стали закругленными. Из! бавиться от этого можно, выполнив разбиение вершин этих углов, что приведет к созданию самостоятельных сплайнов на уровне подобъектов формы. Для этого перейдите в стеке модификаторов на нижний уровень (то есть выделите в стеке строку Rectangle (Прямоугольник)), щелкните на раскры! вающемся списке Modifier List (Список модификаторов) и выберите из списка модификатор Edit Spline (Редактиро! вание сплайна) (рис. 8.55). Для редактирования прямоугольника перейдите на уро! вень подобъектов Vertex (Вершина), для чего щелкните в настройках модификатора Edit Spline (Редактирование сплайна) на кнопке Vertex (Вершина) в свитке Selection (Выделение) или нажмите горячую клавишу 1. Выдели! те все четыре вершины прямоугольника, перейдите к свит! ку Geometry (Геометрия) и щелкните на кнопке Break (Раз! бить). После этого выйдите из режима редактирования вершин, повторно щелкнув на кнопке Vertex (Вершина), и вернитесь к модификатору Garment Maker (Моделирова! ние одежды).
Рис. 8.55. Положение модификатора Edit Spline (Редактирование сплайна) в стеке
318
Глава 8. Анимация сцен
Для продолжения работы необходимо обновить созданную модификатором по! верхность и увеличить ее топологию. Для этого в свитке Main Parameters (Основ! ные параметры) настроек модификатора Garment Maker (Моделирование одежды) щелкните на кнопке Mesh It! (Рассчитать сетку) и увеличьте значение параметра Density (Плотность) до 2.
ВНИМАНИЕ ______________________________________________________________________ Увеличение количества треугольников, образующих поверхность объекта, позволит создать более естественное поведение ткани. Однако на компьютерах с низкой про& изводительностью это может вызвать длительные расчеты динамики ткани и даже зависания. По данной причине на таких компьютерах лучше не задавать параметру Density (Плотность) значение больше 1.
В результате все углы станут ровными, а плотность сетки повысится, что позво! лит получить сглаженные складки поверхности ткани. На рис. 8.56, слева показан фрагмент прямоугольника с примененным модификатором Garment Maker (Моде! лирование одежды) до редактирования, а на рис. 8.56, справа — после.
Рис. 8.56. Фрагмент прямоугольника до редактирования (слева) и после него (справа)
Применим к прямоугольнику модификатор Cloth (Ткань), выполнив команду глав! ного меню ModifiersClothCloth (МодификаторыТканьТкань). Для настрой! ки поведения ткани выполните следующие действия. 1.
В свитке Object (Объект) настроек модификатора Cloth (Ткань) щелкните на кнопке Object Properties (Свойства объекта).
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
319
2.
В появившемся окне Object Properties (Свойства объекта) выберите из списка доступных объектов прямоугольник (объект с именем Rectangle01) и устано! вите переключатель в положение Cloth (Ткань).
3.
В области Cloth Properties (Свойства ткани) из раскрывающегося списка Presets (Предустановки) выберите строку Default (Исходный) (рис. 8.57).
Рис. 8.57. Настройка свойств объекта Rectangle01
4.
Чтобы использовать в расчетах поведения ткани поверхности стола (в нашем случае это построенный ранее параллелепипед), в окне Object Properties (Свой! ства объекта) щелкните на кнопке Add Objects (Добавить объекты), в появив! шемся окне Add Objects to Cloth Simulation (Добавить объекты к расчетам дина! мики ткани) выберите объект Box01 и нажмите кнопку Add (Добавить).
5.
Для объекта Box01 установите переключатель в положение Collision Object (Объект столкновения) и оставьте значения, принятые по умолчанию (рис. 8.58).
320
Глава 8. Анимация сцен
Рис. 8.58. Настройка свойств объекта Box01
6.
Щелкните на кнопке OK для закрытия окна Object Properties (Свойства объекта).
Все готово к расчетам динамики ткани. Чтобы запустить эти расчеты, необходимо в области Simulation (Моделирование) свитка Object (Объект) щелкнуть на кнопке Simulate (Моделирование) или на кнопке Simulate Local (Локальное моделирова! ние) (если не планируете создавать анимацию поведения ткани во времени). ПРИМЕЧАНИЕ ___________________________________________________________________ После запуска расчета динамики вы можете в любое время остановить его и выпол& нить дополнительную настройку свойств объектов, например изменить плотность сетки модификатора Garment Maker (Моделирование одежды). В этом случае необ& ходимо вернуть ползунок таймера анимации на первый кадр (если вы не использова& ли локальные расчеты динамики) и щелкнуть на кнопке Erase Simulation (Очистить моделирование) в свитке Object (Объект).
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
321
На рис. 8.59 показан результат расчета динамики ткани.
Рис. 8.59. Результат расчетов модификатора Cloth (Ткань)
ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 08\Cloth прилагаемого к книге DVD находится файл table& cloth.max, который можно загрузить для просмотра и анализа выполненной анима& ции.
Рассмотрим еще один вариант использования модификатора Cloth (Ткань): созда! дим модель развевающегося флага. В этом нам поможет замечательная особен! ность данного модификатора, позволяющая взаимодействовать со стандартными объектами категории Force (Сила). Как всегда, начнем с построения объектов. Для имитации флага нам понадобятся два объекта: Plane (Плоскость), имитирующий полотно флага, и Wind (Ветер), ко! торый будет удерживать флаг в горизонтальном положении (по умолчанию на объекты, к которым применен модификатор Cloth (Ткань), действует сила тя! жести). Для построения плоскости переключитесь в окно проекции Front (Спереди) и выпол! ните команду главного меню CreateStandard PrimitivesPlane (СозданиеПрос! тые примитивыПлоскость). В свитке Parameters (Параметры) построенного объекта установите желаемые размеры флага и увеличьте значения параметров Length Segs (Количество сегментов по длине) и Width Segs (Количество сегментов по ширине) до 20–25. Это позволит получить более естественную деформацию ткани.
322
Глава 8. Анимация сцен
Для построения объекта, имитирующего ветер, необходимо выполнить команду главного меню CreateSpaceWarpsForcesWind (СозданиеПространственные деформацииСилыВетер) и в окне проекции Top (Сверху) построить значок ветра, развернув его по направлению к флагу (рис. 8.60).
Рис. 8.60. Взаимное расположение плоскости и значка ветра
Назначьте плоскости модификатор ткани. Для этого в одном из окон проекций выделите плоскость и выполните команду главного меню ModifiersClothCloth (МодификаторыТканьТкань). Настройте модификатор следующим образом. 1.
Перейдите на уровень редактирования подобъектов модификатора Cloth (Ткань), для чего щелкните на плюсике, расположенном слева от имени модификатора в стеке, и выделите строку Group (Группа).
2.
Выделите слева верхнюю и нижнюю боковые вершины и щелкните на кнопке Make Group (Создать группу) в свитке Group (Группа). В результате откроется окно Make Group (Создать группу), в котором необходимо указать имя группы. Таким образом мы создадим группу из двух точек, которые будут крепиться к древку флага и не будут участвовать в расчетах динамики.
3.
После создания группы щелкните на кнопке Drag (Помеха) в свитке Group (Группа). При этом созданная группа должна быть активной (рис. 8.61).
4.
Выйдите из режима редактирования подобъектов, для чего щелкните в стеке модификаторов на строке Cloth (Ткань).
5.
В свитке Object (Объект) щелкните на кнопке Cloth Forces (Силы, воздейству! ющие на ткань).
6.
В левой части открывшегося окна Forces (Силы) щелкните на строке Wind01 и нажмите кнопку >, в результате чего Wind01 переместится в список Forces in Simulation (Симуляция сил).
Использование модификатора Cloth (Ткань) для симуляции поведения тканей
323
7.
Вернитесь к свитку Object (Объект) настроек модификатора Cloth (Ткань) и щелкните на кнопке Object Properties (Свойства объекта).
8.
В открывшемся окне Object Properties (Свойства объекта) выделите строку Plane01 и установите переключатель в положение Cloth (Ткань).
9.
Из раскрывающегося списка в области Cloth Properties (Свойства ткани) выбе! рите строку Silk (Шелк). Таким образом, объекту Plane (Плоскость) будут при! своены свойства шелковой ткани (рис. 8.62).
Рис. 8.61. Свиток Group (Группа) с созданной группой из двух точек
10.
Рис. 8.62. Свойства ткани, настроенные для объекта Plane01
Подтвердите выполненные изменения щелчком на кнопке OK.
Все предварительные настройки произведены, осталось только увеличить силу вет! ра и запустить выполнение расчетов динамики ткани. Для этого выделите в одном из окон проекций значок ветра и в свитке Parameters (Параметры) настроек данно! го объекта увеличьте значение параметра Strength (Мощность) до 5. Чтобы запустить
324
Глава 8. Анимация сцен
расчет динамики, вернитесь к модификатору Cloth (Ткань) и в свитке Object (Объект) щелкните на кнопке Simulate (Моделирование). На рис. 8.63 представлен флаг, полученный при помощи модификатора Cloth (Ткань).
Рис. 8.63. Флаг, полученный при помощи модификатора Cloth (Ткань)
Мы рассмотрели только малую часть того, что можно сделать при помощи моди! фикатора Cloth (Ткань). Симуляция реального поведения ткани требует более де! тальных настроек с большим количеством экспериментов. В качестве самостоя! тельного задания вы можете попробовать выполнить расчеты с другими видами ткани и даже составить и сохранить свои собственные настройки для их последу! ющего применения. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 08\Cloth прилагаемого DVD находится файл flag.max, который можно загрузить для просмотра и анализа выполненной анимации.
Анимация движения танковой гусеницы Если вы занимаетесь моделированием и анимацией в программе 3ds Max, вы, ско! рее всего, уже хотя бы раз создавали колесную и гусеничную технику. Выполняя модели такого уровня сложности, всегда хочется добавить в них какую!нибудь «изю! минку». Таким дополнением может послужить анимация движения. В данном раз! деле рассмотрим один из способов создания и анимации танковой гусеницы.
Анимация движения танковой гусеницы
325
Для выполнения данного упражнения необходимо загрузить начальную сцену track_start.max с объектами, которые нам понадобятся в работе (рис. 8.64). Она находится на прилагаемом к книге DVD в папке Examples\Глава 08\ Track.
Рис. 8.64. Окно проекции Perspective (Перспектива) после загрузки стартовой сцены
Сначала необходимо построить последовательность гусеничных звеньев. Это мож! но сделать двумя способами:
создать длинную цепочку из повторяющихся элементов, а затем деформиро! вать ее по сплайну;
используя сплайн, анимировать одно звено, а затем создать копии этого звена со смещением: один кадр анимации — одно звено.
Воспользуемся вторым способом для создания статической геометрии, а затем создадим и анимируем звенья танковой гусеницы с помощью сценария. Сначала необходимо вычислить количество копий звена, которые нам понадобятся, а затем анимировать звено гусеницы по сплайну пути. Для этого выполните следующее. 1.
В окне проекции Top (Сверху) увеличьте масштаб звена гусеницы так, чтобы оно заняло максимально возможную площадь (так будет проще выполнять измерения, и они будут точнее).
2.
Измерьте поперечную ширину звена, исключая размер выступающих шипов (реальный размер, который будут иметь звенья, составленные в цепочку). Для этого воспользуйтесь командой главного меню ToolsMeasure Distance (Ин! струментыИзмерить расстояние). После выполнения команды щелкните на начальной и конечной точках замеряемого участка и на строке состояния.
326
Глава 8. Анимация сцен
В результате в поле ввода макрокоманды появится необходимая цифра. В моем случае это 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).
Рис. 8.66. Настройки утилиты Measure (Линейка)
Рис. 8.67. Окно Time Configuration (Настройка временных интервалов) с измененным количеством кадров анимации
327
Анимация движения танковой гусеницы
Для создания анимации сделайте следующее. 1.
В одном из окон проекций выделите звено.
2.
Выполните команду AnimationConstraintsPath Constraint (АнимацияОгра! ниченияОграничение по пути) и укажите на сплайн track_path. В резуль! тате он будет использован в качестве формы пути.
3.
В свитке Path Parameters (Параметры пути) настроек контроллера на команд! ной панели установите флажок Follow (Следовать), чтобы объект поворачивал! ся вместе с поворотом кривой. Установите также флажок Allow Upside Down (Разрешить переворачиваться) (по умолчанию контроллер придерживается одной локальной оси, а у нас замкнутая кривая), выберите ось Y и установите флажок Flip (Обратить) (рис. 8.68).
4.
Выделите звено и создайте его копию. Для этого воспользуйтесь командой главного меню ToolsSnapshot (ИнструментыСнимок). В открывшемся одноименном окне установите переключатель в положение Range (Диапазон) и задайте следующие значения параметрам: From (От) — 0, To (До) — 89 и Copies (Копии) — 90. В качестве метода клонирования выберите Instance (Образец) (рис. 8.69).
Рис. 8.68. Свиток Path Parameters (Параметры пути) настроек контроллера
Рис. 8.69. Настройки создаваемых копий в окне Snapshot (Снимок)
ПРИМЕЧАНИЕ ___________________________________________________________________ Значение параметра To (До) равно 89, потому что, выполнив полный круг по замкну& той форме, объект вернется в начальное положение.
328
Глава 8. Анимация сцен
Результат клонирования одного звена представлен на рис. 8.70. Таким же образом строятся и другие статические последовательности объектов, например элементы ограждения, столбы, кнопки и даже ресницы.
Рис. 8.70. Копии звеньев, созданные с помощью инструмента Snapshot (Снимок)
Итак, приступим к анимации. Выполнить вручную анимацию такого количества объектов достаточно сложно, даже если речь идет о простом повторении несколь! ких операций. Все было бы просто, если бы нам пришлось настроить анимацию двух или даже десяти звеньев, но у нас их девяносто. Придется обратиться к мак! росценарию, который позволит автоматизировать этот процесс. Звучит пугающе, но попробуем все сложности свести к минимуму. Сохраните и закройте выполненную сцену. Затем загрузите с прилагаемого DVD начальный файл данного упражнения track_start.max из папки Examples\ Глава 08\Track. Программа 3ds Max обладает возможностью отслеживать и записывать почти все команды и действия, выполняемые в процессе работы. Делается это при помощи модуля MAXScript Listener (Интерпретатор MAXScript). Его окно можно открыть, выполнив команду главного меню MAXScriptMAXScript Listener (MAXScript Интерпретатор MAXScript) или нажав клавишу F11. Мы используем его в каче! стве основного источника списка будущих макрокоманд. Но сначала рассмотрим кратко, что нам надо будет сделать для создания анимированной гусеницы. В первую очередь нам понадобится анимировать имеющееся звено при помощи контроллера Path Constraint (Ограничение по пути). Затем, используя единствен! ный анимированный параметр этого контроллера (процент пути, пройденный зве! ном гусеницы в пределах анимированного участка), привяжем к нему создан! ные копии этого объекта, выполнив их относительное смещение. Таким образом,
Анимация движения танковой гусеницы
329
мы получим один родительский объект, который позволит управлять скоростью движения всей гусеницы путем изменения времени прохождения этим объектом полного цикла. Иными словами, изменяя время, за которое одно звено гусеницы пройдет полный круг. Начнем с настройки записи макрокоманд. Откройте окно MAXScript Listener (Ин! терпретатор MAXScript), для чего используйте либо одноименную команду глав! ного меню MAXScript, либо клавишу F11. В появившемся окне выполните команду меню MacroRecoderEnable (Запись макросаВключить) для включения записи всех производимых команд (рис. 8.71).
Рис. 8.71. Настройки меню MacroRecoder (Запись макроса)
В результате окно интерпретатора разделится на две части: в верхней будут выво! диться макрокоманды, соответствующие выполняемым действиям, а в нижней — отладочная информация. Одновременно нижнее окно является и полем для ввода макрокоманд. Посмотрим, как это все работает. Выделите в окне проекции Top (Сверху) сцены звено гусеницы и копируйте его через буфер обмена (или любым доступным способом) с помощью сочетаний клавиш копирования Ctrl+Ñ и вставки Ctrl+V. В результате в верхней части окна появится запись, состоящая из четырех строк. Для исполнения этого кода откройте окно редактора макрокоманд, выполнив команду главного меню MAXScriptNew Script (MAXScriptСоздать макрос). В окне отладчика выделите строки, созданные программой автоматически, и перетащите их в окно редактора. Закомментируйте вторую строку, поставив перед ней два минуса, так как она вызывает окно диалога клонирования объекта и нам не нужна (рис. 8.72). Выполните макрос, воспользовавшись командой меню данного окна ToolsEvaluate All (ИнструментыОценить все) и предварительно удалив построенную ранее копию звена. Проверьте список объектов, вызвав его кнопкой Select by Name (Выделить по имени) , и убедитесь в том, что макрос создал копию объекта track.
330
Глава 8. Анимация сцен
Рис. 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.
5.
В этом же свитке в области Path Options (Параметры пути) установите флажки Follow (Следовать) и Allow Upside Down (Разрешить переворачиваться). В обла! сти Axis (Оси) выберите ось Y и установите флажок Flip (Обратить). Как вы видите, настройки такие же, как и для построения статических копий звена (см. рис. 8.68).
После выполнения описанных операций откройте окно MAXScript Listener (Интер! претатор MAXScript). Выделите и переместите в окно редактора макрокоманд пять последних строк, относящихся к выбору и настройке контроллера Path Constraint (Ограничение по пути) (рис. 8.75). Если бы мы сейчас запустили на выполнение этот код, то у нас было бы создано еще одно звено, а копии звена с именем track01 был бы присвоен контроллер Path Constraint (Ограничение по пути). Но обратите внимание на то, что, когда мы вы! бирали сплайн пути, интерпретатор не внес соответствующую строку в список выполненных операций. В связи с этим в конец кода необходимо дописать в окно редактора следующую строку: $.pos.controller.path=$track_path.
Анимация движения танковой гусеницы
Рис. 8.73. Свиток Assign Controller (Назначить контроллер) настроек объекта track
331
Рис. 8.74. Окно Assign Position Controller (Назначить контроллер положения)
Рис. 8.75. Окно редактора макрокоманд после добавления кода
У контроллера Path Constraint (Ограничение по пути) существует один анимируе! мый параметр — Percent (Проценты), который определяет проценты пройденного объектом пути. Этому параметру автоматически было задано значение нулевого и последнего кадра анимации. Но нам не нужна анимация, устанавливаемая по умолчанию, мы собираемся привязывать все копируемые объекты к одному зве! ну — track. В связи с этим нам необходимо удалить сгенерированные автомати! чески ключи анимации. Это можно сделать, добавив в код еще одну строку — deleteKeys $.pos.controller.percent.keys.
332
Глава 8. Анимация сцен
ПРИМЕЧАНИЕ ___________________________________________________________________ Знак $ указывает на то, что следом за ним должно идти имя объекта, но так как его нет, то подразумевается выделенный объект сцены.
Если сейчас запустить код на исполнение, то мы получим копию объекта 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.77 представлен вид редактора со всеми полученными до настоящего момента командами. Теперь нужно добавить в окно редактора несколько строк, написанных самостоя! тельно, без помощи окна 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.
Анимация движения танковой гусеницы
Рис. 8.76. Свиток Assign Controller (Назначить контроллер) настроек объекта track01
333
Рис. 8.77. Окно редактора макрокоманд на данном этапе
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 кадр анимации или дальше. Чем дальше расположить этот ключ, тем
334
Глава 8. Анимация сцен
Рис. 8.78. Окончательный код в окне редактора макрокоманд
медленнее будет двигаться гусеница танка, причем ее движение можно ускорить, переместив этот же ключ к началу временного диапазона. ВНИМАНИЕ ______________________________________________________________________ Минимальное значение скорости нужно установить сразу, так как в дальнейшем ско& рость можно будет увеличить.
Для этого задайте общее количество кадров анимации равным не менее 400. Для этого откройте окно Time Configuration (Настройка временных интервалов) и в поле End Time (Время окончания) введите значение 400. После этого в одном из окон проекций выделите объект track и передвиньте ключевой кадр из 100, созданного по умолчанию, в 400. СОВЕТ ___________________________________________________________________________ Чтобы быстро изменить временной диапазон шкалы анимации, можно нажать соче& тание клавиш Ctrl+Alt, щелкнуть правой кнопкой мыши на шкале анимации и переме& щать указатель влево (для уменьшения количества кадров) или вправо (для увеличе& ния). Нажатие этих же клавиш в сочетании с левой кнопкой мыши позволяет изменять начало временного диапазона, установленное по умолчанию в нулевой кадр.
Теперь необходимо установить зацикливание для анимации главного звена. Для этого выделите объект track и откройте окно редактора кривых командой Graph EditorsTrack View — Curve Editor (Графические редакторыПросмотр треков — ре! дактирование кривых). В левой части появившегося окна выберите анимирован! ный трек для выделенного объекта (рис. 8.79).
Анимация движения танковой гусеницы
335
Рис. 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, вы увеличите скорость движения гусеницы в два раза.
336
Глава 8. Анимация сцен
Сейчас анимируем вращение колес, по которым движется гусеница. Очевидно, что колесо выполнит столько оборотов за один оборот гусеницы, сколько длин окруж! ностей колеса укладывается в длине сплайна. Разберемся в этом на практике. Сна! чала узнаем диаметр колеса. Для этого выделите большое колесо и на вкладке 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 (Движение) командной панели.
Рис. 8.81. Свиток Assign Controller (Назначить контроллер) объекта Wheel01
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.
В нижней части окна щелкните на кнопке Assign to Controller (Назначить контроллеру) и в появившем! ся окне Track View Pick (Выбрать трек) выберите объект track. Раскройте списки его параметров и ак! тивизируйте строку Percent: Linear Float (Проценты: линейное значение с плавающей точкой) (рис. 8.83).
Анимация движения танковой гусеницы
337
Рис. 8.82. Переменная pathPerc, созданная в окне Expression Controller (Контроллер выражения)
Рис. 8.83. Окно Track View Pick (Выбрать трек)
6.
В области Expression (Выражение) окна Expression Controller (Контроллер выра! жения) введите следующее выражение: degToRad(6.578*360*pathPerc) и щелкните на кнопке Evaluate (Оценить). Разберем это выражение. Функция degToRad(), как вы уже знаете, переводит градусы, которыми удобно опери! ровать пользователю, в радианы, с которыми работает 3ds Max. Выражение
338
Глава 8. Анимация сцен
в скобках определяет угол поворота колеса в градусах: количество оборотов колеса на один оборот гусеницы, рассчитанный нами ранее (6,578), умножен! ное на 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.
Для меньших колес, расположенных в верхней части гусеницы, необходимо изме! нить выражение в поле Expression for Y_Rotation (Функция для поворота по оси Y) на следующее: Y_Rotation+degToRad((7.379-6.578)*360)(рис. 8.85). Это выражение означает, что угол поворота по оси Y малого колеса будет равняться углу поворота большого колеса плюс угол, который получился из разницы коли! чества оборотов большого и малого колес, умноженной на 360°. Количество обо! ротов малого колеса считается по той же формуле, что и для большого, то есть дли! на пути делится на длину окружности колеса. Рассмотрим, как повысить реалистичность сцены и внести изменения в анимацию гусеницы для учета неровности дороги. Это можно сделать при помощи управле! ния положением вершин сплайна пути track_path, привязанным к колесам. Для этого выполните следующее. 1.
Нажмите на панели инструментов кнопку Select by Name (Выделить по имени) и выберите из списка все объекты, в имени которых есть слово track, то есть все звенья танковой гусеницы.
Анимация движения танковой гусеницы
339
Рис. 8.84. Окно Parameter Wiring (Связываемые параметры) для большого колеса
Рис. 8.85. Окно Parameter Wiring (Связываемые параметры) для малого колеса
2.
Щелкните на выделении правой кнопкой мыши и выберите из контекстного меню команду Hide Selection (Спрятать выделенное).
340 3.
Глава 8. Анимация сцен
В окне проекции Left (Слева) немного выше правого верхнего колеса построй! те объект Rectangle (Прямоугольник) небольшого размера (рис. 8.86). Форма и размер этого объекта не имеют принципиального значения, так как он игра! ет роль вспомогательного объекта, к которому будут привязываться вершины сплайна пути.
Рис. 8.86. Прямоугольник, построенный над колесом
4.
Выделите созданный прямоугольник, если он не остался выделенным после построения, и перейдите на вкладку Utilities (Утилиты) командной панели. В одноименном свитке щелкните на кнопке Reset XForm (Сбросить преобразо! вания).
ВНИМАНИЕ ______________________________________________________________________ Преобразования необходимо сбросить потому, что профиль колеса строился в окне проекции Front (Спереди), а прямоугольник — в окне проекции Left (Слева). Следова& тельно, эти два объекта имеют разные локальные системы координат, что вызовет изменение положения колеса при его связывании с прямоугольником, если не сбро& сить преобразования.
5.
В окне проекции Left (Слева) выберите сплайн пути (track_path) и перейдите на вкладку Modify (Изменение) командной панели.
6.
Перейдите на уровень редактирования вершин и выберите две вершины, рас! положенные рядом с правым верхним колесом (рис. 8.87).
7.
Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов вкладки Modify (Изме! нение).
Анимация движения танковой гусеницы
8.
341
В свитке Parameters (Параметры) настроек модификатора Linked XForm (Свя! занное преобразование) щелкните на кнопке Pick Control Object (Указать кон! тролирующий объект) и в одном из окон проекций выберите построенный прямоугольник (рис. 8.88).
Рис. 8.87. Вершины, выбранные для редактирования
Рис. 8.88. Свиток Parameters (Параметры) настроек модификатора Linked XForm (Связанное преобразование)
9.
Проверьте сделанную привязку, для чего в окне проекции Left (Слева) выде! лите и произвольно переместите прямоугольник. Вместе с прямоугольником должны перемещаться вершины сплайна пути.
10.
Отмените выполненные перемещения, чтобы вершины сплайна пути верну! лись в исходное состояние.
11.
Привяжите к прямоугольнику правое верхнее колесо. Для этого нажмите кнопку Select and Link (Выделить и связать) на главной панели инструмен! тов, затем щелкните на колесе и, когда указатель примет соответствующий вид, перетащите его на прямоугольник.
12.
Снова проверьте правильность привязки, перемещая прямоугольник: теперь вместе с вершинами сплайна будет перемещаться колесо.
Далее необходимо выполнить такие же привязки для всех остальных колес. Отли! чие состоит лишь в том, что для выбора необходимых вершин применяется моди! фикатор SplineSelect (Выбор сплайна) или Edit Spline (Редактирование сплайна). Рассмотрим пример привязки следующего колеса. 1.
Скопируйте прямоугольник или постройте новый и разместите его напротив второго колеса (рис. 8.89).
342
Глава 8. Анимация сцен
Рис. 8.89. Расположение второго управляющего прямоугольника
2.
Если вы построили новый прямоугольник, то сбросьте преобразования, для чего перейдите на вкладку Utilities (Утилиты) командной панели и в одно! именном свитке щелкните на кнопке Reset XForm (Сбросить преобразования).
3.
Вернитесь к стеку модификаторов сплайна пути, для чего выделите сплайн track_path и перейдите на вкладку Modify (Изменение) командной панели.
4.
Выберите из списка модификаторов строку SplineSelect (Выбор сплайна) и пе! рейдите на уровень редактирования вершин.
5.
Выделите две вершины, расположенные у основания второго колеса.
6.
Примените к выбранным вершинам модификатор Linked XForm (Связанное преобразование), выбрав его из списка модификаторов. В результате стек модификаторов будет выглядеть, как показано на рис. 8.90.
Рис. 8.90. Стек модификаторов объекта track_path после привязки второй группы вершин
7.
В свитке Parameters (Параметры) настроек моди! фикатора Linked XForm (Связанное преобразова! ние) щелкните на кнопке Pick Control Object (Ука! зать контролирующий объект) и в одном из окон проекций выберите второй прямоугольник.
8.
Привяжите ко второму прямоугольнику второе колесо. Для этого нажмите кнопку Select and Link (Выделить и связать) на главной панели ин! струментов, затем щелкните на колесе и, когда ука! затель примет соответствующий вид, перетащите его на прямоугольник.
9.
Проверьте анимацию.
Звук в 3ds Max
343
После анимирования всех необходимых объектов можно переходить к тонкой на! стройке анимации, включая скорость движения, положение в пространстве и т. д., а затем визуализировать ее.
ПРИМЕЧАНИЕ ___________________________________________________________________ Ознакомиться с выполненной анимацией движения гусеницы танка можно, восполь& зовавшись файлом track_end.max, расположенным в папке Examples\Глава 08\Track прилагаемого DVD. В папке Video\Глава 08 находится готовая анимация track.avi.
Звук в 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).
3.
В одном из окон проекций выделите динамик (объект speakerR) и в стеке мо! дификаторов вкладки Modify (Изменение) командной панели щелкните на плюсике в строке Editable Poly (Редактируемая полигональная поверхность), а в раскрывшемся списке выберите строку Vertex (Вершина).
4.
В окне проекции Front (Спереди) выделите вершины, находящиеся внутри динамика (рис. 8.92) (при необходимости обратитесь к цветной иллюстрации, расположенной на диске в папке Images\Глава 08).
344
Глава 8. Анимация сцен
Рис. 8.91. Положение объекта Dummy01 в окне проекции Top (Сверху)
Рис. 8.92. Восемь рядов вершин, выделенных внутри динамика
СОВЕТ ___________________________________________________________________________ Проще всего выделить вершины, расположенные по кругу, при помощи инструмента вы& . Можно так& деления Circular Selection Region (Область выделения по окружности) же выделить одну точку, расположенную в середине динамика, и в свитке Selection (Выделение) щелкнуть восемь раз на кнопке Grow (Увеличить), увеличив выделяемую область до нужного размера.
5.
Назначьте выделению модификатор Linked XForm (Связанное преобразование), выполнив команду ModifiersAnimationLinked XForm (МодификаторыАни! мацияСвязанное преобразование).
Звук в 3ds Max
345
6.
В свитке Parameters (Параметры) настроек модификатора Linked XForm (Свя! занное преобразование) щелкните на кнопке Pick Control Object (Указать контро! лирующий объект) и в одном из окон проекций выберите объект Dummy01.
7.
На главной панели инструментов активизируйте инструмент Select and Move (Выделить и переместить) и в окне проекции Left (Слева) переместите вспомогательный объект!пустышку Dummy01 в сторону от динамика. При пе! ремещении пустышки должна двигаться и привязанная к ней часть вершин динамика. Если этого не происходит, повторите привязку вершин к вспомога! тельному объекту.
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, щелкните правой кнопкой мыши в окне про! екции. В результате появится контекстное меню.
346
Рис. 8.93. Контекстное меню с выбором команды, замораживающей все трансформации
5.
Глава 8. Анимация сцен
3. В группе transform (Трансформации) щелкните на строке Freeze Transform (За! морозить трансформацию) (рис. 8.93), после чего откроется окно с предупреж! дением о том, что могут быть утеряны ранее выполненные трансформации или анимация. В данном случае это как раз то, что нам нужно. На вопрос о том, же! лаете ли вы продолжить, ответьте утвер! дительно. 4. Откройте редактор кривых командой Graph EditorsTrack View — Curve Editor (Графические редакторыПросмотр треков — редактирование кривых).
В левой части редактора кривых выберите строку Sound (Звук) (рис. 8.94) и щелкните на ней правой кнопкой мыши, в результате чего откроется кон! текстное меню.
Рис. 8.94. Окно редактора кривых
6.
В контекстном меню выберите строку Properties (Свойства).
7.
В открывшемся окне Sound Option (Свойства звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу. Вы можете выбрать соб! ственный звуковой файл или воспользоваться файлом Sound.wav, располо! женным в папке Examples\Глава 08\Sound_wave прилагаемого к книге DVD.
8.
Протестируйте выполненные действия, запустив воспроизведение анимации. Во время проигрывания анимации должен звучать выбранный звуковой файл.
Теперь можно продолжить присвоение объекту Dummy01 контроллера, управляю! щего перемещением по оси Y (перпендикулярно динамику).
347
Звук в 3ds Max
1.
Выделите вспомогательный объект Dummy01 (если он не выделен) и перейди! те на вкладку Motion (Движение) командной панели.
2.
В свитке Assign Controller (Назначить контроллер) щелкните на плюсике, рас! положенном рядом со строкой Position: Position List (Положение: список поло! жения), для раскрытия списка контроллеров положения.
3.
Раскройте строку Zero Pos XYZ: Position XYZ (Нулевое положение по XYZ: поло! жение по XYZ) и выберите строку Y Position (Положение по оси Y).
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.95. Окно Assign Float Controller (Назначить контроллер с плавающей точкой)
8.
Рис. 8.96. Настройки окна Audio Controller (Контроллер звука) для правого динамика
Закройте окно Audio Controller (Контроллер звука) и проверьте анимацию. Объект! пустышка и связанный с ним динамик должны колебаться в такт музыке.
Скопируйте динамик вместе с объектом!пустышкой. Для этого в окне проекции Front (Спереди) выделите оба объекта и, удерживая нажатой клавишу Shift, переместите
348
Глава 8. Анимация сцен
их вправо на 680 единиц (величину смещения можно увидеть в строке информа! ции в нижней части окна 3ds Max). В качестве способа копирования укажите Copy (Независимая копия объекта). СОВЕТ ___________________________________________________________________________ Копировать со смещением можно разными способами, например используя инстру& мент Array (Массив).
После копирования новый динамик унаследует старые связи, что вызовет неже! лательную трансформацию. Избавиться от них просто — достаточно на вкладке 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 (Контроллер звука) с установленным каналом для левого динамика
Звук в 3ds Max
5.
349
Закройте окно и проверьте анимацию. Оба динамика должны вибрировать в такт музыке.
В начале данного раздела мы говорили о том, что будем анимировать не только динамики, но и анализатор частотного спектра аудиоаппаратуры. На самом деле это будет не настоящий анализатор частоты, а только его имитация, так как все, что мы можем получить от звукового файла, — это характеристики каналов и их сме! шанное значение, которые не имеют никакого отношения к частотным характери! стикам звука. Перейдите на вкладку 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 (рис. 8.98) и нажмите на клавиатуре Enter для подтвер! ждения внесенных изменений.
5.
Выделите второй полигон объекта analyzer_wave и установите идентификатор материала равным 2.
6.
Проделайте вышеописанные операции для оставшихся восьми полигонов, присвоив им идентификаторы материала согласно порядку их следования.
Для создания и настройки базовых параметров материала сделайте следующее. 1.
Откройте редактор материалов, выполнив команду RenderingMaterial Editor (ВизуализацияРедактор материалов) или нажав клавишу M.
350
Глава 8. Анимация сцен
Рис. 8.98. Установка идентификатора материала для первого полигона анализатора спектра
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 (Выбор цвета) задайте значения цветовых каналов;
Звук в 3ds Max
351
Рис. 8.99. Выбор карты улучшенного градиента в окне Material/Map Browser (Окно выбора материалов и карт)
•
для флага, расположенного в позиции 100, задайте красный цвет: Red (Крас! ный) — 255, Green (Зеленый) — 0, Blue (Синий) — 0;
•
флаг, расположенный посередине (в позиции 50), передвиньте в позицию 70 и установите желтый цвет: Red (Красный) — 255, Green (Зеленый) — 220, Blue (Синий) — 20.
СОВЕТ ___________________________________________________________________________ Более точно установить позицию флага, изменить имя, установленное по умолчанию, или назначить ему текстуру можно, щелкнув на флаге правой кнопкой мыши и выбрав из контекстного меню строку Edit Properties (Правка свойств).
ПРИМЕЧАНИЕ ___________________________________________________________________ Данный градиент влияет на внешний вид анализатора звука. Он настраивается один раз для всех каналов. При желании вы можете использовать другие цвета анализато& ра звука. Если вы решите в дальнейшем менять цвет, то эту градиентную карту лучше всего настраивать как внешнюю, с последующим копированием в качестве образца (Instance) в многокомпонентный материал. В таком случае при редактировании одной карты будут изменяться цвета сразу во всех 10 каналах.
352
Глава 8. Анимация сцен
9.
Поверните градиентную карту в вертикальное положение, задав параметру W области Angle (Угол) свитка Coordinates (Координаты) значение –90 (рис. 8.100).
10.
Вернитесь к свитку Maps (Карты текстур), щелкнув на панели инструментов редактора материалов на кнопке Go to Parent (Вернуться к исходному) .
Перейдем к настройке карты прозрачности, которая будет не только имитировать разбиение полоски анализатора на отдельные сегменты, но и управлять их отобра! жением. Для этого нам понадобится составная карта Mask (Маска), построением которой мы сейчас и займемся. 1.
В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует), рас! положенной справа от Opacity (Непрозрачность).
2.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент) и щелкните на кнопке OK для подтверждения выбора и закрытия окна.
3.
В свитке 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 (Параметры маски)
Звук в 3ds Max
Рис. 8.100. Настройки карты Gradient Ramp (Улучшенный градиент) для основного цвета
353
Рис. 8.101. Настройка параметров градиентной карты для создания сегментов анализатора
щелкните на кнопке None (Отсутствует) справа от Mask (Маска) и выберите в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) еще одну карту Gradient Ramp (Улучшенный градиент). 11.
Как и для предыдущей карты градиента, в свитке Gradient Ramp Parameters (Па! раметры улучшенного градиента) для первого флага установите белый цвет.
12.
Для второго флага задайте черный цвет. Его положение не имеет значения.
13.
Щелкните на втором флаге правой кнопкой мыши и выберите из контекстно! го меню строку Edit 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 показано дерево
354
Рис. 8.102. Окно Flag Properties (Свойства флага)
Глава 8. Анимация сцен
Рис. 8.103. Настройки градиентной карты маски
материала на данном этапе редактирования. Чтобы посмотреть дерево материа! лов, щелкните на кнопке Material/Map Navigator (Путеводитель по материалам/кар! там текстур) . Если вы все сделали правильно, то у вас должно быть точно та! кое же изображение. Сейчас необходимо анимировать положение флага LevelMask в соответствии с уров! нями кривой звукового контроллера. Можно было бы использовать один из кон! троллеров Audio Controller (Контроллер звука), присвоенных вспомогательным объектам для управления динамиками, но я хочу показать, как можно создавать собственные параметры объекта и использовать их для решения задач анима! ции. В одном из окон проекций выделите объект analyzer_wave. Выполните команду AnimationParameter Editor (АнимацияРедактор параметров), в результате от! кроется окно Parameter Editor (Редактор параметров). В свитке Attribute (Свойства) выберите из раскрывающегося списка Add to Type (Добавить к типу) строку Selected Object’s Material (Материал выделенного объекта). Это позволит добавить создавае! мый параметр материалу анализатора звука — объекту analyzer_wave. Введите в поле Name (Имя) значимое имя параметра, например sound_wave (рис. 8.105). В свитке Attribute (Свойства) щелкните на кнопке Add (Добавить), и новый пара! метр будет добавлен к выделенному объекту analyzer_wave. В результате в редак! торе материалов в настройках многокомпонентного материала, присвоенного объекту, появится свиток Custom Attributes (Пользовательские свойства) с соот! ветствующим параметром. Нам нужно присвоить этому значению Audio Controller (Контроллер звука), для этого обратимся к редактору кривых.
355
Звук в 3ds Max
Рис. 8.104. Окно Material/Map Navigator (Путеводитель по материалам/картам текстур) на данном этапе редактирования многокомпонентного материала
Рис. 8.105. Окно Parameter Editor (Редактор параметров)
1.
Выполните команду Graph EditorsTrack View — Curve Editor (Графические ре! дакторыПросмотр треков — редактирование кривых).
2.
В левой части редактора кривых перейдите по дереву иерархии к многоком! понентному материалу объекта analyzer_wave, выберите строку sound_wave (созданный нами атрибут) (рис. 8.106) и щелкните на ней правой кнопкой мыши.
Рис. 8.106. Окно редактора кривых с выделенным дополнительным параметром
356
Глава 8. Анимация сцен
3.
В появившемся контекстном меню выберите строку Assign Controller (Назна! чить контроллер). В открывшемся окне Assign Float Controller (Назначить кон! троллер с плавающей точкой) выберите из списка строку AudioFloat (Звук, ис! пользующий значения с плавающей точкой).
4.
В открывшемся окне Audio Controller (Контроллер звука) щелкните на кнопке Choose Sound (Выбор звука) и укажите путь к звуковому файлу.
5.
В области Controller Range (Диапазон контроллера) увеличьте значение пара! метра Max (Максимум) до 5. Данное значение можно впоследствии скоррек! тировать с таким расчетом, чтобы колебания уровней анализатора звука дли! тельное время не превышали максимального значения.
6.
Установите переключатель Channel (Канал) в положение Mix (Смешивание). Для строящегося анализатора звука мы возьмем один смешанный канал, хотя можно было бы использовать все три.
7.
В области Sample (Выборка) задайте параметру Oversampling (Усреднение) зна! чение 500 (рис. 8.107). Для имитации анализатора частотных характеристик звука мы используем кривую уровня звука, поэтому увеличение значения это! го параметра позволит частично сгладить пороговые значения кривой.
Рис. 8.107. Настройки окна Audio Controller (Контроллер звука) для атрибута sound_wave
8.
Закройте окно Audio Controller (Контроллер звука).
В окне редактора кривых присвоим флагу LevelMask карты улучшенного градиен! та, используемого в канале прозрачности, контроллер Float Expression (Выражение с плавающей точкой). Для этого в левой части редактора кривых выберите из иерархического списка объект analyzer_wave и, передвигаясь по его компонентам, перейдите к параметру Position (Положение) флага LevelMask из канала прозрачно! сти первого материала (рис. 8.108).
Звук в 3ds Max
357
Рис. 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 (Оценить) для присвоения функции анимируемому параметру. Разберем записанную формулу. Начнем с параметров. Несмотря на то что в на! стройках диапазона звукового контроллера мы задали максимальное значение равным 5, позиция флага градиентной карты использует значение от 0 до 1. Кроме того, наш анализатор звука имеет 20 сегментов, и смещение значений положения флага должно происходить с учетом количества этих сегментов. Таким образом, первое, что мы делаем в этой функции, — округляем в меньшую сторону значе! ние звукового контроллера (присвоенное переменной wave), деленное на 20 час! тей (floor(wave/0.05)). Для округления необходимо, чтобы значение было
358
Глава 8. Анимация сцен
Рис. 8.109. Окно Track View Pick (Выбрать трек)
Рис. 8.110. Окно Expression Controller (Контроллер управления по алгоритмическому выражению) после выполнения всех настроек
больше нуля, что мы и делаем, используя для деления значение, уменьшенное в 100 раз, но для возврата к прежнему уровню уже округленного значения нам необходимо умножить полученный результат на 0,05. Таким образом, полностью
Звук в 3ds Max
359
выражение выглядит как floor(wave/0.05)*0.05. В результате расчетов зна! чение положения флага LevelMask в каждом кадре анимации становится крат! ным 0,05. Теперь следует в настройках многокомпонентного материала анализатора в окне Material Editor (Редактор материалов) скопировать первый материал и вставить вместо расположенных ниже девяти материалов. СОВЕТ ___________________________________________________________________________ Прежде чем копировать созданную анимацию, желательно убедиться в том, что все сделано правильно. Для этого можно воспользоваться одним из двух способов. Пер& вый способ: задать отображение анимации карты улучшенного градиента в окне проекции (для этого перейдите в редакторе материалов к этой карте и щелкните на кнопке Show Map in Viewport (Показать карту в окне проекции) ). Второй способ: выполнить эскиз анимации текстуры, используя кнопку редактора материалов Make Preview (Создать эскиз) .
Для создания копий настроенного материала перейдите к верхнему уровню мно! гокомпонентного материала. В свитке Multi/Sub-Object Basic Parameters (Базовые па! раметры многокомпонентного материала) щелкните на кнопке с именем первого материала и, не отпуская кнопку мыши, перетащите ее на кнопку с именем второ! го материала. После того как вы отпустите кнопку мыши, появится окно, в кото! ром в качестве метода копирования выберите Copy (Независимая копия объекта). Новый материал для второго канала создан. Теперь необходимо изменить на! стройки этого материала, чтобы анимация уровней каналов отличалась друг от друга. Для этого обратитесь к редактору кривых и выберите из иерархического списка анимированный флаг LevelMask для градиентной карты второго материала (рис. 8.111). Перейдите к параметру Position (Положение) этого флага и, щелкнув на нем пра! вой кнопкой мыши, выберите из контекстного меню строку Properties (Свойства). В результате откроется окно Expression Controller (Контроллер управления по алго! ритмическому выражению). После копирования это окно содержит функцию и па! раметры анимации первой карты. Изменить значения анимации можно следую! щим образом:
изменить время, задаваемое в поле Tick Offset (Смещение в тиках) области Variable Parameters (Параметры переменной) для созданной нами переменной;
изменить значение переменной wave в записанной формуле.
На рис. 8.112 представлен пример измененного контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с использованием описанных выше способов. Повторите копирование и настройку анимации для оставшихся восьми материа! лов. В результате вы получите готовый анализатор частотного спектра, а точнее, его имитацию. На рис. 8.113 представлен кадр из получившейся анимации.
360
Глава 8. Анимация сцен
Рис. 8.111. Редактор кривых с выделенным флагом LevelMask второго материала
Рис. 8.112. Окно контроллера Expression Controller (Контроллер управления по алгоритмическому выражению) с измененными параметрами для второго материала
И в завершение несколько советов к данному упражнению. Кривая звука имеет нерегулярную форму, что вызывает изменения значений в каж! дом кадре анимации. Контроллер, который мы использовали, округляет значения кривой до цифры, кратной 0,05 (это необходимо для того, чтобы маска всегда от! крывала полные сегменты анализатора), но не отслеживает частые скачки значе! ний. Частично сгладить кривую и сделать более плавную анимацию можно при
Звук в 3ds Max
361
Рис. 8.113. Визуализация одного из кадров анимации
помощи контроллера Float Script (Сценарий, использующий значения с плавающей точкой). В этом случае можно получать значения из кадров до и после текущего и усреднять их. Такой код может выглядеть, как на рис. 8.114. Аналогичным спо! собом можно написать более сложный код, который будет не только получать зна! чения кривой звука в определенные промежутки времени, но и строить собствен! ную кривую на основе этих значений.
Рис. 8.114. Окно контроллера Float Script (Сценарий, использующий значения с плавающей точкой)
362
Глава 8. Анимация сцен
Более простой способ сглаживания анимации анализатора — при котором визуали! зируется каждый третий кадр анализатора. Естественно, что в этом случае необхо! димо использовать раздельную анимацию, при которой анализатор визуализирует! ся с альфа!каналом для последующего совмещения его с остальной композицией в программе постобработки или в модуле 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.
Песочные часы При создании анимации песочных часов нужно будет анимировать три объекта: песок в верхней части колбы, сыплющийся песок и горку песка внизу. Если с сып! лющимся песком все более!менее понятно (это может быть только система час! тиц), то остальной песок можно создать различными способами. Наиболее слож! ной, но и самой реалистичной с точки зрения отображения и контроля может быть анимация, созданная при помощи морфинга (Morph) или булевых вычитаний, с анимацией операндов и их подобъектов. В данном разделе мы рассмотрим более простые, но не менее интересные под! ходы к анимации песка. Загрузите с DVD, который прилагается к книге, файл sandglass_start.max, находящийся в папке Examples\Глава 08\sandglass (рис. 8.115). Прежде всего необходимо смоделировать песок в верхней и нижней частях стек! лянной колбы. С учетом особенностей анимации создадим их различными спосо! бами. Начнем с верхнего. Для его моделирования сделайте следующее. 1.
В окне проекции Front (Спереди) выделите стеклянную колбу часов или вы! берите ее (объект Glass) из списка объектов сцены, воспользовавшись кла! вишей H.
363
Песочные часы
2.
Создайте копию объекта, выполнив ко! манду ToolsSnapshot (Инструменты Снимок). В открывшемся окне Snapshot (Снимок) переключатель в обла! сти Snapshot (Снимок) должен быть установлен в положение Single (Еди! ничный), а переключатель Clone Method (Метод клонирования) — в положе! ние Mesh (Сетка). Щелкните на кноп! ке OK.
3.
Используя клавишу H, откройте ок! но Select From Scene (Выбор из сцены) и выберите в нем созданную копию — объект Glass01.
4.
Перейдите в режим изоляции объек! та, для чего воспользуйтесь сочетани! ем клавиш Alt+Q. В результате в окнах проекций останется только выбранный объект, что облегчит режим его редак! тирования.
5.
Перейдите на вкладку Modify (Изме! нение) командной панели и переклю! читесь в режим редактирования под! объектов Element (Элемент).
Рис. 8.115. Визуализация модели песочных часов
6.
В любом из окон проекций щелкните на объекте Glass01, в результате чего вы! делится внешняя поверхность стекла (стекло имеет толщину).
7.
Удалите выделенный элемент, нажав клавишу Delete.
8.
Снова щелкните на объекте для выделения внутренней поверхности стекла и в об! ласти Normals (Нормали) свитка Surface Properties (Свойства поверхности) на! жмите кнопку Flip (Обратить). Таким образом мы установим правильное направ! ление нормалей (у внутренней поверхности стекла они были обращены внутрь).
9.
Перейдите на уровень редактирования вершин, выделите нижнюю половину оставшейся внутренней поверхности стекла и удалите ее.
10.
Используя инструмент Select and Uniform Scale (Выделить и равномерно масшта! бировать) , масштабируйте три или четыре нижних ряда вершин таким об! разом, чтобы получилась замкнутая форма (причем нижний ряд необходимо свести в точку), и, используя кнопку Selected (Выделенное) области Weld (Слия! ние) свитка Edit Geometry (Редактирование геометрии), объедините образующие ее вершины (рис. 8.116).
11.
Выйдите из режима редактирования вершин, повторно щелкнув в свитке Selection (Выделение) на кнопке Vertex (Вершина) .
12.
Установите режим использования центра трансформаций на середину выде! ления, для чего щелкните на кнопке Use Selection Center (Использовать центр выделения) главной панели инструментов.
364
Глава 8. Анимация сцен
Рис. 8.116. Нижняя часть отредактированного объекта
13.
Используя инструмент Select and Uniform Scale (Выделить и равномерно мас! штабировать) , уменьшите объект на небольшую величину (например, до 99,5 %).
ВНИМАНИЕ ______________________________________________________________________ Необходимость масштабирования вызвана тем, что в результате копирования и редак& тирования поверхности стекла большинство полигонов объекта&источника и объек& та&копии стали располагаться в пространстве абсолютно одинаково, что при визуа& лизации стекла неизбежно вызовет артефакты на поверхности.
Для окончания редактирования этого объекта дайте ему более понятное имя, на! пример Sand_top, и присвойте ему материал песка. Используя клавишу M, от! кройте редактор материалов, выберите материал Sand и перетащите его на объект Sand_top в одном из окон проекций. Затем вернитесь к отображению полной сце! ны, для чего щелкните на кнопке Exit Isolation Mode (Выйти из режима изолирова! ния). Анимируем построенный объект следующим образом. 1.
Выделите объект Sand_top, если он не остался выделенным.
2.
Назначьте ему модификатор Slice (Сечение), выполнив команду ModifiersParametric DeformersSlice (МодификаторыПараметрические деформацииСе! чение).
3.
В свитке Slice Parameters (Параметры сечения) установите переключатель в по! ложение Remove Top (Отсечь верх).
Песочные часы
365
4.
Перейдите на уровень редактирования подобъектов модификатора Slice (Се! чение), для чего в стеке модификаторов щелкните на плюсике рядом с именем модификатора и выберите строку Slice Plane (Секущая плоскость).
5.
Используя инструмент Select and Rotate (Выделить и повернуть), в окне про! екции Left (Слева) поверните секущую плоскость на 90° по оси X или Y и пере! двиньте ее вверх так, чтобы она заняла горизонтальное положение в середине объекта Sand_top (рис. 8.117).
Рис. 8.117. Положение секущей плоскости в пространстве и ее параметры
ПРИМЕЧАНИЕ ___________________________________________________________________ Секущую плоскость необходимо повернуть потому, что объект, имитирующий стекло, строился при помощи вращения кривой контура в окне проекции Front (Спереди). В результате скопированный и отредактированный объект Sand_top унаследовал ло& кальную систему координат объекта&предка.
Анимируем секущую плоскость таким образом, чтобы она с течением времени сре! зала все большую часть объекта Sand_top. 1.
Передвиньте ползунок таймера анимации в 280 кадр.
2.
Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto . Key (Автоключ), в результате чего кнопка выделится цветом
3.
Передвиньте секущую плоскость вниз так, чтобы она оказалась в середине стеклянной колбы, а песок в верхней части часов был полностью отрезан се! кущей плоскостью. В результате будет создано два ключа анимации: в нуле! вом и 280 кадре.
366
Глава 8. Анимация сцен
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). Теперь можно переходить к моделированию песка внизу. Воспользуемся объектом Top, который создан при помощи вращения профиля кривой. Он до сих пор был спрятан и не показывался в окнах проекций. Для его отображения перейдите на командной панели и в свитке Hide (Спрятать) вкладку Display (Отображение) щелкните на кнопке Unhide All (Отобразить все).
367
Песочные часы
Учитывая форму стекла часов, песок в нижней части про! ще всего анимировать при помощи булевой операции. 1.
Используя горячую клавишу H, откройте окно Select From Scene (Выбор из сцены) и выберите в нем объект Glass.
2.
Скопируйте его при помощи команды Snapshot (Сни! мок) меню Tools (Инструменты) таким же образом, как мы это делали для песка в верхней части часов.
3.
Еще раз откройте окно Select From Scene (Выбор из сце! ны) и выберите в нем объекты Glass01 (скопированный объект) и Top.
4.
Перейдите в режим изолированного отображения объек! тов, нажав сочетание клавиш Alt+Q, и выделите объект Glass01.
Рис. 8.119. Стек модификаторов объекта Sand_top
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 (Выделить и равномерно масштабировать) . Как я уже гово! рил, такое уменьшение предотвратит появление артефактов при визуализации.
12.
Используя описанные выше действия, примените к построенному объекту материал песка Sand.
368 13.
Глава 8. Анимация сцен
Переименуйте построенный объект в Sand_bottom и вернитесь к отображению полной сцены, для чего щелкните на кнопке Exit Isolation Mode (Выйти из ре! жима изолирования).
Сцена на данном этапе моделирования и анимации показана на рис. 8.120.
Рис. 8.120. Объекты сцены в нулевом кадре на данном этапе моделирования
Анимируем построенный объект. Это можно сделать, анимировав перемещение одного из операндов в вертикальной плоскости. 1.
Перейдите на вкладку Modify (Изменение) командной панели и переключи! тесь в режим редактирования подобъектов, выделив строку Operands (Опе! ранды).
2.
В области Operands (Операнды) свитка Parameters (Параметры) выделите опе! ранд Top (рис. 8.121).
3.
Передвиньте ползунок таймера анимации в 20 кадр и включите запись клю! чей анимации, воспользовавшись кнопкой Auto Key (Автоключ) .
4.
Используя инструмент Select and Move (Выделить и переместить) главной па! нели инструментов, переместите операнд Top вниз на такую величину, чтобы он скрылся за нижней кромкой стекла.
5.
Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).
6.
Выделите ключ, автоматически созданный в нулевом кадре, и переместите его в последний (300) кадр шкалы анимации.
7.
Запустите воспроизведение анимации, воспользовавшись кнопкой Play Animation (Воспроизвести анимацию), и проверьте правильность выполненных действий: верхняя часть песка должна уменьшаться, а нижняя, наоборот, уве! личиваться.
Песочные часы
369
С нулевого по двадцатый кадр песок будет падать, пока не достигнет дна стеклянной колбы. Именно тогда он начнет накапливаться в нижней части часов (это мы сделали, ани! мировав операнд Top). Аналогичным образом мы создали анимацию и для верхней горки песка, закончив ее анима! цию в 280 кадре. Оставшееся время песок находится в по! лете. ПРИМЕЧАНИЕ ___________________________________________ При желании вы можете воспользоваться редактором кривых и подкорректировать кривую анимации операнда Top с таким расчетом, чтобы с течением времени скорость его отображе& ния постепенно замедлялась. Это делается способом, опи& санным ранее для анимации секущей плоскости.
Перейдем к третьей фазе анимации часов: созданию системы частиц, изображающих песчинки в полете. Начнем с по! строения основного и вспомогательных объектов сцены. Нам понадобится система частиц, объект, который будет играть роль излучателя частиц, и два объекта пространственных деформаций.
Рис. 8.121. Свиток Parameters (Параметры) настроек объекта Sand_bottom
1.
Выполните команду CreateParticlesPArray (СозданиеЧастицыМассив ча! стиц) главного меню и в произвольном месте окна проекции Top (Сверху) по! стройте значок массива частиц.
2.
При помощи команды CreateSpaceWarpsForcesGravity (СозданиеПростран! ственные деформацииСилыСила тяжести) главного меню в произволь! ном месте окна проекции Top (Сверху) постройте значок силы тяжести.
3.
Выполните команду CreateSpaceWarpsDeflectorsUDeflector (СозданиеПро! странственные деформацииОтражателиU!отражатель) главного меню и сно! ва воспользуйтесь окном проекции Top (Сверху) для построения значка отра! жателя частиц.
4.
При помощи команды главного меню CreateStandard PrimitivesCylinder (Созда! ниеПростые примитивыЦилиндр) постройте в окне проекции Top (Cверху) цилиндр с высотой, равной 0, и диаметром, соответствующим размеру внут! реннего отверстия стекла в самом узком месте. Сразу же расположите постро! енный цилиндр в месте предполагаемого излучения частиц — немного выше середины стеклянной колбы (объект Glass).
На рис. 8.122 представлены созданные объекты в окне проекции Top (Сверху). Все готово для выполнения анимации сыплющегося песка. Начнем с настройки системы частиц. 1.
В окне проекции Top (Сверху) выделите значок системы частиц (объект PArray01) и перейдите на вкладку Modify (Изменение) командной панели.
370
Глава 8. Анимация сцен
Рис. 8.122. Вспомогательные объекты в окне проекции Top (Сверху)
2.
В свитке Basic Parameters (Базовые параметры) щелкните на кнопке Pick Object (Указать объект) и выберите в качестве излучателя построенный цилиндр.
СОВЕТ ___________________________________________________________________________ Для выбора труднодоступных или небольших объектов сцены лучше всего использо& вать окно Select From Scene (Выбор из сцены), которое можно вызвать, щелкнув на кнопке Select by Name (Выделить по имени) или нажав клавишу H.
3.
Привяжите к системе частиц гравитацию, для чего на главной панели инстру! ментов нажмите кнопку Bind to Space Warp (Связать с воздействием) и в окне проекции Top (Сверху) щелкните кнопкой мыши сначала на значке системы частиц (PArray01), а затем на значке силы тяготения (Gravity01).
4.
Аналогичным образом привяжите систему частиц к отражателю (UDeflector01), указав соответствующий значок в одном из окон проекций.
ПРИМЕЧАНИЕ ___________________________________________________________________ Необходимость связать на данном этапе систему частиц с воздействием вызвана тем, что настройка поведения частиц во времени зависит от ряда параметров и долж& на выполняться комплексно, с учетом силы тяготения.
5.
Вернитесь к настройкам объекта PArray01 (выделив в стеке модификаторов со! ответствующую строку) и в свитке Particle Generation (Генерация частиц) за! дайте параметрам следующие значения:
Песочные часы
6.
371
•
параметру 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, оставшиеся значения должны быть рав! ны нулю.
372
Глава 8. Анимация сцен
Рис. 8.123. Положение частиц в 20 кадре анимации
Таким образом, частицы, попадая на растущую горку песка, будут отскакивать от нее на небольшую величину, постепенно исчезая (рис. 8.124).
Рис. 8.124. Поведение частиц в 160 кадре анимации
Запустите воспроизведение анимации и проверьте правильность выполненных действий.
373
Текст, уносимый порывами ветра
Присвойте частицам материал песка. Для этого откройте редактор материалов, на! жав клавишу M, выберите материал с име! нем Sand и перетащите его на значок PArray01 в одном из окон проекций. Теперь можно визуализировать последо! вательность кадров с дальнейшей сбор! кой их в одной из программ постобра! ботки или сразу создать файл анимации. На рис. 8.125 представлен кадр из анима! ции, выполненной с применением моди! фикатора Noise (Шум) для создания нерав! номерности в верхней и нижней горках песка.
ПРИМЕЧАНИЕ _________________________ При возникновении трудностей с настрой& кой анимации системы частиц воспользуй& тесь файлом sandglass_end.max, находя& щимся на прилагаемом к книге DVD в папке Examples\Глава 08\Sandglass. В папке Video\ Глава 08 имеется готовая анимация урока sandglass.avi.
Рис. 8.125. Визуализация песочных часов, выполненных с применением системы частиц
Текст, уносимый порывами ветра На примере, описанном в данном разделе, я покажу, как простыми средствами можно получить эффект рассеивания, применяемый при анимации природных или иных явлений. Одним из вариантов такой анимации может служить сигарет! ный дым. Для выполнения упражнения нам понадобится простая сцена — какой!нибудь объект, например текст (рис. 8.126). Для анимации нужно будет создать не только систему частиц, но и силы, действую! щие на эти частицы. Для построения вспомогательных объектов сделайте следующее. 1.
Выполните команду главного меню CreateSpaceWarpsDeflectorsSDeflector (СозданиеПространственные деформацииОтражателиСферический отражатель) и в окне проекции Top (Сверху) постройте значок объекта.
2.
Используя инструмент Select and Move (Выделить и переместить), расположи! те значок в середине текста.
3.
Активизируйте инструмент Select and Uniform Scale (Выделить и равномерно масштабировать) и масштабируйте значок SDeflector01 таким образом, что! бы он оказался немного больше объекта Text01 (рис. 8.127).
374
Глава 8. Анимация сцен
Рис. 8.126. Текст, подготовленный для выполнения упражнения
Рис. 8.127. Расположение значка отражателя SDeflector01 относительно объекта Text01
4.
Создайте три объекта Wind (Ветер). Для этого выполните команду Create SpaceWarpsForcesWind (СозданиеПространственные деформацииСи! лыВетер) и постройте значки в окне проекции Top (Сверху).
5.
Выделите один из построенных объектов Wind (Ветер). Используя инструмент Select and Move (Выделить и переместить), переместите его так, чтобы он на!
Текст, уносимый порывами ветра
375
ходился слева от текста. При помощи инструмента Select and Rotate (Выде! лить и повернуть) поверните значок Wind (Ветер) на 90° таким образом, чтобы направление ветра приходилось на текст (рис. 8.128).
Рис. 8.128. Расположение значков ветра и их ориентация в окне проекции Front (Спереди)
6.
Создайте еще один вспомогательный объект — Drag (Помеха). Для этого вы! полните команду CreateSpaceWarpsForcesDrag (СозданиеПростран! ственные деформацииСилыПомеха) и постройте объект в произвольном месте окна проекции Top (Сверху).
Анимируем отражатель следующим образом. 1.
Передвиньте ползунок таймера в пятый кадр анимации.
2.
Активизируйте запись ключей анимации. Для этого щелкните на кнопке Auto Key (Автоключ), в результате чего кнопка выделится цветом .
3.
Выделите отражатель (объект SDeflector01) и в окне проекции Front (Спереди) передвиньте его вправо на такое расстояние, чтобы он оказался за пределами текста.
4.
Выключите запись ключей анимации, повторно щелкнув на кнопке Auto Key (Автоключ).
5.
Выделите ключ, созданный автоматически в нулевом кадре, и передвиньте его в последний кадр строки треков (в моем случае это 200 кадр).
6.
Проверьте созданную анимацию. В первом кадре отражатель SDeflector01 дол! жен находиться за пределами текста, а начиная с пятого кадра перемещаться на текст, полностью перекрывая его.
376
Глава 8. Анимация сцен
Создадим систему частиц и необходимые операторы. Выполним все эти дей! ствия при помощи окна Particle View (Окно системы частиц), которое можно от! крыть, выполнив команду Graph EditorsParticle View (Графические редакторыОкно системы частиц). В окне Particle View (Окно системы частиц) сделайте следую! щее. 1.
Для создания излучателя частиц перетащите из списка операторов, находяще! гося в нижней части окна, в окно событий объект Empty Flow (Пустой поток) (рис. 8.129).
Рис. 8.129. Окно Particle View (Окно системы частиц) с построенным излучателем частиц PF Source (Источник потока частиц)
2.
В окно событий также перетащите оператор Birth (Рождение), который авто! матически создаст список событий с оператором отображения частиц.
3.
Свяжите список событий с источником частиц, для чего щелкните на высту! пающем круглом элементе списка событий (в результате вид указателя изме! нится) и перетащите его на объект PF Source 01. В результате образуется связь между источником частиц и списком событий (рис. 8.130).
4.
Таким же образом добавьте к списку событий следующие операторы: •
Position Object (Положение объекта) — позволяет расположить частицы по форме выбранного объекта;
•
Shape (Форма) — задает форму отображения частиц при визуализации;
•
Collision (Столкновения) — позволяет управлять отражателями частиц.
Текст, уносимый порывами ветра
377
Рис. 8.130. Список событий, связанный с источником частиц
5.
Добавьте к потоку частиц PF Source 01 оператор Material Static (Статический ма! териал) — материал, используемый для отображения частиц при визуализации (рис. 8.131).
6.
Последнее, что необходимо добавить в окно событий, — объект Force (Сила), который связывается с оператором Collision (Столкновения) (рис. 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 (Из списка). В открывшемся
378
Глава 8. Анимация сцен
Рис. 8.131. Окно Particle View (Окно системы частиц) после обновления списка событий
Рис. 8.132. Окончательный вид окна событий после добавления всех операторов
Текст, уносимый порывами ветра
379
окне выберите объект Text01. В результате частицы покроют объект Text01, распо! ложившись на его поверхности. Объект Text01 не должен участвовать в визуализа! ции, поэтому его можно спрятать. Для этого выделите его в одном из окон проек! ций, щелкните правой кнопкой мыши и выберите в контекстном меню команду Hide Selection (Спрятать выделенное).
СОВЕТ ___________________________________________________________________________ Исключить объект из визуализации можно и другим способом — сняв в области 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).
380
Глава 8. Анимация сцен
Рис. 8.133. Окно Material/Map Browser (Окно выбора материалов и карт) с выбранным материалом
Если сейчас переместить ползунок таймера анимации, то вы увидите, как при на! езде значка отражателя на текст начинается рассеивание частиц, находящихся в этом месте. Пока это не совсем то, что нам нужно, так как на частицы действуют слишком большие силы. В связи с этим необходимо подкорректировать парамет! ры объектов Wind (Ветер) и Drag (Помеха). Начнем с параметров ветра. Они должны быть совсем небольшими, чтобы ветер лишь отрывал частицы от генерирующего их объекта и уносил на небольшое расстояние. На рис. 8.134 показаны примерные настройки ветра, причем Wind01 и Wind02 действуют в вертикальной плоскости, и Wind03 — в горизонтальной и направлен в сторону текста. Для объекта Drag (Помеха) существенными являются характеристики затухания, настройки которого находятся в области Damping Characteristics (Характеристики затухания) свитка Parameters (Параметры). Установите переключатель в этой об! ласти в положение Linear Damping (Линейное затухание) и параметрам X Axis (Ось X), Y Axis (Ось Y) и Z Axis (Ось Z) задайте значения 20, 15 и 7 соответственно. ПРИМЕЧАНИЕ ___________________________________________________________________ Как и настройки ветра, характеристики затухания для создания требуемого эффекта подбираются опытным путем. Вы можете попробовать задать другие значения пара& метров и создать собственное поведение частиц в процессе анимации.
381
Текст, уносимый порывами ветра
а
б
в
Рис. 8.134. Настройки объектов Wind01 (а), Wind02 (б) и Wind03 (в)
При анимации частиц такого рода очень уместно использовать эффект размытия в движении. Такой эффект появляется при съемке движения реальной камерой или фотоаппаратом, так как за то время, пока шторка аппарата находится в откры! том состоянии, движущийся объект проходит некоторое расстояние, и в результате его границы размываются. В 3ds Max такой эффект можно создать несколькими способами, мы рассмотрим самый простой и быстрый с точки зрения визуализа! ции. 1.
Откройте окно редактирования системы частиц, выполнив команду меню Graph EditorsParticle View (Графические редакторыОкно системы частиц).
2.
В окне событий выделите PF Source 01, щелкнув на нем. В результате цвет кон! тура объекта изменится на белый. Щелкните на нем правой кнопкой мыши и выберите из контекстного меню строку Properties (Свойства) (рис. 8.135).
3.
В области Motion Blur (Размытие движения) открывшегося окна Object Properties (Свойства объекта) установите переключатель в положение Image (Изображе! ние), задайте параметру Multiplier (Усилитель) значение 12 и проследите, что! бы флажок Enable (Включить) был установлен.
4.
Откройте окно Render Scene (Визуализация сцены), для чего воспользуйтесь клавишей F10, и перейдите на вкладку Renderer (Визуализатор).
5.
В области Image Motion Blur (Размытие картинки в движении) установите фла! жок Apply (Применить).
На рис. 8.136 показан кадр из анимации, создание которой было описано в данном разделе.
382
Глава 8. Анимация сцен
Рис. 8.135. Контекстное меню объекта PF Source01
Рис. 8.136. Визуализация 48 кадра анимации
ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 08\Text_dispersion прилагаемого к книге DVD находится файл описанной сцены text_dispersion.max. В папке Video\Глава 08 имеется готовая анима& ция dispertion.avi.
Глава 9
Практическое моделирование • Натюрморт • Моделирование лофтUобъектов • Моделирование штор • Полигональное моделирование телефонной трубки • Моделирование микроволновой печи • Комплексный подход к моделированию: создание крана для ванной
384
Глава 9. Практическое моделирование
Нет ничего более увлекательного при работе с программами трехмерного модели! рования, чем создание объектов сцены. Именно в процессе моделирования обре! тают форму фантазии и мечты. Нет необходимости говорить о том, что для создания модели, способной удивить зрителя, надо обладать большим терпением и опреде! ленным багажом знаний. В этой главе вы научитесь основным приемам моделирования, начиная с простых упражнений и постепенно переходя к решению более сложных задач. Мы рассмот! рим сплайновое, полигональное, Surface! и NURBS!моделирование. Полученные в этой главе знания помогут вам создавать более сложные модели, о которых пойдет речь в следующих главах. Эти базовые знания станут основой для моделирования автомобиля и головы персонажа, о чем будет рассказано в третьей части книги.
Натюрморт Изучая моделирование трехмерных объектов, мы стремимся создавать большие и сложные работы, но оказывается, что простыми средствами можно добиться вполне приемлемых результатов. Ключ к успеху не только в том, чтобы модель или сцена была сложной, но и в том, как подать эту сцену, как расположить источники света и выполнить текстурирование. Рассмотрим упражнение по моделированию натюрморта простыми и доступными всем средствами программы 3ds Max. На рис. 9.1 показан результат визуализации сцены, выполненной с использованием инструментов и модификаторов, доступ! ных еще во второй версии программы.
Рис. 9.1. Натюрморт
Если внимательно посмотреть на эту сцену, то можно увидеть, что все объекты выполнены на основе примитивов или при помощи стандартных модификаторов
Натюрморт
385
и не представляют большой сложности в исполнении. Центральное место в ком! позиции занимает бронзовая ваза — с нее и начнем моделирование. Вы уже знае! те, что проще всего симметричные предметы, имеющие ось вращения, строить с использованием модификатора Lathe (Вращение). Не станет исключением и ваза для фруктов. Начнем моделирование с построения ее профиля при помощи сплай! на. Для этого сделайте следующее. 1.
Выполните команду CreateShapesLine (СоздатьФормыЛиния) и в окне проекции Front (Спереди) начните построение сплайна формы вазы (рис. 9.2).
Рис. 9.2. Профиль будущей вазы
СОВЕТ ___________________________________________________________________________ Начинайте построение формы профиля для тела вращения с вертикальной линии, определяя таким образом начальную и конечную точку сплайна, постепенно добав& ляя новые вершины (команда Refine (Уточнить)) и редактируя их положение в про& странстве. Кроме того, можно строить профиль, последовательно создавая вер& шины от начала до конца. В этом случае необходимо следить за тем, чтобы первая и последняя вершины сплайна находились на оси вращения, для чего используйте привязки к сетке.
2.
Примените к построенному сплайну модификатор Lathe (Вращение), для чего выполните команду ModifiersPatch/Spline EditingLathe (МодификаторыРе! дактирование патчей/сплайновВращение).
3.
В области Align (Выравнивание) свитка Parameters (Параметры) щелкните на кнопке Min (Минимум), чтобы установить ось вращения по левой стороне объекта.
386
Глава 9. Практическое моделирование
ПРИМЕЧАНИЕ ___________________________________________________________________ Вполне возможно, что вам понадобится выбрать другой тип выравнивания, все зави& сит от того, как построена кривая профиля.
4.
Параметру Segments (Количество сегментов) свитка Parameters (Параметры) задайте значение от 30 до 40, чтобы избежать неровностей на краях построен! ного объекта.
5.
При необходимости перейдите в стеке модификаторов на уровень редактиро! вания кривой и, нажав кнопку Show end result on/off toggle (Показать конечный результат вкл/выкл), которая находится под стеком модификаторов, измени! те форму кривой так, чтобы получить приемлемый результат (рис. 9.3).
Рис. 9.3. Ваза, построенная при помощи модификатора Lathe (Вращение)
Ваза построена, пришло время наполнить ее фруктами. Вспомните процесс моделирования яблока, рассмотренный во второй главе. В том случае мы строили параметрический объект Sphere (Сфера) и при помощи плав! ного выделения изменили положение выделенных вершин, чтобы получить фор! му яблока. После этого для придания модели большей реалистичности примени! ли модификатор Noise (Шум). Еще одним простым способом построения модели яблока может быть применение модификатора Lathe (Вращение), который мы только что использовали для созда! ния вазы. Для построения модели яблока сделайте следующее. 1.
В окне проекции Front (Спереди) постройте сплайн формы яблока уже извест! ным вам способом (рис. 9.4).
Натюрморт
387
Рис. 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 (Цилиндр), для чего выполните команду CreateStandard PrimitivesCylinder (СозданиеПростые примитивыЦилиндр) и в окне проекции Top (Сверху) постройте цилиндр в месте крепления хвостика к яб! локу.
2.
В окне проекции Front (Спереди) при помощи инструмента Select and Move (Выделить и переместить) переместите построенный объект в вертикальной плоскости так, чтобы он занял свое место в углублении яблока.
3.
При необходимости уточните значения радиуса и высоты цилиндра в свитке Parameters (Параметры). Они должны иметь пропорции, соответствующие раз! меру яблока.
388
Глава 9. Практическое моделирование
Рис. 9.5. Модель яблока после применения модификатора Noise (Шум)
4.
В свитке Parameters (Параметры) настроек цилиндра задайте параметру Height Segments (Количество cегментов по высоте) значение, равное 10. Это позволит в дальнейшем получить равномерный изгиб объекта.
5.
Примените к построенному цилиндру модификатор Taper (Заострение).
6.
Закончите построение хвостика применением модификатора Bend (Изгиб) (рис. 9.6).
Рис. 9.6. Модель яблока с хвостиком
Натюрморт
389
Таким образом, мы построили модель яблока. Однако для создания натюрморта одной модели будет мало. При помощи модификатора FFD Box (Произвольно де! формируемый контейнер (прямоугольный)) можно легко это исправить, создав яблоко другой формы. 1.
Скопируйте модель яблока вместе с хвостиком, для чего выделите оба объек! та и, удерживая нажатой клавишу Shift, в окне проекции Top (Сверху) переме! стите объекты в сторону. В появившемся окне Clone Options (Параметры кло! нирования) укажите Copy (Копия).
2.
Выделите модель яблока и примените к ней модификатор FFD Box (Произволь! но деформируемый контейнер (прямоугольный)), для чего выполните коман! ду ModifiersFree Form DeformersFFD Box (МодификаторыПроизвольные деформацииПроизвольно деформируемый контейнер (прямоугольный)).
3.
В области Dimensions (Размеры) свитка FFD Parameters (Параметры произволь! но деформируемого контейнера) щелкните на кнопке Set Numbers of Points (Уста! новить количество точек) и в появившемся окне Set FFD Dimensions (Установить размеры произвольно деформируемого контейнера) задайте всем параметрам значение, равное 5.
4.
В стеке модификаторов перейдите на уровень редактирования подобъектов Set Volume (Установить объем) и, используя инструмент масштабирования Select and Uniform Scale (Выделить и равномерно масштабировать) , откор! ректируйте форму произвольно деформируемого контейнера так, чтобы она в общих чертах повторяла форму яблока (рис. 9.7).
Рис. 9.7. Форма произвольно деформируемого контейнера (слева) и окно стека модификатора FFD Box (Произвольно деформируемый контейнер (прямоугольный)) (справа)
5.
В стеке модификаторов перейдите на уровень редактирования подобъектов Control Points (Контрольные точки) и выделите в верхнем ряду четыре верши! ны, равноудаленные от центра, в один ряд.
390 6.
Глава 9. Практическое моделирование
Используя инструмент Select and Move (Выделить и переместить) , переме! стите выделенные точки немного вверх, формируя модель яблока в области хвостика (рис. 9.8).
Рис. 9.8. Результат формирования верхней части яблока
7.
Выделите в нижнем ряду такие же четыре точки произвольно деформируемо! го контейнера и сместите их немного вниз для получения окончательной фор! мы яблока (рис. 9.9).
Рис. 9.9. Окончательная модель яблока
Натюрморт
391
Сгруппируйте яблоко и хвостик (в первом и втором вариантах), чтобы иметь воз! можность манипулировать группой и сделать несколько копий для натюрморта. СОВЕТ ___________________________________________________________________________ Сделав две&три копии объекта, можно изменить форму этих копий, вернувшись к пара& метрам модификатора Noise (Шум) или FFD Box (Произвольно деформируемый контей& нер (прямоугольный)) в стеке модификаторов и сделав там соответствующие изменения.
Создадим модель груши. Процесс построения этой модели совершенно такой же, как и для яблока: начинаем с построения профиля при помощи сплайна, затем применяем модификатор Lathe (Вращение) и, наконец, уточняем форму модели при помощи модификатора Noise (Шум) или FFD Box (Произвольно деформируе! мый контейнер (прямоугольный)) (рис. 9.10).
Рис. 9.10. Модель груши
Рассмотрим процесс построения виноградной грозди. На самом деле нам понадобит! ся создать лишь стебель и одну ягоду, скопировав которую, получим целую гроздь. Для построения модели винограда сделайте следующее. 1.
В окне проекции Top (Сверху) постройте объект Sphere (Сфера).
ПРИМЕЧАНИЕ ___________________________________________________________________ При построении сплайнов для вазы, яблока и груши мы не учитывали реальные размеры этих объектов, а лишь ориентировались на их пропорции. По этой причине и с виногра& дом необходимо поступить точно так же. По размеру сфера должна соответствовать раз& меру ягоды винограда и быть сопоставима с размерами созданных ранее объектов.
392 2.
Глава 9. Практическое моделирование
Используя инструмент Select and Uniform Scale (Выделить и равномерно масш! табировать) , масштабируйте сферу в вертикальной плоскости так, чтобы она приобрела вытянутую форму (рис. 9.11). При желании ее можно уточнить, используя дополнительно модификаторы поверхности.
Рис. 9.11. Форма ягоды винограда, построенная из сферы
3.
В окне проекции Front (Спереди) известным вам способом постройте сплайн, который послужит формой пути лофт!объекта для хвостика, находящегося в верхней части ягоды (рис. 9.12).
Рис. 9.12. Форма сплайна пути для построения лофт&объекта
Натюрморт
393
4.
В окне проекции Top (Сверху) постройте окружность, которая будет являться формой поперечного сечения хвостика, для чего выполните команду Create ShapesCircle (СозданиеФормыОкружность).
5.
Выделите сплайн пути (если он не выделен) и выполните команду Create CompoundLoft (СозданиеСоставные объектыЛофтинговые).
6.
В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на окружности.
7.
Перейдите на вкладку Modify (Изменить) командной панели и в свитке Deformations (Деформации) щелкните на кнопке Scale (Масштаб), в результате чего откроется окно Scale Deformation (Деформация масштаба).
8.
Измените форму кривой графика так, чтобы сплайн в окне проекции приоб! рел нужную форму (рис. 9.13).
Рис. 9.13. Окно Scale Deformation (Деформация масштаба) с уточненной формой хвостика
В результате ягода винограда должна выглядеть, как показано на рис. 9.14. Более сложным объектом для моделирования может показаться банан. Но и здесь можно обойтись построением лофт!объекта с последующей деформацией масшта! ба, аналогично тому, что мы делали для винограда. Чтобы построить модель бана! на, сделайте следующее. 1.
В окне проекции Top (Сверху) постройте сплайн пути, который представляет собой немного искривленную линию.
2.
В окне проекции Front (Спереди) создайте форму поперечного сечения, для чего выполните команду CreateShapesNGon (СоздатьФормыМного! угольник).
3.
Параметру Sides (Количество сторон) свитка Parameters (Параметры) настро! ек многоугольника задайте значение, равное 6 (рис. 9.15).
4.
Постройте лофт!объект, для чего выделите сплайн пути и выполните команду CreateCompoundLoft (СозданиеСоставные объектыЛофтинговые).
394
Глава 9. Практическое моделирование
Рис. 9.14. Ягода винограда
Рис. 9.15. Сплайны форм пути и поперечного сечения для построения модели банана
5.
В свитке Creation Method (Метод создания) настроек лофт!объекта нажмите кнопку Get Shape (Взять форму) и в одном из окон проекций щелкните на мно! гоугольнике.
6.
В свитке Deformations (Деформации) настроек лофт!объекта на вкладке Modify (Изменение) командной панели щелкните на кнопке Scale (Масштаб). В ре! зультате откроется окно Scale Deformation (Деформация масштаба).
7.
При помощи редактирования кривой измените форму сплайна так, чтобы получился банан (рис. 9.16). Редактируя сплайн, контролируйте изменение формы объекта в окнах проекций.
8.
Чтобы сгладить резко очерченные грани модели, необходимо применить мо! дификатор Relax (Ослабление), выбрав его из списка модификаторов на вклад! ке Modify (Изменение).
Натюрморт
395
Рис. 9.16. Окно Scale Deformation (Деформация масштаба) с измененной формой банана
9.
В свитке Parameters (Параметры) настроек модификатора Relax (Ослабле! ние) подберите такие значения параметров Relax Value (Величина ослабления) и Iterations (Количество итераций), чтобы получилось небольшое сглажива! ние на краях (рис. 9.17).
Рис. 9.17. Банан, полученный с использованием составных объектов (слева), и его параметры (справа)
В качестве самостоятельного задания создайте дополнительные объекты сцены. Например, сферу можно использовать для моделирования нескольких объектов: апельсина, мандарина, вишен, клубники и даже половинки лимона и киви. При этом для создания мандарина необходимо применить инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), чтобы сжать сферу в вертикальной
396
Глава 9. Практическое моделирование
плоскости, а половинка киви получается после задания параметру Hemisphere (Полу! сфера) свитка Parameters (Параметры) настроек сферы значения, равного 0,5. Ман! дарин, как и некоторые другие объекты, можно построить путем редактирования вершин на уровне подобъектов модификатора Edit Mesh (Редактирование поверх! ности). В большинстве случаев такой подход дает максимальный контроль над созданием объектов сцены и, как следствие, лучший результат. На рис. 9.18 представлен натюрморт, который получился после создания дополни! тельных объектов.
Рис. 9.18. Сцена с расставленными объектами
Подводя итоги, можно заметить, что очень часто использования стандартных па! раметрических объектов и простых методов редактирования вполне достаточно для создания хорошей сцены. В следующей главе, посвященной работе с редактором материалов, мы рассмотрим текстурирование созданной в данном упражнении сцены. ПРИМЕЧАНИЕ ___________________________________________________________________ На прилагаемом к книге DVD в папке Examples\Глава 09\Fruits находится файл сцены fruits.max.
Моделирование лофтUобъектов Допустим, необходимо создать объект, напоминающий машиностроительную де! таль. Можно моделировать при помощи разбиений, но, как мне кажется, намного легче и проще будет сделать это при помощи лофтинга.
397
Моделирование лофт&объектов
Что же такое лофт!объекты? Представьте корпус корабля, разделенный шпанго! утами (поперечными ребрами). Это и есть классический пример лофтинга, где в ка! честве формы пути выступает киль, а поперечных сечений — шпангоуты. Созда! ние лофт!объектов происходит аналогичным способом. Сначала создается сплайн, являющийся путем, на который нанизывается любое количество поперечных се! чений (форм). При построении лофт!объектов можно использовать практически любую форму для поперечного сечения или пути. Если соблюдать некоторые несложные огра! ничения, можно добиться впечатляющих результатов. Рассмотрим эти ограни! чения. Что касается формы пути, есть лишь одно ограничение — она может состоять толь! ко из одного сплайна. Если при попытке использовать сплайн в качестве формы пути 3ds Max отказывается его воспринимать, это первый признак того, что фор! ма содержит более одного сплайна. Ко всем формам поперечного сечения применяется два ограничения:
они должны содержать одинаковое количество сплайнов;
должны иметь одинаковый порядок вложения. Если первая форма на пути содержит три сплайна внутри другого сплайна (рис. 9.19), то все последую! щие формы также должны содержать три сплайна внутри другого сплайна. Впрочем, это ограничение можно обойти, используя разомкнутый внешний сплайн.
Основной недостаток разомкнутых сплай! нов — они не могут иметь крышки на кон! цах объектов. По этой причине, если возни! кает необходимость закрыть торцы такого объекта, приходится использовать моди! фикатор Edit Mesh (Редактирование поверх! ности) с последующим редактированием вручную или назначать модификатор Cap Holes (Накрытие отверстий). Можно так! же применять деформацию масштабиро! вания для лофт!объекта, изменяя параметр деформации до 0 % на концах объекта или любым доступным способом.
Рис. 9.19. Вложенные сплайны
Часто форма ведет себя необъяснимо из!за эффектов трансформаций, применяе! мых к исходным объектам. Они игнорируются впоследствии при создании лофт! объекта. Такие трансформации, как Move (Перемещение), Rotate (Вращение) и Scale (Масштабирование), не передаются с формой в лофт!объект (это концептуально заложено в потоковой схеме объекта). Если вам все!таки необходимо (в чем я очень сомневаюсь) произвести какие!либо трансформации, то выполняйте их после при! менения модификатора XForm (Преобразование). Кроме того, можно изменять форму лофтинга на уровне подобъектов внутри самого лофт!объекта.
398
Глава 9. Практическое моделирование
Формы можно строить в любом окне проекции, однако полезно придерживаться следующих правил:
форма пути для горизонтальных объектов строится от основания объекта до его верха или от задней части к передней;
формы поперечных сечений строятся в тех окнах проекций, которые наиболее согласуются с видом объекта сверху или спереди.
Таким образом, лучше всего строить формы пути и поперечного сечения в разных окнах проекций. Рассмотрим пример создания простого лофт!объекта — карандаша. Для этого в окне проекции Front (Спереди) создайте четыре сплайна (хотя можно обойтись и тре! мя) (рис. 9.20). Четвертый сплайн — копия шестиугольника со сдвинутыми вверх манипулятора! ми Безье во всех шести точках сплайна. На рис. 9.21 в окне проекции Top (Сверху) изображена форма, которая получилась у меня. В окне проекции Top (Сверху) так! же следует построить сплайн, который будет формой пути для карандаша.
Рис. 9.20. Сплайны, определяющие профиль модели карандаша
Рис. 9.21. Форма сплайнов в окне проекции Top (Сверху)
После построения всех сплайнов можно приступать к созданию лофт!объекта. Для этого выполните следующие действия. 1.
В окне проекции Top (Сверху) выделите сплайн пути (прямую).
2.
На вкладке Geometry (Геометрия) командной панели выберите из раскрываю! щегося списка Compound Objects (Составные объекты).
3.
Щелкните на кнопке Loft (Лофтинговые), чтобы активизировать режим по! строения лофтинговых объектов.
4.
В свитке Creation Method (Метод создания) щелкните на кнопке Get Shape (Взять форму), после чего указатель мыши перейдет в режим выбора.
5.
Щелкните кнопкой мыши на первой форме поперечного сечения (окружнос! ти большего диаметра). В результате лофт!объект примет форму цилиндра.
6.
В свитке Path Parameters (Параметры пути) введите значение Path (Путь), рав! ное 5. Так мы определили местоположение второго сечения.
7.
Снова нажмите кнопку Get Shape (Взять форму) и выберите вторую форму (плоский шестиугольник, расположенный слева). После этого лофт!объект станет шестигранной формы.
399
Моделирование лофт&объектов
8.
Задайте параметру Path (Путь) значение, равное 85 (расстояния по умолчанию вводятся в процентах от всего пути).
9.
Щелкните на кнопке Get Shape (Взять форму) и выберите в окне проекции Front (Спереди) правый шестигранник.
10.
Задайте параметру Path (Путь) значение, равное 100, и выберите последнюю форму — маленькую окружность.
Теперь лофт!объект похож на карандаш (рис. 9.22). ПРИМЕЧАНИЕ ___________________________________________________________________ При необходимости обратитесь к файлу упражнения pencil.max, расположенному в папке Examples\Глава 09\Lofts прилагаемого к книге DVD.
Прежде чем приступить к моделированию следующего объекта более сложной формы, необходимо рассмотреть, как согласовать первые вершины каждой формы поперечного сечения. Любой сплайн имеет первую вершину, которая обозначается квадратиком в точке ее расположения. Чтобы не происходило скручивание лофт!объекта от формы к фор! ме, необходимо выровнять первые вершины. Делается это одним из двух способов:
назначением первой вершины в необходимом месте;
вращением сплайна вокруг своей оси в режиме SubObject (Подобъект) моди! фикатора Loft (Лофтинговые), то есть когда он уже принадлежит лофт!объек! ту (помните, трансформации в лофт!объект не передаются, поэтому нет смыс! ла вращать сам сплайн).
Возьмем для примера два сплайна (допустим, окружность и квадрат) и посмотрим, как выглядят несогласованные и согласованные первые вершины у лофт!объекта. На рис. 9.23, слева изображено расположение первых вершин по умолчанию, а на рис. 9.23, справа — результат такого расположения вершин.
Рис. 9.22. Карандаш, построенный при помощи объекта Loft (Лофтинговые)
Рис. 9.23. Сплайн с несогласованными вершинами (слева) и объект, построенный на основе такого сплайна (справа)
400
Глава 9. Практическое моделирование
Если согласовать расположение первых вершин, то получится правильная форма (рис. 9.24). Иначе говоря, если соединить первые вершины, начиная от основания к верху объекта, воображаемыми отрезками, то должна получиться прямая линия. Перейдем к созданию более сложных форм лофт!объектов. Одним из класси! ческих примеров сложного объекта является вилка. В данном случае, кроме того, что сплайн имеет более сложную форму, присутствует большее количество сплайнов внутри формы поперечного сечения. Особенность построения такого лофт!объек! та заключается в том, что нужно подогнать количество сплайнов внутри каждого поперечного сечения по максимальному количеству сплайнов в форме. Например, в вилке максимальное количество сплайнов поперечного сечения — три (в зубцах вилки — по одному на каждый зубец). Чтобы получить более сглаженную форму, я использовал четыре сплайна (средний овал разделен на два сплайна). Исходя из этого все остальные формы также должны иметь по четыре сплайна. ВНИМАНИЕ ______________________________________________________________________ Если в процессе построения сложного сплайна появляется перекрученная поверхность, это первый признак того, что расположенные рядом формы имеют различный поря& док следования подобъектов. Для лофт&объектов с количеством сплайнов внутри формы больше одного сплайны всех форм должны иметь одинаковый порядок сле& дования сплайнов и вершин. Иначе говоря, лофт&объект строится от первого сплайна: от первой вершины формы к первому сплайну, к первой вершине второй формы и т. д.
На рис. 9.25 показаны формы поперечных сечений в окне проекции Front (Спереди).
Рис. 9.24. Сплайн с согласованными вершинами (слева) и лофт&объект, построенный на основе такого сплайна (справа)
Рис. 9.25. Формы поперечных сечений, подготовленные для моделирования вилки
На окружностях, образующих ручку, в режиме редактирования Vertex (Вершина) необходимо добавить дополнительные точки, а затем разделить сплайн на четыре части (выделить нужные точки и применить к ним команду Break (Разбить)). То же самое необходимо сделать и с прямоугольником. В процессе создания лофт!
401
Моделирование лофт&объектов
объекта можно редактировать как расположение поперечных сечений вдоль пути, так и их форму. Вместе с тем вы можете уточнять форму сплайна пути, поэтому совсем не обязательно все тщательно подгонять с самого начала. ПРИМЕЧАНИЕ ___________________________________________________________________ Для более детального ознакомления с формами объекта и расположением сплайнов на форме пути обратитесь к файлу упражнения fork.max, расположенному в папке Examples\Глава 09\Lofts прилагаемого к книге DVD.
На рис. 9.26 показана схема расположения поперечных сечений на сплайне. Еще одной замечательной особенностью лофт!объектов является то, что при по! мощи комбинации разомкнутых и замкнутых сплайнов можно строить поверхности с разрезами и разрывами. Если необходимо построить поверхность с множеством отверстий, нужно разделить замкнутые формы на равное количество сплайнов (не забывая о согласовании первых вершин и порядке следования сплайнов внутри формы). На рис. 9.27 показаны сплайны, из которых я смоделировал лофт!объект с разрывом посередине.
Рис. 9.26. Вилка, построенная при помощи лофт&объекта
Рис. 9.27. Сплайны формы, подготовленные для моделирования детали с дырой
Рисунок 9.28 дает представление о взаимном расположении сплайнов формы, на! низанных на сплайн пути, и визуализированном изображении лофт!объекта с ды! рой. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 09\Lofts прилагаемого к книге DVD находится файл сцены hole.max.
Еще одним классическим примером лофт!объекта является ложка. Несмотря на то что на первый взгляд она мало напоминает лофт!объект, ее достаточно про! сто строить при помощи команды Fit (Подогнать).
402
Глава 9. Практическое моделирование
Рис. 9.28. Схема расположения сплайнов вдоль пути (слева) и результат визуализации объекта с дырой (справа)
Деформация подгонки имеет несколько ограничений (однако это не мешает ей оставаться быстрым и мощным средством для построения объектов сложной формы):
формы подгонки должны быть одиночными замкнутыми сплайнами;
искривленные сегменты не должны расширяться за пределы первой и послед! ней вершины формы на оси Õ;
формы подгонки не должны иметь подрезаний, то есть если зрительно прове! сти вертикальную линию, проходящую через сплайн, то она не должна разре! зать форму более чем в двух местах;
формы вида сверху и вида сбоку должны иметь одинаковую длину.
Последнее требование не является обязательным, так как 3ds Max может автома! тически масштабировать вторую форму, подогнав ее под длину первой, однако в результате могут возникнуть непредвиденные искажения. Для построения модели ложки выполните следующие действия. 1.
В окне проекции Top (Сверху) постройте две формы подгонки — контуры бу! дущей ложки вида сверху и сбоку.
2.
В этом же окне проекции постройте прямую — форму пути (рис. 9.29).
3.
В окне проекции Left (Слева) постройте три формы поперечного сечения (на самом деле при построении таких объектов их может быть сколько угод! но) (рис. 9.30).
403
Моделирование лофт&объектов
Рис. 9.29. Формы подгонки для построения модели ложки
4.
Рис. 9.30. Формы поперечного сечения модели ложки
Постройте лофт!объект по классической схеме (как строили карандаш): вы! делив сплайн пути, нажмите кнопку Get Shape (Взять форму), после чего щел! кайте кнопкой мыши на сплайнах поперечных сечений, не забывая при этом смещать положение точки пути.
В результате должна получиться форма, показанная на рис. 9.31. Для дальнейшего моделирования ложки сделайте следующее. 1.
В свитке Deformations (Деформации) щелкните на кнопке Fit (Подогнать), в результате чего появится окно де! формации подгонки.
Рис. 9.31. Начальная форма ложки после применения сплайнов поперечного сечения
2.
В окне деформации подгонки нажмите кнопку Make Symmetrical (Сделать сим! метричным) , чтобы запретить симметричное построение для обеих осей.
3.
Щелкните на кнопке Display X Axis (Отобразить ось Х) форму подгонки по оси Õ.
4.
Нажмите Get Shape (Взять форму) те форму ложки (рис. 9.32).
, чтобы загрузить
и в окне проекции Top (Сверху) выбери!
Рис. 9.32. Форма ложки в окне подгонки деформации по оси X
5.
Проделайте вышеописанные действия для формы подгонки по оси Y, выбрав при этом сплайн вида сбоку.
404 6.
Глава 9. Практическое моделирование
При необходимости уточните положение точек на профилях (их также можно добавить или удалить).
На рис. 9.33 показано окончательное изображение визуализированной модели ложки. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 09\Lofts прилагаемого к книге DVD находится файл сцены spoon.max.
Вернемся к построению лофт!объектов, имеющих разомкнутый внешний сплайн. На рис. 9.34 представлены две формы поперечного сечения, каждая из которых со! стоит из трех сплайнов.
Рис. 9.33. Готовая модель ложки
Рис. 9.34. Две формы с разомкнутым сплайном
При построении этих форм использовались скругленные прямоугольники и сплай! ны окружностей. Прямоугольники имеют разрывы в точках, расположенных на сплайне справа (могут быть в любом месте, но обязательно согласованы). Чтобы выполнить разрыв сплайна, выделите точку на сплайне, затем в свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить). Сам лофт!объект строится обыч! ным способом — при помощи сплайна пути и сплайна формы (рис. 9.35). Остановимся подробнее на моделировании лофт!объектов с возвратными путями. Данный способ позволяет во многих случаях избежать применения булевых опе! раций и получить предсказуемую и легко настраиваемую модель. В качестве объекта для моделирования возьмем головку для накидного гаечного ключа. Начнем моделирование с создания сплайнов. Для этого выполните следу! ющие действия. 1.
В окне проекции Top (Сверху) постройте две окружности диаметром 70 и 50. Для этого выполните команду CreateShapesCircle (СозданиеФормыОкруж!
405
Моделирование лофт&объектов
ность), после чего щелкните в окне проекции Top (Сверху) и переместите ука! затель в сторону для построения окружности. 2.
Для моделирования прямоугольника выполните команду CreateShapesRectangle (СозданиеФормыПрямоугольник) и постройте в окне проекции Top (Сверху) прямоугольник размером 50 × 50.
3.
Чтобы создать внутреннее отверстие, понадобится сплайн Star (Звезда) с па! раметрами, показанными на рис. 9.36. Он строится аналогично предыдущим объектам.
Рис. 9.35. Деталь, построенная с использованием разомкнутых сплайнов
4.
Рис. 9.36. Настройки сплайна Star (Звезда)
Постройте сплайн возвратного пути. Для этого в окне проекции Front (Спере! ди) поставьте точку, которая будет служить основанием сплайна, затем точку вверху и опять у основания. В итоге внизу получатся две точки (первая и по! следняя), а вверху — одна (там сплайн меняет направление на противополож! ное). На предложение объединить вершины ответьте отрицательно.
СОВЕТ ___________________________________________________________________________ Чтобы легче было строить точки, воспользуйтесь привязкой к сетке. Для этого щелк& правой кнопкой мыши и уста& ните на кнопке Snaps Toggle (Переключение привязок) новите в открывшемся окне флажок Grid Points (Точки сетки).
На рис. 9.37 показаны сплайны, построенные для моделирования детали. Помните, что обязательно нужно согласовывать первые вершины. Желательно, чтобы количество сегментов (вершин) у всех сплайнов формы сечения также сов! падало (для получения сглаженной формы). Чтобы количество сегментов было одинаковым во всех сплайнах, выполните следующие действия. 1.
Конвертируйте все формы в Editable Spline (Редактируемый сплайн) командой Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редак! тируемый сплайн) контекстного меню.
406
Глава 9. Практическое моделирование
2.
Выделите сегменты объекта Star (Звезда) (потому что этот сплайн содержит наибольшее количество сегментов) и в свитке Selection (Выделение) посмот! рите статистику выделенных сегментов. Их количество — 32. Именно к тако! му количеству сегментов нужно привести остальные сплайны.
3.
Выделите прямоугольник и затем в режиме редактирования подобъектов Segment (Сегмент) — все его сегменты (четыре). После этого в поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) наберите цифру 7 и щелкните на кнопке Divide (Разделить). В результате в квадрате получится 32 сегмента.
4.
Проведите те же операции для двух оставшихся окружностей.
5.
Согласуйте все первые вершины, для чего выставьте их у всех сплайнов, на! пример, справа.
Теперь можно приступать к построению лофт!объекта. Схема распределения пу! тей такова:
0 % — большая окружность;
27 % — большая окружность;
27,1 % — меньшая окружность (уменьшается диаметр поверхности детали);
50 % — меньшая окружность;
50,1 % — квадрат (в этом месте путь меняет направление на противоположное и получается внутреннее отверстие);
75 % — квадрат;
75,1 % — звезда (отверстие из квадратного превращается в многогранное);
99,9 % — звезда;
100 % — большая окружность (закрываем пустоту между внешним и внутрен! ним отверстиями).
Чтобы закончить построение объекта, внесите следующие изменения. В свитке Skin Parameters (Параметры поверхности) снимите флажки Cap Start (Закрыть начало) и Contour (Контур). Готовый лофт!объект показан на рис. 9.38.
Рис. 9.37. Сплайны для построения ключа
Рис. 9.38. Схема расположения сплайнов вдоль пути (слева) и сам объект (справа)
Моделирование штор
407
ПРИМЕЧАНИЕ ___________________________________________________________________ Файл упражнения detale.max находится в папке Examples\Глава 09\Lofts прилагаемо& го к книге DVD.
Подводя итоги, стоит сказать, что при помощи лофт!моделирования можно созда! вать не только простые, но и достаточно сложные геометрические формы. Кроме того, осталась нерассмотренной такая возможность, как анимация пути, но это тема для отдельного упражнения.
Моделирование штор Моделирование любого объекта сцены должно начинаться с предварительного анализа. Такой подход позволяет экономить и время, и ресурсы компьютера. Итак, что же такое шторы с точки зрения трехмерного объекта? Наверное, проще всего представить штору как прямоугольник с вертикальными складками. В свя! зи с этим встает следующий вопрос: а как же проще всего получить такие склад! ки? При ответе на этот вопрос вы должны определиться в том, насколько хорошо вы знаете возможности программы и какие способы моделирования предпочитае! те. Например, я знаю как минимум четыре способа моделирования шторы.
Моделирование профиля при помощи сплайнов с последующим применени! ем модификатора Extrude (Выдавливание) или объекта Loft (Лофтинговые) и редактирования поверхности при помощи модификатора FFD Box (Произволь! но деформируемый контейнер (прямоугольный)) для придания шторе окон! чательного вида.
Создание объекта Plane (Плоскость) со значительным количеством вертикальных полигонов, затем редактирование положения вершин в пространстве и приме! нение модификатора MeshSmooth (Сглаженная поверхность) для сглаживания граней. В данном случае вы можете максимально контролировать итоговую геометрию, но теряете значительное количество времени по сравнению с пре! дыдущим вариантом.
Моделирование на основе NURBS!объекта с использованием верхнего и ниж! него профиля и последующим применением команды Ruled Surface (Поверх! ность по краям). Именно использование двух профилей позволяет получить более естественный вид подвешенной к карнизу шторы.
Создание Surface!поверхности. В этом случае также используются два сплай! на профиля — верхний и нижний — с последующим применением модифика! торов CrossSection (Поперечное сечение) и Surface (Поверхность).
Рассмотрим два последних варианта.
Первый вариант Как я уже говорил выше, для моделирования NURBS!поверхности понадобится создать два профиля. Построение необходимо проводить в окне проекции Top
408
Глава 9. Практическое моделирование
(Cверху), а в качестве кривой должна использоваться CV Curve (CV!кривая), для построения которой выполните команду главного меню CreateNURBSCV Curve (СоздатьNURBSCV!кривая). Я думаю, вы знаете, как выглядят шторы, поэтому не стану рассказывать вам о том, что они собой представляют и каким образом крепятся. Замечу лишь, что в верх! ней части складки обычно более плотные, что обусловлено способом крепления шторы к карнизу (кольца, зажимы и т. д.). В нижней части штора свободно свисает под воздействием силы гравитации, а те физические законы, которые заставляют ткань распрямляться, в некоторой степени сглаживают неровности, создаваемые в местах крепления. Таким образом, складки нижней части шторы должны в це! лом соответствовать верхним, но иметь более свободную форму (рис. 9.39).
Рис. 9.39. Форма CV&кривых для верхнего и нижнего края шторы
На самом деле верхняя кривая (на рис. 9.39 она белая) может выглядеть иначе. Я в данном случае предположил, что в качестве шторы у меня используется глад! кое полотно (не имеющее декоративной отделки), которое крепится к карнизу за! жимами (без создания предварительных складок). В результате, если немного со! брать такую штору, как раз получится волна. СОВЕТ ___________________________________________________________________________ После создания сплайнов их кривизну можно редактировать при помощи изменения положения вершин в пространстве, для чего на вкладке Modify (Изменить) командной панели необходимо перейти в режим редактирования Curve CV (Управляющие вер& шины кривой) (рис. 9.40).
При желании можно создать эффект подвешенной ткани. Обычно в области изги! ба ткани, максимально удаленной от места крепления, возникает провисание. Та! кое провисание ткани легко получить путем выделения среднего ряда вершин (в местах крепления к карнизу) и небольшого смещения их вверх (рис. 9.41). Кривые готовы. Не забывайте о том, что они должны быть расположены в одной плоскости относительно вертикали и расстояние между ними должно составлять высоту шторы.
Моделирование штор
409
Рис. 9.40. Уровень Рис. 9.41. Результат перемещения среднего ряда управляющих подобъектов Curve CV вершин верхнего сплайна (Управляющие вершины кривой) для редактирования кривой
Осталось совсем немного — создать поверхность между двумя кривыми. Для это! го как нельзя лучше подойдет инструмент Ruled Surface (Поверхность по краям), но прежде необходимо объединить построенные кривые в один объект. Сделать это можно путем присоединения одной кривой к другой. Для этого выделите одну кривую, нажмите кнопку Attach (Присоединить), расположенную в свитке General (Общие) настроек кривой, и щелкните в окне проекции на второй кривой. Щелкните на кнопке Create Ruled Surface (Создать поверхность по краям) , рас! положенной на плавающей палитре инструментов NURBS1, и выберите в окне про! екции одну кривую, а затем вторую. В результате вышеописанных операций вы получите готовую поверхность шторы (рис. 9.42). ПРИМЕЧАНИЕ ___________________________________________________________________ После создания поверхности можно продолжить редактировать кривые, поэтому, если вас не удовлетворяет получившийся результат, вы можете изменить форму кри& вых, контролируя при этом общую форму поверхности шторы.
1
Плавающую палитру NURBS можно вызвать щелчком на кнопке NURBS Creation Toolbox (Панель инструментов создания NURBS!объекта), расположенной в свитке Gene! ral (Общие) настроек NURBS!кривой на вкладке Modify (Изменение) командной панели.
410
Глава 9. Практическое моделирование
Рис. 9.42. Штора, построенная по двум кривым
Этим можно было бы ограничиться, но я хотел бы еще в об! щих чертах описать, как изменить геометрию шторы, если она собрана у основания или в другой части. Наверное, вы уже успели заметить, что NURBS!поверх! ность не имеет других контрольных точек, кроме тех, ко! торые расположены на сплайнах в верхней и нижней частях шторы. Этого явно недостаточно для того, чтобы редакти! ровать поверхность в горизонтальной плоскости. В связи с этим первое, что необходимо сделать, — это добавить управляющие вершины в среднюю часть. Для этого выпол! ните следующие действия.
Рис. 9.43. Свиток Surface Common (Общие свойства поверхности) настроек построенной шторы
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. Этого вполне достаточно, чтобы собрать штору в нижней ее части.
Моделирование штор
411
После того как будут добавлены точки поверхности, их можно редактировать, для чего необходимо перейти на уровень подобъектов Point (Точка) и воспользоваться инструментами перемещения, масштабирования и поворота. На рис. 9.44 представлена штора, которую я получил при помощи перемещения точек и использования параметра Soft Selection (Плавное выделение).
Рис. 9.44. Модель шторы после редактирования вершин
Второй вариант Второй вариант моделирования шторы в общих чертах напоминает описанный выше, но имеет свои особенности. Как и в первом варианте, необходимо постро! ить кривую, которая будет являться профилем модели шторы. Чтобы ее создать, необходимо воспользоваться командой главного меню CreateShapesLine (Соз! датьФормыЛиния) и построить кривую в окне проекции Top (Сверху). Ско! пируйте построенную кривую со смещением по вертикали и отредактируйте ее форму так, чтобы получить геометрию нижнего края. ВНИМАНИЕ ______________________________________________________________________ Копирование используется для того, чтобы сохранить одинаковое количество вершин обоих сплайнов — это важно! Если вы решите вместо копирования строить вторую кривую, то позаботьтесь о том, чтобы количество вершин обоих сплайнов было оди& наковым.
Для продолжения моделирования нужно, как и в предыдущем случае, чтобы оба сплайна принадлежали одному объекту. Сделать это просто: достаточно выделить один из сплайнов, затем в свитке Geometry (Геометрия) его настроек нажать кнопку Attach (Присоединить) и в окне проекции щелкнуть на втором сплайне. После
412
Глава 9. Практическое моделирование
этого можно перейти к созданию поверхности, которая строится при помощи двух модификаторов: CrossSection (Поперечное сечение) и Surface (Поверхность) (рис. 9.45). В результате применения модификаторов вы получите поверхность шторы, а после небольшого редактирования вершин сплайнов — оригинальную форму. Как и в преды! дущем варианте, вы можете редактировать не только вер! шины верхнего и нижнего рядов, но и всю поверхность. Необходимо лишь применить к объекту соответствующий модификатор, например Edit Patch (Редактирование кус! ков) или Edit Poly (Редактирование полигонов).
Рис. 9.45. Стек модификаторов шторы
ПРИМЕЧАНИЕ ___________________________________________ В зависимости от того, каким образом были построены сплайны (положение первой вершины), возможно, вам пона& добится обратить поверхность объекта к виду из камеры или окна проекции. Для этого просто установите флажок Flip Nor& mals (Обратить нормали) свитка Parameters (Параметры).
На рис. 9.46 представлен второй вариант модели шторы.
Рис. 9.46. Второй вариант модели шторы
ПРИМЕЧАНИЕ ___________________________________________________________________ Для ознакомления с первым и вторым вариантами модели шторы вы можете обра& титься к файлам curtain v1.max и curtain v2.max, расположенным в папке Examples\ Глава 09\Curtain прилагаемого к книге DVD.
Полигональное моделирование телефонной трубки
413
Полигональное моделирование телефонной трубки В этом упражнении рассмотрим создание модели телефонной трубки при помощи полигонального моделирования (рис. 9.47).
Рис. 9.47. Модель телефонной трубки
Начнем моделирование с построения примитива Box (Параллелепипед). В свитке Parameters (Параметры) его настроек укажите габариты объекта и количество его сегментов по длине, ширине и высоте (рис. 9.48). Телефонная трубка имеет изгиб. Чтобы создать его, примените модификатор Bend (Изгиб), выполнив команду ModifiersParametric DeformersBend (Модификаторы Параметрические деформацииИзгиб). В результате в стеке модификаторов появит! ся требуемый элемент. Задайте его параметры согласно изображенным на рис. 9.49.
Рис. 9.48. Параметры примитива Box (Параллелепипед) для построения трубки телефона
Рис. 9.49. Параметры модификатора Bend (Изгиб)
414
Глава 9. Практическое моделирование
Больше свойства параметрического объекта вам не понадобятся. Дальнейшая работа будет проходить на уровне редактирования подобъектов — вершин, ребер, поли! гонов и т. д. Чтобы преобразовать объект в редактируемую поверхность, щелкните на параллелепипеде правой кнопкой мыши. Появится контекстное меню, в кото! ром выполните команду Convert ToConvert to Editable Poly (ПреобразоватьПре! образовать в редактируемую полигональную поверхность).
ПРИМЕЧАНИЕ ___________________________________________________________________ Если вы работаете в более ранних версиях программы, где еще нет Editable Poly (Ре& дактируемая полигональная поверхность), то используйте для тех же целей Editable Mesh (Редактируемая поверхность). Однако при этом некоторые функции будут не& доступны.
Перейдите на уровень редактирования вершин, для чего щелкните на кнопке Vertex (Вершина) в свитке Selection (Выделение). После этого в окне проекции Left (Слева) отредактируйте три верхних ряда вершин так, чтобы получился изгиб трубки в поперечном сечении (рис. 9.50). Далее создайте таким же способом изгибы формы на торцах трубки, с той лишь разницей, что основание, которым трубка ставится на базу, должно быть выгнуто меньше, нежели верх (рис. 9.51).
Рис. 9.50. Редактирование изгиба верхней части трубки
Рис. 9.51. Редактирование вершин в окне проекции Top (Сверху)
Чтобы скруглить объект, перейдите на уровень редактирования граней. Для этого нажмите кнопку Edge (Ребро) в свитке Selection (Выделение). Перед тем как на! чать выделение граней, установите флажок Ignore Backfacing (Без обратной ориента! ции), что позволит избежать случайного выбора граней, лежащих на противополож! ных сторонах геометрии. Для выделения необходимых ребер, удерживая клавишу Ctrl, щелкайте поочередно на одном из ребер каждой стороны. Таким образом вы добавите их к выделению. После этого в свитке Selection (Выделение) нажмите кноп! ку Loop (Петля), чтобы автоматически выбрать остальные ребра (рис. 9.52).
Полигональное моделирование телефонной трубки
415
Помните, что в процессе выбора ребер нужно контролировать область выделения во всех окнах проекций. После выделения необходимых ребер можно применить к ним команду Chamfer (Фаска). Для этого разверните свиток Edit Edges (Редактирование ребер) настроек объекта и щелкните на кнопке Settings (Настройки) рядом с кнопкой Chamfer (Фас! ка). В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение, равное 4. Щелкните на кнопке OK. В результате на краях появятся закругления. Их можно увидеть, установив для объекта сглаживание. Для этого в свитке Subdivision Surface (Поверхности с разби! ением) установите флажок Use NURMS Subdivision (Использовать NURMS!разбие! ния), а в области Display (Отображение) задайте параметру Iterations (Количество итераций) значение, равное 2. Поверхность станет сглаженной (рис. 9.53).
Рис. 9.52. Выделенные ребра верхних и боковых граней для формирования фаски
Рис. 9.53. Поверхность после применения фаски и сглаживания
Повторим те же действия для нижних ребер. 1.
Выберите ребра, расположенные по периметру нижней плоскости.
2.
Вызовите окно Chamfer Edges (Фаска ребер).
3.
Задайте параметру Chamfer Amount (Величина фаски) значение, равное 2.
4.
Подтвердите внесенные изменения, щелкнув на кнопке OK.
В результате вы получите скругления на нижней части трубки, но с меньшим ра! диусом (рис. 9.54). Мы сделали приблизительную форму трубки телефона. Теперь нужно добавить вершины для редактирования. Это можно сделать разными способами, но мы вос! пользуемся самым простым и удобным в данном случае — секущей плоскостью. Для выполнения сечения поверхности плоскостью сделайте следующее. 1.
Вернитесь на уровень редактирования вершин, щелкнув на кнопке Vertex (Вер! в свитке Selection (Выделение). шина)
416
Глава 9. Практическое моделирование
2.
В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость). В результате кнопка подсветится цветом, а в гори! зонтальной плоскости объекта появится секущая плоскость.
3.
На панели инструментов щелкните на кнопке Angle Snap Toggle (Переключа! тель угловых привязок) , что позволит проще поворачивать на заданные углы.
4.
Щелкните на кнопке Select and Rotate (Выделить и повернуть) секущую плоскость на 90° (рис. 9.55).
5.
Нажмите кнопку Slice (Срез) в свитке Edit Geometry (Редактирование гео! метрии).
6.
Щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии), чтобы отключить создание сечений.
Рис. 9.54. Фаска на нижних гранях трубки
и поверните
Рис. 9.55. Положение секущей плоскости относительно объекта&трубки
Прежде чем наращивать плотность сетки полигонов, необходимо отредактировать положение вершин в пространстве с учетом добавленных. Для этого в окне проек! ции Front (Спереди) переместите группы вершин, сформировав таким образом об! ласть расположения динамика. Перед этим не забудьте снять флажок Ignore Backfacing (Без обратной ориентации), чтобы можно было выбирать группы вершин по все! му сечению (рис. 9.56). Для формирования мест для кнопок вам понадобится сделать еще пять сечений плоскостью в окне проекции Front (Спереди).
СОВЕТ ___________________________________________________________________________ Как видите, я не стал делать эти сечения вместе с первым. Это усложнило бы редак& тирование положения вершин, которых было бы намного больше. Если есть возмож& ность, всегда старайтесь максимально сформировать форму объекта при минималь& ном количестве полигонов. Это не только упрощает работу, но и позволяет получить более сглаженные формы.
Полигональное моделирование телефонной трубки
417
Как делать сечения, вы уже знаете. На рис. 9.57 показана та часть трубки, на кото! рой нужно их сделать. Расстояния между ними должны быть приблизительно одинаковыми.
Рис. 9.56. Отредактированная поверхность после разреза секущей плоскостью
Рис. 9.57. Дополнительные сечения для формирования мест для кнопок
Перейдем к формированию углубления, в которое обычно встраивается дисплей. У меня трубка старого образца, поэтому на этом месте находится всего лишь лого! тип фирмы 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). Чтобы закончить формирование углубления, выполните следующие действия. 1.
Не снимая выделение с полигонов, щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание).
2.
В открывшемся окне Extrude Polygons (Выдавить полигоны) задайте парамет! ру Extrude Height (Высота выдавливания) значение –7.
418
Рис. 9.58. Начало формирования углубления
Глава 9. Практическое моделирование
Рис. 9.59. Полигоны для формирования углубления
3.
Подтвердите внесенные изменения, щелкнув на кнопке OK.
4.
Перейдите на уровень редактирования вершин, нажав кнопку Vertex (Верши! на) в свитке Selection (Выделение).
5.
В окне проекции Front (Спереди) отредактируйте положение вершин, как по! казано на рис. 9.60.
Если сейчас посмотреть на созданное углубление, то можно увидеть, как его внут! ренние грани формируют скругления большого радиуса. В нашем случае, наоборот, внутренние грани по периметру должны образовывать четкую границу плоско! стей. Чтобы это сделать, нужно увеличить плотность сетки в местах изгибов. По! высить плотность полигонов можно несколькими способами, но я воспользуюсь уже знакомым вам методом формирования фаски на уровне ребер. Для построения такой фаски выделите внутренние грани по периметру углубле! ния, исключая сторону изгиба, и примените к ним Chamfer Edges (Фаска ребер). Введите значение Chamfer Amount (Величина фаски), равное 0,5. В результате углуб! ление примет более реалистичный вид (рис. 9.61).
Рис. 9.60. Положение вершин, формирующих углубление
Рис. 9.61. Формирование фаски внутри отверстия
Впечатление о проделанной работе портят внешние углы, которые имеют слиш! ком большой радиус закругления. Чтобы избавиться от этого, примените к ребрам,
Полигональное моделирование телефонной трубки
419
формирующим эти углы, Chamfer Edges (Фаска ребер) с величиной смещения, рав! ной 0,5 (рис. 9.62). Теперь можно переходить к формированию углубления в месте нахождения ди! намика. Легче всего его создать при помощи булевой операции Cut (Вычитание), но, как правило, это искажает полигональную сетку модели, превращая ее в «ме! сиво» из вершин, ребер и полигонов и затрудняя дальнейшее редактирование. Данную операцию можно было бы применить в конце моделирования, но нужно еще сделать отверстия для кнопок, отделку и т. д., поэтому выполним углубление, сформировав его в существующей сетке. Чтобы облегчить построение окружности, создайте в окне проекции Bottom (Сни! зу) сплайн Circle (Окружность) с радиусом, равным 17. Для этого выполните ко! манду CreateShapesCircle (СозданиеФормыОкружность), затем в окне про! екции Bottom (Снизу) щелкните кнопкой мыши на месте расположения будущего углубления и переместите указатель в сторону, формируя окружность (рис. 9.63). В настройках окружности задайте параметру Radius (Радиус) значение, равное 17.
Рис. 9.62. Обработка угла
Рис. 9.63. Положение шаблона&окружности для формирования углубления в трубке телефона
После появления шаблона, по которому можно выверять форму углубления, нуж! но увеличить плотность сетки полигонов в этом месте. Для этого воспользуйтесь инструментом Cut (Вычитание). Его можно активизировать в свитке Edit Geometry (Редактирование геометрии) на любом из уровней подобъектов, щелкнув на кноп! ке Cut (Вычитание). В результате кнопка изменит свой цвет, указывая, что она на! ходится в активном режиме. После этого щелкните на ребре или вершине объекта и, не отпуская кнопку мыши, переместите указатель к другому ребру или вершине. Пунктирная линия вслед за указателем определит место, где будет создано новое ребро. Для выключения режима вычитания щелкните правой кнопкой мыши. Чтобы получить отверстие, нужно выполнить разрезы в несколько приемов, про! межуточно редактируя вершины. Первые разрезы показаны на рис. 9.64. К диагональным разрезам добавьте разрезы по периметру отверстия. Отредакти! руйте положение вершин, но не старайтесь делать это максимально точно, так как после очередных разрезов положение вершин придется уточнять снова (рис. 9.65).
420
Рис. 9.64. Разрезы, сделанные для формирования углубления
Глава 9. Практическое моделирование
Рис. 9.65. Добавлены новые разрезы по периметру окружности
Чтобы получить максимально ровный и сглаженный круг, нужно выполнить еще по одному разрезу внутри сформированных лучей, исходящих из центра окруж! ности. После этого можно переходить к окончательному редактированию вершин. Сейчас их положение должно быть определено шаблоном!окружностью, на кото! ром они находятся, а расстояния между соседними вершинами по возможности должны быть одинаковыми. После того как будут расставлены вершины, можно сформировать внутреннее кольцо ребер. Для этого выделите внутренние полигоны и примените команду Inset (Смещение внутрь) описанным выше способом, но только с величиной сдви! га, равной половине радиуса круга (рис. 9.66). Перед тем как перейти к формированию мест для кнопок, выполните сдвиг вершин, расположенных внутри окружности, так, чтобы сформировалась небольшая выемка. К внешнему кольцу из ребер примените Chamfer Edges (Фаска ребер) с очень малень! кой величиной среза, чтобы по периметру углубления образовалась фаска (рис. 9.67).
Рис. 9.66. Формирование внутренних полигонов углубления
Рис. 9.67. Окончательный вид углубления в телефонной трубке
Теперь займемся углублениями для кнопок. Прежде чем выдавливать рельеф, нужно построить форму кнопок. Кнопки пульта мы сделаем как отдельные объек! ты, например с помощью примитива ChamferBox (Параллелепипед с фаской).
Полигональное моделирование телефонной трубки
421
Из шести построенных ранее сечений для формирования кнопок выделите четыре внутренних поперечных ряда ребер и примените к ним Chamfer Edges (Фаска ребер) с величиной среза, равной 4,5, что задаст ширину посадочного места (рис. 9.68). Выполните те же действия по отношению к продольным ребрам в области по! строения кнопок. Для этого примените к ним Chamfer Edges (Фаска ребер), но только с величиной среза, равной 6,5. В результате данных операций будет сфор! мирована область выдавливания (рис. 9.69).
Рис. 9.68. Применение Chamfer Edges (Фаска ребер) в начале формирования мест для кнопок
Рис. 9.69. Применение Chamfer Edges (Фаска ребер) для продольных ребер
Таким образом, мы создали общую форму отверстий для кнопок. Размер отверстий по длине примерно в полтора раза превышает ширину, что может сказаться на по! следующем сглаживании, если не разделить широкие стороны пополам. Восполь! зуйтесь командой Cut (Вычитание) и сделайте продольные разрезы, соединив про! тивоположные вершины полей, где будут кнопки (рис. 9.70). Кнопки имеют скругленные грани, что относится и к отверстиям, в которых они будут находиться. Их можно сделать, сначала выдавив отверстия, затем выделив внутренние вертикальные грани и применив Chamfer Edges (Фаска ребер). Но мож! но поступить по!другому — применив к угловым вершинам Chamfer Vertices (Фас! ка вершин)1 перед выдавливанием. Можете попробовать оба метода, я опишу пер! вый вариант. Чтобы сделать отверстия для кнопок телефонной трубки, выполните следующее. 1.
Выделите все полигоны, относящиеся к будущим отверстиям.
2.
В свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание).
3.
В появившемся окне Extrude Polygons (Выдавить полигоны) выставьте величину выдавливания –4 и подтвердите внесенные изменения, щелкнув на кнопке OK.
1
Чтобы вызвать окно Chamfer Vertices (Фаска вершин), следует щелкнуть на кнопке, рас! положенной рядом с кнопкой Chamfer (Фаска) в свитке Edit Vertices (Редактирование вершин).
422
Глава 9. Практическое моделирование
Теперь необходимо сформировать скругления внутренних углов. Для этого вы! полните следующие действия. 1.
Перейдите на уровень редактирования Edge (Ребро)
2.
Выделите все внутренние вертикальные ребра сформированных отверстий.
3.
Примените к ним Chamfer Edges (Фаска ребер) и задайте параметру Chamfer Amount (Величина фаски) значение 1.
.
СОВЕТ ___________________________________________________________________________ Чтобы было удобнее выделять грани, воспользуйтесь окном проекции Perspective (Перспектива), развернув его во весь экран при помощи сочетания клавиш Alt+W.
Продолжим формирование фасок отверстий. Выделите по одному верхнему реб! ру в каждом отверстии и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате должны выделиться все ребра, очерчивающие верхний край отверстия. Примените к ним Chamfer Edges (Фаска ребер) со значе! нием параметра Chamfer Amount (Величина фаски) 0,1. После того как будет сделана фаска для верхних ребер, перейдите на уровень ре! дактирования полигонов, щелкнув на кнопке Polygon (Полигон) . Внутренние полигоны все еще должны быть выделены, если это не так, выделите их снова. После этого в свитке Edit Geometry (Редактирование геометрии) щелкните на кноп! ке Detach (Отделить) и в появившемся окне выберите метод отделения Detach To Element (Отделить в элемент). То, что должно получиться после редактирова! ния полигонов, показано на рис. 9.71.
Рис. 9.70. Дополнительные разрезы в области расположения кнопок
Рис. 9.71. Окончательно сформированные углубления для кнопок
Теперь нужно сделать сами кнопки. Для этого используйте примитив ChamferBox (Параллелепипед с фаской) с параметрами, показанными на рис. 9.72. Можно не изменять созданную кнопку, а преобразовать ее в Editable Mesh (Редак! тируемая поверхность) и немного изменить положение вершин, чтобы получить
Полигональное моделирование телефонной трубки
423
небольшое закругление верха кнопки. После того как будет сформирована одна кнопка, сделайте ее копии для всех имеющихся углублений (рис. 9.73).
Рис. 9.72. Параметры объекта ChamferBox (Параллелепипед с фаской), использованного для формирования кнопок
Рис. 9.73. Окончательный вид кнопок
Функциональные кнопки (меньшие по размеру) создаются таким же способом. Теперь пора переходить к антенне, формированию мест для функциональных кно! пок, отделке и фирменной надписи 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 (Редактирование полигонов).
и выделите на!
424 3.
Глава 9. Практическое моделирование
В появившемся окне Inset Polygons (Сместить полигоны внутрь) задайте пара! метру Inset Amount (Величина смещения) значение 1,2 (рис. 9.75).
Рис. 9.74. Параметры примитива Box (Параллелепипед), предназначенного для моделирования антенны
Рис. 9.75. Формирование внутреннего ряда граней при помощи Inset (Смещение внутрь)
При помощи секущей плоскости или вручную разделите моделируемый объект на две части по широкой стороне. Это облегчит процесс дальнейшего формирования закруглений на антенне. Затем при выделенном торцевом полигоне примените к нему команду Bevel (Выдавливание со скосом). Для этого вызовите окно Bevel Polygons (Выдавливание со скосом полигонов), щелкнув на кнопке Settings (На! стройки) рядом с кнопкой Bevel (Выдавливание) в свитке Edit Polygons (Редакти! рование полигонов). Задайте параметрам Height (Высота) и Outline Amount (Вели! чина смещения) значения, показанные на рис. 9.76. После того как будет сформирована внешняя часть антенны, отредактируйте ее окончание, сделав на торцевых ребрах фаску и передвинув вдоль оси антенны на! ружу центральные вершины для формирования скругления (рис. 9.77).
Рис. 9.76. Параметры выдавливания верхней части антенны
Рис. 9.77. Окончательный вид антенны
Сделаем небольшое декоративное расширение в середине трубки. Для этого вы! делите средние ребра на боках трубки и примените к ним Chamfer Edges (Фаска ре! бер) со значением Chamfer Amount (Величина фаски), равным 2 (рис. 9.78).
Полигональное моделирование телефонной трубки
425
Выделите серединный шов по всему периметру модели и примените к нему Extrude Edges (Выдавить ребра), щелкнув на кнопке Settings (Настройки) рядом с кнопкой Extrude (Выдавливание). В появившемся окне Extrude Edges (Выдавить ребра) сле! дует ввести значения, показанные на рис. 9.79.
Рис. 9.78. Применение Chamfer Edges (Фаска ребер) для формирования продольного шва
Рис. 9.79. Окно Extrude Edges (Выдавить ребра) с параметрами первого выдавливания
Щелкните на кнопке Apply (Применить), чтобы выполнить первое выдавливание. Затем, не меняя выделения и не закрывая диалоговое окно Extrude Edges (Выда! вить ребра), введите в поля новые значения высоты и ширины выдавливания (рис. 9.80). Щелкните на кнопке OK для применения изменений. При кажущейся сложности задачи для построения профиля стыка понадобилось всего две операции. Сделай! те тестовую визуализацию трубки (рис. 9.81).
Рис. 9.80. Окно Extrude Edges (Выдавить ребра) с параметрами второго выдавливания
Рис. 9.81. Трубка с боковым швом
В трубке есть еще некоторые детали, которые необходимо смоделировать (напри! мер, функциональные кнопки, кнопку включения!выключения и т. д.), но я не ста! ну описывать процесс их создания, так как он ничем не отличается от того, кото! рый мы рассмотрели, — для основных кнопок трубки.
426
Глава 9. Практическое моделирование
Смоделируем место для функциональных кнопок, выполнив следующие действия. 1.
Добавьте еще один поперечный разрез у основания трубки.
2.
В продольной плоскости разрежьте полигоны, лежащие по бокам. В результа! те должен получиться прямоугольник, сформированный ребрами (рис. 9.82).
3.
Примените к этим ребрам команду Extrude Edges (Выдавить ребра) так же, как для бокового шва.
В результате у вас получится такой же шов, как и боковой, с той лишь разницей, что окажутся сильно сглаженными внутренние углы прямоугольника. Чтобы избавить! ся от этого эффекта, добавьте угловым ребрам Chamfer Edges (Фаска ребер) (рис. 9.83).
Рис. 9.82. Ребра, формирующие площадку для функциональных кнопок
Рис. 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 (Объединен! ные с формой).
427
Моделирование микроволновой печи
3.
В свитке Pick Operand (Указать булев) нажмите кнопку Pick Shape (Указать форму), после чего щелкните на надписи Panasonic.
В результате надпись спроецируется на поверхность трубки (рис. 9.85).
Рис. 9.84. Расположение объекта Text (Текст) над корпусом трубки
Рис. 9.85. Надпись, спроецированная на поверхность телефонной трубки
Далее выполните команду ModifiersMesh EditingEdit Mesh (МодификаторыРе! дактирование поверхностиРедактирование поверхности). Затем перейдите на уровень подобъектов редактирования полигонов, щелкнув в свитке Selection (Вы! . деление) на кнопке Polygon (Полигон) Сейчас нужно выдавить надпись. По умол! чанию она должна быть выделена, поэто! му просто щелкните на кнопке Extrude (Выдавливание) и укажите величину вы! давливания равной –0,5 (рис. 9.86). На этом моделирование трубки телефона можно считать законченным. СОВЕТ ___________________________________ Если у вас возникли трудности с моделирова& нием, обратитесь к файлу phone.max, распо& ложенному в папке Examples\Глава 09\Phone прилагаемого к книге DVD.
Рис. 9.86. Надпись на трубке, сделанная при помощи команды Extrude (Выдавливание)
Моделирование микроволновой печи Рассматривая процесс создания освещения в разд. «Использование базовых источ! ников света в интерьере» гл. 7, мы использовали в сцене модели мебели и бытовой техники. Одним из таких объектов была микроволновая печь, о моделировании которой пойдет речь в данном разделе. Модель, которую мы будем строить, имеет средний уровень детализации и позволяет углубить знания по технике моделиро! вания полигональных объектов, описывавшейся в предыдущих уроках.
428
Глава 9. Практическое моделирование
На рис. 9.87 показан результат визуализации микроволновой печи, которую нам предстоит моделировать. Минимум, который нам необходимо знать, прежде чем приступать к моделирова! нию, — это габаритные размеры микроволновой печи. В нашем случае они состав! ляют 325 × 280 × 455 мм. Начнем с моделирования корпуса. Для этого нужно по! строить примитив Box (Параллелепипед). Параметрами ширины, длины и высоты параллелепипеда будут габариты микроволновой печи (рис. 9.88).
Рис. 9.87. Результат визуализации микроволновой печи
Рис. 9.88. Свиток Parameters (Параметры) настроек примитива Box (Параллелепипед)
Расположите этот параллелепипед в начале координат.
СОВЕТ ___________________________________________________________________________ Согласно хорошему тону в моделировании считается, что построение самостоятель& ных объектов должно вестись в нулевой отметке системы координат. Такое располо& жение модели бывает полезным для создания симметричных копий объекта или про& сто привязки к координатной сетке.
Построенный объект можно переместить в начало координат достаточно простым способом. Для этого нужно выделить объект и, активизировав инструмент Select and Move (Выделить и переместить) на главной панели инструментов, щелк! нуть правой кнопкой мыши на стрелках, расположенных справа от полей X, Y и Z в нижнем поле экрана (рис. 9.89). В результате этих действий все значения пара! метров станут равны 0.
Моделирование микроволновой печи
429
Рис. 9.89. Строка состояния с координатами положения объекта в пространстве
Дальнейшее редактирование параллелепипеда рассмотрим ниже, а пока продол! жим моделирование. Построим улучшенный примитив Chamfer Box (Параллелепи! пед с фаской), который будет выступать в качестве базовой формы для лицевой панели микроволновой печи. Чтобы его создать, воспользуемся командой главно! го меню CreateExtended PrimitivesChamfer Box (СозданиеУлучшенные при! митивыПараллелепипед с фаской). Его размеры должны быть меньше габари! тов корпуса, а его грани — немного закруглены. На рис. 9.90 представлен сам объект и его размеры.
Рис. 9.90. Объект ChamferBox (Параллелепипед с фаской) (слева) и его параметры (справа)
Обратите внимание на то, что параметр Width Segs (Сегментов по ширине) стал равен 3, а Fillet Segs (Сегментов закругления) — 10. Это объясняется необходи! мостью увеличения количества полигонов для дальнейшего редактирования объекта. Параметрические свойства обоих объектов нам больше не понадобятся, и их можно конвертировать в Editable Poly (Редактируемая полигональная поверхность). Это проще всего сделать, щелкнув на объекте правой кнопкой мыши и выбрав в кон! текстном меню строку Convert ToConvert to Editable Poly (ПреобразоватьПре! образовать в редактируемую полигональную поверхность). Для дальнейшей работы нам понадобится только объект с именем ChamferBox01, который мы продолжим редактировать на уровне подобъектов. Следовательно,
430
Глава 9. Практическое моделирование
корпус микроволновой печи, построенный ранее (то есть объект Box01), необходи! мо спрятать. Для этого достаточно выделить его, щелкнуть на нем правой кнопкой мыши и выбрать пункт контекстного меню Hide Selection (Спрятать выделенное). Продолжим моделирование. Выделите ChamferBox01 и перейдите на уровень редак! тирования полигонов. В окне проекции Left (Слева) выделите закругление, распо! ложенное со стороны корпуса (рис. 9.91), и удалите его. Таким образом, мы уменьшим общее количество полигонов в сцене и немного упрос! тим работу с объектом. Закруглим верхнюю и нижнюю части лицевой панели для придания ей нужной формы. Для изменения формы объекта перейдите на уровень редактирования вер! шин и выделите в окне проекции Left (Слева) два внутренних горизонтальных ряда вершин (рис. 9.92).
Рис. 9.91. Полигоны, выделенные для удаления
Рис. 9.92. Внутренние вершины, выделенные для редактирования
Раскройте свиток Soft Selection (Плавное выделение) и установите флажок Use Soft Selection (Использовать плавное выделение). Параметрам Falloff (Спад) и Pinch (Сужение) задайте значения, равные 13 и 1 соответственно (рис. 9.93).
ПРИМЕЧАНИЕ ___________________________________________________________________ Если вы использовали иные размеры микроволновой печи, то вам придется задать другие значения параметров плавного выделения. Обратите внимание на то, чтобы самые крайние вершины остались синего цвета — это означает, что они не будут за& действованы в трансформациях.
Моделирование микроволновой печи
431
Щелкните на кнопке Select and Uniform Scale (Выделить и равномерно масштаби! ровать) главной панели инструментов и маштабируйте выделенные вершины по оси Y (по вертикали) до 93 % (увидеть процент масштабирования можно в поле, расположенном рядом с параметром Y в строке состояния) (рис. 9.94).
Рис. 9.93. Настройки свитка Soft Selection (Плавное выделение) и отображение выделенных вершин в окне проекции
Рис. 9.94. Скругление, полученное при помощи масштабирования вершин
Теперь необходимо разделить лицевую панель на две части: дверцу и панель управления. Именно для этого при построении объекта Chamfer Box (Параллелепи! пед с фаской) мы задали два разбиения по ширине. Воспользуемся ими.
432
Глава 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 (Редактирование геометрии).
Моделирование микроволновой печи
433
Рис. 9.96. Полигоны, выдавленные при помощи команды Extrude (Выдавливание)
Рис. 9.97. Выровненные в плоскости полигоны
Дальнейшее редактирование объекта будет относиться к его левой части, то есть к дверце, поэтому можно спрятать все лишние элементы. Для этого на уровне ре! дактирования полигонов выделите часть объекта, относящуюся к панели управле! ния, и только что построенный шов, а затем щелкните на кнопке Hide Selected (Спрятать выделенное) в свитке Edit Geometry (Редактирование геометрии). Продолжим моделирование. Дверца имеет прямоугольное окошко с закругленны! ми углами — его нам сейчас и предстоит строить. Однако сначала необходимо
434
Глава 9. Практическое моделирование
создать шаблон, по которому будет выполняться построение. Это достаточно про! сто выполнить: в окне проекции Front (Спереди) постройте прямоугольник при помощи команды CreateShapesRectangle (СозданиеФормыПрямоуголь! ник) и в свитке Parameters (Параметры) задайте значения параметров, показанные на рис. 9.98.
Рис. 9.98. Расположение прямоугольника относительно дверки микроволновой печи (слева) и его параметры (справа)
Сейчас, имея шаблон формы окна дверцы, можно сделать соответствующие раз! резы на фронтальной плоскости панели. Для этого перейдите на уровень редак! тирования полигонов и выделите большой внутренний полигон (позади прямо! угольника), а затем щелкните на кнопке Slice Plane (Секущая плоскость) в свитке Edit Geometry (Редактирование геометрии). В результате кнопка выделится цветом, а в окнах проекций появится секущая плоскость. При помощи инструментов по! ворота и перемещения расположите секущую плоскость в вертикальной плоско! сти напротив правой стороны прямоугольника (рис. 9.99), после чего щелкните на кнопке Slice (Сечение). Переместите секущую плоскость к левой стороне прямоугольника и выполните аналогичный разрез. Поверните секущую плоскость в горизонтальном направ! лении и проделайте эти же операции над верхней и нижней сторонами прямо! угольника. В результате центральный полигон будет иметь четыре новых разреза (рис. 9.100). Для скругления углов необходимо перейти на уровень редактирования вершин и выделить четыре угловые вершины, образованные новыми разрезами. После этого в свитке Edit Vertices (Редактирование вершин) следует щелкнуть на кнопке,
Моделирование микроволновой печи
435
Рис. 9.99. Положение секущей плоскости относительно прямоугольника
Рис. 9.100. Разрезы, выполненные в средней части дверцы
расположенной рядом с Chamfer (Фаска). Параметру Chamfer Amount (Величина фаски) открывшегося окна Chamfer Vertices (Фаска вершин) задайте такое значе! ние, чтобы линия, образованная новыми вершинами, касалась закругления сплай! нового прямоугольника (рис. 9.101).
436
Глава 9. Практическое моделирование
Рис. 9.101. Новые вершины, образованные при помощи инструмента Chamfer (Фаска)
Щелкните на кнопке Apply (Применить) и задайте такое новое значение парамет! ру Chamfer Amount (Величина фаски), чтобы новые образованные отрезки вновь касались кривой шаблона (рис. 9.102).
Рис. 9.102. Новые точки, образующие угол
При желании на данном этапе моделирования можно не изменять количество вер! шин. Однако если вы хотите получить более сглаженное закругление угла, то не! обходимо увеличить количество разбиений.
Моделирование микроволновой печи
437
Построив закругления, можно сохранить полученное расположение вершин. Одна! ко я предпочитаю иметь более упорядоченную и оптимизированную геометрию, поэтому, используя команду Target Weld (Объединить целевую) из свитка Edit Vertices (Редактирование вершин), я соединил все свободные вершины в угловой точке (рис. 9.103).
Рис. 9.103. Угол после редактирования вершин
ВНИМАНИЕ ______________________________________________________________________ Хочу напомнить, что все это время мы работали с точками одновременно в четырех углах лицевой панели двери.
Для продолжения формирования окна в дверце микроволновой печи необходимо выдавить построенный полигон. Для этого перейдите на уровень редактирования полигонов и выделите большой центральный полигон с закругленными углами, после чего примените к нему команду Extrude (Выдавливание) из свитка Edit Polygons (Редактирование полигонов) с величиной выдавливания 10–20 мм (рис. 9.104). После выдавливания выделенный полигон можно удалить, создав таким образом сквозное отверстие, которое впоследствии закроем плоскостью с текстурой решет! ки и стекла. Создавая модели окружающих нас предметов, мы стараемся сделать их макси! мально похожими на оригиналы, но часто забываем о мелочах, которые усилива! ют такое сходство при визуализации. В жизни почти нет предметов с абсолютно ровными и острыми углами. То же самое касается окна в дверце микроволновой печи. Если не оставлять края ровными, а сделать фаску, то при визуализации та! кая форма значительно выиграет. В этом месте получатся блики, которые подчерк! нут геометрию.
438
Глава 9. Практическое моделирование
Рис. 9.104. Формирование углубления для окна
Для получения фаски необходимо перейти на уровень редактирования ребер и вы! делить все ребра, образующие внешний край отверстия.
СОВЕТ ___________________________________________________________________________ Чтобы быстро выделить все ребра по кругу, можно выделить одно ребро, а затем в свит& ке Selection (Выделение) щелкнуть на кнопке Loop (Петля). В результате выделятся сразу все ребра, расположенные по периметру углубления.
В свитке Edit Edges (Редактирование ребер) щелкните на кнопке рядом с Chamfer (Фаска) и задайте параметру Chamfer Amount (Величина фаски) появившегося окна значение, равное 1,5. Щелкните на кнопке Apply (Применить), а затем повто! рите создание фаски, выбрав значение, равное 0,5. Таким образом, вместо одного ребра, формирующего угол, вы получите четыре (рис. 9.105). Сформировав фаску, можно считать работу над дверцей законченной. Теперь следует перейти к моделированию панели управления, расположенной в правой части фасада микроволновой печи. Для этого необходимо открыть спрятанную ранее часть объекта и описанным выше способом спрятать отредактированную дверцу.
ПРИМЕЧАНИЕ ___________________________________________________________________ Напомню, что спрятать выделенные объекты можно при помощи кнопок Hide Selected (Спрятать выделенное) из свитка Edit Geometry (Редактирование геометрии), а ото& бразить все спрятанные объекты — используя кнопку Unhide All (Отобразить все).
Моделирование микроволновой печи
439
Рис. 9.105. Фаска, сформированная при помощи инструмента Chamfer (Фаска)
На панели управления микроволновой печи находятся ручки управления тайме! ром и мощностью, а также кнопка для открывания двери. Смоделируем их. Как и в случае с окном дверцы, предварительно построим шаблоны из стандарт! ных форм, по которым будем проводить моделирование. Для этого нам понадобят! ся два сплайна Circle (Окружность) радиусом 27 мм и один сплайн Rectangle (Пря! моугольник) c закругленными углами (рис. 9.106).
Рис. 9.106. Расположение сплайнов на панели управления (слева) и параметры прямоугольника (справа)
440
Глава 9. Практическое моделирование
Моделирование углублений для ручек управления и кнопки открывания дверцы начнем с построения разрезов секущей плоскостью. ПРИМЕЧАНИЕ ___________________________________________________________________ Мы не собираемся анимировать создаваемый объект, поэтому можно упростить мо& делирование и не строить отдельные объекты (например, кнопку открывания двер& цы), а лишь имитировать их.
Прежде чем выполнять разрезы секущей плоскостью, перейдите на уровень редак! тирования полигонов и выделите центральный полигон, а в свитке Edit Geometry (Редактирование геометрии) нажмите кнопку Slice Plane (Секущая плоскость). В окне проекции Front (Спереди) разместите секущую плоскость так, чтобы она совпадала с одной из сторон прямоугольника, затем щелкните на кнопке Slice (Се! чение) для создания разреза. Повторите аналогичные действия для оставшихся сторон прямоугольника (рис. 9.107). После этого сделайте еще три горизонтальных разреза по обе стороны от окруж! ностей и между ними (рис. 9.108).
Рис. 9.107. Центральный полигон, разрезанный для построения кнопки открывания двери
Рис. 9.108. Расположение горизонтальных разрезов
ВНИМАНИЕ ______________________________________________________________________ Первым делается разрез между окружностями для того, чтобы определить расстоя& ние от разреза до края окружности. Именно на такое расстояние необходимо смес& титься от внешнего края окружности при втором и третьем разрезах.
Моделирование микроволновой печи
441
Закругления вокруг кнопки открывания двери строятся аналогично тому, что мы уже делали на дверце, поэтому лишь напомню последовательность выполнения операций. 1.
Перейдите на уровень редактирование вершин.
2.
Выделите четыре угловые вершины и дважды (можно и больше, если хотите получить более сглаженное закругление) выполните команду Chamfer (Фаска).
3.
При желании отредактируйте положение образованных вершин так, чтобы они сходились в одной или двух точках угла (рис. 9.109).
Рис. 9.109. Расположение граней, формирующих кнопку открывания двери
Кнопка, которую мы создаем, имеет небольшое декоративное углубление в сере! дине. Для его моделирования нам нужно построить ребра во внутренней части кнопки. Горизонтальные ребра выполним при помощи команды Connect (Соеди! ненные) из свитка Edit Vertices (Редактирование вершин). Для этого необходимо выделить две горизонтальные точки (рис. 9.110) и щелкнуть на кнопке Connect (Соединенные). Проделайте такую же операцию и с двумя другими горизонталь! ными точками во внутренней части кнопки. В вертикальной плоскости нам не удастся применить команду Connect (Соединен! ные), потому что между точками проходят ребра. По этой причине воспользуемся инструментом Cut (Вычитание) из свитка Edit Geometry (Редактирование геомет! рии) и дважды разрежем внутреннее пространство по вертикали (рис. 9.111). Для формирования углубления понадобится еще некоторое количество ребер. Сделаем это в три приема. 1.
Выделите внутренний полигон, образованный разрезами, и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке рядом с Inset (Смещение
442
Глава 9. Практическое моделирование
Рис. 9.110. Внутренние вершины, соединенные при помощи команды Connect (Соединенные)
Рис. 9.111. Разрезы, выполненные в вертикальной плоскости
внутрь). В появившемся окне задайте параметру Inset Amount (Величина сме! щения) значение 3. 2.
Не снимая выделения с построенного полигона, щелкните на кнопке, распо! ложенной рядом с Tessellate (Разбиение) в свитке Edit Geometry (Редактирова!
Моделирование микроволновой печи
443
ние геометрии). В открывшемся окне установите переключатель в положение 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).
444
Глава 9. Практическое моделирование
Рис. 9.113. Применение команды Chamfer (Фаска) к выделенным ребрам
Рис. 9.114. Полигоны, выдавленные в области шва
СОВЕТ ___________________________________________________________________________ Время от времени выполняйте тестовую визуализацию моделируемого объекта — это поможет оперативно выявить возможные ошибки.
Моделирование микроволновой печи
445
Рис. 9.115. Визуализированная модель передней панели микроволновой печи на данном этапе моделирования
Займемся отверстиями, в которых будут находиться ручки управления. Несмотря на то что создание окружностей может показаться сложным, сделать их достаточ! но легко. Для этого в очередной раз обратимся к инструменту Chamfer (Фаска), но прежде нам необходимо провести небольшую подготовительную работу — раз! делить полигоны внутри будущих отверстий. Для создания дополнительных ребер внутри полигонов выполните следующие действия. 1.
Перейдите на уровень редактирования полигонов и выделите два полигона, расположенных позади сплайнов.
2.
В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке, на! ходящейся рядом с Tessellate (Разбиение).
3.
В открывшемся окне Tessellate Selection (Разбиение выделения) установите переключатель в положение Face (Грани) и щелкните на кнопке OK.
В результате этих операций каждый полигон будет разделен на четыре части (рис. 9.116). Перейдите на уровень редактирования вершин и выделите две вершины, находя! щиеся в середине окружностей. После этого примените к ним инструмент Chamfer (Фаска) с такой величиной параметра Chamfer Amount (Величина фаски), чтобы образовавшиеся ребра по меньшей стороне (в нашем случае боковые) касались сплайнов окружности (рис. 9.117).
446
Глава 9. Практическое моделирование
Рис. 9.116. Разбиение полигонов командой Tessellate (Разбиение)
Рис. 9.117. Положение вершин после применения инструмента Chamfer (Фаска)
Для продолжения деления ребер при помощи инструмента Chamfer (Фаска) необ! ходимо привести положение сторон внутренних полигонов к такому состоянию, при котором все четыре ребра внутренних полигонов будут соприкасаться со сто! ронами сплайна окружности. Боковые стороны объекта удовлетворяют такому требованию, поэтому остается скорректировать положение вершин по вертикали. Для этого выделите четыре вершины, относящиеся к одной из окружностей, и при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштаби!
Моделирование микроволновой печи
447
ровать) масштабируйте их по вертикали. После этого выполните те же опера! ции и для второй окружности (рис. 9.118).
Рис. 9.118. Положение скорректированных вершин
Перейдите снова на уровень редактирования вершин и, выделив все восемь вер! шин, которые образовались после применения инструмента Chamfer (Фаска), по! вторите создание фаски от трех до четырех раз (в зависимости от того, какая дета! лизация вам необходима) (рис. 9.119).
Рис. 9.119. Окружность, образованная при помощи инструмента Chamfer (Фаска)
448
Глава 9. Практическое моделирование
СОВЕТ ___________________________________________________________________________ Чтобы строящаяся окружность была правильной формы, необходимо при делении вершин с помощью инструмента Chamfer (Фаска) придерживаться двух правил: реб& ра, образованные делением вершин, должны касаться шаблона окружности, а верши& ны — по возможности находиться на одинаковом расстоянии друг от друга.
На рис. 9.120 показан фрагмент панели управления после объединения вершин при помощи команды Target Weld (Объединить целевую) из свитка Edit Vertices (Ре! дактирование вершин).
Рис. 9.120. Положение вершин после оптимизации
ПРИМЕЧАНИЕ ___________________________________________________________________ Напоминаю, что это необязательные действия, но я предпочитаю по возможности оптимизировать геометрию и упорядочивать расположение вершин.
В дальнейшем нам понадобится cкруглить границы окружности, поэтому позабо! тимся о выделении необходимых ребер заранее следующим образом. 1.
Перейдите на уровень редактирования полигонов и в окне проекции Front (Спереди) выделите два полигона в центре окружностей.
2.
Щелкните на выделении правой кнопкой мыши и в контекстном меню выбе! рите строку Convert to Edge (Преобразовать в ребра). В результате этих опера! ций выделятся ребра по границам выделенных ранее полигонов.
3.
Сохраните выделение, чтобы можно было работать с ним в будущем, и объе! дините выделенные ребра в именованную группу. Для этого укажите любое
Моделирование микроволновой печи
449
имя (лучше значимое, то есть такое, которое в будущем позволит быстро вспомнить, что вы выделяли) в поле 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).
450
Глава 9. Практическое моделирование
Рис. 9.123. Визуализация выполненных углублений для ручек управления
Рис. 9.124. Положение цилиндра и его параметры
Дальнейшая работа предполагает редактирование объекта на уровне подобъектов, поэтому необходимо конвертировать цилиндр в Editable Poly (Редактируемая по! лигональная поверхность). Кроме того способа конвертации, который мы приме! няли ранее (использование контекстного меню объекта), эту же операцию можно выполнить при помощи стека модификаторов. Для этого щелкните правой кноп!
Моделирование микроволновой печи
451
кой мыши на типе объекта в стеке модификаторов и в появившемся списке выбе! рите 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 (Сверху), выде! ляя попарно вершины и двигаясь от края к центру.
452
Глава 9. Практическое моделирование
Рис. 9.126. Горизонтальные разрезы объекта
Рис. 9.127. Полигоны, выдавленные в средней части ручки
СОВЕТ ___________________________________________________________________________ Если у вас недостаточно опыта, вы можете воспользоваться шаблоном, по которому можно выравнивать вершины. В данном случае необходимо построить шаблон окруж& ности в окне проекции Top (Сверху).
Моделирование микроволновой печи
453
Рис. 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). Копируйте созданную ручку, используя команду главного меню EditClone (Прав! каКлонировать), и разместите ее во втором отверстии панели управления. Та! ким образом, мы закончили моделирование лицевой панели микроволновой печи.
454
Глава 9. Практическое моделирование
Рис. 9.129. Форма ручки управления после редактирования вершин
Рис. 9.130. Готовая ручка панели управления
Вернемся к самому началу. Еще нужно создать модель корпуса. Параллелепипед для него уже построен. Командой Unhide All (Отобразить все) контекстного меню
Моделирование микроволновой печи
455
откройте все ранее спрятанные объекты. Выделите параллелепипед, построенный для корпуса, и преобразуйте его в Editable Poly (Редактируемая полигональная поверхность). Перейдите на уровень редактирования ребер и в окне проекции Top (Сверху) выделите два ребра, расположенных по бокам объекта в верхней его час! ти. Дважды примените к выделенным ребрам фаску со значением параметра Chamfer Amount (Величина фаски), равным 8 и 2,5 (рис. 9.131).
Рис. 9.131. Фаска в верхней части корпуса
Если бы дверца была непрозрачной, то моделирование корпуса на этом можно было бы считать законченным, но в данном случае необходимо выдавить фрон! тальный полигон, чтобы в корпусе образовалось внутреннее пространство. Для этого перейдите на уровень редактирования полигонов и в окне проекции Front (Спе! реди) выделите большой полигон лицевой части корпуса, после чего выполните команду Inset (Смещение внутрь) с величиной смещения 3,5 мм (рис. 9.132). Используя инструмент Extrude (Выдавливание) из свитка Edit Polygons (Редакти! рование полигонов) с величиной выдавливания, равной –320 мм, сформируйте внутреннее пространство корпуса микроволновой печи. Чтобы закончить моделирование, постройте плоскость, закрывающую окно двери. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПрос! тые примитивыПлоскость). На рис. 9.133 представлена окончательная модель микроволновой печи. ПРИМЕЧАНИЕ ___________________________________________________________________ Для анализа готовой модели микроволновой печи вы можете загрузить файл сцены из папки Examples\Глава 09\Microwave прилагаемого к книге DVD. Файл называется microwave.max.
456
Глава 9. Практическое моделирование
Рис. 9.132. Создание смещения
Рис. 9.133. Результат визуализации готовой модели микроволновой печи
В следующей главе мы рассмотрим принципы текстурирования микроволновой печи с использованием процедурных карт и идентификаторов материала.
Комплексный подход к моделированию: создание крана для ванной Я уже неоднократно говорил, что любое моделирование должно начинаться с ана! лиза будущей модели. Самым простым (и, наверное, самым правильным) спосо!
Комплексный подход к моделированию: создание крана для ванной
457
бом анализа является попытка мысленно разделить сложную модель на части, для каждой из которых можно применить свой способ моделирования. Именно такой подход к моделированию я называю комплексным. Рассмотрим простой пример — нам необходимо создать модель магнитофона. Вы! полнив предварительный анализ, можно предположить, что большинство частей являются стандартными (Standard) или улучшенными (Extended) примитивами. Некоторые детали магнитофона могут потребовать более сложного подхода к мо! делированию, например создания составных объектов (Compound Objects). И лишь в редких случаях, допустим, когда нужно иметь полный контроль над геометрией, моделирование идет за счет наращивания полигонов или уточнения формы на уровне подобъектов по пути «от простого к сложному». Если обобщить вышесказанное, то можно сделать вывод, что комплексный подход к моделированию — это такой подход, при котором сложная модель мысленно раз! бивается на более простые геометрические формы, для моделирования которых применяются различные средства (использование примитивов, полигональное моделирование, NURBS!моделирование, лофт!моделирование и т. д.). В данном разделе рассмотрим комплексный подход к моделированию на примере крана для ванной (рис. 9.134).
Рис. 9.134. Визуализация модели крана для ванной
Первое, что я сделал, прежде чем начать моделирование, — пошел в ванную ком! нату и произвел необходимые замеры. СОВЕТ ___________________________________________________________________________ Если у вас есть возможность получить точные размеры объекта, который вы собирае& тесь моделировать, никогда не пренебрегайте такой возможностью — это поможет не только получить более реалистичную модель, но и сократить время моделирования.
458
Глава 9. Практическое моделирование
Замеры получены, с чего начинать? Начинать можно с любой детали (если у вас есть размеры, то вам нет необходимости привязываться к базовой геометрии). Я предпочитаю начинать моделирование с основных форм, постепенно «наращи! вая» детали. Воспользуемся именно этим способом. Начнем с корпуса крана. Он имеет довольно сложную форму. Казалось бы, здесь не обойтись без NURBS! или Surface!моделирования либо без использования составно! го объекта. Однако, как показала практика, самым простым способом моделирования в данном случае является полигональное с последующим разделением полигонов.
ПРИМЕЧАНИЕ ___________________________________________________________________ В процессе написания данного раздела я пробовал создавать корпус при помощи полигонального, NURBS& и Surface&моделирования. В результате этих экспериментов сделал вывод: если вам не нужны точные размеры и идеальная форма, то быстрее и проще всего работать с полигональной моделью.
Построим объект Box (Параллелепипед) с параметрами, представленными на рис. 9.135.
Рис. 9.135. Параллелепипед (слева) и его параметры (справа)
Обратите внимание на то, что количество сегментов по длине параллелепипеда установлено равным 7, что обусловлено количеством точек, в которых объект ме! няет свою форму. Построение параллелепипеда и создание нужного количества сегментов — это все, что нам нужно от стандартного примитива. Далее необходимо конвертировать
Комплексный подход к моделированию: создание крана для ванной
459
объект в Editable Poly (Редактируемая полигональная поверхность), для чего щелк! ните на нем правой кнопкой мыши и в появившемся контекстном меню выпол! ните команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). Перейдите на уровень редактирования подобъектов Polygon (Полигон) , выде! лите четыре полигона — крайние фронтальные и соответствующие им полигоны с противоположной стороны объекта (рис. 9.136).
Рис. 9.136. Выделенные полигоны
После выделения полигонов перейдите на вкладку Modify (Изменить) командной панели и в свитке Edit Polygons (Редактирование полигонов) щелкните на кнопке, расположенной рядом с кнопкой Inset (Смещение внутрь). В результате появится окно Inset Polygons (Сместить полигоны внутрь), в котором задайте параметру Inset Amount (Величина смещения) значение, равное 0,5 (рис. 9.137). Подтвердите вне! сенные изменения, щелкнув на кнопке OK. Сейчас можно включить NURMS!сглажива! ние и посмотреть результат выполненного редактирования. Напомню, что сделать это можно, установив в свитке Subdivision Surface (Поверхности с разбиением) флажок Use NURMS Subdivision (Использовать NURMS! разбиения). В области Display (Отображение) задайте параметру Iteration (Количество ите! раций) значение, равное 2 (рис. 9.138).
Рис. 9.137. Окно Inset Polygons (Сместить полигоны внутрь)
460
Глава 9. Практическое моделирование
Рис. 9.138. Деталь крана после применения NURMS&разбиения
Далее необходимо добавить заготовке небольшую «бочковатость» по краям. Имен! но в этих местах будут крепиться вентили кранов горячей и холодной воды. Сде! лать это довольно просто: достаточно разрезать три торцевых полигона с двух сто! рон. Чтобы выполнить такие разрезы, сделайте следующее. 1.
На уровне редактирования полигонов выделите шесть полигонов (по три с каж! дой стороны), образующих торцы детали.
2.
В свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Slice Plane (Секущая плоскость) и в окнах проекций разместите секущую плоскость так, чтобы она, располагаясь вертикально, проходила через середину детали (рис. 9.139).
Рис. 9.139. Положение секущей плоскости
Комплексный подход к моделированию: создание крана для ванной
461
3.
Нажмите кнопку Slice (Сечение) для создания новых граней, после чего щелк! ните на кнопке Slice Plane (Секущая плоскость), чтобы выключить режим се! кущей плоскости.
4.
Перейдите на уровень редактирования вершин и сдвиньте наружу на расстоя! ние 3 мм по две построенные вершины торцевых полигонов.
На рис. 9.134 видно, что корпус крана имеет заметное утолщение в середине и не! которое сужение ближе к краям. Изменить форму таким образом довольно про! сто: достаточно передвинуть и масштабировать группы вершин. ВНИМАНИЕ ______________________________________________________________________ Проводить трансформации необходимо, именно выделяя группу и масштабируя ее относительно центра, а не перемещая отдельные вершины (в противном случае бу& дет сложно сохранить симметрию).
На рис. 9.140 показана модель после того, как вершины в средней части были мас! штабированы и перемещены.
Рис. 9.140. Модель после выполненных трансформаций
Обратите внимание, что в местах будущего крепления кранов геометрия получен! ного объекта не представляет собой правильную окружность. Это как раз тот слу! чай, о котором я говорил в самом начале раздела, имея в виду то, что метод поли! гонального моделирования имеет относительную точность форм. Немного улучшить форму позволит еще одно смещение ребер внутрь четырех по! лигонов, с которыми мы работали в начале раздела. Выделите их снова и еще раз примените к ним Inset (Смещение внутрь), но уже с большим значением парамет! ра Inset Amount (Величина смещения), например равным 5 (рис. 9.141).
462
Глава 9. Практическое моделирование
Рис. 9.141. Окружности, полученные после второго смещения граней
Переходим к моделированию средней части корпуса крана. В этом месте к корпусу крепятся ручка переключения душа, кран и стойка для размещения душа. Нам не! обходимо создать утолщения в месте крепления этих элементов. Два из них (верти! кальные) имеют один размер, а фронтальное (для крепления ручки) немного мень! ший. Логично сначала построить их одинаковыми, а потом один из них уменьшить. Для придания детали нужной формы выделите три средних полигона (два вер! тикальных и один фронтальный) и примените к ним Bevel (Скос) из свитка Edit Polygons (Редактирование полигонов), как показано на рис. 9.142.
Рис. 9.142. Начало формирования средней части
Комплексный подход к моделированию: создание крана для ванной
463
Сразу же, не снимая выделения с выдавленных полигонов, еще раз примените Bevel (Скос) с небольшим значением параметра Height (Высота), завершив таким образом построение средней части корпуса крана (рис. 9.143).
Рис. 9.143. Создание еще одного скоса для выступающих частей корпуса крана
Осталось масштабировать часть корпуса крана, к которой будет крепиться ручка переключения на душ/кран. Воспользуйтесь для этого инструментом Select and Uniform Scale (Выделить и равномерно масштабировать). На этом построение корпуса крана можно считать законченным (рис. 9.144).
Рис. 9.144. Окончательный вид корпуса крана
464
Глава 9. Практическое моделирование
Перейдем к моделированию кранов. Сначала создадим крепление. Внешне оно на! поминает гайку, у которой вытянута одна сторона. Думаю, что в данном случае са! мым простым способом моделирования будет использование Surface!поверхности. Начнем с построения сплайнов. Для формы гайки лучше всего подойдет сплайн формы NGon (Многоугольник). 1.
Выполните команду главного меню CreateShapesNGon (СозданиеФор! мыМногоугольник) и постройте в окне проекции Front (Спереди) много! угольник с шестью сторонами и радиусом 16 мм.
2.
Создайте еще один шестиугольник радиусом 13 мм, в настройках которого установите флажок Circular (Окружность).
3.
Выделите один из построенных многоугольников и преобразуйте его в Editable Spline (Редактируемый сплайн), а затем присоедините к нему второй много! угольник при помощи команды Attach (Присоединить).
4.
Перейдите на уровень редактирования Segment (Сегмент), выделите все сег! менты обоих сплайнов и разбейте их. Для этого задайте параметру, располо! женному возле кнопки Divide (Разделить) в свитке Geometry (Геометрия), зна! чение 1. Затем щелкните на кнопке Divide (Разделить) (рис. 9.145).
Рис. 9.145. Многоугольники с разделенными сегментами
Сплайны необходимо разбить для того, чтобы иметь возможность имитировать на гайке скос. ВНИМАНИЕ ______________________________________________________________________ Первые вершины обоих сплайнов должны находиться на одной стороне (это важно для дальнейших построений, иначе произойдет скручивание поверхности объекта).
Комплексный подход к моделированию: создание крана для ванной
465
Скопируйте созданные сплайны, для чего перейдите на уровень подобъектов Spline (Сплайн) и в окне проекции Top (Cверху), удерживая нажатой клавишу Shift, переместите оба сплайна по координате Y на 10 мм. Кроме того, нам понадобится еще одна окружность меньшего диаметра, для построения копии которой выдели! те сплайн окружности и переместите его еще на 20 мм относительно предыдущих. Не снимая выделение, уменьшите его при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать). Теперь необходимо изменить форму двух шестигранников для соответствия их строящемуся объекту. Для этого выделите вершины, находящиеся в серединах сег! ментов (те, которые были построены путем разделения сегментов), и немного сме! стите их в противоположные стороны (рис. 9.146).
Рис. 9.146. Положение и форма сплайнов, подготовленных для создания модели гайки
После редактирования положения вершин шестигранников и размера окружнос! тей можно переходить к построению поперечных сечений. В ранних версиях 3ds Max Cross Section (Поперечное сечение) существовала лишь в виде отдельного модифи! катора, но в последних версиях программы она стала частью редактора сплайнов. Воспользуемся ею для построения поперечных сечений и поверхности. 1.
Выделите объект, состоящий из сплайнов, и перейдите к свитку Geometry (Геомет! рия) настроек объекта на командной панели. В области New Vertex Type (Тип но! вых вершин) установите переключатель в положение Smooth (Сглаживание).
466
Глава 9. Практическое моделирование
ВНИМАНИЕ ______________________________________________________________________ Все построенные сплайны должны принадлежать одному объекту.
2.
В свитке Geometry (Геометрия) нажмите кнопку Cross Section (Поперечное се! чение), в результате чего она выделится цветом.
3.
В окне проекции Left (Слева) щелкните на сплайне меньшего радиуса, затем на втором сплайне и на следующем за ним шестиграннике (рис. 9.147). Щелк! ните правой кнопкой мыши для завершения построения поперечных сечений.
Рис. 9.147. Поперечные сплайны для правой части гайки
4.
В области New Vertex Type (Тип новых вершин) установите переключатель в поло! жение Linear (Линейная) и продолжите построение поперечных сплайнов для оставшейся части объекта.
5.
Создайте поверхность, для чего примените к объекту модификатор Surface (По! верхность), выполнив команду главного меню ModifiersPatch/Spline Editing Surface (МодификаторыРедактирование патчей/сплайновПоверхность).
6.
При необходимости в свитке Parameters (Параметры) настроек модификатора установите флажок Flip Normals (Обратить нормали).
После этого получится почти готовая гайка. Ей лишь недостает четкости граней. Это легко исправить, установив для этой части модели отдельную группу сглажи! вания. Для этого примените к объекту модификатор Edit Mesh (Редактирование поверхности), перейдите на уровень редактирования полигонов и выберите поли! гоны, расположенные между двумя шестиугольниками. В области Smoothing Groups (Сглаживание) свитка Surface Properties (Свойства поверхности) щелкните на кноп! ке Clear All (Очистить все).
Комплексный подход к моделированию: создание крана для ванной
467
СОВЕТ ___________________________________________________________________________ При желании можно применить к объекту модификатор Shell (Раковина) для прида& ния толщины.
В результате этих действий гайка примет окончательный вид (рис. 9.148).
Рис. 9.148. Готовая модель гайки
Теперь построим четыре гайки: три одинаковые, стандартные гайки и одну cо ско! сом, находящуюся у основания крана. Их следует моделировать описанным выше способом (кроме того, вы можете не! много изменить копию созданной гайки). По этой причине не стану повторяться, а лишь покажу, как должны выглядеть сплайны и готовая поверхность новых гаек (рис. 9.149). Как видно из рис. 9.149, для этого типа гаек нужны пять сплайнов: четыре из них попарно зеркально отраженные и один (окружность меньшего диаметра) дубли! рован с масштабированием для придания утолщения на гайке (можно вместо это! го использовать модификатор Shell (Раковина)). Две такие гайки будут распола! гаться с противоположной стороны корпуса крана для крепления к стене, а одна — в верхней части для крепления стойки (рис. 9.150). Для нижней гайки характерно небольшое заужение геометрии к низу. Его можно получить, просто переместив последний сплайн на некоторое расстояние вниз и немного уменьшив его размер (рис. 9.151). Между нижней гайкой и корпусом должна располагаться втулка, роль которой в данном случае играет параметри! ческий объект Cylinder (Цилиндр).
468
Рис. 9.149. Форма сплайнов малой гайки
Рис. 9.150. Корпус крана с гайками
Глава 9. Практическое моделирование
Комплексный подход к моделированию: создание крана для ванной
469
Рис. 9.151. Модифицированная гайка нижней части крана
Прежде чем приступить к более сложному моделированию, построим два декора! тивных элемента, закрывающих места крепления крана к стене. В нашем случае это может быть либо объект, выполненный методом вращения (при помощи мо! дификатора Lathe (Вращение)), либо просто немного деформированная половина сферы. Я решил воспользоваться вторым способом, как более простым. Согласно моим измерениям диаметр окружности «чашки» составляет 70 мм, соответствен! но, необходимо построить половину сферы (в настройках объекта Sphere (Сфера) установить флажок Hemisphere (Полусфера)) радиусом 35 мм и масштабировать ее по оси вращения (ось Z) (рис. 9.152). Дальнейшее моделирование может показаться вам более сложным. Это объясня! ется тем, что моделировать придется при помощи NURBS. В 3ds Max это непрос! тая процедура, так как есть некоторые ограничения, которые необходимо учитывать при моделировании. Возможно, у вас появится закономерный вопрос: «А зачем тогда пользоваться этой технологией, если все можно сделать при помощи поли! гонального моделирования?» Ответ прост: потому, что при правильном использо! вании форм, которые описываются неоднородными рациональными В!сплайнами (NURBS), результат окажется лучше (более сглаженные формы), к тому же его быстрее можно достичь. Перейдем к моделированию кранов. По сути, это будут поверхности, созданные при помощи вращения кривых, с построения которых мы и начнем. В окне проекции Top (Сверху) постройте NURBS!кривую размером 20 × 17 мм (рис. 9.153). Для этого воспользуйтесь командой CreateNURBSCV Curve (Соз! даниеNURBSCV!кривая).
470
Глава 9. Практическое моделирование
Рис. 9.152. Корпус крана с гайками и декоративными элементами
Рис. 9.153. CV&кривая, построенная в окне проекции Top (Cверху)
Перейдите на вкладку Modify (Изменение). Чтобы создать поверхность, примени! те к построенной кривой инструмент Create Lathe Surface (Создать поверхность вра! щением), расположенный на плавающей панели NURBS. В результате должен по! лучиться объект, напоминающий по форме бочонок (рис. 9.154). Теперь нужно создать еще один объект таким же способом, то есть вращением кри! вой профиля. На сей раз это будет кривая каплевидной формы, построенная при помощи CV Curve (CV!кривая) (рис. 9.155).
Комплексный подход к моделированию: создание крана для ванной
471
Рис. 9.154. Основание ручки (слева) и кнопка Create Lathe Surface (Создать поверхность вращением) на панели NURBS (справа)
Рис. 9.155. Форма кривой части ручки
После создания кривой примените к ней инструмент Create Lathe Surface (Создать поверхность вращением), расположенный на плавающей панели NURBS. ПРИМЕЧАНИЕ ___________________________________________________________________ Неискушенному пользователю может показаться, что легче и привычнее сделать та& кой объект, используя стандартные способы построения сплайнов и применяя моди& фикатор Lathe (Вращение), в настройках которого переключатель Output (Результат) установлен в положение NURBS. Такой подход вполне годится для объектов, которые не будут редактироваться как NURBS&поверхность. В противном случае могут воз& никнуть проблемы, способные при дальнейшем редактировании поверхности вызвать значительные затруднения или сбой в работе программы.
472
Глава 9. Практическое моделирование
Продолжим моделирование. Теперь следует сделать три копии только что постро! енного объекта. Эти копии нужно будет расположить по периметру корпуса руч! ки при помощи инструмента Array (Массив), поэтому сначала необходимо устано! вить опорную точку (Pivot Point) в середину построенного ранее корпуса. Чтобы это сделать, нужно перейти на вкладку Hierarchy (Иерархия) командной панели и нажать кнопку Pivot (Опора). В свитке Adjust Pivot (Настройка опоры) следует щелкнуть на кнопке Affect Pivot Only (Только опора) и переместить в окне проек! ции Front (Спереди) опорную точку в середину корпуса ручки (рис. 9.156).
Рис. 9.156. Опорная точка, размещенная в середине корпуса ручки
Теперь можно создать массив из построенной детали. Для этого выполните команду главного меню ToolsArray (ИнструментыМассив), в результате чего откроется окно, в котором необходимо установить параметры, как показано на рис. 9.157. В результате у вас должны получиться три копии объекта, расположенные по пе! риметру корпуса. Остается только добавить фаску, чтобы поверхности объектов, составляющих ручку крана, выглядели более естественно, плавно перетекая одна в другую. Но прежде, чем это делать, необходимо повернуть среднюю часть (кор! пус) на 45° (рис. 9.158). Это делается для того, чтобы шов, образованный кривой вращения (белая линия, идущая от центра), не попадал в места пересечения объек! тов, в противном случае возникнут проблемы с созданием фаски. Сделайте копию средней части ручки и одной из пристыкованных деталей, чтобы впоследствии создать ручку переключения на душ/кран. Переходим к созданию фаски. Прежде всего необходимо объединить все детали, относящиеся к ручке, в один объект. Для этого нужно выделить корпус (или лю! бую другую деталь ручки) и, нажав в свитке General (Общие) кнопку Attach (При!
Комплексный подход к моделированию: создание крана для ванной
473
Рис. 9.157. Настройки, выполненные в окне Array (Массив)
Рис. 9.158. Взаимное расположение объектов, составляющих ручку
соединить), выбрать в окне проекции все необходимые детали, относящиеся к руч! ке. Только после этого можно воспользоваться инструментом Create Fillet Surface (Создать поверхность!фаску) плавающей палитры NURBS. Выделив инстру! мент создания фаски, щелкните на одном из внешних объектов ручки (в результа! те он изменит цвет), а затем на корпусе. В итоге получим фаску, параметры ко! торой необходимо уточнить в свитке Fillet Surface (Поверхность!фаска). Задайте значения величины фаски при помощи параметров Start Radius (Начало радиуса) и End Radius (Конец радиуса) (у меня они равны 3,5). В областях Trim First Surface (Обрезать первую поверхность) и Trim Second Surface (Обрезать вторую поверх! ность) установите флажки Trim Surface (Обрезать поверхность) (рис. 9.159).
474
Глава 9. Практическое моделирование
Рис. 9.159. Параметры фаски (справа) и сопряжение двух деталей, полученных с ее помощью (слева)
Возможно, при обрезании поверхности (Trim Surface) вам понадобится установить флажки Flip Trim (Обратить обрезание) или Flip Normals (Обратить нормали) — все будет зависеть от того, как вы построили поверхность и как ее рассчитывает про! грамма. Создание фаски необходимо повторить для всех деталей рукоятки крана. Чтобы закончить с этой деталью, добавим к фронтальной части улучшенный примитив OilTank (Цистерна) с небольшой фаской, выполненной при помощи выдавливания ребер. Для этого используем модификатор Edit Mesh (Редактирование поверхнос! ти) (рис. 9.160). Ручка переключения на душ/кран делается из созданной ранее копии двух объек! тов. Это всего лишь немного модифицированная форма рычага переключения. ПРИМЕЧАНИЕ ___________________________________________________________________ Напоминаю, что вы можете в любой момент перейти на уровень редактирования вер& шин и изменить форму кривой, использованной для тела вращения. Это можно сде& лать даже после создания фаски и обрезания поверхности.
Сейчас можно посмотреть на полученную модель крана в целом (рис. 9.161). Прежде чем начинать моделирование стойки, которая представляет собой, пожа! луй, самую сложную с точки зрения формы деталь крана, создадим трубку в его нижней части. Самый простой способ построения в данном случае — использова! ние лофтинга с небольшим редактированием формы профиля.
Комплексный подход к моделированию: создание крана для ванной
475
Рис. 9.160. Готовая модель рукоятки крана
Рис. 9.161. Результат визуализации части крана
В окне проекции Left (Слева) постройте сплайн Line (Линия) длиной 360 мм и заги! бами на концах по 80 мм (это будет сплайн пути), а в окне проекции Top (Cверху) — окружность диаметром 18 мм для формы поперечного сечения (рис. 9.162).
476
Глава 9. Практическое моделирование
Рис. 9.162. Форма сплайна пути
Чтобы получить лофт!объект, необходимо выделить сплайн пути и выполнить ко! манду главного меню CreateCompoundLoft (СозданиеСоставные объекты Лофтинговые). В результате на командной панели появятся настройки лофт!объек! та. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять форму) и в окне проекции Top (Сверху) щелкните на построенной ранее окружно! сти. В результате у вас должен получиться объект в виде изогнутой трубки. СОВЕТ ___________________________________________________________________________ При необходимости можно скорректировать форму лофт&объекта редактированием вершин сплайна пути или радиуса окружности.
Но это еще не все. Нам нужно создать утолщение на конце трубки (в том месте, где крепится сетка фильтра). Это проще всего сделать при помощи редактирова! ния деформации масштаба. Чтобы получить доступ к этим параметрам, щелкните на кнопке Scale (Масштаб) в свитке Deformations (Деформации) настроек лофт! объекта. В результате откроется окно Scale Deformation (Деформация масштаба). В нем необходимо добавить в самом конце шкалы (а соответственно, и на самом лофт!объекте) несколько точек и отредактировать их положение так, чтобы про! филь кривой повторял форму наконечника трубки (рис. 9.163). ПРИМЕЧАНИЕ ___________________________________________________________________ Более подробно о том, как работать с лофт&объектами, рассказано в разд. «Модели& рование лофт&объектов» данной главы.
Комплексный подход к моделированию: создание крана для ванной
477
Рис. 9.163. Окно Scale Deformation (Деформация масштаба)
После всех вышеописанных операций должен получиться объект, показанный на рис. 9.164.
Рис. 9.164. Результат визуализации созданной части крана
Моделирование держателя для душа может вызвать определенные затруднения, поэтому рекомендую очень внимательно отнестись к этой части раздела. Начнем с того, что уберем из сцены все объекты, кроме верхней гайки (она нам по! надобится для того, чтобы иметь возможность привязаться к размеру ее внутрен! него отверстия). В окне проекции Top (Сверху) постройте окружность с диамет! ром, соответствующим внутреннему диаметру гайки. После создания сплайна конвертируйте его в NURBS, для чего щелкните на нем правой кнопкой мыши
478
Глава 9. Практическое моделирование
и выполните команду Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS) контекстного меню. Используя плавающую палитру инструментов NURBS, примените к окружности инструмент Create Extrude Surface (Создать поверхность выдавливанием) на высоту (значение параметра Amount (Величина) настроек кривой на командной панели) 65 мм. После выдавливания скопируйте созданный объект и поверните его на 90°. Та! ким образом получим ответвление в стойке для присоединения гибкого шланга (рис. 9.165). Чтобы получить сглаженное соединение двух поверхностей, присоедините коман! дой Attach (Присоединить) одну поверхность к другой и создайте между ними фас! ку, как это было описано выше для ручек. В результате у вас должно получиться основание держателя (рис. 9.166).
Рис. 9.165. Начало моделирования стойки
Рис. 9.166. Держатель после создания фаски
Перейдем к построению верхней части держателя. Ее форма является относитель! но сложной с точки зрения моделирования стандартными средствами, но можно воспользоваться небольшой хитростью — создать этот объект методом лофтинга. В окне проекции Front (Спереди) постройте сплайн пути, а в окне Left (Cлева) — два сплайна поперечного сечения (рис. 9.167). Создайте лофт!объект, для чего выделите сплайн пути и выполните команду CreateCompoundLoft (СозданиеСоставные объектыЛофтинговые). В ре! зультате этих операций на командной панели появятся настройки лофт!объекта. В свитке Creation Method (Метод создания) нажмите кнопку Get Shape (Взять фор! му) и выберите в одном из окон проекций прямоугольник в качестве начальной формы поперечного сечения. После этого в свитке Path Parameters (Параметры пути) задайте параметру Path (Путь) значение, равное 5, затем, щелкнув на кнопке Get Shape (Взять форму), выберите прямоугольник еще раз. Продолжите формирование объекта, задав параметру Path (Путь) значение, равное 15, и выбрав модифициро! ванный прямоугольник (с изогнутыми сторонами). Повторите эту же операцию для пути со значением 85 %. И наконец, последнее значение пути равно 95 % и в ка! честве формы пути используется правильный прямоугольник (рис. 9.168).
Комплексный подход к моделированию: создание крана для ванной
а
479
б
Рис. 9.167. Форма сплайнов пути и профиля в окне проекции фронтального вида (а) и вида слева (б)
Рис. 9.168. Лофт&объект, построенный в верхней части держателя душа
ПРИМЕЧАНИЕ ___________________________________________________________________ Возможно, при построении лофт&объекта у вас окажутся перевернутыми сплайны поперечных сечений. Чтобы это исправить, можно выделить форму поперечного се& чения на уровне подобъектов Shape (Форма) лофт&объекта и поворачивать ее до пра& вильного положения в пространстве.
480
Глава 9. Практическое моделирование
Теперь необходимо изменить контуры объекта так, чтобы он стал больше похож на реальный держатель. Для этого воспользуемся деформацией масштабирования из свитка Deformations (Деформации). Щелкните на кнопке Scale (Масштаб), в ре! зультате чего откроется окно Scale Deformation (Деформация масштаба), в котором нажмите кнопку Display Y Axis (Показать ось Y) и отожмите Make Symmetrical (Сде! лать симметричным), чтобы деформация происходила только по оси Y. Добавьте кривой, расположенной в окне Scale Deformation (Деформация масштаба), по четыре точки, симметрично расположенные относительно центра, и одну в середине. По! сле этого скорректируйте их положение так, как показано на рис. 9.169.
Рис. 9.169. Окно Scale Deformation (Деформация масштаба)
В результате этих действий у вас должен получиться почти готовый элемент верх! ней части опоры (рис. 9.170).
Рис. 9.170. Держатель после применения деформации масштаба
Комплексный подход к моделированию: создание крана для ванной
481
Далее необходимо сделать углубления в верхней части держателя. Обычно я вы! полняю подобную работу при помощи редактирования полигональной поверхно! сти на уровне подобъектов. Но есть более простой, хотя и не самый лучший путь — булева операция вычитания. СОВЕТ ___________________________________________________________________________ Я настоятельно не рекомендую злоупотреблять булевыми операциями, так как гео& метрия, получаемая после таких вырезаний, становится почти непригодной для даль& нейшего редактирования. Кроме того, такая операция иногда приводит к аварийному завершению программы. В связи с этим перед применением булевых операций не& обходимо сохранить файл и проверить объекты на наличие ошибок (можно восполь& зоваться модификатором STL Check (STL&тест)). Применять булевы операции лучше всего на завершающей стадии моделирования объекта.
Постройте цилиндр с радиусом 12,5 мм и расположите его в верхней части держа! теля так, чтобы ось цилиндра совпадала с его верхней кромкой (рис. 9.171).
Рис. 9.171. Объекты, подготовленные для булевой операции вычитания
Выделите держатель и выполните команду CreateCompoundBoolean (Созда! ниеСоставные объектыБулев). В свитке Pick Boolean (Указать булев) щелкни! те на кнопке Pick Operand B (Указать операнд Б) и в одном из окон проекций выбе! рите построенный цилиндр в качестве второго операнда. В результате у вас должна получиться геометрия верхней части держателя, как показано на рис. 9.172. Займемся моделированием ручки душа. Здесь форма объектов сама подсказывает способы моделирования: наконечник с сеткой необходимо выполнять при помо! щи NURBS, среднюю часть как Surface!поверхность, а конечную — вращением сплайна.
482
Глава 9. Практическое моделирование
Рис. 9.172. Модель на данном этапе
СОВЕТ ___________________________________________________________________________ Большая часть построенных объектов не нужна для продолжения моделирования, поэтому имеет смысл спрятать их при помощи команды Hide (Спрятать), оставив лишь верхнюю часть стойки.
Перейдем к построению NURBS!кривых. Основная форма, завершающаяся сет! кой, напоминает колокольчик размером 50 × 55 мм. Ее мы сейчас и построим (рис. 9.173).
Рис. 9.173. Форма CV&кривой
Комплексный подход к моделированию: создание крана для ванной
483
Постройте NURBS!кривую и примените к ней инструмент Create Lathe Surface (Соз! дать поверхность вращением) плавающей палитры инструментов NURBS так же, как это описано выше для ручек кранов. В результате у вас должен получиться объект, подобный показанному на рис. 9.174.
Рис. 9.174. Поверхность, построенная вращением
Построение второй CV!кривой у вас не должно вызвать проблем, так как мы уже не раз выполняли такое построение, кроме того, данная кривая имеет простую форму (рис. 9.175).
Рис. 9.175. CV&кривая для формы вращения
484
Глава 9. Практическое моделирование
СОВЕТ ___________________________________________________________________________ При работе с CV Curve (CV&кривая) бывает сложно создавать прямые углы или неболь& шие закругления, потому что NURBS старается сгладить кривую, расположенную между точками. Чтобы этого избежать, можно располагать соседние точки ближе, а также применять к ним весовой коэффициент (параметр Weight (Вес) в свитке CV уровня подобъектов Curve CV (Управляющие вершины кривой)), что я в данном слу& чае и сделал для угловой точки.
Как и в предыдущих случаях, необходимо выполнить сглаженное объединение двух построенных объектов. Как вы уже знаете, чтобы построить фаску между дву! мя объектами, необходимо в первую очередь присоединить одну поверхность к дру! гой (воспрользовавшись иструментом Attach (Присоединить)), а затем применить инструмент Create Fillet Surface (Создать поверхность!фаску) плавающей палит! ры NURBS. В результате должна получиться законченная верхняя часть ручки душа (рис. 9.176). Для построения средней, пластмассовой, части ручки снова обратимся к Surface! поверхности. В данном случае это будет оптимальный и самый быстрый способ решения проблемы, связанной с нестандартной формой объекта. Начните с того, что в окне проекции Left (Слева) постройте окружность, исполь! зуя сплайн NGon (Многоугольник) радиусом 10 мм. При этом для получения окружности необходимо в свитке Parameters (Параметры) настроек многоугольни! ка установить флажок Circular (Окружность) (рис. 9.177). ВНИМАНИЕ ______________________________________________________________________ Сплайн Circle (Окружность) имеет четыре сегмента, а нам для построения попереч& ного сечения ручки душа необходимо шесть. В связи с этим окружность должна быть создана именно при помощи сплайна NGon (Многоугольник), который позволяет за& давать произвольное количество сегментов сплайна.
Скопируйте данную или постройте новую окружность, но с радиусом 14 мм. Даль! нейшая модификация окружностей не представляет сложности, но будьте внима! тельны при ее выполнении. 1.
Выделите большую окружность (если она еще не выделена).
2.
Щелкните на ней правой кнопкой мыши и преобразуйте ее в Editable Spline (Редактируемый сплайн).
3.
Перейдите на уровень редактирования вершин и выделите все вершины, от! носящиеся к сплайну (должно быть шесть).
4.
Примените к ним Fillet (Закругление), для чего в свитке Geometry (Геометрия) введите в поле рядом с кнопкой Fillet (Закругление) значение 1 (на рис. 9.178 это внешние парные вершины).
5.
Перейдите на уровень редактирования сегментов и выделите шесть больших сегментов сплайна, принадлежащих окружности.
Комплексный подход к моделированию: создание крана для ванной
485
Рис. 9.176. Построенная часть ручки душа
Рис. 9.177. Окружность, построенная при помощи сплайна NGon (Многоугольник)
6.
В поле рядом с кнопкой Divide (Разделить) свитка Geometry (Геометрия) уста! новите значение 1 и щелкните на кнопке Divide (Разделить). В результате боль! шие сегменты разделятся посередине на две части.
7.
Перейдите на уровень редактирования вершин и выделите те шесть вершин, которые образовались в результате выполнения предыдущей операции.
8.
Используя инструмент Select and Uniform Scale (Выделить и равномерно мас! штабировать), масштабируйте все выделенные вершины к центру так, чтобы они расположились на линии меньшего сплайна (см. рис. 9.178).
486
Глава 9. Практическое моделирование
Рис. 9.178. Внешняя окружность после редактирования вершин
Выполните описанные операции для меньшего сплайна, за исключением того, что для выполнения команды Divide (Разделить) необходимо выделять не большие сег! менты, а маленькие, а также того, что смещение вершин не требуется (рис. 9.179).
Рис. 9.179. Расположение вершин на меньшей окружности
Для построения формы ручки нам потребуется всего пять сплайнов, поэтому по! сле того как будет скорректирована их форма, необходимо копировать сплайны
Комплексный подход к моделированию: создание крана для ванной
487
меньшего диаметра для получения еще трех таких же окружностей. Расположите их в окне проекции Top (Сверху) так, чтобы большой сплайн с криволинейной формой находился в середине построенного ранее держателя, а по краям распола! гались по два меньших сплайна окружности. Причем размеры второго и четверто! го сплайнов необходимо немного увеличить. Это нужно для того, чтобы ручка слегка изгибалась по всей длине (рис. 9.180).
Рис. 9.180. Расположение сплайнов в окне проекции Top (Сверху)
Прежде чем перейти к созданию поверхности, необходимо построить поперечные сплайны, соединяющие только что построенные формы поперечного сечения. Ана! логичные действия мы производили уже не раз, поэтому я лишь вкратце напомню последовательность их выполнения и укажу особенности моделирования. 1.
Используя команду Attach (Присоединить), объедините все сплайны в один объект.
2.
В два этапа постройте поперечные сечения при помощи команды Cross Section (Поперечное сечение) из свитка Geometry (Геометрия): 1) установите переключатель области New Vertex Type (Тип новых вершин) в положение Smooth (Сглаживание) и создайте поперечные сечения для средней части между вторым, третьим и четвертым сплайнами; 2) измените тип строящихся вершин на Linear (Линейная) и закончите по! строение на краях.
ПРИМЕЧАНИЕ ___________________________________________________________________ Построение поперечных сечений в два этапа позволяет избежать искривления поверх& ности на краях и в то же время сглаживает кривые в середине (рис. 9.181).
После применения модификатора Surface (Поверхность) к построенным сплайнам должна получиться поверхность средней части ручки, как показано на рис. 9.182.
488
Глава 9. Практическое моделирование
Рис. 9.181. Форма сплайнов поперечного сечения
Рис. 9.182. Результат визуализации средней части ручки душа
Создадим небольшую деталь, расположенную в месте крепления гибкого шланга. Ее можно сделать при помощи формы вращения. Можно также воспользоваться примитивом Cylinder (Цилиндр), для которого следует немного подкорректировать положение вершин, предварительно применив к нему модификатор Edit Mesh (Ре! дактирование поверхности). Я решил воспользоваться вторым вариантом и по! строил цилиндр с тремя сегментами по высоте и диаметром немного большим, чем у ручки в месте их соединения. Затем, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), придал нужную форму (рис. 9.183). Мы построили модель почти всего крана, осталось создать шланг для душа. Начнем с моделирования наконечников, которые крепятся к корпусу стойки и руч! ке душа при помощи резьбы. В данном случае, как и в предыдущем, можно вос!
Комплексный подход к моделированию: создание крана для ванной
489
Рис. 9.183. Форма детали у основания ручки
пользоваться примитивом Cylinder (Цилиндр) с последующей модификацией на уровне подобъектов или построить объект методом вращения профиля (рис. 9.184).
Рис. 9.184. Форма наконечника шланга
СОВЕТ ___________________________________________________________________________ Вы вполне можете обойтись построением трех цилиндров различного диаметра без последующего их редактирования.
490
Глава 9. Практическое моделирование
Точно такой же наконечник шланга должен крепиться и к стойке держателя. Нам достаточно просто скопировать уже построенный и поместить в нужное место (рис. 9.185).
Рис. 9.185. Держатель и ручка вместе с наконечниками
Задача построения металлического шланга кажется сложной, однако решается весьма простым способом — созданием лофт!объекта на основе сплайна Helix (Спираль) и небольшого профиля (рис. 9.186). Высота спирали, ее радиусы и ко! личество оборотов должны быть такими, как показано на рис. 9.186. ПРИМЕЧАНИЕ ___________________________________________________________________ Не забывайте, что создание сплайнов форм пути и профиля проводится в двух раз& личных окнах проекций. В данном случае спираль строится в окне проекции Top (Сверху), а форма профиля — в окне проекции Front (Спереди).
На рис. 9.187 показаны основные параметры получившегося объекта и то, как он должен выглядеть. Построив объект при помощи лофтинга, мы получили шланг нужного профиля, однако совершенно прямой, следовательно, его нужно изогнуть. На самом деле это не такая сложная задача, как кажется. Для ее решения необходимо построить сплайн, который бы соответствовал нужной форме и являлся кривой, по которой впоследствии будет деформироваться шланг. Кривая должна начинаться и закан! чиваться в середине построенных ранее наконечников (рис. 9.188). Для дальнейшего построения формы сделайте следующее. 1.
Выделите построенный лофт!объект и примените к нему модификатор дефор! мации по пути, выполнив команду ModifiersAnimationPath Deform (WSM) (МодификаторыАнимацияДеформация по траектории).
Комплексный подход к моделированию: создание крана для ванной
491
Рис. 9.186. Форма сплайна (слева) и параметры спирали, подготовленные для построения лофт&объекта (справа)
Рис. 9.187. Внешний вид полученного лофт&объекта (слева) и его параметры (справа)
2.
В свитке Parameters (Параметры) настроек модификатора щелкните на кнопке Pick Path (Указать путь) и выберите в окне проекции сплайн, соответствующий форме, по которой будет деформироваться шланг.
3.
В этом же свитке щелкните на кнопке Move to Path (Передвинуть на путь), что! бы лофт!объект принял форму сплайна (рис. 9.189).
Это все, что требовалось сделать для построения модели крана для ванной комна! ты. Осталось только открыть все спрятанные ранее объекты и визуализировать модель целиком (рис. 9.190).
492
Глава 9. Практическое моделирование
Рис. 9.188. Форма кривой для деформации шланга
Рис. 9.189. Построенный объект (слева) и его стек модификаторов (справа)
После того как модель выполнена, можно заняться оптимизацией геометрии, соз! данием материалов и наложением текстур. В завершение раздела хотелось бы подвести итоги и дать несколько советов. Начнем с того, что целью раздела было показать преимущество комплексного подхода к мо! делированию объектов сложной формы, в чем, я надеюсь, вы убедились сами на данном примере. В процессе моделирования крана мы применяли полигональное, NURBS! и Surface!моделирование, использовали параметрические объекты и фор!
Комплексный подход к моделированию: создание крана для ванной
493
Рис. 9.190. Результат визуализации построенного крана
мы, работали с объектами, полученными методом вращения формы и выдавлива! ния, и, наконец, закончили назначением модификатора анимации формы по пути. Все это в целом помогло нам в работе над сложной моделью, выполнение которой при помощи какой!либо одной техники потребовало бы значительно больших усилий. В процессе моделирования крана не стояла задача оптимизации геометрии, поэто! му конечный объект получился со значительным количеством полигонов. Если вам нужно создать самостоятельный объект (без окружения), то количество поли! гонов не является критическим, но если он является частью какой!то сцены, то его необходимо оптимизировать. Чтобы сделать это, в первую очередь убедитесь в том, что вам не понадобится редактировать объект (еще лучше, если вы сделаете резерв! ную копию файла), затем сверните стек всех объектов до состояния Editable Mesh (Редактируемая сетка). Для NURBS!объектов можно предварительно настроить аппроксимацию поверхности и затем привести к редактируемой сетке. Кроме того, создание объектов с использованием методов разбиения сетки ведет к избыточному созданию полигонов по всей поверхности, даже там, где они не нужны для переда! чи формы (например, на ровных плоских участках). В таком случае для уменьшения количества полигонов можно использовать модификатор Optimize (Оптимизация).
ПРИМЕЧАНИЕ ___________________________________________________________________ Для анализа готовой модели крана вы можете загрузить файл сцены shower.max из папки Examples\Глава 09\Shower прилагаемого к книге DVD.
Глава 10
Текстурирование • Материал, имитирующий хром • Текстурирование натюрморта • Текстурирование микроволновой печи • Сложное текстурирование
Материал, имитирующий хром
495
Можно сделать замечательную модель, потратив много времени на создание дета! лей. Можно безукоризненно выставить свет и сделать многое другое, чтобы улуч! шить работу, но без хороших текстур вы не сможете добиться реалистичности. Создание материала — как правило, долгий и кропотливый процесс с множе! ством экспериментов. Иногда приходится потратить не один час на то, чтобы сде! лать приемлемую текстуру. Редактор материалов в 3ds Max настолько хорош, что позволяет получить практически любую текстуру — все зависит только от ваших знаний и воображения. Работа по созданию материалов не ограничивается возможностями программы 3ds Max, вам не обойтись без приложений растровой графики. Кроме того, су! ществуют программы, позволяющие рисовать непосредственно на трехмерных объектах. В этой главе вы познакомитесь с тем, как создавать реалистичные материалы и тек! стуры средствами программы 3ds Max.
Материал, имитирующий хром В этом разделе рассмотрим, как при помощи небольшого трюка можно создать впол! не приемлемый материал хрома. Хромированные детали очень эффектно смотрят! ся, поэтому их часто применяют в трехмерной сцене. Прежде чем говорить о создании материала, необходимо определиться с поняти! ем хрома. Что такое хром? Это материал с высокой отражающей способностью и контрастностью, поэтому первое правило, которое нужно помнить при его ис! пользовании: для хромированного объекта важно окружение, то есть те предметы, которые будут отражаться в хроме. В данном случае возможно два варианта: смо! делировать окружение (если его нет) или создать иллюзию присутствия рядом других предметов при помощи соответствующих текстурных карт. Второе правило реалистичного хрома заключается в том, что объект, которому присваивается хромированный материал, должен иметь сглаженные формы. На! пример, на примитиве Box (Параллелепипед) значительно сложнее создать реали! стичный хром, нежели на ChamferBox (Параллелепипед с фаской). Рассмотрим создание материала хрома при помощи процедурной карты, то есть исключительно средствами программы 3ds Max. Первое, что для этого понадобится, — объекты, с которыми вы будете работать. Для их создания сделайте следующее. 1.
Выполните команду CreateExtended PrimitivesTorus Knot (СозданиеСлож! ные примитивыТороидальный узел).
2.
Щелкните в окне проекции Top (Cверху) и создайте примитив Torus Knot (То! роидальный узел).
496
Глава 10. Текстурирование
3.
На небольшом расстоянии от первого постройте еще один примитив Torus Knot (Тороидальный узел). Два объекта нужны, чтобы они отражались друг в друге.
4.
Для создания плоскости, на которой будут располагаться эти объекты, выпол! ните команду CreateStandard PrimitivesPlane (СозданиеПростые прими! тивыПлоскость).
5.
Щелкните в левом верхнем углу окна проекции Top (Cверху) и переместите указатель мыши в нижний правый угол так, чтобы построенные ранее прими! тивы оказались на плоскости (рис. 10.1).
Теперь можно переходить к непосредственному созданию материала. Идея использования карты Gradient Ramp (Усовершенствованный градиент) осно! вывается на простом наблюдении. В хромированном предмете, лежащем на плос! кости, отражаются три пространства:
снизу отражается плоскость, на которой лежит предмет;
сверху — потолок, небо, то есть что!нибудь светлое;
стороны отражают окружающие предметы и пространство, уходящее вдаль (эти отражения по большей части темные благодаря «жестким» отражениям).
Для построения материала хрома нужна бело!черно!белая текстура, которую лег! ко создать и контролировать при помощи карты 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 (Выбор цвета) выберите нужный цвет. Соотношение цветов должно быть близким к 1:2, то есть белый цвет должен занимать в два раза больше места, чем черный. Затем нужно повернуть карту на 90°, задав значение W для Angle (Угол) равным 90, и установить флажок Mirror (Зеркальное отображение) для координа! ты U. Чтобы избежать резкого перехода на стыке цветов, можно увеличить значе! ние параметра Blur (Размытие). Можно также использовать карту Noise (Шум),
Материал, имитирующий хром
Рис. 10.1. Два примитива Torus Knot (Тороидальный узел) и примитив Plane (Плоскость)
497
Рис. 10.2. Настройки карты Gradient Ramp (Усовершенствованный градиент)
чтобы еще больше сгладить резкий переход. В свитке Coordinates (Координаты) не! обходимо задать способ использования карты, установив переключатель в поло! жение Environment (Окружающая среда), а из списка Mapping (Проекция), который определяет способ наложения координат, выбрать Spherical Environment (Сфери! ческая фоновая), так как вы создаете карту для окружения. На этом с основными настройками можно закончить. В результате вышеописанных операций у вас долж! на получиться процедурная карта, подобная показанной на рис. 10.3. Следующим шагом разработки материала хрома является создание материала Raytrace (Трассировка), который в качестве карты окружения будет использовать созданную вами градиентную карту. Для этого выполните следующие действия. 1.
Щелкните на кнопке выбора материала — Gradient Ramp (Усовершенствован! ный градиент).
2.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт тек! стур) выберите из списка карту Raytrace (Трассировка).
3.
Ответьте утвердительно на предложение оставить созданную карту Gradient Ramp (Усовершенствованный градиент) в качестве подматериала.
В результате в свитке Maps (Карты текстур) стандартного материала в качестве карты Reflection (Отражение) будет загружена карта Raytrace (Трассировка). Можно ограничиться этим, но мы создадим еще материал Raytrace (Трассировка). Отличие карты Raytrace (Трассировка) от материала Raytrace (Трассировка) заключа! ется в том, что материал имеет больше параметров и позволяет получить лучшее
498
Глава 10. Текстурирование
качество при визуализации. Для создания материала Raytrace (Трассировка) вы! полните следующие действия. 1.
Выберите в окне Material Editor (Редактор материалов) ячейку со свободным материалом.
2.
Щелкните на кнопке Standard (Стандартный) для выбора материала.
3.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт тек! стур) выберите из списка материал Raytrace (Трассировка).
4.
Скопируйте карту Gradient Ramp (Улучшенный градиент), щелкнув правой кнопкой мыши на кнопке Gradient Ramp (Улучшенный градиент), созданной ранее, и из появившегося списка выберите способ копирования Copy (Незави! симая копия объекта).
5.
В свитке Raytrañe Basic Parameters (Базовые параметры трассируемого материа! ла) материала Raytrañe (Трассируемый) щелкните правой кнопкой мыши на кнопке Environment (Окружающая среда) и из появившегося списка выберите Paste (Copy) (Вставить (копию)).
6.
Измените параметры материала Raytrace (Трассировка) так, как показано на рис. 10.4.
Рис. 10.3. Процедурная карта Gradient Ramp (Усовершенствованный градиент) после выполнения всех настроек
Рис. 10.4. Настройки параметров материала Raytrace (Трассировка) для хрома
При желании можно увеличить значение параметра Index Of Refr (Коэффициент преломления). В качестве типа затенения из списка Shading (Затенение) выбран Metal (Металл) — это также не обязательно, но создает более жесткие цветовые пе! реходы, характерные для хрома. Более важным в настройках является параметр Reflect (Отражение), который управляет отражательной способностью материала. В данном случае нужно вы!
Материал, имитирующий хром
499
брать светло!серый или серо!голубой цвет (для придания этого оттенка хрому). Назначьте материал объектам (рис. 10.5). Немного усложним объекты и добавим надпись, сделанную при помощи карты Bump (Рельефность) и объекта Text (Текст). Результат показан на рис. 10.6.
Рис. 10.5. Объекты сцены после применения материала хрома
Рис. 10.6. Результат просчета при помощи стандартного визуализатора с применением параметра Area Shadow (Область тени)
Добавлю, что визуализация проводилась стандартным визуализатором програм! мы 3ds Max 9 без применения глобального освещения, каустики и других специ! альных эффектов, придающих изображению более реалистичный вид. В данной сцене использовалось только трехточечное освещение с применением Area Shadow (Область тени). Еще один способ создания материала хрома — с помощью специальных растровых карт, имитирующих хромированный материал. Как правило, материал на основе таких карт имеет не очень реалистичный вид. Однако у этого способа есть и свои плюсы — минимальное время на настройку и визуализацию. Его использование оправданно для объектов на заднем плане. Неплохого качества визуализации можно достичь, используя HDRI (High Dynamic Range Images — изображение с большим динамическим диапазоном) в качестве карты для материала хрома. Улучшить конечное изображение можно также, применив подключаемый модуль визуализации — V!Ray. На рис. 10.7 показана та же сцена, визуализированная при помощи V!Ray без источников света, но с использованием глобального освещения. Разница заметна, но если для вас имеет значение время визуализации, вы работа! ете на компьютере со слабым процессором или в сцене большое количество поли! гонов, то применение стандартного визуализатора вполне приемлемо. При исполь! зовании стандартного визуализатора сцена просчитывается быстрее примерно в полтора раза. На рис. 10.8 представлен фрагмент примитива Torus Knot (Тороидальный узел) с надписью.
500
Рис. 10.7. Сцена, визуализированная при помощи подключаемого модуля V&Ray
Глава 10. Текстурирование
Рис. 10.8. Фрагмент примитива Torus Knot (Тороидальный узел) с надписью
Вы можете также попробовать сделать хром на основе карты Swirl (Завихрение) или Noise (Шум). Более сложных эффектов можно достичь, используя различные комбинации процедурных карт. ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 10\Chrom прилагаемого к книге DVD находится файл сцены chrom.max.
Текстурирование натюрморта В разд. «Натюрморт» предыдущей главы мы простыми средствами моделирова! ния создали сцену, представляющую собой натюрморт из фруктов и ягод. Рассмот! рим некоторые способы текстурирования объектов этой сцены стандартными средствами 3ds Max 9. Для выполнения упражнения вам понадобится продолжить работу с созданной в предыдущей главе сценой натюрморта. Вы также можете загрузить сцену fruits_start.max, которая расположена на прилагаемом к книге DVD в папке Examples\Глава 10\Fruits. Прежде чем мы приступим к непосредственному текстурированию объектов сце! ны, мне бы хотелось напомнить вам о том, что для правильного отображения ма! териалов, содержащих текстурные карты, все моделируемые объекты нуждаются в проекционных координатах. Исключение составляют параметрические объекты, в свойствах которых есть предустановленные проекционные координаты (в свит! ке Parameters (Параметры) настроек объекта установлен флажок Generate Mapping Coords. (Генерировать координаты проецирования)), объекты, созданные при по! мощи некоторых модификаторов (например, Loft (Лофтинговые)), или в том слу! чае, когда материал использует процедурные карты (то есть карты текстур, гене! рируемые программно). Начнем текстурирование с простого объекта — апельсина. Фактура этого объекта не требует обязательного применения текстурной карты, ее можно создать при
501
Текстурирование натюрморта
помощи процедурной карты Noise (Шум). Для текстурирования апельсина сделай! те следующее. 1.
Откройте Material Editor (Редактор материалов) и выберите ячейку со свобод! ным материалом.
2.
В свитке Blinn Basic Parameters (Базовые параметры раскраски по Блинну) щелк! ните на образце цвета рядом с Diffuse (Цвет рассеивания) для выбора базового цвета апельсина.
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.
8.
Нажмите кнопку Go to Parent (Вернуться к исходному) и в свитке Maps (Карты текстур) настраиваемого материала установите значение величины рельефно! сти равным –50 (рис. 10.10).
Рис. 10.9. Свиток Blinn Basic Parameters (Базовые параметры раскраски по Блинну) настроек материала апельсина
Рис. 10.10. Свиток Maps (Карты текстур) настроек материала апельсина
Для присвоения материала объектам сцены сделайте следующее. 1.
Щелкните на кнопке Select by Name (Выделить по имени) главной панели инструментов и в появившемся окне Select From Scene (Выбор из сцены) выбе! рите из списка объекты Orange_00 и Orange_01.
2.
В редакторе материалов щелкните на кнопке Assign Material to Selection (Назна! чить материал выделенным объектам) .
502
Глава 10. Текстурирование
После присвоения объектам материала необходимо выполнить тестовую визуали! зацию и при необходимости подкорректировать параметры материала. При жела! нии можно улучшить отображение апельсина, создав на основе выполненного ма! териала составной материал 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 (Смешанный), назначенного апельсину
Рассмотрим текстурирование яблока с при! менением текстурной карты. Речь идет об использовании растрового изображения в ка! честве карты диффузного рассеивания, зна! чит, объекту потребуются проекционные ко! ординаты. С этого и начнем.
1.
Используя кнопку главной панели инструментов Select by Name (Выделить по имени) , выберите из списка три объекта AppleYellow.
2.
Перейдите в режим Isolation Mode (Режим изолирования), для чего нажмите сочетание клавиш Alt+Q, что позволяет спрятать все объекты сцены, за исклю! чением выделенного.
Текстурирование натюрморта
503
3.
Выполните команду GroupOpen (ГруппаОткрыть), чтобы получить доступ к объектам группы.
4.
В одном из окон проекций выделите яблоко и примените к нему модификатор UVW!проекции, для чего выполните команду ModifiersUV Coordinates UVW Map (МодификаторыUV!координатыUVW!проекция).
5.
В области Mapping (Проекционные координаты) свитка Parameters (Парамет! ры) установите переключатель в положение Spherical (Сферические).
Таким образом, объекту были присвоены сферические проекционные координа! ты. Сейчас можно переходить к непосредственному созданию материала с текстур! ной картой яблока и назначению его объекту. 1.
В окне Material Editor (Редактор материалов) выберите свободный материал.
2.
Щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) в свитке Maps (Карты текстур).
3.
В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).
4.
В открывшемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу с изображением текстуры яблока. На прилагаемом DVD это AppleYellTex.jpg в папке Examples\Глава 10\Fruits.
5.
Присвойте материал модели яблока, перетащив его мышью из окна редактора материалов на объект в окне проекции либо при выделенном объекте щелк! нув на кнопке Assign Material to Selection (Назначить материал выделенным объектам) , находящейся на панели инструментов окна Material Editor (Ре! дактор материалов).
Хвостик яблока — небольшого размера и находится в сцене на значительном рас! стоянии от камеры, поэтому для его текстурирования можно было бы использо! вать материал с коричневым цветом диффузного рассеивания. Однако я хочу по! казать возможность применения для такого рода текстурирования процедурной карты Gradient Ramp (Улучшенный градиент). Создадим материал с такой картой и присвоим его хвостику. 1.
В одном из окон проекций выделите хвостик яблока и примените к нему мо! дификатор UVW!проекции, для чего выполните команду ModifiersUV CoordinatesUVW Map (МодификаторыUV!координатыUVW!проекция).
2.
В области Mapping (Проекционные координаты) свитка Parameters (Пара! метры) настроек модификатора установите переключатель в положение Cylindrical (Цилиндрические) как наиболее подходящее для данной формы объекта.
3.
В области Alignment (Выравнивание) установите переключатель в положение X и щелкните на кнопке Fit (Подогнать) для выравнивания габаритного кон! тейнера вдоль хвостика.
4.
В окне Material Editor (Редактор материалов) выберите свободный материал.
504
Глава 10. Текстурирование
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).
Перейдем к настройке материала вазы, имитирующего бронзу. Создание этого ма! териала будет полностью основано на применении процедурных карт. 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 (Шум).
Текстурирование натюрморта
505
Рис. 10.13. Тестовая визуализация с материалами для яблок и груш
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 (Вернуться к исходному) .
10.
В свитке Maps (Карты текстур) настраиваемого материала щелкните на кноп! ке рядом с Diffuse Color (Цвет рассеивания) и, не отпуская кнопку мыши, пе! ретащите карту Noise (Шум) на кнопку рядом с Bump (Рельефность), а в ка! честве способа копирования выберите Instance (Образец).
11.
Здесь же, в свитке Maps (Карты текстур) настраиваемого материала, установи! те значение величины рельефности равным 15.
12.
Щелкните на кнопке рядом с Reflection (Отражение) и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка кар! ту Gradient (Градиент).
13.
В свитке Coordinates (Координаты) карты Gradient (Градиент) установите пе! реключатель в положение Environ (Фон) и выберите из списка строку Shrinkwrap Environment (Обтягивающая фоновая).
506
Глава 10. Текстурирование
14.
В свитке Gradient Parameters (Параметры градиента) щелкните на кнопке, рас! положенной справа от Color #1 (Цвет 1), и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Noise (Шум).
15.
Установите такие же параметры карты зашумления, как мы задали для цвета диффузного рассеивания (см. п. 8). Щелкните на кнопке Go to Parent (Вернуть! ся к исходному) .
16.
Скопируйте карту зашумления для параметра Color #1 (Цвет 1) в Color #3 (Цвет 3) (рис. 10.15).
Рис. 10.14. Настройки свитка Noise Parameters (Параметры шума)
Рис. 10.15. Параметры карты Gradient (Градиент) для карты отражения
17.
Нажмите кнопку Go to Parent (Вернуться к исходному) и установите значение величины карты Reflection (Отражение) равным 50.
18.
Примените созданный материал к объекту Vase.
Осталось рассмотреть материалы для листиков и винограда, остальные материа! лы настраиваются аналогично рассмотренным выше. Лист винограда, лежащий на столе, выполнен на основе параметрического объек! та Plane (Плоскость) с одной лишь целью — упростить процесс моделирования
Текстурирование натюрморта
507
и текстурирования. Рассмотрим процесс создания материала листа на основе тек! стур диффузного рассеивания и прозрачности. 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. Визуализация натюрморта на данном этапе текстурирования
508
Глава 10. Текстурирование
Перейдем к созданию материала для винограда. Ягода винограда состоит из двух объектов: хвостика и непосредственно ягоды. Как текстурировать хвостик, мы уже рассматривали на примере яблока, поэтому сразу перейдем к созданию материала для ягоды. 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 (Вернуться к исходному)
.
509
Текстурирование натюрморта
15.
В свитке Extended Parameters (Допол! нительные параметры) установите значения составляющих образца цве! та RGB для Translucency (Просвечива! ние) и Fluorescence (Флуоресценция): Red (Красный) — 140, Green (Зеле! ный) — 140 и Blue (Синий) — 35.
В результате параметры материала Raytrace (Трассируемый) должны быть та! кими, как показано на рис. 10.17. Примените материал к соответствую! щим объектам сцены и выполните тес! товую визуализацию. Для оставшихся объектов сцены создайте материалы са! мостоятельно.
ПРИМЕЧАНИЕ _________________________ Для того чтобы проанализировать пара& метры материалов сцены, вы можете ис& пользовать файл fruits_end.max, который расположен в папке Examples\Глава 10\ Fruits прилагаемого к книге DVD.
Рис. 10.17. Параметры материала Raytrace (Трассируемый)
Окончательная визуализация натюрморта представлена на рис. 10.18.
Рис. 10.18. Визуализация натюрморта
510
Глава 10. Текстурирование
Текстурирование микроволновой печи Опишем текстурирование еще одного объекта, создание которого рассмотрено в предыдущей главе, — микроволновой печи. На этом примере покажем принци! пы создания сложной процедурной карты, применения архитектурных материа! лов, а также способ наложения материала на часть объекта. ПРИМЕЧАНИЕ ___________________________________________________________________ Для выполнения урока загрузите построенную вами в предыдущей главе модель мик& роволновой печи или используйте файл урока microwave_start.max, расположенный на прилагаемом к книге DVD в папке Examples\Глава 10\Microwave_texturing.
Начнем с простых материалов: стекла и материала корпуса микроволновой печи. Материал стекла можно создать как минимум двумя способами:
при помощи стандартного материала с картами отражения и преломления;
использовать материал Raytrañe (Трассируемый); это более ресурсоемко, одна! ко в таком случае доступно большее количество настроек и получается более качественный результат при визуализации.
Воспользуемся вторым способом, для чего выполните следующие действия. 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 (Выделить по имени).
Выполните тестовую визуализацию, а чтобы определить отражательную способ! ность стекла, создайте перед дверцей любой примитив, который мог бы отражать! ся в стекле. При необходимости откорректируйте значения параметров Specular Level (Уровень блеска) и Glossiness (Глянец). Для материала корпуса я использовал архитектурный пластик. ВНИМАНИЕ ______________________________________________________________________ В более ранних версиях 3ds Max архитектурных материалов не было.
511
Текстурирование микроволновой печи
Во многих случаях архитектурные материалы с параметрами по умолчанию дают весьма неплохой результат. Применим такой материал к корпусу и лицевой пане! ли нашей модели. 1.
Выберите ячейку со свободным материалом.
2.
Щелкните на кнопке Standard (Стандартный) в окне Material Editor (Редактор материалов) для вызова окна Material/Map Browser (Окно выбора материалов и карт).
3.
Выберите из списка материал Architectural (Архитектурный).
4.
В свитке Templates (Образцы) выберите из раскрывающегося списка строку Plastic (Пластик).
5.
В свитке Physical Qualities (Физические характеристики) щелкните на образце цвета рядом с Diffuse Color (Цвет рассеивания) для выбора базового цвета кор! пуса.
6.
В открывшемся окне Color Selector: Diffuse (Выбор цвета: цвет рассеивания) выберите белый цвет (рис. 10.20).
7.
Примените полученный материал ко всем объектам, которые должны иметь белый цвет.
Рис. 10.19. Настройки материала стекла
Рис. 10.20. Параметры материала пластика
Аналогичным образом можно создать материал для поверхности стола, на котором стоит микроволновая печь. Выполните тестовую визуализацию. На данном этапе изображение должно вы! глядеть, как показано на рис. 10.21.
512
Глава 10. Текстурирование
Рис. 10.21. Результат визуализации микроволновой печи на данном этапе текстурирования
Если вы могли заметить, в оригинальном изображении (см. цветной рис. 9.87 на прилагаемом DVD) микроволновой печи есть индикаторы. Создадим их. 1.
В окне проекции выделите лицевую панель микроволновой печи.
2.
Перейдите на уровень редактирования полигонов и выделите все полигоны, расположенные в непосредственной близости от углублений под ручками управ! ления (рис. 10.22).
Рис. 10.22. Выделенные полигоны для последующего текстурирования
Текстурирование микроволновой печи
513
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 sub-material? (Оставить старый материал в качестве компонента?), в результа! те чего старый материал займет верхнюю кнопку материалов в свитке Multi/ Sub-Object Basiñ Parameters (Основные параметры многокомпонентного ма! териала).
4.
Щелкните на первой кнопке с именем архитектурного материала (у меня — Body (Architertural)) и, не отпуская кнопку мыши, перетащите его на вторую кнопку, а в качестве метода копирования укажите Copy (Копия). Таким обра! зом, мы создали материал для второго идентификатора со свойствами перво! го материала. Если вам в дальнейшем понадобится изменять параметры архи! тектурного материала для корпуса, то менять их необходимо сразу у двух материалов.
5.
Щелкните на кнопке с именем второго материала для перехода к его на! стройкам.
6.
В окне Material Editor (Редактор материалов) нажмите кнопку типа материала и в появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Blend (Смешанный). В открывшемся окне установите переключа! тель в положение Keep old material as sub-material? (Оставить старый материал в качестве компонента?).
7.
В свитке Blend Basic Parameters (Базовые параметры смешанного материала) щелкните на кнопке второго материала и установите черный цвет диффузно! го отражения (это будет цвет надписи на панели управления).
514
Глава 10. Текстурирование
8.
Нажмите кнопку Go to Parent (Вернуться к исходному)
.
9.
Щелкните на кнопке Mask (Маска) и в открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите Bitmap (Растровое изображение).
10.
В появившемся окне Select Bitmap Image File (Выбор растрового изображения) укажите путь к файлу face_mask.jpg из папки Examples\Глава 10\ Microwave_texturing.
11.
Примените полученный материал к лицевой панели микроволновой печи и выполните тестовую визуализацию.
Таким образом, мы создали на основе архитектурного материала многокомпонент! ный материал, структура которого представлена на рис. 10.23. Более сложным с точки зрения настроек можно считать материал сетки, располо! женной за стеклом двери. Для материала сетки можно было бы нарисовать тек! стурную карту, но я предпочитаю пользоваться процедурными картами — это по! зволяет получить максимально четкое и качественное изображение, ведь такие карты генерируются программно. Вот и в данном случае карта прозрачности мате! риала сетки построена на основе карт Gradient Ramp (Улучшенный градиент). 1.
В окне редактора материалов выберите ячейку со свободным материалом.
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 (Повтор)).
9.
Перейдите от карты Gradient Ramp (Улучшенный градиент) к карте Mix (Сме! шивание) с именем Net, используя кнопку Go to Parent (Вернуться к исходно! му) .
515
Текстурирование микроволновой печи
Рис. 10.23. Структура материала для корпуса и лицевой панели микроволновой печи
Рис. 10.24. Параметры первой карты Gradient Ramp (Улучшенный градиент)
10.
В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кноп! ке, расположенной рядом с Color #1 (Цвет 1), и, не отпуская кнопку мыши, пе! ретащите ее на кнопку, расположенную рядом с Color #2 (Цвет 2), а в качестве метода копирования выберите Copy (Копия).
11.
Щелкните на вновь созданной копии карты Gradient Ramp (Улучшенный гра! диент) и в ее свитке Coordinates (Координаты) установите смещение (Offset (Смещение)) по горизонтали (U), равное 0,009 (рис. 10.25).
Таким образом, мы имеем две карты Gradient Ramp (Улучшенный градиент), созда! ющие сетку из кругов черного цвета, с той лишь разницей, что вторая карта имеет смещение по горизонтали на величину половины круга. Выполним еще одну кар! ту Gradient Ramp (Улучшенный градиент), которая будет играть роль маски, сме! шивающей окружности двух предыдущих карт таким образом, что у первой карты будут видны четные горизонтальные ряды, а у второй — нечетные. 1.
Вернитесь к карте Mix (Смешивание) с именем Net, используя кнопку Go to Parent (Вернуться к исходному) .
2.
В свитке Mix Parameters (Параметры смешивания) карты Net щелкните на кноп! ке, расположенной рядом с Mix Amount (Доля в смеси), и в окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Улучшенный градиент).
3.
Установите параметры этой карты согласно рис. 10.26.
516
Рис. 10.25. Параметры второй карты Gradient Ramp (Улучшенный градиент)
Глава 10. Текстурирование
Рис. 10.26. Параметры карты Gradient Ramp (Улучшенный градиент), играющей роль маски
Обратите внимание, что Gradient Type (Тип градиента) этой карты — Linear (Линей! ный). Кроме того, карта повернута на 90°, чтобы создаваемые черно!белые полосы располагались горизонтально, а их повторяемость (Tiling (Повтор)) установлена в соответствии с количеством рядов окружностей. Если применить созданную карту к объекту Reshetka, то при визуализации долж! но получиться изображение, показанное на рис. 10.27.
Рис. 10.27. Результат визуализации материала сетки
517
Текстурирование микроволновой печи
Сейчас полученная карта заполняет все пространство объекта, но решетка окна должна быть лишь частью, ограниченной прямоугольником. Сделать такое огра! ничение можно, снова используя карту 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.28. Параметры карты Gradient Ramp (Улучшенный градиент)
На этом создание материала для решетки можно считать завершенным. На рис. 10.29 показана схема этого материала.
ПРИМЕЧАНИЕ ___________________________________________________________________ Для того чтобы проанализировать параметры материалов сцены, вы можете исполь& зовать файл microwave_end.max, расположенный на прилагаемом к книге DVD в пап& ке Examples\Глава 10\Microwave_texturing.
И наконец, на рис. 10.30 представлен фрагмент модели микроволновой печи вмес! те с текстурами.
518
Глава 10. Текстурирование
Рис. 10.29. Схема материала решетки
Рис. 10.30. Фрагмент модели микроволновой печи вместе с текстурами
Сложное текстурирование Не стоит пугаться названия упражнения. Оно подразумевает, что мы будем гово! рить о текстурировании сложных объектов, а не то, насколько сложно это сделать. В понятие «сложные объекты» я включаю такие объекты, к которым невозможно применить один из типов стандартного проецирования (планарный, цилиндри! ческий, кубический) и ограничиться этим. Обычно такие объекты требуют со! вместного использования нескольких типов проецирования и (или) коррекции наложения текстурных координат вручную при помощи модификатора Unwrap UVW
Сложное текстурирование
519
(Расправить UVW!проекцию) или дополнительных под! ключаемых модулей (например, Deep Paint). На примере данного упражнения рассмотрим возмож! ность текстурирования сложных объектов только сред! ствами 3ds Max без использования сторонних программ. На рис. 10.31 представлена модель резиновой детской игрушки, с которой вам предстоит работать. Прежде чем переходить к текстурированию, нужно про! вести предварительный анализ модели. Это необходимо по двум причинам:
для правильного текстурирования модели нужно по! нять, на какое минимальное количество элементов (групп выделения) необходимо разделить объект, чтобы применить к этим группам стандартные типы проецирования;
нужно определиться с количеством материалов, ко! торые будут использоваться в данном объекте.
Поясню подробнее. Любой сложный предмет можно раз! ложить на более простые. Например, у вас есть модель деревянной стремянки (лестницы). Если ни один из известных вам типов проецирования текстурных коор! Рис. 10.31. Модель динат, таких как планарное, прямоугольное, цилиндри! игрушки ческое или любое другое, не может дать желаемого ре! зультата, то стоит разделить ее на две вертикальные жерди и некоторое количество поперечных ступенек. Тогда сразу становится очевидной возможность примене! ния прямоугольного проецирования текстурных координат. Оно как нельзя луч! ше будет отвечать форме составляющих лестницу деталей. Для объяснения второй причины возьмем модель персонажа, одетого в шорты и майку. Очевидно, что в данном случае необходимы как минимум три текстур! ные карты (голова, майка и шорты), а учитывая обувь, текстуру рук, ног и деталей головы, — может быть, и больше трех. Существует два подхода к созданию мате! риала для такой модели.
Модель может иметь один материал с одной текстурой, на которой располо! жены сразу все текстурируемые элементы (голова, майка, шорты и т. д.), что очень часто используется для визуализации в реальном времени (например, в компьютерных играх).
Использование составного материала типа Multi/Sub-Object (Многокомпонент! ный), позволяющего применить к объекту сразу несколько материалов. При этом объект разделяется на несколько Material ID (Идентификатор материала), что позволяет работать с отдельным материалом (например, при замене тек! стуры майки не придется менять всю текстуру модели).
520
Глава 10. Текстурирование
Второй подход, в отличие от первого, позволяет более гибко работать с отдельны! ми материалами и применять процедурные карты (то есть карты текстур, генери! руемые программно). Модель игрушки, представленной на рис. 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 (Поверхность). После этого у вас будет полигональная модель, и вы сможете работать в режиме редактирования полигонов (именно они нужны для создания выделений).
521
Сложное текстурирование
Выделите основание модели. Для этого выполните следующие действия. 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&проекция)
Обратите внимание, в какой плоскости расположен Gizmo (Габаритный контей! нер) модификатора. У меня указано выравнивание по оси Y.
522
Глава 10. Текстурирование
Прежде чем перейти к наложению проекционных координат на другие элементы модели, нужно разрушить стек модификаторов, щелкнув правой кнопкой мыши и вы! брав команду 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!проекцию). В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVW! проекцию) щелкните на кнопке Edit (Правка), после чего откроется окно Edit UVWs
523
Сложное текстурирование
(Редактирование UVW) для редактирования текстурных координат. На данном этапе окно Edit UVWs (Редактирование UVW) нужно лишь для контроля правиль! ности наложения текстурных координат. На рис. 10.35 показан фрагмент окна Edit UVWs (Редактирование UVW) с выбран! ным для показа вторым идентификатором материала.
Рис. 10.34. Модель ослика с примененным к туловищу цилиндрическим проецированием
Рис. 10.35. Развертка цилиндрического проецирования для туловища ослика
На данном этапе не стоит выполнять какие!либо действия в редакторе текстурных координат. Это лучше сделать после присвоения координат проецирования всем элементам. Удалите модификатор Unwrap UVW (Расправить UVW!проекцию) из стека моди! фикаторов (он применялся только для того, чтобы можно было убедиться в пра! вильности присвоения проекционных координат). После этого снова перейдите к выделению полигонов (на сей раз гривы ослика), предварительно спрятав вы! деленные полигоны туловища. После выделения нужных полигонов примените к выделению модификатор UVW Map (UVW!проекция) со сферическим типом проецирования (рис. 10.36). На этот раз задача усложняется. Нужно не просто применить сферическое проеци! рование, но и правильно расположить его на выделении. Для этого выполните сле! дующие действия. 1.
Выберите режим редактирования габаритного контейнера, щелкнув на плю! сике рядом с названием модификатора и далее на строке Gizmo (Габаритный контейнер).
2.
Вращайте габаритный контейнер так, чтобы зеленая вертикальная линия, указывающая на место стыка текстуры, оказалась в передней части выделе! ния, а наклон центральной оси габаритного контейнера соответствовал накло! ну выделения.
3.
Передвиньте габаритный контейнер так, чтобы его ось оказалась впереди вы! деления.
524
Глава 10. Текстурирование
После этого проверьте правильность наложения проекционных координат, при! своив модификатор Unwrap UVW (Расправить UVW!проекцию), как вы уже это делали для туловища ослика. Развертка гривы ослика должна выглядеть так, как показано на рис. 10.37.
Рис. 10.36. Модель ослика с примененным к гриве сферическим проецированием
Рис. 10.37. Развертка сферического проецирования для гривы ослика
Если у вас нет опыта работы с такого рода наложением проекционных коорди! нат, то требуемый результат может сразу не получиться, но нужно стремиться к тому, чтобы форма развертки не была «рваной» и соответствовала форме вы! деления. Выделите поочередно правые и левые ноги. Для них применим цилиндрическое проецирование с крышками на торцах. Последовательность выполнения действий та же, что и в предыдущих случаях. Не забудьте назначить выделению идентифи! катор материала и контролировать выделение в окнах проекций (рис. 10.38). Развертку для ног ослика делать значительно сложнее, чем в предыдущих случа! ях, поэтому наберитесь терпения и выполните все действия тщательно. От нало! жения проекционных координат будет зависеть внешний вид модели. Перейдем к наложению текстурных координат для головы. Надеюсь, к этому вре! мени вы уже поняли принцип работы с модификаторами и развертками, поэтому не стану вновь повторяться, а лишь представлю вашему вниманию положение Gizmo (Габаритный контейнер) модификатора UVW Map (UVW!проекция) со сфе! рическим типом проецирования (рис. 10.39). Обратите внимание, что зеленая линия (см. цветной рис. 10.39 на прилагаемом к книге DVD), означающая место стыка текстурной карты, обращена в противо! положную от лицевой части сторону и ее ось повернута так, чтобы максимально широко развернуть текстуру. На рис. 10.40 представлена развертка текстурных ко! ординат для головы ослика.
525
Сложное текстурирование
Рис. 10.38. Развертка цилиндрического проецирования для ног ослика
Рис. 10.39. Модель ослика с примененным к голове сферическим проецированием
С ушами модели проделайте описанные выше действия следующим образом. 1.
Выделите полигоны, составляющие одно ухо.
2.
Присвойте выделению идентификатор материала.
3.
Примените модификатор UVW Map (UVW!проекция) с планарным типом про! ецирования.
4.
Применив модификатор Unwrap UVW (Расправить UVW!проекцию), проверь! те правильность наложения текстурных координат.
5.
При необходимости сделайте соответствующие правки, вернувшись к редактиро! ванию Gizmo (Габаритный контейнер) модификатора UVW Map (UVW!проекция).
После выполненных операций развертка для ушей ослика должна выглядеть так, как показано на рис. 10.41 (в данном случае имеется в виду форма развертки, а не мас! штаб и положение в пространстве).
Рис. 10.40. Развертка сферического проецирования для головы ослика
Рис. 10.41. Развертка планарного проецирования для ушей ослика
526
Глава 10. Текстурирование
Когда модели назначены все проекционные координаты, нужно разложить создан! ные развертки в пределах одной текстурной карты. Сделать это можно двумя спо! собами: автоматически и вручную. Чтобы закончить создание проекционных координат для модели ослика, выпол! ните следующие действия. 1.
Откройте все ранее спрятанные полигоны, для чего щелкните на кнопке Unhide All (Показать все) в свитке Selection (Выделение) настроек объекта Editable Mesh (Редактируемая поверхность).
2.
Примените к модели ослика модификатор Unwrap UVW (Расправить UVW! проекцию).
3.
В свитке Parameters (Параметры) настроек модификатора Unwrap UVW (Рас! править UVW!проекцию) щелкните на кнопке Edit (Редактировать).
4.
Выполните в появившемся окне правки текстурных координат команду Tools Pack UVs (ИнструментыРазместить UV!проекции) и в открывшемся окне диа! лога Pack (Упаковать) щелкните по кнопке OK. В результате этих действий развертки заполнят свободное пространство в пределах текстурной карты (рис. 10.42). Передвигать и масштабировать придется вручную.
Теперь создадим текстуру для модели. Обычно я делаю это в программе Adobe Photo! shop, но можно использовать любое другое приложение редактирования графики. Прежде всего необходимо создать визуализацию текстурных координат и сохра! нить ее в виде растрового изображения. Для этого выполните команду Tools Render UVW Template (ИнструментыВизуализация образца UVW) из меню окна Edit UVWs (Редактирование UVW) и, не изменяя настроек окна Render UVs (Визу! ализация UVs), щелкните на кнопке Render UV Template (Визуализация образца UV), а затем сохраните выполненную визуализацию. Откройте сохраненное изображе! ние в программе растровой графики (например, Adobe Photoshop).
ПРИМЕЧАНИЕ ___________________________________________________________________ Можно воспользоваться и более простым способом — нужно максимально увеличить окно редактирования текстурных координат и сделать копию экрана, нажав на клави& атуре Print Screen. После этого создать в Adobe Photoshop новый документ с разме& рами не менее 512 × 512 пикселов (я обычно использую размер 1000 × 1000 или 1024 × 1024) и вставить изображение, нажав сочетание клавиш Ctrl+V (стандартное сочетание клавиш для вставки содержимого буфера обмена).
Выполните в Adobe Photoshop команду SelectColor Range (ВыделениеЦветовой диапазон) и выделите черный цвет фона, после чего удалите его, нажав клавишу Delete (Удалить). Это позволит лучше видеть слой, который лежит ниже и на ко! тором вы будете рисовать текстуру для модели (рис. 10.43). Нарисуйте на нижнем слое текстуру для модели ослика. Добавляйте слои, цвета, используйте выдавливание и т. д. — и вы сможете получить великолепную модель.
527
Сложное текстурирование
Я всего лишь немного растушевал изображение, чтобы слегка оживить модель (рис. 10.44).
Рис. 10.42. Окончательный вид развертки текстуры для модели ослика
Рис. 10.43. Заготовка текстуры
Последнее, что осталось сделать, — создать материал и назначить ему в качестве карты цвета созданное растровое изображение. Для этого в 3ds Max 9 выполните следующие действия. 1.
Откройте окно Material Editor (Редактор материалов) и выберите ячейку со сво! бодным материалом.
2.
В свитке Maps (Карты текстур) щелкните на кнопке None (Отсутствует) рядом с кнопкой Diffuse Color (Цвет рассеивания).
3.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение).
4.
В появившемся окне Select Bitmap Image File (Выбор растрового изображения) выберите сохраненную ранее текстурную карту для канала цвета.
5.
Присвойте материал модели ослика, перетащив его мышью из окна редактора материалов на объект в окне проекции либо при выделенном объекте щелк! нув на кнопке Assign Material to Selection (Назначить материал выделенным объектам) , находящейся на панели инструментов окна Material Editor (Ре! дактор материалов).
Чтобы модель выглядела более реалистично, сделайте текстурные карты для вы! давливания и глянца ее поверхности. То, что получилось у меня, показано на рис. 10.45. Конечно, чтобы создать красивую реалистичную модель, требуется достаточно много времени для рисования текстур. Порой это занимает не меньше времени, чем само моделирование объекта.
528
Рис. 10.44. Текстурная карта цвета для модели ослика
Глава 10. Текстурирование
Рис. 10.45. Результат финальной визуализации модели ослика с картой цвета
ПРИМЕЧАНИЕ ___________________________________________________________________ Законченная модель ослика с присвоенными проекционными координатами находит& ся на DVD, прилагаемом к книге, в папке Examples\Глава 10\Donkey. Файл сцены на& зывается donkey_end.max.
Глава 11
Визуализация • Интеграция трехмерной графики и фотографии • Маскирование объектов • Объекты в фокусе камеры • Работаем с Video Post (Видеомонтаж)
530
Глава 11. Визуализация
Существует много вариантов, позволяющих получить хорошее изображение при визуализации, но при этом всегда найдется способ, чтобы улучшить его. В данной главе мы поговорим о том, как это сделать. Для этого мы рассмотрим методы рабо! ты с фотографиями, исследуем возможность улучшения визуализации за счет со! здания глубины резкости изображения.
Интеграция трехмерной графики и фотографии Когда я работал в рекламном агентстве, специализирующемся на наружной рек! ламе, мне часто приходилось иметь дело с проектами, требующими размещения рекламных конструкций на фотографии. В этом упражнении мы поговорим о рек! ламной конструкции и способе ее подачи в программе 3ds Max. На примере созда! ния стелы для банка я объясню процесс построения целостного изображения на основе трехмерной графики и фотографии. Предположим, у вас есть идея для проекта, ее конструктивное решение. Но заказ! чику мало просто описать проект, он хочет видеть его таким, каким он будет в жиз! ни. Попробуем выполнить пожелания заказчика. Все начинается с фотографии. Прежде всего нужно определить, какого качества необходимо распечатать проект для заказчика. Это служит отправной точкой для задания разрешения при сканировании (если, конечно, вы не пользуетесь цифро! вым фотоаппаратом). Если фотография имеет размер 9 × 12 см, а вывести на пе! чать нужно формат А4, я сканирую с разрешением 300 dpi и предпочитаю работать с форматом TIFF. Получив цифровое изображение, можно считать подготовитель! ную часть законченной (рис. 11.1).
Рис. 11.1. Отсканированное изображение, которое будет использоваться в качестве фона
Интеграция трехмерной графики и фотографии
531
Теперь надо разместить фотографию в качестве фонового изображения в окне про! екции 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 (Привязка). При необходимости редактирования изображения откройте свиток Bitmap Parameters (Параметры растрового изображения) или Output (Результат) в окне Material Editor
532
Глава 11. Визуализация
(Редактор материалов). При помощи этих свитков можно подкорректировать размер выходного изображения, провести цветокоррекцию, изменить яркость, на! сыщенность и другие параметры растрового изображения. Теперь нужно разместить это же растровое изображение в окне проекции и изме! нить параметры визуализации. Для этого сделайте следующее. 1.
Выполните команду ViewsViewport Background (ВидФон окна проекции).
2.
В появившемся окне Viewport Background (Фон окна проекции) установите флажки Use Environment Background (Использовать фон окружающей среды) и Display Background (Показать фон).
3.
В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) строку Perspective (Пер! спектива) (рис. 11.3).
Рис. 11.3. Окно Viewport Background (Фон окна проекции) с настройками для фонового изображения
4.
Закончив настройку, щелкните на кнопке OK.
5.
Выполните команду RenderingRender (ВизуализацияВизуализировать), в результате чего откроется окно Render Scene (Визуализация сцены).
6.
В области Output Size (Выходной размер) свитка Common Parameters (Общие параметры) укажите значение ширины и высоты в пикселах в соответствии с размером фонового изображения (помните, я советовал при открытии фай! ла обратить внимание на размер изображения).
Интеграция трехмерной графики и фотографии
533
После выполнения данных действий в окне проекции Perspective (Перспектива) появится фотография в качестве фонового изображения. Проанализируем фоновое изображение. Первое, что нужно сделать, — определить точку в пространстве, с которой производилась съемка (это необходимо для пра! вильной постановки камеры в сцене), а также сделать анализ света и тени (приго! дится для выставления источников света). Начнем с камеры. Фотоаппарат находился на уровне глаз фотографа, значит, и ка! меру в сцене надо разместить на высоте 1600–1700 мм (за нулевую отметку земли возьмем начало координат по оси Z). Чтобы проще было согласовывать объекты сцены с фоновым изображением, лучше использовать Target Camera (Направленная камера). Target (Цель) камеры будет находиться несколько выше самой камеры, так как фотография предположительно была сделана под небольшим углом. Иде! альный вариант — знать реальные размеры объектов на фотографии, например столбов, и расстояние от них до точки съемки, чтобы максимально верно выста! вить камеру и объекты сцены. Что же касается освещения на фотографии, то, судя по теням от машины и столба, можно предположить, что солнце находилось слева и немного впереди. СОВЕТ ___________________________________________________________________________ Особую роль в работе такого рода играет последовательность действий. В данном примере можно было сначала построить всю геометрию (плоскость земли и саму сте& лу) согласно реальным размерам, и только потом начинать работу с фотографией. Но гораздо чаще приходится строить объекты, применяя фотографию, то есть зани& маться непосредственной подгонкой изображения (например, добавить несколько мелких деталей в интерьер комнаты).
Допустим, что у вас уже есть модель стелы и сейчас нужно только экспортировать ее в сцену. ПРИМЕЧАНИЕ ___________________________________________________________________ Вы можете загрузить объекты сцены из файла stela_start.max, расположенного в пап& ке Examples\Глава 11\Stela прилагаемого к книге DVD.
Чтобы показать тень, падающую от стелы на землю, необходимо построить плос! кость. Для этого выполните команду CreateStandard PrimitivesPlane (Созда! ниеПростые примитивыПлоскость). В окне проекции Top (Сверху) щелкните кнопкой мыши в верхнем левом углу и, удерживая ее нажатой, переместите указа! тель в правый нижний угол, построив таким образом плоскость (рис. 11.4). Плоскость нужна для того, чтобы отобразить на ней тень от стелы, поэтому она должна находиться на уровне земли и быть не меньше, чем предполагаемая тень. Кроме того, я использую грани плоскости для выравнивания ее относительно то! чек схода.
534
Глава 11. Визуализация
Рис. 11.4. Взаимное расположение объектов сцены
Построив плоскость и установив на нее стелу, можно считать работу с геометрией законченной. Теперь перейдем к построению камеры, для чего сделайте следу! ющее. 1.
Выполните команду CreateCamerasTarget Camera (СозданиеКамерыНа! правленная камера) главного меню.
2.
В окне проекции Top (Сверху) щелкните немного левее стелы и переместите указатель мыши в направлении, противоположном фронтальной стороне сте! лы. После того как вы отпустите кнопку мыши, камера будет построена.
Рис. 11.5. Окно Move Transform Type&In (Ввод значений перемещения) со значением высоты камеры над землей
3.
Не снимая выделения с камеры, щелк! ните правой кнопкой мыши на кнопке Select and Move (Выделить и перемес! тить) , расположенной на панели инструментов.
4.
В открывшемся окне Move Transform Type-In (Ввод значений перемещения) задайте абсолютное значение по оси Z равным 1700 (расстояние от земли до камеры). Камера займет свое положе! ние в пространстве по оси Z, и двигать ее в этой плоскости больше не следу! ет (рис. 11.5).
Теперь окно проекции Perspective (Перспектива) можно заменить окном вида из камеры. Для этого щелкните правой кнопкой мыши на названии окна (в ле! вом верхнем углу) и в появившемся контекстном меню выберите ViewsCamera (ВидКамера).
Интеграция трехмерной графики и фотографии
535
Продолжим настройку положения камеры в пространстве. Для согласования ли! нии горизонта камеры с горизонтом на фотографии надо включить показ горизон! та камеры в окне вида из камеры. Для этого выполните следующие действия. 1.
Выделите камеру в окне проекции Top (Сверху).
2.
Щелкните на вкладке Modify (Изменение) командной панели, в результате чего появится доступ к настройкам параметров камеры.
3.
В свитке Parameters (Параметры) установите флажок Show Horizon (Показать горизонт). В окне проекции появится черная горизонтальная линия, указыва! ющая на положение линии горизонта в пространстве.
На рис. 11.6 показаны составляющие правильной настройки камеры и освещения для фонового изображения.
Рис. 11.6. Схема положения объектов сцены относительно изображения фона
Для наглядности (это не обязательно) я провел две линии: параллельно бордюр! ному камню и по краю газона (они обычно параллельны). На пересечении мы по! лучили точку схода, а следовательно, и линию горизонта фотографии. Используя инструмент Select and Move (Выделить и переместить) , передвиньте Target (Цель) камеры по оси Z так, чтобы черная горизонтальная линия (горизонт камеры) совпала с точкой схода. Затем переместите камеру по осям X и Y, чтобы стела заняла то место, которое для нее предназначено, то есть справа от дороги, на газоне. Стелу предполагается расположить перпендикулярно дороге, следовательно, сте! лу можно установить по левой грани плоскости. Кроме того, она размещена в про! странстве так, что ее боковая грань расположена параллельно дороге. На рис. 11.7 показано окончательное расположение камеры и источников света в окне проек! ции Top (Сверху).
536
Глава 11. Визуализация
Рис. 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 (Матовое покрытие/ тень). Он позволяет объектам принимать тени, при этом оставаясь невидимым. Чтобы присвоить плоскости данный материал и настроить его параметры, выпол! ните следующие действия. 1.
Откройте окно Material Editor (Редактор материалов) и выберите любую сво! бодную ячейку образца.
Интеграция трехмерной графики и фотографии
537
2.
Щелкните на кнопке Standard (Стандартный).
3.
В появившемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень).
4.
В свитке Matte/Shadow Basic Parameters (Основные параметры матового покры! тия/тени) настройте параметры материала, как показано на рис. 11.8.
Рис. 11.8. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для плоскости
5.
Для присвоения материала плоскости перетащите материал из окна Material Editor (Редактор материалов) на плоскость в окне проекции.
Визуализируйте сцену (рис. 11.9).
Рис. 11.9. Результат визуализации стелы на фоне растрового изображения
538
Глава 11. Визуализация
В данном случае тень от стелы падала на ровную поверхность земли, а что если тень падает на стену здания с колоннами, окнами и пилястрами? При решении та! кой задачи нужно имитировать выступы и впадины (можно сделать это прибли! зительно), и на достаточном расстоянии от камеры вы не заметите неточности в форме тени. Сложнее, если объект показан крупным планом. Чтобы он не казал! ся инородным телом, необходимо подобрать параметр сглаживания при визуали! зации. Это же относится и к подбору цвета для источников света (надо постарать! ся попасть в цветовую гамму фотографии). ПРИМЕЧАНИЕ ___________________________________________________________________ В папке Examples\Глава 11\Stela прилагаемого к книге DVD находится итоговый файл сцены stеla_end.max.
Маскирование объектов Техника использования маскированных объектов позволяет создавать визуализа! цию с помощью фонового изображения и объектов сцены. Простым примером может служить создание анимации, при которой объект сцены — самолет — выле! тает из!за скалы, расположенной на фотографии, использованной в качестве фо! нового изображения. Рассмотрим похожий пример с использованием автомобиля. Нам понадобится фотография для фонового изображения (рис. 11.10) и модель автомобиля.
Рис. 11.10. Растровое изображение, взятое для использования в качестве фона
Как установить растровое изображение в качестве фона в любое окно проекции и подключить его для последующей визуализации, было подробно рассмотрено
Маскирование объектов
539
в предыдущем разделе. По этой причине я напомню только последовательность работы. 1.
Выполнив команду RenderingEnvironment (ВизуализацияОкружающая среда), загрузите растровое изображение фона для использования его при ви! зуализации.
2.
Для показа фона в окне проекции Perspective (Перспектива) или вида из каме! ры выполните команду ViewsViewport Background (ВидФон окна проекции).
3.
Задайте разрешение для визуализации соответственно размерам фонового изо! бражения (как минимум должно соответствовать отношение высоты к шири! не, в противном случае будут искажения).
4.
Экспортируйте в сцену объекты для работы (в данном случае автомобиль), для чего выполните команду FileMerge (ФайлПрисоединить) и выберите в окне диалога Merge File (Присоединить файл) файл с моделью автомобиля (рис. 11.11).
Рис. 11.11. Окно вида из камеры с фоновым изображением и моделью автомобиля
ПРИМЕЧАНИЕ ___________________________________________________________________ Все необходимое для выполнения задания можно найти на прилагаемом к книге DVD в папке Examples\Глава 11\Mask. Файл сцены называется mask_start.max.
На рис. 11.11 уменьшенная копия модели автомобиля висит над террасой. Такое впечатление создается из!за того, что ограждение террасы оказалось за автомоби! лем, а также из!за отсутствия тени, которая помогает ориентироваться в трехмер! ном пространстве.
540
Глава 11. Визуализация
Чтобы исправить положение, вам понадобится построить плоскость и согласовать ее положение в пространстве с положением автомобиля. Плоскость нужна для того, чтобы автомобиль отбрасывал на нее тень. Для ее построения выполните ко! манду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлос! кость) и расположите плоскость в окне проекции Top (Сверху) под моделью авто! мобиля. Назначьте плоскости материал Matte/Shadow (Матовое покрытие/тень) с установленным флажком Receive Shadows (Принимать тень) (рис. 11.12).
Рис. 11.12. Модель автомобиля с плоскостью на фоне растрового изображения
Теперь необходимо построить геометрический объект, соответствующий по фор! ме тем участкам растрового изображения, которые надо открыть на фото (пока они скрыты моделью автомобиля).
ВНИМАНИЕ ______________________________________________________________________ Если в качестве фона вы планируете использовать анимацию, то объекты, играющие роль масок, должны быть объемными копиями объектов на фотографии. В противном случае маскирование не будет использовано при повороте или движении камеры.
Все, о чем я буду говорить дальше, подходит только для статичных (неподвижных) сцен. Дальнейшее построение можно вести тремя способами.
Если форма маскирующего объекта, которую надо создать, несложная, ее мож! но строить прямо в окне вида из камеры.
Маскирование объектов
541
Если форма сложная, то необходимо вставить растровое изображение в каче! стве фона в окно проекции и, используя масштабирование, приблизить его настолько, чтобы было удобно работать с мелкими деталями. После создания такого объекта нужно уточнить его положение в пространстве относительно вида визуализации.
Можно создать сплайны в программах векторной графики (например, Adobe Illustrator или CorelDRAW) и импортировать их в 3ds Max.
Воспользуемся первым способом. В качестве объекта, маскирующего автомобиль, я использовал сплайны, к которым затем применил модификатор Edit Mesh (Редак! тирование поверхности). Чтобы ничто не мешало в работе, можно скрыть все ненужные в данное время объекты (автомобиль, плоскость, камеру и источники света). Для этого выделите все объекты сцены, щелкнув на кнопке Select by Name (Выделить по имени) . В появившемся окне Select From Scene (Выбор из сцены) нажмите кнопку Select All (Выделить все), а затем — OK. В свитке Hide (Спрятать) вкладки Display (Отобра! жение) щелкните на кнопке Hide Selected (Спрятать выделенное). Прежде чем приступить к построению сплайнов, очерчивающих форму деталей растрового изображения (в данном случае это ограждение террасы), нужно выпол! нить подготовительные действия. 1.
В окне проекции Front (Спереди) постройте объект сетки, выполнив команду CreateHelpersGrid (Соз! даниеВспомогательные объектыКоординат! ная сетка).
2.
Выделите созданный объект сетки в окне проек! ции вида из камеры и выполните команду Tools Align to View (ИнструментыВыровнять по окну проекции).
3.
В открывшемся окне Align to View (Выровнять по окну проекции) установите переключатель в по! ложение Align Z (Выровнять по оси Z) (рис. 11.13) и щелкните на кнопке OK для подтверждения при! нятых изменений.
4.
Для увеличения рабочей области при выделенном окне проекции вида из ка! меры щелкните на кнопке Maximize Viewport Toggle (Увеличение окна проекции до размеров экрана) в правом нижнем углу окна программы.
5.
Сделайте активной плоскость сетки. Для этого выделите объект сетки и вы! полните команду главного меню ViewsGridActivate Grid Object (ВидКоор! динатная сеткаАктивизировать объект сетки).
Рис. 11.13. Окно Align to View (Выровнять по окну проекции) с настройками для выравнивания сетки
После выполнения этих действий можно приступать к построению сплайнов. Я ис! пользовал объекты Rectangle (Прямоугольник), которые затем присоединил к одно! му объекту и к которым применил булевы операции для создания цельного сплайна.
542
Глава 11. Визуализация
ВНИМАНИЕ ______________________________________________________________________ Объект, который мы строим, должен находиться перед автомобилем, то есть в окне проекции вида из камеры он должен перекрывать автомобиль.
После редактирования сплайна необходимо применить к нему модификатор Edit Mesh (Редактирование поверхности), выполнив команду ModifiersMesh Editing Edit Mesh (МодификаторыРедактирование поверхностиРедактирование поверх! ности). В результате должен получиться полигональный объект, закрывающий огражде! ние террасы (рис. 11.14).
Рис. 11.14. Окно вида из камеры с полигональным объектом, построенным на объекте сетки
Теперь можно приступать к созданию и наложению на построенный объект мате! риала Matte/Shadow (Матовое покрытие/тень). 1.
Откройте окно Material Editor (Редактор материалов) и выберите ячейку со сво! бодным материалом.
2.
Щелкните на кнопке Standard (Стандартный).
3.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Matte/Shadow (Матовое покрытие/тень).
4.
В свитке Matte/Shadow Basic Parameters (Основные параметры матового покры! тия/тени) настройте параметры материала, как показано на рис. 11.15.
Осталось только открыть спрятанные ранее объекты и визуализировать вид из ка! меры. Для этого в свитке Hide (Спрятать) вкладки Display (Отображение) команд!
Маскирование объектов
543
Рис. 11.15. Свиток Matte/Shadow Basic Parameters (Основные параметры матового покрытия/тени) с настройками для объекта маскирования
ной панели щелкните на кнопке Unhide All (Показать все), а затем — на кнопке пане! ли инструментов Quick Render (Production) (Быстрая визуализация (итоговая)) . В результате должно получиться изображение, показанное на рис. 11.16.
Рис. 11.16. Окончательная визуализация автомобиля с использованием фонового изображения
ПРИМЕЧАНИЕ ___________________________________________________________________ Для просмотра и анализа выполненной работы вы можете загрузить готовую сцену mask_end.max из папки Examples\Глава 11\Mask прилагаемого к книге DVD.
544
Глава 11. Визуализация
Объекты в фокусе камеры Вы когда!нибудь задумывались над тем, почему иногда сцены, созданные в про! граммах трехмерного моделирования, выглядят неестественными? Объяснить это можно несколькими причинами — начиная от неверно выставленного освещения и заканчивая неправильным наложением текстур. В данном разделе я хочу затронуть такую тему, как глубина резкости и фокусное расстояние. Ни для кого не секрет, что, глядя на фотографию, экран телевизора или просто какие!либо предметы на улице или дома, мы не видим все одинаково четким. Это связано с особенностью строения глаза, устройством фотоаппарата и камеры. Однако, невзирая на такой очевидный факт, многие пренебрегают глу! биной резкости в своих работах. Разберемся, что такое глубина резкости и фокус! ное расстояние применительно к сценам в программе 3ds Max. На примере данного упражнения мы рассмотрим четыре подхода к решению этой задачи.
Использование размытия при помощи Video Post (Видеомонтаж).
Применение фильтра Depth of Field (Глубина резкости), который относится к Rendering Effects (Эффекты визуализации).
Альтернативный метод, который я однажды использовал для выполнения од! ного из рекламных проектов, связанных с оптикой. Его суть состоит в том, что! бы визуализировать последовательность кадров, изменяя положение камеры в пространстве (Target (Цель) камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга.
Применение возможностей настройки объекта камеры.
Сначала необходимо создать какую!нибудь сцену для последующей работы. Постройте на плоскости колоннаду из 15 колонн (рис. 11.17). Установите в сцене Target Camera (Направленная камера). Для этого выполните ко! манду CreateCamerasTarget Camera (СозданиеКамерыНаправленная камера) и в окне проекции Top (Сверху) постройте камеру, направленную на середину ко! лоннады. ПРИМЕЧАНИЕ ___________________________________________________________________ Сцену, подготовленную для данного задания, можно загрузить из файла focus_start.max, расположенного в папке Examples\Глава 11\ Focus прилагаемого к книге DVD.
По поводу создания камеры в сцене хотелось бы сделать небольшое отступление. Некоторые дизайнеры в 80 % случаев работают с перспективой, отодвигая роль ка! меры на задний план. Я абсолютно не согласен с таким мнением. Кроме того, что камера позволяет более гибко настраивать сцену, вид из камеры получается более естественным, не говоря уже о многих других положительных сторонах примене! ния камеры.
545
Объекты в фокусе камеры
Рис. 11.17. Окно проекции Perspective (Перспектива) со сценой урока
Итак, у нас есть сцена и камера. Обратите внимание, что я установил 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.
Рис. 11.18. Фрагмент окна Video Post (Видеомонтаж)
546
Глава 11. Визуализация
Дальнейшие действия заключаются в настройке параметров фильтра Lens Effects Focus (Эффекты линзы, фокусировка). 1.
В левой части окна Video Post (Видеомонтаж) щелкните дважды на строке Lens Effects Focus (Эффекты линзы, фокусировка).
2.
В открывшемся окне Edit Filter Event (Редактирование события фильтрации) щелкните на кнопке Setup (Настройка), чтобы открыть окно настроек фильт! ра Lens Effects Focus (Эффекты линзы, фокусировка).
3.
Чтобы увидеть в окне настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) вашу сцену, щелкните на кнопке VP Queue (Очередь видеомон! тажа), в результате чего она изменит цвет, а затем нажмите кнопку Preview (Просмотр). При этом в окно предварительного просмотра загрузится вид окна из камеры.
4.
Установите переключатель в левой части окна настроек фильтра Lens Effects Focus (Эффекты линзы, фокусировка) в положение Focal Node (Центр фокуси! ровки), что позволит выбрать объект, который будет являться центром фоку! сировки. При установке переключателя в положение Scene Blur (Размытие сце! ны) эффект размытия применяется ко всей сцене в целом, а в положение Radial Blur (Радиальное размытие) — размытие сцены происходит радиально, от цен! тра к ее краям.
5.
Чтобы указать объект, который будет все время оставаться в фокусе, щелкни! те на кнопке Select (Выбор) и в появившемся окне Select Focal Object (Выбор объекта фокусировки) выберите из списка колонну, находящуюся в центре (выделенную цветом) (Column22).
6.
Измените настройки следующих параметров (в окне просмотра, которое об! новляется автоматически, вы увидите сделанные изменения):
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 (Видеомонтаж).
Объекты в фокусе камеры
547
Рис. 11.19. Размытие сцены, выполненное в Video Post (Видеомонтаж)
ПРИМЕЧАНИЕ ___________________________________________________________________ Сцену, выполненную при помощи модуля Video Post (Видеомонтаж), можно загрузить из файла focus_v1.max, который находится в папке Examples\Глава 11\Focus прилага& емого к книге DVD.
Продолжим разбираться с глубиной резкости и фокусным расстоянием на приме! ре второго способа. Для размытия сцены сделайте следующее. 1.
Выполните команду RenderingEffects (ВизуализацияЭффекты).
2.
В открывшемся окне Environment and Effects (Окружающая среда и эффекты) щелкните на кнопке Add (Добавить).
3.
В появившемся окне Add Effect (Добавить эффект) выберите из списка Depth of Field (Глубина резкости) и щелкните на кнопке OK для подтверждения выбора.
После активизации фильтра станет доступным свиток Depth of Field Parameters (Па! раметры глубины резкости), который позволяет настраивать глубину резкости в сцене. Параметры фильтра Depth of Field (Эффект глубины резкости) во многом повторяют настройки Lens Effects Focus (Эффекты линзы, фокусировка), поэтому я остановлюсь только на некоторых из них.
Pick Cam. (Указать камеру) области Cameras (Камеры) позволяет выбрать одну или несколько камер непосредственно в окне проекции.
Если в области Focal Point (Точка фокусировки) переключатель установлен в положение Focal Node (Центр фокусировки), то можно выбрать объект для
548
Глава 11. Визуализация
центра фокусировки. Для этого необходимо нажать кнопку Pick Node (Указать центр фокусировки), а затем щелкнуть на объекте в любом из окон проекций. Если в области Focal Point (Точка фокусировки) переключатель установлен в положение Use Camera (Использовать камеру), то можно воспользоваться фо! кусным расстоянием камеры.
В области Focal Parameters (Параметры фокусировки) можно установить пере! ключатель в положение Use Camera (Использовать камеру), тогда характерис! тики глубины резкости (диапазон и пределы) будут определяться параметра! ми выбранной камеры.
Измените настройки и выполните визуализацию для просмотра результатов. В об! ласти Focal Parameters (Параметры фокусировки) я установил переключатель в по! ложение Use Camera (Использовать камеру) и увеличил значения параметров Horiz Focal Loss (Расфокусировка по горизонтали) и Vert Focal Loss (Расфокусировка по вертикали) до 20. На рис. 11.20 представлено изображение, получившееся у меня при визуализации.
Рис. 11.20. Сцена с использованными эффектами визуализации
ПРИМЕЧАНИЕ ___________________________________________________________________ Сцену, выполненную при помощи Environment and Effects (Окружающая среда и эф& фекты), можно загрузить из файла focus_v2.max, находящегося в папке Examples\ Глава 11\Focus прилагаемого к книге DVD.
Перейдем к описанию более сложного, но более правильного с физической точки зрения способа создания размытия.
Объекты в фокусе камеры
549
Два предыдущих способа хороши своей простотой, но они не совсем верно пере! дают эффект глубины резкости. В итоге размытие появляется там, где его не долж! но быть. По этой причине, когда мне понадобилось делать рекламный плакат, я стал искать альтернативу этим двум методам. Надо заметить, это было время, когда ра! бота велась во второй версии программы 3ds Max и еще не было глубины резкос! ти в настройках камеры, которая появилась только с выходом четвертой версии и решала аналогичные задачи на приемлемом уровне. Решение проблемы, как оказалось, лежало на поверхности: достаточно было поду! мать о физических свойствах и принципе работы фотоаппарата. Оно заключается в том, чтобы визуализировать последовательность кадров, изменяя положение ка! меры в пространстве (цель камеры при этом должна оставаться на месте), а затем собрать все кадры вместе, накладывая их друг на друга. Используя ту же сцену с камерой, построим дополнительный объект — окруж! ность. Для этого выполните команду CreateShapesCircle (СозданиеФор! мыОкружность). Радиус окружности должен быть небольшим (у меня он ра! вен 5), хотя сейчас это неважно — позже все равно нужно будет подбирать его под величину размытия. После создания сплайна расположите его так, чтобы камера оказалась внутри окружности, а сам сплайн стал перпендикулярен линии от каме! ры к ее цели. Выстраивать с абсолютной точностью, применяя дополнительные средства выравнивания, не нужно, достаточно воспользоваться инструментами трансформации Select and Move (Выделить и переместить) и Select and Rotate (Вы! делить и повернуть). В итоге должно получиться изображение, подобное показан! ному на рис. 11.21. Следующим шагом будет привязка каме! ры к сплайну. Для этого выделите ка! меру и выполните команду Animation ConstraintsPath Constraint (Анимация Ограничения Ограничение по пути). В окне проекции Front (Спереди) щелк! ните на окружности, выбрав ее в качестве сплайна пути. После этого камера смес! тится в начало сплайна. Щелкните в правом нижнем углу про! граммы на кнопке Play Animation (Воспро! изведение анимации) для просмотра Рис. 11.21. Окружность, выровненная анимации движения камеры. В окне вида относительно камеры из камеры вы можете проанализировать максимальное размытие, которое получится при применении этого способа. Я, про! смотрев анимацию, уменьшил радиус круга до 2,5 для получения более естествен! ного размытия. Здесь наблюдается прямая зависимость: чем больше смещение объектов в процессе выполнения анимации, тем сильнее будет их размытие в ито! говой сцене.
550
Глава 11. Визуализация
После того как вы определитесь с величиной размытия, можно приступать к визу! ализации. Для этого сделайте следующее. 1.
Выполните команду RenderingRender (ВизуализацияВизуализировать).
2.
В появившемся окне Render Scene (Визуализация сцены) установите переклю! чатель в положение Active Time Segment (Текущий промежуток времени), что! бы задействовать всю шкалу анимации.
3.
Для создания эффекта размытия достаточно 10 кадров, поэтому, если у вас шкала 100 кадров, задайте параметру Every Nth Frame (Каждый кадр под номе! ром) значение, равное 10.
СОВЕТ ___________________________________________________________________________ Если вам необходимо улучшить качество выходного изображения, увеличьте количе& ство визуализируемых кадров.
4.
В области Rånder Output (Результат визуализации) щелкните на кнопке Files (Файлы).
5.
В открывшемся окне Render Output File (Результирующий файл визуализации) укажите директорию на диске, где будут сохраняться кадры, а также тип файла.
6.
Щелкните на кнопке Render (Визуализировать) для начала визуализации и со! хранения последовательности кадров.
Для этого способа создания размытия вся работа в программе 3ds Max закончена. Осталось только собрать все визуализированные кадры. Для этого я воспользовал! ся программой Adobe Photoshop (вы же можете применить любое другое прило! жение для редактирования растровых изображений). После загрузки всех 10 кадров в Adobe Photoshop надо выбрать любой кадр (файл) и перенести на него изображения с девяти оставшихся. Для этого активизируйте инструмент Move (Перемещение) на панели инструментов и, удерживая нажатой клавишу Shift (что обеспечит полное совпадение слоев), перетаскивайте изображения на выбранный файл. В результате получится изображение, состоящее из 10 слоев. После этого каждому слою, исключая нижний, задайте значение параметра Opacity (Непрозрачность) равным 35 % (подбирается опытным путем). Затем сохраните все как один файл (рис. 11.22). ПРИМЕЧАНИЕ ___________________________________________________________________ Сцену, созданную при помощи альтернативного способа, можно загрузить из файла focus_v3.max, который находится в папке Examples\Глава 11\Focus прилагаемого к книге DVD.
Если сравнить данный способ с предыдущими, то можно отметить несравненно лучший результат. В последних версиях программы 3ds Max добиться такого же результата можно значительно более простым способом. Все то, что с таким тру!
Объекты в фокусе камеры
551
дом мы проделывали в предыдущем методе, нашло свое отражение в свитке Depth of Field Parameters (Параметры глубины резкости) настроек камеры. Рассмотрим подробнее эти возможности.
Рис. 11.22. Эффект глубины резкости, выполненный альтернативным способом
Обратимся к области Multi-Pass Åffect (Многопроходный эффект) свитка 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 (Использование первичного положения) — определяет, что проходы будут начинаться с первоначального положения камеры;
1
Чтобы визуализировать один кадр, визуализатор выполняет серию проходов, то есть промежуточных визуализаций со сдвигом камеры по кругу, «складывая» их в одном кадре (полупрозрачные изображения наслаиваются друг на друга, и там, где изображе! ния не совпадают, появляется размытие).
552
Глава 11. Визуализация
Total Passes (Общее количество проходов) — указывает количество проходов для генерации эффекта;
Sample Radius (Радиус выборки) — сдвигает сцену на указанное значение при создании размытия (увеличение этого значения ведет к усилению эффекта);
Sample Bias (Смещение выборки) — смещает действие эффекта (размытия) к началу или к концу проходов (по умолчанию находится посередине).
В области 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 (Глубина резкости)
553
Работаем с Video Post (Видеомонтаж)
ПРИМЕЧАНИЕ ___________________________________________________________________ Сцену, использующую настройки свитка 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), а также три направленные ка! меры. Их расположение в сцене может быть произвольным. После построения объектов в сцене не! обходимо анимировать положение камер в пространстве. Это нужно для последую! щего построения переходов между аними! рованными камерами в модуле Video Post (Видеомонтаж). Для анимации камер вы! полните следующие действия.
Рис. 11.24. Сцена, состоящая из примитивов Teapot (Чайник) и Plane (Плоскость)
1.
В окне проекции Top (Сверху) выделите одну из трех камер.
2.
Передвиньте ползунок таймера анимации в конец шкалы.
3.
Щелкните на кнопке Auto Key (Автоключ) для активизации автоматического создания ключевых кадров.
4.
При помощи инструмента Select and Move (Выделить и переместить) передвинь! те камеру в пределах видимости чайника.
554
Глава 11. Визуализация
5.
Выделите последовательно вторую и третью камеры и сделайте то же самое по отношению к ним.
6.
Щелкните на кнопке Auto Key (Автоключ) для остановки создания ключевых кадров анимации.
Дальнейшие действия будут проводиться в окне Video Post (Видеомонтаж), для вызова которого выполните команду RenderingVideo Post (ВизуализацияВидео! монтаж). Окно Video Post (Видеомонтаж) разделено на две части: слева — область Queue (Очередь), справа — область Edit (Редактирование). В области очереди событий видеомонтажа (Queue (Очередь)) формируется список элементов анимации. Фор! матирование может происходить двумя способами.
Последовательно, когда события выполняются по очереди сверху вниз. Обыч! но это: событие!сцена, событие!фильтр и событие вывода изображения.
Иерархически. При таком способе последовательность выполнения задается иерархией событий очереди — от дочерних к родительским.
Окно редактирования позволяет управлять шкалой времени для каждого события. Любая шкала имеет на концах маркеры, передвигая которые, можно изменять диа! пазон времени. В верхней части окна расположена панель инструментов. Перейдем к выполнению задания. Добавьте в очередь события!сцены. Для этого сделайте следующее. , располо!
1.
Щелкните на кнопке Add Scene Event (Добавить событие!сцену) женной на панели инструментов.
2.
В появившемся окне Add Scene Event (Добавить событие!сцену) выберите из раскрывающегося списка в области View (Проекция) окно проекции вида из первой камеры.
3.
Щелкните на кнопке OK для подтверждения выбора.
4.
Повторите те же действия для двух других камер (рис. 11.25).
Рис. 11.25. Окно Video Post (Видеомонтаж) после добавления событий&сцен
Работаем с Video Post (Видеомонтаж)
555
После добавления в очередь видов из трех камер они будут занимать временной интервал, определенный по умолчанию (обычно 100 кадров), от начала и до кон! ца. Нам необходимо указать временные диапазоны для визуализации видов из камеры. В зависимости от того, как изменяется положение камер в пространстве, выделите последовательность воспроизведения анимации для каждой камеры с таким расчетом, что две соседние в последовательности камеры должны иметь по 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 (Добавить событие композиции изображений).
556
Глава 11. Визуализация
7.
В появившемся окне Add Image Layer Event (Добавить событие композиции изображений) выберите из раскрывающегося списка событий строку Cross Fade Transition (Микширование наплывом).
8.
Щелкните на кнопке OK для подтверждения выбора.
9.
В области Queue (Очередь) выделите Cross Fade Transition (Микширование на! плывом) и третью камеру.
10.
Повторите вышеописанные действия по добавлению перехода Add Image Layer Event (Добавить событие композиции изображений) для второй и третьей ка! мер.
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. Моделирование головы
558
Часть 3. Усложненное моделирование
Для выполнения заданий, содержащихся в данной части книги, вам необходимо обладать запасом знаний начального уровня, которые вы приобрели, изучая раз делы предыдущих частей. Задания глав третьей части книги сложны для изучения, но вместе с тем наиболее интересны, например с точки зрения моделирования и конечного результата. В разделах этой части рассмотрены разработка и текстурирование модели автомоби ля, а также два способа моделирования головы со средним уровнем детализации.
Глава 12
Моделирование автомобиля • Виртуальная студия — начало всех начал • Создание автомобильного диска при помощи NURBS.моделирования • Моделирование колеса автомобиля при помощи полигонов • Моделируем BMW
560
Глава 12. Моделирование автомобиля
Моделирование автомобиля является одной из самых интересных задач, которые могут стоять перед пользователем программы 3ds Max. В то же время эта задача достаточно сложна для неискушенных в моделировании людей, поэтому к изуче нию упражнений этой главы рекомендуется приступать, предварительно ознако мившись с главой, посвященной моделированию более простых объектов. Моде лирование автомобиля описано максимально подробно и сведено к выполнению несложных операций, однако конечный результат зависит от того, насколько раз вито у пользователя чувство объема и пространства. Ему можно научиться, лишь выполняя реальные работы. Упражнения этой главы построены так, что в результате их последовательного выполнения вы смоделируете автомобиль BMW пятой серии.
Виртуальная студия — начало всех начал Без преувеличения можно сказать, что с виртуальной студии начинаются многие глобальные проекты, а уж о моделировании техники и персонажей говорить не приходится. Мне известны как минимум три способа создания виртуальной студии для после дующего моделирования объектов сложной геометрической формы. Попробуем разобраться в достоинствах и недостатках каждого из этих способов. Все начинается с подготовки рисунков для виртуальной студии. Их можно найти как в Интернете, так и в печатных изданиях. Я использовал каталог баварской фирмы BMW. Такой способ имеет преимущество перед поиском изображения в Интернете: можно отсканировать рисунок с достаточно высоким разрешением. Перед использованием в редакторе трехмерной графики изображение необходи мо отредактировать. Этот процесс одинаков для всех изображений, независимо от того, каким образом в дальнейшем они будут применяться. Для моделирования автомобиля нам понадобится как минимум три вида: сбоку, спереди и сзади. Конечно, желательно также иметь и вид сверху, но в крайнем случае можно обойтись и без него. В рассмотренном далее примере использованы материалы, которые я собрал для моделирования автомобиля марки BMW, вы можете работать с любым другим изображением, главное — принцип его подго товки. Для редактирования сканированных изображений нам понадобится любая про грамма для работы с растровой графикой, например Adobe Photoshop. На рис. 12.1 представлено изображение автомобиля марки BMW пятой серии, с которым я буду работать. Первое, что нужно сделать, — выровнять изображения (обычно в одном файле представлено несколько видов машины) по горизонтали и вертикали. Затем сле дует сделать фон изображения светлосерым. Это нужно для того, чтобы при последующей работе в 3ds Max с подобъектами белого цвета они не сливались с фоном изображения. После этого нужно расставить направляющие так, чтобы
561
Виртуальная студия — начало всех начал
Рис. 12.1. Исходное изображение автомобиля BMW в нескольких видах
они прошли по габаритам автомобиля — это в дальнейшем поможет разрезать изображение на нужные части. Чтобы затемнить фон изображения и расставить направляющие, сделайте следующее. 1.
Выполните команду ImageAdjustmentsBrightness/Contrast (Изображение КорректировкаЯркость/контрастность), в результате чего откроется окно диалога Brightness/Contrast (Яркость/контрастность).
2.
Параметру Brightness (Яркость) задай те значение –40 (рис. 12.2).
3.
Если в окне программы Adobe Photo shop отсутствуют линейки в верхней и левой частях окна, то откройте их с помощью сочетания клавиш Ctrl+R.
4.
Для создания горизонтальной направ ляющей щелкните кнопкой мыши на верхней линейке и, удерживая кнопку нажатой, перетащите направляющую на место изображения, обозначающее габариты автомобиля.
5.
Рис. 12.2. Окно Brightness/Contrast (Яркость/контрастность) программы Adobe Photoshop
Для создания вертикальной направляющей нужно щелкнуть на линейке в ле вой части окна и перетащить указатель на изображение.
Положение направляющих показано на рис. 12.3. Теперь нужно проверить размеры видов спереди и сзади — они должны быть рав ны по ширине и высоте. Сделать это довольно просто: достаточно с помощью инструмента выделения , расположенного на палитре инструментов, обвести
562
Глава 12. Моделирование автомобиля
прямоугольник, образованный направляющими, ограничивающими вид автомо биля спереди, и посмотреть размеры в окне Info (Информация) (рис. 12.4), затем то же сделать с видом машины сзади.
Рис. 12.3. Положение направляющих на изображении
Если размеры различаются, то нужно их подкорректировать. То же самое делает ся по отношению к видам сбоку и сверху (такого рода сравнение и корректировку можно сделать, используя прозрачные слои). Далее все очень просто: изображение необходимо разрезать на части и сохранить на диске. Для этой цели вы можете воспользоваться инструментом Crop (Обрезка). На рис. 12.5 показан результат выполнения описанных выше операций. Конечно, эту работу можно проделать в других программах другим способом. Главное, чтобы в итоге вы получили отдельные изображения проекций автомоби ля, сопоставимых по размерам.
ПРИМЕЧАНИЕ ___________________________________________________________________ Почти все, изложенное выше, можно выполнить и в окне Material Editor (Редактор ма@ териалов) программы 3ds Max: загрузить изображение в качестве карты Diffuse Color (Цвет рассеивания), затем, используя область Cropping/Placement (Обрезка/разме@ щение) настроек карты, вырезать только ту часть изображения, которая нужна для на@ ложения на плоскость в качестве текстуры.
Не забывайте, что при сохранении изображений предпочтительно давать им зна чимые имена, чтобы потом не путаться. Изображения такого рода я сохраняю в фор мате PNG, так как он обеспечивает максимальное качество при минимальном раз мере.
Виртуальная студия — начало всех начал
Рис. 12.4. Окно Info (Информация) с размерами выделенного фрагмента
563
Рис. 12.5. Проекции автомобиля, отредактированные в программе Adobe Photoshop
На этом работу с программой редактирования растровой графики можно считать законченной. Переходим к 3ds Max.
ПРИМЕЧАНИЕ ___________________________________________________________________ При желании вы можете воспользоваться материалами, находящимися на прилагае@ мом DVD в папке Examples\Глава 12\Car blueprint.
Первый способ построения студии Первая и самая простая виртуальная студия — это когда в качестве фонового изо бражения в окнах проекций соответствующие проекции автомобиля используют ся следующим образом. 1.
Выполните команду ViewsViewport Background (ВидФон окна проекции), в результате чего откроется окно диалога Viewport Background (Фон окна про екции).
2.
В области Background Source (Источник фона) щелкните на кнопке Files (Фай лы), появится окно Select Background Image (Выбор изображения фона).
3.
Укажите путь к файлу, который будет служить изображением фона (напри мер, вид автомобиля сверху).
4.
Установите переключатель Aspect Ratio (Пропорции) в положение Match Bitmap (По изображению).
5.
Установите флажки Display Background (Показать фон) и Lock Zoom/Pan (Согла совать масштаб/прокрутку).
564
Глава 12. Моделирование автомобиля
6.
В качестве окна проекции, в котором должен отображаться фон, выберите из раскрывающегося списка Viewport (Окно проекции) значение Top (Сверху), то есть окно вида сверху.
7.
Закончив настройку, щелкните на кнопке OK.
8.
Повторите вышеописанные действия для окна проекции фронтального и бо кового видов (рис. 12.6).
Рис. 12.6. Виртуальная студия, размещенная в окнах проекций
Чтобы выровнять изображения в окнах проекций относительно друг друга, необхо димо снять флажок Lock Zoom/Pan (Согласовать масштаб/прокрутку) в окне Viewport Background (Фон окна проекции) для окна проекции Front (Спереди) (в нашем слу чае там оно больше, чем нужно) и изменить масштаб изображения. СОВЕТ ___________________________________________________________________________ Управлять привязкой объекта к фоновому изображению проще всего, используя со@ четания клавиш (по умолчанию Ctrl+Alt+B).
Достоинством этого способа является то, что в сцене нет дополнительной геометрии, а также то, что такую студию относительно легко создать. Пожалуй, на этом все достоинства заканчиваются. Недостатков больше. Кроме того, что изображения после их загрузки необходимо приводить к общим размерам, в процессе работы они деформируются или смещаются. К тому же в окна можно загрузить только три изо бражения (окно перспективы не считается — оно необходимо для работы с геометри ей и общего контроля), а изображений, которые могут быть использованы, — шесть.
565
Виртуальная студия — начало всех начал
Таким образом, это не самый лучший метод, поэтому не рекомендую его для серь езной работы.
Второй способ построения студии Второй способ создания виртуальной студии — это построение пересекающихся (крестообразный способ) (рис. 12.7, сверху) или примыкающих друг к другу (Гобраз ный способ) (рис. 12.7, снизу) объектов Plane (Плоскость). Эти два способа очень похожи, поэтому я выделил их в одну категорию. Как видите, здесь присутствуют примитивы Plane (Плоскость), размеры которых соответствуют изображениям (или реальным размерам объекта). Создадим реаль ную студию на основе подготовленных изображений для нашего автомобиля. Сначала обратимся к размерам автомобиля: они присутствуют на чертеже. Это по может нам при моделировании (всегда проще оперировать реальными размерами). Итак, высота машины — 1435 мм, ширина — 1981 мм, а длина — 4775 мм. Исходя из этих размеров построим три примитива Plane (Плоскость) следующим образом. 1.
Щелкните в окне проекции Front (Спереди) для активизации окна.
2.
Выполните команду CreateStandard PrimitivesPlane (СозданиеПростые примитивыПлоскость), в результате чего в правой части окна программы откроется вкладка Create (Создание) с активной панелью создания плоскости.
3.
В свитке Keyboard Entry (Ввод с клавиатуры) задайте параметру Length (Дли на) значение, равное 1435, а Width (Ширина) — 1981 (рис. 12.8).
4.
Щелкните на кнопке Create (Создать) для завершения построения плоскости.
Рис. 12.7. Два варианта виртуальной студии с использованием плоскостей: крестообразный (сверху) и Г@образный (снизу)
Рис. 12.8. Свиток Keyboard Entry (Ввод с клавиатуры) с размерами плоскости для фронтального вида
566
Глава 12. Моделирование автомобиля
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 (Растровое изображение).
Рис. 12.9. Свиток материала Blinn Basic Parameters (Базовые параметры раскраски по Блинну) с настройками для материала виртуальной студии
4.
В появившемся окне Select Bitmap Image File (Выбор растрового изобра жения) укажите путь к файлу изобра жения автомобиля сверху и щелкните на кнопке Îòêðûòü для завершения выбора файла.
5.
Нажмите кнопку Go to Parent (Вер нуться к исходному).
6.
В поле области Self-Illumination (Соб ственное свечение) свитка материала Blinn Basic Parameters (Базовые пара метры раскраски по Блинну) укажи те значение, равное 100, что позволит более четко отобразить текстуру на плоскости (рис. 12.9).
567
Виртуальная студия — начало всех начал
7.
Щелкните на материале кнопкой мыши и, удерживая ее нажатой, перетащите на плоскость в окне проекции, предназначенную для текстуры вида автомоби ля сверху. После того как вы отпустите кнопку, плоскости будет присвоен ра нее созданный материал.
8.
На панели инструментов окна Material Editor (Редактор материалов) щелкните на кнопке Show Map in Viewport (Показать карту текстуры в окне проекции) , чтобы увидеть текстуру, присвоенную плоскости.
Вполне возможно, что после присвоения плоскости созданного вами материала текстура окажется повернутой относительно оси плоскости (рис. 12.10).
Рис. 12.10. Плоскость с развернутым изображением автомобиля на виде сверху
Чтобы исправить положение текстуры на плоскости, в свитке Maps (Карты текстур) окна Material Editor (Редактор материалов) щелкните на кнопке рядом с Diffuse Color (Цвет рассеивания) — откроются поля настроек карты цвета рассеивания. В свитке Coordinates (Координаты) введите значение Angle (Угол) поля поворота по оси W, рав ное 90 (у вас это может быть ось V или U) (рис. 12.11). Для присвоения материала двум другим плос костям выполните аналогичные действия с той разницей, что для каждой плоскости должна выбираться своя растровая текстура и размещение ее — контролироваться сообраз но положению остальных. На видах сбоку и сверху передняя часть автомобиля должна
Рис. 12.11. Свиток Coordinates (Координаты) со значением угла поворота по оси W, равным 90
568
Глава 12. Моделирование автомобиля
быть направлена в одну сторону. Для построения плоскости вида автомобиля сза ди выполните следующие действия. 1.
Удерживая нажатой клавишу Shift, щелкните на плоскости с текстурной кар той автомобиля вида спереди и сдвиньте ее на небольшое расстояние по оси X. В результате откроется окно Clone Options (Параметры клонирования).
2.
Выберите в качестве способа копирования Copy (Независимая копия объекта) и щелкните на кнопке OK.
3.
Создайте новый материал с текстурной картой автомобиля вида сзади и при свойте его вновь созданной плоскости (рис. 12.12).
Рис. 12.12. Виртуальная студия, построенная из пересекающихся плоскостей
Для окончания работы с виртуальной студией выполните следующие действия. 1.
Щелкните правой кнопкой мыши на имени окна проекции Perspective (Пер спектива). Появится меню окна проекции. Щелкните в нем на пункте Configure (Конфигурировать) — появится окно Viewport Configuration (Конфигурирова ние окна проекции).
2.
В области Rendering Options (Параметры визуализации) установите флажок Force 2-Sided (Изображать обе стороны) и щелкните на кнопке OK.
3.
Выделите все три плоскости. В окне проекции щелкните вне объектов сцены и, удерживая нажатой кнопку мыши, перетащите указатель по диагонали че рез объекты, создавая таким образом область выделения.
4.
Щелкните на выделении правой кнопкой мыши. Появится контекстное меню, в котором выберите пункт Object Properties (Свойства объекта).
Виртуальная студия — начало всех начал
569
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 (МодификаторыРедактирова ние поверхностиНормаль). Установите в его настройках флажок Flip Normals (Обратить нормали), в результате чего будет построена геометрия студии (рис. 12.13).
570
Глава 12. Моделирование автомобиля
Рис. 12.13. Параметрический объект — параллелепипед с перевернутыми нормалями
ПРИМЕЧАНИЕ ___________________________________________________________________ Если при установке флажка Flip Normals (Обратить нормали) вы не видите внутренних полигонов параллелепипеда, выполните следующие действия: в свитке Display Pro@ командной пане@ perties (Свойства отображения) вкладки Display (Отображение) ли установите флажок Backface Cull (Выбрать невидимую поверхность).
Не лишним будет после построения параллелепипеда заблокировать его от слу чайного смещения (как это делается, рассмотрено выше на примере второго вари анта студии). Теперь можно переходить к наложению текстур на плоскости параллелепипеда. Для этого сделайте следующее. 1.
Откройте окно Material Editor (Редактор материалов) и выберите любую сво бодную ячейку образца.
2.
Щелкните на кнопке Standard (Стандартный). В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка Multi/Sub-Object (Многокомпонентный). Щелкните на кнопке OK для подтверждения выбора.
3.
В свитке Multi/Sub-Object Basic Parameters (Основные параметры многокомпо нентного материала) нажмите кнопку Set Number (Установить количество) и задайте количество материалов равным количеству плоскостей параллеле пипеда, то есть шести.
4.
Назначьте материалам различные цвета, чтобы увидеть, какой плоскости бу дет соответствовать тот или иной материал (рис. 12.14).
5.
Для присвоения материала параллелепипеду перетащите образец материала из ячейки на объект в окне проекции.
571
Виртуальная студия — начало всех начал
В окне проекции стороны параллелепипеда окрасятся в цвета, соответствующие ранее созданному материалу. Все это делалось только с одной целью — идентифицировать стороны параллелепипеда, чтобы знать, ка кой стороне какой материал соответствует. Далее мы будем работать с окном диалога Asset Browser (Окно просмотра ресурсов), для вызова которого перейдите на вклад ку Utilities (Утилиты) командной панели и щелкните на кнопке Asset Browser (Окно просмотра ресурсов). В левой части окна Asset Browser (Окно просмотра ресурсов) укажите путь к фай лам видов автомобиля. В правой части появятся значки с изображением этих ви дов (рис. 12.15).
Рис. 12.14. Свиток Multi/Sub@Object Basic Parameters (Основные параметры многокомпонентного материала)
Рис. 12.15. Окно Asset Browser (Окно просмотра ресурсов)
Сейчас вам пригодятся разноцветные материалы, которые создавались ранее, чтобы знать, какую текстуру на какую сторону параллелепипеда накладывать. Делается это просто: нужно мышью перетащить текстуру из окна Asset Browser (Окно про смотра ресурсов) на соответствующую кнопку материала Multi/Sub-Object (Мно гокомпонентный) в свитке Multi/Sub-Object Basic Parameters (Основные парамет ры многокомпонентного материала) окна Material Editor (Редактор материалов).
572
Глава 12. Моделирование автомобиля
Например, если у вас нижняя часть параллелепипеда зеленого цвета, то и тексту ра вида сверху предназначается для материала с зеленым цветом. Конечно, есть возможность накладывать текстуры и традиционным способом — непосредственно из окна Material Editor (Редактор материалов), но мне кажется, так проще. Если после присвоения материалу текстур вы не видите их на параллелепипеде в окнах проекций, то щелкните на кнопке Show Map in Viewport (Отобразить карту . После этого внимательно оцените расположение текстур на па в окне проекции) раллелепипеде — скорее всего, не все текстурные карты будут размещены на плос костях так, как нам необходимо. У меня некорректно отобразился вид сверху и одна сторона (рис. 12.16).
Рис. 12.16. Виртуальная студия с присвоенными текстурными картами по умолчанию
Это легко исправить — достаточно изменить координаты наложения текстуры. Как это сделать, рассматривалось выше на примере второго способа построения студии. Напомню лишь, что это делается в свитке Coordinates (Координаты) с по мощью параметра Angle (Угол). У меня для текстуры вида сбоку понадобилось изменить величину угла V на 180, а для вида сверху — W на 90 (рис. 12.17). Этот вариант, на мой взгляд, лучший из тех, которые мы рассмотрели. У него нет явных недостатков, с ним легко работать, и такая студия максимально удобна для моделирования. Наконец, последняя деталь в создании студии, но далеко не последняя по значи мости. Чтобы текстурные карты в окнах проекций выглядели с максимальным
Виртуальная студия — начало всех начал
573
Рис. 12.17. Окончательный вид виртуальной студии
качеством, нужно изменить настройки отображения в окнах проекций. Для это го сделайте следующее. 1.
Выполните команду CustomizePreferences (НастройкаПараметры).
2.
В открывшемся окне Preference Settings (Параметры установок) перейдите на вкладку Viewports (Окна проекций), щелкните на кнопке Configure Driver (Настро ить драйвер) (в моем случае это OpenGL), после чего откроется окно диалога Configure (Конфи гурировать).
3.
Установите флажки Match Bitmap Size as Closely as Possible (По изо бражению насколько возможно точно) (рис. 12.18).
Рис. 12.18. Параметры настройки драйвера отображения
На этом упражнение по созданию виртуальной студии можно считать законченным. ПРИМЕЧАНИЕ ___________________________________________________________________ На прилагаемом DVD в папке Examples\Глава 12\Studio находится описанный вариант виртуальной студии studio_v3.max.
574
Глава 12. Моделирование автомобиля
Создание автомобильного диска при помощи NURBS.моделирования Работать в 3ds Max, используя технологию NURBS, непросто. Не потому, что это сложная для освоения часть программы, — просто не без основания считается, что 3ds Max не совсем корректно работает с данной технологией. Должен заметить, что некоторые объекты все же легче и быстрее смоделировать именно так, нежели при помощи сплайнов, сеток или полигонов, причем выглядеть при визуализации они будут ничуть не хуже, а порой даже лучше. Как обычно, для работы вам понадобится фотография, карандашный набросок или воображаемая модель объекта, который предстоит моделировать. Прежде чем на чинать моделирование, вы должны представлять себе то, что должно получиться в конце работы. В настоящем задании мы будем моделировать диск автомобиля Koenigsegg CC (рис. 12.19). Моделировать данный диск при помощи сплайнов или полигонов достаточно за труднительно, а используя NURBS, можно построить его без особого труда. Форма диска сама подсказывает путь, по которому лучше идти. В основу можно положить объект, сделанный при помощи модификатора вращения, а затем про резать в нем отверстия. Пользователям, знакомым с основами моделирования, по кажется логичным построить кривую формы вращения традиционным способом при помощи сплайна, а затем преобразовать его в NURBSкривую. Не торопитесь так поступать. За этим, казалось бы, правильным решением могут скрываться «подводные камни», которые нужно научиться обходить для успешной работы. На рис. 12.20 представлены три NURBSкривые, выполненные различными спосо бами и имеющие в основе построения шесть точек с одинаковыми координатами.
Рис. 12.19. Фотография автомобильного Рис. 12.20. Три NURBS@кривые, выполненные диска, предназначенного для моделирования различными способами
Первая кривая была создана при помощи стандартного метода построения сплай нов. Чтобы сделать такую кривую, выполните команду CreateShapesLine (Со зданиеФормыЛиния), а затем преобразуйте ее в NURBSкривую, щелкнув правой кнопкой мыши на сплайне и выбрав в контекстном меню Convert ToConvert to NURBS (ПреобразоватьПреобразовать в NURBS). В результате вы получите
Создание автомобильного диска при помощи NURBS@моделирования
575
NURBSкривую, имеющую избыточное количество контрольных точек. Кроме того, кривая состоит из отдельных, ограниченных фиолетовыми точками, отрез ков. Они образовались в местах расположения угловых вершин (типа Corner (Угол)). Если вы сейчас попробуете применить к этой кривой команду Create Lathe Surfañe (Создать поверхность вращением) из области 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). При необходимости подкорректируйте геометрию. Выберите в стеке модификато ров строку Line (Линия) и уточните местоположение точек или сегментов кривой в пространстве. После того как основная геометрия выверена, можно приступать к построению окружности, которая в дальнейшем послужит формой для вырезания отверстий в диске. Для этого сделайте следующее. 1.
Выполните команду CreateShapesCircle (СозданиеФормыОкружность) и постройте окружность в окне проекции Front (Спереди) перед диском (про контролируйте результат в окне проекции Top (Сверху)).
576
Рис. 12.21. Кривая формы вращения для построения автомобильного диска
Глава 12. Моделирование автомобиля
Рис. 12.22. Заготовка для автомобильного диска, полученная методом вращения сплайна формы
2.
Преобразуйте окружность в Editable Spline (Редактируемый сплайн), для чего щелкните на ней правой кнопкой мыши и в появившемся контекстном меню выберите Convert ToConvert to Editable Spline (ПреобразоватьПреобразовать в редактируемый сплайн).
3.
Выделите нижнюю вершину окружности, а затем передвиньте ее немного вниз (рис. 12.23).
Дальнейшее построение будет связано с созданием копий окружности. Чтобы сде лать копии окружности и расположить их внутри диска по кругу, необходимо пе реместить в его центр точку вращения сплайна. Для этого выполните следующее. 1.
Выделите окружность и перейдите на вкладку Hierarchy (Иерархия) мандной панели.
2.
В свитке Adjust Pivot (Настройка опоры) щелкните на кнопке Affect Pivot Only (Только опора), в результате чего появится возможность редактировать поло жение опорной точки в пространстве.
3.
Переместите опорную точку так, чтобы она заняла положение в центре диска (рис. 12.24).
Рис. 12.23. Положение и форма окружности относительно диска
Рис. 12.24. Положение опорной точки окружности в пространстве
ко
Создание автомобильного диска при помощи NURBS@моделирования
4.
577
Еще раз щелкните на кнопке Affect Pivot Only (Только опора) для отмены ре жима редактирования опорной точки.
Теперь все готово для копирования окружностей. Лучше и проще воспользовать ся для этих целей инструментом Array (Массив). Для этого сделайте следующее. 1.
Выделите окружность в окне проекции Front (Спереди).
2.
Выполните команду ToolsArray (ИнструментыМассив).
3.
В открывшемся окне Array (Массив) задайте угол поворота, количество объек тов копирования и способ копирования, как показано на рис. 12.25.
Рис. 12.25. Окно Array (Массив) с настройками копирования окружности
4.
Щелкните на кнопке OK для подтверждения выполненных изменений.
В результате вы получите пять окружностей, расположенных по кругу. Теперь нужно сделать небольшую, но очень важную операцию с группой окружностей. Выделите все окружности и поверните их вокруг точки вращения так, чтобы ни одна из окружностей не пересекала сплайн, который является контуром для объек та вращения диска. В вашем случае он расположен горизонтально справа от цент ра в месте построения формы вращения. ПРИМЕЧАНИЕ ___________________________________________________________________ В этом месте диск имеет шов (фактически мы его не видим). При проецировании сплайнов на поверхность диска шов разделит проекцию попавшей на него окружнос@ ти на два независимых сплайна. Это в дальнейшем может не только затруднить рабо@ ту, но в некоторых случаях сделать ее невозможной.
На рис. 12.26 показано окно проекции Front (Спереди) после поворота сплай нов.
578
Глава 12. Моделирование автомобиля ПРИМЕЧАНИЕ ___________________________ При желании вы можете загрузить из папки Examples\Глава 12\NURBS_disk прилагаемо@ го DVD сцену disk_start.max с построенны@ ми окружностями и диском и начать работу с этого места.
Для дальнейшей работы необходимо преоб разовать диск в объект NURBSповерхность. Для этого щелкните на диске правой кноп кой мыши и в появившемся контекстном меню выберите Convert ToConvert to NURBS Рис. 12.26. Окончательное положение окружностей относительно диска (ПреобразоватьПреобразовать в 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. Диск с прорезанным отверстием
579
Рис. 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@кривую)
580
Глава 12. Моделирование автомобиля
будут являться контуром будущей поверхности. Напомню последовательность действий. 1.
В окне проекции Front (Спереди) постройте окружность, по положению и раз мерам равную одному из отверстий.
2.
Преобразуйте ее в Editable Spline (Редактируемый сплайн).
3.
Отредактируйте положение сплайна и его вершин так, чтобы он находился позади передней поверхности диска, а в окне проекции Top (Сверху) был изо гнут внутрь (рис. 12.31).
Рис. 12.31. Положение и форма отредактированной окружности для построения глубины отверстий диска
После построения и редактирования положения внутренней окружности в про странстве копируйте ее при помощи команды Array (Массив), предварительно выставив ось вращения в середину диска. Как это делается, было рассмотрено выше на примере внешних окружностей. Сейчас вновь созданные окружности необходимо присоединить к диску при по мощи команды Attach (Присоединить). Подобная операция уже была описана, по этому не буду повторяться. После того как вы присоедините построенные окруж ности к диску, можно придать толщину отверстиям следующим образом. 1.
В свитке General (Общие) щелкните на кнопке NURBS Creation Toolbox (Ин струменты создания NURBSобъектов) для вызова плавающей палит ры NURBS с инструментами создания кривых и поверхностей.
Создание автомобильного диска при помощи NURBS@моделирования
581
2.
На палитре NURBS нажмите кнопку Create U Loft Surface (Создать поверхность методом Uлофтинга) , в результате чего кнопка изменит цвет.
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, в результате чего кнопка изменит цвет.
582
Глава 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поверхность. После этого я создал форму вращения (CreateNURBS CV Curve (СозданиеNURBSCVкривая)) и применил к ней команду Create Lathe Surface (Создать поверхность вращением) плавающей панели NURBS. В ре зультате получилась поверхность, закрывающая гайку сверху (рис. 12.36). Далее я спроецировал сплайн NGon (Шестиугольник) на поверхность крышки и обрезал лишние части. Затем, применив команду Attach (Присоединить), объ
Моделирование колеса автомобиля при помощи полигонов
583
единил две поверхности в одну и добавил фаску, щелкнув на кнопке 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 (Создание) командной панели.
2.
В свитке Keyboard Entry (Ввод с клавиатуры) введите значения: Inner Radius (Внутренний радиус) — 196, Outer Radius (Внешний радиус) — 220, Height (Вы сота) — 140.
584
Глава 12. Моделирование автомобиля
Рис. 12.38. Фотография автомобильного диска, взятого в качестве образца для моделирования
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 (ПреобразоватьПре образовать в редактируемую полигональную поверхность). Дальнейшие преобразования будут проходить на уровне подобъектов. Начните с уточнения положения внутренних рядов вершин. Для этого выполните следую щие действия. 1.
Перейдите на уровень редактирования вершин, для чего при выделенном объекте щелкните на кнопке Vertex (Вершина) свитка Selection (Выделе ние) или нажмите 1 на клавиатуре.
Моделирование колеса автомобиля при помощи полигонов
585
2.
В окне проекции Left (Слева) выделите четыре внутренних ряда вершин и при мените к ним команду Select and Uniform Scale (Выделить и равномерно мас штабировать), для чего щелкните на одноименной кнопке на панели ин струментов.
3.
Масштабируйте вершины по оси X так, как показано на рис. 12.39.
Затем необходимо выдавить полигоны внутри диска, чтобы получить дополни тельную геометрию. Для этого сделайте следующее. 1.
Перейдите на уровень редактирования полигонов, щелкнув при выделенном объекте на кнопке Polygon (Полигон) в свитке Selection (Выделение) или нажав на клавиатуре 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. Объект с выделенными полигонами внутренней области
Далее сделайте углубление по внешнему периметру диска (операция скорее номи нальная: после того как на диск «наденется» шина, его не будет видно). Для этого выделите полигоны внешнего радиуса, находящиеся в середине, и масштабируйте их внутрь объекта (рис. 12.41).
586
Глава 12. Моделирование автомобиля
Следующим шагом будет построение фаски на гранях диска: двух величиной поменьше и одной — побольше, чтобы получить закругление на краю диска. Для этого сделайте следующее. 1.
Щелкните на кнопке Edge (Ребро) жмите на клавиатуре 2.
2.
Выделите по одному ребру во втором и третьем от края внутренних рядах, за тем щелкните на кнопке Loop (Петля) для выделения всех ребер по окружнос ти (рис. 12.42).
3.
Щелкните на кнопке Settings (Установки) рядом с кнопкой Chamfer (Фаска).
4.
В открывшемся окне диалога Chamfer Edges (Фаска ребер) выставьте значение величины фаски 2.
5.
Щелкните на кнопке OK для завершения операции создания фаски.
6.
Способом, описанным выше, выделите внешний ряд ребер и примените к нему инструмент создания фаски с величиной 4 (рис. 12.43).
Рис. 12.41. Сформированное посадочное место для шины
в свитке Selection (Выделение) или на
Рис. 12.42. Ребра, подготовленные для создания фаски
На этом все операции, связанные с геометрией, можно считать законченными. Исходя из того что диск симметричен, оставьте для моделирования только одну половину. В окне проекции Front (Спереди) выделите полигоны правой стороны диска и удалите их, а чтобы видеть, как проходит моделирование в целом, сделай те зеркальную копию оставшейся половины. Для этого выполните команду Tools Mirror (ИнструментыЗеркальное отображение), в результате чего откроется окно Mirror (Зеркальное отображение). В нем выставьте в качестве оси зеркального ото бражения X, а в качестве метода копирования выберите Instance (Привязка). Сей час все действия в левой части диска будут отображаться в образце справа. Приступим к моделированию спиц. Если присмотреться к форме диска на фото графии, можно заметить, что в ней много симметричных деталей, поэтому моде лировать нужно только одну часть, а затем скопировать ее. Начните строить только одну спицу. Для этого в верхней части диска разрежьте три полигона, расположен ных рядом, для начала формирования спицы. Чтобы сделать разрезы, щелкните на кнопке Cut (Вычитание) в свитке Edit Geometry (Редактирование геометрии)
Моделирование колеса автомобиля при помощи полигонов
587
и затем в окне проекции Front (Спереди) или Perspective (Перспектива) выполните разрезание (рис. 12.44).
Рис. 12.43. Фаски, примененные к внутренним ребрам для закругления геометрии диска
Рис. 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. Выполните еще одно выдавливание на высоту 30. После этого сформируйте за кругление в месте соединения двух соседних спиц. Для этого выделите три поли гона, расположенных у основания спицы с внутренней стороны (рис. 12.47), и вы давите их на высоту 15. Не снимая выделения с полигонов, нажмите клавишу Delete для их удаления. Это необходимо сделать, чтобы иметь возможность впоследствии соединить две сосед ние спицы в один объект и объединить вершины. Далее перейдите на уровень ре дактирования вершин и, выделив конечные вершины, уточните их положение в пространстве. Они должны быть расположены так, чтобы сформировалось за кругление между соседними спицами с понижением плоскости, а конечные вер шины находились на границе объекта, то есть значение координаты по оси X долж но быть равно 0 (рис. 12.48).
588
Глава 12. Моделирование автомобиля
Рис. 12.45. Полигоны, сформированные при помощи команды Bevel (Выдавливание со скосом)
Рис. 12.46. Средняя часть спицы, сформированная выдавливанием
Рис. 12.47. Полигоны, выделенные у основания спицы, для последующего выдавливания
Рис. 12.48. Полигоны, формирующие закругление между двумя спицами
На этапе моделирования спицы осталось сделать фаску на краях ребер с внешней стороны, чтобы после применения сглаживания сохранить форму изгиба поверх ности. Для этого выполните следующие действия. 1.
Перейдите на уровень подобъектов Edge (Ребро), щелкнув на значке свит ка Selection (Выделение) настроек объекта на командной панели или нажав на клавиатуре 2.
2.
Выделите все внешние ребра и щелкните на кнопке Settings (Установки) ря дом с кнопкой Chamfer (Фаска).
3.
В открывшемся окне диалога Chamfer Edges (Фаска ребер) параметру величи ны фаски задайте значение, равное 0,5.
4.
Щелкните на кнопке OK для завершения операции создания фаски.
Теперь присоедините вторую половину диска к первой, чтобы продолжить моде лирование двух спиц как одного объекта. Для этого щелкните на кнопке Make unique (Сделать уникальным) на вкладке Modify (Изменение) командной пане ли, а затем на кнопке Attach (Присоединить) в свитке Edit Geometry (Редактирова
Моделирование колеса автомобиля при помощи полигонов
589
ние геометрии) и в любом окне проекции на правой половине диска. Сейчас две половины диска принадлежат одному объекту, но все еще являются двумя отдель ными элементами. Чтобы соединить их полностью, нужно объединить вершины в месте стыка этих элементов. Для выполнения этой операции перейдите в режим редактирования 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 (Фаска ребер). После выполнения этих операций должен получиться один элемент диска. Всего их пять, следовательно, нужно снова делать копии. Оставьте для работы необхо димую вам часть объекта, а все остальное удалите (рис. 12.51). Перед копированием нужно снять блокировку объекта от поворота (в самом нача ле задания мы заблокировали диск от случайного перемещения). Для этого выпол ните следующие действия. 1.
Перейдите на вкладку Hierarchy (Иерархия) у вас будет возможность выбора иерархий.
командной панели, после чего
590
Рис. 12.51. Пятая часть диска, подготовленная для копирования
Глава 12. Моделирование автомобиля
2.
Щелкните на кнопке Link Info (Дан ные о связях), в результате чего по явится доступ к свитку Locks (Блоки ровки).
3.
В свитке Locks (Блокировки) снимите флажки в области Rotate (Вращение).
После этого выделите элемент диска и вы полните команду ToolsArray (Инструмен тыМассив), в результате чего появится окно Array (Массив). Задайте в нем угол поворота, количество копий и метод ко пирования, как показано на рис. 12.52.
Рис. 12.52. Окно Array (Массив) с настройками копирования элемента диска
В результате при помощи вращения получился диск, состоящий из пяти самосто ятельных элементов, наследующих трансформации друг друга. Сейчас нужно уточнить положение вершин в средней части диска. Для этого достаточно настро ить положение вершин в пространстве для одного элемента, а все остальные уна следуют эти трансформации. Необходимо также удалить нижние боковые поли гоны, чтобы объединить вершины соседних элементов. То, что получилось после редактирования вершин у меня, представлено на рис. 12.53. Постройте сопряжение между элементами, для которых необходимо выполнить выдавливание боковых полигонов в месте их соединения. После этого снова уточ ните положение вершин в пространстве, используя фотографию автомобильного диска (см. рис. 12.38). Когда будут сформированы переходы между элементами, можно их объединить в один объект. Для этого щелкните на кнопке Make unique
Моделирование колеса автомобиля при помощи полигонов
591
(Сделать уникальным) вкладки Modify (Изменение) и на кнопке Attach (При соединить) свитка Edit Geometry (Редактирование геометрии). Затем в любом окне проекции последовательно щелкните на всех копиях начального объекта для их присоединения (рис. 12.54).
Рис. 12.53. Объект, полученный при копировании одного элемента диска
Рис. 12.54. Фрагмент диска после объединения элементов
После объединения элементов в один объект в центре образовалось отверстие, ко торое необходимо закрыть и выполнить выдавливание для формирования углуб ления с фаской. Для этого сделайте следующее. 1.
В свитке Selection (Выделение) настроек объекта на командной панели щелк ните на значке Border (Граница) .
2.
В окне проекции Front (Спереди) щелкните на границе отверстия для выделе ния ребер, окаймляющих отверстие.
3.
В свитке Edit Borders (Редактирование границ) щелкните на кнопке Cap (На крыть), в результате чего отверстие будет закрыто полигонами.
4.
Выделите средний полигон и сделайте выдавливание внутрь на небольшое расстояние.
5.
Выполните фаску для верхних ребер отверстия.
Результат описанных действий представлен на рис. 12.55. Осталось совсем немного — добавить мелкие детали, и диск будет готов. Для бол тов крепления диска я использовал примитив Cylinder (Цилиндр) с шестью граня ми без сглаживания. В центр поместил полусферу, трансформированную по оси Z. Эта полусфера будет служить основой для размещения логотипа. Для гаек, распо ложенных по периметру, был также использован примитив Cylinder (Цилиндр). Он подошел и для прокладок под гайки. Окончательный вид диска представлен на рис. 12.56. Для завершения моделирования автомобильного колеса не хватает только шины. Надеюсь, что после построения диска ее моделирование не покажется вам слож ным.
592
Рис. 12.55. Средняя часть диска
Глава 12. Моделирование автомобиля
Рис. 12.56. Окончательная визуализация диска
Спрячьте построенный диск, чтобы ничто не мешало работе. Для этого выделите его со всеми дополнительными элементами и щелкните правой кнопкой мыши. В появившемся контекстном меню выберите пункт Hide Selection (Спрятать выде ленное). Как обычно, для объектов, которые имеют повторяющиеся или симметричные де тали, моделировать будем только уникальную для них часть. В данном случае это небольшая часть протектора. Начнем его моделирование с построения плоскости. Для этого выполните команду CreateStandard PrimitivesPlane (СозданиеПро стые примитивыПлоскость). В окне проекции Top (Сверху) постройте произволь ную плоскость и в свитке Parameters (Параметры) задайте ее параметрам значения, как показано на рис. 12.57. Дальнейшее моделирование будет происходить на уровне подобъектов, для чего необходимо преобразовать плоскость в объект Editable Poly (Редактируемая поли гональная поверхность), щелкнув правой кнопкой мыши на объекте и выбрав в появившемся контекстном меню Convert ToConvert to Editable Poly (Преобразо ватьПреобразовать в редактируемую полигональную поверхность). После это го нажмите кнопку Vertex (Вершина) в свитке Selection (Выделение) настроек плоскости на командной панели и в окне проекции Top (Сверху) измените поло жение вершин, как показано на рис. 12.58. Перейдите на уровень редактирования Polygon (Полигон) . Выделите те по лигоны, которые должны будут формировать выступающие части протектора шины. После этого примените к выделенным полигонам выдавливание с задан ным значением. Для этого щелкните на кнопке Settings (Установки) рядом с кноп кой Extrude (Выдавливание). В открывшемся окне Extrude Polygons (Выдавливание полигонов) параметру высоты выдавливания задайте значение, равное 4, а тип выдавливания — Local Normal (Локальные нормали) и щелкните на кнопке OK (рис. 12.59). После выполнения стандартных операций необходимо подкорректировать поло жения вершин в пространстве. В данном случае нужно понизить протектор по на правлению к внешнему краю (рис. 12.60).
Моделирование колеса автомобиля при помощи полигонов
593
Рис. 12.57. Свиток Parameters (Параметры) настроек плоскости, с которой начинается моделирование шины
Рис. 12.58. Редактирование вершин объекта в вертикальной (слева) и горизонтальной (справа) плоскостях
Рис. 12.59. Фрагмент шины с выдавленными полигонами
Рис. 12.60. Элемент шины после корректировки высоты протектора
Как только вы скорректируете положение вершин в пространстве, изогните боко вую часть элемента шины, чтобы придать ей нужную форму. Для этого проще всего воспользоваться модификатором изгиба. Выполните команду ModifiersParametric DeformersBend (МодификаторыПараметрические деформацииИзгиб). В свитке Parameters (Параметры) настроек модификатора Bend (Изгиб) задайте параметрам значения, как показано на рис. 12.61. На этом моделирование одиночного элемента можно считать законченным. Теперь необходимо выполнить его зеркальную копию с последующим присоединением ее к основному объекту. Перед тем как чтолибо делать, нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность). Затем в окне проекции Top (Сверху) выделите объект и щелкните на кнопке Mirror (Зеркальное отображение) . В появившемся окне в качестве оси для зеркального отображе ния выберите XY, а в качестве способа копирования — Copy (Независимая копия объекта). После зеркального отображения объекта выполните подгонку положе ния копии так, чтобы она встала в место соединения двух половинок протектора (рис. 12.62).
594
Рис. 12.61. Параметры модификатора Bend (Изгиб) для элемента шины
Глава 12. Моделирование автомобиля
Рис. 12.62. Элемент шины с зеркальной копией
Создав копию и уточнив положение относительно оригинала, необходимо присо единить ее к оригиналу. Для выполнения этих действий щелкните на кнопке Attach (Присоединить) в свитке Edit Geometry (Редактирование геометрии) основного объекта, а затем на копии в любом из окон проекций. Но это еще не все. Нужно объединить и вершины, лежащие на стыке двух элемен тов. Для этого, находясь на уровне редактирования вершин, выделите средний ряд вершин и щелкните на кнопке 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).
595
Моделируем BMW
Перед наращиванием боковых граней нужно снова преобразовать объект в Editable Poly (Редактируемая полигональная поверхность) и объединить вершины в месте стыка. Далее щелкните на значке Border (Граница) в свитке Selection (Выделение). В окне проекции Front (Спереди) щелкните в стороне от объекта и протащите ука затель мыши на противоположную сторону окна по диагонали, выделяя все откры тые ребра (в данном случае это внутренние ребра шины с обеих сторон). Щелкни те на кнопке Select and Uniform Scale (Выделить и равномерно масштабировать) панели инструментов и, удерживая нажатой клавишу Shift, дважды скопируй те ребра, чтобы нарастить стороны шины. У вас получится законченная модель шины. Сейчас можно открыть ранее спрятанный диск и привести при необходимости шину к общему с ним масштабу. На рис. 12.64 показано то, что получилось у меня.
Рис. 12.63. Автомобильная шина после применения модификатора Bend (Изгиб)
Рис. 12.64. Результат окончательной визуализации автомобильного колеса
ПРИМЕЧАНИЕ ___________________________________________________________________ Если у вас возникли вопросы по созданию модели автомобильного колеса, об@ ратитесь к файлу сцены poly_disk.max, расположенному в папке Examples\Глава 12\ Poly_disk прилагаемого к книге DVD.
Моделируем BMW Моделирование автомобиля — пожалуй, самое сложное задание из представлен ных в этой книге. Если у вас недостаточно опыта работы в программе 3ds Max, начинать его желательно после освоения упражнений по моделированию поли гонами. Моделировать автомобиль можно разными способами. Все они имеют свои плю сы и минусы. Я не стану подробно останавливаться на каждом, а только в общих чертах опишу их.
596
Глава 12. Моделирование автомобиля
NURBSмоделирование. В примерах по моделированию в 3ds Max встречает ся крайне редко. Моделировать сложно, хотя модель в конечном итоге полу чается достаточно сглаженная.
Патчмоделирование. При достаточных навыках в работе таким образом мож но выполнять моделирование автомобилей любой сложности. Патчи имеют некоторые особенности, знание которых необходимо для нормальной работы. Кроме того, построение кривизны поверхности сводится к редактированию не только положения вершин в пространстве, но и манипуляторов, что дополни тельно усложняет задачу.
Моделирование сплайнами с последующим применением модификатора Surface (Поверхность). Этот способ напоминает патчмоделирование. Я применяю его для моделирования автомобилей со сложной и сглаженной геометрией. Метод очень удачен, но требует подготовки и хорошего пространственного мышле ния: нужно размещать в пространстве большое количество вершин кривой и уметь работать с манипуляторами.
Низкополигональное моделирование. При таком моделировании за основу берется объект Box (Параллелепипед) с достаточным количеством разбиений и при помощи модификатора Edit Mesh (Редактирование поверхности) изме няется положение вершин, они подгоняются под форму автомобиля. Модели рование ведется по принципу «от простого к сложному» (добавляются гра ни, полигоны, уточняется геометрия и т. д.). После создания общей формы к объекту применяется модификатор MeshSmooth (Сглаживание).
Полигональное моделирование. Это скорее разновидность низкополигонально го моделирования, с той разницей, что применяется метод наращивания по лигонов по форме модели с использованием Editable Poly (Редактируемая полигональная поверхность). На сегодняшний день это самый удобный спо соб создания полигональной модели.
В этом разделе рассмотрим применение последнего способа моделирования как самого распространенного и простого. Преимущество этого метода заключается в том, что мы строим полигоны лишь там, где они необходимы, имея в своем арсе нале максимальный набор инструментов для работы с полигональной моделью. В разделах, посвященных моделированию телефонной трубки и колеса, мы уже использовали этот способ, и вы должны были приобрести начальные навыки ра боты с Editable Poly (Редактируемая полигональная поверхность). Изза этого ма териал будет подан в сжатом виде, лишь с описанием техники моделирования. Как обычно, моделирование начинается с создания виртуальной студии. Способы ее построения были рассмотрены в начале главы, поэтому будем считать, что сту дия у вас уже есть. Если это не так, загрузите файл studio_v3.max из папки Examples\Глава 12\Studio прилагаемого к книге DVD. Вернемся еще раз к теме построения виртуальной студии и дадим несколько реко мендаций.
Виртуальная студия должна находиться в начале координат, то есть значения ее координат по осям X, Y и Z должны быть равны 0. Это значительно упрос
Моделируем BMW
597
тит зеркальное отображение объектов моделирования (фары, зеркала, коле са и т. д.), а также половины кузова автомобиля.
Студия должна быть заблокирована от случайного смещения. Для этого щелк ните на объектестудии правой кнопкой мыши и в появившемся контекстном меню выберите строку 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 (Редак@ тируемая полигональная поверхность) командной панели. По этой причине уточнения будут даваться только по свиткам, к которым будем обращаться. Во всех остальных случаях будет приводиться полное описание доступа к инструментам, модификато@ рам или свойствам объекта.
598
Глава 12. Моделирование автомобиля
После преобразования плоскости в Editable Poly (Редактируемая полигональная поверх ность) перейдите на уровень редактиро вания Vertex (Вершина) (при выделенном объекте нажмите на клавиатуре 1) и уточ ните положение вершин в пространстве, используя для контроля окно проекции Front (Спереди) (рис. 12.66, а) и Left (Сле ва) (рис. 12.66, б).
а
б
Рис. 12.66. Положение начального полигона в окнах проекций Front (Спереди) (а) и Left (Слева) (б)
Очень важно контролировать положение вершин во всех окнах проекций. Это по может избежать формирования искрив лений, которые могут быть не видны при использовании одного или двух окон про екций.
Далее при помощи выдавливания боковых ребер продолжаем строить крыло ма шины. Для этого можно применить команду Extrude (Выдавливание), но более про стой метод построения дополнительных ребер (а следовательно, и полигонов) — копирование их с клавишей Shift. Делается это следующим образом. 1.
Перейдите на уровень редактирования Edge (Ребро) (нажмите на клавиатуре 2).
а
б
Рис. 12.67. Положение полигонов, огибающих арку от бампера до порога, в окнах проекций Front (Спереди) (а) и Left (Слева) (б)
2.
Нажмите и удерживайте клавишу Shift.
3.
Выделите ребро со стороны, в которую собираетесь наращивать рельеф.
4.
Удерживая нажатой кнопку мыши, пе ретащите ребро в сторону на расстоя ние, необходимое для построения но вых контрольных точек.
5.
Отпустите кнопку мыши, в результате чего будет построен новый полигон.
6.
При необходимости уточните положе ние вершин в пространстве.
Используя вышеописанный способ копи рования ребер, нарастите геометрию крыла автомобиля (рис. 12.67).
СОВЕТ ___________________________________________________________________________ При моделировании автомобиля я предпочитаю придерживаться того правила, что отдельные детали кузова должны моделироваться как самостоятельные элементы. Это, на мой взгляд, упрощает моделирование и дальнейшее текстурирование авто@ мобиля. Обычно это элементы, которые и у реального автомобиля являются самосто@ ятельными (крылья, капот, двери, багажник, бамперы и т. д.).
599
Моделируем BMW
Продолжите строить полигоны. Дойдя до бампера с левой стороны и порога с пра вой, нарастите ребра в стороны, не забывая контролировать положение полигонов во всех окнах проекций (рис. 12.68).
а
б
Рис. 12.68. Положение полигонов в окне проекции Front (Спереди) (а) и Top (Cверху) (б) после их наращивания в стороны
Сейчас самое время посмотреть на то, что у нас получается. Для этого я пользуюсь нехитрым приемом: делается визуализированная копия моделируемого объекта и к ней добавляется модификатор MeshSmooth (Сглаживание). Рассмотрим по дробнее, как это сделать. 1.
Удерживая нажатой клавишу Shift (как при копировании ребер), щелкните на мо делируемом объекте и перетащите его на значительное расстояние в сторону.
2.
После того как вы отпустите кнопку мыши, появится окно Clone Options (Па раметры клонирования), в котором в качестве способа копирования выберите Reference (Подчинение).
3.
В стек модификаторов копии добавьте модификатор MeshSmooth (Сглажива ние), выполнив команду ModifiersSubdivision SurfacesMeshSmooth (Моди фикаторыПоверхности с разбиениемСглаживание).
4.
Из списка Subdivision Method (Метод разбиения) одноименного свитка настро ек модификатора MeshSmooth (Сглаживание) выберите NURMS, а в свитке Subdivision Amount (Величина поверхности с разбиением) задайте параметру Iteration (Количество разбиений) значение 2.
5.
Щелкните на объекте правой кнопкой мыши и выберите строку Object Properties (Свойства объекта). В области Display Properties (Свойства отображения) появившегося одноименного окна сними те флажок See-Through (Видеть сквозь).
После создания экземпляра и выполнения вышеописанных действий поместите его в ок но проекции Perspective (Перспектива). Сей час вы сможете, работая с полигонами на низ ком уровне (то есть до сглаживания), видеть сглаженную модель и лучше контролировать процесс построения геометрии (рис. 12.69).
Рис. 12.69. Копия моделируемого объекта со сглаживанием
600
Глава 12. Моделирование автомобиля
СОВЕТ ___________________________________________________________________________ К сожалению, удобство, связанное с возможностью просмотра сглаженного изобра@ жения одновременно с моделированием, занимает дополнительные компьютерные ресурсы (в оперативной памяти хранится информация о выполненных операциях не только для основного объекта, но и для экземпляра). В связи с этим, как только вы почувствуете, что компьютер стал работать медленнее, удалите копию. Вместо это@ го при необходимости можно контролировать форму объекта, установив в свитке Subdivision Surface (Поверхности с разбиением) настроек объекта флажок Use NURMS Subdivision (Использовать NURMS@разбиение) с теми же параметрами, что у модифи@ катора MeshSmooth (Сглаживание).
Продолжите дальнейшее наращивание геометрии. Сделайте ряд полигонов по вер ху объекта до излома крыла и ряд по краю арки. ВНИМАНИЕ ______________________________________________________________________ Когда необходимо наращивать более одного полигона, обязательным условием явля@ ется выделение для копирования сразу всех ребер. Это связано с тем, что раздель@ ное копирование не только замедлит процесс построения геометрии, но и построит разделенные полигоны. В таком случае необходимо объединить (команда Weld (Объе@ динить)) совпадающие вершины соседних полигонов (если, конечно, раздельное по@ строение не предусмотрено характером моделирования).
При моделировании нужно обходиться минимальным количеством полигонов, но при этом достаточным для правильной передачи формы модели. Вершины поли гонов старайтесь располагать в местах изменения формы и не забывайте контро лировать их положение в пространстве (рис. 12.70). Обратите внимание, что ребра, находящиеся на стыках полигонов, располагаются с учетом изменения геометрии автомобиля. Кроме того, между аркой и дверью необ ходимо разделить полигоны на две части, так как большие полигоны не способны передать изгиб крыла по длине. Выполните это деление при помощи инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактирование геометрии). Чем больше расстояние между ребрами соседних полигонов, тем более плавную кривую построит программа при сглаживании внутреннего угла. Верно и обрат ное. По этой причине, если вы хотите сделать излом в какомто месте поверхности, нужно построить близко лежащие грани. Это мы сейчас и проделаем для геомет рии крыла. Прежде всего необходимо выделить грань, по которой будет уточнять ся геометрия. Перейдите на уровень редактирования ребер (нажмите на клави атуре цифру 2). Выделите одно из ребер по линии будущего излома геометрии. В свитке Selection (Выделение) нажмите кнопку Loop (Петля), в результате чего выделятся все ребра, находящиеся на одной линии с выделенным. Для придания изгибу более заметного излома примените к выделенным ребрам Chamfer (Фаска), разделив таким образом выделенные ребра на две части. Для это го в свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Уста новки) рядом с кнопкой Chamfer (Фаска). В открывшемся окне Chamfer Edges (Фас
Моделируем BMW
601
ка ребер) задайте параметру величины фаски значение, равное 3. Затем щелкните на кнопке OK для завершения операции создания фаски. Теперь изгиб крыла над аркой имеет более естественные очертания (рис. 12.71).
Рис. 12.70. Полигоны, достроенные над аркой и по верху крыла
Рис. 12.71. Ребра, сформированные фаской в окнах проекций User (Пользовательская) (справа) и Perspective (Перспектива) (слева)
Напомню, что в окне проекции Perspective (Перспектива) представлен экземпляр объекта, с которым вы работаете, но только со сглаживанием. Продолжите наращивание полигонов вправо, сначала до места соединения перед ней и задней двери, затем до места соединения задней двери и крыла. Обратите внимание, что в окне проекции Top (Сверху) боковая линия геометрии автомо биля в местах расположения дверей почти ровная, поэтому, чтобы передать форму кузо ва, вам достаточно построить вертикальные ребра в местах стыковки дверей (рис. 12.72). Принципы построения заднего крыла та кие же, как и переднего: ребра строящегося Рис. 12.72. Достроены два ряда объекта должны пройти по характерным из полигонов, описывающих форму дверей ломам крыла, огибая арку заднего колеса. Затем продолжите построение полигонов вплоть до дверей багажника, огибая зад нюю фару. Высота строящихся полигонов должна быть ограничена сверху лини ей излома геометрии кузова, а снизу — бампером. СОВЕТ ___________________________________________________________________________ При построении такой сложной модели, как автомобиль, вы вряд ли дважды столкне@ тесь с одинаковой геометрией кузова. При этом существует простое правило: по@ строение ребер должно вестись с учетом элементов кузова и его формы. На практике это выглядит примерно так: все, что в автомобиле открывается, может быть выполне@ но отдельными элементами и, соответственно, должно иметь ребра на краях. Ребра также обязательны там, где необходимо сделать излом геометрии.
602
Глава 12. Моделирование автомобиля
При построении изгиба заднего крыла в рай оне фары обратите внимание на форму за кругления. Кроме работы в окне проекции Front (Спереди) (рис. 12.73, а), важно кон тролировать положение вершин в простран стве, используя окна проекции Top (Сверху) и Right (Справа) (рис. 12.73, б).
а
б
Далее достройте полигоны до боковых окон. Принцип построения все тот же: выделите грани по всей длине и, удерживая нажатой клавишу Shift, скопируйте их, а затем уточ ните положение вершин в пространстве.
Рис. 12.73. Построение полигонов продолжается в окнах проекций Front (Спереди) (а) и Right (Справа) (б)
Чтобы закончить общую форму боковой геометрии кузова, сделайте продольный излом на крыльях и дверках автомобиля. Эта операция выполняется аналогично созданию излома над арками крыльев ав томобиля, описанному ранее. Отличие состоит в том, что сначала при помощи ин струмента Chamfer (Фаска) из свитка Edit Edges (Редактирование ребер) строятся разделенные ребра с параметром Chamfer Amount (Величина фаски), равным 10 (имейте в виду, что если размеры вашей модели отличаются от моей, то и величи на будет другой). После этого выделяется верхний ряд ребер из только что полу ченных после применения фаски и еще раз применяется Chamfer (Фаска), но со значением параметра Chamfer Amount (Величина фаски), равным 3. После построения двух дополнительных рядов ребер необходимо уточнить по ложение в пространстве нижнего ряда, чтобы создать криволинейную поверх ность боковой стороны автомобиля. Для этого можно воспользоваться редакти рованием на уровне вершин (для переключения нажмите на клавиатуре 1), для чего выделите точки нижнего ряда (из построенных с помощью Chamfer (Фас ка)) и в окне проекции Left (Слева) сместите их немного внутрь автомобиля (рис. 12.74). В процессе построения новых ребер методом создания фаски на границе примы кания горизонтальных ребер к арке переднего крыла появятся артефакты. Это свя зано с тем, что в данных точках сходятся по пять ребер и в результате применения инструмента Chamfer (Фаска) из свитка Edit Edges (Редактирование ребер) появля ется избыточное количество вершин. Решить возникшую проблему можно с по мощью команды Weld (Объединить) следующим образом. Перейдите на уровень редактирования Vertex (Вершина) и выделите две вершины, подлежащие объединению. В свитке Edit Vertices (Редактирование вершин) щелк ните на кнопке Settings (Установки) рядом с кнопкой Weld (Объединить). В от крывшемся окне Weld Vertices (Объединить вершины) задайте значение величины приращения с учетом того, чтобы в окне проекции две выделенные вершины объе динились в одну. Затем щелкните на кнопке OK для завершения объединения и по вторите те же действия для двух других точек (рис. 12.75).
603
Моделируем BMW
Рис. 12.74. Положение и форма излома геометрии кузова, проходящего по боковой поверхности
Рис. 12.75. Вершины на стыке шести ребер до (справа) и после (слева) их слияния
На рис. 12.76 показан вид боковой поверхности экземпляра моделируемого объек та со сглаживанием. СОВЕТ ___________________________________________________________________________ Часто в процессе моделирования по той или иной причине необходимо вернуться к предыдущему состоянию моделирования, и не всегда в этом может помочь команда Undo (Отменить). Поэтому возьмите за правило сохранять рабочий файл после вы@ полнения ключевых задач или через определенные промежутки времени. Лучше все@ го, если для сохранения будет использоваться команда Save As (Сохранить как) с уве@ личением имени файла (достаточно в окне Save File As (Сохранить файл как) щелкнуть на кнопке со знаком +).
Дальнейшее построение кузова автомо биля связано с моделированием рамки над дверями, затем можно будет перейти от нее к крыше. Построение начинается сразу с двух сторон путем наращивания полиго нов. Думаю, двух рядов полигонов вполне хва тит, чтобы передать форму рамки. В ее по строении нет особых сложностей, лишь не обходимо отметить, что от заднего крыла Рис. 12.76. Боковая поверхность кузова автомобиля со сглаживанием отходит больше чем два полигона. Их нуж но привести в соответствие (по количест ву) с теми, которые расположены спереди. Это делается путем объединения вер шин. Кроме того, добавьте еще одно горизонтальное ребро в место стыковки рамки с задним крылом — туда, где виден небольшой излом формы (рис. 12.77). Дальнейшее построение крыши автомобиля не должно вызвать затруднения, по этому вернемся к нему позже, а пока на примере создания порога я хочу показать,
604
Глава 12. Моделирование автомобиля
а
б
Рис. 12.77. Положение и форма полигонов, формирующих рамку кузова, в окнах проекций Front (Спереди) (а) и Right (Cправа) (б)
как можно строить сочленения отдельных элементов кузова. Когдато, в самом нача ле работы в программе 3ds Max, я строил швы и сочленения элементов кузова авто мобиля путем применения команды Bevel (Выдавливание со скосом) из свитка Edit Polygons (Редактирование полигонов) к по лигонам, проходящим по линии шва. По сле применения модификатора MeshSmooth (Сглаживание) к таким швам углы закруг лялись даже там, где они должны быть пря мыми. Чтобы избавиться от этого эффекта, я добавлял ребра, увеличивал вес вершин и т. п. Но все эти меры ведут к увеличению количества полигонов и деформируют фор му, поэтому со временем я нашел другое ре шение.
Итак, мы продолжаем строить кузов, а точнее, порог. Выделите нижний ряд ребер и скопируйте его три раза (именно столько рядов полигонов необходимо, чтобы передать небольшое углубление в пороге). После построения новых полигонов уточните положение вершин в окнах проек ций Left (Слева) и Top (Сверху) (рис. 12.78). То, о чем я буду говорить далее, важно понять и научиться делать правильно, так как от этого будет зависеть, насколько хорошо станут смотреться швы автомобиля. Начнем с выделения трех нижних рядов полигонов, чтобы сформировать из них отдельный элемент. Выделите три нижних ряда полигонов и щелкните на кнопке Detach (Отделить), расположенной в свитке Edit Geometry (Редактирование геомет рии). В появившемся окне Detach (Отделить) установите флажок Detach To Element (Отделить в элемент). Это позволит выделить полигоны в отдельный элемент, принадлежащий моделируемому объекту. Щелкните на кнопке OK для подтвер ждения выбора и закрытия окна.
СОВЕТ ___________________________________________________________________________ Есть несколько способов упростить навигацию по увеличивающемуся в процессе мо@ делирования количеству вершин, ребер и полигонов. Можно прятать неиспользуемые в работе объекты, применять плоскости отсечения, Isolation Mode (Режим изолирова@ ния) и скрывать неиспользуемые элементы на уровне редактирования подобъектов.
После выделения порога в отдельный элемент (с ним предстоит работать) спрячьте все лишнее. Для этого перейдите на уровень редактирования подобъектов Element (Элемент), используя горячую клавишу 5. Выделите порог автомобиля и в свитке Edit Geometry (Редактирование геометрии) щелкните на кнопке Hide Unselected
605
Моделируем BMW
(Спрятать невыделенное). После выполнения этих операций на экране останется только порог. В окне проекции Front (Спереди) выделите вершины, принадлежащие верхнему ряду, и немного (на 3–5 мм) сместите их вниз. Это необходимо, чтобы между по рогом и дверями образовалась небольшая щель. После этого нужно придать поро гу толщину. Выделите открытые грани, для чего на уровне подобъектов Border (Граница) щелкните на любом месте по краю порога. В результате выделятся все ребра по периметру. После этого выполните уже знакомую вам операцию копиро вания граней на величину около 20 мм со смещением внутрь автомобиля. ПРИМЕЧАНИЕ ___________________________________________________________________ Значение, на которое изменяется смещение при копировании, можно проследить в строке состояния, расположенной в нижней части окна программы.
Для формирования углубления в средней части порога выделите два больших про дольных ребра и переместите их немного внутрь. Осталось еще одно копирование ребер для формирования порога — нужно выделить верхний внутренний ряд (из тех, которые были построены последними) и скопировать его по оси Y пример но на 20 мм вверх. Это необходимо, чтобы закрыть изнутри образовавшееся про дольное отверстие между порогом и дверью (при помощи смещения вершин вниз). Последнее, что нужно сделать перед тем как закончить моделировать порог, — выделить передние грани, образующие внешний край, добавить к выделению реб ра в углах и ко всему выделению применить Chamfer (Фаска) со значением пара метра Chamfer Amount (Величина фаски), равным 1 (рис. 12.79).
Рис. 12.78. Дополнительные полигоны, построенные для формирования порога
Рис. 12.79. Каркасный вид порога автомобиля после добавления полигонов и создания фаски
Если то, что получилось у вас, отличается от изображения на рис. 12.79, вернитесь назад при помощи команды Undo (Отменить) и проверьте, правильно ли были выделены грани. Это, как правило, самая распространенная ошибка при построе нии сглаженных углов. На самом деле операции с гранями не так сложны, как
606
Глава 12. Моделирование автомобиля
кажется, главное — понять принцип, по которому делаются фаски. На рис. 12.80 показан результат визуализации боковой стороны автомобиля. На примере моделирования порога мы рассмотрели один из способов создания элементов кузова автомобиля. Опишу еще один способ моделирования автомо бильных швов на примере создания двери. ВНИМАНИЕ ______________________________________________________________________ При построении закруглений на краях нужно всегда учитывать особенности механиз@ ма сглаживания, который в расчетах использует расстояние между соседними ряда@ ми ребер (минимум — три ряда на угол). На практике это выглядит так: чем ближе рас@ положены ребра, образующие угол, тем меньше радиус закругления получится при сглаживании. Наилучший результат получается, если ребра, образующие закругле@ ние, расположены на одном расстоянии от угла.
Учитывая особенности сглаживания, описанные выше, необходимо на боковой поверхности автомобиля добавить вертикальные разрезы так, чтобы по обе сторо ны от границ дверей получилось по вертикальному ряду ребер. Сделать это мож но разными способами, но самый простой — разрезать поверхность при помощи инструмента Cut (Вычитание), расположенного в свитке Edit Geometry (Редактиро вание геометрии) (рис. 12.81).
Рис. 12.80. Результат визуализации боковой стороны автомобиля вместе с построенным порогом
Рис. 12.81. Расположение вертикальных ребер в местах соединения дверей
Начнем построение швов с выделения по одному ребру в трех вертикальных рядах, ограничивающих две двери: между передним крылом и передней дверью, между передней и задней дверью и между задней дверью и задним крылом. После этого щелкните на кнопке Loop (Петля), расположенной в свитке Selection (Вы деление), чтобы выделить все ребра, составляющие вертикальные ряды. Проверь те, действительно ли все ребра, относящиеся к одному ряду, выделились. Возмож но, при моделировании создались смежные ребра и, соответственно, сдвоенные вершины. В этом случае выделение в таком месте прервется, и продолжить его можно будет, добавив оставшиеся ребра вручную, а вершины придется объеди нить при помощи команды Weld (Объединить), чтобы избежать искажения гео метрии.
Моделируем BMW
607
Если вы выделили все необходимые для работы ребра, нажмите на клавиатуре Ïðîáåë, чтобы заблокировать выделенные ребра от случайного изменения. После этого примените команду 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. Автомобильный шов, полученный при помощи двух операций выдавливания, в каркасном виде (слева) и после визуализации (справа)
При желании, добавив еще две операции, вы можете улучшить внешний вид шва. У меня никогда не возникало необходимости в таком улучшении, так как в своих работах я не использую визуализацию с большим приближением, а на расстоянии они практически не отличаются друг от друга. Однако вам это, возможно, понадо бится, поэтому я расскажу, как сделать такой шов. Сейчас дверной шов представлен минимально возможным количеством полиго нов (имейте это в виду, если для вас критично общее количество полигонов). Если к этому добавить еще одно выдавливание, а затем применить фаску, то получится более правильный с точки зрения геометрии шов (внутри он будет прямоуголь ным). Для построения такого шва выполните следующие действия. 1.
Не меняя выделения (у вас до сих пор должны быть выделены три средних ряда ребер), щелкните на кнопке Settings (Установки) рядом с кнопкой Extrude (Выдавливание).
608
Глава 12. Моделирование автомобиля
2.
В открывшемся окне Extrude Edges (Выдавить ребра) задайте параметру вели чины выдавливания значение, равное –10 (это значение определяет общую глубину шва), а ширины — 4.
3.
Щелкните на кнопке OK для завершения операции выдавливания.
4.
В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Settings (Уста новки) рядом с кнопкой Chamfer (Фаска).
5.
В появившемся окне Chamfer Edges (Фаска ребер) задайте параметру Chamfer Amount (Величина фаски) значение, равное 10.
6.
Щелкните на кнопке OK для завершения создания фаски (рис. 12.84).
Перед тем как приступить к следующей фазе моделирования, не забудьте снять блокировку с выделения, для чего еще раз нажмите на клавиатуре Ïðîáåë. ПРИМЕЧАНИЕ ___________________________________________________________________ При моделировании автомобиля совсем не обязательно вести построение в той по@ следовательности, в которой это делаю я. Главное, чтобы ваша последовательность действий была логически оправдана (например, нелогично делать ручки дверей, не имея самих дверей).
После того как вы закончили с построением дверных швов, можно переходить к моделированию капота. Для этого необходимо нарастить полигоны при помощи копирования ребер, придерживаясь геометрии автомобиля. Через весь капот про ходит характерный излом, и для правильной передачи формы нужно его повторить, используя фаску. В местах расположения фары и решетки радиатора оставьте от крытые проемы (позже их будем строить отдельными элементами). На рис. 12.85 показаны линии построения.
Рис. 12.84. Каркасный вид улучшенного шва (слева) и результат его визуализации (справа)
Рис. 12.85. Линии построения геометрии капота в окне проекции вида слева
Теперь, когда вы научились делать закругления на гранях элементов автомо биля, закруглите грани капота и элемента кузова, расположенного ниже фары (рис. 12.86).
609
Моделируем BMW
Следующий шаг — построение решетки ра диатора. Для этого выполните следующие действия. 1.
Выделите ребра, расположенные по пе риметру отверстия, для чего исполь зуйте уровень подобъектов Border (Гра ница), и щелкните кнопкой мыши на границе отверстия.
2.
Примените к выделенным ребрам ко манду Cap (Накрыть), щелкнув на од ноименной кнопке в свитке Edit Borders (Редактирование границ). Это создаст полигон, закрывающий отверстие.
3.
Рис. 12.86. Результат визуализации фрагмента капота с фасками
Сделайте закрытое отверстие как отдельный элемент, для чего в свитке 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.
После этого уточните положение точек в пра вом верхнем углу (там обводка немного рас ширяется). Если вы все сделали правильно, результат должен соответствовать изобра жению, показанному на рис. 12.87, а. После добавления боксов в качестве вертикаль ных перегородок решетки получим оконча тельный вид (рис. 12.87, б). Займемся построением двери багажника. После того как вы выполнили боковую сто рону автомобиля, капот и научились делать толщину элементов и швы, ее создание не должно вызвать затруднений. Здесь все про сто: построение ведется путем наращива ния полигонов от крыла до середины авто мобиля (рис. 12.88). Далее постройте швы двери. Для этого соз дайте шов либо как описано на примере
а
б
Рис. 12.87. Решетка автомобиля, представленная каркасом в окне проекции Left (Слева) (а) и визуализированная после добавления вертикальных перегородок (б)
610
Глава 12. Моделирование автомобиля
построения боковых дверей, либо сделав дверь как отдельный элемент (при помощи команды Detach (Отделить)) и достроив толщину двери (как описано выше на при мере порога). Создайте небольшой элемент над углубле нием для регистрационного номера авто мобиля (можно сделать его как отдельный объект из параллелепипеда). а
б
Рис. 12.88. Геометрия багажника в окнах проекций Right (Справа) (а) и Front (Спереди) (б)
Все построения при визуализации должны выглядеть примерно так, как показано на рис. 12.89.
Перейдем к созданию крыши, лобового стек ла и стекла двери багажника. В данном слу чае также не должно возникнуть проблем. Построения ведутся от краев элементов до середины автомобиля (напомню, что виртуальная студия расположена в нача ле координат и граница строящихся элементов должна проходить по оси Y с коор динатой 0). При создании лобового стекла заведите передние нижние полигоны под капот, опустив их на небольшое расстояние относительно капота. Еще раз напомню: контролируйте построения во всех окнах проекций. Крыша, стекла и часть крыши, примыкающая к двери багажника, строятся как отдельные элементы (рис. 12.90).
Рис. 12.89. Результат визуализации багажника после создания толщины
Рис. 12.90. Расположение полигонов крыши, лобового стекла и стекла двери багажника в окне проекции Top (Сверху)
После построения крыши задача немного усложнится — нужно создать хромиро ванную окантовку верха дверей. Для моделирования окантовки выполните следу ющие действия. 1.
Перейдите в режим редактирования Edge (Ребро).
2.
Выделите ребра по периметру примыкания окантовки к крыше.
611
Моделируем BMW
3.
В свитке Edit Edges (Редактирование ребер) щелкните на кнопке Create Shape From Selection (Создать форму из выделенного) для преобразования выделен ных ребер в сплайны (это будет самостоятельный объект). В появившемся окне нажмите кнопку OK.
4.
Выделите построенный сплайн (например, с помощью окна Select From Scene (Выбор из сцены)), перейдите на уровень редактирования Spline (Сплайн) и в свитке Geometry (Геометрия) настроек сплайна рядом с кнопкой Outline (Контур) укажите величину контура, равную 25.
5.
Нажмите на клавиатуре Enter для создания контура (рис. 12.91).
После построения сплайна преобразуйте его в Editable Poly (Редактируемая по лигональная поверхность), для чего щелкните на сплайне правой кнопкой мыши и в появившемся контекстном меню выберите из списка Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную по верхность). Далее сделайте разрывы геометрии в местах стыковки дверей, чтобы там впоследствии сформировались швы. После выполнения подготовительной части можно придать окантовке толщину (не буду повторяться, так как эта опера ция делалась не раз и должна быть вам знакома). В качестве стоек я использовал параллелепипеды — просто придал им нужную форму, немного передвинув вершины. То, что должно получиться, показано на рис. 12.92.
Рис. 12.91. Сплайны обводки, построенные из выделенных ребер
Рис. 12.92. Результат визуализации стоек и окантовки двери
Достройте стекла боковых дверей. Для этого используйте примитив Plane (Плос кость) (если вы планируете делать открывающиеся двери, постройте для каждой из них отдельную плоскость), а затем уточните положение вершин в пространстве. Перейдем к построению бокового зеркала. Трудности при его создании связаны с тем, что зеркало имеет сложную форму, которую нужно моделировать, а инфор мации о ней (я имею в виду чертежи) недостаточно. При построении зеркала я использовал примитив Box (Параллелепипед) с двумя дополнительными гранями по вертикали, одной вдоль и одной по горизонтали.
612
Глава 12. Моделирование автомобиля
После построения параллелепипеда я преобразовал его в Editable Poly (Редактируемая полигональная поверхность) и все дальнейшие построения вел путем применения инструмента Bevel (Выдавливание со скосом) и перемещения вершин в простран стве. Там, где было необходимо, я добавлял ребра. Углы закруглял с помощью фа сок. Само зеркало я сделал как отдельный элемент, что позволило получить ров ную отражающую поверхность. Элемент, к которому крепится зеркало, был сделан из отдельного параллелепипеда с последующим присоединением при помощи ко манды Attach (Присоединить) его к зеркальному отображению (рис. 12.93).
Рис. 12.93. Каркасный вид зеркала в окнах проекций
Теперь построим заднюю фару и стекло фары. Эти элементы создаются аналогич но, поэтому я опишу только построение задней фары. Я делаю это одним из двух следующих способов.
Строю новый объект Plane (Плоскость) с количеством разбиений, соответ ствующих примыкающей геометрии. Это делается, чтобы выставить вершины в местах расположения вершин примыкающей геометрии (в частности, крыла и багажника).
Выделяю ребра на крыле и багажнике, чтобы в дальнейшем построить на их осно ве самостоятельный сплайн (как в случае с обрамлением двери), а уже из сплай на — геометрию. Этот способ хорош, если геометрия вокруг строящегося объек та достаточно сложна и может вызвать затруднения с расположением вершин.
Используя один из описанных выше способов, постройте заднюю фару, состоя щую из двух элементов (один элемент относится к заднему крылу, другой — к две
613
Моделируем BMW
ри багажника). После создания геометрии придайте ей толщину. Для этого выдели те ребра по периметру и скопируйте их вглубь автомобиля на 20 мм. Для закруг ления граней примените Chamfer (Фаска) (рис. 12.94). Затененные полигоны по периметру фары — не что иное, как геометрия, построенная для закрытия щели, образованной между фарой и кузовом (при моделировании фа ры как отдельного элемента). а
б
Теперь можно перейти к выполнению пе реднего и заднего бамперов. Для создания Рис. 12.94. Расположение ребер на модели задней фары в окнах переднего бампера я использовал нара проекций Perspective (Перспектива) (а) щивание рельефа путем построения новых и Front (Спереди) (б) полигонов (копирование ребер с нажатой клавишей Shift), начиная от арки. Сначала построение велось путем создания общей формы (рис. 12.95, сверху) с последующим уточнением элементов бампера и разбиением его на отдельные части (рис. 12.95, снизу). Решетку, расположенную внутри бампера, постройте из отдельных параллелепипе дов с последующим преобразованием в Editable Poly (Редактируемая полигональ ная поверхность) и уточнением положения вершин относительно всей геометрии бампера. Плашка для номера — это немного модифицированный параллелепипед (рис. 12.96).
Рис. 12.95. Начало построения бампера (сверху) с последующим уточнением геометрии (снизу)
Рис. 12.96. Визуализация бампера с дополнительными элементами
Задний бампер строится аналогично переднему. В нем меньше деталей, и его го раздо легче моделировать. На рис. 12.97 показана схема расположения полигонов, из которых состоит бампер. Прежде чем приступить к построению мелких деталей автомобиля, нужно выпол нить моделирование арок и днища кузова.
614
Глава 12. Моделирование автомобиля
Днище и арки автомобиля строились как отдельные элементы. Для построения арок переднего и заднего колеса выделите открытые ребра, находящиеся по краям крыла, и скопируйте их внутрь на 1/5 от общей ширины автомобиля. После это го постройте ту часть днища автомобиля, которая расположена между арками и ку зовом. Построение ведется, как и прежде, методом копирования ребер. Затем за полните внутренние стороны арок полигонами (я строил треугольные полигоны вручную, хотя можно просто «закрыть» их, применив Cap (Накрыть) из свитка Edit Borders (Редактирование границ)). Конечно, при визуализации днища никогда не видно, а геометрия арок не критична, так как закрыта колесом, но аккуратность в работе еще никому не мешала. Как выглядит сетка полигонов на днище и в арках автомобиля, представлено на рис. 12.98.
Рис. 12.97. Задний бампер в каркасном виде (сверху) и результат его визуализации (снизу)
Рис. 12.98. Схема расположения полигонов днища и арок в окне проекции User (Пользовательская)
Перейдем к построению дверных ручек. Такие детали автомобиля, как дверные ручки и крышка бензобака, можно моде лировать двумя следующими способами.
При первом способе в окне проекции вида, перпендикулярного поверхнос ти, на которой нужно построить элемент кузова, строится сплайн по форме, соответствующей этому элементу (например, для крышки бака — прямоуголь ник с закругленными углами). Затем при помощи построения объекта типа ShapeMerge (Объединенные с формой) этот сплайн проецируется на поверх ность. Геометрия становится «разрезанной» по форме сплайна и готова для дальнейшей модификации. Данный способ подходит, когда поверхность, ко торую нужно «разрезать», не имеет большого количества разбиений, иначе появляется избыточное количество вершин, которые усложняют моделиро вание.
Второй способ моделирования подразумевает построение всех контуров эле мента за счет разрезания полигонов и манипуляции вершинами. Он более тру доемкий, но позволяет получить контроль над всей геометрией строящегося элемента.
В данном случае наиболее подходящим будет второй способ — изза большого ко личества горизонтальных ребер в области построения.
615
Моделируем BMW
Начните с построения сплайна по форме будущей ручки двери. Конечно, это де лать не обязательно, но, создав сплайн, что не отнимет много времени, можно ви зуально контролировать форму строящегося элемента. Затем, используя сплайн в качестве шаблона, сделайте разрезы полигонов, напротив которых расположен сплайн (рис. 12.99). После этого достройте минимально необходимое количество ребер и вершин для получения закругленных краев. Для этого воспользуйтесь инструментами Cut (Вычитание), Chamfer (Фаска) и Weld (Объединить) из свитков Edit Geometry (Ре дактирование геометрии) и Edit Vertices (Редактирование вершин). На рис. 12.100 представлено расположение ребер, которое получилось у меня.
Рис. 12.99. Четыре разреза, выполненные по габаритам сплайна
Рис. 12.100. Схема расположения ребер, формирующих элемент ручки двери
После корректировки формы дверной ручки сплайн, по которому она строилась, можно спрятать или удалить. Можно также спрятать внутренние полигоны руч ки, выделив их в отдельный элемент. Далее все как обычно: выделите ребра по периметру образовавшегося отверстия и скопируйте их внутрь. После этого выделите ребра, расположенные на гранях от верстия, и примените к ним инструмент Chamfer (Фаска) со значением параметра Chamfer Amount (Величина фаски), равным 1. После создания отверстия для ручки можно перейти к моделированию самой ручки двери. Для этого откройте ранее спрятанную внутреннюю часть и воспользуйтесь тем же методом копирования полигонов с последующим построением фаски по ребрам, образующим прямой угол. Но прежде разделите внутреннюю часть ручки на два элемента (как это есть в реальном автомобиле) и добавьте посередине нижнего углубление, построив ряд полигонов, смещенных относительно края (рис. 12.101). Ручку второй двери моделировать значительно проще. Достаточно скопировать внутреннюю часть уже построенной, уточнить ее положение в пространстве отно сительно второй двери и затем в окне проекции Front (Спереди) при помощи ин струмента Cut (Вычитание) построить по сплайну разрезы в поверхности двери, как это уже делалось для задней двери. После уточнения положения вершин в про странстве выделите внутреннюю часть и удалите. В результате образуется отвер стие для ручки. Далее выделите ребра по периметру отверстия и, скопировав их внутрь, придайте объем. Как и раньше, к ребрам, образующим грань, примените
616
Глава 12. Моделирование автомобиля
Chamfer (Фаска) для их закругления. Расположите внутреннюю часть ручки отно сительно отверстия и сделайте последние уточнения геометрии, при необходимо сти подкорректировав положение вершин. Если все выполнено правильно, у вас должна получиться ручка двери, показанная на рис. 12.102.
Рис. 12.101. Дверная ручка, представленная в каркасном виде в окнах проекций Front (Спереди) (сверху) и Perspective (Перспектива) (снизу)
Рис. 12.102. Результат визуализации ручки двери
Когда речь идет о моделировании автомобиля с высокой степенью детализации, многие мелкие детали, представленные в низкополигональной модели текстура ми, необходимо строить при помощи геометрии. Займемся моделированием таких незначительных деталей, присутствие которых сделает модель более интересной и реалистичной, — сделаем противотуманные и основные фары, указатели пово рота, молдинги и ограждение. Для построения противотуманной фары нужно предварительно смоделировать посадочное место. Для этого выделите элемент решетки переднего бампера и, спря тав все остальное, разрежьте плоскость так, как показано на рис. 12.103, слева. За тем, выделив внутренние полигоны, примените к ним команду Extrude (Выдавли вание) с величиной –100 (рис. 12.103, справа). После этого выделите наружные грани и сделайте фаску для придания им закруг ления. Постройте фару, используя примитив Sphere (Сфера) со значением параметра Radius (Радиус), равным 40, а количеством сегментов — 19. Преобразуйте сферу в Editable Poly (Редактируемая полигональная поверхность). На уровне полигонов выдели те до середины левую сторону сферы и, используя инструмент Select and Uniform Scale (Выделить и равномерно масштабировать), сожмите ее по оси Õ примерно в четыре раза. Затем снимите выделение с внешнего ряда полигонов (в окне про екции Front (Спереди) или Top (Сверху), удерживая нажатой клавишу Alt, обведи те те полигоны, с которых нужно снять выделение) так, чтобы остались только те, которые в дальнейшем будут образовывать стекло. Примените к выделенным поли гонам команду Bevel (Выдавливание со скосом) размером –1,5 и высотой –1 и выде лите построенный скос в отдельный объект, используя команду Detach (Отделить). Увеличив количество разбиений полигонов для обводки вокруг стекла, получим окончательную форму противотуманной фары (рис. 12.104).
617
Моделируем BMW
Рис. 12.103. Место для противотуманной фары до выдавливания полигонов (слева) и после (справа)
Рис. 12.104. Внешний вид противотуманной фары в окне проекции Perspective (Перспектива)
Перейдем к моделированию передних фар. Чтобы не повторять сделанную рабо ту, скопируйте противотуманную фару и масштабируйте ее в окне проекции Left (Слева). Блокфара имеет три самостоятельных рефлектора со стекламирассеи вателями, значит, копий должно быть три. Расположены они уступами, повторяя форму изгиба стекла, закрывающего блокфару. Блокфаре необходимо сделать корпус. Смоделируйте самую примитивную форму, напоминающую корпус фары (рис. 12.105), и на этом можно закончить. Вдоль боковых сторон автомобиля расположены декоративные элементы — молдин ги. Для их построения нужно создать дополнительные ребра. Сделайте разрез через две двери с заходом на переднее крыло. После этого выделите полигоны, состав ляющие молдинг, и разделите выделение на отдельные элементы (два на дверях и один на крыле). Далее выполните операции по созданию фасок. Аналогичным образом сделайте сигнал поворота, расположенный на переднем крыле (рис. 12.106).
Рис. 12.105. Внешний вид блок@фары в окне проекции Perspective (Перспектива)
Рис. 12.106. Результат визуализации фрагмента автомобиля с элементами боковой отделки
Элементы ограждения на крыше автомобиля можно не моделировать, но, если вы хотите это сделать, самым простым способом будет построение этих элементов при помощи примитива Box (Параллелепипед). Параллелепипед должен иметь 10 сегментов по длине, чтобы можно было сделать закругления на краях и неболь шой изгиб по длине. Параллелепипед необходимо конвертировать в Editable Poly
618
Глава 12. Моделирование автомобиля
(Редактируемая полигональная поверх ность) и дальнейшее построение вести на уровне подобъектов. Методом выдавлива ния полигонов строятся опоры. Там, где необходимо, строится фаска для придания формы (рис. 12.107). Дополнительно нужно смоделировать зад нюю и передние щетки, номерные знаки, эмблемы и большую часть внутреннего на Рис. 12.107. Элемент ограждения полнения машины. Все это необходимо, на крыше автомобиля чтобы автомобиль имел законченный вид. Однако это выходит за рамки данного упражнения. Если вы прошли все выше описанные стадии моделирования, для вас не должно составить труда выполнение этих деталей самостоятельно. После создания всех необходимых элементов автомобиля нужно собрать их воеди но. Для построения цельного кузова автомобиля примените к построенной поло вине модификатор Symmetry (Симметрия) или сделайте копию при помощи Mirror (Зеркальное отображение). Таким же образом скопируйте все симметричные эле менты автомобиля, сделанные как отдельные объекты моделирования. После добавления к автомобилю колес, текстурирования и добавления фона мо дели вы можете получить изображение, похожее на рис. 12.108.
Рис. 12.108. Результат окончательной визуализации автомобиля стандартными средствами с использованием фотографии заднего плана
ПРИМЕЧАНИЕ ___________________________________________________________________ Если у вас возникли вопросы по созданию модели автомобиля, обратитесь к файлу упражнения car.max, расположенному в папке Examples\Глава 12\Car прилагаемого к книге DVD, и проанализируйте готовую модель или ее отдельные элементы.
Глава 13
Текстурирование автомобиля • Основы текстурирования автомобиля • Текстурирование деталей автомобиля
620
Глава 13. Текстурирование автомобиля
После построения модели автомобиля необходимо ее текстурировать. Именно удачные текстуры придают модели вид, который может претендовать на реалис тичность. Текстурирование — не менее сложная и увлекательная задача, чем моделирование. В данной главе я хочу высказать свою точку зрения на текстурирование модели, в частности такой сложной, как автомобиль. Глава разделена на два упражнения. В первом рассматриваются общие вопросы и текстурирование кузова. Второе описывает текстурирование отдельных элемен тов. Текстурирование неразрывно связано с визуализацией, поэтому речь пойдет и о ви зуализации, и о текстурировании. Почему именно с визуализацией? Вы когдани будь обращали внимание, что на современных компьютерах даже сложная геомет рия без текстур визуализируется достаточно быстро? Но стоит ввести в сцену материалы с трассируемыми отражениями, глобальное освещение или мягкие тени, и время визуализации увеличивается в несколько или даже десятки раз.
Основы текстурирования автомобиля Прежде чем начинать текстурировать, необходимо определиться, для каких целей нужна модель. Если для игр или Интернета, то лучше всего подойдет низкополи гональная модель с качественными текстурами, скрывающими недочеты подобно го моделирования (кроме того, модели для визуализации в реальном времени (Real Time1) чаще всего имеют одну текстуру на весь объект). Если размер (я имею в виду количество полигонов) и время визуализации не принципиальны, то боль ше внимания стоит уделить качеству модели, материалам и текстурам. При текстурировании модели я придерживаюсь той точки зрения, что все, что можно сгенерировать при помощи процедурных карт и окрасить при помощи ма териалов, должно быть сделано именно так. Такие материалы дают максимальное качество, возможность быстро менять параметры и не занимают дисковое про странство. Естественно, все должно быть в разумных пределах. Например, я не стал бы делать регистрационный номер на автомобиле методом моделирования с последующим наложением материалов, если он не будет основной деталью изо бражения. Не следует уделять слишком пристальное внимание и материалам, на ходящимся в салоне автомобиля, которые будут едва видны через стекла. Очень часто при попытке сделать реалистичные материалы процессор нагружается на столько, что тестовая визуализация длится часами. Хочу предостеречь вас от это го. Всегда существует возможность оптимизировать сцену. Например, исключить 1
Визуализация в реальном времени применяется в играх и программах, позволяющих интерактивное управление. Суть ее состоит в том, что объекты визуализируются почти мгновенно (без больших затрат времени на просчеты). При этом используются низко полигональные модели, а текстуры не могут быть составными и иметь небольшой объем, на них сразу присутствуют тени, отражения и т. д.
Основы текстурирования автомобиля
621
из визуализации колеса, которые расположены с противоположной стороны авто мобиля, но у которых протектор на шине состоит из большого количества полиго нов, а для диска используется такой материал, как Raytrace (Трассировка), и т. д. Прежде чем приступить к непосредственному выполнению практической задачи, обратимся к теории. Что делает модель автомобиля реалистичной? Прежде всего материалы и отраже ния, затем свет и тени, которые помогают ощутить объем, и, конечно, окружение. Возьмем две фотографии автомобилей. На рис. 13.1 (смотрите также цветное изо бражение CH13_01.jpg на прилагаемом к книге DVD в папке Images\Глава 13) представлена фотография автомобиля с «жесткими» отражениями, что, с одной стороны, привносит некоторый хаос, а с другой — позволяет лучше ощутить про странство.
Рис. 13.1. Фотография автомобиля с «жесткими» отражениями
На фотографии видно, как отражаются в капоте деревья, небо, а на крыле и поро ге — трава. Такие отражения могут появиться, только если краска покрыта слоем лака и отполирована. Создавая их на вашей модели, нужно иметь в виду, что вся геометрия должна быть построена безукоризненно, иначе в отражениях проявят ся все неровности кузова. На второй фотографии (рис. 13.2) у автомобиля более «мягкое» распределение цвета по поверхности. Отражения не такие «жесткие» и почти незаметны, но вместе с тем видна глубина цвета, а выглядит автомобиль ничуть не хуже предыдущего. Судя по тени, падаю щей от автомобиля, фотография сделана в солнечный день, а отсутствие ярко вы раженных отражений говорит о том, что поверхность имеет матовую основу. Рав номерное распределение цвета по поверхности создает целостное восприятие автомобиля, от чего он только выигрывает.
622
Глава 13. Текстурирование автомобиля
Рис. 13.2. Фотография автомобиля с «мягким» распределением отражений
В качестве исходной модели для текстурирования я буду использовать модель BMW пятой серии (рис. 13.3), вы же можете применить другую модель или BMW из предыдущего упражнения по моделированию автомобиля.
Рис. 13.3. Модель автомобиля без текстур
Начните с расстановки освещения. Это первое, на что нужно обратить внимание при текстурировании. В данном случае вполне подойдет трехточечное освещение с ключевым тенеобразующим источником света. Сразу же настройте свет так, что бы он не требовал значительной коррекции в процессе работы. Изменения настро ек освещения, которые могут потребоваться в дальнейшем, должны быть незна чительными, так как свет влияет на восприятие материалов и текстур, что, в свою очередь, может потребовать повторной настройки этих компонентов. Прежде чем заняться материалом для кузова автомобиля, присвойте какуюнибудь текстуру плоскости, на которой он стоит. Это может быть земля, асфальт или до рожная плитка, как в моем случае.
Основы текстурирования автомобиля
623
ПРИМЕЧАНИЕ ___________________________________________________________________ Создание плоскости, на которой стоит автомобиль, имеет важное значение для тек@ стурирования. Это связано с тем, что полированная поверхность автомобиля должна отражать окружающие предметы. Часть окружения можно создать при помощи тек@ стурных карт, но поверхность, на которой стоит автомобиль, лучше делать при помо@ щи редактирования на уровне подобъектов, так как, кроме участия в отражениях, она принимает тени от объектов, создавая глубину пространства.
Напомню, как присваиваются текстуры объектам. 1.
Откройте окно Material Editor (Редактор материалов), щелкнув на кнопке , находящейся на панели инструментов, либо выполнив команду Rendering Material Editor (ВизуализацияРедактор материалов), либо нажав клавишу M.
2.
В окне Material Editor (Редактор материалов) щелкните на любой незадейство ванной ячейке с образцом материала.
3.
В свитке Maps (Карты текстур) нажмите кнопку None (Отсутствует) рядом с картой Diffuse Color (Цвет рассеивания).
4.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Bitmap (Растровое изображение). В результате от кроется окно диалога Select Bitmap Image File (Выбор растрового изображения).
5.
Выберите текстурную карту с изображением плитки.
В данном разделе речь идет о создании материала для кузова и лобового стекла автомобиля, поэтому все остальные объекты можно убрать со сцены, чтобы исклю чить их визуализацию. На рис. 13.4 представлены объекты сцены, с которыми мы будем работать. Теперь создайте простой материал. Для этого откройте окно Material Editor (Редак тор материалов) и щелкните на любой незадействованной ячейке с образцом ма териала. В качестве тонированной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры за тенения) строку Multi-Layer (Многослойная раскраска).
ПРИМЕЧАНИЕ ___________________________________________________________________ Можно воспользоваться и другой тонированной раскраской, например Phong (По Фон@ гу), но в таком случае придется в качестве цвета рассеивания использовать карту Falloff (Спад), а у Multi@Layer (Многослойная раскраска) данная возможность заложе@ на в базовых параметрах. Именно эта тонированная раскраска лучше всего позволя@ ет управлять двумя независимыми подсветками и создавать вид окрашенной поверх@ ности, покрытой воском или лаком.
В свитке Multi-Layer Basic Parameters (Основные параметры многослойной раскрас ки) задайте значения параметров раскраски, показанные на рис. 13.5.
624
Рис. 13.4. Кузов автомобиля, подготовленный для текстурирования
Глава 13. Текстурирование автомобиля
Рис. 13.5. Свиток Multi@Layer Basic Parameters (Основные параметры затенения) со значениями параметров раскраски
Задайте для параметров цвета свитка Multi-Layer Basic Parameters (Основные пара метры затенения) следующие значения:
Ambient (Цвет подсветки): Red (Красный) — 17, Green (Зеленый) — 36, Blue (Си ний) — 54;
Diffuse (Цвет рассеивания): Red (Красный) — 3, Green (Зеленый) — 59, Blue (Си ний) — 129;
Color (Цвет) в области First Specular Level (Первый слой отражения): Red (Крас ный) — 200, Green (Зеленый) — 191, Blue (Синий) — 237;
Color (Цвет) в области Second Specular Level (Второй слой отражения): Red (Красный) — 82, Green (Зеленый) — 116, Blue (Синий) — 227.
Обратите внимание, что вряд ли вид визуализированного вами автомобиля будет в точности соответствовать тому, что получится у меня. Я никогда не копирую ста рых настроек материалов, так как в другой сцене они обычно выглядят иначе. В связи с этим попробуем разобраться с настройками этого материала, чтобы по нять, как он работает, и уметь создавать такие материалы самостоятельно. Цвет диффузного рассеивания Diffuse (Цвет рассеивания) — основной цвет, опре деляющий цвет материала. От него зависит то, какого цвета будет кузов вашего автомобиля. Подбирается из возможных цветов заводской раскраски. Цвет окру жающей среды Ambient (Цвет подсветки) — это обычно цвет, совпадающий с цве том диффузного рассеивания, но я предпочитаю использовать более темные тона (чаще всего черный). Параметры этого цвета не критичны.
Основы текстурирования автомобиля
625
Параметр Color (Цвет) в области First Specular Leyer (Первый слой отражения) определяет глянец поверхности автомобиля. Он создает впечатление окрашенной поверхности, находящейся под слоем лака. По тону он должен быть близким к цве ту, но значительно ярче его. Параметр Color (Цвет) в области Second Specular Layer (Второй слой отражения) за дает цвет в местах бликов. Он должен содержать в себе цвет диффузного рассеи вания, но стремиться к белому. Остальные параметры — Level (Уровень), Glossiness (Глянец), Anisotropy (Анизо тропия) и Orientation (Ориентация) — могут различаться в зависимости от геомет рии и источников света. В основном они контролируют положение и размер бли ков на поверхности объекта. Счетчик Diffuse Level (Уровень рассеивания), который расположен под параметром цвета диф фузного рассеивания, позволяет допол нительно контролировать уровень ярко сти основного цвета. Кроме того, вы можете применить в каче стве карты Reflection (Отражение) карту Falloff (Спад) (рис. 13.6), использующую в качестве подматериала карту Raytrañe (Трассировка).
Рис. 13.6. Фрагмент свитка Maps (Карты текстур) с картой Falloff (Спад) в качестве карты Reflection (Отражение)
Материал усложняется картой Falloff (Спад) в качестве карты Reflection (Отраже ние), но с ее помощью можно получить контроль над интенсивностью отражений на поверхности. Настройки этой карты представлены на рис. 13.7. Цвета Front : Side (Перед : сторона) — градации серого, такие же, как и на рис. 13.7. График Mix Curve (Кривая смешивания) определяет степень участия обеих карт в отражении по мере удаления от середины объекта к его сторонам. Настройки карты Raytrañe (Трассировка), являющейся составной частью карты Falloff (Спад), представлены на рис. 13.8. Они не имеют почти никаких изменений относительно установок по умолчанию, кроме цвета окружающей среды в облас ти Background (Фон), который я сделал светлоголубым. После создания и настройки материала можно применить его к элементам кузова автомобиля. Для этого щелкните в окне Material Editor (Редактор материалов) на ячейке образца материала кузова и перетащите его в окно проекции на объект, ко торый надо текстурировать. Затем можно провести тестовую визуализацию. Для этого выполните команду RenderingRender (ВизуализацияВизуализировать). В появившемся окне Render Scene (Визуализация сцены) выберите окно проекции и щелкните на кнопке Render (Визуализировать). В результате получится визуа лизированное изображение кузова автомобиля с материалом (рис. 13.9). Вполне возможно, вы обратили внимание, что в изображении отсутствуют блики. Пусть это вас не смущает — просто я отключил их в настройках источников света. В своей работе я предпочитаю выставлять блики позже при помощи специально
626
Рис. 13.7. Свиток Falloff Parameters (Параметры спада) настроек карты Falloff (Спад)
Глава 13. Текстурирование автомобиля
Рис. 13.8. Свиток Raytracer Parameters (Параметры трассировки) настроек карты Raytrace (Трассировка)
созданных для этого источников света, когда можно управлять их местоположе нием на поверхности объекта и интенсивностью вне зависимости от основных ис точников света. Проанализируем то, что получилось при визуализации. Цвет покрытия кузова со ответствует тому, который предполагался для этого материала, но отражений по прежнему не хватает. Появились отражения на боковых дверках, бампере и немно го на капоте, но этого мало для реалистичной модели. Чтобы усилить ощущение пространства, нужно добавить отражения к кузову автомобиля. В настройках визуализатора или карты Raytrace (Трассировка) можно использо вать текстурную карту в качестве карты Environment (Окружающая среда). Это, пожалуй, самый простой способ, но не лучший. Такое качество отражений удовлет воряет требованиям скорее второстепенных деталей, чем основных (рис. 13.10). Можно создать окружение, то есть построить дополнительно геометрию (деревья, здания, людей и т. д.), которые будут отражаться в кузове и стеклах автомобиля. Метод хороший, но чреват долгой визуализацией (ведь процессору придется до полнительно просчитывать все эти объекты). Кроме того, вам придется создавать все эти объекты, если нет готовых (рис. 13.11).
627
Основы текстурирования автомобиля
Рис. 13.9. Визуализированное изображение с примененным материалом для кузова
Рис. 13.10. Отражения, полученные при помощи карты окружения
Можно построить полусферу, накрывающую автомобиль на значительном рассто янии (чтобы внутрь поместилась не только машина, но и камеры с источниками света). Затем к внутренней стороне этой полусферы применить текстуру с пано рамным изображением того, что должно отражаться в автомобиле (рис. 13.12). Кстати, после того как будет построена такая полусфера, не забудьте повернуть ее нормали внутрь. Такой метод получения отражений, пожалуй, проще, но тре бует дополнительной работы с панорамной текстурой и ее местоположением на сфере.
Рис. 13.11. Отражения на капоте, полученные от объектов сцены
Рис. 13.12. Взаимное расположение объектов сцены при построении отражений от поверхности полусферы
Последний способ — организовать в сцене присутствие дополнительных плоско стей с текстурами, которые будут отражаться в кузове автомобиля. Он допускает относительную свободу в распределении отражений по поверхности кузова авто мобиля и их контроль. Именно четвертый метод будет рассмотрен немного позже как самый подходящий для этой задачи. Сейчас создадим еще один материал — стекло. Это позволит на страивать отражения не только на кузове, но и на стеклах автомобиля, которые также являются отражающей поверхностью и занимают значительное место в вос приятии целостного изображения.
628
Глава 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.14). Сохраните полученное изображение в цветовом режиме Grayscale в любом доступ ном формате. В качестве материала для лобового стекла я использую Blend (Смешиваемый), где первый материал — тонированная окантовка стекла, второй — стекло, а маска (со зданный в программе Adobe Photoshop файл GlassFront.jpg) управляет долей каждого материала в результирующем (рис. 13.15).
629
Основы текстурирования автомобиля
Рис. 13.13. Развертка проекционных координат лобового стекла автомобиля
Рис. 13.14. Текстурная маска для материала лобового стекла
Рассмотрим материал стекла подробнее. Параметр Material 1 (Материал 1) — окан товка лобового стекла. Здесь используется материал Standard (Стандартный) с про зрачностью, равной 80, и цветом, соответствующим тому, который вы хотите видеть на краях стекла. У меня это серокоричневый цвет для Diffuse (Цвет рассеивания) и для Ambient (Цвет подсветки) с настройками Red (Красный) — 107, Green (Зеле ный) — 103, Blue (Синий) — 99. В качестве карты Reflection (Отражение) я исполь зовал карту Falloff (Спад), настройки которой идентичны установкам такой же кар ты, использованной при создании материала кузова, с той разницей, что величина параметра Reflection (Отражение) в данном случае составляет 45 (рис. 13.16).
Рис. 13.15. Настройки материала Blend (Смешиваемый) для лобового стекла
Рис. 13.16. Настройки первого материала стекла
Параметр Material 2 (Материал 2) — средняя часть лобового стекла (его заполне ние). Материал сделан по тому же принципу, что и окантовка, с той разницей, что я использовал немного другой цвет и величина прозрачности здесь составляет
630
Глава 13. Текстурирование автомобиля
уже 35, а отражений — 80. Для Diffuse (Цвет рассеивания) и Ambient (Цвет подсветки) заданы следующие значения: Red (Красный) — 83, Green (Зеленый) — 72, Blue (Си ний) — 49. Кроме того, я применяю двусторонний материал, а в качестве тониро ванной раскраски стандартного материала — Phong (По Фонгу), и хотя большой разницы нет, раскраска по Фонгу позволяет получить более мягкое сглаживание.
Рис. 13.17. Настройки второго материала стекла
Если вы внимательно посмотрите на свиток Maps (Карты текстур), то заме тите, что отсутствует карта преломле ния в строке Refraction (Преломления). Хотя стекло и является материалом, преломляющим свет, проходящий че рез него, но изза его незначительной толщины и с учетом расстояния, с ко торого автомобиль будет визуализиро ваться, я не считаю нужным исполь зовать в данном случае преломления. Эффект от их применения почти неза метен, а процессор получает ощутимую дополнительную нагрузку. При жела нии вы можете поэкспериментировать, используя карту Raytrace (Трассиров ка) или Reflect/Refract (Отражение/ преломление). На рис. 13.17 показаны использованные мною настройки вто рого материала для лобового стекла автомобиля.
Продолжим разговор об организации сцены и вернемся к отражениям. Дальней шую работу продолжите, используя четвертый способ получения отражений при помощи дополнительных плоскостей. Для этого поместите в сцену несколько при митивов Plane (Плоскость): один должен быть расположен сверху (имитировать небо), оставшиеся (от четырех до восьми) располагаются по сторонам автомоби ля. Все плоскости должны находиться на небольшом расстоянии от автомобиля (рис. 13.18). При создании плоскостей не забудьте проследить, чтобы их нормали были обра щены к автомобилю. После этого присвойте плоскостям текстуры с изображения ми, которые будут отражаться в автомобиле. Для всех плоскостей, кроме плоско сти неба, я использовал одну фотографию, хотя можно и разные — дело вкуса. Перед выполнением визуализации необходимо изменить параметры всех плоско стей. Для этого выполните следующие действия. 1.
В любом окне проекции выделите все плоскости, построенные для генерации отражений.
2.
Щелкните правой кнопкой мыши на выделении, в результате чего откроется контекстное меню.
Основы текстурирования автомобиля
631
Рис. 13.18. Расположение плоскостей с текстурами отражения в окнах проекций программы 3ds Max
3.
Выберите пункт Object Properties (Свойства объекта).
4.
В области Rendering Control (Управление визуализацией) появившегося окна Object Properties (Свойства объекта) задайте параметрам объекта значения, по казанные на рис. 13.19.
Теперь можно провести тестовую визуализацию. Если использовались темные фотографии, то вам, возможно, понадобится скорректировать положение текстур и изменить значение параметра Self-Illumination (Собственное свечение). Иногда приходится менять положение плоскости, имитирующей небо, чтобы найти опти мальные отражения. После добавления плоскостей я поместил в сцену один источник света, который создает блики на бампере и передней части капота, а также дополнил автомобиль некоторыми деталями и провел тестовую визуализацию. На рис. 13.20 показано получившееся у меня изображение. На данном рисунке изображена только первая тестовая визуализация. Чтобы получить хорошие реалистичные отражения, нужно не только подобрать соответ ствующие текстуры, но и правильно их разместить относительно поверхности автомобиля. Желательно, чтобы текстуры и их отражения соответствовали окру жающей среде вашей сцены.
632
Рис. 13.19. Настройка плоскостей отражения в области Rendering Control (Управление визуализацией)
Глава 13. Текстурирование автомобиля
Рис. 13.20. Визуализация кузова и стекол автомобиля с отражениями
ПРИМЕЧАНИЕ ___________________________________________________________________ На прилагаемом DVD в папке Examples\Глава 13 находится файл Car_materials.mat, содержащий материалы кузова и стекла.
Текстурирование деталей автомобиля В предыдущем разделе мы рассмотрели создание основных материалов для тексту рирования модели автомобиля. Сейчас займемся созданием материалов для более мелких, но не менее важных деталей. Начнем с хромированных деталей кузова. Материал хрома хорошо получается тогда, когда он не просто имеет карту тексту ры в качестве отражений, а действительно отражает окружающие предметы. Как вариант можно использовать плоскости с текстурами для создания отражений, о чем говорилось в предыдущем разделе. Для создания хрома откройте окно Material Editor (Редактор материалов) и щелк ните на любой незадействованной ячейке с образцом материала. В качестве тони рованной раскраски стандартного материала выберите в раскрывающемся списке свитка Shader Basic Parameters (Основные параметры затенения) строку Strauss (По Штраусу) и задайте значения, показанные на рис. 13.21. Выбранный метод раскраски по Штраусу предназначен для имитации полирован ных металлических поверхностей с блеском. Особенность данного метода заклю чается в том, что в местах, где нет отражений, поверхность выглядит черной (это необходимо для передачи материала хрома). Для параметра Color (Цвет) этого материала я использовал светлосерый цвет, ко торый, на мой взгляд, лучше всего подходит для правильной передачи хромиро ванных деталей автомобиля. Отражения генерируются картой Raytrace (Трассировка) с настройками по умол чанию. Имеет значение только величина параметра Reflection (Отражение). У меня
633
Текстурирование деталей автомобиля
это значение равно 60, у вас оно может быть другим (зависит от источников света и текстур, использованных для генерации отражений). После применения материала к хромированным объектам автомобиля можно сде лать тестовую визуализацию фрагмента кузова с решеткой радиатора (рис. 13.22).
Рис. 13.21. Настройки материала хрома
Рис. 13.22. Визуализация хромированной решетки радиатора
Теперь поговорим о картах выдавливания. На капоте и багажнике автомобиля на ходятся две эмблемы BMW, которые расположены в небольших углублениях ку зова. Моделировать такие углубления при помощи геометрии нецелесообразно, а при помощи карты Bump (Рельефность) это можно сделать просто и быстро. Чтобы создать текстуру с картой выдавливания, выполните следующие действия. 1.
Щелкните в окне Material Editor (Редактор материалов) на образце материала ку зова и, удерживая нажатой кнопку мыши, перетащите его в свободную ячейку.
2.
Присвойте этот материал капоту, перетащив его из Material Editor (Редактор материалов) на капот автомобиля в любом из окон проекций. Если сейчас вы полнить визуализацию, ничего не изменится, так как на капоте будет тот же материал, что и раньше.
3.
В строке Bump (Рельефность) свитка Maps (Карты текстур) настроек материа ла капота щелкните на кнопке None (Отсутствует).
4.
В открывшемся окне Material/Map Browser (Окно выбора материалов и карт) выберите из списка карту Gradient Ramp (Усовершенствованный градиент).
5.
Настройте параметры карты, как показано на рис. 13.23.
6.
Установите значение величины выдавливания, равное 6.
634
Глава 13. Текстурирование автомобиля
Разберемся с настройками этой карты. Значение Radial (Радиальный) в списке Gradient Type (Тип градиента) необходимо, чтобы градиентная карта получилась в виде круга. Это карта выдавливания, поэтому используются градации серого цвета. Положение ползунков зависит от размера круга и текстурных координат, присвоенных капоту. Для сглаживания краев применяется размытие. Отключите повторение текстуры, так как у вас только один круг с выдавливанием (снимите флажки Tile (Повторить) в свитке Coordinates (Координаты)). Что касается текстурных координат, то нужно применить к капоту модификатор UVW Mapping (UVWпроекция), после чего сдвинуть и масштабировать Gizmo (Га баритный контейнер Гизмо) (на уровне подобъектов модификатора) так, чтобы текстура легла на капоте под значком логотипа (рис. 13.24).
Рис. 13.23. Настройки карты Gradient Ramp (Усовершенствованный градиент) для получения круглого выдавливания на капоте автомобиля
Рис. 13.24. Положение текстуры на капоте автомобиля (слева) и его визуализация (справа)
Этот способ можно использовать и для других целей, например обозначить крыш ку бака или сделать на бампере элементы крепления. Таким образом вы сможете улучшить внешний вид модели, не прибегая к дополнительной геометрии. Рассмотрим вариант изготовления материала для фар и задних фар. СОВЕТ ___________________________________________________________________________ Если в сцене фары не будут видны слишком близко, то вполне достаточно будет про@ сто наложить текстуру. Однако если вы хотите иметь по@настоящему хорошее изо@ бражение, то придется моделировать почти все элементы реальной фары.
635
Текстурирование деталей автомобиля
Начнем со стекла, закрывающего блокфару (у вас может быть другая модель ав томобиля, без такого стекла) — прозрачного и гладкого по всей поверхности. Исходя из этого создадим простой прозрачный материал с высокой отражающей способностью для получения на поверхности бликов. В качестве тонированной раскраски стандартного материала из раскрывающегося списка свитка Shader Basic Parameters (Основные параметры затенения) выберите строку Anisotropic (Ани зотропный). Я использовал анизотропную раскраску благодаря ее возможности управлять положением и формой блика. Настройки материала стекла представле ны на рис. 13.25. В качестве Diffuse (Цвет рассеивания) и окружающей среды Ambient (Цвет под светки) использован светлокоричневый цвет с настройками Red (Красный) — 101, Green (Зеленый) — 92, Blue (Синий) — 77. На этом можно было закончить настрой ку материала, но я решил немного улучшить его, добавив в качестве цветового фильтра карту Falloff (Спад). Даже со стандартными настройками эта карта позво ляет получить затемнения на краях, что придает стеклу более естественный вид. При помощи карты Raytrace (Трассировка) можно создать на поверхности отраже ния окружающих предметов. В этой карте настройки также не менялись. На рис. 13.26 показана визуализация фрагмента автомобиля со стеклом фар.
Рис. 13.25. Настройки материала наружного стекла блок@фары
Рис. 13.26. Визуализация стекла фар
Займемся внутренним пространством фары. Начните с указателей поворота. Воспользуйтесь стандартным материалом, для чего щелкните в окне Material Editor
636
Глава 13. Текстурирование автомобиля
(Редактор материалов) на ячейке со свободным образцом. В свитке Maps (Карты текстур) выбранного материала примените две одинаковые карты Gradient Ramp (Усовершенствованный градиент) в качестве карты Diffuse Color (Цвет рассеива ния) и в качестве карты Bump (Рельефность). Параметры карты, которую я исполь зовал для этих целей, показаны на рис. 13.27. Величина выдавливания этой карты в свитке 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 пред ставлены настройки материала рифленого стекла для автомобильной фары. Для Diffuse (Цвета рассеивания) и Ambient (Цвет подсветки) использован светло серый цвет. Коэффициент преломления оставлен заданным по умолчанию, но при
Текстурирование деталей автомобиля
637
желании его можно увеличить до 2. Величина параметра Opacity (Непрозрачность) равна 50. Здесь тоже могут быть варианты, но разница значений должна быть не большой. Чтобы получить на стекле рифленую поверхность, необходимо исполь зовать в качестве карты Bump (Рельефность) карту Checker (Шахматная текстура). Параметры этой карты представлены на рис. 13.30.
Рис. 13.29. Настройки материала стекла автомобильной фары
Рис. 13.30. Параметры карты рельефности для стекла фары
В свитке Checker Parameters (Параметры шахматной текстуры) цвет Color #1 — чер ный, а Color #2 — белый. ПРИМЕЧАНИЕ ___________________________________________________________________ Для карты Bump (Рельефность) обычно используется монохромное изображение (хотя может быть применена цветная карта). При этом 100 % черный цвет не влияет на ве@ личину выдавливания, в то время как белый создает максимальный эффект. Градации серого находятся между максимальным и минимальным выдавливанием, в зависимости от интенсивности цвета. Величина эффекта рельефности при использовании карты Bump (Рельефность) ограничена, в связи с чем при необходимости большего выдавли@ вания применяйте модификатор Displace (Смещение) или моделирование неровностей.
638
Глава 13. Текстурирование автомобиля
Количество повторений шахматного поля по вертикали и горизонтали (заданное, например, в полях Tiling (Повтор)) вы можете ставить свое, так же, как и любое гра фическое изображение рельефа в качестве текстуры. Эта же карта (карта рельефности) должна быть использована как составляющая карты Raytrace (Трассировка) для преломлений (рис. 13.31). При текстурировании фары я пытался приблизиться к внешнему виду фар авто мобиля BMW. Вам, возможно, понадобится делать другие форму и текстуры, если вы работаете с другой моделью или автомобилем иной марки.
СОВЕТ ___________________________________________________________________________ Более сложный рисунок неровностей можно получить, используя рисованные карты выдавливания.
На рис. 13.32 показана визуализация фар после применения к ним материала стек ла и хрома.
Рис. 13.31. Параметры трассировки для карты Refraction (Преломление)
Рис. 13.32. Результат визуализации фар
Теперь можно визуализировать всю блокфару вместе с геометрией кузова. Воз можно, вам придется скорректировать интенсивность освещения или немного из менить параметры материала фары. Окончательная настройка материала прово дится в процессе визуализации всех элементов автомобиля в целом. На рис. 13.33 представлен результат визуализации фрагмента передней части тек стурируемого автомобиля. Теперь займемся задними фарами. Изза того, что форма рельефа этих фар зна чительно сложнее, чем передних, придется рисовать текстуру выдавливания. Но прежде нужно присвоить элементам текстурные координаты. Обычно я ис пользую модификатор Unwrap UVW (Расправить UVWпроекцию). О том, как это
639
Текстурирование деталей автомобиля
делается, говорилось в предыдущем упражнении на примере лобового стекла, по этому я лишь напомню последовательность работы. 1.
Выделите заднюю фару (достаточно одной, затем можно будет сделать зер кальную копию относительно оси автомобиля).
2.
Примените к выделению модификатор Unwrap UVW (Расправить UVWпроек цию).
3.
Выполните развертку текстурных координат.
4.
Сделайте снимок окна с разверткой при помощи клавиши Print Screen или лю бой программой захвата изображения экрана.
5.
Вставьте изображение в нижний слой приложения редактирования растровой графики (например, Adobe Photoshop) и создайте карту выдавливания.
6.
Сохраните монохромное изображение в формате, доступном программе 3ds Max, например PNG (рис. 13.34).
Рис. 13.33. Визуализация блок@фары вместе с передней частью автомобиля
Рис. 13.34. Карта выдавливания для задней фары автомобиля
Форма и рисунок карты рельефа должны соответствовать задней фаре настояще го автомобиля. Кроме карты рельефа, для материала стекла задней фары вам понадобятся две маски. Они необходимы, чтобы разделить цвета, присутствующие в фаре. Одну маску сделайте при помощи карты Gradient Ramp (Усовершенствованный гради ент), а вторую выполните в виде чернобелого изображения в программе Adobe Photoshop. Первая будет разделять цвета по горизонтали, а вторая выделит белый (рис. 13.35). Данный материал будет немного сложнее предыдущих, но принцип его созда ния такой же. Как и в случае с передней фарой, нужно позаботиться, чтобы зад няя фара имела корпус с хромированным материалом, а стекло не отбрасывало тени. Обычно внутреннее пространство корпуса фары разделено на части пе регородками, и если смоделировать их, то можно улучшить вид будущей модели. Если вы не планируете визуализацию крупных планов, то моделировать внут реннее пространство не обязательно. На рис. 13.36 представлено изображение фрагмента окна Material Editor (Редактор материалов) с материалом стекла задней фары.
640
Рис. 13.35. Маска для разделения цвета, созданная в программе Adobe Photoshop
Глава 13. Текстурирование автомобиля
Рис. 13.36. Параметры материала стекла задней фары
Рассмотрим подробнее, из чего состоит этот материал, и его основные настройки.
Значение параметра Index of Refraction (Коэффициент преломления) равно 2,5. Обычно для стекла это много, но с таким коэффициентом оно смотрится лучше.
Параметр Filter (Цвет фильтра) свитка Extended Parameters (Дополнительные параметры) имеет карту Filter Color (Цвет фильтра) и определяет цвет всего объекта. Цвет фары состоит из двух основных: красного и оранжевого, поэто му для их взаимного расположения на объекте использована карта Mix (Сме шивание).
Карта Bump (Рельефность) создает на поверхности рельеф. Это монохромное изображение, созданное вами в программе Adobe Photoshop.
Карта Refraction (Преломление) делает стекло прозрачным.
Рассмотрим каждую карту. В качестве цвета фильтра я решил использовать со ставную карту, хотя проще сделать трехцветную растровую карту. Проще, но не
Текстурирование деталей автомобиля
641
лучше, так как в процессе настройки материала такую карту приходится несколь ко раз переделывать: в зависимости от настроек материала и освещения меняется цвет объекта при визуализации. Параметры карты цветового фильтра Mix (Сме шивание) показаны на рис. 13.37. Эта карта разделяет геометрию на две части при помощи Gradient Ramp (Усовер шенствованный градиент) (рис. 13.38). В верхней части — оранжевый цвет (пара метр Color #1) с настройками Red (Красный) — 244, Green (Зеленый) — 147, Blue (Синий) — 42. Нижняя часть задней фары темнокрасного цвета. В ней присут ствует белый параллелепипед, поэтому придется еще раз воспользоваться кар той Mix (Смешивание). В данном случае образец цвета Color #2 не имеет значения, так как он определяется второй картой смешивания.
Рис. 13.37. Параметры первой карты смешивания
Рис. 13.38. Параметры карты Gradient Ramp (Усовершенствованный градиент)
Карта Gradient Ramp (Усовершенствованный градиент) содержит два цвета: черный и белый, которые задают область смешивания. Положение ползунков подбирает ся опытным путем так, чтобы линия соединения цветов оказалась в нужном месте. Кроме того, необходимо повернуть отображение карты на 90° по оси W. В карте Mix (Смешивание) должны быть определены два цвета. Маска регулирует, как они будут между собой взаимодействовать (рис. 13.39). Если помните, это составной цвет нижней части задней фары. Здесь Color #1 (Цвет 1) имеет параметры Red (Красный) — 185, Green (Зеленый) — 24, Blue (Синий) — 0. Второй цвет (Color #2 (Цвет 2)) — белый. Карта Refraction (Преломление) почти не требует настроек. Вам только необходи мо использовать в области Background (Фон) в качестве карты окружающей среды карту, подготовленную для выдавливания (рис. 13.40).
642
Рис. 13.39. Параметры карты смешивания для второго цвета стекла
Глава 13. Текстурирование автомобиля
Рис. 13.40. Настройки карты преломления
На рис. 13.41 представлена иерархия материалов, иллюстрирующая, как материа лы взаимодействуют между собой и в какой последовательности накладываются. Визуализируем изображение. Нужный результат получился не сразу, но при по мощи карты Mix (Смешивание) я быстро подобрал необходимые цвета.
Рис. 13.41. Иерархия материала стекла задней фары
Рис. 13.42. Результат визуализации задней фары в составе кузова автомобиля
Последнее, о чем я хочу рассказать в этом упражнении, — текстурирование авто мобильного колеса. Начнем с резины. На рис. 13.43 представлены настройки материала. Тонкость создания хорошего материала шины заключается в карте Falloff (Спад) для Diffuse Color (Цвет рассеивания). Не менее важно использовать карту Bump (Рельеф ность) для протектора (если вы не сделали его путем редактирования на уровне под объектов) или для надписей на боковой стороне шины, но только карта Falloff (Спад) делает реалистичным материал резины. При помощи этой карты (рис. 13.44) можно получить на краях покрышки дымку, которая существует на реальных колесах. Первый цвет определяет основной цвет шины. У меня это темносерый цвет с па раметрами Red (Красный) — 72, Green (Зеленый) — 72, Blue (Синий) — 72. Второй цвет — цвет дымки. Его параметры: Red (Красный) — 173, Green (Зеленый) — 180, Blue (Синий) — 182. Возможно, вам понадобится немного другой оттенок (все за висит от освещения), но принцип текстурирования от этого не меняется.
Текстурирование деталей автомобиля
Рис. 13.43. Настройки материала шины
643
Рис. 13.44. Параметры карты Falloff (Спад) для шины
Карту рельефа можно нарисовать в любой программе растровой графики или получить из фотографии шины. В любом случае это должно быть монохромное изображение, где градации цвета, отличного от черного, будут создавать на объек те рельеф (рис 13.45). На рис. 13.46 представлен результат визуализации шины с примененным к ней материалом.
Рис. 13.45. Карта рельефа для шины
Рис. 13.46. Результат визуализации шины
644
Глава 13. Текстурирование автомобиля
Материал диска — хром, который вы создавали в начале раздела. Если колесо не будет видно вблизи, я использую текстурную карту в качестве от ражений. Это экономит время визуализации, так как для просчетов карты Raytrace (Трассировка) требуются дополнительные компьютерные ресурсы. Иногда для дисков приходится применять логотипы и карты Bump (Рельефность). Я пользуюсь для этих целей материалом Blend (Смешиваемый). Этот материал по своим настройкам похож на рассмотренную выше карту Mix (Смешивание). В качестве примера я представляю вашему вниманию настройки этого материала (рис. 13.47) для логотипа, выполненного на диске колеса. Вторым материалом в данном случае является стандартный материал черного цве та, хотя может быть применена любая другая карта текстуры или материал. Mask (Маска) — это чернобелое растровое изображение логотипа (рис. 13.48). Именно она определяет взаимное смешивание двух материалов.
Рис. 13.47. Параметры материала Blend (Смешиваемый)
Рис. 13.48. Маска для смешивания двух материалов
На рис. 13.49 представлен фрагмент модели колеса с примененным материалом Blend (Смешиваемый).
Рис. 13.49. Фрагмент визуализации диска
ПРИМЕЧАНИЕ ___________________________________________________________________ На прилагаемом к книге DVD в папке Examples\Глава 13 находится файл Car_details.mat с материалами деталей автомобиля и Wheel.mat с материалом шины и диска.
На этом упражнение по визуализации автомобиля можно считать законченным. Иногда я оставляю на несколько дней настройку визуализации, а затем возвращаюсь к ней, пытаясь поновому осмыслить сделанную работу. Это помогает увидеть ошиб ки. Часто полезно показать работу посторонним людям и выслушать их замечания.
Глава 14
Моделирование головы • Моделирование головы при помощи модуля Surfacetools • Моделирование головы при помощи полигонов • Моделирование ресниц • Использование UV.проецирования для полигональной модели головы • Текстурирование головы человека • Создание волос
646
Глава 14. Моделирование головы
Моделирование головы — не только интересное, но и сложное занятие, которое по плечу только опытным пользователям программ трехмерной графики. Все описан ные в этой главе операции требуют предварительной подготовки. В двух первых разделах рассмотрено моделирование при помощи модуля Surfacetools и полигонального моделирования. Они описывают принципы моделирования го ловы со средним уровнем детализации, достаточным для создания реалистичного образа. В следующих разделах рассказано, как создаются текстуры лица человека. Кроме того, рассмотрено, как создать волосы для модели.
Моделирование головы при помощи модуля Surfacetools Разработанный Питером Ватье (Peter Watje) для компании Digimation модуль Sur facetools стал незаменимым средством для моделирования объектов органическо го происхождения. При работе с ним вы размещаете сплайны в соответствии с кон турами модели, после чего применяете один из двух инструментов Surfacetools — модификатор поверхности Surface (Поверхность) — и превращаете сплайны в го товую модель. Как только вы начнете работать с этим модулем, вы поймете, на сколько просто можно создавать сложные модели. Прежде чем перейти к моделированию головы, вам необходимо обладать двумя фотографиями головы: в фас и профиль. ПРИМЕЧАНИЕ ___________________________________________________________________ При желании вы можете воспользоваться фотографиями Front.jpg и Side.jpg, подго@ товленными для работы с данной главой, которые находятся в папке Examples\Глава 14 прилагаемого к книге DVD.
На рис. 14.1 представлены фотографии, с которыми буду работать я.
Рис. 14.1. Фотографии головы в фас (слева) и профиль (справа), подготовленные для моделирования
Моделирование головы при помощи модуля Surfacetools
647
Обратите внимание, что оба вида должны иметь одинаковый размер и пропорции (не забывайте о том, что мы моделируем в трехмерном пространстве). Кроме того, размер изображений должен быть достаточно большой, чтобы были хорошо вид ны детали (я использовал 1000 × 1100 пикселов). Только после того, как будут вы полнены все приготовления в программе редактирования растровых изображений, можно переходить к работе в 3ds Max. Практически любое моделирование такого рода начинается с создания виртуаль ной студии. Для данного случая подойдет самое примитивное пересечение двух плоскостей (рис. 14.2).
Рис. 14.2. Виртуальная студия
Моделирование головы при помощи сплайнов можно вести несколькими спосо бами. Они похожи друг на друга и отличаются только последовательностью моде лирования и расположением кривых на поверхности объекта. Я постараюсь как можно доступнее описать весь процесс моделирования так, как выполняю его сам. Подход к моделированию достаточно прост: сначала создадим все необходимые сплайны в окне проекции Front (Спереди), а затем скорректируем их положение в окнах проекций Left (Слева) и Top (Сверху), после чего применим модификатор создания поверхности Surface (Поверхность). Приступим к моделированию. Вопервых, так как мы имеем дело с симметричной моделью, достаточно построить только одну ее половину. Вовторых, можно со здать отдельные части головы и затем соединить их в единое целое. Я предпочи таю отдельно строить только ухо и волосы (если они делаются геометрией).
648
Глава 14. Моделирование головы
Прежде всего выполните следующие действия. 1.
Для активизации инструмента построения сплайна выполните команду CreateShapesLine (СозданиеФормыЛиния).
2.
Установите в свитке Creation Method (Метод создания) настроек объекта Line (Линия) переключатели Initial Type (Начальный тип) и Drag Type (Вершина при перетаскивании) в положения Smooth (Сглаживание) для построения сгла женных вершин в процессе создания сплайна (рис. 14.3).
3.
Чтобы видеть вершины сплайна не только при построении, в свитке Display Properties (Свойства отображения) вкладки Display (Отображение) команд ной панели установите флажок Vertex Ticks (Метки вершин) (рис. 14.4).
Рис. 14.3. Настройки для создания сплайна
Рис. 14.4. Настройки отображения вершин в свитке Display Properties (Свойства отображения)
ПРИМЕЧАНИЕ ___________________________________________________________________ Задать отображение вершин сплайна можно также в свитке Display Properties (Свойства отображения) окна Object Properties (Свойства объекта) для объекта Line (Линия).
Начнем с построения контура глаза (хотя можно начинать создание модели с лю бой ее части). Для этого при активном инструменте построения линии щелкните в окне проекции Front (Спереди) на левой части глаза и постройте восемь точек по периметру разреза глаза (рис. 14.5). СОВЕТ ___________________________________________________________________________ Выполняя упражнение по моделированию головы, не ставьте перед собой задачу сде@ лать модель, похожую на изображение на фотографии, — на данном этапе значитель@ но важнее научиться правильно моделировать, поэтому просто постарайтесь довес@ ти работу до конца, что само по себе нелегко. На начальном этапе будет достаточно, если общие формы модели будут соответствовать действительности.
Моделирование головы при помощи модуля Surfacetools
649
Далее нужно построить новые сплайны вокруг уже существующего, но прежде необходимо сделать так, чтобы новый сплайн принадлежал той форме, которая была уже создана. Для этого надо снять флажок Start New Shape (Начать новую форму) в свитке Object Type (Тип объекта) (рис. 14.6).
Рис. 14.5. Начало построения сплайнов в окне проекции Front (Спереди)
Рис. 14.6. Свиток Object Type (Тип объекта)
Можно построить еще один сплайн вокруг существующего. Для этого в окне про екции Front (Спереди), удерживая нажатой клавишу Shift, воспользуйтесь коман дой Scale (Масштабирование) контекстного меню и увеличьте копию сплайна. После этого на уровне редактирования вершин немного скорректируйте положе ние вновь созданных вершин. Новый сплайн можно также построить обычным способом (рис. 14.7). В процессе построения сплайна не забывайте о том, что для поверхности такого типа предпочтительно использовать по четыре вершины для образования патча, поэтому старайтесь их строить осознанно и в тех местах, которые обеспечивают именно такое построение. Кроме того, как уже говорилось выше, сплайны должны повторять характерные линии строящейся модели. После того как вы построите два сплайна по форме разреза глаза, создайте еще один вокруг глаза, но уже от середины переносицы, далее по линии брови до окон чания глазной впадины и обратно (рис. 14.8).
Рис. 14.7. Второй сплайн, построенный методом копирования
Рис. 14.8. Третий сплайн, построенный вокруг глаза
650
Глава 14. Моделирование головы
Для выполнения дальнейших операций построения сплайнов необходимо настро ить привязки к вершинам. Для этого щелкните правой кнопкой мыши на кнопке Snaps Toggle (Переключение привязок) , в результате чего откроется окно Grid and Snap Settings (Настройки сетки и привязок). Установите в нем флажки, как по казано на рис. 14.9. После этого можно соединить построенные вершины поперечными сплайнами (рис. 14.10). Для этого в области New Vertex Type (Тип новых вершин) свитка Geometry (Геометрия) настроек сплайна установите переключатель в положение Smooth (Сглаживание), а затем щелкните на кнопке Create Line (Создать линию), после чего начните построение сплайнов.
Рис. 14.9. Окно Grid and Snap Settings (Настройки сетки и привязок) с настройками привязок
Рис. 14.10. Созданные поперечные сплайны
Продолжаем строить сплайны. На этот раз спуститесь немного вниз и постройте горизонтальный сплайн, проходящий по верхней части крыльев носа до середины уха, и сплайн по лобной кости вокруг глаза до пересечения с нижним сплайном. Не забывайте при этом выдерживать соответствие уже построенному количеству вершин (рис. 14.11). Продолжите построение сплайнов и соедините вершины двух вновь построенных с вершинами созданных ранее (рис. 14.12).
Рис. 14.11. Добавлены два новых сплайна
Рис. 14.12. Построены поперечные сплайны
Моделирование головы при помощи модуля Surfacetools
651
Напомню, что пока все построения ведутся только в окне проекции Front (Спе реди). Создайте еще два сплайна в районе лобной кости. Количество вершин можно со кратить до трех в верхнем и до четырех в нижнем сплайнах (рис. 14.13), так как в этом месте геометрия не имеет ярко выраженных изменений. Хочу напомнить, что мы строим модель одной половины головы, следовательно, крайние левые вершины сплайнов должны проходить по осевой линии, то есть через середину лба, носа, губ и подбородка. Далее создайте сплайн по контуру верхней части головы и соедините его с уже су ществующими (рис. 14.14).
Рис. 14.13. Два сплайна, построенные в области лобной кости
Рис. 14.14. Сплайны, построенные по контуру головы
Продолжите создание сплайнов в нижней части лица. Старайтесь строить верши ны так, чтобы сплайны проходили по характерным линиям, образованным осно ванием и крыльями носа, а также губами и разрезом рта (рис. 14.15). Если бы мы стремились к большей детализации лица, для формирования геомет рии носа и губ пришлось бы значительно увеличить количество вершин, но в дан ном задании постараемся обойтись минимальным. Постройте еще некоторое количество кривых, чтобы закончить формирование каркаса из сплайнов для нижней части лица (рис. 14.16). До сих пор вы создавали сплайны, опираясь лишь на их местоположение в двумер ном пространстве (в окне проекции Front (Спереди)), не обращая внимания на то, как они связаны друг с другом и где находится начало и конец сплайна. Корректи ровка этих параметров важна для правильного построения поверхности. Обратите внимание, как выделенный сплайн в верхней части головы (у вас это может быть в другом месте) описывает форму лица (рис. 14.17). Сплайн начинается в области верхней части уха, доходит до середины нижней части глаза, далее пересекает его и поднимается к верхней точке осевой линии, а затем снова спускается к височной кости. Если применить модификатор Surface
652
Рис. 14.15. Построение сплайнов в нижней части лица
Глава 14. Моделирование головы
Рис. 14.16. Форма и расположение сплайнов в нижней части лица
(Поверхность) к таким сплайнам, на выходе получится много искажений поверх ности, с трудом поддающихся корректировке. Следовательно, необходимо внести изменения в структуру сплайнов. Правильнее будет сделать так, чтобы сплайны разделялись на горизонтальные и вертикальные, проходя через все лицо. Чтобы скорректировать геометрию сплайнов, выполните следующие действия. 1.
Выделите вершины там, где, по вашему мнению, должен заканчиваться сплайн (обычно на границах общей формы).
2.
В свитке Geometry (Геометрия) щелкните на кнопке Break (Разбить), в резуль тате чего сплайн будет разбит в этом месте на две части.
3.
В режиме редактирования подобъектов Segment (Сегмент) выделите те сег менты сплайнов, которые должны будут сформировать новый сплайн и под лежат объединению.
4.
Инвертируйте выделение, нажав Ctrl+I.
5.
В свитке Geometry (Геометрия) щелкните на кнопке Hide (Спрятать). В резуль тате у вас останутся только выделенные сплайны (у меня это сплайны, описы вающие контур лица) (рис. 14.18).
Рис. 14.17. Сплайн, описывающий форму лица
Рис. 14.18. Сплайны, выделенные для объединения
Моделирование головы при помощи модуля Surfacetools
653
6.
После того как будут спрятаны все лишние кривые, выделите вершины в мес тах соединения отдельных сплайнов и объедините их, щелкнув на кнопке Weld (Объединить) в свитке Geometry (Геометрия). В результате получится один непрерывный сплайн.
7.
Откройте ранее спрятанные сплайны, щелкнув в свитке Geometry (Геометрия) на кнопке Unhide All (Показать все).
8.
Повторите те же операции разбиения и слияния для других сплайнов.
На рис. 14.19 показано, как должны выглядеть некоторые из построенных и отре дактированных сплайнов. Прежде чем перейти к расположению сплайнов в пространстве, произведем неко торые настройки, облегчающие процесс моделирования. 1.
Задайте локальную систему координат, для чего в раскрывающемся списке Reference Coordinate System (Система координат) на главной панели инструмен тов выберите Local (Локальная).
2.
На панели инструментов щелкните на кнопке Select and Move (Выделить и пе реместить), а затем активизируйте перемещение по оси Z, для чего нажмите клавишу F7.
3.
В свитке Selection (Выделение) установите флажок Area Selection (Область выделения) (рис. 14.20), что поможет выбирать сразу две вершины в местах пересечения сплайнов.
Рис. 14.19. Форма и расположение отредактированных сплайнов
Рис. 14.20. Настройки свитка Selection (Выделение)
После выполнения дополнительных настроек можно передвигать вершины в окне проекции бокового вида по оси Z в направлении линии профиля. Передвинуть в новое положение необходимо все вершины, кроме тех, которые рас положены на вертикальном сплайне, очерчивающем контур головы в окне проек ции Front (Спереди) (это не относится к серединной линии). На рис. 14.21 показа но начало данного процесса.
654
Глава 14. Моделирование головы
Рис. 14.21. Начало работы по корректировке положения вершин в окне проекции бокового вида
На данном этапе моделирования не стоит пытаться точно найти положение вер шин в пространстве, для этого немного позже сделаем соответствующие уточне ния. Продолжайте перемещать вершины в окне проекции вида сбоку до тех пор, пока не получится каркас из сплайнов, охватывающий лицевую часть (рис. 14.22).
Рис. 14.22. Положение сплайнов в пространстве на лицевой части головы
Моделирование головы при помощи модуля Surfacetools
655
Продолжите наращивание сплайнов. На сей раз основные построения нужно вес ти в окне проекции вида сбоку. Включите привязку к вершинам и достройте сплайны на затылочной части головы. Здесь не требуется построения большого количества вершин — достаточно двухтрех дополнительных вершин на сплайн (рис. 14.23). Продолжите построение, соединив вновь созданные точки вертикальными сплай нами (рис. 14.24).
Рис. 14.23. Сплайны, построенные в окне проекции вида сбоку
Рис. 14.24. Соединенные вертикальные сплайны в окне проекции вида сбоку
Теперь нужно скорректировать положение вновь построенных точек в простран стве и проанализировать состояние сплайнов. Сплайны, которые имеют начало или конец в середине сетки, нужно объединить со сплайнами, к которым они при мыкают (так же, как для лицевой части головы). После этого получится почти законченный каркас из сплайнов. На этом этапе мо делирования можно посмотреть, какой будет поверхность разрабатываемой моде ли. Для этого выполните следующие действия. 1.
Выделите в любом окне проекции каркас из сплайнов (это должен быть один объект).
2.
Сделайте его копию, для чего выполните команду EditClone (ПравкаКло нировать) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при клонировании объектов Reference (Подчине ние).
3.
Присвойте копии модификатор Surface (Поверхность), выполнив команду ModifiersPatch/Spline EditingSurface (МодификаторыРедактирование пат чей/сплайновПоверхность).
4.
При необходимости в свитке Parameters (Параметры) установите флажок Flip Normals (Обратить нормали).
Выполненные действия приведут к тому, что в окнах проекций, кроме студии, бу дут присутствовать еще два объекта: каркас из сплайнов и его копия с поверхнос тью. Если позволяет производительность вашего компьютера, сделайте еще один,
656
Глава 14. Моделирование головы
симметрично отображенный, экземпляр объекта с поверхностью, чтобы видеть всю геометрию головы (рис. 14.25). После этого необходимо уточнить положение вершин в пространстве. Именно сей час, когда видна вся поверхность, можно передвигать вершины каркасного объек та, чтобы привести геометрию головы к желаемому виду. После коррекции положения вершин в пространстве можно переходить к постро ению отверстия в носу. Для этого в нижнюю часть носа добавьте сплайны, как по казано на рис. 14.26. Внутренний сплайн, образующий отверстие, скопируйте вверх (внутрь носа), чтобы впоследствии создать верхнюю часть отверстия.
Рис. 14.25. Модель головы с каркасом из сплайнов и поверхностью
Рис. 14.26. Форма сплайнов, формирующих отверстие в носу
Соедините все точки при помощи дополнительных сплайнов. В нижней части носа при помощи команды Refine (Уточнить) свитка Geometry (Геометрия) создайте две дополнительные вершины, после чего соедините их сплайнами (рис. 14.27). Перед тем как перейти к моделированию уха, необходимо проанализировать всю поверхность и при необходимости внести изменения. Обратите внимание на ха рактерные линии головы. Не забывайте контролировать весь процесс изменения положения вершин во всех окнах проекций. В районе серединной линии могут оставаться погрешности геометрии, связанные с тем, что обе половинки модели являются самостоятельными объектами. В остальном поверхность должна иметь законченный вид (рис. 14.28). Моделирование уха — завершающий и, пожалуй, самый сложный этап. Сложность построения заключается в том, что в этой относительно маленькой форме сосре доточено большое количество сплайнов и без соответствующего опыта моделиро вания трудно в них разобраться. На начальном этапе построения уха модель головы не понадобится и ее лучше спрятать. Чтобы сделать это, щелкните на модели правой кнопкой мыши и в по явившемся контекстном меню выберите пункт Hide Selection (Спрятать выделен ное). После этого в окне проекции вида сбоку создайте начальный сплайн для уха (рис. 14.29).
657
Моделирование головы при помощи модуля Surfacetools
Рис. 14.27. Фрагмент носа с поверхностью
Рис. 14.28. Вид модели головы перед началом моделирования уха
Размер сплайна произвольный — на данном этапе это неважно, впоследствии вы сможете масштабировать так, как вам будет нужно. Добавьте внутрь первого еще один сплайн и, сдвинув его немного относительно пер вого (в окне проекции Front (Спереди)), соедините с первым (рис. 14.30). Постройте еще один сплайн, но уже не зам кнутый, а от точек, лежащих на внутрен нем сплайне. Снова соедините созданный сплайн отрезками с теми, которые были построены ранее. После этого скорректи руйте положение всех точек в пространстве (рис. 14.31). Продолжите формирование ушной рако вины. В окне проекции Top (Сверху), удер живая нажатой клавишу Shift, скопируй те последний сплайн, немного сдвинув его вправо. После этих операций снова соеди ните отрезками новый сплайн с предыду щими (рис. 14.32). По тому же принципу постройте еще один сплайн. На этот раз он должен находиться с внутренней стороны ушной раковины. Проще всего сделать такой сплайн при по мощи копирования с масштабированием. И, конечно, снова соедините вершины со седних сплайнов отрезками (рис. 14.33). Постройте последний сплайн внутри уха для формирования противозавитка.
Рис. 14.29. Начальный сплайн для построения модели уха
а
б
Рис. 14.30. Взаимное положение сплайнов уха в окнах проекций Right (Справа) (а) и Front (Спереди) (б)
658
Глава 14. Моделирование головы
Рис. 14.31. Начало формирования ушной раковины
Рис. 14.32. Сплайны, описывающие внешний контур ушной раковины
Моделирование головы при помощи модуля Surfacetools
659
Рис. 14.33. Каркас из сплайнов, формирующий завиток ушной раковины
Теперь можно скопировать объект Reference (Подчинение), аналогично тому, как это делали для головы, и применить модификатор Surface (Поверхность). Выпол ненные действия помогут вам увидеть все изменения, вносимые в модель уха, про должая при этом работать со сплайнами (рис. 14.34). При создании сплайнов обращайте внимание на то, как они расположены в про странстве, для чего контролируйте построения во всех окнах проекций. Кроме того, время от времени поворачивайте модель в окне проекции Perspective (Пер спектива) или User (Пользовательская), чтобы рассмотреть ее со всех сторон. При выполнении поперечных сплайнов не забывайте соединять вершины и объединять их при помощи команды Weld (Объединить). После того как соединятся все вершины, должно получиться изображение, похо жее на рис. 14.35. Дальнейшее моделирование заключается в том, что нужно скорректировать по ложение построенных вершин. При необходимости преобразуйте вершины в тип Bezier Corner (Угол Безье), чтобы с помощью манипуляторов Безье было удобнее изменять форму сплайна. Для этого выделите необходимые для преобразования вершины и щелкните на них правой кнопкой мыши. В появившемся контекстном меню щелкните на строке Bezier Corner (Угол Безье). Не вдаваясь в детали, постарайтесь передать общую форму ушной раковины (рис. 14.36).
660
Рис. 14.34. Модель уха после применения модификатора Surface (Поверхность)
Глава 14. Моделирование головы
Рис. 14.35. Поверхность модели уха после построения всех сплайнов
Теперь можно присоединить ухо к голове. Откройте модель головы и сопоставьте ухо с ее размером и положением. Используя команды Move (Перемещение), Rotate (Вращение) и Scale (Масштаби рование) контекстного меню, установите ухо на место (рис. 14.37).
Рис. 14.36. Готовая модель уха
Рис. 14.37. Положение модели уха относительно головы
СОВЕТ ___________________________________________________________________________ Вы можете воспользоваться виртуальной студией в качестве заднего фона для уста@ новки положения модели уха относительно головы.
Чтобы присоединить сплайны уха к модели головы, необходимо прежде всего сделать отверстие. Для этого выделите сплайны головы в том месте, где будет кре питься ухо, и удалите их (рис. 14.38). Затем в свитке Geometry (Геометрия) щелк ните на кнопке Attach (Присоединить) и в любом окне проекции — на сплайнах уха для их присоединения. После присоединения уха к голове объедините вершины (где нет возможности сделать это напрямую, добавьте сплайны).
Моделирование головы при помощи модуля Surfacetools
661
СОВЕТ ___________________________________________________________________________ Объединяя вершины, старайтесь двигать вершины уха к вершинам головы. Таким образом вы сохраните геометрию головы, которая должна быть выверенной к этому времени.
На рис. 14.39 показана схема расположения сплайнов головы и уха после того как были объединены их вершины.
Рис. 14.38. Сплайны головы, которые необходимо удалить
Рис. 14.39. Расположение сплайнов в области уха
После того как модель уха будет присоединена к голове, можно удалить все копии с поверхностью (если вы не сделали этого раньше), в результате чего у вас должна остаться только сплайновая модель половины головы. Сделайте симметричную копию сплайнов. Для этого на панели инструментов щелк ните на значке Mirror (Зеркальное отображение) и выберите тип Copy (Незави симая копия объекта) создаваемых при дублировании объектов. Для присоединения копии щелкните в свитке Geometry (Геометрия) на кнопке Attach (Присоединить) и в окне проекции — на созданной копии.
ВНИМАНИЕ ______________________________________________________________________ После присоединения одной половины объекта к другой в районе серединной линии окажутся два сплайна, один из которых нужно удалить.
Объедините вершины в районе серединной линии, для чего последовательно вы деляйте вершины и в свитке Geometry (Геометрия) щелкайте на кнопке Weld (Объе динить). После того как все вершины в районе серединной линии будут объедине ны, можно применить модификатор Surface (Поверхность). На рис. 14.40 показан окончательный вид визуализированной модели головы. В заключение хочется напомнить о том, что мы делали модель головы со средним уровнем детализации. Если вам нужна более точная копия, необходимо увеличить количество сплайнов, используя тот же подход к построению модели.
662
Глава 14. Моделирование головы
Рис. 14.40. Визуализация законченной модели головы
ПРИМЕЧАНИЕ ___________________________________________________________________ Для ознакомления с моделью головы и ее анализа можно загрузить файл сцены surface_head.max, который находится в папке Examples\Глава 14 прилагаемого к кни@ ге DVD.
Моделирование головы при помощи полигонов В предыдущем упражнении вы познакомились с моделированием головы при по мощи сплайнов. Продолжим эту тему и рассмотрим моделирование головы при помощи полигонов. Прежде всего я хочу познакомить вас с пластической анатомией, то есть с тем, что образует внешние формы головы. Правильнее было бы начать с изучения черепа, затем мышц лица и т. д., но зада ние подразумевает лишь практическое моделирование, поэтому я оставляю эти материалы для самостоятельного освоения. У каждого человека голова по своему строению и пропорциям индивидуальна, тем не менее можно вывести усредненную схему человеческого лица. Осевая линия (вертикальная) делит голову пополам. Линия, проходящая через ось глаз, делит общую высоту головы пополам. Зрительно нижняя часть нам кажется большей, это происходит изза значительного количества «деталей» в этой части лица. Если принять ширину глаза за единицу измерения а, то можно заметить, что высота го ловы укладывается в семь таких единиц, а высота носа равна высоте уха, расстоя нию от носа до подбородка и высоте лба до волосяного покрова (каждый отрезок в отдельности равен двойной величине глаза). Расстояние между глазами, так же, как и расстояние от глаз до крайних точек висков, равно величине глаза. Расстоя ние между крайними точками крыльев носа также равно этой величине. Расстоя ние от подбородка до линии рта в два раза больше, чем расстояние от линии рта
Моделирование головы при помощи полигонов
663
до носа (b). Все приведенные выше измерения, конечно, являются схематичны ми — в жизни у каждого человека свои пропорции. Тем не менее можно использо вать эту схему как отправную точку для создания модели, внося изменения по мере построения индивидуальной головы (рис. 14.41).
Рис. 14.41. Пропорции головы человека
Перейдем к моделированию. В данном упражнении мы не будем применять вирту альную студию, а только используем вышеописанные пропорции и воображение. К тому же задача не заключается в том, чтобы сделать модель, похожую на когото. Прежде чем начать построение, поговорим немного о полигональном моделиро вании. Как понятно из названия, это моделирование при помощи полигонов. Сами по себе полигоны создают грубую, ломаную форму, поэтому неотъемлемой частью моделирования форм органического происхождения является сглаживание. До стигается оно как минимум двумя способами: применением к объекту модифи катора MeshSmooth (Сглаживание) или моделированием посредством Editable Poly (Редактируемая полигональная поверхность). Это почти одно и то же, за исклю чением незначительных нюансов. Существенная разница заключается в требова ниях к ресурсам компьютера — использование Editable Poly (Редактируемая поли гональная поверхность) примерно в полтора раза больше нагружает компьютер. Если это для вас существенно, я рекомендую моделировать посредством Editable Mesh (Редактируемая поверхность) с последующим сглаживанием. В данном зада нии я опишу моделирование при помощи Editable Poly (Редактируемая полигональ ная поверхность) как обладающее большими возможностями, но прежде расска жу о некоторых приемах работы с Editable Mesh (Редактируемая поверхность).
664
Глава 14. Моделирование головы
Постройте Box (Параллелепипед). Его габариты должны приблизительно соответ ствовать пропорциям головы, а количество сегментов по длине, ширине и высоте задайте такое, как показано на рис. 14.42. Настоятельно рекомендую строить параллелепипед так, чтобы его ось совпада ла с началом координат. Это облегчит работу с зеркальными копиями объектов. В результате создания примитива начальная геометрия для моделирования голо вы должна выглядеть так, как изображено на рис. 14.43.
Рис. 14.42. Параметры объекта Box (Параллелепипед)
Рис. 14.43. Параллелепипед, с которого начинается моделирование головы
На этом операции с параметрическим объектом закончены. Преобразуйте парал лелепипед в объект Editable Mesh (Редактируемая поверхность). Для этого щелк ните на нем правой кнопкой мыши и в появившемся контекстном меню выполни те команду Convert ToConvert to Editable Mesh (ПреобразоватьПреобразовать в редактируемую поверхность). После того как объект стал редактируемой поверх ностью, вы сможете переключаться в режим редактирования подобъектов (вер шин, ребер, полигонов). Начните редактирование с того, что на уровне подобъектов Vertex (Вершина) пе редвиньте внутренние ряды вершин так, как показано на рис. 14.44. Чтобы начать формирование шеи, переключитесь в режим редактирования Polygon (Полигон) и выделите четыре нижних полигона. Воспользуйтесь инструментом Extrude (Выдавливание) из свитка Edit Geometry (Редактирование геометрии) ко мандной панели и дважды выполните выдавливание (рис. 14.45). Таким образом вы подготовите объект для формирования шеи. Прежде чем продолжать моделирование, необходимо учесть некоторые моменты:
голова симметрична, следовательно, можно моделировать только ее половину;
иметь в окнах проекций при моделировании только половину объекта неудоб но, поэтому необходимо воспользоваться копией, чтобы видеть модель голо вы целиком;
для удобства работы с каркасом модели используйте параметр текстуры Wire (Каркас).
Моделирование головы при помощи полигонов
Рис. 14.44. Положение вершин после того, как внутренние ряды были передвинуты вперед
665
Рис. 14.45. Выдавленные полигоны для начала формирования шеи
Выделите в режиме редактирования Polygon (Полигон) левую сторону параллеле пипеда и удалите ее. Для оставшейся части сделайте копию. Для этого выполните команду EditClone (ПравкаКлонирование) и в появившемся окне Clone Options (Параметры клонирования) выберите тип создаваемых при клонировании объек тов Reference (Подчинение). Присвойте копии какоенибудь значимое имя, напри мер Surface, после чего примените к ней модификатор MeshSmooth (Сглажива ние). Для этого выполните команду ModifiersSubdivision SurfacesMeshSmooth (МодификаторыПоверхности с разбиениемСглаживание). В настройках мо дификатора из списка Subdivision Method (Метод разбиения) выберите NURMS, а па раметру Iterations (Количество итераций), определяющему количество разбиений, задайте значение, равное 2 (рис. 14.46). После того как экземпляру будет назначен модификатор сглаживания, можно сде лать его зеркальную копию. Для этого щелкните на кнопке Mirror (Зеркальное ото бражение) , находящейся на панели инструментов. В открывшемся окне в ка честве типа объекта, создаваемого при дублировании, выберите Instance (Привязка). В результате получатся две сглаженные зеркально расположенные половинки мо дели головы и еще одна без сглаживания (рис. 14.47). Создайте и примените к параллелепипеду материал с настройками, позволяющи ми отображать объект в каркасном виде (рис. 14.48). Используйте в качестве цвета диффузного отражения контрастные по отношению к объектам цвета (я, например, применил желтый на сером фоне). После назначения материала параллелепипеду объекты должны выглядеть так, как показано на рис. 14.49. Чтобы убедиться в правильности настроек, выделите любую вершину объекта, представленного сеткой (у меня это Box01), и попробуйте переместить ее в сторо ны. Если вслед за вершиной начинают зеркально двигаться обе внутренние поло винки, значит, все выполнено удачно, в противном случае проверьте, правильно ли сделаны копии основного объекта.
666
Глава 14. Моделирование головы
Рис. 14.46. Параметры модификатора сглаживания поверхности
Рис. 14.47. Взаимное расположение трех половинок одного объекта
Рис. 14.48. Настройки материала для отображения в каркасном виде
Рис. 14.49. Отображение объектов в окне проекции Perspective (Перспектива) после применения материала
ПРИМЕЧАНИЕ ___________________________________________________________________ Можно было обойтись и без третьего объекта, просто опустившись в стеке на уровень Editable Mesh (Редактируемая поверхность) и нажав в стеке модификаторов кнопку Show end result on/off toggle (Показать конечный результат вкл/выкл). Но лично я на начальном этапе моделирования предпочитаю работать так, как описано выше.
Все, о чем говорилось выше, относится к построению модели в Editable Mesh (Ре дактируемая поверхность). Если вы решите моделировать так же, как и я, в Editable Poly (Редактируемая полигональная поверхность), необходимо вернуться к состо янию параллелепипеда до того, как он был преобразован в редактируемую поверх ность, и конвертировать его в Editable Poly (Редактируемая полигональная по
Моделирование головы при помощи полигонов
667
верхность). Напомню, что это можно сделать, щелкнув на объекте правой кнопкой мыши и выполнив в контекстном меню команду Convert ToConvert to Editable Poly (ПреобразоватьПреобразовать в редактируемую полигональную поверхность). После преобразования сделайте зеркальную копию половинки объекта и в окне в качестве типа объекта, создаваемого при копировании, выберите Instance (При вязка). В свитке Subdivision Surface (Поверхности с разбиением) настроек основного объек та установите флажок Use NURMS Subdivision (Использовать NURMSразбиение), а в области Display (Отображение) параметру Iterations (Количество итераций) за дайте значение 2 (рис. 14.50). Дальнейшая работа состоит в том, чтобы строить форму от общего к частному. Она напоминает работу скульптора, когда из глыбы мрамора постепенно вырисо вывается форма будущей скульптуры. Только вместо инструментов скульптора мы будем использовать инструменты для работы с полигонами, ребрами и вер шинами. Переместите вершины так, чтобы придать объекту грубую форму головы (рис. 14.51).
Рис. 14.50. Свиток Subdivision Surface (Поверхности с разбиением) настроек основного объекта моделирования
Рис. 14.51. Моделирование начинается с придания объекту общей формы головы
Обратите внимание, что не следует передвигать в вертикальной плоскости те вер шины, которые находятся на линии глаз, — это положение серединной линии го ловы, и с помощью этих вершин мы будем формировать глазные впадины и веки.
668
Глава 14. Моделирование головы
Далее при помощи Slice Plane (Секущая плоскость) из свитка Edit Geometry (Редак тирование геометрии) разделите половину объекта, с которым работаете, по вер тикали на две части. Плоскость сечения должна проходить в области расположе ния носа (рис. 14.52). Применяя все тот же инструмент Slice Plane (Секущая плоскость), сделайте еще один разрез в области бровей.
СОВЕТ ___________________________________________________________________________ Работая с секущей плоскостью, удобно использовать при поворотах Angle Snap Toggle (Переключатель угловых привязок), который активизируется нажатием клавиши A.
Этот разрез поможет вам сформировать надбровные дуги и теменную часть затыл ка (рис. 14.53).
Рис. 14.52. Дополнительные ребра в области носа, полученные при помощи секущей плоскости
Рис. 14.53. Разрез, выполненный в области надбровных дуг
Работая с секущей плоскостью, не забывайте после каждого разреза уточнять по ложение вновь созданных вершин в пространстве. В противном случае после не которого количества разрезов выставить положение вершин станет значительно сложнее. Следующий шаг — разрез полигонов на фронтальной части модели, немного ниже серединной линии, для формирования скуловой части лица. Для этого восполь зуйтесь инструментом Cut (Вычитание), расположенным в свитке Edit Geometry (Ре дактирование геометрии) командной панели. Как именно должен проходить раз рез, показано на рис. 14.54. Теперь все готово, и можно заняться формированием глаза. Для этого вам понадо бится сделать еще несколько разрезов, формирующих области вокруг глаза. На чните с диагональных разрезов, а затем используйте их для построения прямо угольника внутри. После выполнения разрезов скорректируйте положение вершин в окне проекции Front (Спереди) (рис. 14.55).
Моделирование головы при помощи полигонов
669
Рис. 14.54. Разрез в области скуловой части лица
Для придания глазу нужной формы вам понадобится сделать еще два вертикаль ных разреза, один из которых будет проходить через середину глаза (рис. 14.56), а другой — правее его.
Рис. 14.55. Разрезы, выполненные в области глаза
Рис. 14.56. Вертикальный разрез, проходящий через середину глаза
Прежде чем продолжить дальнейшее построение формы глаза и делать новые раз резы, необходимо уточнить уже существующую геометрию. Как и в предыдущем задании по моделированию головы при помощи сплайнов, нужно строить ребра в местах изменения поверхности. Таким образом будет легче получить желаемую форму с минимальным количеством полигонов. При построении разрезов в области надбровной дуги образовался треугольник, ко торый в данном случае является лишним изза того, что в этом месте будет проходить
670
Глава 14. Моделирование головы
еще один горизонтальный разрез и появится избыточное количество ребер. Поэто му одно из ребер необходимо удалить. Выделите ребро левой стороны треуголь ника (рис. 14.57, слева) и удалите его, щелкнув на кнопке Remove (Удалить) в свитке Edit Edges (Редактирование ребер). После удаления ребра образуется прямоуголь ник с пятью вершинами. В отличие от сплайнового моделирования, вы можете оставить пятую вершину как есть, но лучше придерживаться построения полиго нов с четырьмя (реже — с тремя) вершинами. Поэтому при помощи инструмента Target Weld (Объединить целевую), находящегося в свитке Edit Edges (Редактиро вание ребер), объедините отдельно стоящую вершину с той, которая расположена слева от нее (рис. 14.57, справа). Продолжим формирование надбровной дуги и глаза. Для этого сделайте верти кальный разрез в правой части глаза, идущий до подбородка, и горизонтальный по надбровной дуге. После этого можно удалить внутренние полигоны, расположен ные внутри ребер, формирующих глаз, и уточнить положение вершин в простран стве (рис. 14.58).
Рис. 14.57. Ребро, подлежащее удалению (слева), и ребро, вершину которого необходимо объединить с находящейся слева (справа)
Рис. 14.58. Расположение ребер вокруг глаза
Чтобы продолжить формирование глаза, выделите открытые ребра и, удерживая нажатой клавишу Shift, при помощи инструмента Select and Uniform Scale (Выделить и равномерно масштабировать), находящегося на панели инструментов, дубли руйте ребра внутрь отверстия два раза. Во второй раз сдвиньте ребра на незначи тельное расстояние и, не снимая выделения, переместите их внутрь модели для формирования века (рис. 14.59). Чтобы построить правильную с геометрической точки зрения поверхность моде ли в области глаза, необходимо увеличить сетку полигонов. В связи с этим про должите наращивать в данном месте полигоны. Это можно сделать при помощи дополнительных разрезов вокруг глаза. Для придания более острой формы в мес тах крепления ресниц воспользуйтесь параметром Crease (Складка) для соответ ствующих ребер или примените инструмент для создания фаски (Chamfer (Фаска)) (рис. 14.60).
Моделирование головы при помощи полигонов
671
Рис. 14.59. Сглаженная форма модели в области глаза
Дальнейшее уточнение формы глаза необходимо проводить по сфере, имитирующей форму глазного яблока (само глазное яблоко вы можете смоделировать позже). Задача заключается в том, чтобы после уточнения положения вершин в простран стве нижнее и верхнее веки расположились по поверхности сферы (рис. 14.61).
Рис. 14.60. Дополнительные ребра в области глаза
Рис. 14.61. Форма глаза, уточненная по сфере
В процессе моделирования вам, возможно, придется еще не раз возвращаться к уточ нению формы головы в области глаза, но на данном этапе той детализации, кото рую вы уже сделали, будет достаточно. Перейдем к формированию носа и губ. Для их построения вам понадобится сде лать два разреза секущей плоскостью у основания носа и через середину губ. Напо минаю, что согласно ранее описанным пропорциям высота нижней части лица
672
Глава 14. Моделирование головы
составляет 2/7 от размера головы и равна расстоянию от подбородка до основания носа (рис. 14.62). Прежде чем приступить к моделированию губ, вам нужно сделать разрезы поли гонов вокруг них. Для этого воспользуйтесь инструментом Cut (Вычитание) свит ка Edit Geometry (Редактирование геометрии). В верхней части разрез берет начало немного ниже основания носа, а заканчивается во впадине, формирующей подбо родок, проходя через крайние точки губ (рис. 14.63).
Рис. 14.62. Состояние модели после выполнения разрезов в области основания носа и середины губ
Рис. 14.63. Начало формирования рта
Если вы в дальнейшем собираетесь анимировать лицо, обязательным условием для этого будет моделирование полости рта, что повлечет раздельное моделирова ние верхней и нижней губы. Чтобы создать разрез в области рта, выделите ребра, проходящие в середине губ, и щелкните в свитке Edit Edges (Редактирование ре бер) на кнопке Split (Разделить). В результате ребра разделятся и образуется по две пары вершин. Разведите соседние вершины в стороны так, чтобы образовалось отверстие, после чего отредактируйте их положения в пространстве (рис. 14.64). Чтобы правильно построить модель губ, необходимо добавить вертикальные по лигоны в уголках рта. Это можно сделать, разделив ребра, проходящие от уголка рта и до затылка. Для этого выполните следующие действия. 1.
Выделите одно ребро, следующее за уголком губ, и щелкните на кнопке Loop (Петля), находящейся в свитке Selection (Выделение). В результате выделит ся весь ряд ребер, вплоть до серединной линии.
2.
Щелкните на кнопке Chamfer (Фаска) в свитке Edit Edges (Редактирование ре бер) и в окне проекции Front (Спереди) или Perspective (Перспектива) построй те фаску для выделенных ребер (рис. 14.65).
После этого вершины, относящиеся к разрезу губ, нужно объединить с вновь об разованными снаружи, чтобы получилось прямоугольное отверстие в уголках губ (рис. 14.66). Уточните также положение вновь созданных вершин в пространстве (как минимум необходимо раздвинуть их по высоте).
Моделирование головы при помощи полигонов
Рис. 14.64. Ребра, определяющие разрез рта
673
Рис. 14.65. Фаска, построенная на ребрах, идущих от уголков губ
Сделайте еще несколько разрезов, формирующих область губ. Первый вертикаль ный разрез должен пройти от глаза через крайнюю точку крыла носа и до разреза верхней губы (рис. 14.67, слева). Второй — по линии формирования губ с таким расчетом, чтобы в уголках губ образовалось по одному дополнительному полиго ну (рис. 14.67, справа).
Рис. 14.66. Положение ребер в уголках губ после слияния вершин
Рис. 14.67. Вспомогательные разрезы для формирования области губ (слева) и расположение ребер в уголках губ (справа)
Не забывайте уточнять положение вновь сформированных вершин в простран стве, контролируя их во всех окнах проекций. Чтобы сделать линию губ более четкой, необходимо выделить ребра по периметру и построить Chamfer (Фаска) с небольшой величиной смещения. Для завершения моделирования губ на данном этапе нужно правильно располо жить в пространстве вершины, формирующие их. Особое внимание уделите вер шинам, размещенным в уголках губ. Возможно, вам придется потратить больше времени, чем вы предполагали, но не стоит продолжать моделирование, не полу чив удовлетворительного результата, в противном случае ошибки начнут накап ливаться, и в итоге вид модели окажется далек от желаемого.
674
Глава 14. Моделирование головы
СОВЕТ ___________________________________________________________________________ Если у вас недостаточно знаний в пластической анатомии и опыта персонажного мо@ делирования, можно воспользоваться зеркалом для подробного изучения отдельных частей лица в процессе моделирования.
Результат работы на данном этапе представлен на рис. 14.68. Теперь сформируем подбородок, для чего нужно сделать еще один дополнитель ный разрез. Он должен пройти от ребра, расположенного на уровне губ, до сере динной линии, которая находится в выступающей части подбородка (рис. 14.69). Ребро, образовавшееся в процессе разреза и проходящее по диагонали через поли гон, лежащий справа от губ, удалите при помощи кнопки Remove (Удалить).
Рис. 14.68. Размещение ребер, формирующих губы
Рис. 14.69. Ребра, формирующие подбородок
Построим полость рта. Для этого выделите ребра, окаймляющие разрез губ, и, удер живая нажатой клавишу Shift, сделайте три копии ребер внутрь. После этого объедини те крайние вершины, чтобы образовалось замкнутое пространство, а промежуточ ные немного раздвиньте по вертикали для увеличения внутреннего пространства полости рта (рис. 14.70). Перейдем к построению носа. Прежде всего сделайте дополнительный вертикальный разрез от надбровной дуги до верхней губы (рис. 14.71). Затем так же, как и в случае с подбородком, удалите ребро, ставшее лиш ним после выполнения разреза. Для формирования крыльев носа сделайте еще один разрез (рис. 14.72).
Рис. 14.70. Полость рта, сформированная при помощи копирования ребер
После выполнения этих разрезов необходи мо выделить полигоны, образующие спин ку и крылья носа, чтобы применить к ним инструмент Extrude (Выдавливание). Ре зультат показан на рис. 14.73.
Моделирование головы при помощи полигонов
Рис. 14.71. Вспомогательный вертикальный разрез для моделирования носа
675
Рис. 14.72. Разрез, определяющий форму крыльев носа
Рис. 14.73. Положение полигонов, формирующих нос, после выдавливания
Получившееся после выдавливания еще мало похоже на будущий нос. Удали те полигоны, сформировавшиеся в процессе выдавливания с внутренней сторо ны носа по осевой линии. После сместите вновь созданные вершины. В области переносицы и в верхней части носа (со стороны глаза и щеки) вершины нужно объе динить, чтобы создать плавный переход от лобной кости к переносице. Затем рас положите оставшиеся вершины в пространстве для придания поверхности объек та формы носа (рис. 14.74). Помните, что контролировать построения нужно во всех окнах проекций и время от времени поворачивать модель в окне проекции
676
Глава 14. Моделирование головы
Perspective (Перспектива) или User (Пользовательская), чтобы рассмотреть ее в де талях. Продолжая моделирование формы носа, сделайте дополнительные разрезы для увеличения плотности полигонов в нижней части (в области крыльев носа). Ли ния разреза пройдет по верхнему краю отверстия в носу и внешней части крыла носа. Чтобы получить округление носа в месте излома геометрии, необходим еще один разрез (рис. 14.75).
Рис. 14.74. Форма носа после предварительной корректировки вершин
Рис. 14.75. Два разреза, выполненные для увеличения количества полигонов у основания носа
После создания разрезов уточните геометрию носа при помощи перемещения вер шин, формирующих его. Перейдем к моделированию отверстия в носу. Для его построения нужно выде лить полигон в нижней части и дважды применить выдавливание. Первый раз на небольшую величину с уменьшением, чтобы сформировать край, а затем на высо ту четверти носа (рис. 14.76). Сделайте еще несколько сечений, чтобы построить складку, идущую от носа к угол кам губ (рис. 14.77).
Рис. 14.76. Отверстия в носу, выполненные при помощи выдавливания полигонов
Рис. 14.77. Разрезы для формирования складки
Моделирование головы при помощи полигонов
677
После этого удалите лишнее ребро, образованное в результате сечения.
СОВЕТ ___________________________________________________________________________ Не забывайте, что лучшего результата сглаживания можно достичь, имея минималь@ ное количество полигонов с тремя сторонами. Таким образом, во всех местах, где можно использовать полигоны с четырьмя сторонами вместо полигонов с тремя, нуж@ но сделать соответствующие изменения.
После выполнения всех уточнений можно перейти к построению уха. Но прежде проверьте еще раз модель во всех окнах проекций, поверните ее в окне проекции Perspective (Перспектива) и рассмотрите со всех сторон. Очень важно это делать постоянно, в противном случае можно пропустить ошибки, которые чем дальше, тем сложнее будет исправить. Важно все рассматривать в целом, но не забывать уделять внимание и деталям. На рис. 14.78 показана модель на той стадии, когда начинается построение уха. Создание уха, как и предыдущих деталей модели головы, начинается с разрезов. Сначала необходимо сформировать место, в котором ухо будет крепиться к голо ве. Для этого выполните разрезы полигонов, как показано на рис. 14.79.
Рис. 14.78. Результат визуализации модели головы перед началом построения уха
Рис. 14.79. Разрезы, выполненные в местах крепления уха к голове
По форме разрезы, расположенные внутри, должны напоминать немного накло ненный эллипс. Пока можно не обращать внимания на трехсторонние полигоны — позже их нужно будет модифицировать. В окне проекции Right (Справа) выделите полигоны, находящиеся внутри разре зов, и, щелкнув на кнопке Extrude (Выдавливание) в свитке Edit Polygons (Редак тирование полигонов), выдавите выделенные полигоны на небольшую величи ну (рис. 14.80, слева). Не снимая выделения, разверните их немного в сторону лица (рис. 14.80, справа), используя инструмент Select and Rotate (Выделить и повер нуть), находящийся на панели инструментов.
678
Глава 14. Моделирование головы
Почти весь процесс создания ушной раковины заключается в построении при помощи выдавливания новых полигонов и редактировании положения вершин в пространстве. По этой причине желательно удалить (обязательно при помощи кнопки Remove (Удалить)) ребро, проходящее внутри полигонов, образующих ухо. Того количества вершин, которое образовалось в процессе разрезания, вполне хва тит для основания уха, но недостаточно для формирования ушной раковины. В связи с этим, прежде чем выполнять дальнейшие выдавливания рельефа и на ращивать полигоны, необходимо немного увеличить количество вершин, опре деляющих форму уха. Для этого выделите три вершины, находящиеся со стороны лица в последнем ряду, и примените к ним Chamfer (Фаска) из свитка Edit Vertices (Редактирование вершин). В результате на верхней грани добавятся три вершины (рис. 14.81).
Рис. 14.80. Полигоны уха, выдавленные при помощи команды Extrude (Выдавливание) (слева) и повернутые в окне проекции Top (Сверху) (справа)
Рис. 14.81. Новые вершины, образованные инструментом Chamfer (Фаска)
Продолжим выдавливание. На этот раз лучше всего воспользоваться инстру ментом Bevel (Выдавливание со скосом), чтобы не просто выдавить полигоны, но и раздвинуть их в стороны на небольшое расстояние, начав формирование за витка уха.
СОВЕТ ___________________________________________________________________________ Того же результата можно достичь, выдавив полигоны при помощи инструмента Extrude (Выдавливание) с последующим масштабированием выдавленных полигонов с помощью инструмента Select and Uniform Scale (Выделить и равномерно масшта@ бировать), находящегося на панели инструментов.
После выдавливания полигонов необходимо сдвинуть вершины переднего края уха. Это позволит начать формирование козелка (выступающей части уха, за ко торой находится ушное отверстие) (рис. 14.82).
679
Моделирование головы при помощи полигонов
Выполните еще два выдавливания внутрен них полигонов для формирования завитка ушной раковины. Чтобы получить скруглен ную форму в середине завитка, можно вос пользоваться вместо инструмента Extrude (Выдавливание) инструментом Bevel (Вы давливание со скосом), находящимся в свит ке Edit Polygons (Редактирование полигонов) командной панели. При формировании но вых полигонов необходимо немного увели чить средний ряд ребер (рис. 14.83). Теперь можно перейти от формирования внешней части ушной раковины к созда нию полигонов ее внутренней части. Для этого постройте ряд полигонов со смеще нием внутрь, например при помощи инстру мента Bevel (Выдавливание со скосом).
а
б
Рис. 14.82. Расположение ребер после выполнения корректировки положения вершин в окнах проекций Right (Справа) (а) и Front (Спереди) (б)
Не снимая выделения с полигонов в средней части уха, сделайте скос с нулевым значением по высоте и отрицательным значением величины смещения контура. Это позволит сделать ряд внутренних ребер завитка (рис. 14.84).
Рис. 14.83. Полигоны, формирующие внешнюю геометрию завитка уха
Рис. 14.84. Размещение полигонов ушной раковины в окне проекции User (Пользовательская)
Сделайте два разреза для формирования закругления козелка в его верхней части и объедините вершины у его основания, чтобы уменьшить плотность сетки поли гонов. Внимательно осмотрите со всех сторон выдавленные полигоны и уточните положение вершин. На данном этапе моделирования уточнения должны носить общий характер, то есть нужно обратить внимание только на большие формы, не вникая в детали (рис. 14.85). Выполните еще одно выдавливание центрального полигона, но с отрицательным значением. Эта операция позволит выполнить закругление завитка ушной рако вины и положит начало построению полигонов внутренней части (рис. 14.86).
680
Рис. 14.85. Положение и форма ребер козелка после их редактирования
Глава 14. Моделирование головы
Рис. 14.86. Начало формирования внутренней части уха
Моделирование внутренней части ушной раковины требует дополнительных раз резов по линии излома. На рис. 14.87 показаны ребра, построенные при помощи инструмента Cut (Вычитание). Выделите еще раз внутренний полигон и сделайте последнее выдавливание на не большую величину (рис. 14.88).
Рис. 14.87. Разрезы, выполненные во внутренней части ушной раковины
Рис. 14.88. Положение полигона внутренней части ушной раковины в окнах проекций Top (Сверху) (слева) и User (Пользовательская) (справа)
Осталось самое сложное в моделировании ушной раковины — окончательное уточнение положения вершин в пространстве. Вы можете использовать для этого фотографии уха крупным планом, которые можно найти в Интернете. При уточнении формы ушной раковины необходимо сделать предварительное ре дактирование вершин на модели без сглаживания и только после этого включить сглаживание полигонов и окончательно отредактировать. Еще раз напоминаю: все операции, связанные с перемещением вершин в пространстве, нужно контролиро вать во всех окнах проекций. Модель уха, которая получилась у меня, представлена на рис. 14.89.
Моделирование ресниц
681
Напомню, что модель головы делается со средним уровнем детализации. Для по лучения большего контроля над формой уха (как и всей модели) необходимо увеличить количество контрольных вершин. Это позволит более точно передать форму, но вместе с тем для человека, не имеющего достаточного опыта в модели ровании, может представлять дополнительные трудности. На рис. 14.90 показан результат визуализации модели головы после объединения двух половинок при помощи модификатора Symmetry (Симметрия).
Рис. 14.89. Модель уха в окне проекции Right (Cправа)
Рис. 14.90. Результат визуализации модели головы после применения модификатора Symmetry (Симметрия)
ПРИМЕЧАНИЕ ___________________________________________________________________ Для ознакомления с моделью головы, выполненной при помощи полигонов, и ее анали@ за можно загрузить файл poly_head.max, который находится в папке Examples\Глава 14 прилагаемого DVD.
Моделирование ресниц Существует несколько способов создания ресниц для модели головы человека: начиная c использования текстурных карт и заканчивая моделированием каждой ресницы в отдельности. В данном разделе рассмотрим, как автоматизировать про цесс создания ресниц для модели головы среднего и высокого уровня детализации. Для работы вам понадобится модель головы или фрагмент (рис. 14.91), который можно найти на прилагаемом DVD в папке Examples\Глава 14. Файл называ ется eyelashes_start.max. ПРИМЕЧАНИЕ ___________________________________________________________________ В данном случае я буду использовать фрагмент полигональной модели головы, хотя метод моделирования, описанный в данном упражнении, можно с таким же успехом применить для Surface@ или NURBS@поверхности.
682
Глава 14. Моделирование головы
Рис. 14.91. Фрагмент модели головы, предназначенный для моделирования ресниц
Для дальнейшей работы понадобится сплайн, который следует разместить на по верхности модели в местах естественного роста ресниц. Проще всего получить та кой сплайн, используя ребра, формирующие поверхность модели лица. Для этого выделите объект Face и перейдите на уровень редактирования ребер. Выделите ребро, расположенное на границе разреза глаза, и щелкните на кнопке Loop (Пет ля) в свитке Selection (Выделение). В результате этих действий должны выделить ся все ребра вокруг глаза (рис. 14.92).
Рис. 14.92. Ребра, выделенные вокруг глаза после применения инструмента Loop (Петля)
Щелкните на кнопке Create Shape From Selection (Создать форму из выделения) в свитке Edit Edges (Редактировать ребра). В открывшемся окне Create Shape (Со здать форму) необходимо установить переключатель типа создаваемого сплайна в положение Smooth (Сглаженный) (рис. 14.93).
683
Моделирование ресниц
Выделите созданный сплайн и перейдите на уро вень редактирования сегментов, щелкнув для это го на кнопке Segment (Сегмент) в свитке Selection (Выделение). Выделите сегменты сплайна, расположенные в углах созданной кривой, и уда лите их. Таким образом, у вас останется сплайн только в тех местах, где должны находиться ресни цы (рис. 14.94).
Рис. 14.93. Окно Create Shape (Создать форму)
СОВЕТ ___________________________________________________________________________ Чтобы было удобнее работать со сплайнами и геометрией ресниц, можно при помо@ щи команды Hide (Скрыть) спрятать все ненужные на данном этапе объекты.
Рис. 14.94. Форма сплайна после удаления угловых сегментов
Верхние и нижние ресницы различаются по форме и расположению на поверхнос ти века, поэтому построенный сплайн необходимо разделить на два самостоятель ных сплайна — один для верхних ресниц, второй для нижних. Для этого перейдите на уровень редактирования подобъектов Spline (Сплайн) , выделите нижнюю часть общего сплайна и щелкните на кнопке Detach (Отделить) из свитка Geometry (Гео метрия). Таким образом, у вас окажется два самостоятельных сплайна (рис. 14.95). ПРИМЕЧАНИЕ ___________________________________________________________________ Для Surface@модели можно использовать сплайны поверхности. Для NURBS — кри@ вые поверхности. Можно также построить самостоятельные сплайны, которые нахо@ дятся на поверхности объекта в местах расположения ресниц. Каким образом это будет сделано, не имеет значения.
684
Глава 14. Моделирование головы
Рис. 14.95. Объект, разделенный на два самостоятельных сплайна
Перейдем к построению ресниц. Начнем с создания цилиндра. Расположите его недалеко от сплайнов, чтобы иметь возможность сопоставить размеры и положе ние в пространстве. В моем случае радиус цилиндра равен 0,005, а высота — 0,36 (если вы будете использовать собственную модель головы или ее фрагмент, то раз меры строящегося цилиндра, скорее всего, будут другими). При построении ци линдра необходимо обратить внимание на значение параметра Height Segments (Количество сегментов по высоте) — он должен быть равен не менее 4, а Sides (Ко личество сторон) иметь значение от 3 до 5. Кроме того, должен быть установлен флажок Smooth (Сглаживание) (рис. 14.96).
Рис. 14.96. Относительный размер и свиток параметров строящегося цилиндра
Моделирование ресниц
685
Заострите цилиндр, применив к нему модификатор Taper (Заострение) (рис. 14.97).
Рис. 14.97. Полученный цилиндр (слева) и настройки модификатора Taper (Заострение) (справа)
Далее воспользуйтесь модификатором Bend (Изгиб) и изогните объект так, чтобы он стал похож на ресницу, расположенную на верхнем веке (рис. 14.98).
Рис. 14.98. Полученная ресница (слева) и настройки модификатора Bend (Изгиб) (справа)
Расположим созданную ресницу на построенном ранее сплайне, а затем размно жим ее.
686
Глава 14. Моделирование головы
Начнем с того, что выполним привязку ресницы к сплайну, затем анимируем ее масштаб по мере продвижения к наруж ной части века. Для этого в одном из окон проекций выделите построенную ресницу и выполните команду AnimationConstraintsPath Constraint (АнимацияОграниченияОграни чение по пути). В качестве пути следования ресницы ука жите в одном из окон проекций верхний сплайн. В результате на командной панели откроется свиток с на стройками параметров контроллера анимации. В свитке Path Parameters (Параметры пути) (рис. 14.99) установите флажок Follow (Следовать), благодаря чему модель ресницы все вре мя будет располагаться перпендикулярно сплайну. Если вы сейчас передвинете ползунок таймера в правую сто рону шкалы кадров, то увидите, что модель ресницы начнет движение по кривой от начала сплайна (его первой точки) до его конца. Сделаем так, чтобы ресницы по мере удаления от начала сплайна становились длиннее и гуще. Для этого выполните следующие действия. Рис. 14.99. Свиток Path Parameters (Параметры пути)
1.
Щелкните на кнопке Auto Key (Автоключ), расположенной в правой нижней части окна программы, для автомати ческой записи ключей анимации. В результате кнопка ста нет красной, что указывает на ее активное состояние.
2.
Выделите ресницу и перейдите в последний кадр анимации (у меня — сотый).
3.
Выполните одно из двух действий: либо увеличьте высоту цилиндра в 1,3–1,5 раза в его свойствах, либо на столько же масштабируйте объект при помощи ин струмента Select and Uniform Scale (Выделить и равномерно масштабировать).
4.
Еще раз щелкните на кнопке Auto Key (Автоключ), чтобы выключить запись ключей.
Проверьте анимацию, щелкнув на кнопке Play Animation (Воспроизвести анима цию) , расположенной справа от кнопки записи ключей анимации. При воспро изведении анимации ресница должна не только двигаться по сплайну, но и увели чиваться в размере. Далее можно сделать так, чтобы ресницы ближе к внешнему краю века станови лись гуще. ПРИМЕЧАНИЕ ___________________________________________________________________ Для верхних ресниц это менее актуально, нежели для нижних, которых меньше, чем верхних, но по мере их расположения ближе к внешнему краю века они обычно ста@ новятся гуще. Выполнение этих действий совсем не обязательно, однако может под@ черкнуть форму глаза, особенно для женского лица.
Моделирование ресниц
687
Для изменения густоты ресниц необходимо изменить скорость продвижения объекта по сплайну так, чтобы по мере удаления от начала происходило уско рение. Проще всего это сделать, откорректировав кривую в окне редактора кривых, кото рое можно вызвать кнопкой главной панели инструментов Curve Editor (Open) (Ре дактор кривых (открыть)) . В левой части окна Track View — Curve Editor (Просмотр треков — редактор кри вых) выделите строку с именем Percent (Проценты), относящуюся к анимации ограничения по пути, после чего в правой части окна добавьте к кривой 3–4 но вых ключа и определите их положение так, чтобы получилась изогнутая кривая (рис. 14.100).
Рис. 14.100. Окно редактора кривых
Если бы мы сейчас выполнили построение копий ресницы, то получили бы ряд объектов, расположенных вдоль сплайна, ровно обрезанных и направленных пер пендикулярно к сплайну пути. Такое положение не является естественным для ресниц, поэтому необходимо внести некоторое разнообразие, можно даже сказать, некоторый хаос. Это можно сделать при помощи двух контроллеров — поворо та и масштаба — следующим образом. 1.
Переместите ползунок анимации на первый кадр и выделите в одном из окон проекций ресницу.
2.
Выполните команду AnimationRotation ControllersNoise (АнимацияКон троллер поворотаШум). Таким образом, от кадра к кадру будет хаотически изменяться положение ресниц в пространстве.
3.
Выполните команду AnimationScale ControllersNoise (АнимацияКонтрол лер масштабаШум). Кроме изменения положения, произвольным образом будет изменяться и масштаб ресниц.
688
Глава 14. Моделирование головы
ПРИМЕЧАНИЕ ___________________________________________________________________ При желании вы можете изменить параметры контроллера шума для достижения мак@ симально правдоподобного размещения и размера ресниц. Сделать это можно, на@ пример, двумя способами. Во@первых, при помощи изменения веса контроллера (значения параметра Weight (Вес) в свитке Scale List (Список масштаба) вкладки Motion (Движение) командной панели). Во@вторых, в окне с настройками свойств кон@ троллера (рис. 14.101), которое вызывается из контекстного меню при щелчке пра@ вой кнопкой мыши на имени контроллера (в списке свитка Assign Controller (Назначить контроллер) вкладки Motion (Движение) командной панели).
Теперь нужно скопировать объекты. Для этих целей воспользуемся командой главного меню ToolsSnapshot (СервисСнимок), предварительно выделив мо дель ресницы. В результате выполнения этой команды откроется окно Snapshot (Снимок), в котором необходимо установить переключатель в положение Range (Диапазон) и задать диапазон с нулевого по сотый кадр со значением параметра Copies (Количество копий), равным 100. Переключатель Clone Method (Метод кло нирования) необходимо установить в положение Mesh (Сетка) (рис. 14.102).
Рис. 14.101. Параметры контроллера масштаба
Рис. 14.102. Окно Snapshot (Снимок)
ВНИМАНИЕ ______________________________________________________________________ Переключатель Clone Method (Метод клонирования) должен быть обязательно уста@ новлен в положение Mesh (Сетка), в противном случае строящиеся объекты станут наследовать свойства клонируемого объекта и не будут уникальными. Иначе гово@ ря, вы не получите того разнообразия форм и положения ресниц, к которому мы стре@ мимся.
Щелкните на кнопке OK, и вы увидите, как построятся 100 копий ресницы, распо ложенных по всему сплайну (рис. 14.103). Создание нижних ресниц выполняется аналогичным образом, с той лишь разни цей, что их количество должно быть меньшим, например равным 70.
Моделирование ресниц
689
Рис. 14.103. Результат визуализации построенных ресниц
СОВЕТ ___________________________________________________________________________ В самом начале упражнения мы разделили сплайн на две части. В результате первая вершина нижнего сплайна оказалась справа. Для удобства в настройке и построении клонированных ресниц можно назначить первой левую вершину сплайна. Для этого выделите ее на уровне подобъектов и щелкните на кнопке Make First (Сделать первой) из свитка Geometry (Геометрия).
На рис. 14.104 представлен окончательный вид фрагмента модели лица с ресни цами.
Рис. 14.104. Результат визуализации фрагмента лица с построенными ресницами
690
Глава 14. Моделирование головы
ПРИМЕЧАНИЕ ___________________________________________________________________ Если у вас возникли трудности с созданием ресниц, вы можете загрузить файл сцены eyelashes_end.max, который находится в папке Examples\Глава 14 прилагаемого к кни@ ге DVD.
Использование UV.проецирования для полигональной модели головы Вы потратили массу драгоценного времени, вложили огромное количество труда и терпения в эту работу, и наконец вот он, результат — готовая модель полигональной головы. Что же дальше? А дальше — присвоение объекту проекционных (текстурных) координат, их редактирование (обычно без этого не обходится) и создание самой текстуры или нескольких текстур для различных каналов. Существуют программы, облегчающие эту задачу: Deep Paint 3D фирмы Right Hemisphere, BodyPaint 3D от MAXON (разработчика Cinema 4D), небольшая программа, специализирующая ся на присвоении проекционных координат объектам, — UVMapper Pro и др. О проекционных координатах мы уже говорили в разделах, посвященных просто му и сложному текстурированию, в упражнении по текстурированию ослика. Изу чение этих уроков поможет вам понять, что такое проекционные координаты и для чего они применяются, а также научиться основам наложения проекционных ко ординат применительно к объектам простой и сложной формы. В данном разделе я хочу рассказать о том, как присвоить проекционные коорди наты полигональной модели головы человека, используя собственные возможно сти программы 3ds Max. Итак, обратимся к модели. Если вы, как и я, моделировали голову при помощи полигонов, причем создавали только половину модели с последующим примене нием модификатора Symmetry (Симметрия), то используйте эту половинку для текстурирования (рис. 14.105). Если вы, моделируя голову, успели соединить обе половинки модели, то выпол ните одно из следующих действий.
Выделите и удалите одну из половинок симметричной модели. После присво ения проекционных координат вы снова сможете создать симметричную ко пию и присоединить ее.
Если модель в результате редактирования приобрела асимметрию, то есть одна половинка стала непохожа на другую (например, вы изменили форму подбородка или одного уха), то можно скопировать готовую модель головы и удалить половину копии. При этом главное и единственное требование — обе половинки должны иметь одинаковое количество полигонов (вершин). В результате после назначения проекционных координат копии модели мож но будет сохранить созданные координаты в файле (такая возможность есть у модификатора Unwrap UVW (Расправить UVWпроекцию)), а затем подгру зить их в основную модель.
Использование UV@проецирования для полигональной модели головы
691
Рис. 14.105. Половинка модели головы, предназначенная для наложения текстурных координат
ПРИМЕЧАНИЕ ___________________________________________________________________ Вы можете воспользоваться моделью, которая находится на прилагаемом к книге DVD в папке Examples\Глава 14. Файл сцены называется UV_map_start.max.
Обратите внимание, что модель должна иметь максимально упрощенный вид. Для этого в свитке Subdivision Surface (Поверхности с разбиением) отключите исполь зование NURMSразбиения модели, для чего снимите флажок Use NURMS Subdivision (Использовать NURMSразбиение). Для упрощения последующих трансформа ций необходимо поместить модель в начало координат, причем в нулевой коорди нате должен находиться осевой срез половинки модели (рис. 14.106). Желательно до начала проецирования определить проблемные зоны и назначить им собственные идентификаторы материала. Для головы это обычно полость рта (если вы ее моделировали), углубления в носу и уши — иначе говоря, это те части геометрии модели, где полигоны перекрывают друг друга. Чтобы назначить иден тификатор материала, выполните следующие действия. 1.
Выделите модель и перейдите на уровень редактирования полигонов.
2.
Выделите всю модель и присвойте ей идентификатор материала, соответству ющий 1, для чего задайте параметру Set ID (Установить идентификатор) свит ка Polygon: Materials IDs (Полигон: идентификатор материалов) значение, рав ное 1 (рис. 14.107), и нажмите Enter для подтверждения.
3.
Любым доступным способом выделите необходимые полигоны внутри поло сти рта и присвойте им значение идентификатора материала, равное 2.
4.
Выделите полигоны, составляющие отверстие в носу, и присвойте им значение 3.
5.
Выделите все ухо или только ту его часть, которая расположена со стороны головы. Назначьте уху идентификатор материала, равный 4.
692
Глава 14. Моделирование головы
Рис. 14.106. Расположение половины модели относительно оси координат
Рис. 14.107. Свиток Polygon: Materials IDs (Полигон: идентификатор материалов) с назначенным идентификатором материала
ПРИМЕЧАНИЕ ___________________________________________________________________ Назначение идентификаторов материала не является обязательным при работе с про@ ецированием, однако таким образом можно облегчить выбор вершин при редактиро@ вании проекционных координат.
После этого можно переходить к присвоению проекционных координат. Лучше всего сделать это следующим способом. 1.
Назначить модификатор Unwrap UVW (Расправить UVWпроекцию).
2.
Применить цилиндрическое или сферическое проецирование.
3.
Подкорректировать проблемные места.
Начнем с первого. Проследите за тем, чтобы у вас не было выделено подобъектов (по лигонов, вершин и т. д.), в противном случае модификатор будет применен только к выделению. После этого выполните команду ModifiersUV CoordinatesUnwrap UVW (МодификаторыUVкоординатыРасправить UVWпроекцию) и перейдите на уровень редактирования подобъектов модификатора Face (Грань). Выделите все гра ни модели и назначьте им сферическую систему проецирования, щелкнув на кноп ке Spherical (Сферическая) в свитке Map Parameters (Параметры проецирования) (рис. 14.108). Находясь на уровне редактирования подобъектов Face (Грань), при помощи ин струмента Select and Move (Выделить и переместить) передвиньте в окне проекции Top (Сверху) габаритный контейнер модификатора так, чтобы его ось выровнялась
Использование UV@проецирования для полигональной модели головы
693
по срезу модели. После этого разверните контейнер таким образом, чтобы зеленая линия, указывающая на шов карты текстурных координат, оказалась со стороны затылка. Затем при помощи инструмента Select and Uniform Scale (Выделить и рав номерно масштабировать) масштабируйте контейнер по оси X так, чтобы он охва тил весь объект (рис. 14.109).
Рис. 14.108. Настройки модификатора Unwrap UVW (Расправить UVW@проекцию) в режиме редактирования Face (Грань)
Рис. 14.109. Габаритный контейнер модификатора Unwrap UVW (Расправить UVW@проекцию), выровненный по оси симметрии модели
СОВЕТ ___________________________________________________________________________ Чтобы быстро выполнить выравнивание относительно нулевой точки системы коор@ динат, необходимо на главной панели инструментов щелкнуть правой кнопкой мыши на Select and Move (Выделить и переместить), а затем ввести 0 в поле для ввода зна@ чения по координате Х появившегося окна.
В свитке Parameters (Параметры) модификатора Unwrap UVW (Расправить UVW проекцию) щелкните на кнопке Edit (Правка), в результате чего откроется окно
694
Глава 14. Моделирование головы
редактирования проекционных координат Edit UVWs (Редактирование UVW), где будет представлена развертка половинки модели головы (рис. 14.110), созданная в результате выполненных выше действий.
Рис. 14.110. Окно Edit UVWs (Редактирование UVW) с разверткой модели
На этом предварительная работа заканчивается, теперь можно приступить к ре дактированию проекционных координат модели. СОВЕТ ___________________________________________________________________________ Если вы собираетесь привязывать проекционные координаты к существующей тек@ стуре (например, выполненной на основе фотографии), то самое время загрузить ее в окно редактирования Edit UVWs (Редактирование UVW), используя раскрывающий@ ся список в верхней части и выбрав в нем строку Pick Texture (Указать текстуру).
Далее будет полезным внести некоторые изменения в окне Unwrap Options (Пара метры проекции) (рис. 14.111), вызываемого командой меню OptionsPreferences (СвойстваПараметры), а именно:
в области Colors (Цвета) снимите флажок Show Grid (Показывать сетку);
если вы используете выполненную ранее текстуру, то обязательно следует за дать ее размеры в области Display Preferences (Параметры отображения), указав в полях Render Width (Ширина визуализации) и Render Height (Высота визуа лизации) ширину и высоту текстуры.
Использование UV@проецирования для полигональной модели головы
695
Прежде чем редактировать вершины, не обходимо выделить в отдельные группы проблемные полигоны (помните, мы ранее назначили им идентификаторы материала, отличные от 1). Для этого выполните сле дующее. 1.
В нижней части окна Edit UVWs (Ре дактирование UVW) щелкните на тре угольнике справа от раскрывающегося списка и выберите цифру 2 (второй идентификатор материала соответству ет полости рта).
2.
Выделите все полигоны, оставшиеся в окне редактирования, и выполните команду меню ToolsBreak (Сервис Разбить). Таким образом, полигоны будут выделены в отдельную группу (рис. 14.112).
3.
Выполните операции выделения и от деления в самостоятельные группы полигонов для оставшихся идентифи каторов материала (нос, ухо).
4.
В раскрывающемся свитке идентифи каторов выберите строку All IDs (Все идентификаторы материалов) для ото бражения всей проекции модели.
5.
Используя инструмент Move (Переме стить), выполните перемещение группы проблемных полигонов на свободное место в нижней части окна (рис. 14.113).
Рис. 14.111. Окно Unwrap Options (Параметры проекции) с настройками отображения
СОВЕТ ___________________________________________________________________________ Чтобы облегчить процесс выделения групп полигонов, установите флажок Select Element (Выделить элемент) в области Selection Modes (Способы выделения) в ниж@ ней части окна Edit UVWs (Редактирование UVW).
Остается сделать совсем немного — откорректировать положение вершин в мес тах, где они пересекаются (обычно это рот, нос и ухо). Кроме того, не помешает изменить положение вершин в правом верхнем углу развертки (этого можно и не делать, но я предпочитаю уменьшить эффект растягивания текстуры). Перемес тить вершины можно очень просто: выделите вершину и при помощи инструмента Move (Переместить) переместите ее в нужное место. На рис. 14.114 представлена развертка с измененной границей контуров.
696
Глава 14. Моделирование головы
Рис. 14.112. Команда меню Break (Разбить), позволяющая отделить выделенные полигоны
Рис. 14.113. Элементы проекции, размещенные в окне Edit UVWs (Редактирование UVW)
Использование UV@проецирования для полигональной модели головы
697
Рис. 14.114. Развертка после редактирования контуров
Далее необходимо переместить вершины внутри проекции, чтобы исключить пе ресечения сетки проекционных координат. Это делается также при помощи ин струмента Move (Переместить). Прежде чем редактировать отдельные вершины, можно распределить их в преде лах контуров проекции. Для этого выполните в окне редактирования команду ToolsRelax (СервисОслабить), в результате чего откроется окно Relax Tool (Ин струмент ослабления). В этом окне задайте параметру Iterations (Количество ите раций) значение, равное 3 (рис. 14.115). Сейчас можно закончить корректировку положения вершин проекционных коор динат, вручную изменив положение вершин в перекрывающихся местах.
ПРИМЕЧАНИЕ ___________________________________________________________________ Как вы уже знаете, для получения наилучшего эффекта при текстурировании в окне редактирования проекционных координат необходимо избавиться от перекрываю@ щихся полигонов. Для головы это обычно нос, губы, глаза и уши.
На рис. 14.116 представлен фрагмент отредактированной проекции текстурных координат модели головы.
698
Глава 14. Моделирование головы
Рис. 14.115. Окно Relax Tool (Инструмент ослабления)
Рис. 14.116. Фрагмент расправленной проекции координат модели головы
Для дальнейшего уточнения положения вершин в окне Edit UVWs (Редактирование UVW) необходимо создать и присвоить объекту какуюнибудь повторяющуюся текстуру, например Checker (Шахматная текстура). Такая текстура помогает уви
Использование UV@проецирования для полигональной модели головы
699
деть места, в которых происходят растяжения или сжатия и от которых по возмож ности необходимо избавиться. Корректируя положение вершин в окне Edit UVWs (Редактирование UVW), следите за тем, как изменяется геометрия текстуры на объекте в окне проекции. При этом необходимо стремиться к тому, чтобы квадра ты шахматного поля были максимально правильной формы (рис. 14.117).
Рис. 14.117. Модель головы с присвоенной текстурой Checker (Шахматная текстура)
Теперь следует окончательно упаковать проекцию текстурных координат в преде лах поля будущей текстуры. ПРИМЕЧАНИЕ ___________________________________________________________________ Если будущая текстура головы будет полностью симметричной, то нет необходимос@ ти выполнять дополнительные действия с проекцией текстурных координат. Однако если обе половинки лица будут различаться (например, из@за шрама или морщин), то необходимо выполнить действия, описанные ниже.
Сейчас пришло время вернуться к модели. После того как половине модели были присвоены и отредактированы про екционные координаты, можно свернуть стек модифика торов (выполнить команду Collapse (Свернуть)) или, не сворачивая, добавить в стек модификатор Symmetry (Сим метрия), а затем — модификатор Unwrap UVW (Расправить UVWпроекцию) (рис. 14.118). В настройках Unwrap UVW (Расправить UVWпроекцию) снова щелкните на кнопке Edit (Правка) свитка Parameters (Параметры). Теперь необходимо выделить часть сетки, принадлежащей левой половине модели (в настоящее вре мя обе проекции находятся в одном месте), и отобразить
Рис. 14.118. Стек модификаторов модели головы на данном этапе редактирования
700
Глава 14. Моделирование головы
ее зеркально, используя инструмент Mirror Horizontal (Отобразить по горизонтали) . После этого следует переместить проекцию в левую часть поля текстуры до совпа дения серединных линий (рис. 14.119). Выполнив описанные операции, можно снова свернуть стек модификаторов или добавить новый модификатор, на сей раз MeshSmooth (Сглаженная поверхность) (рис. 14.120). Этот модификатор позволит дополнительно разделить полигоны для получения более сглаженной поверхности модели.
Рис. 14.119. Окончательный вид проекции текстурных координат
Рис. 14.120. Окончательный вид стека модификаторов модели головы
Если вы свернули стек и вернулись к Editable Poly (Редактируемая полигональная поверхность), то объект сохранит все выполненные вами изменения, связанные с наложением и редактированием проекционных координат. После этого можно повысить уровень сглаживания модели, применив NURMS Subdivision (NURMSразбиение), можно перемещать подобъекты и даже редакти ровать их — проецирование сохранится. Однако я не советую этого делать. Луч ше, чтобы все изменения были внесены в модель перед наложением и редактиро ванием проекционных координат. На рис. 14.121 представлен окончательный вид модели головы со сглаживанием и присвоенными проекционными координатами.
Текстурирование головы человека
701
Рис. 14.121. Модель головы с присвоенными ей проекционными координатами
ПРИМЕЧАНИЕ ___________________________________________________________________ Для анализа присвоения проекционных координат модели головы вы можете загру@ зить файл UV_map_end.max, который находится в папке Examples\Глава 14 прилагае@ мого к книге DVD.
Текстурирование головы человека В предыдущем разделе мы рассмотрели один из способов присвоения текстурных координат полигональной модели головы человека. Создание такой проекции является неотъемлемой частью процесса текстурирования, о котором пойдет речь в данном разделе. Текстурировать голову человека можно двумя способами:
с использованием фотографий в фас и профиль;
на основе одной или нескольких текстурных карт, выполненных в программе редактирования растровой графики.
Рассмотрим второй вариант как более сложный, но позволяющий получить мак симальную свободу творчества. Кроме программы 3ds Max, для работы нам пона добится Adobe Photoshop или любая аналогичная программа редактирования рас тровой графики, работающая со слоями. Вы можете воспользоваться моделью головы с проекционными координатами, при своенными в предыдущем разделе, или загрузить файл texturing_start.max, который расположен в папке Examples\Глава 14 прилагаемого к книге DVD. На рис. 14.122 представлена модель женской головы, с которой мы будем работать.
702
Глава 14. Моделирование головы
Рис. 14.122. Модель женской головы без текстур
Прежде чем перейти к непосредственному созданию текстурных карт для модели головы, необходимо получить сетку, образованную проекционными координата ми модели. Она нужна в качестве шаблона, по которому мы будем выполнять тек стурирование. Получить ее можно следующим образом. 1.
Выберите в одном из окон проекций модель головы (объект Head).
2.
В свитке Parameters (Параметры) настроек модификатора Unwrap UVW (Рас править UVWпроекцию) щелкните на кнопке Edit (Правка).
3.
Выполните в открывшемся окне Edit UVWs (Редактирование UVW) коман ду меню ToolsRender UVW Template (ИнструментыВизуализация образ ца UVW).
4.
В открывшемся окне Render UVs (Визуализация UV) (рис. 14.123) установите желаемые размеры высоты и ширины (обычно не менее 1000 × 1000 пикселов) и щелкните на кнопке Render UV Template (Визуализация образца UV). В ре зультате откроется окно Render Map (Визуализация карты) (рис. 14.124) с изо бражением развертки текстурных координат.
5.
Нажмите кнопку Save Bitmap (Сохранить растровый файл). Сохраните изо бражение, полученное при визуализации, на диске в любом доступном фор мате, желательно в том, который позволяет использовать альфаканал (напри мер, TIFF).
ПРИМЕЧАНИЕ ___________________________________________________________________ Существуют специальные модификаторы, подключаемые модули и сценарии, позво@ ляющие не только получить сетку проекционных координат, но и работать с текстура@ ми. Вы можете воспользоваться одним из таких модулей, например Texporter или PSD Path Unwrapper.
Текстурирование головы человека
Рис. 14.123. Окно Render UVs (Визуализация UV)
703
Рис. 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 для удаления области текстуры с выделенным цветом.
704
Глава 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.
Текстурирование головы человека
705
На рис. 14.126 представлена текстурная карта цвета, выполненная в программе Photoshop.
Рис. 14.126. Текстурная карта цвета
После создания карты цвета можно переходить к карте рельефа. Разберемся сна чала, как работает такая карта. Прежде всего, вы должны знать, что для карты рельефа используется монохромное изображение с градациями цвета от белого до черного. Причем белый цвет позволяет по лучить на поверхности объекта возвышен ности, а черный — понижения, при этом среднее значение (50%й серый цвет) не оказывает никакого эффекта на поверх ность, к которой эта карта применяется. Таким образом, если нам необходимо по лучить на поверхности выпуклость, ее сле дует рисовать цветом, светлее 50%го серо го. Для вмятин цвет должен быть темнее этого значения. Продолжим рисование в Photoshop. Соз дайте новый слой и назовите его Bump. Ис пользуя инструмент Paint Bucket (Залив ка), залейте созданный слой серым цветом (R — 128, G — 128, B — 128). Кожа челове ка имеет поры, создадим их при помощи фильтра Noise (Шум). Для этого выполни те команду меню FilterNoiseAdd Noise (ФильтрШумДобавить шум). В от крывшемся окне диалога Add Noise (Доба вить шум) (рис. 14.127) установите флажок
Рис. 14.127. Окно Add Noise (Добавить шум)
706
Глава 14. Моделирование головы
Monochromatic (Одноцветный) и задайте параметру Amount (Величина) значение в диапазоне от 4 до 8. Таким образом, мы сделали заготовку для карты рельефа. Используя инструмент Brush (Кисть), нарисуйте морщины в области глаз и лба (если они есть у модели). Особое внимание уделите поверхности губ и бровей, если вы не использовали гео метрию, причем для бровей необходимо применять светлые тона кисти. Работая над картой рельефа, не забывайте, что поры не одинаковые на всей поверх ности головы. Например, на кончике носа и щеках поры крупнее, чем в области подбородка и лба, а уши могут иметь едва различимые неровности.
СОВЕТ ___________________________________________________________________________ Работая над текстурой, лучше всего создавать дополнительные слои для отдельных элементов. Это позволит при необходимости быстро редактировать их содержимое. Кроме того, может быть полезным использование прозрачности слоя или режима перекрытия.
На рис. 14.128 представлена карта рельефа, выполненная описанным выше спо собом.
Рис. 14.128. Текстурная карта рельефа, выполненная для модели головы
Сохраните полученную карту рельефа в отдельном файле Head_Bump. При текстурировании объектов органического происхождения необходимым яв ляется создание как минимум двух текстурных карт: цвета диффузного отражения и рельефа. Однако совсем не лишним будет создание еще одной карты — уровня блеска. Эта карта очень похожа на только что выполненную карту рельефа. Для нее используется тот же принцип построения монохромного изображения, где
Текстурирование головы человека
707
светлые места будут отражать свет, а темные — поглощать его. Причем чем ярче текстура, тем ярче будет блеск в этом месте. За основу для этой текстуры можно взять слой с картой рельефа. Создание такой карты не представляет сложности, особенно после того, как вы выполнили две предыдущие. Если вы обращали внимание, то должны были заметить, что самые яркие места на голове человека — это нос и лоб, в меньшей степени — щеки, уши и шея. Это связано с тем, что подкожный жир, выступая на поверхность кожи, вызывает ее блеск. Блестеть также может не только жирная, но и влажная кожа. Например, губы имеют высокий уровень блеска благодаря тому, что они почти всегда являются влажными. Кроме того, работая с текстурой женской головы, нужно обратить внимание на то, что если на губы «наносится» помада, то она ста нет источником дополнительного блеска. Исходя из вышесказанного создайте текстуру бликов с таким расчетом, чтобы по тону она была близкой к черному цвету, лишь места расположения предполагае мых бликов должны быть ярче (рис. 14.129).
Рис. 14.129. Текстурная карта уровня блеска
Сохраните полученную текстуру с именем Head_Specular. Текстуры выполнены, осталось только создать материал и применить его к моде ли головы. Перейдите в окно программы 3ds Max и загрузите модель головы, с которой вы делали шаблон сетки проекционных координат. Откройте редактор материалов и выберите свободный материал. Дальнейшие действия можно выполнять не сколькими способами с использованием следующих материалов: Standard (Стан дартный), Raytrace (Трассируемый) или Composite (Составной). Я опишу простой, но вполне приемлемый с точки зрения конечного результата способ на основе стандартного материала с применением карты Falloff (Спад).
708
Глава 14. Моделирование головы
ПРИМЕЧАНИЕ ___________________________________________________________________ Для реалистичного материала кожи требуется создание достаточно сложных мно@ гослойных карт, имеющих, в свою очередь, собственные карты смешивания или спада.
Чтобы создать материал для модели головы, выполните следующие действия. 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).
Примените созданный материал к модели головы и выполните тестовую визуали зацию. Если вы воспользовались файлом texturing_start.max с прилагаемо го к книге DVD, то вам не нужно устанавливать и настраивать источники света — они присутствуют в сцене и настроены для работы с объектом. Если же вы реши
709
Текстурирование головы человека
ли применить собственную модель для текстурирования, то начните с того, что установите в сцене не менее двух источников света и настройте их поло жение, интенсивность, способность ге нерировать тени и цвет (если исполь зуется). Это необходимо сделать до начала корректировки созданного ма териала потому, что источники света значительно влияют на отображение модели при визуализации. В этом слу чае предварительно настроенный ма териал после изменения освещенности сцены может потребовать полного из менения настроек. На рис. 14.131 представлена тестовая визуализация с настройками по умол чанию.
Рис. 14.130. Свиток Maps (Карты текстур) с загруженными текстурными картами
Рис. 14.131. Визуализация модели головы с настройками материала по умолчанию
Изображение, полученное при визуализации, благодаря созданным ранее текстур ным картам уже сейчас имеет неплохой вид. Улучшить его, не прибегая к слож ным настройкам текстурных карт, применению фотометрических светильников и визуализации путем трассировки лучей, можно, создав карту спада для цветово го канала материала модели головы и повысив уровень рельефности (сейчас она почти незаметна). Для этого выполните следующие действия. 1.
В редакторе материалов разверните свиток Maps (Карты текстур) для матери ала модели головы.
710
Глава 14. Моделирование головы
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 (Спад)
Улучшить конечное изображение и повысить его реалистичность можно, не толь ко создавая сложные составные материалы, используя трассировку лучей и дру гие стандартные возможности программы 3ds Max, но и при помощи подклю чаемых модулей. Например, для визуализации изображения, представленного на рис. 14.133, был использован визуализатор VRay. ПРИМЕЧАНИЕ ___________________________________________________________________ Для анализа созданного материала модели головы загрузите файл texturing_end.max, который находится в папке Examples\Глава 14 прилагаемого DVD.
Создание волос
711
Рис. 14.133. Изображение, полученное при помощи модуля V@Ray
Создание волос Выполняя предыдущие упражнения данной главы, вы научились моделировать и текстурировать голову человека. Остался последний шаг на пути к целостному портрету — волосы. Рассмотрим, как делаются волосы при помощи стандартного модификатора Hair and Fur (Волосы и мех). Для выполнения упражнения откройте построенную и текстурированную ра нее модель головы, которую можно найти на прилагаемом к книге DVD в папке Examples\Глава 14. Файл называется texturing_end.max. Прежде чем применить модификатор построения волос, необходимо выполнить некоторые подготовительные операции. В первую очередь следует оставить для работы только один объект — модель головы. Для этого в любом из окон проекций выделите объект Head и, щелкнув на нем правой кнопкой мыши, выберите из спис ка контекстного меню строку Hide Unselected (Спрятать невыделенное). Далее не обходимо определить область модели, на которой эти волосы будут расти. Для этого можно воспользоваться модификатором Mesh Select (Выделение сетки), с помощью которого следует выделить область, соответствующую естественному росту волос. Можно также построить сплайны, которые будут определять длину, направление и форму прически. Второй способ предполагает большую свободу в моделирова нии прически, поэтому им и воспользуемся. Прежде чем строить сплайны для формы волос, рассмотрим некоторые моменты, связанные с таким построением:
все сплайны должны принадлежать одному объекту;
начало сплайнов (первая точка) должно находиться в начале роста волос (во лосы строятся от корней);
712
Глава 14. Моделирование головы
при построении волос модификатор Hair and Fur (Волосы и мех) производит ли нейную интерполяцию между соседними сплайнами, в связи с чем необходимо иметь достаточное количество сплайнов для создания прически нужной формы;
интерполяция ведется с учетом порядковых номеров сплайнов, поэтому сплай ны необходимо либо строить в строгой последовательности, либо после по строения изменить порядок их следования.
Начните построение сплайнов, для чего выполните команду меню CreateShapes Line (СозданиеФормыЛиния). Начните строить сплайн с лобной части голо вы и продлите его вниз вдоль правой стороны лица (рис. 14.134).
Рис. 14.134. Первый сплайн, определяющий форму волос
Проверьте положение сплайна во всех окнах проекций — он должен иметь форму первого локона волос и не должен пересекаться с поверхностью модели головы. СОВЕТ ___________________________________________________________________________ При создании сплайнов можно использовать минимальное количество вершин для построения базовой формы локона волос с последующим наращиванием вершин до необходимого количества.
Постройте новый сплайн на затылочной части головы или копируйте и подредак тируйте созданный. Продолжите построение сплайнов с таким расчетом, чтобы по периметру головы расположилось от 10 до 15 сплайнов (рис. 14.135).
Создание волос
713
Рис. 14.135. Форма и расположение сплайнов относительно модели головы
После построения сплайнов убедитесь, что они принадлежат одному объекту и рас полагаются по номерам в порядке следования. Если этого не произошло в процес се построения (я при построении новых кривых копировал сплайны на уровне подобъектов), то выполните следующие действия. 1.
Выделите первый сплайн, расположенный справа от лицевой части модели го ловы.
2.
В свитке Geometry (Геометрия) щелкните на кнопке Attach (Присоединить), в результате она выделится цветом.
3.
В окне проекции Top (Сверху) последовательно выберите все построенные сплайны, продвигаясь по кругу вправо.
Теперь можно применить модификатор для создания волос на основе сплайнов. Для этого выделите построенные сплайны и на командной панели выберите из списка модификаторов строку Hair and Fur (WSM) (Волосы и мех (WSM)). Прежде чем настраивать отображение, установим источник света, который будет генерировать тень от волос. ВНИМАНИЕ ______________________________________________________________________ Для генерации теней модификатором Hair and Fur (Волосы и мех) используются толь@ ко направленные источники света типа Target Spot (Направленный с целью) или Free Spot (Направленный без цели), к настройкам которых добавляется свиток с парамет@ рами тени для волос.
714
Глава 14. Моделирование головы
Чтобы получить на модели головы тени от волос, выполните следующие действия. 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).
Вернитесь к настройкам модификатора Hair and Fur (WSM) (Волосы и мех (WSM)). Определите общие параметры модификатора в свитке General Parameters (Общие параметры), установив количество волос (Hair Count (Количество волос)), количе ство сегментов по длине волоса (Hair Segments (Количество сегментов)), толщину волоса (Root Thick (Толщина волоса) и Tip Thick (Толщина концов)) и т. д. Флажок Interpolate (Интерполяция) должен оставаться установленным, чтобы поверхность волос строилась с учетом интерполяции между сплайнами (рис. 14.137).
Рис. 14.136. Свиток Hair Light Attr (Свойства источника света для волос)
Рис. 14.137. Свиток General Parameters (Общие параметры) настроек модификатора Hair and Fur (WSM) (Волосы и мех (WSM))
В свитке Material Parameters (Параметры материала) укажите параметры, которые будут влиять на отображение волос при визуализации. Образцы цвета Tip Color (Цвет концов) и Root Color (Цвет у корней) определяют соответственно цвет во лос на концах и у корней. Параметр Hue Variation (Оттенки цвета) влияет на то,
715
Создание волос
в какой степени цвет волос будет отличаться от указанного в образцах цвета. Па раметры Specular (Цвет зеркального отражения) и Glossiness (Глянец) отвечают за блеск волос. Настройте также параметр Self Shadow (Собственная тень) и другие параметры свитка Material Parameters (Параметры материала) (рис. 14.138). Параметры свитков Frizz Parameters (Параметры вьющихся волос) и Kink Parameters (Параметры курчавости) можно использовать для получения вьющихся волос. Более важным с точки зрения общих настроек является свиток Multi Strand Parameters (Параметры локонов), позволяющий настраивать вид локонов, создавая пышность и хаотичность прядей волос. Здесь можно задать параметры плотности (Count (Ко личество)), расширения волос у основания (Root Splay (Расширение у основания)) и на концах (Tip Splay (Расширение на конце)), а также случайное распределение (Randomize (Случайное распределение)) (рис. 14.139).
Рис. 14.138. Свиток с настройками параметров материала волос
Рис. 14.139. Свиток Multi Strand Parameters (Параметры локонов)
ПРИМЕЧАНИЕ ___________________________________________________________________ Все вышеописанные настройки формы и отображения волос в значительной степени зависят от формы, длины и расположения сплайнов относительно друг друга. В свя@ зи с этим тонкая настройка параметров возможна только в процессе тестовой визу@ ализации. При этом можно редактировать не только параметры модификатора, но и сами кривые на уровне подобъектов.
Кроме построения сплайнов по периметру модели, можно создать единичные сплайны для отдельных локонов (например, челки). В этом случае необходимо снять флажок Interpolate (Интерполяция) в свитке General Parameters (Общие па раметры) и настроить отображение локона, используя свиток Multi Strand Parameters (Параметры локонов).
716
Глава 14. Моделирование головы
На рис. 14.140 представлена модель головы с созданными волосами.
Рис. 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). Кроме того, можно присваивать свои собственные сочетания клавиш тем операци ям, которые вы часто выполняете, но которые не имеют стандартных клавиатур ных аналогов.
Приложение 1. 70 советов пользователям 3ds Max
719
Совет 2. Выполняя специальные задачи, создавайте собственные панели инстру ментов, пункты меню или квадратичные меню. Примером может служить панель инструментов для работы с полигональными моделями или специальными эффек тами. Совет 3. Существует быстрый способ центрирования объектов в окне проекции. Для этого достаточно навести указатель мыши на требуемый объект и нажать кла вишу I. Совет 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 (Редактор структуры)
720
Приложение 1. 70 советов пользователям 3ds Max
Работа с файлами Совет 8. Устанавливая 3ds Max 2008, позаботьтесь, чтобы в разделе жесткого диска, в который инсталлируется программа, было достаточно свободного места. Во время работы будут добавляться библиотеки текстур, подключаемые модули, пакеты обновлений, наборы моделей и т. д., в результате чего может возникнуть нехватка дискового пространства. Совет 9. Можно ускорить процесс создания новых сцен с помощью предваритель ной настройки атрибутов сцены. Если создать пустую сцену и поместить в нее ка меру и источники света (либо чтото еще, что вам требуется постоянно), а затем сохранить с именем maxstart.max и поместить файл в каталог scenes в корневой директории 3ds Max, то при загрузке или выполнении команды Reset (Сбросить) произойдет загрузка этого файла. Совет 10. Устанавливая дополнитель ные модули, не забывайте, что при за грузке приложения они находятся в опе ративной памяти даже в том случае, если вы их не используете. В связи с этим никогда не оставляйте те модули, кото рые подключались для тестирования или которыми вы больше не пользуе тесь. Можно создать несколько фай лов инициализации (plugin.ini) для загрузки программы с необходимой конфигурацией (указаны пути только к необходимым наборам модулей, со бранных в отдельные папки). На прак тике это могут быть несколько пунктов в меню Ïóñê или ярлыки на Ðàáî÷åì ñòîëå, например, с такими параметрами загруз ки: 3dsmax -p <èìÿ êîïèè ôàéëà plugin.ini> (рис. П1.2). Совет 11. Как можно чаще сохраняйте файл, особенно при выполнении опе раций, способных вызвать аварийное завершение программы (например, бу левых операций). Удобно использовать Incremental Save (Приращения при сохране нии), чтобы всегда можно было вернуться к промежуточным файлам. Кроме того, не забывайте о существовании режима Auto Backup (Автоматическое сохранение) (по умолчанию включено), что позволит восстановить большую часть работы, по терянной при аварийном завершении программы (рис. П1.3). Рис. П1.2. Настройка свойств ярлыка для вызова 3ds Max 9 с дополнительными модулями для работы со сплайнами
Совет 12. Если вы собираетесь продолжить свой проект на другом компьютере или сохранить его в архиве, то лучшим способом будет создание архива средства ми самой программы 3ds Max (FileArchive (ФайлАрхивировать)). Это позво
Приложение 1. 70 советов пользователям 3ds Max
721
Рис. П1.3. Окно Preference Settings (Параметры установок) с настройками сохранения файлов
лит упаковать не только сцену с материалами, но и все сопутствующие текстур ные карты с прописанными к ним путями. Совет 13. Установите флажок Save Viewport Thumbnail Image (Сохранить пиктограм му окна проекции) в окне Preference Settings (Параметры установок) (см. рис. П1.3). Это позволит вам при навигации по файлам видеть то, что в них находится. Совет 14. Для получения информации о сцене служит пункт Summary Info (Свод ка) меню File (Файл). При помощи открывшегося окна вы можете получить ин формацию о количестве полигонов, присвоенных материалах, подключаемых мо дулях и т. д. Вы также можете сохранить эту информацию в текстовом файле для последующего анализа. Совет 15. Возможное решение для открытия проблемных файлов — загрузка их содержимого при помощи команды Merge (Присоединить) или XRef Objects (Ссыл ки на объекты) меню File (Файл) в новую сцену. Совет 16. Одним из быстрых способов открытия файлов сцен, присвоения мате риалов и т. д. является Asset Browser (Окно просмотра ресурсов) (рис. П1.4). В нем можно перетаскивать в окно проекции при помощи мыши как отдельные объекты, так и целые сцены, присваивать материалы или текстуры объектам сцены, про сматривать пиктограммы сцен, выполнять операции с файлами и многое другое.
722
Приложение 1. 70 советов пользователям 3ds Max
Рис. П1.4. Окно Asset Browser (Окно просмотра ресурсов)
Совет 17. Не забывайте сохранять файл или выполнять команду EditHold (Прав каЗафиксировать) перед теми операциями, для которых недоступна команда Undo (Отменить) (например, перед Collapse (Свернуть)).
Моделирование Совет 18. Если необходимо изменить какуюлибо величину для параметрическо го объекта, достаточно в поле параметра набрать r и число, на которое нужно изменить значение. Например, если набрать r50, то общее значение изменится на 50 (было 20 — станет 70). Совет 19. Если установить курсор в поле счетчика и нажать сочетание клавиш Ctrl+N, то откроется окно со своеобразным калькулятором, в котором можно вы полнять простые математические вычисления, а результат автоматически зано сить в поле параметра. Совет 20. Щелчок правой кнопкой мыши на стрелках счетчика позволяет обну лить его. Эта функция удобна, если вам необходимо задать нулевые значения (на пример, в окне трансформаций или поворота). Совет 21. Если во время построения сплайна вам понадобится удалить последнюю вершину или несколько вершин, то сделать это можно, не выходя из режима по строения, воспользовавшись клавишей Backspañe. Совет 22. Использование привязок (Snaps) может значительно упростить работу, когда выравниваются или передвигаются объекты или подобъекты. Совет 23. Иногда во время трансформации или поворота возникает необходи мость изменения параметров привязок. Это можно сделать, не прерывая операции, нажав клавишу Shift и правую кнопку мыши, в результате чего появится контекст ное меню, в котором можно выбрать новые параметры привязок.
Приложение 1. 70 советов пользователям 3ds Max
723
Совет 24. При работе в режиме редактирова ния иногда возникает необходимость относи тельного поворота или перемещения объектов. Чтобы выполнить такой поворот, необходи мо выделить объект и заблокировать его, ис пользуя клавишу Ïðîáåë. После этого следует установить в настройках привязок (окно вызы вается щелчком правой кнопкой мыши на кноп ке Snaps Toggle (Переключение привязок)) фла жок Use Axis Constraints (Использовать осевые привязки) (рис. П1.5). На панели инструментов выберите Use Transform Coordinate Center (Использовать начало коорди нат) и перейдите в окно проекции для ре дактирования.
Рис. П1.5. Вкладка Options (Параметры) окна Grid and Snap Settings (Настройки сетки и привязок)
В результате выполненных действий поворот объекта будет осуществляться во круг точки привязки (например, вершины или опорной точки другого объекта). Совет 25. Иногда необходимо выделить ряд ребер, которые проходят по горизон тали или вертикали, не затрагивая другие, перпендикулярные им ребра. Такое выделение можно выполнить с использованием направления движения указателя мыши, для чего предварительно должен быть установлен соответствующий фла жок в настройках программы (рис. П1.6). Перемещение указателя слева направо приводит к выделению только тех ребер, которые попадают в область выделения. Если же выделять указателем в обратном направлении, то выделятся все ребра, которые затрагивает область выделения. Это же справедливо и по отношению к полигонам. Совет 26. В режиме редактирования подобъектов (вершины, ребра, полигоны и т. д.) полезно установить флажок Ignore Backfacing (Без обратной ориентации). Это по зволит избежать случайного выделения подобъектов на противоположной сторо не модели. Естественно, не забывайте снимать данный флажок, если вам необхо димо выделить весь объект. Совет 27. Если у полигональной модели на уровне редактирования вершин выде лить группу вершин и, удерживая нажатой клавишу Ctrl, перейти на уровень ре дактирования полигонов (в свитке Selection (Выделение) щелкнуть на кнопке Polygon (Полигон)), то автоматически выделятся все полигоны, которым принад лежат ранее выделенные вершины. Это же правило справедливо и для других ти пов подобъектов. Совет 28. Чтобы, редактируя полигональную модель, иметь возможность передви гать вершины вдоль какоголибо ребра или в плоскости полигона, необходимо установить переключатель Constraints (Привязки) свитка Edit Geometry (Редакти рование геометрии) настроек полигональной модели в положение Edge (Ребро) либо Face (Грани) соответственно.
724
Приложение 1. 70 советов пользователям 3ds Max
Рис. П1.6. Окно Preference Settings (Параметры установок) с активизированным выделением по направлению
Совет 29. В процессе редактирования подобъектов можно быстро вернуться к пер воначальному положению выделенных элементов, для чего достаточно, удерживая нажатой левую кнопку мыши, щелкнуть правой. Совет 30. Если вы хорошо знакомы с возможностями программы, то всегда най дете 2–3 решения для моделирования одного и того же объекта. Ваша задача — выбрать тот вариант моделирования, который в данном случае будет оптималь ным по скорости и качеству. Например, сложный объект, на моделирование кото рого при помощи полигонов понадобилось бы не меньше часа, можно смоделиро вать при помощи лофтинга за 10–15 минут. Совет 31. Если вам необходимо редактировать примитивы на уровне подобъектов, сохранив при этом параметрические свойства объекта, то применяйте модифика торы Edit Spline (Редактирование сплайна) или Edit Mesh (Редактирование поверх ности). В противном случае следует преобразовать объект в Editable Spline (Редак тируемый сплайн) и Editable Mesh (Редактируемая поверхность). Это поможет высвободить ресурсы компьютера. Совет 32. По возможности всегда заменяйте геометрию модели текстурными кар тами. Например, для создания участка леса на втором плане вполне подойдет ис пользование перекрещивающихся плоскостей с нанесенной на них текстурой де ревьев в каналах основного цвета (Diffuse) и непрозрачности (Opacity).
Приложение 1. 70 советов пользователям 3ds Max
725
Совет 33. При создании объектов форм по возможности ис пользуйте Renderable Spline (Визуализируемый сплайн) вмес то операций лофтинга. Такие объекты требуют меньше сис темных ресурсов и легче редактируются. Чтобы сплайн был виден в результате визуализации, необходимо произвести настройки в свитке Rendering (Визуализация) (рис. П1.7), на пример установить флажок Enable In Renderer (Показывать при визуализации) и определить значение параметра Thickness (Толщина). Совет 34. Не забывайте давать объектам сцены значимые име на, тогда при их большом количестве вам не придется гадать, что же скрывается за именем Box25. Совет 35. Возьмите за правило вне зависимости от наполне ния сцены моделировать объекты с минимальным, но доста точным количеством полигонов. Что это означает на практи П1.7. Свиток ке? Все очень просто. Если, например, для ваших задач сфере Рис. Rendering достаточно 24 сегментов (и она будет выглядеть сглаженно), (Визуализация) а не 32, которые установлены по умолчанию, то именно 24 настроек сплайна и нужно использовать. От количества полигонов в сцене на прямую зависит время визуализации, особенно если речь идет о трассируемых материалах и тенях. Кроме того, это упростит процесс визуализации анимации. Совет 36. Если сцена статична и вы не планируете делать анимацию, облеты камерой и т. п., то можно не моделировать заднюю (скрытую от взгляда) часть объекта. То же относится и к тем частям объектов, которые перекрывают друг друга. Совет 37. По возможности избегайте булевых операций, так как, кроме усложне ния топологии модели, они создают проблемы с ее дальнейшим редактированием. Всегда можно найти альтернативу булевым операциям, и, хотя я не противник их использования в работе, у меня сложился такой стиль моделирования, при кото ром я вообще их не применяю. Если вам не обойтись без них, не забудьте перед назначением булевой операции свернуть стек модификаторов, выполнив команду Collapse (Свернуть) контекстного меню, и проверить объект на наличие ошибок при помощи модификатора STL Check (STLтест). После этого сохраните или вы полните команду EditHold (ПравкаЗафиксировать) и только тогда приступай те к булевым операциям. Совет 38. В 3ds Max создание NURBSобъектов не поставлено на должный уро вень, как, например, в программах Rhino или Avid Studio Tools, но, если это воз можно, предпочтительнее использовать именно NURBSтехнологию для получения более сглаженных поверхностей (например, при использовании модификатора Lathe (Вращение)). Совет 39. Если вам по какойлибо причине нужно изменить масштаб объекта, это делается на уровне подобъектов при помощи Gizmo (Габаритный контейнер) модификатора XForm (Преобразование). Особенно это актуально для объектов
726
Приложение 1. 70 советов пользователям 3ds Max
формы, которые используются в качестве сплайна пути или поперечного сечения в лофтобъектах. Совет 40. Если вы делаете симметричную модель, то нет необходимости модели ровать ее всю. Достаточно сделать только половину, а затем применить модифи катор Symmetry (Симметрия). В ранних версиях программы 3ds Max необходимо сделать копию при помощи инструмента Mirror (Зеркальное отображение), присо единить ее (щелкнуть на кнопке Attach (Присоединить)), а затем объединить вер шины в месте стыка двух половин. Совет 41. Если нужно сделать несколько копий одного и того же объекта, полезно выбирать варианты Instance (Привязка) или Reference (Подчинение). При после дующем редактировании одного из объектов изменения бу дут происходить сразу во всех дубликатах. Совет 42. Когда в сцене присутствует большое количество объектов, гораздо проще продолжить моделирование или вносить исправления в объекты, используя Isolation Mode (Режим изоляции) (включается при помощи сочетания кла виш Alt+Q). Иногда также очень помогает при моделирова нии использование прозрачности объектов (сочетание кла виш Alt+X). Совет 43. Если в сцене присутствует некоторое количество объектов, то полезно прятать (при помощи команды Hide Selected (Спрятать выделенное) вкладки Display (Отображе ние)) те объекты, которые в данный момент не нужны. Так будет проще разбираться с оставшимися объектами и уско рится прорисовка окон проекций.
Рис. П1.8. Свиток Subdivision Surface (Поверхности с разбиением) с настройками отображения и визуализации разбиений
Совет 44. Если вы используете NURMS Subdivision (NURMS разбиения) для модификатора MeshSmooth (Сглаженная по верхность) или Editable Poly (Редактируемая полигональная поверхность), то задавайте нужное количество итераций для визуализации, при этом выключая или оставляя их мини мальное количество для окон проекций (рис. П1.8). Это по может не только уменьшить размер файла, но и ускорит про рисовку окон проекций.
Анимация Совет 45. Если вы анимируете объект при помощи модификаторов, а производи тельность компьютера оставляет желать лучшего, то можно немного исправить создавшееся положение путем применения модификатора Point Cache (Точка кэша). Он позволяет сохранять анимацию вершин объекта вместо всех использо вавшихся модификаторов. Таким образом, компьютер будет нагружаться гораздо меньше.
Приложение 1. 70 советов пользователям 3ds Max
727
Совет 46. Если щелкнуть правой кнопкой мыши на ползунке шкалы анимации, то появится окно Create Key (Создать ключ), при помощи которого можно скопи ровать трансформации выделенного объекта из одного кадра в другой. Совет 47. Если, удерживая нажатой клавишу Shift, щелкнуть правой кнопкой мыши на стрелках, расположенных справа от счетчика анимируемого парамет ра, то в строке треков будет автоматически создан ключ анимации этого пара метра. Совет 48. Активизировав переключатель Key Mode Toggle (Переключение режима ключей) в правом нижнем углу окна программы, можно быстро перемещаться по ключевым кадрам при помощи ползунка таймера или соответствующих кнопок навигации. Совет 49. Если вы используете анимацию материала, то щелчок на кнопке Make Preview (Создать просмотр) в окне Material Editor (Редактор материалов) позволит создать и просмотреть эскиз анимации материала в ячейке образца в реальном вре мени. Таким же образом можно выполнить и просмотреть анимацию отдельной текстурной карты. Совет 50. Для анализа анимации объектов полезно включать режим отображения двойников (ViewsShow Ghostings (ВидПоказать двойников)). Двойники отобра жаются в каркасном виде до и после текущего кадра (рис. П1.9).
Рис. П1.9. Показ двойников в окне проекции Front (Спереди)
Совет 51. Включая воспроизведение анимации в окне проекции, не забывайте за крывать окно редактора материалов, в противном случае программа будет пытать ся обновлять образцы материалов с каждым кадром анимации.
728
Приложение 1. 70 советов пользователям 3ds Max
Совет 52. Для просмотра тестовой анимации используйте команду Make Preview (Создать просмотр) из пункта главного меню Animation (Анимация). Эта операция позволит вам проанализировать анимацию объектов в реальном времени.
Материалы и текстуры Совет 53. Используйте текстуры и карты выдавливания вместо сложной геомет рии, если обратное не продиктовано самой задачей моделирования. Например, при моделировании стены с кирпичной кладкой логичнее наложить текстуру кирпи чей, а швы между ними сделать при помощи текстуры выдавливания, а не моде лировать кирпичики по отдельности. Менее очевидным является использование этих же приемов, например, для создания кильватерной волны вслед за яхтой. Совет 54. При использовании растро вых изображений в качестве карт вы давливания задавайте параметру Blur (Размытие) значение 0,01, а в качестве размытия применяйте небольшое зна чение параметра Blur offset (Сдвиг раз мытия) (рис. П1.10).
Рис. П1.10. Настройка параметров размытия для карты выдавливания
Совет 55. Во время текстурирования объектов старайтесь как можно чаще использовать процедурные карты (ина че говоря, текстуры, которые созда ются программно). Кроме получения максимально возможного качества, вы избавитесь от необходимости держать на диске вместе с проектом лишние текстуры.
Совет 56. Если вы применяете текстуры для заднего фона, то их размер должен со ответствовать выходному размеру изображения при визуализации (большее изоб ражение качества не улучшит, но место на диске и в памяти будет занимать, а при меньшем произойдет потеря качества). Совет 57. При необходимости использования больших текстур, которые нельзя загрузить стандартным способом, установите в настройках программы (Customize Preferences (НастройкиПараметры), вкладка Rendering (Визуализация)) в облас ти Bitmap Pager (Пейджер растрового изображения) флажок On (Включить). Совет 58. Если по какимлибо причинам вам понадобилось вернуться к материа лу, присвоенному объекту по умолчанию, это можно сделать при помощи утили ты UVW Remove (Удалить UVW).
Источники света и камеры Совет 59. Не используйте тени Area Shadows (Область тени) и Ray Traced Shadows (Трассированные тени) при промежуточных визуализациях, так как это значи
Приложение 1. 70 советов пользователям 3ds Max
729
тельно увеличивает время просчетов. Проводите тестовую визуализацию с мини мальными размерами изображения, но достаточными для контроля над вводимы ми изменениями. Для этих же целей применяйте при возможности визуализацию фрагмента или выделенных объектов. Совет 60. Используйте область Clipping Planes (Секущие плоскости) настроек ка мер для исключения ненужных объектов из визуализации. Очень часто такой прием применяется для визуализации интерьеров, когда необходимо исклю чить из визуализации передние стены. Принцип секущих плоскостей также при меняется для отдельно взятых объектов и в окнах проекций во время моделиро вания. Совет 61. При желании вы можете быстро добавить в сцену освещение, исполь зуемое по умолчанию, с целью создания базового освещения и последующего его редактирования. Для этого необходимо в настройках окна проекции уста новить использование двух источников света (рис. П1.11) и выполнить команду ViewsAdd Default Lights to Scene (ВидДобавить в сцену встроенные источники света).
Рис. П1.11. Установка использования двух источников света в окне Viewport Configuration (Конфигурирование окна проекции)
Совет 62. Повысить качество тени Shadow Map (Тип отбрасываемой тени) можно за счет увеличения значения параметра Size (Размер) свитка Shadow Map Params (Параметры карты теней). Однако увеличение значения этого параметра вызыва ет создание более четких границ тени, что не всегда приемлемо. Для решения за дачи необходимо также увеличить значение параметра Sample Range (Диапазон усреднения) данного свитка.
730
Приложение 1. 70 советов пользователям 3ds Max
Визуализация Совет 63. Если в сцене используются Raytraceпросчеты, обычно для простых мате риалов и теней хватает глубины в два просчета (значение параметра Maximum Depth (Максимальная глубина) в свитке Raytracer Global Parameters (Глобальные параметры трассировки) окна Render Scene (Визуализация сцены)), хотя по умолчанию зада но 9. Если же в сцене присутствуют прозрачные объекты, то глубина лучей просчи тывается в зависимости от количества проходов луча через преломляющие среды. Например, для стакана это четыре (ближняя стенка стакана — внешняя и внутрен няя ее поверхности, а также задняя стенка — внутренняя и внешняя поверхности). Совет 64. Если необходимо сделать размер выходного изображения больше, чем 32 768 × 32 768 пикселов (предел в настройках визуализатора 3ds Max 2008), то следует использовать окно Video Post (Видеомонтаж), с его помощью можно полу чить до 99 999 × 99 999 пикселов. Существуют также способы визуализации изо бражения частями с последующей их «склейкой». Совет 65. Часто при работе с большими проектами время визуализации может растянуться на часы и даже дни. Чтобы иметь возможность продолжить работу над текущим или другим проектом, необходимо использовать сетевую визуализацию. В этом случае визуализация будет проходить в фоновом режиме при помощи мо дуля Backburner, а вы сможете работать с 3ds Max в обычном режиме. Совет 66. Если вам необходимо последовательно визуализировать несколько ви дов из камеры, это можно выполнить одним из следующих способов.
При помощи подключаемых модулей (например, RPManager).
Анимировав камеру так, чтобы в ключевых кадрах были необходимые виды, а затем установив параметры визуализации каждого ключевого кадра с сохра нением последовательности кадров в файле.
При помощи модуля Video Post (Видеомонтаж). При этом для каждой камеры создается событие Add Scene Event (Добавить событиесцену) и Add Image Output Event (Добавить событие вывода изображения), где выбирается камера для визу ализации и файл для записи визуализированного изображения (рис. П1.12).
Рис. П1.12. Окно модуля Video Post (Видеомонтаж) с настройками последовательной визуализации вида четырех камер
Приложение 1. 70 советов пользователям 3ds Max
731
Разное Совет 67. При использовании чертежей для моделирования объектов возникает проблема, связанная с отрисовкой их в окнах проекций. Стандартными способа ми можно повысить качество до определенных пределов. Как вариант можно ис пользовать чертеж, выполненный в программах векторной графики и импортиро ванный в 3ds Max как набор кривых. Совет 68. Одним из способов борьбы с аварийным завершением программы явля ется переход на современную операционную систему (Windows 2000/XP). Имен но старые операционные системы Windows 95/98 вызывают наибольшее количе ство сбоев. Совет 69. Рассмотрите возможность улучшения конфигурации компьютера. Без условно, такие решения связаны с материальными затратами, но работать комфорт но с 3ds Max 2008 можно только на компьютерах с современной конфигурацией. Совет 70. Для решения возникающих вопросов обращайтесь к файлу справки — это самое полное собрание ответов на них. В заключение хочу отметить, что это только часть тех полезных мелочей, которые необходимо знать при работе с 3ds Max, чтобы облегчить процесс создания своих проектов.
Приложение 2. Основные сочетания клавиш 3ds Max 2008 Работа в программе станет значительно быстрее и эффективнее, если вы будете пользоваться сочетаниями клавиш для выполнения операций. Для быстрого ознакомления с основными клавиатурными комбинациями интер фейса программы выполните команду HelpHotKey Map (СправкаКарта сочета ний клавиш). В результате откроется интерактивное окно (рис. П2.1).
Рис. П2.1. Интерактивное окно карты клавиатурных комбинаций 3ds Max 2008
Если передвигать указатель по клавиатуре, расположенной в правом нижнем углу, то автоматически будет меняться отображение сочетаний клавиш. Для просмотра данного окна вам понадобится установленный Flashпроигрыватель. Ниже приведены основные сочетания клавиш, которые могут понадобиться при выполнении упражнений данной книги. ПРИМЕЧАНИЕ ___________________________________________________________________ Полный список сочетаний клавиш можно получить, выполнив команду Customize Customize User Interface (НастройкаНастройка пользовательского интерфейса) и перейдя в открывшемся окне на вкладку Keyboard (Клавиатура). В данном окне мож@ но также переопределить сочетания клавиш.
Приложение 2. Основные сочетания клавиш 3ds Max 2008
Интерфейс программы Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
Align (Âûðîâíÿòü)
Alt+A
Angle Snap Toggle (Óãëîâàÿ ïðèâÿçêà âêë/âûêë)
A
Background Lock (Áëîêèðîâàòü ôîí)
Alt+Ctrl+B
Change to Bottom View (Ïåðåêëþ÷èòü íà âèä ñíèçó)
B
Change to Camera View (Ïåðåêëþ÷èòü íà âèä èç êàìåðû)
C
Change to Front View (Ïåðåêëþ÷èòü íà âèä ñïåðåäè)
F
Change to Isometric User View (Ïåðåêëþ÷èòü íà èçîìåòðè÷åñêèé ïîëüçîâàòåëüñêèé âèä)
U
Change to Left View (Ïåðåêëþ÷èòü íà âèä ñëåâà)
L
Change to Perspective User View (Ïåðåêëþ÷èòü íà ïåðñïåêòèâíûé ïîëüçîâàòåëüñêèé âèä)
P
Change to Top View (Ïåðåêëþ÷èòü íà âèä ñâåðõó)
T
Cycle Subobject Level (Öèêëè÷åñêèé âûáîð óðîâíÿ âûäåëåíèÿ ïîäîáúåêòîâ)
Insert
Disable Viewport (Èñêëþ÷èòü ïðîåêöèþ)
D
Display Grids Toggle (Ïîêàçàòü/ñêðûòü êîîðäèíàòíóþ ñåòêó â àêòèâíîì îêíå)
G
Select by Name (Âûäåëèòü ïî èìåíè)
H
Expert Mode Toggle (Âêëþ÷åíèå/âûêëþ÷åíèå ýêñïåðòíîãî ðåæèìà)
Ctrl+X
Material Editor (Ðåäàêòîð ìàòåðèàëîâ)
M
Maximize View Toggle (Ðàçâåðíóòü/âîññòàíîâèòü îêíî ïðîåêöèè)
Alt+W
Move Mode (Ðåæèì ñìåùåíèÿ)
W
Open File (Îòêðûòü ôàéë)
Ctrl+O
Quick Rendering (Áûñòðàÿ âèçóàëèçàöèÿ)
Shift+Q
Redo Scene Operation (Ïîâòîðèòü îïåðàöèè íàä îáúåêòàìè ñöåíû)
Ctrl+Y
Render Last (Ïîâòîðèòü âèçóàëèçàöèþ)
F9
Render Scene (Âèçóàëèçàöèÿ ñöåíû)
F10
Rotate Mode (Ðåæèì âðàùåíèÿ)
E
Save File (Ñîõðàíèòü ôàéë)
Ctrl+S
Scale Mode (Ðåæèì ìàñøòàáèðîâàíèÿ)
R
See-Through Display Toggle (Âèäåòü ñêâîçü îáúåêò âêë/âûêë)
Alt+X
Select Mode (Ðåæèì âûäåëåíèÿ)
Q
733
734
Приложение 2. Основные сочетания клавиш 3ds Max 2008
Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
Selection Lock Toggle (Áëîêèðîâàòü âûäåëåííûé îáúåêò)
Ïðîáåë
Shade Selected Faces Toggle (Òîíèðîâàòü âûäåëåííûå ãðàíè âêë/âûêë)
F2
Snap Toggle (Ïðèâÿçêà âêë/âûêë)
S
Undo Scene Operation (Îòìåíèòü îïåðàöèþ íàä îáúåêòàìè ñöåíû)
Ctrl+Z
Zoom Mode (Ìàñøòàá)
Z
Сочетания клавиш для работы с Editable Mesh (Редактируемая поверхность) Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
Bevel Mode (Ðåæèì âûäàâëèâàíèÿ ñî ñêîñîì)
Ctrl+V, Ctrl+B
Chamfer Mode (Ðåæèì ôàñêè)
Ctrl+C
Cut Mode (Ðåæèì âû÷èòàíèÿ)
Alt+C
Detach (Îòäåëèòü)
Ctrl+D
Edge Subobject Mode (Ðåæèì ðåáåð)
2
Element Subobject Mode (Ðåæèì ýëåìåíòîâ)
5
Extrude Mode (Ðåæèì âûäàâëèâàíèÿ)
Ctrl+E
Face Subobject Mode (Ðåæèì ãðàíåé)
3
Polygon Subobject Mode (Ðåæèì ïîëèãîíîâ)
4
Vertex Subobject Mode (Ðåæèì âåðøèí)
1
Weld Selected (Îáúåäèíèòü âûäåëåííîå)
Ctrl+W
Weld Target Mode (Îáúåäèíèòü óêàçàííûå)
Alt+W
Сочетания клавиш для работы с Editable Poly (Редактируемая полигональная поверхность) Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
Bevel Mode (Ðåæèì âûäàâëèâàíèÿ ñî ñêîñîì)
Shift+Ctrl+B
Chamfer Mode (Ðåæèì ôàñêè)
Shift+Ctrl+C
Connect (Ñîåäèíèòü)
Shift+Ctrl+E
Cut (Âû÷èòàíèå)
Alt+C
Edge Subobject Mode (Ðåæèì ðåáåð)
2
Element Subobject Mode (Ðåæèì ýëåìåíòîâ)
5
Extrude Mode (Ðåæèì âûäàâëèâàíèÿ)
Shift+E
Приложение 2. Основные сочетания клавиш 3ds Max 2008 Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
Border Subobject Mode (Ðåæèì ãðàíåé)
3
Grow Selection (Óâåëè÷èòü âûäåëåíèå)
Ctrl+Page Up
Hide (Ñïðÿòàòü)
Alt+H
Meshsmooth (Ñãëàæèâàíèå ïîâåðõíîñòè)
Ctrl+M
Object Level (Ðåæèì îáúåêòà)
6
Polygon Subobject Mode (Ðåæèì ïîëèãîíîâ)
4
Repeat Last Operation (Ïîâòîð ïîñëåäíåé îïåðàöèè)
;
Select Edge Loop (Âûäåëèòü ðåáðà ïî ïåòëå)
Alt+L
Unhide All (Ïîêàçàòü âñå)
Alt+U
Vertex Subobject Mode (Ðåæèì âåðøèí)
1
Target Weld (Îáúåäèíèòü öåëåâóþ)
Ctrl+Shift+W
Сочетания клавиш для работы с NURBS.объектами Êîìàíäà èëè îïåðàöèÿ
Ñî÷åòàíèå êëàâèø
CV Constrained Normal Move (Îãðàíè÷åíèå ñäâèãà óïðàâëÿþùèõ òî÷åê âäîëü íîðìàëè)
Alt+N
CV Constrained U Move (Îãðàíè÷åíèå ñäâèãà óïðàâëÿþùèõ òî÷åê âäîëü îñè U)
Alt+U
CV Constrained V Move (Îãðàíè÷åíèå ñäâèãà óïðàâëÿþùèõ òî÷åê âäîëü îñè V)
Alt+V
Display Curves (Ïîêàçûâàòü êðèâûå)
Shift+Ctrl+C
Display Lattices (Ïîêàçûâàòü ðåøåòêè äåôîðìàöèè)
Ctrl+L
Display Shaded Lattice (Ïîêàçûâàòü òîíèðîâàííóþ ðåøåòêó äåôîðìàöèè)
Alt+L
Display Surfaces (Ïîêàçûâàòü ïîâåðõíîñòè)
Shift+Ctrl+S
Display Trims (Ïîêàçûâàòü îáðåçêè)
Shift+Ctrl+T
Lock 2D Selection (Çàáëîêèðîâàòü 2D-âûäåëåíèå)
Ïðîáåë
Switch to Curve CV Level (Ïåðåéòè íà óðîâåíü óïðàâëÿþùèõ âåðøèí êðèâîé)
Alt+Shift+Z
Switch to Curve Level (Ïåðåéòè íà óðîâåíü êðèâîé)
Alt+Shift+C
Switch to Point Level (Ïåðåéòè íà óðîâåíü òî÷åê êðèâîé)
Alt+Shift+P
Switch to Surface Level (Ïåðåéòè íà óðîâåíü ïîâåðõíîñòè)
Alt+Shift+S
Switch to Top Level (Ïåðåéòè íà âåðõíèé óðîâåíü)
Alt+Shift+T
735
Приложение 3. Содержимое DVD, прилагаемого к книге Для более полного восприятия книги к ней прилагается DVD. На нем находятся следующие папки.
Examples — файлы сцен упражнений, описываемых в книге. Вы можете обра щаться к данным файлам, если чтото непонятно из описания в издании. Обратите внимание, что файлы сцен могут быть открыты только в програм ме 3ds Max не ниже версии 2008. Кроме того, в данной папке располагаются некоторые файлы, необходимые для выполнения упражнений.
Images — цветные иллюстрации в формате JPG с номерами, соответствующи ми номерам иллюстраций в книге. Они помогут вам более полно представить то, что должно происходить в процессе выполнения упражнений.
Video — анимационные ролики, иллюстрирующие результат выполнения неко торых упражнений, описанных в издании. Все они закодированы при помощи кодека Windows Media Video (WMV), и для их просмотра вам достаточно иметь стандартный Ïðîèãðûâàòåëü Windows Media, обновленный до девятой версии. В случае использования других проигрывателей видеофайлов обратитесь на сайт фирмы Microsoft для загрузки бесплатного декодера.
В данные папки вложены папки с номерами, соответствующими номерам глав книги. Кроме того, в папке Programs вы найдете пробные 32 и 64битные версии программы 3ds Max 2008, с которыми можете работать в течение 30 дней без ограничений.