Новые возможности в Maya 6
Анимация
АнимацияНесмотря на то, что Maya позволяет создать потрясающе реалистичные статичные изображения, большинство пользователей тем не менее предпочитает работать с четвертым измерением — временем. Другими словами, большая часть проектов, реализуемых с помощью Maya, представляет собой анимации, то есть действия, меняющиеся во времени. В основе любой анимации лежит следующий принцип: набор быстро сменяющих друг друга изображений дает ощущение непрерывного движения. Соответственно, на экране создаются сцены с объектами, состояние которых определенным образом меняется во времени. Это может быть изменение их положения в пространстве, изменение цвета или формы или другое подобное поведение. При этом компьютерная анимация, как и традиционное кино, состоит из набора статичных кадров. Для определения состояния объектов во времени используется шкала с номерами кадров.
Анимационные форматы
Анимационные форматыАнимацию можно сохранять не только в виде набора статичных изображений, но и в виде фильмов в формате AVI или QuickTime. Получаемые в результате файлы имеют большой объем и содержат все изображения, необходимые для воспроизведения анимации. Они допускают сжатие с целью уменьшения размеров файла, но, как и в случае со статичными изображениями, этот процесс сопровождается ухудшением качества.
Существует возможность сохранять результаты визуализации сцен Maya в формате AVI без сжатия, что избавляет вас от необходимости возиться с большим набором статичных изображений. На первый взгляд это выглядит весьма привлекательно, но вряд ли стоит визуализировать полученные результаты непосредственно в файл формата AVI. В конце концов, набор статичных изображений легко преобразуется в данный формат с помощью приложений After Effect, Premiere или даже QuickTime Pro.
Причина крайне проста. В мире нет совершенства, это касается и визуализации сцен. Например, никто не застрахован от зависания компьютера. И в результате визуализацию файла AVI придется начинать заново, в то время как набор статичных изображений можно визуализировать с прерванного места. Кроме того, у вас появляется возможность менять порядок кадров и редактировать такой параметр, как цветовой тон или насыщенность отдельных кадров.
Цвет на экране компьютера
Цвет на экране компьютераКомпьютер представляет всю информацию, в том числе и цветовую, в виде набора числовых значений, составленных из двоичного кода. В 24-разрядных цветных изображениях каждый пиксел представлен в виде трех 8-разрядных значений, соответствующих каналам красного, зеленого и синего цветов. 8-разрядное двоичное число лежит в диапазоне от 0 до 255, соответственно, каждый из основных цветов может иметь 256 оттенков. Благодаря наличию трех каналов мы получаем 256 х 256 х 256 = 16,7 млн возможных комбинаций основных цветов.
Впрочем, цвет может быть задан и с помощью каналов цветового тона, насыщенности и интенсивности (режим HSV — Hue, Saturation, Value). В данном случае каждый канал также имеет значение от 0 до 255 (мы рассматриваем 24-разрядные изображения), определяющее окончательный цвет. Параметр Hue (Цветовой тон) определяет оттенок цвета, параметр Saturation (Насыщенность) указывает чистоту этого цвета в сравнении с оттенками серого, а параметр Value (Интенсивность) задает яркость цвета.
Режимы RGB и HSV предоставляют различные способы управления цветом, и вы можете выбрать наиболее предпочтительный. Цвета всех компонентов Maya, от карт текстуры до лучей источников света, определяются значениями RGB и HSV. В любой момент вы можете перейти от одного режима к другому.
Цвет
ЦветРазницу в частоте световых волн мы воспринимаем как различные цвета. Широкий диапазон наблюдаемых оттенков является результатом смешивания трех основных цветов — красного, зеленого и синего. Существуют два способа смешивания — субтрактивный и аддитивный. Распределенные на равные расстояния вдоль окружности основные цвета образуют цветовой круг. Между ними располагаются дополнительные цвета, представляющие собой смесь основных в различных пропорциях.
Эти сведения помогут вам лучше понять цветовую схему, принятую в компьютерной графике, и откроют дополнительные возможности оформления сцен.
Цветовая схема CMYK
Цветовая схема CMYKКак уже упоминалось, цветовая схема CMYK используется при печати. Струйные принтеры создают цветные отпечатки, смешивая на бумаге нужные количества голубого, пурпурного, желтого и черного цветов.
Программное обеспечение, которым вы пользуетесь, при отправке на печать автоматически преобразует RGB-изображение, наблюдаемое на экране компьютера, в цветовую схему CMYK. Для профессиональной печати используются специальные мониторы, позволяющие предварительно просматривать изображения в CMYK-режиме. К счастью, беспокоиться о подобных вещах приходится только профессионалам, так как преобразование одной цветовой схемы в другую, осуществляемое программным обеспечением, дает вполне приемлемое для любительских отпечатков качество.
Дополнительные элементы
Дополнительные элементыДля успешного производства анимации требуются изображения и других элементов сцены. Например, персонажи обычно рисуются в трех нейтральных позах — вид спереди, вид сбоку и разворот на три четверти. Для наглядности даже можно слепить фигуру из глины или пластилина. Имеет смысл подготовить также цветные рисунки персонажей, наборов объектов и реквизита, так как это позволяет лучше понять структуру назначаемых впоследствии объектам материалов, а в некоторых случаях — и освещение. Наборы объектов и реквизит обычно определяются при чтении сценария, и их наброски делаются на отдельных листах бумаги. Чем лучшее визуальное представление будет создано об элементах сцены на подготовительной стадии, тем проще вам будет работать в дальнейшем.
Форма пространство и композиция
Форма, пространство и композицияПространство представляет собой место для построения кадра. Вне зависимости от последующей судьбы этого кадра — он может быть показан как в Интернете, так и на большом экране — при его построении вы обязаны применять основные принципы дизайна. Многое зависит от того, как вы распределите формы и поделите пространство.
Формой (form) в дизайне называется любой видимый объект. Он имеет определенные контуры, цвет и текстуру, выделяющие его на фоне остальных объектов и декораций. Практически любой созданный и анимированный вами объект превращается в форму после визуализации сцены. Распределение объектов сцены в пространстве называется композицией. Пространство перед визуализируемыми объектами и за ними представляет собой соответственно передний и задний планы сцены. Скопления объектов формируют положительное пространство (positive space), а места их отсутствия — отрицательное пространство (negative space).
Для зрителя положительное пространство как бы выступает над поверхностью кадра, в то время как отрицательное отходит на задний план. Игра с расположением этих пространств значительно влияет на динамику кадра. Добавив сюда элемент движения, вы получите замечательную возможность управления холстом.
Если поместить все объекты в центр кадра и равномерно распределить их в пространстве, изображение станет скучным и непривлекательным для зрителя. Композицию сцены нужно выстраивать таким образом, чтобы основные объекты занимали наиболее интересную область кадра, в которой они взаимодействуют с отрицательным пространством. В результате взгляд будет перемещаться по кадру, и композиция приобретет динамику даже при отсутствии анимации.
В упражнениях главы 10 вам предстоит создать динамический кадр с помощью источников света и теней.
Форматы файлов
Форматы файловСуществуют различные форматы файлов. Наиболее популярным среди них является JPEG. Фотографии в этом формате можно повсеместно встретить в Интернете.
Основным различием между форматами файлов является способ сохранения изображения. В некоторых случаях происходит сжатие файла с целью уменьшения его размера. Однако слишком сильное сжатие, как правило, сопровождается ухудшением качества изображения.
Часто результаты визуализации сцен Maya сохраняют в форматах TIFF, SGI, Maya IFF и Targa. Все эти форматы отличает 24-разрядное кодирование цвета и отсутствие или низкая степень сжатия (так называемое сжатие без потерь). Для просмотра анимации, визуализированной в виде набора файлов в формате TIFF, достаточно воспользоваться таким приложением, как, например, FCheck, или преобразовать их в один из анимационных форматов.
Формат итогового изображения зависит, кроме всего прочего, от его назначения. Например, если полученные файлы будут подвергаться монтажу, их формат должен допускать импорт в соответствующее приложение. Лучше всего работать с файлами формата TIFF, так как он является наиболее универсальным и совместимым, а кроме того, использует сжатие без потерь.
Импульс
ИмпульсВы должны понимать, что означает термин импульс. Импульсом обладает любой движущийся объект. Его значение равно произведению массы объекта на его скорость. Чем тяжелее объект или чем больше его скорость, тем больше будет его импульс.
Например, маленькая пуля оказывает значительное влияние на кусок дерева. Все дело в том, что ее абсолютная скорость сильно увеличивает значение импульса. Аналогично, медленно движущийся грузовик способен искорежить ваш автомобиль, потому что он имеет большую массу, а следовательно, и импульс.
При столкновении одного объекта с другим происходит передача импульса. Это означает, что в результате такого столкновения неподвижный объект может прийти в движение. Этот эффект будет подробно рассмотрен в главе 8 при моделировании движения топора.
Кадры ключевые кадры и промежуточные кадры
Кадры, ключевые кадры и промежуточные кадрыВ компьютерной графике кадром (frame) называется изображение, полученное в результате визуализации. Кроме того, кадр является единицей времени, продолжительность которой зависит от скорости воспроизведения анимации. Например, при частоте 24 кадра/с один кадр продолжается 1/24 секунды.
Ключевыми (keyframes) называются кадры, для которых аниматор фиксирует позу персонажа или положение анимируемого объекта. Другими словами, в ключевых кадрах задаются значения анимируемых параметров. При переходе объекта от одного ключевого кадра к другому и возникает анимация. Подробнее вы познакомитесь с этим процессом в упражнениях главы 9.
В компьютерной графике ключ анимации может быть создан практически для любого атрибута объекта — его цвета, положения в пространстве, размера и т. п. Положение объекта в промежуточных кадрах (in-between frames) приложение рассчитывает автоматически. В одном кадре может находиться несколько ключей анимации. Пример последовательности ключевых кадров показан на Рисунок 1.6.
Компьютерная графика
Компьютерная графикаТермин компьютерная графика относится к любому изображению или набору изображений, полученных с помощью компьютера. Впрочем, данное словосочетание в этой книге будем применять в основном к трехмерным сценам, оставляя за кадром двумерные рисунки, получаемые в таких графических редакторах, как Photoshop или Paint. Большинство программ, предназначенных для производства двумерной графики, создают растровые изображения, то есть итоговый рисунок состоит из маленьких квадратиков, называемых пикселами. Приложения же для производства SD-графики создают векторные изображения, представляющие собой набор математических кривых. Это более мощный и действенный метод. Более подробную информацию о векторных и растровых изображениях вы получите чуть позднее.
Для пользователей, знакомых с такими приложениями, как Adobe Illustrator или Macromedia Flash, не является новостью тот факт, что эти программы также создают векторные изображения. В отличие от них, Maya и другие приложения для работы с SD-графикой умеют вычислять третье измерение, то есть добавлять сцене глубину. Объекты больше не рисуются на плоскости — они распределяются в пространстве. Это крайне усложняет работу художников и в корне отличается от того, с чем приходится сталкиваться при создании двумерных изображений.
Контрастность
КонтрастностьКонтрастность определяет, насколько объекты переднего плана выступают на фоне декораций. Чем меньше разница в цвете и освещенности, тем более плоским выглядит изображение (Рисунок 1.5). Четкие тени и яркие блики подчеркивают глубину рисунка и помогают отделить объекты от фона. Анимация контрастности помогает регулировать глубину кадра.
Моделирование архитектурных сооружений
Моделирование архитектурных сооружений и элементов внешней средыМоделирование архитектурных сооружений и элементов внешней среды начинается с рисунков, демонстрирующих фоновые детали и дизайн будущих строений. Обычно этот процесс включает в себя создание зданий и их внутренних интерьеров, а также различных ландшафтов и необходимых для них по сценарию деталей, например скамеек, фонарный столбов и т. п.
Не имеет смысла создавать детализированный ландшафт, если он будет показываться только общим планом. Чем больше геометрии в сцене, тем медленней она будет обсчитываться и тем больше времени займет процесс визуализации. Как уже упоминалось, во многих случаях мелкие детали на поверхности объекта разумнее имитировать с помощью текстурных карт. В компьютерных играх таким же способом часто имитируется окружающая среда. Впрочем, во всех областях компьютерной графики действует эмпирическое правило: используйте те методы, которые реально работают.
Примечание
ПРИМЕЧАНИЕ
Все элементы сцены сохраняются в виде векторных изображений, поэтому термин «геометрия» относится ко всем созданным вами поверхностям и моделям.
Моделирование персонажей
Моделирование персонажейТермин моделирование обычно подразумевает создание одушевленных персонажей, например животных, людей, инопланетян и т. п. В процессе моделирования всегда нужно помнить, что эти объекты впоследствии будут анимированы.
Большинство персонажей строятся или на основе сшитых друг с другом кусков поверхностей, или же растяжением единого объекта и «выдавливанием» его участков. Так как при анимации модели персонажей тем или иным способом деформируются, необходимо, чтобы они были бесшовными.
Другими словами, моделировать персонажей необходимо с учетом процесса их будущей анимации. Детализация персонажа также должна соответствовать его месту в сцене. Часто приходится создавать несколько вариантов одного и того же персонажа для различных моментов анимации. Это увеличивает эффективность сцены и облегчает работу с ней.
Моделирование реквизита
Моделирование реквизитаСоздание всех прочих объектов сцены относится к моделированию реквизита. В терминах, принятых в театре и киноиндустрии, реквизитом (prop) называется объект, используемый персонажем. Все остальные объекты относятся к декорациям и элементам интерьера. Например, реквизитом называется кошелек, который персонаж носит с собой, поводок анимированной собаки или автомобиль, за рулем которого находится главный герой повествования. Если автомобиль или кошелек никак не связаны с персонажем, они считаются декорациями.
Моделирование
МоделированиеМоделированию посвящены главы 4-6. Обычно данный процесс является первым шагом в создании анимации. Пространство сцены требуется заполнить различными объектами. В некоторых случаях это занимает основное время работы над проектом.
Существуют различные техники моделирования, и каждая из них может стать основой для отдельной книги. Выбор конкретного метода не в последнюю очередь зависит от предпочтений пользователя и технологического процесса. С достоинствами и недостатками моделирования на основе неоднородных рациональных сплайнов Безье вы познакомитесь в главе 4. О полигональном моделировании поговорим в главе 5. Шестая же глава посвящена появившемуся относительно недавно методу моделирования на основе поверхностей с иерархическим разбиением. Он представляет собой комбинацию первых двух методов.
Наличие подробных раскадровок обычно помогает выбрать метод моделирования объектов. Дополнительным критерием является место объекта в сцене. Никогда не тратьте на моделирование больше времени, чем это реально требуется. Скажем, не имеет смысла прорабатывать детали объекта, если он будет показан только издали. Вы только напрасно потратите время и замедлите процесс визуализации. Если скамейка в парке является лишь небольшим элементом общей сцены, не нужно украшать ее многочисленными деталями и подробно прорисовывать структуру поверхности. Кроме того, в большинстве случаев детали можно сымитировать назначением соответствующей текстурной карты. Однако как только скамейка становится центральным элементом сцены, требования к ее детализации тут же возрастают. Более подробно об этом аспекте моделирования мы поговорим в главе 4. Впрочем, по мере накопления опыта вы научитесь мгновенно определять необходимую степень детализации для каждого из объектов сцены. Начинающим же пользователям можно посоветовать обращать на детали как можно больше внимания. Отслеживание процесса их создания позволяет получить 70 % сведений о моделировании, что позволит вам в будущем работать быстро и технично.
Монтаж
МонтажСцены можно визуализировать в виде отдельных слоев. При этом возникает задача сборки воедино полученного результата. Например, представим себе сцену, в которой взаимодействуют многочисленные персонажи. Существует возможность визуализировать каждого из персонажей отдельно от окружающего пространства. Полученные результаты соединяются в общую сцену именно на стадии монтажа.
Такие программы для монтажа, как Shake или After Effects, позволяют заодно дополнительно редактировать цвета объектов, временные интервалы, в течение которых происходит действие, и прочие элементы. Монтаж оказывает огромное влияние на окончательный вид сцены. Именно поэтому он считается неотъемлемой частью процесса создания компьютерной графики.
Начало и конец движения
Начало и конец движенияОстановка движения никогда не происходит мгновенно. Тела сначала замедляют свое движение, а только потом приходят в состояние покоя.
Двигаться объекты также начинают постепенно. Пока тело не достигнет нужной скорости, оно движется с ускорением. Этот принцип иллюстрируется в главе 8 на примере прыгающего мячика.
Наложение звука
Наложение звукаВ компьютерной графике важную роль играет звуковое сопровождение. Зрителю нравится, когда видеоряд связан со звуком. Звуковая дорожка значительно улучшает восприятие даже самой простой анимации, делая ее более реальной и позволяя создать нужное настроение.
Аудиоэффекты, например звук шагов, должны совпадать с происходящим на экране. Музыкальное сопровождение также подбирается в соответствии с действием. В данном случае процедура наложения звуковой дорожки в кино и в компьютерной графике совпадает — за одним исключением.
Если для компьютерной анимации требуется диалог, его нужно записать и отредактировать до начала работы над проектом. То есть эта работа выполняется на стадии подготовки к производству. Дело в том, что аниматор должен слышать диалог, чтобы смоделировать положение губ персонажей. Часто бывает и так, что диалог или музыкальное сопровождение приводят к появлению у персонажа дополнительной жестикуляции или перемещений.
Насыщенность цвета
Насыщенность цветаФайлы изображений сохраняют цвет каждого пиксела в виде трех значений, соответствующих красному, зеленому и синему цветам. Тип изображения зависит от того, сколько места выделено под каждый пиксел. Вот варианты глубины цвета, доступные в Maya:
Назначение текстур
Назначение текстурПосле моделирования обычно следует стадия назначения материалов и карт текстуры. Изначально всем объектам в Maya назначается стандартный материал серого цвета, позволяющий увидеть объект после освещения и визуализации сцены.
После освещения и анимации вид текстур может измениться, поэтому их финальное редактирование обычно выполняется в последнюю очередь. Вы поступаете подобно художнику, который сначала делает грубый набросок, а потом добавляет к нему детали. Ведь всегда существует возможность вернуться к редактированию любого элемента сцены и изменить его в соответствии с необходимостью.
Более подробную информацию о материалах вы получите в главе 7.
Ньютоновские законы движения
Ньютоновские законы движенияСуществуют три основных закона движения, сформулированные Исааком Ньютоном. Их должен знать любой, кто собирается заняться созданием анимации:
1. Тело остается в состоянии покоя или равномерного прямолинейного движения, если на него не действуют внешние силы. Это явление называется инерцией. Дополнительные сведения по данной теме вы найдете в главах 8 и 9.
2. Ускорение, приобретаемое телом в инерциальной системе отсчета, прямо пропорционально действующей на него силе и обратно пропорционально его массе. Другими словами, чем больше масса объекта, тем большее усилие потребуется для изменения его скорости.
3. Тела взаимодействуют с силами, равными по модулю и противоположными по направлению. Например, когда вы давите на кирпичную стенку, стенка с такой же силой давит на вашу руку. Именно поэтому рука не проваливается сквозь стену.
Основные понятия из области анимации
Основные понятия из области анимацииКак уже говорилось в начале этой главы, анимация представляет собой изменение состояния элементов сцены во времени. Существуют различные способы анимации объектов, и в этом разделе мы дадим обзор некоторых из них.
Основные понятия из области кино
Основные понятия из области киноВам пригодятся не только сведения по композиции кадров, но и информация о приемах, принятых в традиционном кино.
Основные понятия из области компьютерной графики
Основные понятия из области компьютерной графикиЗнание терминологии из области компьютерной графики позволят лучше понять принципы работы в Maya. Для начала поговорим о различиях между растровой и векторной графикой.
Основные понятия из области традиционного искусства
Основные понятия из области традиционного искусстваКомпозицией называется размещение объектов и сопутствующих им элементов в пределах кадра. Динамичный кадр не только привлекает внимание, но и несет определенную информацию, и даже интригует, что само по себе является формой искусства.
Без сомнения, вам пригодится знание основ дизайна, поэтому имеет смысл прочитать дополнительные пособия по данной теме. Понимание принципов компоновки и оформления сцен позволит улучшить их внешний вид и облегчит процесс их наладки. Перечислим понятия, с которыми вам нужно познакомиться поближе.
Основные понятия компьютерной
Основные понятия компьютерной графики и традиционного искусстваПонятие трехмерная анимация включает в себя множество смежных дисциплин. Чтобы научиться работать в Maya, необходимо иметь представление не только о SD-графике, но и о дизайне, кинематографии, традиционной анимации.
Освещение
ОсвещениеОсвещение является важной частью компьютерной графики. На этой стадии вы создаете в сцене виртуальные источники света. При этом вид объектов может сильно измениться. Освещение влияет на достоверность моделей и текстур и подчеркивает настроение сцены.
Начальная настройка освещения допустима уже на стадии назначения материалов, но серьезная работа над ним проводится только после приведения сцены к окончательному виду.
Тип и число используемых источников света сильно влияют не только на вид сцены, но и на продолжительность ее визуализации. В данном случае крайне важно соблюдать баланс между затрачиваемыми ресурсами и получаемым результатом. Редактирование сцены на этой стадии представляет собой особое искусство.
По мере роста опыта в области освещения сцен вы заметите, что эта стадия влияет на все этапы создания компьютерной графики. Вы начнете моделировать объекты с учетом их последующего освещения. По-другому будет происходить процесс назначения материалов. Претерпевают изменения даже анимация объектов и их расстановка на сцене. Все это позволит полнее использовать преимущества освещения.
Как вы узнаете в главе 10, виртуальные источники света отличаются от реальных наличием ряда специфических свойств.
Планирование производства
Планирование производстваПонимание принципов, используемых при производстве фильмов, облегчает процесс планирования, создания и редактирования ваших собственных проектов. Большинство фильмов разбито на действия, представляющие собой последовательность сцен, которые, в свою очередь, разбиты на отдельные кадры.
Фильмы, в которых главный герой борется с отрицательным персонажем, обычно разделены на три действия. Сначала зритель знакомится с главными персонажами и узнает, в чем состоит их конфликт. Затем следует основное действие, в процессе которого главный герой пытается победить отрицательного персонажа. В заключение конфликт разрешается, и повествование завершается.
Действия разбиваются на эпизоды, то есть на группы последовательных сцен, связанных друг с другом общей сюжетной линией.
Сцена представляет собой часть фильма, в которой события происходят с определенными персонажами в определенном месте или в определенное время. Фильм делится на набор сцен для удобства съемки. Не путайте сцену фильма со сценой в компьютерной графике. В последнем случае термин относится к элементам файла, из которых состоит создаваемый вами кадр.
Сцены, в свою очередь, делятся на наборы кадров, которые отличаются друг от друга ориентацией камеры в момент съемки или кадрированием. Разбиение на кадры делает сцену менее монотонной, показывая ее с разных ракурсов. Кадры отделены друг от друга перебивками.
Кадр определяется положением камеры. При изменении ракурса происходит переход к следующему кадру.
Подобную схему имеет смысл использовать и при производстве компьютерной графики. Это облегчает процесс работы и делает результат более впечатляющим.
Подготовительная работа
Подготовительная работаПод подготовительной работой в компьютерной графике подразумеваются сбор всех опорных материалов, тестирование движения, создание плана сцены, наброски будущих моделей и прочие действия, максимально упрощающие процесс самой анимации.
Так как воплощать свое видение будущей анимации художнику предстоит на экране компьютера, важно написать лаконичный план будущей работы. Чем больше времени в этом случае затрачивается на планирование, тем лучше.
В реальных цифровых студиях подготовительная работа является частью любого проекта. При выполнении упражнений данной книги вам не придется готовить все материалы с нуля, так как все необходимое можно найти на прилагаемом компакт-диске. Однако не ленитесь собирать дополнительную информацию об объектах, которые вам предстоит моделировать.
Подведем итоги
Подведем итогиИтак, теперь вы вооружены основными сведениями о компьютерной графике и трехмерном пространстве. Пора перейти к изучению интерфейса Maya. Это очень мощная и сложная программа. Чем лучше вы понимаете принципы традиционного искусства, тем лучше будут результаты вашей работы.
Еще раз следует подчеркнуть, что перед созданием объектов и визуализацией полученного результата следует долго и тщательно обдумать свои действия. На самом деле по мере приобретения опыта многие вещи будут получаться как бы сами собой. Знакомясь с увлекательным процессом создания анимации, будьте внимательны и терпеливы и никогда не упускайте шанс получить новую информацию.
| Назад |
Последовательность действий при производстве анимации
Последовательность действий при производстве анимацииОпределенная последовательность выполняемых при производстве анимации действий обусловлена природой компьютерной графики и удобством построения сцен. Процесс практически всегда начинается с моделирования объектов. Затем им назначаются материалы и выполняется их анимация (или наоборот). Следующим этапом является освещение полученной сцены и ее визуализация. Разумеется, описанные действия далеко не линейны. Аниматору приходится часто возвращаться к более ранним стадиям при редактировании моделей, источников света и материалов. Тем не менее темы глав 4-12 выбраны в соответствии с общей последовательностью выполняемых при производстве анимации действий.
Последующая обработка
Последующая обработкаПосле создания всех персонажей и объектов сцены и их анимации наступает стадия последующей обработки. В компьютерной графике и в традиционном кино эта стадия предполагает практически аналогичный набор действий. Именно в этот момент отдельные элементы фильма собираются воедино и результат вашего труда принимает окончательную форму.
Предвосхищение и завершение
Предвосхищение и завершениеПри моделировании движения необходимо учитывать силу и момент инерции. Например, накидка на прыгающем персонаже будет двигаться еще некоторое время после его остановки. После приземления гимнаст вынужден слегка согнуть колени и наклониться, чтобы стабилизировать свое положение. Остаточное движение, наблюдающееся после окончания главного, называется завершением (follow-through).
Точно так же следует моделировать небольшие движения персонажа до начала его основного перемещения. Эта техника называется предвосхищением (anticipation). Более подробно с этими понятиями вы познакомитесь в главе 8 при моделировании движения топора.
При низкой контрастности объекты
1.5. При низкой контрастности объекты теряются на фоне декораций, но стоит добавить к изображению тени и зеркальные блики, как объекты выступают на передний план
Как вы убедитесь, прочитав главу 10, освещение играет важную роль в создании динамических контрастов в кадре.
Производство
ПроизводствоПроизводство анимации начинается с моделирования объектов, указанных на раскадровках и дополнительных рисунках. Готовым персонажам, наборам объектов и реквизиту назначаются материалы, затем в соответствии с раскадровками происходит их анимация. Готовые последовательности кадров визуализируются с низким качеством, чтобы составить общее представление о том, как выглядит анимация, и обнаружить возможные ошибки.
Производство компьютерной графики состоит также из определенной последовательности действий, обусловленной его собственными нуждами. Более подробно на эту тему мы поговорим в следующем разделе. Но вкратце процесс производства можно описать как последовательное создание объектов сцены, их освещение и анимацию. Большинство техник, с которыми вы познакомитесь в этой книге, реализуются на стадии производства.
Раскадровки
РаскадровкиРаскадровки являются логическим продолжением сценария. Сценарий разбивается на отдельные сцены, а сцены — на отдельные кадры. Затем создается серия набросков, демонстрирующих ключевые моменты анимации, и эти наброски раскладываются по порядку, чтобы дать визуальное представление о рассказываемой истории. Это помогает при выборе ракурсов камеры, положения персонажей, освещения и настроения сцены и т. п. Даже обычные фигурки из бумаги, приколотые к листу ватмана, помогают составить представление о будущей анимации.
Растяжения и сжатия
Растяжения и сжатияПерсонаж реагирует на силу тяжести, перемещение и силу инерции, в буквальном смысле слова растягиваясь и сжимаясь в процессе движения. Например, в мультфильме персонажи части слегка сжимаются перед тем, как подпрыгнуть вверх, немного растягиваются, паря в воздухе, а затем опять сжимаются при ударе об опорную поверхность. В результате имитируется реакция на силу тяжести.
Растровое изображение слева— в
1.1. Растровое изображение: слева— в натуральную величину; справа — увеличенное в несколько раз
В свете этих ограничений может возникнуть вопрос: зачем использовать растровые изображения? Для ответа на него достаточно вспомнить, что изображения на экране телевизора или компьютера являются именно растровыми. Термином «растр» называется горизонтальная линия пикселов на экране. Картинка на экране формируется из красных, зеленых и синих светящихся точек. Соответственно, любое генерируемое компьютером изображение должно быть изначально растровым или преобразовываться к этому формату.
Растровые изображения
Растровые изображенияВ большинстве случаев изображения, получаемые с помощью компьютера, являются растровыми. Они представляют собой набор цветных пикселов на экране или набор цветных точек на листе бумаге, их можно сравнить с мозаикой. Все созданные в Maya сцены в итоге будут преобразованы в растровые изображения, несмотря на то, что изначально они относятся к векторной графике.
Программы для работы с растровыми изображениями, например Painter или Photoshop, позволяют редактировать такие параметры, как цвет, размер и положение всех частей рисунка. Вы можете рисовать как на отсканированной фотографии, так и на виртуальном холсте. Эти программы дают возможность непосредственно работать с пикселами, меняя их вид и формируя изображение. Например, можно сфотографировать свой дом и, отсканировав снимок, «покрасить» его стены в красный цвет с помощью Photoshop. Это поможет решить, стоит ли идти в магазин за красной краской или нет.
Разрешение характеризует детализацию снимка; определяется числом пикселов на единицу длины по вертикали и горизонтали. Обычно оно измеряется в пикселах на дюйм. Так как основой растровых изображений является сетка фиксированного размера, увеличение их размера отрицательно влияет на качество. Если поднести такое изображение близко к глазам или сильно увеличить, вы увидите составляющие его пикселы (Рисунок 1.1). Увеличить растровое изображение без потери качества можно только одновременно с увеличением его разрешения, но при этом увеличивается и размер выходного файла.
Равновесие и симметрия
Равновесие и симметрияРавновесие кадра предполагает равное количество положительного пространства с каждой стороны. Утяжеление одной из сторон увеличивает динамику кадра.
Симметричное распределение объектов создает определенное статическое равновесие, в то время как отсутствие симметрии подчеркивает наличие движения.
В живописи, фотографии и кино принято делить кадр на три части по вертикали или горизонтали и размещать изображение в одной из полученных третей. К примеру, объект, помещенный в нижнюю треть кадра, будет выглядеть маленьким и незначительным. Наличие объекта в верхней трети кадра заставляет зрителя поднять глаза вверх, что визуально увеличивает масштаб и подчеркивает важность выделенного элемента картины. Рисунок 1.4 иллюстрирует разницу между статичным симметричным кадром и композицией, полученной делением на трети.
Разрешение пропорции и частота кадров
Разрешение, пропорции и частота кадровПод термином разрешение (resolution) подразумевается размер изображения, выраженный в количестве пикселов по горизонтали и вертикали. Обычно его значение записывается в виде 640 х 480. Чем выше разрешение, тем больше детализация изображения.
Разрешение итогового изображения обычно выбирается в зависимости от дальнейшего назначения анимации (табл. 1.1).
Таблица 1.1. Стандартные разрешения
Формат
Таблица 1.2. Стандарты пропорций изображения
Название
Воспроизведение анимации, созданной с частотой 24 кадра/с, на частоте 30 кадров/с приводит к замедлению движения объектов. Кроме того, потребуется повторение отдельных кадров для заполнения пропусков, или же анимадия закончится слишком рано. Воспроизведение анимации, созданной с частотой 30 кадров/с, на частоте 24 кадра/с дает обратный эффект. Движение ускоряется, а некоторые кадры приходится пропускать, или же анимация заканчивается позже, чем нужно.
Редактирование
РедактированиеРезультаты визуализации собираются воедино и редактируются в соответствии со сценарием и раскадровками. Некоторые сцены вырезаются или перемещаются в другое место. Этот процесс практически аналогичен редактированию киноматериалов. Единственным различием является количество истраченной пленки.
При создании традиционного кино снимается намного больше материалов, чем это реально нужно. Это позволяет гарантировать корректную съемку всех сцен и оставляет простор для творчества на стадии монтажа. Редактор и режиссер просматривают все сцены и выбирают из них лучшие. В итоговую картину попадает лишь малая часть отснятого материала.
Так как создание компьютерной графики требует намного больших временных и денежных затрат, отбор сцен происходит еще на стадии раскадровки. Редактирование осуществляется непосредственно в процессе производства, а сцены моделируются и анимируются строго в соответствии со сценарием. В результате процесс итогового редактирования состоит в основном в выборе правильного порядка сцен.
Сценарий
СценарийЧтобы рассказать историю как средствами компьютерной графики, так и с помощью традиционного кино, ее требуется сначала написать на бумаге. Сценарий только выиграет от наличия диалогов. Но даже абстрактной анимации не обойтись без простых пояснений по поводу временных рамок происходящего или оформления сцены. Сценарий, по сути, представляет собой исходный проект будущего клипа и демонстрирует намерения его создателей.
Симметричная картинка выглядит
1.4. Симметричная картинка выглядит статичной, в то время как разбив кадр на три части и поместив объект в одну из них, мы создадим впечатление внутренней динамики
Солнце располагается в начале
1.3. Солнце располагается в начале координат, а планеты движутся по орбитам и одновременно вращаются вокруг своей оси
Создание трехмерных сцен
Создание трехмерных сценПроцесс создания трехмерной графики состоит из моделирования объектов, назначения им материалов, освещения сцены и визуализации изображения, видимого через виртуальную камеру. Другими словами, вам требуется объяснить компьютеру, где находятся объекты, как они выглядят, как освещены и какая камера снимает сцену.
Вместо холста, на котором вы рисуете изображения, вам предоставлено трехмерное пространство — открытая область, предназначенная для определения объектов, текстур, освещения. Ваши практические действия напоминают постановку сцен при обычной фото- или киносъемке. Компьютерная графика действительно имеет много общего с этими областями.
Фотографы размещают объекты в кадре определенным образом, затем освещают снимаемую область, чтобы добиться нужного настроения, а также выбирают для фиксации сцены определенные пленку и объектив. Выбор камеры, пленки и объектива зависит от того, какой результат требуется получить. Остается снять сцену, проявить негатив, напечатать его на бумаге — и фото готово.
После создания в трехмерном пространстве моделей, источников света и камер компьютер визуализирует полученную сцену, превращая ее в двумерное изображение. Так рождается компьютерная графика.
Визуализацией называется процесс создания проекции изображения сцены с заданной точки наблюдения с учетом падающего на объекты света, назначенных этим объектам материалов, а также цвета или изображения фона и эффектов внешней среды. Вместо конверта с глянцевыми фотографиями 10 х 15 вы получаете набор двумерных изображений или фильм в формате QuickTime или AVI, сохраненный на жесткий диск вашего компьютера.
Вот так в двух словах выглядит создание компьютерной графики. Этот процесс требует аккуратного планирования и терпения.
Стадии производства
Стадии производстваПроизводство компьютерной анимации, как и производство традиционных фильмов, можно разделить на три основные стадии: подготовка, собственно работа над фильмом и компоновка полученного результата. В киноиндустрии подготовкой считается работа по написанию сценария и раскадровок, созданию костюмов и декораций, подбору актеров и съемочной группы и установке необходимого оборудования. Затем наступает стадия производства, то есть собственно съемки сцен в определенном порядке. В заключение требуется соединить друг с другом отдельные сцены, добавить музыку, звуковые эффекты и диалоги. На этой же стадии происходит включение спецэффектов. В фильмах с использованием компьютерной графики эффекты добавляются в последнюю очередь.
Хотя выполнение отдельных стадий при производстве традиционного кино и компьютерной анимации имеет свои характерные особенности, существуют и общие моменты, позволяющие лучше понять, чем же вам в итоге придется заниматься.
Субтрактивные и аддитивные цвета
Субтрактивные и аддитивные цветаСубтрактивная схема смешивания цветов используется в случаях, когда получаемый результат просматривается при внешнем освещении. Она основана на способе создания цветов при отражении света. Световые лучи, отражаясь от окрашенной поверхности, приобретают соответствующий оттенок. Определенные материалы и текстуры поверхности при отражении от них света поглощают некоторые цвета, позволяя выходить наружу только свету с определенной длиной волны. В результате наложения друг на друга различных цветов получается черный цвет, так как все лучи окажутся поглощенными.
Основными цветами в субтрактивной схеме являются красный, желтый и синий. Именно с таким цветовым кругом знакомятся люди при изучении традиционных изобразительных искусств. Однако при печати изображений используется цветовая схема CMYK (Cyan, Magenta, Yellow и Black — голубой, пурпурный, желтый и черный). Черный цвет в данном случае используется для регулировки контрастности.
По аддитивной схеме смешиваются световые пятна. Частота одного луча света добавляется к частоте другого, и в результате получается новый цвет. Основными цветами в данном случае являются красный, зеленый и синий. Смешанные друг с другом в равных пропорциях, они дают белый цвет. Именно эта схема используется при формировании изображения на экране компьютера.
В аддитивной схеме теплыми называются цвета от пурпурного до желтого, а холодными — от зеленого до голубого и синего. Теплые цвета как бы выступают над поверхностью изображения, а холодные как бы вдавливаются в нее.
Трехмерное пространство и оси координат
Трехмерное пространство и оси координатПри работе с приложениями для трехмерного моделирования крайне важно отслеживать положение создаваемых объектов. Это легко сделать, если вы понимаете принцип действия инструментов, которыми приходится пользоваться, и понятие пространства, с которым приходится работать. Трехмерное пространство в нашем случае представляет собой виртуальную область для создания моделей и программирования анимации. Его основанием является прямоугольная система координат, созданная Рене Декартом.
Пространство определяется тремя осями — X, Ки Z, соответствующими трем измерениям — ширине, высоте и глубине. Три оси формируют числовую сетку, которая определяет координаты любой точки в пространстве.
Точка с координатами (0, 0, 0) называется началом координат. Именно здесь пересекаются все три оси. Трехмерное пространство, определяемое этими осями, называется глобальным, сами же оси являются базисом, на основе которого определяется положение объектов в пространстве. Тройка осей глобальной системы координат в Maya располагается в нижнем левом углу окон проекции.
Однако объекты в пространстве могут быть ориентированы совершенно произвольно. Поэтому была введена система координат, связанная с самим объектом. Она называется локальной. Оси этой системы координат строго связаны с объектами Maya и при преобразовании поворота или перемещения также меняют свою ориентацию или положение. Это бывает полезно при анимации объектов.
Более подробно о прямоугольной системе координат мы поговорим в главе 3, в которой вам предстоит смоделировать аналог Солнечной системы, показанный на Рисунок 1.3. Солнце будет находиться в начале координат, а планеты должны двигаться вокруг него в глобальной системе координат, одновременно вращаясь вокруг своей оси. Спутники же, в свою очередь, будут двигаться вокруг планет и тоже вращаться вокруг своей оси.
В первом кадре были созданы ключи
1.6. В первом кадре были созданы ключи анимации, фиксирующие положение, ориентацию и масштаб конуса. Следующий набор ключей анимации для тех же параметров был создан в кадре № 30. Положение объекта в промежуточных кадрах приложение рассчитало автоматически
Векторное изображение слева —
1.2. Векторное изображение: слева — исходное; справа — увеличенное на 200 %
В Maya вам предстоит работать с векторной графикой, имеющей вид каркасов. После визуализации она также преобразуется в набор растровых изображений.
При редактировании векторных файлов с помощью специальных программ меняется геометрическая информация. Это позволяет легко манипулировать файлами, что немаловажно для индустрии проектирования.
Векторные изображения
Векторные изображенияВекторные изображения создаются совершенно другим способом — на основе математических алгоритмов и геометрических функций. В данном случае определяется не цвет каждого пиксела, а области (areas), объемные фигуры (volumes) и плоские фигуры (shapes).
Среди популярных приложений для работы с векторной графикой можно выделить Illustrator и Flash. Кроме того, векторными являются все программы для систем автоматизированного проектирования (САПР) (CAD — computer-aided design), например AutoCAD или SolidWorks. Они позволяют создавать плоские и объемные фигуры, раскрашивать их в разные цвета или назначать им материалы.
Полученные с помощью таких приложений результаты хранятся в файлах, которые содержат информацию о координатах, уравнения точек в пространстве и назначенные пользователем цветовые значения. Затем векторная информация преобразуется в растровые изображения путем визуализации.
У векторных изображений не существует ограничений на масштабирование. Изменение размера подобного рисунка не сопровождается потерей качества (Рисунок 1.2).
Движущиеся изображения в векторных программах также сохраняются в виде уравнений, определяющих плоские и объемные фигуры и указывающих на изменение положения геометрии. Скачивая из Интернета мультфильм, созданный в приложении Flash, вы получаете информацию в векторной форме. Это сведения о положении, размере и форме всех персонажей и фоновых декораций. Затем компьютер в реальном времени визуализирует файл, и на экране вы видите уже растровое изображение.
Вес
ВесВес объектов является важным аспектом дизайна и анимации. Он подчеркивается цветом объекта, его контрастностью, формой, положением в сцене и размером отрицательного пространства вокруг него. В анимации вес объекта играет еще более важную роль. Показав, что объект имеет вес, вы увеличите достоверность происходящего. Как вы убедитесь в главе 8, в которой вам предстоит заставить топор летать, программируя движение объекта, крайне важно показать, что он имеет вес. Только тогда анимация будет выглядеть реалистично.
Движение объекта и его взаимодействие с различными элементами сцены должны создавать впечатление, что объект обладает некой массой. В противном случае анимация будет выглядеть фальшиво.
Существуют различные техники имитации веса объекта, например искажение формы при движении. Хотя на первый взгляд идея растягивать и сжимать объект при движении выглядит странно, этот прием позволяет увеличить достоверность анимации. Более подробную информацию по этой теме вы получите в главе 8.
Визуализация
ВизуализацияСозданные сцены требуется визуализировать, то есть превратить в набор картинок или фильм. Компьютер вычисляет вид каждого из объектов сцены и показывает его на экране. Этот процесс требует значительного количества ресурсов и может занять довольно много времени. Как вы убедитесь чуть позднее, способы создания объектов оказывают огромное влияние на продолжительность визуализации.
После завершения процесса визуализации полученные изображения сортируются и собираются воедино. Более подробно поговорим на эту тему в главе 11. Остальные стадии последующей обработки — монтаж, редактирование и наложение звуковой дорожки — выходят за рамки данного издания, поэтому ограничимся лишь их кратким описанием. При желании вы можете найти множество дополнительных пособий на эти темы.
Вступление
ВступлениеВо многих случаях искусство требует трансцендентных способов выражения. Оно имеет внутреннюю гармонию. Для лучшего понимания задач, возникающих в процессе создания компьютерной графики, нужно осознать, с чем вы работаете и к чему вы стремитесь.
Приступив к изучению Maya, вы начинаете знакомство с новым языком, с новым средством общения. Помните, что техника, которую вы получаете в руки, является лишь средством конечного выражения вашей фантазии. Поэтому насладитесь процессом работы.
Цифровые студии нанимают в первую очередь профессиональных художников, то есть людей, имеющих опыт в традиционных искусствах, например рисовании, живописи, фотографии или скульптуре. Соответственно, изучение компьютерной графики следует начать с обзора ключевых принципов искусства. Именно этому и посвящена данная глава. Всегда следует помнить, что компьютер, с которым вы работаете, — не более чем инструмент.
В последние десятилетия интерес к компьютерной графике значительно возрос. В немалой степени это является следствием появления на рынке мощных компьютеров по относительно низким ценам. Начиная с конца 90-х годов оборудование для создания анимации стало доступным для индивидуальных пользователей.
В результате многие художники добавили в сферу своих интересов компьютерную графику. Но перед тем как приступить к изучению конкретных инструментов, необходимо познакомиться с фундаментальными понятиями из этой области.
Вывод изображений
Вывод изображенийОбычно пользователи хотят, чтобы созданную ими анимацию увидела как можно большая аудитория. Для этого требуется визуализировать полученный результат в виде набора изображений или фильма. Сохраняется файл различными способами в зависимости от того, каким образом вы собираетесь его просматривать.
Кратко конвейерный процесс работы над
ЗаключениеКратко конвейерный процесс работы над анимацией выглядит так. На стадии подготовки пишется сценарий, согласно которому в художественном отделе рисуется визуальный ряд. Сценарий превращается в набор раскадровок, копии которых распространяются между членами команды, занимающимися анимацией и компоновкой сцены. На этой же стадии записывается звук. Производство начинается с создания персонажей и фоновых декораций. Затем в соответствии со звуковым рядом анимируется движение губ. После этого персонаж передается другому аниматору, который на основе раскадровок и звукового сопровождения программирует остальные его движения.
Готовые сцены визуализируются, собираются в нужном порядке и передаются членам команды, работающим со звуком, которые добавляют все прочие звуковые эффекты. Отдельные эпизоды соединяются друг с другом и записываются на пленку. Анимация готова!
Законы физики
Законы физикиВ главе 12 вы познакомитесь с одной из самых мощных функций Maya — модулем имитации динамики. Для его корректного использования вы должны знать основные законы физики и свойства окружающих нас тел.
Новые возможности в Maya 6
Активный временной сегмент и шкала диапазонов
Активный временной сегмент и шкала диапазоновВ нижней части экрана находятся активный временной сегмент и шкала диапазонов (Рисунок 2.6).
Активный временной сегмент показывает количество кадров в создаваемой вами анимации. Серая полоска на нем называется ползунком таймера анимации. Его положение определяет номер выбранного в данный момент кадра. Перетаскивая его взад и вперед, можно увидеть, как выглядит созданная вами анимация в окнах проекции.
Числовое поле, расположенное справа от активного временного сегмента, показывает номер текущего кадра. Его также можно использовать для перехода к определенному кадру — достаточно ввести туда нужный номер. Непосредственно за этим полем находится группа кнопок, предназначенная для управления воспроизведением анимации.

Центральные и ортографические проекции
Центральные и ортографические проекцииПо умолчанию при начальной загрузке Maya появляется окно проекции Perspective (Перспектива), развернутое на весь экран (Рисунок 2.8). Эта проекция представляет собой стандартный вид через объектив камеры и отображает глубину трехмерного пространства путем имитации перспективы. Здесь можно наблюдать все три измерения создаваемых объектов и, свободно перемещая камеру в пространстве, получить представление об их пропорциях и глубине.
Нажатием клавиши Пробел осуществляется переход к стандартной четырехоконной конфигурации (Рисунок 2.9). Повторное нажатие этой клавиши разворачивает на полный экран окно проекции, над которым в данный момент находится указатель мыши. Впрочем, моделировать удобнее в окнах ортографических проекций — Тор (Вид сверху), Front (Вид спереди) и Side (Вид сбоку),— так как они дают более полное представление о соотношении размеров объекта. Например, размеры совершенно одинаковых кубов в окне проекции Perspective (Перспектива) будут различаться. Чем дальше от наблюдателя расположен куб, тем меньшим он кажется. В окнах же ортографических проекций показываются точные пропорции объектов, поэтому вы без труда увидите, что размеры и форма всех кубов одинаковы.

Дочерние и родительские объекты
Дочерние и родительские объектыРодительским называется узел, который передает преобразования вниз по иерархической цепочке на дочерние по отношению к нему узлы. Соответственно, дочерние узлы наследуют преобразования всех своих предков. Например, в упражнениях следующей главы вам предстоит получить аналог Солнечной системы. Для этого будет создана вложенная иерархия объектов, имитирующая орбитальное вращение девяти планет и их спутников.
С помощью соотношений «предок — потомок» вы запрограммируете вращение спутника вокруг планеты, в то время как сама планета, в свою очередь, будет вращаться вокруг Солнца. Корректно выстроив иерархию объектов, вы легко сможете заставить спутники сопровождать планеты в их движении по орбитам.
Дочерние узлы могут подвергаться их собственным преобразованиям, которые будут выполняться совместно с преобразованиями, унаследованными от родительских узлов. При этом преобразования объекта-предка передаются всем его потомкам.
Планеты увлекают свои спутники в движение вокруг Солнца, но при этом каждый спутник в состоянии совершать самостоятельные перемещения, например вращаться вокруг своей планеты. Эти объяснения могут показаться несколько преждевременными, ведь вы все равно увидите все своими глазами, однако я считаю, что важно понять именно общую концепцию иерархических связей. Чем больше вы слышите об этом сейчас, тем проще будет применить полученные знания на практике.
На Рисунок 2.23 показано представление иерархии объектов в окнах диалога Outliner (Структура) и Hypergraph (Просмотр структуры). Родительский узел groupl, расположенный на вершине иерархии, управляет дочерними узлами nurbsConel и nurbs-SphereS, а также вложенной группой group2. Последняя, в свою очередь, является предком для узлов nurbsSphereZ и nurbsSpherel. Более подробную информацию об иерархических цепочках вы получите в следующей главе.

Главное меню
Главное менюВ показанной ниже строке меню вы обнаружите много знакомых названий, например File (Файл), Edit (Правка) или Help (Помощь).

Однако в Maya вид главного меню зависит от того, в каком режиме вы находитесь. Переходя из одного режима в другой, вы меняете состав меню и, соответственно, набор доступных инструментов. В версии Maya Complete вы можете выбирать между четырьмя режимами: Animation (Анимация), Modeling (Моделирование), Dynamics (Динамика) и Rendering (Визуализация). В версии Maya Unlimited появляются еще два режима — Cloth (Работа с тканями) и Live (Живая камера). Более подробно с каждым из этих меню вы познакомитесь чуть позднее.
Первые шесть пунктов главного меню — File (Файл), Edit (Правка), Modify (Изменить), Create (Создать), Display (Отображение) и Window (Окно) — присутствуют вне зависимости от выбранного вами режима. Также во всех случаях присутствует меню Help (Справка).
Индивидуальные маски выделения
Индивидуальные маски выделенияСледующий набор значков соответствует индивидуальным маскам выделения (табл. 2.3). Он позволяет указать, какие объекты и подобъекты вы хотите сделать выделяемыми. Набор этих значков зависит от выбранного режима выделения. Если сцена перегружена объектами, бывает затруднительно выделить щелчком объект определенного типа. В этом случае на помощь приходят следующие маски выделения.
Таблица 2.3. Индивидуальные маски выделения
Значок











Интерфейс Maya
Интерфейс MayaРассмотрим окно программы Maya (Рисунок 2.1). В верхней части экрана сразу под строкой заголовка (title bar) располагаются строка меню (menu bar), строка состояния (status line) и вкладки Shelf (Полка).
К левой стороне экрана пристыкована вертикальная панель инструментов с инструментами выделения и преобразования. К правой стороне экрана пристыковано окно диалога Channel Box/Layer Editor (Окно каналов/Редактор слоев), а в некоторых случаях и окно диалога Attribute Editor (Редактор атрибутов), не показанное на Рисунок 2.1. В нижней части экрана расположены ползунок таймера анимации (time slider), шкала диапазонов (range slider), а также функция управления атрибутами персонажа и кнопки Auto Keyframe toggle (Включение режима автоматической установки ключевых кадров) и Animation Preferences (Параметры анимации). В центре находится рабочее пространство, представляющее собой набор окон проекции. Каждое из окон имеет свое собственное меню. Именно здесь вам предстоит создавать и редактировать элементы сцены.
Элементы управления визуализацией
Элементы управления визуализациейСледующие три кнопки относятся к элементам управления визуализацией (табл. 2.6).
Таблица 2.6. Элементы управления визуализацией
Значок



Как открыть окно диалога Attribute Editor в отдельном окне
Как открыть окно диалога Attribute Editor в отдельном окнеПо умолчанию окно диалога Attribute Editor (Редактор атрибутов) пристыковано к правой стороне экрана, но существует возможность открыть его в отдельном окне. При выполнении упражнений вам будет более удобна именно такая конфигурация.
Для перехода к ней выберите в меню Window (Окно) команду Settings/Preferences > Preferences (Настройки/параметры > Параметры). В появившемся окне диалога Preferences (Параметры) установите переключатель Open Attribute Editor (Открывать редактор атрибутов) в положение In Separate Window (В отдельном окне). Аналогично установите переключатель Open Tool Settings (Открывать окно с параметрами инструмента) и щелкните на кнопке Save (Сохранить).

Выбрав в списке Categories (Категории) вариант UI Elements (Элементы интерфейса), вы откроете другую вкладку, на которой осуществляется управление видимостью элементов интерфейса.
Командная строка и строка подсказки
Командная строка и строка подсказкиВзаимодействие пользователя с Maya осуществляется с помощью языка программирования MEL (Maya Embedded language). Любое предпринятое действие, по сути, является выполнением команды или сценария MEL. Для ввода команд используется командная строка (Рисунок 2.7) или окно диалога Script Editor (Редактор сценариев). Команды вводятся в текстовое поле белого цвета, расположенное в левой части командной строки. Справа находится область серого цвета, в которой появляются ответы программы на ваши действия. Рядом с командной строкой находится кнопка, щелчок на которой открывает окно диалога Script Editor (Редактор сценариев), предназначенное для ввода более сложных команд и сценариев.
В самом низу экрана находится строка подсказки. Здесь отображается информация о практически любом видимом на экране элементе. При наведении указателя мыши на кнопку или команду меню в этой строке появляется их название. Иногда программа также предлагает сделать следующий шаг в процессе работы с определенной функцией или ввести численное значение, чтобы завершить выполняемую операцию.

Контекстные меню
Контекстные менюКак уже упоминалось, меню оперативного доступа разделено на пять областей, щелчок на которых приводит к появлению дополнительных контекстных меню. Они представляют собой альтернативный способ доступа к часто используемым командам. По умолчанию это команды изменения маски выделения, выбора варианта компоновки окон проекции, вызова самых часто используемых окон диалога и управления видимостью элементов интерфейса.
Примечание
ПРИМЕЧАНИЕ
Переходить к работе с меню оперативного доступа и контекстными меню имеет смысл, освоив стандартный интерфейс и выработав определенную последовательность действий. Со временем вы убедитесь в том, насколько удобным инструментом они являются. Многие аниматоры предпочитают вообще убирать основное меню, освобождая дополнительное пространство для окон проекции. Но начинающим лучше использовать основное меню, расположенное в верхней части экрана, чтобы запомнить местонахождение команд.
Манипуляторы
МанипуляторыСледующий элемент интерфейса, с которым вам необходимо познакомиться, относится непосредственно к объектам. Манипуляторами называются управляющие векторы, используемые для различных преобразований выделенного объекта. На Рисунок 2.12 показаны три чаще всего используемых в Maya варианта манипуляторов. Они появляются при переходе в режимы преобразований Move (Переместить), Rotate (Повернуть) и Scale (Масштабировать) соответственно. Эти управляющие векторы позволяют редактировать определенные атрибуты объекта в реальном времени.

Меню оперативного доступа
Меню оперативного доступаМеню оперативного доступа (Рисунок 2.21) дает доступ ко всем командам Maya.

Настройка вкладок Shelf
Настройка вкладок ShelfПо мере роста вашего опыта станет ясно, какие из инструментов вы предпочитаете использовать чаще всего. Их имеет смысл поместить на свободную вкладку Shelf (Полка). Она носит имя Custom (Пользовательская). Щелкнув на кнопке с указывающей вниз стрелкой, расположенной слева от вкладок, вы получите доступ к меню, содержащему команды редактирования их содержимого. Чтобы добавить на полку новую кнопку, нажмите комбинацию клавиш Ctrl+Alt+Shift и выберите нужную команду в меню. Если же вам требуется избавиться от кнопки, перетащите ее средней кнопкой мыши на значок с изображением корзины, расположенный в правом верхнем углу вкладок. Для перехода на другую вкладку также используется меню, вызываемое щелчком на кнопке с изображением квадратика, находящейся слева от вкладок.
Впрочем, начинающим пользователям лучше работать со стандартными меню. Переход к вкладкам Shelf (Полка) произойдет сам собой по мере накопления вами опыта.
Наверное самое лучшее меню
2.24. Наверное, самое лучшее менюОбласть показа узлов визуализации
Область показа узлов визуализацииТолько что созданный узел визуализации появляется одновременно в нижней и верхней частях окна диалога Hypershade (Редактор узлов) в виде пиктограммы. Щелчок на пиктограмме выделяет узел, а двойной щелчок открывает для него окно диалога Attribute Editor (Редактор атрибутов). Средней кнопкой мыши пиктограмму можно перетащить на вкладку Work Area (Рабочая область), предназначенную для создания и редактирования связей между узлами визуализации. Перемещения в этой области, как и во всем окне диалога Hypershade (Редактор узлов), осуществляются с помощью стандартных комбинаций кнопок мыши и клавиши Alt.
Область создания узлов
Область создания узловОбласть создания узлов состоит из двух вкладок: Create (Создание) и Bin (Хранение). Вкладка Create (Создание) дает доступ к созданию различных узлов визуализации. Вкладка Bin (Хранение) добавляет возможность систематизации, позволяя сохранять наборы материалов в виде отдельных групп. По умолчанию область создания узлов открыта на вкладке Create (Создание). Для создания узла визуализации вам достаточно щелкнуть на нужном значке. Меню в верхней части окна позволяет переключаться между созданием узлов Maya и узлов Mental Ray. В этой книге мы коснемся только узлов Maya, так как работа с визуализатором Mental Ray — для продвинутых пользователей. Область создания узлов Maya состоит из нескольких разделов: Surface (Узлы материалов), 2D Textures (Двумерные текстуры), Lights (Источники света) и т. п.
Области меню оперативного доступа
2.22. Области меню оперативного доступаОкна диалога Channel Box и Layer Editor
Окна диалога Channel Box и Layer EditorОбласть с правой стороны экрана чаще всего занята окном диалога Channel Box (Окно каналов), содержащим перечень каналов выделенного объекта. Каналами называют атрибуты, допускающие создание ключей анимации, а также входные и выходные связи. Слева перечислены имена каналов, а справа находятся текстовые поля с их значениями. Здесь можно как редактировать значения каналов, так и присваивать объектам новые имена. Ниже находятся имена узлов, которые формируют входные или выходные связи с выделенным объектом.
Непосредственно под окном диалога Channel Box (Окно каналов) находится окно диалога Layer Editor (Редактор слоев), предназначенное для создания слоев. Их наличие крайне удобно в сценах, содержащих множество объектов, или при работе с послойной анимацией. Здесь же осуществляется управление видимостью слоев.
Чтобы создать новый слой, щелкните на кнопке Create New Layer (Создать новый слой) или выберите в меню Layers (Слои) команду New Layer (Создать слой). Добавить объекты в слой можно, выбрав в меню Layers (Слои) команду Add Selected Objects to Current Layer (Добавить выделенные объекты в текущий слой) или щелкнув на имени слоя правой кнопкой мыши и выбрав в появившемся меню команду Add Selected Objects (Добавить выделенные объекты). Для выделения всех принадлежащих слою объектов используется команда Select Objects in Selected Layer (Выделить объекты из текущего слоя) из меню Layers (Слои) или команда Select Objects (Выделить объекты) из меню, вызываемого щелчком правой кнопкой мыши на имени слоя. Изменить имя и цвет слоя можно в окне диалога Edit Layer (Правка слоя), для вызова которого нужно дважды щелкнуть на имени слоя.

Вы можете легко поменять размер области, занимаемой этими окнами диалога, воспользовавшись расположенными снизу кнопками с двойными стрелками. Управление видимостью окна каналов и редактора слоев осуществляется с помощью трех кнопок (табл. 2.9), находящихся в верхнем левом углу (Рисунок 2.5).
Таблица 2.9. Кнопки отображения окна каналов и редактора слоев
Значок




Окна диалога Channel Box/Layer Editor
Окна диалога Channel Box/Layer EditorЗавершают строку состояния три кнопки, управляющие отображением пристыкованных к правой части экрана окон диалога (табл. 2.7).
Таблица 2.7. Кнопки управления отображением окон диалога
Значок



| Назад |
Окна диалога Multilister и Hypershade
Окна диалога Multilister и HypershadeВ то время как окна диалога Outliner (Структура) и Hypergraph (Просмотр структуры) содержат список объектов сцены, окна диалога Multilister (Список узлов) и Hypershade (Редактор узлов) предназначены для отображения списка текстур и материалов. Материалы нужны, чтобы придать поверхностям создаваемых в виртуальном пространстве объектов сходство с объектами из реального мира. Окна диалога Multi-lister (Список узлов) и Hypershade (Редактор узлов) позволяют создавать и редактировать материалы, а также назначать их объектам сцены. Преимущества каждого из них и их выбор в конкретной ситуации в основном зависят от личных предпочтений пользователя.
Примечание
ПРИМЕЧАНИЕ
Для создания материалов в Maya используются узлы визуализации. Именно они определяют окончательный вид материала. Часто для получения определенного эффекта требуется создавать целые сети таких узлов.
Окна диалога Outliner и Hypergraph
Окна диалога Outliner и HypergraphОкна диалога Outliner (Структура) и Hypergraph (Просмотр структуры), такие разные на вид, тем не менее выполняют сходные функции. Они используются для систематизации и группировки объектов сцены. С их помощью можно увидеть перечень объектов сцены в текстовой или графической форме.
В процессе создания анимации сцена постепенно насыщается объектами, и среди них бывает сложно найти нужный. Для этой цели и служат оба упомянутых окна диалога.
Как определить, какое из них вам лучше использовать в конкретной ситуации? Окно диалога Outliner (Структура) замечательно подходит для систематизации и группировки объектов, для переименования узлов и тому подобных задач. В окне диалога Hypergraph (Просмотр структуры) наглядно представлены связи между различными узлами, соответственно, имеет смысл использовать его для редактирования этих связей.
Окна проекции и часто используемые окна диалога
Окна проекции и часто используемые окна диалогаОсновную часть экрана в Maya занимает рабочее пространство — окна центральной и ортографической проекции. Именно они используются для создания, редактирования и просмотра трехмерных объектов, элементов и анимации. Управление этими окнами легко осуществляется с помощью мыши. Впрочем, для управления практически всеми окнами в Maya используются кнопки мыши и различные клавиши.
Окно диалога Attribute Editor
Окно диалога Attribute EditorОдним из самых важных инструментов в Maya является окно диалога Attribute Editor (Редактор атрибутов), вызываемое одноименной командой меню Window (Окно) или нажатием комбинации клавиш Ctrl+a. Каждый объект определяется набором атрибутов, а данный инструмент позволяет редактировать эти атрибуты, создавать для них ключи анимации, соединять их друг с другом, создавать для них выражения и т. п.
Окно разделено на вкладки в соответствии с узловой структурой объекта. Но об этом мы поговорим чуть позже. Пока же убедитесь в том, что сфера по-прежнему выделена, и нажмите комбинацию клавиш Ctrl+a, чтобы открыть для нее окно диалога Attribute Editor (Редактор атрибутов). Перейдите на вкладку makeNurbsSpherel (Рисунок 2.13).
Обратите внимание на то, что основные атрибуты сферы: Translate X (Смещение по оси X), Translate Y (Смещение по оси Y), Translate Z (Смещение по оси Z), Rotate X (Поворот относительно оси X) и т. п. — показаны в окне диалога Channel Box (Окно каналов).

Окно диалога Connection Editor
Окно диалога Connection EditorОкно диалога Connection Editor (Редактор связей) (Рисунок 2.20) вызывается одноименной командой меню Window » General Editors (Окно > Редакторы общего назначения).

Окно диалога Graph Editor
Окно диалога Graph EditorОкно диалога Graph Editor (Редактор анимационных кривых) (Рисунок 2.18) вызывается одноименной командой меню Window > Animation Editor (Окно > Редакторы анимации). Этот крайне мощный инструмент предназначен для редактирования ключей анимации.
Так как трехмерные данные обычно сохраняются в векторном формате, анимация в Maya также фиксируется в виде зависимости того или иного параметра от времени. Увидеть возникающие в результате кривые можно в окне диалога Graph Editor (Редактор анимационных кривых). При этом вы можете редактировать их форму, а соответственно, влиять на вид анимации.
Окно диалога Graph Editor (Редактор анимационных кривых) разделено на две части. Слева находится панель Outliner (Структура), выполняющая функции одноименного окна диалога. Здесь перечислены выделенные объекты сцены с указанием существующих между ними иерархических связей, а также дан перечень их ани-мированных каналов или атрибутов. Справа находится окно просмотра, содержащее цветные анимационные кривые. Количество этих кривых можно регулировать, выделяя на панели Outliner (Структура) нужные вам объекты или каналы.

Окно диалога Hypergraph
Окно диалога HypergraphПоказанное на Рисунок 2.15 окно диалога Hypergraph (Просмотр структуры) также вызывается одноименной командой меню Window (Окно). Оно отображает объекты сцены в виде диаграмм, что позволяет наглядно представить связи между отдельными узлами. Этот инструмент не так-то просто освоить начинающим пользователям, но при этом он дает максимальный контроль над иерархией сцены, а также входными и выходными связями.

Окно диалога Hypershade
Окно диалога HypershadeОкно диалога Hypershade (Редактор узлов) (Рисунок 2.17) вызывается одноименной командой меню Window » Rendering Editor (Окно > Редакторы визуализации). Материалы и текстуры в нем отображены в виде диаграмм. Вы можете легко соединять друг с другом узлы визуализации и разрывать связи между ними, формируя простые и сложные сети материалов. Окно диалога Hypershade (Редактор узлов) разделено на три части: область создания узлов визуализации, область отображения узлов и рабочую область. Три кнопки в правом верхнем углу окна позволяют легко менять его вид.

Окно диалога Multilister
Окно диалога MultilisterОкно диалога Multilister (Список узлов) (Рисунок 2.16) вызывается одноименной командой меню Window > Rendering Editor (Окно > Редакторы визуализации). Как легко догадаться по его имени, это окно содержит список имеющихся в сцене материалов, а также источников света и камер в табличном формате. Все материалы находятся на соответствующих вкладках в виде именованных пиктограмм.

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

Окно диалога Script Editor
Окно диалога Script EditorОкно диалога Script Editor (Редактор сценариев) (Рисунок 2.19) вызывается одноименной командой меню Window > General Editors (Окно > Редакторы общего назначения). Альтернативным способом его вызова является щелчок на кнопке, расположенной в конце командной строки. Так как даже сам интерфейс Maya написан на языке MEL, не удивительно, что выполнение любой команды аналогично выполнению сценария на этом языке. Увидеть текст этого сценария вы можете в окне диалога Script Editor (Редактор сценариев).
Это окно позволяет увидеть как выполненные команды, так и отображенные аргументы и комментарии. Кроме того, оно дает возможность писать собственные сценарии на языке MEL и запускать их на выполнение.
Окно разделено на две половины. Вверху показываются ответы программы на : ваши действия, а снизу располагается аналог командной строки, то есть пространство, предназначенное для ввода команд. Выделив текст в верхней части, вы можете скопировать его в нижнее окно и повторно запустить на выполнение.
Существует также возможность добавить любую команду на открытую в данный момент вкладку Shelf (Полка). Для этого достаточно выделить ее текст и выбрать в меню File (Файл) окна диалога Script Editor (Редактор сценариев) команду Save Selected to Shelf (Сохранить выделенное на полку). Редактор сценариев используется также для просмотра слишком длинных сообщений об ошибке, которые не входят целиком в соответствующее поле командной строки.

Окно проекции Perspective
2.8. Окно проекции Perspective
Окно программы Maya
2.1. Окно программы MayaПанель инструментов
Панель инструментовПанель инструментов (Рисунок 2.4) содержит ярлычки чаще всего используемых инструментов (табл. 2.8): Select (Выделить), Lasso (Лассо), Move (Переместить), Rotate (Повернуть), Scale (Масштабировать), Soft Modification (Плавная модификация) и Show Manipulator (Показать манипулятор). Кроме того, в нижней части панели располагаются кнопки, активизирующие наиболее употребительные варианты компоновок окон проекции. Это очень удобно, так как позволяет перейти к нужным окнам с помощью одного щелчка. Поэкспериментируйте с этими кнопками самостоятельно.

Плавающие меню
Плавающие менюСуществует возможность превратить любое меню в плавающее окно. Это очень удобно, когда требуется несколько раз воспользоваться одной и той же командой. Представьте, например, что вам нужно создать набор CV-кривых. В этом случае имеет смысл оторвать нужное меню и поместить его сбоку. В итоге вы получите непосредственный доступ к команде CV Curve Tool (Управляющие точки кривой). Вам не потребуется каждый раз заново вызывать меню Create (Создать). Для превращения меню в плавающее окно достаточно щелкнуть на двойной черте, расположенной в его верхней части.

При поиске нужного инструмента следует помнить, что каждое меню выполняет определенную функцию. Вот функции меню, видимых в любом режиме:
Справа от некоторых пунктов меню находятся различные значки — стрелочки и квадратики. Выбор пункта меню со стрелкой справа открывает дополнительное меню. Щелчок на квадратике приводит к появлению окна диалога с параметрами соответствующего инструмента.
Поле Name Selection
Поле Name SelectionВ правой части строки состояния находится текстовое поле, предназначенное, в частности, для выделения объектов по именам. В него можно ввести как точное имя, так и часть имени с групповым символом, например, «sphere*». В последнем случае выделенными окажутся все объекты, имя которых включает символ «sphere».

Примеры манипуляторов
2.12. Примеры манипуляторовАктивизируются вышеупомянутые преобразования щелчком на кнопке соответствующего инструмента, расположенной на пристыкованной к левой стороне экрана панели, или нажатием следующих клавиш (табл. 2.10).
Таблица 2.10. Манипуляторы
Клавиша
Щелкните на кнопке Move (Переместить) на панели инструментов, и в центре сферы появятся манипуляторы этого преобразования, как показано на первом изображении (см. Рисунок 2.12). Три стрелки соответствуют трем возможным осям перемещения объекта.
Красная стрелка соответствует перемещению вдоль оси X, зеленая — вдоль оси У, а синяя — вдоль оси Z. Выделение любой из стрелок ограничивает преобразование одной осью. Голубой квадрат в месте схода управляющих векторов позволяет свободно передвигать объект в пространстве. Выделенный манипулятор окрашивается в желтый цвет.
Затем щелкните на кнопке Rotate (Повернуть) на панели инструментов, и вы увидите манипулятор, показанный на центральном изображении (см. Рисунок 2.12). Три цветных окружности соответствуют трем осям поворота объекта. В данном случае красная окружность соответствует повороту относительно оси X, зеленая — относительно оси У, а синяя — относительно оси Z. Желтая окружность используется для свободного вращения объекта в пространстве. При выделении любого другого манипулятора она приобретает голубой цвет.
Наконец, щелкните на кнопке Scale (Масштабировать), чтобы рассмотреть манипулятор, показанный на нижнем изображении (см. Рисунок 2.12). Перетаскивание любого из цветных кубов приводит к неравномерному масштабированию выделенного объекта относительно выбранной оси. Центральный куб голубого цвета используется для равномерного изменения размеров объекта по всем трем осям одновременно.
Напоследок рассмотрим инструмент Soft Modification (Плавная модификация), отсутствовавший в предыдущих версиях программы. Он позволяет выделять область на поверхности модели и редактировать ее нужным вам образом. При этом сила воздействия инструмента, максимальная в центральной точке преобразования, уменьшается к периферии выделенной области. Выберите в меню Create (Создать) команду NURBS Primitives (NURBS-примитивы) и щелкните на квадратике, расположенном справа от команды Plane (Плоскость). Это приведет к появлению окна диалога с параметрами плоскости. Введите в поля U Patches (U направление) и V Patches (V направление) значение 10 и щелкните на кнопке Create (Создать).

В результате на координатной сетке появится плоскость. Активизируйте преобразование Scale (Масштабировать) и уменьшите размер этой плоскости до размеров координатной сетки. Затем активизируйте преобразование Soft Modification (Плавная модификация) и щелкните в произвольном месте плоскости. Появится манипулятор с буквой S в центре. Он позволяет осуществлять плавные перемещения, повороты и масштабирования.

Перетащите вверх манипулятор с конусом на конце и обратите внимание на то, как изменится вид плоскости. Эффект от преобразования будет максимальным в месте расположения управляющих векторов.

Перетаскивание манипулятора с кубом на конце приведет к масштабированию выделенной области, а манипулятор в форме кольца позволяет вращать ее. Чтобы вернуться в режим выделения области, щелкните на квадратике с буквой S в центре. На одной поверхности может находиться сколько угодно областей плавного преобразования.
Совет
СОВЕТ
Клавиши + и - позволяют менять размер управляющих векторов. Для увеличения манипуляторов используется клавиша +, а для их уменьшения, — соответственно, клавиша -.
| Назад |
Привязки
ПривязкиДальше следует группа значков с изображением магнита (табл. 2.4). Это кнопки управления привязками, то есть возможностью притянуть указатель мыши или объект к определенной точке сцены. Это нужно для точного размещения объектов в пространстве. Вот существующие режимы привязок.
Таблица 2.4. Кнопки управления привязками
Значок





Работа с мышью
Работа с мышьюДля работы в Maya требуется трехкнопочпая мышь. Это правило касается даже платформы Macintosh. Можно воспользоваться мышью с колесом прокрутки. В этом случае колесо выполняет функцию средней кнопки. Кроме того, в Maya 6 появилась возможность использовать это колесо для изменения масштаба в окнах проекции. В Maya левая кнопка мыши используется в качестве основного инструмента выделения объектов, правая — вызывает многочисленные контекстные меню, средняя — позволяет перемещаться по интерфейсу Maya и двигать различные элементы сцепы, а также, как уже упоминалось, менять их масштаб.
Различные степени сглаживания NURBSсферы
2.10. Различные степени сглаживания NURBS-сферы
Различные степени сглаживания
2.11. Различные степени сглаживания NURBS-объектов в режиме показа тонированных оболочек объектовТрехмерные объекты отображаются в окнах проекций или в режиме каркасного отображения (wireframe mode) (см. Рисунок 2.10), или в режиме показа тонированных оболочек объектов (shaded mode) (Рисунок 2.11).
Режим каркасного отображения увеличивает скорость ответа программы на ваши действия, так как при этом количество вычислений минимизируется. Впрочем, при наличии хорошей видеокарты и быстрого процессора скорость работы в режиме показа тонированных оболочек также может быть довольно высокой.
Для перехода в режим каркасного отображения нужно нажать клавишу 4. Нажатие клавиши 5 включает режим показа тонированных оболочек объектов, клавиша б позволяет увидеть в окнах проекции назначенные объектам текстуры, а клавиша 7 приводит к включению всех существующих источников света.
Нажатие клавиши б является альтернативой команде Hardware Texturing (Аппаратное наложение текстур) из меню Shading (Затенение) любого из окон проекции. Качество отображения текстур зависит от видеокарты вашего компьютера. Клавиша 7, в свою очередь, является альтернативой команды Use All Lights (Использовать все источники света) изменю Lighting (Освещение). Результат действия этой команды заметен только в режиме тонированной раскраски объектов. По умолчанию в этом режиме сцена освещена встроенными источниками света, основным назначением которых является обеспечение минимальной видимости объектов на этапе формирования геометрии сцены.
В процессе моделирования полезно переключаться из режима каркасного отображения в режим тонированной раскраски и наоборот, чтобы лучше видеть пропорции модели. Режим аппаратного наложения текстур иногда используется для первичного выравнивания материала на поверхности модели, но в данном случае внешний вид оценивается путем тестовой визуализации сцены. Для этого замечательно подходит, например, интерактивная фотореалистичная визуализация, позволяющая отслеживать изменение вида и положения текстуры в реальном времени. Подробную информацию об этой функции вы найдете в главе 11.
Включение всех источников света требуется для определения корректного направления лучей и бликов на поверхностях объектов. Это позволяет составить представление об общей освещенности сцены, не прибегая к визуализации. Вид сцены в окнах проекции в этом случае также зависит от видеокарты вашего компьютера. В главе 10 при изучении процесса освещения сцен вам часто придется использовать этот режим.
В меню View (Вид) окна проекции также содержится набор полезных команд. Например, команда Look at Selection (Фокусировка на выделенном) приводит к центрированию выделенного объекта в окне проекции, а команда Frame Selection (Показ выделенного объекта) не только центрирует объект, но еще и увеличивает его размер до максимально возможного в границах окна. Альтернативой последней команде является клавишам. Команда Frame All (Показ всех объектов), которая выполняется также при нажатии клавиши а, меняет масштаб всех объектов таким образом, чтобы они целиком уместились в окне проекции.
Режимы работы
Режимы работыНапоминаем, что режимы работы в Maya систематизированы в соответствии с их функциональностью. В версии Maya Complete это режимы Animation (Анимация), Modeling (Моделирование), Dynamics (Динамика) и Rendering (Визуализация). В версии Maya Unlimited появляются еще два режима — Cloth (Работа с тканями) и Live (Живая камера). Каждый из них дает вам доступ к соответствующему набору команд. Скажем, режим Animation (Анимация) дает доступ к функциям, относящимся к анимации объектов, например к меню Deform (Деформация) или Skeleton (Скелет).
Раскрывающийся список с вариантами режимов является первым элементом строки состояния. Впрочем, переходить от одного режима к другому проще с помощью «горячих» клавиш (табл. 2.11).
Таблица 2.11. «Горячие» клавиши управления режимами
Клавиша

Необходимость постоянно переходить от одного режима к другому на первый взгляд может показаться слегка странной, но это позволяет лучше организовать рабочее пространство, чем в случае, когда все возможные заголовки меню располагаются в одной строке. Кроме того, не забывайте, что существуют и альтернативные способы доступа к нужным вам командам, например к меню оперативного доступа.
При поиске определенного набора инструментов достаточно задать себе вопрос: какую фазу работы над анимацией он выполняет? Так как режимы выбраны в соответствии со стандартными фазами выполнения проекта — моделирование, анимация, программирование динамических взаимодействий, освещение/визуализация, — ответ на этот вопрос укажет, где именно искать нужное вам меню.
| Назад |
Режимы выделения
Режимы выделенияЗатем следует группа кнопок, управляющая режимами выделения объектов. Первым в ней идет раскрывающийся список Selection Mask (Маска выделения). С его помощью выбирается доступный для выделения тип объектов.
Примечание
ПРИМЕЧАНИЕ
Маской выделения называется функция, определяющая тип доступных для выделения объектов. Представьте себе перенасыщенную объектами сцену, в которой требуется выделить набор полигональных граней. Чтобы избежать при этом случайного выделения других объектов или подобъектов, достаточно объявить грани единственным типом объектов, подлежащим выделению. Выбранный в раскрывающемся списке Selection Mask (Маска выделения) вариант определяет также состав и вид расположенных справа кнопок, которые позволяют дополнительно контролировать процесс выделения.
Первыми после списка идут три кнопки, определяющие различные режимы выделения (табл. 2.2).
Таблица 2.2. Режимы выделения
Значок



СОВЕТ
Для перехода между режимами выделения объектов и подобъектов достаточно нажать клавишу F8. Нажмите кнопку Hierarchy Mode (Режим выделения иерархических цепочек) и щелкните на верхнем узле иерархии. Если объекты действительно сгруппированы друг с другом, это приведет к выделению всей группы.
Стандартная четырехоконная конфигурация
2.9. Стандартная четырехоконная конфигурацияТаким образом, четыре окна проекции дают наглядное представление о размере и пропорциях моделей. Обычно моделирование начинается в окнах ортографи-ческих проекций, центральная же проекция используется при окончательном редактировании объектов. Кроме того, именно тут определяется угол, под которым будет визуализирована сцена.
Для выбора различных представлений используются шесть кнопок, расположенных в нижней части пристыкованной к левой стороне экрана панели инструментов. Кроме того, для этого предназначено меню, вызываемое выбором команды Saved Layouts (Варианты компоновки) в меню Window (Окно) любого окна проекции. Если же требуется заменить только одно из окон проекции, используйте команды меню Panels (Панели). Здесь вы можете выбрать как любую проекцию — центральную или ортографическую, так и требующееся в конкретный момент окно диалога. Для изменения размеров окон проекции достаточно навести указатель мыши на их границу и, когда он примет вид двунаправленной стрелки или четырех сходящихся в одной точке стрелок, нажать левую кнопку мыши и перетаскивать границу в нужном направлении.
По умолчанию в каждом из окон проекции показана координатная сетка, которую можно убрать, выбрав в меню Display (Отображение) команду Grid (Сетка). Повторный выбор этой команды снова делает сетку видимой. Данный элемент интерфейса наглядно представляет выбранные единицы измерения. Их редактирование осуществляется в разделе Settings (Настройки) окна диалога Preferences (Параметры).
Вот перечень основных приемов управления окнами проекции:
Перейдите к стандартному четырехоконному представлению, щелкнув на кнопке Four View (Четырехоконное представление) на пристыкованной к левой стороне экрана панели инструментов, и выберите в меню Create (Создать) команду NURBS Primitives > Sphere (NURBS-примитивы > Сфера). Результат этой операции показан на Рисунок 2.10. Так как только что созданный объект по умолчанию выделен, его параметры можно видеть в окне диалога Channel Box (Окно каналов).
Нажмите клавишу 2, и сетка объекта станет более плотной. Нажатие клавиши 3 еще сильней увеличивает плотность сетки. Таким образом, клавиши 1, 2 и 3 управляют детализацией NURBS-объектов.

Строка состояния
Строка состоянияСтрока состояния (Рисунок 2.2) содержит набор важных и часто используемых значков.

Структура объектов в Maya
Структура объектов в MayaВидимой частью приложения Maya является интерфейс, но существует еще и скрытая часть — лежащий в его основе код.
Именно код сохраняет объекты в Maya в виде сети узлов. И соотношения, которые вы выстраиваете между этими узлами, определяют способ построения сцены. Короче говоря, работа с Maya представляет собой программирование, приводящее к созданию трехмерных объектов и анимации.
Поэтому чтобы работать эффективно, крайне важно понимать, как же в Maya определяются объекты и как они взаимодействуют. Вы должны знать и то, как узлы взаимодействуют друг с другом. Это касается как простой иерархической цепочки, в которой один объект непосредственно влияет на другой, так и сложного, заданного сценарием выражения, соединяющего друг с другом 15 принадлежащих нескольким объектам атрибутов.
Хотя интерфейс Maya по большей части автоматизирует процесс создания узлов и формирования связей между ними, чем быстрее вы осознаете узловую структуру объектов, тем проще будет процесс освоения Maya. Даже если вы непосредственно не видите процесса создания связей между узлами и атрибутами, он тем не менее осуществляется при каждой выполненной команде.
Управление Maya
Управление MayaДля того чтобы стать хорошим аниматором и научиться работать с Maya или другим приложением для создания компьютерной графики, вовсе не нужно помнить местонахождение всех кнопок и инструментов. Вы должны всего лишь знать, как найти нужную вам функцию.
Лучше всего начать с исследования интерфейса. С помощью мыши вызывайте различные меню и инструменты и внимательно рассматривайте их. Старайтесь при этом не вносить изменений в параметры Maya, так как упражнения в этой книге были написаны для заданных по умолчанию настроек.
Чтобы гарантировать неизменность настроек, закончив исследование, выберите в меню Window (Окно) команду Settings/Preferences > Preferences (Настройки/параметры > Параметры). Затем выберите в меню Edit (Правка) появившегося окна диалога команду Restore Default Settings (Восстановить заданные по умолчанию параметры).

Узловая структура
Узловая структураВ своем ядре приложение опирается на пакеты информации, называемые узлами (nodes). Каждый узел несет в себе группу атрибутов, комбинация которых и определяет объект. В качестве атрибутов могут выступать пространственные координаты, описания геометрии, значения цвета и т. п.
В совокупности атрибуты объекта определяют сам объект и возможности его анимации. Их можно анимировать и соединять друг с другом в любом порядке, индивидуально или группами, что дает исключительный контроль над сценой.
Узлы, определяющие форму поверхности или объекта-примитива, называются узлами формы (shape nodes). Они несут информацию, определяющую способ создания объекта. Например, узел формы сферы имеет такой атрибут, как ее радиус. Изменение этого атрибута на базовом уровне меняет размер сферы. Узлы формы находятся в самом низу иерархической цепочки и всегда являются дочерними по отношению к узлам преобразования (transform nodes). Сначала рассматриваются узлы формы сферы, затем происходит переход к другим узлам, например положения, ориентации и масштаба.
Примечание
ПРИМЕЧАНИЕ
Не все примитивы и объекты создаются с узлами формы, поэтому в некоторых случаях отсутствует возможность менять параметры объекта на этом уровне. Чтобы гарантировать наличие узла формы, необходимо включить фиксацию истории конструирования объектов, нажав на кнопку Construction History (История конструирования) в строке состояния. Наиболее заметными и используемыми являются узлы преобразования, также известные как DAG-узлы (directed acyclic graph — направленный ациклический граф). Они содержат все атрибуты преобразования объекта или группы объектов. К преобразованиям в данном случае относятся положение объекта, а также его ориентация и масштаб. Также эти узлы хранят информацию о присоединенных к ним дочерних или родительских узлах. В процессе перемещения или масштабирования объекта вы меняете атрибуты его узла преобразования.
Рассмотрим пример работы с узлом преобразования:
1. Создайте сферу и нажмите комбинацию клавиш Ctrl+a, чтобы открыть для нее окно диалога Attribute Editor (Редактор атрибутов).
Вкладки в верхней части этого окна позволяют переходить от одного узла сферы к другому. В данный момент должна быть открыта вкладка, соответствующая узлу формы сферы. Она называется nurbsSphereShapel. Этот узел содержит определенную информацию об объекте, но обычно последняя не подвергается редактированию.
2. Нажмите клавишу W, чтобы активизировать инструмент Move (Переместить). Перейдите на вкладку nurbsSpherel, чтобы получить доступ к узлу преобразования сферы. Слегка переместите сферу вдоль оси X. Обратите внимание на то, как изменится значение Х-координаты атрибута Translate (Перемещение). Аналогичное изменение должно произойти и в окне диалога Channel Box (Окно каналов).
3. Нажмите клавишу R, чтобы активизировать инструмент Scale (Масштабировать). Равномерно масштабируйте сферу, воспользовавшись центральным манипулятором голубого цвета. Обратите внимание на то, как изменятся значения атрибутов Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) в окне диалога Attribute Editor (Редактор атрибутов). Введите в эти поля значение 1, чтобы вернуть сферу в исходное состояние.
4. Перейдите на вкладку makenurbsSpherel и введите в поле Radius (Радиус) значение 2. Размер сферы увеличится в два раза. Вернитесь на вкладку nurbsSpherel и обратите внимание на то, что значения атрибутов Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) при этом не изменились. Дело в том, что в данном случае размер был изменен на уровне узла формы, а не на более высоком уровне узла преобразования. Любые изменения атрибутов Scale (Масштабировать) вступают в силу после изменений в узлах более низкого уровня.
| Назад |
Входные и выходные связи
Входные и выходные связиСледующая группа состоит из трех кнопок (табл. 2.5). Первые две позволяют работать с входными и выходными связями, а третья включает и выключает фиксацию истории конструирования объектов. Подробно об этом мы поговорим чуть позже.
Таблица 2.5. Входные и выходные связи
Значок



ПРИМЕЧАНИЕ
Входными связями называются атрибуты объекта, управляемые или находящиеся под влиянием другого объекта. Выходные связи представляют собой атрибуты объекта, влияющие на другие объекты сцены. История конструирования сцены фиксирует все узлы и атрибуты, использовавшиеся при создании объектов, облегчая редактирование этих объектов в дальнейшем.
Вид простой иерархической цепочки
2.23. Вид простой иерархической цепочки в окнах диалога Outliner и HypergraphВкладка Shelf
2.3. Вкладка ShelfОбычно по умолчанию показывается вкладка Surfaces (Поверхности). Расположенные на ней кнопки отвечают за создание NURBS-примитивов и активизацию часто используемых инструментов для работы с NURBS-объектами, например Loft (Лофтинг) или Extrude (Выдавливание). Более подробно с этими инструментами вы познакомитесь в главе 4. Чтобы сделать видимым другой набор значков, достаточно щелкнуть на ярлычке соответствующей вкладки. Последняя вкладка не содержит кнопок. Туда имеет смысл поместить пусковые ярлыки на инструменты, с которыми вам приходится работать чаще всего.
Если навести на любую из кнопок вкладки указатель мыши, появится всплывающая подсказка с именем и описанием выбранного инструмента.
Вкладка Work Area
Вкладка Work AreaВкладка Work Area (Рабочая область) представляет собой рабочее пространство, предназначенное для соединения друг с другом узлов визуализации и создания таким способом материала, который можно назначить объектам сцены. Благодаря наглядному представлению структуры сети, это, безусловно, самое удобное место для создания и редактирования сложных материалов. Существует возможность добавить в эту область новые узлы, перетащив их средней кнопкой мыши или из верхней области окна диалога Hypershade (Редактор узлов), или даже из окна диалога Multilister (Список узлов).
Вкладки Shelf
Вкладки ShelfВкладки Shelf (Полка) (Рисунок 2.3) представляют собой панели, на которых собраны кнопки активизации различных инструментов. Название каждой из вкладок отражает область применения соответствующего инструментария.

к регистру букв. Если вдруг
ВНИМАНИЕКлавиатурные комбинации в Maya чувствительны к регистру букв. Если вдруг окажется, что их применение не приводит к нужному результату, проверьте, не нажата ли у вас клавиша CapsLock.
Значки управления файлами
Значки управления файламиЗа списком выбора режима работы следует набор кнопок, предназначенных для управления файлами (табл. 2.1).
Таблица 2.1. Значки управления файлами
Значок



Новые возможности в Maya 6
Анимация остальных спутников
Анимация остальных спутниковПовторите процедуру анимации для остальных планет и спутников, оставив на месте только один из спутников Марса и последнюю планету — Плутон.
Анимация сцены
Анимация сценыДля выполнения этой фазы проекта вы можете как загрузить файл Planets_v2.mb из папки ChapterFHes\Solar_System\scenes прилагаемого к книге компакт-диска, так и продолжить работу над созданной вами сценой. Анимация движения по орбитам является вполне очевидным процессом. Сначала нужно запрограммировать вращение планет вокруг своей оси, затем вы заставите спутники вращаться вокруг планет, а напоследок планеты вместе со своими спутниками будут приведены в движение вокруг Солнца.
В этом упражнении вам предстоит на практике познакомиться с иерархическими цепочками и опорными точками объектов. Опорная точка по умолчанию располагается в геометрическом центре объекта и является центром преобразований поворота и масштабирования.
Произведем предварительные настройки будущей анимации:
1. Нажмите клавишу F2 для перехода в режим Animate (Анимация).
2. В поле End Time (Конечное время), расположенном справа от шкалы диапазонов, введите значение 240. В результате продолжительность анимации станет равна 240 кадрам.
3. Щелкните на кнопке Animation Preferences (Параметры анимации). Выделите в списке Categories (Категории) появившегося окна диалога строчку Settings (Настройки) и в раскрывающемся списке Time (Время) выберите вариант NTSC (30 fps).
4. Убедитесь в том, что переключатель Up Axis (Направленная вверх ось) стоит в положении Y. Это гарантирует, что ось У в окне проекции Perspective (Перспектива) будет направлена вверх, а в окне проекции Тор {Вид сверху) — на наблюдателя.
Совет
СОВЕТ
В списке Categories (Категории) окна диалога Preferences (Параметры) выделите строчку Undo (Отмена) и установите переключатель Queue-(CteK) в положение Infinite (Бесконечность). В результате вы сможете применять команду Undo (Отмена) бесконечное число раз. Чтобы закрыть окно диалога Preferences (Параметры), щелкните на кнопке Save (Сохранить).
Анимация Венеры
Анимация ВенерыАнимацию следующей планеты — Венеры — произведите по уже знакомому вам алгоритму. Сначала заставьте Венеру вращаться вокруг своей оси, затем сгруппируйте этот объект с самим собой, присвойте новому узлу имя Venus_0rbit и заставьте его двигаться вокруг Солнца.
Анимация Земли и Луны
Анимация Земли и ЛуныАнимация третьей от Солнца планеты осуществляется примерно таким же способом, но ситуация осложняется наличием у Земли спутника. В этой части упражнения вам впервые предстоит воспользоваться клавиатурной комбинацией.
Примечание
ПРИМЕЧАНИЕ
Нажатие клавиши s аналогично выполнению команды Set Key (Создать ключ). Но перед тем как прибегнуть к подобному методу создания ключей, обязательно нужно вызвать окно диалога Set Key Options (Параметры создания ключей) и проверить параметры данной команды. Приступим к анимации Земли и ее спутника:
1. Выделите объект Earth и заставьте его вращаться вокруг своей оси уже известным вам методом. Но на этот раз вместо выбора в меню Animate (Анимация) команды Set Key (Создать ключ) просто нажимайте клавишу s.
2. Выделите спутник Земли и также заставьте его вращаться вокруг своей оси.
3. Чтобы заставить Луну вращаться вокруг Земли, сгруппируйте этот объект с самим собой с помощью команды Group (Группировать) из меню Edit (Правка). Присвойте новой группе имя Moon_0rbit.
4 Но в данном случае преобразование поворота должно совершаться относительно центра Земли, а не центра Солнца. Поатому опорную точку нужно переместить.
5 Включите режим привязки к сетке и нажмите клавишу Insert для перехода в редактирования опорной точки. Манипулятор изменит свои вид, так как теперь он управляет не поворотом объекта, а перемещением опорной точки.
6. Перетащите опорную точку в центр объекта Earth (Рисунок 3.13).
Автоматическое создание ключевых кадров
Автоматическое создание ключевых кадровПри создании анимации иногда удобно пользоваться функцией автоматической установки ключевых кадров, которая включается нажатием кнопки Auto keyframe (Автоматическая установка ключевых кадров), расположенной справа от шкалы диапазонов. Идея метода состоит в том, что после включения этой функции любое изменение параметров объекта приводит к созданию ключа анимации. Например, вы задаете ключевой кадр для атрибута Rotate Y (Поворот относительно оси Y) и перемещаете ползунок таймера анимации. В результате изменение этого параметра автоматически приводит к появлению ключа в текущем кадре.
Рассмотрим, как работает функция автоматической установки ключевых кадров, на примере статичного пока спутника Марса.
1. Нажмите кнопку Auto keyframe (Автоматическая установка ключевых кадров).
2. Убедитесь в том, что ползунок таймера анимации установлен на отметку кадра № 1. Выделите строчку Rotate Y (Поворот относительно оси Y) в окне диалога Channel Box (Окно каналов) и нажмите клавишу s.
3. Установите ползунок таймера анимации на отметку кадра № 240 и введите в поле Rotate Y (Поворот относительно оси Y) значение 720. Новый ключевой кадр готов. Сохраните файл.
Группировка объекта Mercury с
3.12. Группировка объекта Mercury с самим собой приводит к появлению новой опорной точки, расположенной в начале координат
Сгруппировав объект Mercury с самим собой, вы, по сути, создали новый объект. Опорные точки создаваемых в Maya объектов по умолчанию помещаются в начало координат. Именно такой результат вам и нужен. Теперь ничто не мешает запрограммировать вращение планеты Меркурий вокруг Солнца.
2. Щелкните на слове groupl в верхней части окна диалога Channel Box (Окно каналов) и присвойте новой группе имя Mercury_0rbit.
3. Щелкните в произвольной точке окна проекции, чтобы снять выделение с объекта Mercury_0rbit. Попытайтесь снова выделить этот узел. Обратите внимание на то, что щелчок на объекте Mercury приводит к выделению только самой сферы. Это связано с тем, что сейчас вы находитесь в режиме выделения объектов.
Совет
СОВЕТ
Для выделения группы Mercury_0rbit нужно переключиться в режим выделения иерархии, нажав кнопку Hierarchy Mode (Режим выделения иерархических цепочек) в строке состояния. Не забудьте после этого вернуться в режим выделения объектов, нажав расположенную рядом кнопку Object Mode (Режим выделения объектов). 4. Верните ползунок таймера анимации на отметку первого кадра и создайте ключ анимации для атрибута Rotate Y (Поворот относительно оси Y) объекта Mercury_ Orbit, выбрав в меню Animate (Анимация) команду Set Key (Создать ключ).
5. Установите ползунок таймера анимации на отметку кадра № 240 и дважды поверните сферу Mercury вокруг Солнца. Можно также напрямую ввести значение 720 в поле Rotate Y (Поворот относительно оси Y) окна диалога Channel Box (Окно каналов).
6. Выберите в меню Animate (Анимация) команду Set Key (Создать ключ). Подвигайте ползунок таймера анимации, чтобы посмотреть на полученный результат.
Одна планета уже анимирована! Осталось еще восемь.
Группировка Земли и Луны
Группировка Земли и ЛуныТеперь нужно заставить Землю вращаться вокруг Солнца, причем Луна должна сопровождать ее в этом движении. Поэтому вам недостаточно будет выделить объект Earth и сгруппировать его с самим собой. Эта задача решается следующим образом:
1 Перейдите в режим выделения иерархии, нажав кнопку Hierarchy Mode (Режим выделения иерархических цепочек) в строке состояния, и щелчками при нажатой клавише Shift выделите сначала Землю, а потом Луну. Выберите в меню Edit (Правка) команду Group (Группировать) и присвойте новой группе имя Earth Orbit Помните, что для выделения группы нужно предварительно перейти в режим выделения иерархии. Опорная точка новой группы располагается в начале координат, то есть в центре объекта Sun.
2. Создайте ключ анимации для атрибута Rotate Y (Поворот относительно оси Y) группы Earth_Orbit в кадре № 1.
3. Установите ползунок таймера анимации на отметку кадра № 240, несколько раз поверните группу вокруг Солнца и создайте еще один ключевой кадр.
Вот уже три планеты в нашей сцене вращаются вокруг своей оси и движутся по орбитам вокруг Солнца. Вокруг одной из планет вращается спутник. Сохраните сцену, если вы еще этого не сделали.
Иерархические зависимости для
3.14. Иерархические зависимости для созданной вами модели Солнечной системы в окне диалога Outliner
В нижней части иерархии располагаются два спутника Марса — mars_moon и mars_ moon2. Каждый из них вращается вокруг собственной опорной точки, расположенной в геометрическом центре. Затем каждый из этих спутников был сгруппирован сам с собой. В результате появились узлы mars_moon_ orbit и mars_moon2_orbit. Их опорные точки были перемещены в центр сферы Mars, что дало возможность смоделировать движение по орбите.
Планета Марс, в свою очередь, вращается вокруг собственной опорной точки, но чтобы заставить ее двигаться вокруг Солнца, требуется еще одна. Кроме того, спутники должны перемещаться вместе с планетой. Поэтому нужно выделить объекты Mars, mars_moon и mars_moon2 и объединить их в группу. Опорная точка этой группы окажется в начале координат, в центре объекта Sun. Полученный в результате узел носит имя Mars_orbit. Он располагается наверху группы, то есть является предком по отношению к остальным узлам. Дочерние объекты наследуют все его преобразования.
Подобные типы иерархических цепочек встречаются в Maya довольно часто. Поэтому вы должны четко осознать, как они формируются, и изучить все приемы работы с ними.
Инкрементное сохранение
Инкрементное сохранениеВ процессе работы над проектом может возникнуть необходимость создания набора резервных копий сцены. Профессионалы обычно сохраняют результат своего труда после завершения каждой стадии. Ведь часто возникает ситуация, когда клиенты или художественный редактор выдвигают требования изменить ту или иную сцену. В этом случае наличие как можно большего числа резервных копий позволяет сэкономить время. В конце концов, файлы формата mb имеют не очень большой объем, а место на диске стоит не так уж дорого. Нужно только правильно систематизировать набор резервных копий, например, поместив файлы со старыми версиями сцены в отдельные папки. В Maya 6 существует возможность сохранения файлов с инкрементными именами, позволяющая сохранять сцену нужное количество раз. Нужно только включить эту функцию. В результате, если ваша работа будет неожиданно прервана, например, из-за зависания компьютера, вы сможете продолжить редактирование с наиболее поздней версии.
Для включения этой функции щелкните на квадратике, расположенном справа от команды Save Scene (Сохранить сцену) в меню File (Файл), и установите флажок IncrementalSave (Сохранение с возрастающими именами) в появившемся окне диалога. В результате внутри папки Scenes появится еще одна папка с именем текущего файла. В нес будут помещаться все сохраненные версии сцены, при этом к имени файла добавляется номер текущий копии, например planets_001.mb.
Все файлы сцен для проектов из этой книги находятся на прилагаемом к ней компакт-диске. Они представляют собой опорные материалы для каждой из стадий определенного проекта. Сравнивайте полученные результаты с нашими версиями, чтобы убедиться в том, что вы все сделали правильно. Кроме того, в следующих главах выполнение некоторых проектов будет начинаться именно с загрузки уже готового файла. При этом имена наших файлов отличаются от имен, присваиваемых при инкрсментном сохранении, например planets_vl.mb вместо planets_001.mb. Это устраняет возможность случайной записи одного файла поверх другого. При работе над реальными проектами иногда имеет смысл создавать резервные копии с помощью функции Save As (Сохранить как), в случае использования которой имена файлам присваиваются вручную. При этом желательно следовать единой системе именования. В дальнейшем это облегчит поиск нужных файлов. Также имеет смысл делать небольшие примечания, описывающие различия между отдельными версиями. Имейте в виду, что между названием файла и номером версии следует вставлять знак подчеркивания (_), а не пробел. Наличие пробелов может стать источником проблем во время работы с приложением, особенно на стадии визуализации.
Изменение параметров тора в окне диалога Attribute Editor
3.5. Изменение параметров тора в окне диалога Attribute Editor
6. Нажмите клавишу г, чтобы активизировать инструмент Scale (Масштабировать), и уменьшите размер тора по оси У практически до нуля. В результате должно получиться почти плоское кольцо.
7. Сейчас кольцо «касается» планеты. Вам же требуется получить зазор между планетой и кольцом. Этого можно добиться, изменив внутренний радиус тора.
8. Нажмите комбинацию клавиш Ctrl+a, чтобы открыть окно диалога Attribute Editor (Редактор атрибутов), и перейдите на вкладку makeNurbsTorusl (Рисунок 3.5).
9. Параметру Radius (Радиус) присвойте значение 1,5, а параметру Height Ratio (Отношение высоты к радиусу) — значение 0,25.
Итак, все планеты готовы. Пришла пора заняться моделированием спутников.
Примечание
ПРИМЕЧАНИЕ
Изменение исходных атрибутов объекта, которое вы только что проделали, часто называют параметрическим моделированием (parametric modelling).
Кольца Сатурна
Кольца СатурнаТеперь нужно смоделировать кольцо Сатурна:
1. Выберите в меню Create (Создать) команду NURBS Primitives > Torus (NURBS-при-митивы > Тор), чтобы получить объект, имеющий форму кольца. В режиме привязки к узлам сетки переместите его вдоль оси Xтаким образом, чтобы Сатурн оказался внутри кольца. Оба объекта должны иметь один и тот же центр.
2. Убедитесь в том, что тор по-прежнему выделен, и присвойте ему имя Ring.
3. Нажмите клавишу Пробея для перехода к четырехоконному представлению и разверните на весь экран окно проекции Perspective (Перспектива).
4. Нажмите клавишу F, чтобы поместить кольцо (а соответственно, и планету Сатурн) в центр окна проекции.
5. Нажмите клавишу 5 для перехода в режим показа тонированных оболочек объектов, а затем нажмите клавишу 3, чтобы максимально увеличить детализацию тора.
Моделирование объектов и их анимация
Моделирование объектов и их анимацияКак упоминалось в главе 1, подготовка анимации обычно делится на различные фазы. В рассматриваемом случае мы сначала создадим Солнце, планеты и их спутники, а потом займемся программированием их движения.
Назначение материалов
Назначение материаловСделаем планеты легко отличимыми друг от друга, назначив им простые материалы. Это можно сделать с помощью окна диалога Hypershade (Редактор узлов):
Некорректная иерархическая цепочка
3.15. Некорректная иерархическая цепочка, созданная для планеты Плутон
Обзор проекта «Солнечная система»
Обзор проекта «Солнечная система»Проект «Солнечная система» познакомит вас с процессом моделирования объектов и даст представление о таких элементах, как иерархические цепочки и опорные точки объектов. Как следует из названия проекта, нам предстоит создать аналог Солнечной системы.
Упражнения данной главы дадут возможность попрактиковаться в формировании иерархических цепочек и выделении объектов. Вы узнаете, как создать иерархическую связь и как выбрать в группе нужные узлы для получения корректной анимации.
Окно диалога Attribute Editor для материала Mercury_Color
3.8. Окно диалога Attribute Editor для материала Mercury_Color
Окно диалога Color Chooser
3.9. Окно диалога Color Chooser
Вид окна диалога Hypershade (Редактор узлов) после назначения материалам указанных цветов показан на Рисунок 3.10.
4. По очереди выделяйте планеты в окне проекции, щелкайте правой кнопкой мыши на имени соответствующего материала и выбирайте в появившемся меню команду Assign Material to Selection (Назначить материал выделенному объекту). Можно также средней кнопкой мыши перетащить материал из окна диалога Hypershade (Редактор узлов) на объект в окне проекции, хотя этим способом пользоваться не рекомендуется. Спутникам оставьте заданный по умолчанию серый цвет. Вид сцены после назначения материалов показан на Рисунок 3.11.
Итак, сцена полностью подготовлена к анимации. Сохраните файл. Благодаря включенной ранее функции сохранения с инкрементными именами, сцене будет присвоено новое имя. Теперь, если вы сделаете ошибку и потребуется восстанавливать анимацию, вам, по крайней мере, не нужно будет заново создавать планеты и назначать им материалы. Достаточно вернуться к последней сохраненной версии файла.
Окно диалога Hypershade после назначения всех материалов
3.10. Окно диалога Hypershade после назначения всех материалов
Окно диалога Hypershade
3.7. Окно диалога Hypershade
1. Выберите в меню Window (Окно) команду Rendering Editors > Hypershade (Редакторы визуализации > Редактор узлов). Появится окно, показанное на Рисунок 3.7. Обратите внимание на три загружающихся по умолчанию узла материалов.
2. Щелкните на значке Lambert (По Ламберту) на расположенной слева панели Create Maya Nodes (Создание узлов Maya). Новый узел появится одновременно на верхней и нижней вкладках окна диалога Hypershade (Редактор узлов). Щелкните на этом значке еще восемь раз, чтобы получить девять материалов на основе раскраски Lambert (По Ламберту).
3. Дважды щелкните на узле Iambert2, чтобы открыть для этого материала окно диалога Attribute Editor (Редактор атрибутов). В текстовое поле, расположенное в верхней части этого окна, введите имя Mercury_Color, чтобы однозначно указать, что этот материал предназначен для планеты Меркурий.
4. Присвойте и остальным материалам имена в соответствии с планетами, для которых они предназначены (Venus_Color, Earth_Color, Mars_Color, Jupiter_Color, Saturn_Color, Uranus_Color, Neptune_Color и Pluto_Color).
Совет
СОВЕТ
Для переименования узлов в окне диалога Hypershade (Редактор узлов) вовсе не обязательно каждый раз вызывать окно диалога Attribute Editor (Редактор атрибутов). Достаточно щелкнуть на узле правой кнопкой мыши и выбрать в появившемся меню команду Rename (Переименовать). Еще раз напоминаю вам о том, как важно выработать собственную систему именования и использовать значимые имена. Это позволит избежать рутинной работы по перебору десятков безымянных узлов с целью найти среди них нужный. После присвоения имен всем материалам сохраните сцену.
Теперь присвоим каждому из материалов свой цвет:
1. Дважды щелкните на узле Mercury_Color, чтобы открыть для этого материала окно диалога Attribute Editor (Редактор атрибутов) (Рисунок 3.8), если вы его уже закрыли.
2. Чтобы изменить цвет материала, щелкните на цветовом поле, расположенном рядом с именем атрибута Color (Цвет). Появится окно диалога Color Chooser (Выбор цвета), в котором с помощью ползунков Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность) выбирается нужный цвет. Введите в поля, расположенные слева от этих ползунков, значения 29,89, 0,788 и 0,5 соответственно (Рисунок 3.9).
3. Присвойте остальным материалам следующие цвета (табл. 3.3).
Таблица 3.3. Материалы для планет
Планета
Окно диалога New Project в операционной
3.1. Окно диалога New Project в операционной системе Windows. Для каждого проекта Maya автоматически создает новый набор файлов
Примечание
ПРИМЕЧАНИЕ
Файлы, содержащие информацию о сценах из упражнений, которые вам предстоит выполнять, можно найти на прилагаемом к книге компакт-диске. После создания каждого из проектов их имеет смысл скопировать в соответствующую папку на жестком диске вашего компьютера. Итак, займемся созданием нового проекта:
1. Введите в поле Name (Имя) окна диалога New Project (Новый проект) имя Solar_ System. В поле Location (Маршрут доступа) укажите маршрут доступа к папке, в которую будут сохранены файлы вашего проекта. По умолчанию в операционной системе Windows для этой цели используется папка My_Docu-ments\maya\projects. В операционной системе Мае это будет папка Home (/Users/ <ваше имя>), вложенная в папку Documents/Maya/projects/default. При желании можно поместить папку проекта на другой логический диск и держать ее отдельно от системных файлов. Это облегчает создание резервных копий. 2. В операционной системе Windows создайте папку Projects, воспользовавшись для этого, например, приложением Windows Explorer. В окне диалога New Project (Новый проект) щелкните на кнопке Browse (Просмотр) и выберите папку D:\Projects. Теперь достаточно щелкнуть на кнопке Use Defaults (По умолчанию), и все остальные поля будут заполнены автоматически (Рисунок 3.2). Щелкните на кнопке Accept (Принять).
Окно диалога Outliner
Окно диалога OutlinerПосмотрим, как же выглядит иерархия планет и спутников в окне диалога Outliner (Структура). Если объекты были сгруппированы корректно, вы увидите структуру сцены, подобную показанной на Рисунок 3.14. Выберите в меню Window (Окно) команду Outliner (Структура). Если вы не успели присвоить каким-то из планет и спутников значимые имена, исправьте этот недостаток.
В качестве примера рассмотрим иерархическую цепочку планеты Марс и двух ее спутников. Иерархические цепочки остальных планет с двумя спутниками имеют точно такую же структуру.
Перегруппировка объектов в окне диалога Outliner
3.16. Перегруппировка объектов в окне диалога Outliner
Вы только что добавили узел pluto_moon_orbit в группу PlutoJDrbit. Этот процесс называется формированием иерархической цепочки (parenting). Теперь осталось сделать узел pluto_moon_orbit родительским по отношению к узлу pluto_moon. Для этого средней кнопкой мыши перетащите узел pluto_ moon на узел pluto_moon_orbit. Теперь при воспроизведении анимации вы увидите, что спутник вращается вокруг Плутона, а оба они в то же время вращаются вокруг Солнца. И структура иерархической цепочки Плутона в окне диалога Outliner (Структура) ничем не отличается от структуры цепочек других планет.
Файл Planets_v3.mb, расположенный в папке ChapterFHes\Solar_System\scenes прилагаемого к книге компакт-диска, даст вам представление о том, как должна выглядеть сцена. Но сгруппированы и анимированы в ней только первые пять планет. Закончить работу над проектом вам предлагается самостоятельно.
Совет
СОВЕТ
Для удаления объекта из группы достаточно в окне диалога Outliner (Структура) перетащить его средней кнопкой мыши за пределы группы
Планирование
ПланированиеПриступать к работе без хорошего плана действий не имеет смысла. Чем больше информации по теме проекта вы соберете, тем достоверней будет результат. В данном случае важно узнать, где по отношению к Солнцу и к остальным элементам Солнечной системы располагается каждая из планет и сколько спутников она имеет.
Известно, что Солнце располагается в центре системы. Вокруг него вращаются Меркурий, Венера, Земля, Марс, Юпитер, Сатурн, Уран, Нептун и Плутон. Орбита вращения каждой из этих планет представляет собой эллипс, но в нашем случае для простоты решения они будут вращаться по окружности. Большинство планет имеет один или несколько спутников, а одна из них «украшена» большими кольцами (табл. 3.1).
Таблица 3.1. Планеты и спутники
Планета
| Назад |
Подведем итоги
Подведем итогиСозданная в этой главе анимация планет представляет собой наложение друг на друга простых движений для получения сложного. Подобный подход позволяет сделать анимацию более наглядной и в общем случае получить более качественный результат. При работе над анимацией большая часть времени тратится на редактирование нюансов движения. Ведь именно нюансы делают сцену достоверной. Скоро вы убедитесь в том, что на создание заготовки сцены уходит 15 % от всего времени работы над ней. Оставшиеся 85 % времени уходят на доведение сцены до совершенства.
Привязки
ПривязкиТеперь пришло время воспользоваться привязками (табл. 3.2).
Таблица 3.2. Кнопки для работы с привязками
Значок
1. Выделите первую планету Mercury и щелкните на кнопке Snap to Grids (Привязка к сетке) в строке состояния.
2. Точка схода управляющих векторов преобразования Move (Переместить) превратится из квадрата в круг, указывая на включенный режим привязки. Перетащите объект Mercury вправо или влево вдоль оси Хдо ближайшего узла координатной сетки.
3. Проделайте описанную операцию с остальными планетами, стараясь сохранять между ними интервал в две клетки. Солнце двигать не надо, так как оно уже находится в точке пересечения линий сетки.
Редактирование иерархических цепочек в окне диалога Outliner
Редактирование иерархических цепочек в окне диалога OutlinerВ рассматриваемом случае вполне может возникнуть ситуация, когда планета начинает вращаться вокруг Солнца без одного или обоих своих спутников. Сейчас в сцене остается статичным только Плутон с его спутником. Намеренно сделаем ошибку в формировании иерархической цепочки, чтобы узнать, как ее можно скорректировать в окне диалога Outliner (Структура).
Выделите Плутон и выполните следующие действия:
1. Заставьте Плутон вращаться вокруг своей оси.
2. Заставьте его спутник также вращаться вокруг своей оси.
3. Сгруппируйте спутник с самим собой и в режиме привязки к координатной сетке поместите опорную точку группы в центр Плутона. Затем заставьте спутник вращаться вокруг планеты.
Итак, все готово для группировки Плутона и его спутника и анимации их движения вокруг Солнца.
4. Именно теперь вы сделаете ошибку. В режиме выделения объектов выделите сферу pluto_moon, а затем — сферу Pluto. Ошибка состоит в том, что вы забыли перейти в режим выделения иерархии.
5. Выберите в меню Edit (Правка) команду Group (Группировать) и присвойте новой группе имя Pluto_Orbit.
6. Заставьте группу Pluto_Orbit вращаться вокруг Солнца.
7. Запустите воспроизведение анимации.
Обратите внимание на то, что спутник перестал вращаться вокруг планеты. Это Вызвано тем, что вы забыли включить объект ptuto_moon_orbit в группу Pluto_Orbit. Именно в этом узле хранится информация о движения спутника по орбите планеты. А так как он не присоединен к узлу-предку Pluto_Orbit, это движение просто игнорируется.
На Рисунок 3.15 показано отличие иерархической цепочки Плутона от цепочек остальных планет. Там четко видно, что узел, управляющий вращением спутника, оставлен за пределами группы. Окно диалога Outliner (Структура) позволяет легко решить эту проблему. Достаточно поместить узел pluto_ moon_orbit под узлом Pluto_Orbit. Убедитесь в том, что ползунок таймера анимации стоит на отметке Первого кадра, и средней кнопкой мыши перетащите узел pluto_ moon_orbit вниз (Рисунок 3.16). Когда под именем узла Pluto_Orbit появится черная черта, а указатель мыши изменит форму, отпустите кнопку мыши.
Результат перемещения опорной
3.13. Результат перемещения опорной точки объекта Moon_Orbit в центр сферы Earth
7 Снова нажмите клавишу Insert, чтобы вернуться в режим редактирования объекта и убедившись, что ползунок таймера анимации стоит на отметке кадра № 1 создайте ключ анимации для параметра Rotate Y (Поворот относительно оси Y) Установите ползунок таймера анимации на отметку кадра № 240, поверните Луну вокруг Земли и создайте еще один ключевой кадр.
Сохранение сцены
Сохранение сценыСохраните результат своего труда. Желательно, чтобы регулярное сохранение сцен вошло у вас в привычку. Падение напряжения и прочие непредвиденные обстоятельства случаются не очень часто, но тем не менее от них никто не застрахован. Функция инкрементного сохранения (сохранение с возрастающими именами) позволяет создать резервные копии для каждой из стадий работы над сценой. Так как в данном случае вы начали новый проект, окно диалога Save As (Сохранить как) предложит вам сохранить файл в папку Scenes текущего проекта. Присвойте сцене имя planets.mb. Если вы работаете с версией Maya PLE, сохраните файл в формате mp.
Чтобы посмотреть наш вариант сцены, откройте файл Planets_vl.mb, расположенный в папке ChapterFHes\Solar_System\scenes прилагаемого к книге компакт-диска.
Создание группы и изменение положения опорной точки
Создание группы и изменение положения опорной точкиВы уже знаете, что все объекты в Maya имеют опорную точку, которая является центром преобразований поворота и масштабирования. Именно она определяет координаты объекта. Возникает вопрос — как заставить Меркурий вращаться вокруг Солнца, если опорная точка объекта Mercury располагается в его геометрическом центре?
Логичным действием кажется перемещение опорной точки сферы Mercury в центр объекта Sun, но при этом она уже не сможет вращаться вокруг своей оси. Вам требуется создать новую опорную точку с помощью нового, родительского узла. Информацию об узлах и иерархических цепочках вы получили в главе 2.
Итак, приступим к созданию новой опорной точки.
1. Убедитесь в том, что объект Mercury по-прежнему выделен, и выберите в меню Edit (Правка) команду Group (Группировать). В верхней части окна диалога Channel Box (Окно каналов) появится имя нового узла — groupl. Обратите внимание на то, что управляющие векторы преобразования Rotate (Повернуть) переместились из центра сферы Mercury в начало координат (Рисунок 3.12).
Создание планет
Создание планетЗаймемся созданием планет.
1. Создайте еще одну NURBS-сферу и присвойте ей имя Mercury.
2. Меркурий является одной из самых маленьких планет. Меньше его только Плутон. Поэтому введите в поля Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) окна диалога Channel Box (Окно каналов) значение 0,2.
3. Нажмите клавишу w, чтобы активизировать инструмент Move (Переместить), и слегка переместите новую сферу в положительном направлении оси X. Для этого нужно щелкнуть на красной стрелке и перетащить указатель мыши вправо. В результате расстояние между Солнцем и Меркурием должно равняться двум квадратикам координатной сетки.
4. Повторите шаги 1-3 для создания остальных планет. Вот значения параметров Scale (Масштабирование), которые нужно использовать:
Венера — 0,5;
Земля — 0,5;
Марс — 0,4;
Юпитер— 1,0;
Сатурн - 0,9;
Уран - 0,7;
Нептун — 0,7;
Плутон —0,15.
Разумеется, это далеко не точные пропорции планет Солнечной системы, однако в нашем случае особая точность и не требуется. Результат, который вы должны получить, показан на Рисунок 3.4.
Создание проекта
Создание проектаНачнем с создания нового проекта. Выберите в меню File (Файл) команду Project > New (Проект > Создать), чтобы открыть окно диалога New Project (Новый проект) (Рисунок 3.1). Файлы Maya сохраняются определенным способом. На верхнем уровне находится папка проекта, содержащая набор вложенных папок с файлами. Среди них есть папки Scenes и Images. В первой хранятся файлы, содержащие всю информацию о сцене, а во второй — изображения, полученные в результате визуализации.
Создание Солнца и планет
Создание Солнца и планетНачнем мы с создания Солнца и планет:
1. Выберите в меню File (Файл) команду New Scene (Создать сцену). Появится окно диалога с вопросом, хотите ли вы сохранить текущую сцену. Щелкните на кнопке Yes (Да), если хотите сохранить этот файл.
2. Перейдите к четырехоконному представлению, поместите указатель мыши над окном проекции Тор (Вид сверху) и нажмите клавишу Пробел, чтобы развернуть это окно на весь экран.
3. Чтобы создать Солнце, выберите в меню Create (Создать) команду NURBS Primitives > Sphere (NURBS-примитивы > Сфера). В начале координат появится сфера. Именно эта точка станет центром нашей Солнечной системы.
4. Выделите строчку nurbsSpherel в верхней части окна диалога Channel Box (Окно каналов) и присвойте объекту имя Sun.
Не забывайте о том, что в Maya большое значение имеет регистр букв. Соответственно, названия sun и Sun могут принадлежать разным объектам.
Совет
СОВЕТ
Присваивать объектам значимые имена лучше всего в момент их появления в сцене. Это значительно упрощает операции с файлом, особенно в случае групповой работы над проектом. 5. Нажмите клавишу г, чтобы активизировать инструмент Scale (Масштабировать), и равномерно увеличьте размер сферы примерно в четыре раза. Если вы хотите получить точный результат, введите в поля Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) окна диалога Channel Box (Окно каналов) значение 4 (Рисунок 3.3). С помощью манипуляторов подобной точности достичь практически невозможно.
Создание спутников
Создание спутниковТеперь нужно создать еще один набор NURBS-сфер, которые будут выполнять функции спутников. Упростим сцену, ограничившись двумя спутниками для каждой из имеющих их планет. Впрочем, при желании вы можете смоделировать все спутники, указанные в таблице.
Начнем со спутника Земли:
1. Создайте NURBS-сферу и уменьшите ее размер примерно до половины размера Земли с помощью манипуляторов преобразования Scale (Масштабировать). В данном случае точный размер не имеет значения, поэтому его вполне допустимо оценить на глаз.
2. Щелкните на кнопке Snap to Grids (Привязка к сетке) в строке состояния, чтобы отключить функцию привязки к сетке, так как в данном случае она не понадобится. Активизируйте инструмент Move (Переместить) и поместите сферу на расстояние, равное примерно половине квадратика координатной сетки.
3. Создайте остальные спутники, также размещая их на расстоянии, равном половине квадратика координатной сетки, от соответствующих планет.
4. Закончив создание и размещение спутников, выделите все элементы сцены и нажмите клавишу 3, чтобы максимально увеличить их детализацию. Вид сцены в окне проекции Perspective (Перспектива) показан на Рисунок 3.6.
Терминология
ТерминологияСловосочетание «группировка узла А под узлом В» означает, что узел А требуется сделать дочерним по отношению к узлу В. Соответственно, узел В становится предком по отношению к узлу А. Это также означает, что узел А унаследует любые преобразования узла В.
Если группировке подвергаются одновременно узел А и узел В, они оба становятся потомками нового узла С, который принято называть пулевым узлом (null node). Группируются объекты их одновременным выделением и последующим выбором команды Group (Группировать) в меню Edit (Правка).
Процесс формирования иерархических цепочек (parenting) приводит к размещению первого выделенного узла под вторым. Например, если вы выделили узел А, а затем при нажатой клавише Shift выделили узел В и выбрали в меню Edit (Правка) команду Parent (Сделать родителем), узел А окажется дочерним по отношению к узлу В. Эта процедура аналогична перетаскиванию узлов средней кнопкой мыши в окне диалога Outliner (Структура).
Установка ключевых кадров
Установка ключевых кадровУстановить ключевые кадры можно разными способами. Чтобы лучше познакомиться с этой функцией, щелкните на квадратике, расположенном справа от команды Set Key (Создать ключ) в меню Animate (Анимация). Появится окно диалога Set Key Options (Параметры создания ключей).
Если просто выбрать команду Set Key (Создать ключ) в меню Animate (Анимация), ключ анимации будет создан для всех допускающих это атрибутов. На первый взгляд может показаться, что это удобно, но на самом деле в большинстве случаев такой подход не имеет практического смысла.
Ключи анимации для атрибутов, которые не меняются во времени, приводят к появлению лишних функциональных кривых и перегружают сцену. По умолчанию переключатель Set Keys On (Создавать ключ) стоит в положении All Manipulator Handles and КеуаЫе Attributes (Все управляющие векторы и атрибуты, допускающие создание ключей). Установите его в положение АИ КеуаЫе Attributes (Атрибуты, допускающие создание ключей анимации). Переключатель Channels (Каналы) установите в положение From Channel
Box (Из окна каналов). Теперь выбор команды Set Key (Создать ключ) в меню Animate (Анимация) будет приводить к созданию ключей анимации только для выделенных вами в окне диалога Channel Box (Окно каналов) каналов. Сохраните сделанные настройки, выбрав в меню Edit (Правка) окна диалога Set Key Options (Параметры создания ключей) команду Save Settings (Сохранить настройки), и щелкните па кнопке Close (Закрыть).
Вид планет после назначения материалов
3.11. Вид планет после назначения материалов
Вид Солнечной системы после создания всех планет и спутников
3.6. Вид Солнечной системы после создания всех планет и спутников
Вид выровненных по одной линии
3.4. Вид выровненных по одной линии NURBS-сфер, соответствующих планетам Солнечной системы
Если окажется, что один из
ВНИМАНИЕЕсли окажется, что один из спутников не вращается вокруг своей планеты или прекратил вращение вокруг своей оси, значит, вы допустили ошибку при группировке. Воспользуйтесь функцией Undo (Отмена), чтобы разорвать связь между объектами, и произведите группировку заново.
Вращение Меркурия
Вращение Меркурия
Заставим Меркурий вращаться!
1. Выделите объект Mercury и нажмите клавишу е, чтобы активизировать инструмент Rotate (Повернуть). Разверните окно проекции Perspective (Перспектива) на весь экран и нажмите клавишу f, чтобы увеличить изображение планеты.
2. Убедитесь в том, что ползунок таймера анимации стоит на отметке первого кадра.
3. Меркурий будет вращаться вокруг оси У. Выделите канал Rotate Y (Поворот относительно оси Y) в окне диалога Channel Box (Окно каналов) и выберите в меню Animate (Анимация) команду Set Key (Создать ключ). Выделенный атрибут окрасится в оранжевый цвет, указывая на то, что для него создан ключ анимации. Если бы вы оставили заданные по умолчанию параметры инструмента Set Key (Создать ключ), ключи анимации были бы созданы для всех указанных в окне диалога Channel Box(Окно каналов) каналов.
4. Установите ползунок таймера анимации на отметку кадра № 240. Сделайте полный оборот сферы вокруг оси Y, воспользовавшись зеленым управляющим кольцом.
5. Убедитесь в том, что канал Rotate Y (Поворот относительно оси Y) в окне диалога Channel Box (Окно каналов) по-прежнему выделен, и снова выберите в меню Animate (Анимация) команду Set Key (Создать ключ).
6. Чтобы посмотреть на полученный результат, подвигайте ползунок таймера анимации. Для этого щелкните на временной шкале и, удерживая левую кнопку мыши нажатой, перетаскивайте указатель. Вы увидите, что Меркурий вращается вокруг своей оси.
Такое количество действий для создания всего двух ключей анимации может показаться избыточным, но вспомните, что пока вы не прибегаете к клавиатурным комбинациям и контекстным меню. С ними вы познакомитесь при анимации следующей планеты.
Итак, Меркурий вращается вокруг своей оси. Так как у него нет ни одного спутника, осталось заставить его вращаться вокруг Солнца.
Заполненное окно диалога New Project
3.2. Заполненное окно диалога New Project
Сколько места на диске вам потребуется, зависит исключительно от проекта. Сами по себе файлы сцены обычно занимают не очень большой объем, а вот сотни визуализированных кадров могут занять значительное пространство. Для данного проекта достаточно 10-15 Мбайт.
Совет
СОВЕТ
Переход от одного проекта к другому легко выполняется с помощью команды Project > Set (Проект > Набор) из меню File (Файл). Эта команда позволяет также выбирать место для нового проекта. В результате приложение будет использовать указанную вами папку до тех пор, пока вы не перейдете к работе над другим проектом.
Значение параметров Scale для
3.3. Значение параметров Scale для объекта Sun в окне диалога Channel Box
Новые возможности в Maya 6
Атрибуты размещения плоскости
4.20. Атрибуты размещения плоскости изображения в окне диалога Attribute Editor
Совет
СОВЕТ
Если плоскость изображения в окне проекции не видна, вызовите меню Show (Показать) этого окна и убедитесь в наличии галочки рядом с командой Cameras (Камеры).
Благодаря включенной истории конструирования
4.18. Благодаря включенной истории конструирования форма поверхности, полученной методом лофтинга, будет меняться при изменении положения или формы исходных кривых
Подобная техника работает вне зависимости от метода создания поверхностей. Наличие истории конструирования позволяет, например, деформировать набор поверхностей, не разрывая связей между ними.
Тогда, может быть, имеет смысл все время фиксировать данные о создании объектов? К сожалению, сохранение истории конструирования всех объектов увеличивает размер выходного файла и замедляет работу над сценой. Поэтому обычно после завершения работы над объектом историю его конструирования удаляют.
Для этого достаточно выделить нужную поверхность и выбрать в меню Edit (Правка) команду Delete by Type » History (Удалить объекты типа * История). Вы можете также удалить историю конструирования всех объектов сцены, воспользовавшись командой Delete All by Type > History (Удалить все объекты типа > История).
Четыре пересекающиеся кривые (слева)
4.14. Четыре пересекающиеся кривые (слева) и созданная на их основе поверхность (справа)
две вертикальные кривые, нарисованные напротив друга друга, которые определяют боковые границы будущей поверхности. Соответственно, две горизонтальные кривые определяют верхнюю и нижнюю границы. Эти кривые вовсе не обязаны принадлежать одной плоскости, они могут произвольным образом располагаться в пространстве. Порядок их выделения не имеет особого значения, но лучше всего выделять их попарно. На Рисунок 4.14 показаны набор пересекающихся кривых и полученная на их основе поверхность.
Для получения поверхности подобным методом достаточно создать четыре пересекающиеся кривые, выделить их и выбрать в меню Surfaces (Поверхности) команду Boundary (Граница). Этим способом часто моделируются объекты, имеющие определенную форму, например складной верх автомобиля.
Чтобы разделить оба контура на
4.28. Чтобы разделить оба контура на четыре части, нужно выделить угловые точки каждого из них
6. Выделите все кривые и осуществите их перестроение. Для этого щелкните на квадратике, расположенном справа от команды Rebuild Curve (Перестройка кривой) в меню Edit Curves (Правка кривых), и введите в поле Number of Spans (Число интервалов) значение 20. Щелкните на кнопке Rebuild (Перестроить) и обратите внимание на изменившийся вид кривых. Перейдите в режим редактирования под объектов и верните кривым первоначальную форму перемещением управляющих вершин.
7. С помощью инструмента Boundary (Граница) создайте боковые поверхности.
8. Теперь воспользуемся немного другим методом. Удалите исходные кривые, оставив только две вновь созданные плоскости задней части обуха.
В результате для создания боковых поверхностей методом лофтинга вам потребуется использовать изопараметрические кривые.
Дублирование кривых
Дублирование кривыхТопору нужно придать толщину. Для этого вам потребуется копия его контура:
1. Выделите кривую и выберите в меню Edit (Правка) команду Duplicate (Дублировать). В итоге в сцене будет выделена копия исходной кривой.
2. Слегка переместите копию в отрицательном направлении оси Z(pnc. 4.22). Обратите внимание на то, что у обоих контуров опорная точка располагается в начале координат.
3. Чтобы поместить опорную точку в центр топора, выделите оба контура и выберите в меню Modify (Изменить) команду Center Pivot (Центрировать опорную точку).
Две полученные методом лофтинга
4.15. Две полученные методом лофтинга поверхности, между которыми находятся две кривые
Формирование лезвия выдвижением
4.23, Формирование лезвия выдвижением вперед управляющих точек центральной копии
Готовая алебарда
4.34. Готовая алебарда
В режиме каркасного отображения можно заметить, что некоторые поверхности имеют пурпурный цвет. Это означает наличие у выделенного объекта выходных связей с объектом, имеющим пурпурный цвет. В большинстве случаев это история конструирования. Если поверхность или объект имеет окончательный вид, можно без проблем удалить все входные связи. В случае ошибки достаточно нажать комбинацию клавиш Ctrt+z, которая является аналогом функции Undo (Отмена).
Инструмент Sculpt Surfaces Tool
4.38. Инструмент Sculpt Surfaces Tool позволяет менять форму поверхности путем рисования на ней. Сбоку показано окно диалога с параметрами кисти
(Правка NURBS). Появившееся при этом окно диалога придется вызывать очень часто, так как оно позволяет менять параметры кисти.
После этого указатель мыши изменит форму (Рисунок 4.38). Буквосочетание внутри красного круга обозначает тип кисти, используемый в данный момент. Если красные линии направлены из круга, а внутри вы видите буквы Ps, значит, это надавливающая кисть (от англ. Push — давление, нажим), движения которой оставляют на поверхности вмятины. Черная стрелка, указывающая на центр сферы, является мерой параметра Max Displacement (Максимальное смещение), который задает силу надавливания на поверхность под действием указателя мыши. Чем меньше его значение, тем слабее кисть будет действовать на поверхность.
Примечание
ПРИМЕЧАНИЕ
Ползунок Opacity (Непрозрачность) также задает силу действия кисти, но более деликатно, чем параметр Max Displacement (Максимальное смещение). Если сравнивать воздействие указателя мыши со штрихами кисти, этот параметр соответствует количеству краски. Но в данном случае числовое значение задает не цвет, а силу воздействия на поверхность. 3. Щелкните на поверхности сферы и протащите указатель мыши в сторону, чтобы посмотреть, как при этом деформируется поверхность. Используйте параметр Max Displacement (Максимальное смещение) для задания силы нажатия кисти, а параметры Radius (U) (Максимальный радиус) и Radius (L) (Минимальный радиус) — для задания размера кисти.

4. Установите переключатель Operation (Операция) в положение Pull (Вытаскивать). В центре указателя мыши появятся буквы Р1, а красные линии появятся в центре круга. Теперь движения указателя будут формировать выпуклости.
5. Если установить переключатель Operation (Операция) в положение Smooth (Сглаживать), движения указателя мыши будут сглаживать переход между выступающими областями и впадинами. Установка переключателя в положение Erase (Стирать) убирает ранее созданные деформации, возвращая поверхность в исходное положение.
Чем больше деталей вы собираетесь моделировать этим способом, тем сильнее должно быть разбиение поверхности на интервалы. Если «раскраске» подвергается только определенная область, ее детализацию можно увеличить, вставив дополнительные изопараметрические кривые с помощью команды Insert Isoparams (Вставить изопараметрическую кривую) из меню Edit NURBS (Правка NURBS). Имейте в виду, что изменение степени детализации поверхности после начала работы с инструментами типа Artisan (Кисти) приведет к потере уже полученных результатов.
Исходная кривая и полученный из
4.13. Исходная кривая и полученный из нее методом выдавливания со скосом объект. Отверстие внутри объекта было закрыто плоскостью, полученной с помощью инструмента Planar
Использование инструментов модуля Artisan
Использование инструментов модуля ArtisanВы можете моделировать форму NURBS-поверхности с помощью указателя мыши, словно лепя ее из глины. Для этой цели в Maya существует набор инструментов Artisan (Кисти).
Модуль Artisan (Кисти) представляет собой набор кистей, дающих пользователю возможность рисовать непосредственно на поверхности. Например, инструмент Sculpt Surfaces Tool (Инструмент моделирования поверхностей) перемещает управляющие точки, позволяя таким способом вылепить из поверхности нужный объект.
1. В режиме показа тонированных оболочек объектов разверните на весь экран окно проекции Perspective (Перспектива). Создайте NURBS-сферу и откройте окно диалога Attribute Editor (Редактор атрибутов). На вкладке makeNurbsSpherel введите в поле Sections (Секций) значение 24, а в поле Spans (Интервалов) — значение 12. В данном случае чем более детализированной является поверхность, тем лучше будет проходить ее редактирование.
2. Выделите сферу и щелкните на квадратике, расположенном справа от команды Sculpt Surfaces Tool (Инструмент моделирования поверхностей) в меню Edit NURBS
Использование примитивов
Использование примитивовПримитивами (primitives) называются простейшие объекты, которые можно создать в Maya, как, впрочем, и в любом другом приложении подобной направленности. Примитивы представляют собой простые геометрические формы, созданные на основе полигональных сеток, NURBS-поверхностей или поверхностей с иерархическим разбиением. Обычно они используются в качестве основы для более сложных моделей. Пример такого подхода вы уже видели в предыдущей главе при формировании колец Сатурна.
Объекты-примитивы предоставляют пользователю потрясающую возможность проявить талант скульптора (путем перемещения управляющих или обычных вершин), так как детализацию их поверхности он задает самостоятельно. Вы можете создать полигональный примитив с практически произвольным уровнем разбиения, в явном виде указав число его вершин и граней. Соответственно, NURBS-примитивы могут быть созданы с произвольным числом интервалов путем указания количества изопараметрических кривых и управляющих вершин.
Из объектов-примитивов можно получить сложные и детализированные модели, поэтому моделируемые объекты имеет смысл анализировать на предмет совпадения с формой одного из существующих примитивов. На рис, 4.6 показаны все объекты-примитивы, существующие в Maya, — NURBS-примитивы, полигональные примитивы, примитивы на основе поверхностей с иерархическим разбиением и появившиеся только в текущей версии объемные примитивы. Последние, в отличие от стандартных примитивов, используются в освещении сцены и при создании атмосферных эффектов, например тумана.
История конструирования поверхностей
История конструирования поверхностейВ главе 2 рассказывалось о кнопке Construction History (История конструирования) в строке состояния. История конструирования представляет собой последовательность изменения объектов. Фиксация этой кнопки при создании объектов-примитивов дает доступ к их исходным параметрам.
Если вы фиксируете историю конструирования в процессе создания NURBS-поверхностей, редактирование любой из исходных кривых будет приводить к изменению формы соответствующей поверхности. Например, объект, который вы только что создали методом лофтинга, будет менять свою форму при любых перемещении или деформации исходных кривых. Если переместить одну из исходных поверхностей и немного повернуть ее назад, центральная поверхность изменит свою форму, чтобы сохранить соединение.
Так как центральная поверхность методом лофтинга была сформирована на основе изопараметрических кривых двух существующих поверхностей, соединение сохранится вне зависимости от перемещения этих кривых (Рисунок 4.18).
Изменение положение копии исходного контура
4.22. Изменение положение копии исходного контура
Совет
СОВЕТ
Если после выполнения команды Duplicate (Дублировать) (или любой другой) вы получили странные результаты, откройте окно диалога с параметрами этой команды и выберите в меню Edit (Правка) этого окна команду Reset Settings (Сбросить настройки).
Команда Attach Surface соединяет
4.35. Команда Attach Surface соединяет поверхность вдоль выделенных изопараметрических кривых
Команда Detach Surfaces разрезает
4.36. Команда Detach Surfaces разрезает поверхность вдоль выделенной изопараметрической кривой
Совет
СОВЕТ
Если в месте предполагаемого разрыва отсутствует изопараметрическая кривая, достаточно щелкнуть на любой видимой изопараметрической кривой и перетащить ее в нужное место. Это будет вполне корректная кривая, просто она не участвует в разбиении поверхности на интервалы.
| Назад |
Комбинации различных техник
Комбинации различных техникПри создании конкретных моделей часто приходится применять комбинации различных техник. Например, если по ходу моделирования вам требуется кривая, можно воспользоваться изопараметрической кривой, уже принадлежащей этой поверхности.
Рассмотрим, например, пару поверхностей, полученных методом лофтинга, которые требуется соединить друг с другом при помощи еще одной поверхности. Для выполнения этой задачи имеет смысл сделать объекты полупрозрачными. Это позволит лучше видеть происходящее. Выберите в меню Shading (Затенение) окна проекции Perspective (Перспектива) команду Shade Options > X-Ray (Параметры затенения > Рентген). Вам нужно выделить изопараметрическую кривую, принадлежащую первой поверхности, затем обе независимые кривые и, наконец, изопараметрическую кривую, принадлежащую второй поверхности.
1. Создайте методом лофтинга две поверхности, подобные показанным на Рисунок 4.15, или загрузите файл Lofting_Exercise_l.ma из папки ChapterFiles\Lofting_ Exercise\scenes прилагаемого к книге компакт-диска.
2. Для выделения первой изопараметрической кривой нужно перейти в режим выделения подобъектов. Щелкните на поверхности правой кнопкой мыши и выберите в появившемся меню команду Isoparams (Изопараметрические кривые).
Кривая Безье и ее компоненты
4.3. Кривая Безье и ее компоненты
В то время как управляющие точки контролируют кривизну сплайна Безье, сами сплайны, называемые изопараметрическими кривыми (isoparams), определяют Кривизну NURBS-поверхности (Рисунок 4.4). Расстояние между двумя изопараметрическими кривыми называется интервалом (span). Чем больше количество интервалов, тем более детализированной является поверхность. Однако имейте В Виду, что наличие в сцене поверхностей с высокой детализацией замедляет процесс визуализации.
Криваяпрофиль и результат ее поворота
4.9. Кривая-профиль и результат ее поворота на 360° вокруг оси Y
Криваяпрофиль представляет собой
4.10. Кривая-профиль представляет собой изображение латинской буквы I, а кривая путь — просто линию, изогнутую по направлению к камере
Метод лофтинга
Метод лофтингаЧаще всего поверхности создаются методом лофтинга, для которого требуется по меньшей мере две кривые. Поверхность формируется между этими кривыми, причем ее направление зависит от порядка их выделения. Пример полученной таким способом поверхности показан на Рисунок 4.7.
Метод вращения
Метод вращенияВ основе поверхностей, получаемых методом вращения, лежит единственная кривая, которую вращают вокруг точки в пространстве. Начинается процесс с создания кривой-профиля, которая затем поворачивается на угол от 0 до 360°. Вращение обычно происходит вокруг опорной точки объекта, которая располагается в начале координат, но может быть и смещена, как вы могли убедиться в предыдущей главе. Слева на Рисунок 4.9 показана кривая-профиль для винного бокала, а справа представлен готовый объект, полученный вращением этой кривой вокруг оси У.
Потренируемся в создании поверхности методом вращения:
1. Нарисуйте кривую.
2. Выделите ее и выберите в меню Surfaces (Поверхности) команду Revolve (Вращение).
Данный метод используется для создания таких объектов, как бутылки, ножки мебели или бейсбольные биты, то есть симметричных предметов.
Метод выдавливания со скосом
Метод выдавливания со скосомФункция выдавливания со скосом формирует поверхность как из открытых, так и из замкнутых кривых. Она отличается от обычной операции выдавливания изменением контура, приводящим к появлению кромки (Рисунок 4.13). Ребра этой кромки можно сделать как сглаженными, так и острыми.
Многочисленные параметры инструмента Bevel (Скос) позволяют контролировать размер скоса и глубину выдавливания. Сформированные таким методом объекты имеют отверстие в центре, которое легко можно закрыть участком плоскости, полученным с помощью инструмента Planar (Пленарный).
Вот как на практике выглядит процесс создания поверхности со скосом:
1. Нарисуйте кривую.
2. Выберите в меню Surfaces (Поверхности) команду Bevel (Скос).
В Maya существует аналогичный инструмент Bevel Plus (Усовершенствованный скос). Он отличается наличием дополнительных параметров, позволяющих формировать более сложные кромки. Данный метод замечательно подходит для создания трехмерных букв и таких объектов, как бутылочные пробки или пуговицы. Кроме того, он позволяет легко сгладить резкие кромки.
Метод выдавливания
Метод выдавливанияДля получения поверхности методом выдавливания требуются две кривые — кривая-профиль и кривая-путь. Первая представляет собой сечение требуемой поверхности. Затем она выдавливается вдоль кривой-пути. Чем больше количество управляющих точек на каждой кривой, тем более детализированной получится итоговая поверхность. На Рисунок 4.10 показаны исходные кривые, а на Рисунок 4.11 изображена поверхность, полученная на их основе.
Методом выдавливания была получена
4.11. Методом выдавливания была получена изогнутая труба в форме буквы I
Попрактикуемся в создании поверхности методом выдавливания:
1. Нарисуйте две кривые.
2. Выделите кривую-профиль.
3. При нажатой клавише Shift выделите кривую-путь.
4. Выберите в меню Surfaces (Поверхности) команду Extrude (Выдавить).
Этим методом создаются такие объекты, как извилистые туннели, шланги для полива, пружины или занавески.
Методы моделирования
Методы моделированияПри создании объекта первым делом важно разобраться в его структуре. Для аниматора лучшей тренировкой являются попытки мысленно разбить моделируемый предмет на составные части. Этот способ помогает перевести процесс воссоздания объекта в термины трехмерной графики. Обычно сначала моделируются отдельные элементы, которые позже соединяются в одно целое. Соберите как можно больше информации об объекте, который вы собираетесь моделировать. Сфотографируйте его с разных сторон, измерьте и запишите точные габариты и даже сделайте подробное описание объекта. Попытайтесь нарисовать его на бумаге или вылепить из пластилина. Предназначенный для моделирования инструментарий Maya широк и разнообразен, поэтому важно правильно выбрать наиболее подходящий метод воссоздания объектов. Также нужно правильно выбрать уровень детализации модели. Это очень важный вопрос, так как слишком подробная детализация увеличивает время обсчета сцены, а соответственно, и время визуализации.
Для начала определитесь с местом модели в пространстве. Например, рассмотрим две сцены, показанные на Рисунок 4.1. Если скамейка будет видна только издали, как показано на левом изображении, не имеет смысла тратить время на создание таких деталей, как, например, желобки на подлокотнике. Но если планируется продемонстрировать скамейку крупным планом, без этой детали не обойтись.
Моделирование с помощью деформаторов
Моделирование с помощью деформаторовДчформаторами называются инструменты, предназначенные для изменения формы объектов. В то время как перемещения управляющих вершин вызывают изменение формы отдельных участков, деформаторы меняют вид всего объекта. Вам часто придется прибегать к таким деформаторам, как Bend (Изгиб) или Flare (Выпуклость), и вы убедитесь, насколько удобными и мощными инструментами они Являются. Более подробную информацию о работе с ними вы найдете в главе 6.
А пока мы изменим форму обуха с помощью деформатора Flare (Выпуклость):
1. Выделите две боковые грани. Благодаря фиксации истории конструирования деформации этих граней скажутся на состоянии соединяющих их поверхностей, полученных методом лофтинга.
2. Нажмите клавишу F2 для перехода в режим Animation (Анимация).
3. Выберите в меню Deform (Деформация) команду Create Nonlinear > Flare (Создать нелинейную > Выпуклость). Появившийся деформатор имеет цилиндрическую форму.
4. Поверните его на 90° вокруг оси Z.
5. Откройте окно диалога Attribute Editor (Редактор атрибутов), нажав комбинацию клавиш Ctrl+a. Перейдите на вкладку flarel и введите в поле Start Flare 7. (Начало выпуклости по оси Т) значение 0,02, а в поле High Bound (Верхняя граница) — значение 0,5.
Начало работы над проектом
Начало работы над проектомСоздайте новый проект axe_model. Если бы вам пришлось работать над реальным проектом, потребовался бы сбор справочной информации, например фотографий, на основе которых вы смогли бы выработать дизайн алебарды. Обычно такие фотографии помещаются в папку sourceimages вашего проекта. Но в данном случае вы сможете найти все сопутствующие материалы на прилагаемом к книге компакт-диске.
В качестве образца воспользуемся простым наброском. Скопируйте файл Ахе_ outline_l.tif из папки ChapterFiles\Axe_Model\sourceimages в папку sourceimages вашего проекта.
Неоднородные рациональные Всплайны
Неоднородные рациональные В-сплайныВ упражнениях этого раздела мы познакомимся со следующими понятиями и техниками моделирования:
Вам предстоит смоделировать алебарду на основе неоднородных рациональных сплайнов Безье. В данном случае не нужно копировать реально существующий объект, его дизайн мы создадим самостоятельно. Но даже в этом случае вам потребуется отправная точка. Сначала моделируемый объект нужно нарисовать.
Новая поверхность полученная методом
4.17. Новая поверхность, полученная методом лофтинга, имеет изогнутую форму
NURBSмоделирование
NURBS-моделированиеВ основе NURBS-моделирования лежат математические формулы, намного более сложные, чем для создания полигонов. Так как сцены с NURBS-моделямп требуют дополнительных ресурсов, они используются в ситуациях, когда визуализация производится заблаговременно, например в анимационных фильмах или на телевидении. Так как NURBS-модели отличаются плавными и искривленными формами, моделирование на основе неоднородных рациональных сплайнов Безье чаще всего используется для создания персонажей автомобилей и тому подобных объектов.
Как уже упоминалось, аббревиатура NURBS расшифровывается как «неоднородные рациональные сплайны Безье». NURBS-геометрия основана на кривых, математическая концепция которых была разработана французским инженером Пьером Безье. Кривые Безье располагаются между управляющими вершинами (CV — control vertices) и основаны на уравнениях третьего порядка.
Для создания кривой Безье требуются как минимум четыре управляющих вершины. Установка каждой следующей такой вершины приводит к появлению очередного участка кривой, или сплайна, изогнутого наиболее удобным способом.
Как показано на Рисунок 4.3, управляющие вершины контролируют кривизну. Они соединяются друг с другом с помощью каркаса (hull), который используется для одновременного выделения наборов вершин. Первая управляющая вершина выглядит как закрытый квадратик, а вторая, задающая направление кривой, — как открытый. Кривой принадлежат только первая и последняя управляющие вершины, которые определяют ее начало и конец.
NURBSповерхность создается между
4.4. NURBS-поверхность создается между изопараметрическими кривыми; отредактировать ее форму можно перемещением управляющих вершин
Изменение формы NURBS-поверхности основано на интерполяции кривых, в то время как деформация полигональных моделей связана с изменением ориентации наборов граней. Именно по этой причине намного проще получить гладкую деформацию NURBS-поверхности с небольшим набором управляющих вершин. Чтобы достичь аналогичного результата у сетки полигонов, потребуется увеличить детализацию поверхности.
NURBS-поверхность позволяет получить более гладкую деформацию (Рисунок 4.5), в то время как полигональная сетка разбивается на набор граней в местах расположения ребер. Для достижения такого же результата у сеток полигонов требуется дополнительная детализация.
Таким образом, если объект имеет плавные очертания, для его моделирования лучше использовать NURBS-поверхность. Если вы сомневаетесь в правильности выбора формата, все равно лучше начать моделирование на основе неоднородных рациональных В-сплайнов. Ведь потом готовую модель можно легко преобразовать в сетку полигонов, в то время как обратное преобразование зачастую довольно сложно реализуемо.
Рассмотрим процесс создания NURBS-кривой. Выберите в меню File (Файл) команду New (Создать) и разверните на весь экран окно проекции Perspective (Перспектива). Выберите в меню Create (Создать) команду CV Curve Tool (Построение CV-кривой) и обратите внимание на то, как при этом изменится форма указателя мыши. Несколько раз щелкните в разных точках координатной плоскости, формируя кривую. Как легко заметить, кривая Безье создается между управляющими вершинами. Нажмите клавишу Enter, чтобы закончить кривую.
NURBSповерхности полигональные
NURBS-поверхности, полигональные поверхности и поверхности с иерархическим разбиениемВ этом разделе мы обсудим процесс выбора метода моделирования. В Maya моделирование осуществляется на основе трех разных форматов: неоднородных рациональных сплайнов Безье (о них мы поговорим в этой главе), сеток полигонов (они являются предметом обсуждения следующей главы) и поверхностей с иерархическим разбиением (этот усовершенствованный метод будет представлен в главе 6). Хотя традиционным методом является именно NURBS-моделирование, проще всего описать процесс создания объектов на основе полигональных сеток. Поэтому начнем мы именно с него.
Объектыпримитивы
4.6. Объекты-примитивы
Обрезка поверхностей и отмена этой операции
Обрезка поверхностей и отмена этой операцииОперация обрезки поверхностей, выполняемая с помощью команды Trim Tool (Подрезка) из меню Edit NURBS (Правка NURBS), позволяет с помощью ранее спроецированных или нарисованных на поверхности кривых создавать в ней отверстия.
Если требуется отменить операцию обрезки, а прибегать к функции Undo (Отмена) уже слишком поздно, воспользуйтесь командой Untrim Surfaces (Отмена обрезки поверхностей). Эта команда позволяет отменить и только последнюю операцию, и все ранее сделанные обрезки поверхности.
Окно диалога Outliner после удаления лишних узлов
4.33. Окно диалога Outliner после удаления лишних узлов
Окно диалога Outliner со списком
4.32. Окно диалога Outliner со списком узлов смоделированной алебарды
3. Завершив создание кривой, нажмите кнопку Snap to Points (Привязка к точкам) в строке состояния. Затем нажмите клавишу Insert и переместите опорную точку кривой на последнюю снизу управляющую вершину.
4. Еще раз нажмите клавишу Insert. Выделите кривую и щелкните на квадратике, расположенном справа от команды Revolve (Вращение) в меню Surfaces (Поверхности). Убедитесь в том, что переключатель Axis Preset (Предустановленная ось) стоит в положении Y. Параметр Start Sweep (Начало сектора) должен иметь значение 0, а параметр End Sweep (Конец сектора) — значение 360. Заданное по умолчанию параметром Segments (Сегментов) количество сегментов также вполне подойдет в данном случае. Переключатель Output Geometry (Выходная геометрия) должен быть установлен в положение NURBS. Щелкните на кнопке Revolve (Вращать), и объект будет готов (Рисунок 4.31).
Для сравнения вы можете загрузить файл axe_model_ vS.mb с прилагаемого к книге компакт-диска. В главе б вы познакомитесь с другими деформаторами и получите дополнительные навыки работы с ними.
Отключение плоскостей изображения
Отключение плоскостей изображенияПлоскость изображения вам больше не понадобится. Убрать ее можно в окне диалога Attribute Editor (Редактор атрибутов). Для его вызова выберите в меню View (Вид) окна проекции Front (Вид спереди) команду Image Plane > Image Plane Attributes HmagePlanel (Плоскость изображения > Атрибуты плоскости изображения > imagePlanel). В раскрывающемся списке Display Mode (Режим отображения) в разделе Image Plane Attributes (Атрибуты плоскости изображения) выберите вариант None (Отсутствует). Чтобы снова сделать ее видимой, достаточно выбрать в этом списке вариант RGB.
Передняя поверхность лопасти топора
4.26. Передняя поверхность лопасти топора
10. Отключите видимость слоя layerl и сделайте видимыми объекты, помещенные в слой layers. Осуществите перестройку появившихся кривых.
11. Создайте с помощью команды Boundary (Граница) обух топора.
Перемещение плоскости изображения за координатную сетку
Перемещение плоскости изображения за координатную сеткуТеперь нужно отрегулировать параметры плоскости изображения таким образом, чтобы она оказалась за координатной сеткой. По умолчанию после загрузки плоскость располагается в начале координат и, соответственно, находится поверх сетки. Нужно слегка переместить ее вглубь:
1. Выберите в меню View (Вид) окна проекции Front (Вид спереди) команду Image Plane > Image Plane Attributes > imagePlanel (Плоскость изображения » Атрибуты плоскости изображения > imagePlanel), чтобы открыть для плоскости изображения окно диалога Attribute Editor (Редактор атрибутов).
2. Введите в поле Center Z (Центрировать по оси Z) в разделе Placement Extras (Дополнительные возможности размещения) значение 2 (Рисунок 4.20). В результате плоскость изображения сдвинется на 2 единицы в отрицательном направлении оси Z и окажется за координатной сеткой. Это позволит создавать кривые на нужной плоскости, не теряя из виду опорное изображение.
3. Если вам не нравится наличие плоскости изображения в других окнах проекции, установите переключатель Display (Показывать) в разделе Image Plane Attributes (Атрибуты плоскости изображения) в положение Looking trough camera (Через камеру). В результате плоскость изображения останется только в окне проекции Front (Вид спереди).
Плоская поверхность полученная
4.12. Плоская поверхность, полученная на основе одной кривой (слева); поверхность, полученная на основе вложенных друг в друга кривых (справа}
Плоскость изображения загруженная в окно проекции Front
4.19. Плоскость изображения, загруженная в окно проекции Front
Подведем итоги
Подведем итогиМоделирование является первой стадией производства анимации. Важно помнить основную цель этого процесса — изобразить объекты средствами компьютерной графики. С этой точки зрения упрощение объектов и разбиение их на составные части позволяет более четко увидеть перспективы моделирования. Например, воссоздавать автомобиль лучше в виде набора элементов: колес, дверей, сидений, капота, боковых панелей, багажника и т. п. Умение увидеть способ разделения объекта на части бесценно для компьютерной графики.
Полигональная сфера и составляющие ее подобъекты
4.2. Полигональная сфера и составляющие ее подобъекты
Полигональные модели проще всего визуализируются, и именно по этой причине они обычно используются в игровых приложениях, где визуализация должна происходить прямо по ходу игры. Для игр также предпочтительно создавать объекты, состоящие из небольшого числа полигонов, чтобы максимально ускорить
процесс визуализации. Модели с плотной сеткой обычно используются в кино 11 на телевидении. Благодаря возможности создания моделей из одного куска данный формат применяется для получения персонажей. Персонажи в процессе анимации деформируются различными способами, поэтому крайне выгодно иметь модель, которая не будет разламываться в области швов.
Практические навыки моделирования на основе полигонов вы получите в главе 5.
Полигональное моделирование
Полигональное моделированиеПолигоны, или многоугольники, состоят из граней (faces). Одна грань представляет собой плоскую поверхность, полученную соединением трех точек, называемых вершинами (vertex). Положение вершин определяет форму и размер грани. Линии, соединяющие вершины друг с другом, называются ребрами (edges). Как правило, полигональные грани имеют три вершины, но могут иметь и четыре вершины и, соответственно, как треугольную, так и четырехугольную форму.
Грани соединяются друг с другом вдоль ребер, формируя более сложную поверхность (Рисунок 4.2).
Полученная методом вращения рукоять
4.31. Полученная методом вращения рукоять завершает модель алебарды
Поверхность созданная методом
4.8. Поверхность, созданная методом лофтинга на основе четырех кривых, которые выделялись по порядку слева направо
Метод лофтинга работает лучше всего, когда кривые представляют собой сечения моделируемого объекта. Он используется для создания самых разных поверхностей, от самых простых, например поверхности стола, до сложных, таких, как человеческое лицо.
Поверхности с иерархическим разбиением
Поверхности с иерархическим разбиениемПоверхности с иерархическим разбиением приобрели лучшие черты NURBS-no-верхностей и полигональных сеток. Они совмещают простоту создания модели и гладкость ее формы.
Обычно построение модели начинается с сетки полигонов. Затем вы используете математику неоднородных рациональных сплайнов Безье для сглаживания полученной поверхности путем дополнительных разбиений нужных участков. Таким способом можно, например, легко превратить полигональный куб в сферу. Быстро создавая полигональные модели и увеличивая уровень их детализации, вы получаете новую гладкую поверхность. При этом существует возможность в любое время вернуться к исходной полигональной модели и внести в нее глобальные изменения.
Преимуществом моделей, полученных на основе поверхностей с иерархическим разбиением, является отсутствие складок и разрывов в местах соединения отдельных кусков, с которыми так часто приходится сталкиваться во время работы с NURBS-объектами. В результате именно этот формат становится предпочтительным для создания персонажей.
К сожалению, поверхности с иерархическим разбиением требуют еще большего количества вычислительных ресурсов, чем NURBS-модели. Практические навыки работы с этими поверхностями вы получите в главе 6.
Присоединение поверхностей
Присоединение поверхностейФункция команды Attach Surfaces (Соединить поверхности) полностью соответствует ее названию. Она соединяет две поверхности вдоль указанных изопараметричес-ких кривых. Нужно всего лишь при нажатой клавише Shift выделить такие кривые на границах обеих поверхностей и выбрать в меню Edit NURBS (Правка NURBS) команду Attach Surfaces (Соединить поверхности) (Рисунок 4.35).
Проецирование кривых на поверхность
Проецирование кривых на поверхностьСпроецировав кривую на поверхность, вы можете, например, вырезать в поверхности дыру с помощью инструмента Trim Tool (Подрезка) из меню Edit NURBS (Правка NURBS). Если включена история конструирования, у вас появляется возможность присоединить к одной поверхности другую, следующую контуру спроецированной кривой.
Спроецированные кривые также используются для того, чтобы заставить один объект двигаться по поверхности другого. В этом случае они играют роль траектории, вдоль которой осуществляется анимация. Например, можно спроецировать кривую на холмистый ландшафт и заставить автомобиль двигаться вдоль этой кривой. В итоге перемещение автомобиля будет происходить с учетом особенностей ландшафта.
Для проецирования кривой на поверхность необходимо выделить сначала поверхность, а потом кривую и выбрать в меню Edit NURBS (Правка NURBS) команду Project Curve on Surface (Спроецировать кривую на поверхность).
Простая поверхность полученная
4.7. Простая поверхность, полученная методом лофтинга из двух кривых
Применим этот метод на практике:
1. Нарисуйте две кривые.
2. Выделите кривые в произвольном порядке.
3. Убедитесь, что вы находитесь в режиме Modelling (Моделирование). Если это не так, нажмите клавишу F3. Выберите в меню Surfaces (Поверхности) команду Loft (Лофтинг). Альтернативным способом вызова данной команды является щелчок на кнопке Loft (Лофтинг) вкладки Shelf (Полка) с названием Surfaces (Поверхности).
Задействовав в процессе несколько кривых, можно получить более сложную поверхность. Чем большее количество управляющих вершин содержит каждая кривая, тем больше изопараметрических кривых будет на поверхности и, соответственно, более детальной она станет. На Рисунок 4.8 показана поверхность, полученная методом лофтинга на основе четырех кривых.
Работа над обухом закончена
4.30. Работа над обухом закончена
Деформаторы используют историю конструирования для трансформирования геометрии, к которой они присоединены. Получив желаемую форму (Рисунок 4.30), деформатор можно удалить. Но если просто выделить деформатор и нажать клавишу Delete, объект вернет исходную форму. Поэтому сначала нужно удалить историю конструирования, выбрав в меню Edit (Правка) команду Delete by Type > History (Удалить объекты типа > История).
Работа над обухом закончена. Осталось смоделировать рукоять, и модель будет полностью готова.
1. Нажмите клавишу F3 для возвращения в режим Modeling (Моделирование). Сделайте видимой плоскость изображения в окне проекции Front (Вид спереди).
2. Создайте кривую, повторяющую контур левой половины рукояти. Начните сверху и постепенно спускайтесь вниз.
Разъединение поверхностей
Разъединение поверхностейКоманда Detach Surfaces (Разъединение поверхностей) особенно полезна для формирования особых областей NURBS-поверхности — кусков. Достаточно выделить изопараметрическую кривую, которая укажет место будущего разрыва, выбрать в меню Edit NURBS (Правка NURBS) команду Detach Surfaces (Разъединение поверхностей), и поверхность распадется на части (Рисунок 4.36).
Различные способы создания NURBSповерхностей
Различные способы создания NURBS-поверхностейПолучить NURBS-поверхность можно различными способами. Проще всего создать NURBS-примитив Plane (Плоскость). Затем можно поменять ее форму перемещением управляющих точек и даже разрезать поверхность на несколько кусков. Примитив вовсе не обязательно должен сохранять исходную форму. Специальные инструменты позволяют отрезать от него куски и присоединять другие, моделируя нужный объект.
Впрочем, существуют и другие методы получения NURBS-поверхностей. В их основе лежит использование кривых, определяющих часть или части поверхности. Поговорим о них подробнее.
Редактирование формы топора
Редактирование формы топораТеперь осталось отредактировать созданный объект. Обратите внимание, что нижний и верхний края лезвия топора на самом деле не такие уж и острые. Нужно заострить их, переместив поближе друг к другу управляющие точки исходных кривых:
1. Выделите рамкой управляющие точки, расположенные на нижнем острие лезвия.
2. Активизируйте инструмент Scale (Масштабировать) и подвиньте эти точки друг к другу, выполнив преобразование относительно оси Z.
3. По очереди выделяйте пары управляющих точек, расположенные выше по лезвию, и также пододвигайте их ближе друг к другу.

Сохраните сцену. На этом этапе вы можете загрузить файл axe_model_v2.mb с прилагаемого к книге компакт-диска и сравнить свой результат с авторским. Убедитесь, что вы осознали смысл всех техник, Использовавшихся при моделировании топора. Мы познакомились с набором новых процедур, и желательно, чтобы, перед тем как продолжить работу, они стали вам понятными. Хотя процесс построения топора мог показаться устрашающим и крайне медленным, создание компьютерной графики не настолько сложно, как это выглядит при первом знакомстве.
Редактирование NURBSповерхностей
Редактирование NURBS-поверхностейВ Maya существует множество инструментов для редактирования NURBS-поверх-ностей. Кроме перемещения управляющих вершин есть и другие методы, позволяющие увеличить реализм модели. Обзор этих инструментов и способов работы с ними вы и найдете в этом разделе.
Откройте меню Edit NURBS (Правка NURBS) и щелкните на двойной черте, расположенной в его верхней части, чтобы превратить меню в плавающее окно. Рассмотрим функции, к которым оно дает доступ.
Результат сгиба NURBSцилиндра
4.5. Результат сгиба NURBS-цилиндра (слева) и полигонального цилиндра (справа). NURBS-цилиндр остался гладким, в то время как полигональная модель приобрела фасеточный вид
Соединение боковых поверхностей
Соединение боковых поверхностейИтак, мы создали переднюю и заднюю поверхности топора. Теперь пришла пора соединить их друг с другом:
1. Сделайте видимым слой 1ауег2. Кривые этого слоя будут участвовать в построении соединительных поверхностей методом лофтинга. В результате должны получиться острое лезвие спереди и желобки на верхней и нижней кромках.
Совет
СОВЕТ
Чтобы облегчить выделение кривых, имеет смысл скрыть присутствующие в сцене NURBS-поверхности. Выберите в меню Show (Показать) окна проекции Perspective (Перспектива) команду NURBS Surfaces (NURBS-поверхности). В результате в сцене останутся только кривые. 2. Выделите все четыре кривые и выберите в меню Edit Curves (Правка кривых) команду Rebuild Curve (Перестройка кривой). При необходимости отредактируйте форму кривых перемещением управляющих вершин.
3. Если перед выполнением предыдущего шага вы предпочли скрыть NURBS-поверхности, сделайте их видимыми, еще раз выбрав в меню Show (Показать) окна проекции Perspective (Перспектива) команду NURBS Surfaces (NURBS-поверхности).
4. По очереди выделите кривые, расположенные в области верхней кромки лопасти топора, и выберите в меню Surfaces (Поверхности) команду Loft (Лофтинг). Проделайте эту операцию и с кривыми нижней кромки. Примерный вид полученного вами объекта показан на Рисунок 4.27.
5. Для создания острого лезвия слегка изменим операцию лофтинга. По очереди выделите три кривые и щелкните на квад ратике, расположенном справа от команды Loft (Лофтинг) в меню Surfaces (Поверхности). В появившемся окне диалога установите переключатель Surface Degree (Кривизна поверхности) в положение Linear (Линейная) и щелкните на кнопке Loft (Лофтинг).
Создание контура
Создание контураВ окне проекции Front (Вид спереди) создайте NURBS-кривую, совпадающую с контуром алебарды. Начните с вершины лезвия, расположенной слева от ручки. Перед тем как приступить к работе, убедитесь в том, что вы нажали кнопку Construction History (История конструирования) в строке состояния:
1. Выберите в меню Create (Создать) команду CV Curve Tool (Создание CV-кривой). Альтернативным способом активизации этого инструмента является щелчок на соответствующей кнопке вкладки Shelf (Полка) с названием Curves (Кривые).
2. Начните с верхней части алебарды (Рисунок 4.21), а затем обходите контур против часовой стрелки, ставя управляющие вершины. Чтобы сформировать острый кончик топора, нужно поставить там три управляющие вершины. Эта операция осуществляется следующим образом:
Создание кривой повторяющей контуры топора
4.21. Создание кривой, повторяющей контуры топора
3. Обведите лезвие. На нижнем острие снова создайте три управляющие точки, включив соответствующий режим привязки.
4. Обведите контур оставшейся части топора, создав три управляющие вершины в месте соединения с ручкой, а последнюю управляющую вершину поставьте непосредственно под первой.
В данном случае вовсе не нужно стремиться совместить первую и последнюю управляющие вершины. Замкнуть сплайн всегда можно позже с помощью команды Open/Close Curve (Разомкнуть/Замкнуть кривые).
5. Нажмите клавишу Enter, чтобы завершить создание кривой.
6. Убедитесь в том, что кривая выделена, и выберите в меню Edit Curves (Правка кривых) команду Open/Close Curve (Разомкнуть/Замкнуть кривые). Теперь кривая готова.
7. Нажмите клавишу F8 и отрегулируйте положение управляющих вершин таким образом, чтобы форма кривой лучше совпадала с контуром рисунка.
8. Сохраните сцену.
9. Загрузите файл axe_model_vl.mb из папки ChapterFiles\Axe_Model\scenes прилагаемого к книге компакт-диска, чтобы сравнить полученный результат с тем, что получилось у нас.
Сохранив сцену перед тем, как открыть новую версию файла, вы гарантируете безопасность результатов своего труда. Впрочем, при попытке открыть новый файл или новую сцену приложение спрашивает, хотите ли вы сохранить текущий файл. Но лучше не дожидаться этого окна диалога и сохранять работу заблаговременно. Тем более что функция инкрементного сохранения, с которой вы познакомились в главе 3, позволяет легко создавать нужное количество резервных копий.
Создание лезвия
Создание лезвияЧтобы создать лезвие, выполните следующие действия:
1. Выделите исходный контур топора и продублируйте его. Поместите копию между двумя уже имеющимися контурами.
2. Выделите исходный контур, перейдите в режим редактирования подобъектов, нажав клавишу F8, и, выделив управляющие точки лезвия, переместите их поближе к центральному контуру. Проделайте ту же операцию с управляющими точками лезвия второй копии.
3. Выделите управляющие точки лезвия центральной копии (исключая управляющие точки на концах) и слегка выдвиньте их вперед (Рисунок 4.23). Теперь остается соединить все три грани методом лофтинга, и замечательное, острое лезвие будет готово.
4. Сформируйте желобок на верхней и нижней сторонах топора. Для этого выделите управляющие точки на верхней и нижней кромках центрального контура (исключая управляющие точки, расположенные на остриях) и слегка уменьшите их масштаб относительно оси Y (pиc. 4.24). При необходимости нажмите клавишу F8 и, перемещая управляющие вершины, отредактируйте положение центральной кривой.
Создание обуха топора
Создание обуха топораПока что у нас имеется только передняя часть топора. Займемся моделированием задней:
1. Сделайте видимой плоскость изображения.
Совет
СОВЕТ
Проще всего управлять видимостью изображения с помощью команды Cameras (Камеры) из меню Show (Показать) соответствующего окна проекции. Но этот метод работает только в случае, когда в раскрывающемся списке Display Mode (Режим отображения) для рассматриваемой плоскости выбран вариант RGB. 2. Уже знакомым вам способом создайте контур обуха. Начните создание CV-кривой с верхнего левого угла и обведите контур, двигаясь по часовой стрелке.
3. Замкните кривую, выбрав в меню Edit Curves (Правка кривых) команду Open/Close Curve (Разомкнуть/Замкнуть кривые).
4. Продублируйте контур и переместите его в отрицательном направлении оси Z до совпадения с уже существующей плоскостью передней части топора.
5. Выделите угловые точки контура (Рисунок 4.28) и выберите в меню Edit Curves (Правка кривых) команду Detach Curves (Разъединить кривые). Проделайте эту операцию со вторым контуром.
Создание поверхностей с помощью инструмента Planar
Создание поверхностей с помощью инструмента PlanarИнструмент Planar (Планарный) работает только с кривыми, лежащими на плоскости. Он создает двумерную поверхность, соответствующую форме кривой. Попробуем получить поверхность таким способом:
1. Нарисуйте замкнутую кривую, лежащую в одной плоскости.
2. Выберите в меню Surfaces (Поверхности) команду Planar (Планарный).
Взяв набор вложенных друг в друга замкнутых кривых, можно получить поверхность с отверстиями внутри. Слева на Рисунок 4.12 показана сплошная плоская поверхность. Справа вы видите результат создания аналогичной поверхности на основе двух кривых.
Получаемые таким способом поверхности особенно часто используются при создании текста. Их лучше оставлять плоскими, так как попытки деформации обычно не дают хороших результатов.
Создание поверхностей
Создание поверхностейИтак, приступим к созданию боковой поверхности топора. В данном случае нельзя использовать инструмент Planar (Пленарный), так как кривые, которые послужат основой для этой поверхности, не лежат в одной плоскости. Ведь чтобы сделать лезвие острым, мы слегка переместили их в области режущей кромки. Поэтому применим инструмент Boundary (Граница).
Для корректной работы этого инструмента потребуются четыре пересекающиеся друг с другом кривые. В данном случае не имеет смысла их создавать — достаточно разбить уже имеющийся контур на четыре части:
1. Выделите верхний контур и перейдите в режим редактирования подобъектов. В данном случае требуется выделить точки редактирования, а не управляющие вершины, поэтому в строке состояния нужно нажать только кнопки Select by Component Type: Points (Выделять подобъекты типа: Точки) и Select by Component Type: Farm Points (Выделять подобъекты типа: Параметрические точки). Кривые приобретут голубой цвет, и на них появятся маленькие малиновые крестики. Это и есть точки редактирования (edit points).
Примечание
ПРИМЕЧАНИЕ
Точки кривой (curve points) создают кривую, в то время как управляющие вершины (control vertex) контролируют форму этой кривой. По своей функции точки редактирования (edit points) подобны управляющим вершинам, но, в отличие от них, лежат на самой кривой. 2. Щелкните в произвольном месте кривой и перетащите появившийся желты н квадратик в нижний угол отрезаемого участка. Еще раз щелкните на кривом, на этот раз при нажатой клавише Shift, и перетащите новый квадратик в верх ний угол отрезаемого участка. Проделайте эту операцию еще два раза, чтобы квадратики оказались во всех углах объекта (Рисунок 4.25). Именно в этих точках кривая будет разорвана.
Создание желобка на верхней и нижней поверхностях
4.24. Создание желобка на верхней и нижней поверхностях
Сохраните сцену. Подготовительная работа закончена, теперь пришло время создания поверхностей. Начинающим имеет смысл вернуться к началу главы и попытаться самостоятельно повторить подготовительный процесс.
Уровень детализации модели зависит от ее места в сцене
4.1. Уровень детализации модели зависит от ее места в сцене
Если нет возможности однозначно определить оптимальный уровень детализации, имеет смысл сделать его максимальным. Дело в том, что убрать лишние элементы намного проще, чем смоделировать недостающие. Также следует помнить, что мелкие детали в большинстве случаев убедительно имитируются с помощью текстурных карт. Вы будете изумлены, убедившись, насколько подробно детализированные модели можно получить таким простым способом.
Повышенная детализация требует повышенной производительности аппаратного обеспечения. Соответственно, если мощность вашего компьютера или возможности видеокарты ограничены, детализацию моделей нужно продумывать особенно тщательно. Заранее определившись с этим аспектом и вооружившись набором фотографий и рисунков интересующего объекта, вы сможете максимально увеличить эффективность процесса его моделирования.
Верхняя и нижняя кромки лопасти топора
4.27. Верхняя и нижняя кромки лопасти топора
Примечание
ПРИМЕЧАНИЕ
Поверхности, созданные на основе неоднородных рациональных сплайнов Безье, могут иметь разную кривизну. Стандартными являются кубические NURBS-поверхности, позволяющие получать уже знакомые вам гладкие контуры. Линейные поверхности представляют собой участки плоскости, соответственно, стыковаться они могут под острым углом. 6. Выделяя центральную кривую и перемещая ее вдоль оси X, можно регулировать остроту лезвия. Благодаря наличию истории конструирования объектов это приведет к изменению формы полученной методом лофтинга поверхности.
| Назад |
Ведь сохранять результаты своих трудов
ВНИМАНИЕНе стоит работать с файлами, находящимися на компакт-диске. Ведь сохранять результаты своих трудов вам все равно придется в папку на жестком диске вашего компьютера. Поэтому имеет смысл сразу скопировать туда все относящиеся к проекту файлы. 1. Выберите в меню File (Файл) команду New Scene (Создать сцену). Перейдите в режим Modeling (Моделирование), выбрав этот вариант из раскрывающегося списка, расположенного в строке состояния, или нажав клавишу F3.
2. Импортируйте рисунок в окно проекции Front (Вид спереди). Для этого выберите в меню View (Вид) этого окна проекции команду Image Plane > Import Image (Плоскость изображения > Импортировать изображение).
В качестве плоскостей изображения обычно выступают растровые файлы в формате TIFF или JPEG. Они видны в окнах проекции и выполняют роль опорного рисунка. Обычно они используются для моделирования, хотя наборы изображений могут оказаться полезными при отслеживании движения. Более подробную информацию на эту тему вы найдете в книге в дальнейшем.
3. Выберите файл Axe_outline_l.tif в папке sourceimages и загрузите его. Рисунок появится в окнах проекции Front (Вид спереди) и Perspective (Перспектива) (Рисунок 4.19).
Вставка изопараметрических кривых влияет на вид деформации
4.37. Вставка изопараметрических кривых влияет на вид деформации
Вставка изопараметрических кривых
Вставка изопараметрических кривыхНеизбежно наступит момент, когда вам потребуется увеличить детализацию поверхности NURBS-объекта, то есть создать дополнительные интервалы. В этом случае достаточно выделить изопараметрическую кривую и выбрать в меню Edit NURBS (Правка NURBS) команду Insert Isoparams (Вставить изопараметрическую кривую). Это приведет к появлению дополнительного разбиения на интервалы. Данная функция используется для увеличения детализации отдельных участков NURBS-поверхности, что необходимо для более гладкой деформации. Например, добавив одну или две изопараметрические кривые в область локтевого сустава, вы сделаете сгиб руки более естественным (Рисунок 4.37).
Выбор формата
Выбор форматаВ Maya существует обширный инструментарий для работы с поверхностями всех видов, что позволяет создавать модели любого формата. Выбор по большей части зависит от предпочтений пользователя.
Пользователи, имеющие опыт лепки из глины, скорее всего, предпочтут работать с NURBS-поверхностями. Формирование нужных контуров путем изменения положения управляющих вершин во многом подобно именно этому процессу.
Полигоны напоминают инструмент сварщика или плотника. Моделирование на их основе включает в себя разрывы поверхностей, выдавливание отдельных участков и соединение кусков друг с другом. Проще всего таким способом создаются прямоугольные модели с прямыми линиями и острыми углами.
Как уже упоминалось, поверхности с иерархическим разбиением обладают достоинствами двух предыдущих форматов. Начав работу с довольно грубой формы, затем можно легко перейти к созданию мелких деталей. Причем последовательным разбиениям подвергаются только выбранные пользователем участки. Моделирование на основе поверхностей с иерархическим разбиением превосходно подходит для создания объектов органического происхождения, состоящих из одного куска.
Выделение кривых которые послужат
4.16. Выделение кривых, которые послужат основой для новой поверхности
3. Выделите изопараметрическую кривую, расположенную рядом с левым краем поверхности. Нажмите и удерживайте клавишу Shift; щелчком выделите сначала первую, а затем вторую кривую. Воспользуйтесь контекстным меню, чтобы снова получить возможность выделения изопараметрической кривой, и при нажатой клавише Shift выделите кривую, расположенную у левого края второй поверхности (Рисунок 4.16).
4. Выберите в меню Surfaces (Поверхности) команду Loft (Лофтинг). Полученный в результате объект показан на Рисунок 4.17.
Выделение точек кривой расположенных в углах контура
4.25. Выделение точек кривой, расположенных в углах контура
3. Выберите в меню Edit Curves (Правка кривых) команду Detach Curves (Разъединить кривые), и кривая распадется на четыре части. В окне диалога Outliner (Структура) появятся четыре новых наименования.
4. Скройте эти кривые, чтобы освободить рабочее пространство:
5. Отключите видимость первого и второго слоев, чтобы без помех отредактировать третий контур. Повторите процедуру разбиения контура на четыре кривых. Затем сделайте видимым только второй слой и разбейте на четыре кривых центральный контур.
Кривые, полученные при разбиении контура, помещаются в исходную сцену. Это значит, что их нужно выделить и поместить в соответствующий слой.
Задание для самостоятельной работы
Задание для самостоятельной работыДля приобретения дополнительных навыков работы с NURBS-поверхностями попытайтесь самостоятельно смоделировать следующие объекты:
Задняя часть топора
4.29. Задняя часть топора
9. Выделите поверхности, щелкните на них правой кнопкой мыши и выберите н появившемся меню команду Isoparams (Изопараметрические кривые). Выделите и.чопараметрические кривые на верхней кромке обеих поверхностей и выберите в меню Surfaces (Поверхности) команду Loft (Лофтинг).
10. Повторите эту операцию для формирования боковой и нижней поверхностей. Готовый объект показан на Рисунок 4.29.
Техники моделирования поверхности дают весьма
ЗаключениеТехники моделирования поверхности дают весьма впечатляющие результаты. На основе обычных и изопараметрических кривых можно получить сложные поверхности и смоделировать детализированные объекты органического происхождения. Большую роль в этом процессе играет история конструирования, позволяющая легко редактировать модель внесением изменений в послужившие для нее основой кривые.
В результате выполнения упражнений этой главы вы должны получить алебарду (Рисунок 4.34). Попытайтесь самостоятельно усовершенствовать ее дизайн, а также создать несколько новых алебард, чтобы закрепить знания, полученные в этой главе.
Завершение работы
Завершение работыОткройте окно диалога Outliner (Структура) и обратите внимание на длинный беспорядочный список объектов (Рисунок 4.32). Сейчас мы коснемся чаще всего пропускаемой пользователями стадии работы над моделью. Но от этого она не перестает быть жизненно важной. Пройдитесь по всем узлам и присвойте каждому из них значимое короткое имя, если вы не сделали этого в процессе моделирования. После завершения моделирования исходные кривые можно удалить. Они больше не понадобятся. Также имеет смысл удалить историю конструирования поверхностей. В результате окно диалога Outliner (Структура) должно принять вид, показанный на Рисунок 4.33.
Новые возможности в Maya 6
Деформация поверхности с помощью
5.13. Деформация поверхности с помощью инструмента Sculpt Polygon Tool
Для удаления узла из группы достаточно
5.18. Для удаления узла из группы достаточно перетащить его средней кнопкой мыши за ее пределы
Готовая катапульта
5.26. Готовая катапульта
Готовое основание катапульты
5.19. Готовое основание катапульты
2. Моделирование колеса начнем с создания NURBS-кривой, которая послужит профилем вращения. Щелкните на квадратике, расположенном справа от команды CV Curve Tool (Построение CV-кривой) в меню Create (Создать), и установите переключатель Curve Degree (Порядок кривой) в положение 1 Linear (Линейная).
Это связано с тем, что кривая-профиль для колеса (Рисунок 5.20) не содержит криволинейных фрагментов. Крайне важно, чтобы верхняя часть кривой содержала именно три интервала. Опорную точку поместите на расстоянии примерно три четверти квадратика координатной сетки под кривой.
Готовое основание с кронштейнами для лебедки
5.17. Готовое основание с кронштейнами для лебедки
8. Выделите все элементы одного из кронштейнов и выберите в меню Edit (Правка) команду Group (Группировать). Присвойте полученной группе имя Bracket. Повторите процедуру для второго кронштейна. Затем выделите верхний узел кронштейна и его основание и создайте новую группу с именем Winch_baseboard. Повторите процесс для второго кронштейна и его основания.
Готовый поворотный механизм
5.21. Готовый поворотный механизм
Авторская версия сцены находится в файле catapult_v4.mb на прилагаемом к книге компакт-диске.
Инструмент Create Polygon Tool
Инструмент Create Polygon ToolИнструмент Create Polygon Tool (Создание полигонов) формирует полигональную грань произвольной формы указанием расположения ее вершин. Это один из простейших способов создания полигональной формы. Достаточно щелчками обозначить, где находятся вершины. На Рисунок 5.1 показаны примеры граней, которые можно получить с помощью этого инструмента.
Обозначив щелчками положение всех вершин, нажмите клавишу Enter, чтобы завершить создание грани. Таким способом можно получить довольно сложную форму, пригодную для дальнейшего редактирования.
Показанный на рисунке полигон был создан с помощью инструмента Create Polygon Tool (Создание полигонов). Он состоит всего из одной грани, соответственно, его невозможно подвергнуть редактированию или деформации.
Инструмент Cut Faces Tool
Инструмент Cut Faces ToolИнструмент Cut Faces Tool (Инструмент разрезания граней) разрезает полигональную поверхность путем создания на ней набора ребер. Затем происходит разделение по линии разреза, причем одна из частей может быть удалена (Рисунок 5.12).
Инструмент Duplicate Face
Инструмент Duplicate FaceЧтобы скопировать одну или несколько граней, выделите их и выберите в меню Edit Polygons (Правка полигонов) команду Duplicate Face (Продублировать грань). Появившийся в результате манипулятор можно использовать для перемещения, масштабирования или поворота скопированных граней.
Инструмент Extract
Инструмент ExtractИнструмент Extract (Извлечь) отличается от инструмента Extrude (Выдавить) тем, что не создает дополнительных граней. Выделив грань или грани и выбрав в меню Edit Polygons (Правка полигонов) команду Extract (Извлечь), вы обособите их ребра и вершины от соседних граней. Если установить флажок Separate Extracted Faces (Отделить извлеченные грани) в окне диалога Extract Options (Параметры извлечения), извлеченные грани станут отдельным полигональным объектом. В противном случае они останутся частью исходной модели.

Инструмент Extract (Извлечь) применяется для формирования в объекте отверстий с сохранением исходных граней. В комбинации с инструментом Split Polygon Tool (Инструмент разбиения полигонов) он позволяет создать очертания произвольной формы.
Инструмент Sculpt Polygon Tool
Инструмент Sculpt Polygon ToolИнструменты модуля Artisan (Кисти) можно использовать и для придания формы полигональным поверхностям. В данном случае применяется уже знакомый вам по предыдущей главе метод. Нужно выделить полигональный объект и щелкнуть на квадратике, расположенном справа от команды Sculpt Polygon Tool (Создание рельефа на полигональной поверхности). Вы увидите уже знакомые вам параметры и форму указателя мыши. Основным отличием работы с полигональными сетками является поведение поверхности. Если деформации NURBS-сферы были довольно гладкими, то полигональная сфера станет ступенчатой (Рисунок 5.13). Для получения сглаженной поверхности требуется увеличить число ее разбиений.
Инструмент Smooth
Инструмент SmoothИнструмент Smooth (Сгладить), вызываемый одноименной командой меню Edit Polygons (Правка полигонов), равномерно разбивает полигональную поверхность целиком (или только выделенные грани) с целью сглаживания формы объекта.
Инструмент Split Polygon Tool
Инструмент Split Polygon ToolДля увеличения детализации поверхности применяется также инструмент Split Polygon Tool (Инструмент разбиения полигонов), действие которого вполне описывается его названием. После выбора одноименной команды в меню Edit Polygons (Правка полигонов) указатель мыши приобретает форму треугольной стрелки. Останется выделить две точки на разных ребрах одной грани, и появится новое ребро, делящее грань на две половины.
Нажмите клавишу Enter, чтобы завершить создание ребра, или продолжите выделение новых точек. В Maya 6 появился альтернативный способ завершения работы с этим инструментом. Вместо нажатия клавиши Enter можно щелкнуть правой кнопкой мыши. Это ускоряет процесс создания новых ребер.
Таким образом, инструмент Split Polygon Tool (Инструмент разбиения полигонов) представляет собой быстрый и точный способ увеличения детализации поверхности.
Инструмент Subdivide
Инструмент SubdivideИнструмент Subdivide (Разбиение) позволяет увеличить детализацию поверхности за счет равномерного деления всех или только выделенных граней. Выделите грань или грани полигональной поверхности и выберите в меню Edit Polygons (Правка полигонов) команду Subdivide (Разбиение). Щелчок на квадратике, расположенном справа от этой команды, открывает окно диалога с ее параметрами, в котором можно с помощью ползунка Subdivision Levels (Уровни разбиения) указать уровень разбиения поверхности. Раскрывающийся список Mode (Режим) позволяет выбрать между четырехугольными (изображение слева) и треугольными (изображение справа) гранями.


С помощью этого инструмента вы можете подвергнуть разбиению даже ребра. При этом грани разбиению подвергаться не будут. Эта операция предназначена, скорее, для изменения формы граней путем перемещения вновь созданных ребер.
Инструмент Subdivide (Разбиение) позволяет увеличивать детализацию в нужных вам областях поверхности. Он находит более широкое применение, чем инструмент Poke Faces (Разбиение с выдавливанием), создающий детали в крайне ограниченной области.
| Назад |
Инструменты редактирования полигонов
Инструменты редактирования полигоновДадим краткое описание инструментов, которыми придется пользоваться в процессе редактирования полигональных сеток. Проверьте действие каждого из них на полигональной сфере. Затем вы примените полученные навыки для создания двух объектов различной сложности. Моделирование будет осуществлено путем редактирования объектов-примитивов.
Превратите в плавающее окно меню Edit Polygons (Правка полигонов). Именно здесь содержатся инструменты, о которых пойдет речь в дальнейшем.
Использование методов создания
Использование методов создания NURBS-поверхностей для получения полигональных сетокПолигональные сетки можно создавать и с помощью методов, с которыми вы познакомились в предыдущей главе. При этом используются те же самые инструменты.
Для получения полигональной поверхности нужно сделать соответствующие настройки в окне диалога с параметрами инструмента. Например, создайте две кривые, выделите их и щелкните на квадратике, расположенном справа от команды Loft (Лофтинг) в меню Surface (Поверхность). В появившемся окне диалога установите переключатель Output Geometry (Выходная геометрия) в положение Polygons (Полигоны). Это даст вам доступ к параметрам будущей полигональной поверхности.
Включенная история конструирования, как и в случае создания NURBS-объек-тов, дает возможность редактировать форму итоговой поверхности путем редактирования лежащих в ее основе кривых. Если вы собираетесь вносить изменения таким способом, позаботьтесь о том, чтобы разбиение поверхности было достаточно сильным. Это один из наиболее предпочтительных методов создания полигональных сеток.
Рассмотрим процесс получения полигональной поверхности методом лофтинга. Нарисуйте две кривые с одинаковым числом управляющих точек. Выделите их и откройте окно диалога Loft Options (Параметры лофтинга). Установите переключатель Output Geometry (Выходная геометрия) в положение Polygons (Полигоны). Появившиеся снизу параметры влияют на разбиение итоговой поверхности, то есть они задают уровень детализации и число граней. Короче говоря, чем больше количество граней, тем выше уровень детализации. Впрочем, детализированные поверхности также могут быть весьма эффективными, например, за счет разбиений только тех областей, где это действительно необходимо.
По умолчанию переключатель Tessellation Method (Метод разбиения) стоит в положении Standard Fit (Стандартная подгонка). В результате для построения поверхности используется минимальное количество граней, при котором она сохраняет свою целостность. Расположенные ниже ползунки позволяют отрегулировать итоговое количество граней, чтобы результат лучше соответствовал кривизне исходных кривых.
Чем ниже значение параметра Fractional Tolerance (Частичная устойчивость), тем больше будет число граней и тем более гладкой получится поверхность. Параметр Chord Height Ratio (Отношение хорды к высоте) определяет кривизну в определенной области и количество граней, которое требуется для ее адекватного представления. Этот параметр лучше всего использовать при создании поверхности с многочисленными изгибами или с очень сильной кривизной.
В процессе подбора подходящего разбиения не имеет смысла создавать поверхность, отменять полученный результат, менять параметры и создавать ее заново. Поэтому пользуйтесь кнопкой Apply (Применить), а не кнопкой Loft (Лофтинг), чтобы окно диалога Loft Options (Параметры лофтинга) оставалось открытым.
Колеса
КолесаПриступим к созданию колес:
1. Первым элементом, который требуется смоделировать, является ось. Выберите в меню Create (Создать) команду Polygon Primitives > Cylinder (Полигональные примитивы > Цилиндр). Дважды продублируйте кронштейн и поместите копии под основанием, как показано на рисунке. Не забудьте убрать их из исходной иерархической цепочки. Уменьшите размер цилиндра таким образом, чтобы он поместился внутри кронштейнов, и передвиньте его вниз.
Криваяпрофиль для колеса
5.20. Кривая-профиль для колеса
3. Выделите кривую и щелкните на квадратике, расположенном справа от команды Revolve (Вращение) в меню Surfaces (Поверхности). Установите переключатель Axis Preset (Предустановленная ось) в положение X и введите в поле Segments (Сегментов) значение 20. Это увеличит степень сглаживания модели. Переключатель Output Geometry (Выходная геометрия) установите в положение Polygons (Полигоны), а появившийся после этого переключатель Tessellation Method (Метод разбиения) — в положение Control Points (По управляющим точкам). В результате ребра будут созданы вдоль управляющих точек кривой. Щелкните на кнопке Revolve (Повернуть), и колесо готово. Удалите историю конструирования и исходную NURBS-кривую, так как эти элементы вам уже не пригодятся. Выберите в меню Modify (Изменить) команду Center Pivot (Центрировать опорную точку), чтобы поместить опорную точку в центр нового объекта.

4. Итак, объект готов. Создадим для него дополнительные детали. Продублируйте один из болтов и удалите копию из группы, к которой она принадлежит. Создайте еще несколько копий и распределите их по переднему ободу колеса.
5. Добавьте пару скоб, расположив их под и над осью. Скобами послужат два тонких, вытянутых полигональных куба.
Выделите все объекты и нажмите комбинацию клавиш Ctrl+g. Она соответствует команде Group (Сгруппировать) из меню Edit (Правка). Присвойте новой группе имя Wheel. Насадите колесо на ось.
6. Наличие на ободе зубцов сделает колесо более реалистичным. Ведь катапульту на таких колесах намного проще катить по грязи. Благодаря наличию разбиений вдоль обода построение зубцов не составит труда. При нажатой клавише Shift выделите каждую вторую грань в центре обода и выдавите их на четверть их длины. Затем с помощью преобразования Scale (Масштабирование) уменьшите их размер одновременно по осям X и Z.

7. Скопируйте узел Wheel, поверните его на 180° относительно оси Ун поместите с другой стороны от основания. Сгруппируйте два колеса и ось и присвойте новой группе имя Rear_Wheel. Позднее вы анимируете этот узел и заставите колеса вращаться.
8. Выделите узел Rear_Wheel и два поддерживающих колесную ось кронштейна (узел Axle_Brackets) и нажмите комбинацию клавиш Ctrl+d. Переместите копии в переднюю часть катапульты.
9. Добавьте новые узлы кронштейнов и колеса в группу узла Catapult. Для этого достаточно перетащить их средней кнопкой мыши в окне диалога Outliner (Структура) на упомянутый узел. Сохраните сцену.
Готовое основание с колесами вы найдете в файле catapult_v3.mb на прилагаемом к книге компакт-диске.
| Назад |
Лебедка
ЛебедкаЧтобы оттянуть назад рычаг катапульты и привести его в боевую позицию, потребуется лебедка, которая будет наматывать канат. Но так как анимация каната является довольно нестандартным заданием, с которым вряд ли справятся новички, мы обойдемся без этого элемента.
1. Построение лебедки мы начнем со шкива, вокруг которого наматывается канат. Создайте кривую-профиль, как вы это уже делали при моделировании колеса. Опорную точку кривой поместите на первую управляющую вершину. Щелкните на квадратике, расположенном справа от команды Revolve (Вращение) в меню Surfaces (Поверхности), и введите в поле Segments (Сегментов) значение 12. Щелкните на кнопке Revolve (Повернуть). Центрируйте опорную точку полученного объекта.
2. Поместите шкив в заднюю часть катапульты. Находящиеся там кронштейны должны располагаться в углублениях шкива.
3. Теперь нам потребуется колесо с ручкой, которое будет приводить катапульту в боевое положение:
Примечание
ПРИМЕЧАНИЕ

Перед каждым использованием команды Duplicate (Дублировать) желательно возвращать ее параметры к заданным по умолчанию значениям. Ведь Maya сохраняет указываемые пользователем параметры. Поэтому, например, при следующем вызове этой команды по умолчанию будет создан круг из восьми объектов, расположенных под углом 45° друг к другу.
Моделирование сложных объектов
Моделирование сложных объектовВ этом разделе вам предстоит применить на практике следующие техники:
Мы создадим довольно сложную на вид модель, не применяя ничего, кроме полигонов. В качестве опорных изображений будут использованы карандашные наброски. При моделировании такого комплексного объекта, как катапульта, без подробного плана не обойтись. Планирование включает исследование предмета, поиск информации по теме в Интернете, сбор фотографий объекта или ваши собственные зарисовки.
Начните с создания нового проекта с именем Catapult или скопируйте уже существующий проект из папки ChapterFiles\Catapult прилагаемого к книге компакт-диска. Если вы решите воспользоваться вторым методом, выберите в меню File > Project (Файл > Проект) команду Set (Задать) и выделите в появившемся окне диалога папку Catapult. Если этого не сделать, визуализированные изображения и файлы со сценами будут сохранены в папку предыдущего проекта Poly_Hand. Когда вы создаете новый проект, Maya автоматически делает его текущим. Не забывайте также о возможности сохранения файлов с инкрементными именами.
В данном случае все наброски уже сделаны, вам остается только внимательно их изучить.
В главе 8 модель катапульты будет анимирована. О возможности анимации нужно помнить в процессе создания любого объекта, особенно если его элементы группируются. Корректное выстраивание иерархии крайне важно для правильной анимации. В этом упражнении вы будете систематизировать компоненты катапульты с помощью окна диалога Outliner (Структура).
Набросок катапульты
5.14. Набросок катапульты
NURBSалебарда (слева) и результат
5.2. NURBS-алебарда (слева) и результат ее преобразования в сетку полигонов (справа)
Если бы преобразование осуществлялось для последующей вставки объекта в игру, количество граней новой модели было бы ограниченным и пришлось бы выбирать другой дизайн алебарды.
Операция выдавливания
Операция выдавливанияЧаще всего при редактировании полигональных сеток применяется операция выдавливания граней или ребер, приводящая к появлению дополнительных граней. Рассмотрим ее на примере:
i. Создайте полигональную сферу, нажмите клавишу F8 и убедитесь в том, что в строке состояния нажата кнопка Select by Component Type: Faces (Выделение подобъектов типа: Грани). Выделите любую грань или даже несколько граней и выберите в меню Edit Polygons (Правка полигонов) команду Extrude Face (Выдавить грань). Появится специальный манипулятор. Его вид показан на рисунке слева.

2. Щелкните на синей стрелке (она ограничивает преобразования осью Z) и перетащите указатель мыши из центра сферы, как показано на центральном изображении.
При этом выделенная вами грань или грани выступят над поверхностью сферы, а по бокам от них появятся дополнительные грани. Это исключительно мощный инструмент, позволяющий легко создать детали, выступающие в произвольном направлении. Он особенно полезен для моделирования различных персонажей. Позднее в этой главе вы воспользуетесь им для создания стилизованной человеческой руки.
3. Манипулятор преобразования Scale (Масштабирование) позволяет менять размер выдавленных граней, а манипулятор преобразования Rotate (Поворот) — вращать их, как показано на изображении справа.
4. Вторичный выбор команды Extrude Face (Выдавить грань) позволяет продолжить операцию выдавливания, сформировав новые грани поверх уже выдавленных.
5. Выделение ребер полигональной формы и выбор в меню Edit Polygons (Правка полигонов) команды Extrude Edge (Выдавить ребро) приводит к появлению плоской поверхности, сформированной на основе указанных ребер. Возникающий при этом манипулятор работает так же, как и в предыдущем случае.
Выдавливать грани можно и вдоль некой кривой. Для этого нужно выделить кривую и нужные грани, щелкнуть на квадратике, расположенном справа от команды Extrude Face (Выдавить грань), и в появившемся окне диалога установить флажок Use Selected Curve for Extrusion (Выдавить вдоль выделенной кривой). Параметр Taper (Заострение) уменьшает или увеличивает размер выделенных граней в процессе выдавливания. Параметр Twist (Скрутка) задает степень их скручивания, а параметр Divisions (Разбиений) определяет гладкость получаемой в результате формы. Если окажется, что выделенные грани не в состоянии следовать за всеми изгибами указанной вами кривой, увеличьте значение параметра Divisions (Разбиений).
Опорные клинья
Опорные клиньяОсталось смоделировать опорные противооткатные клинья, расположенные в основании катапульты. Они втыкаются в землю, удерживая катапульту на месте при выстреле.
1. Скопируйте группу Bracket и удалите копию из текущей иерархии, перетащив ее средней кнопкой мыши в окне диалога Outliner (Структура) на другое место (Рисунок 5.18).
2. Уменьшите размер кронштейна, а затем переместите и поверните его таким образом, чтобы он оказался на боковой стороне катапульты. Создайте полигональный куб и поменяйте его масштаб таким образом, чтобы он уместился внутри кронштейна. Вытяните его вдоль оси F, введя в поле Scale Y (Масштабирова-
ние по оси Y) значение 3,75, и «заострите» клин, выдавив нижнюю грань и уменьшив ее размер. Масштабирование без предварительного выдавливания приведет к формированию пирамиды, а не заостренного кола. Продублируйте группу, поверните ее на 180° и переместите на другую сторону катапульты. Сохраните сцену. Полученный объект показан на Рисунок 5.19. Для сравнения вы можете загрузить файл catapult_v2.mb с прилагаемого к книге компакт-диска.
Основание катапульты с болтами
5.16. Основание катапульты с болтами
Сохраните файл. Готовая версия основания катапульты находится в файле catapult_vl.mb на прилагаемом к книге компакт-диске. А вот как может выглядеть процесс создания болтов:
6. Сгруппируйте элементы основания катапульты и болты в логическом порядке (см. Рисунок 5.16).
Основание лебедки
Основание лебедкиСмоделируем блок, предназначенный для закрепления лебедки:
1. Создайте два длинных узких полигональных куба и поместите их поперек перекладин основания.
2. Для удерживающих лебедку кронштейнов создайте небольшой полигональный куб. Введите в поля Scale X (Масштабирование по оси X),
Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) значения 0,5, 0,32 и 0,44 соответственно. Выделите боковую грань и выберите в меню Edit Polygons (Правка полигонов) команду Extrude Face (Выдавить грань). Введите в поле Local Translate Z (Локальное смещение по оси Z) окна диалога Channel Box (Окно каналов) значение 0,75.
Основание
ОснованиеОснование катапульты состоит из соединенных друг с другом полигональных кубов, изображающих деревянные балки.
1. Выберите в меню Create (Создать) команду Polygon Primitives > Cube (Полигональный примитив > Куб). Этот куб послужит основой для двух длинных широких брусков, лежащих параллельно друг другу.
2. Введите в поля Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) окна диалога Channel Box (Окно каналов) значения 2, 0,8 и 19,5 соответственно. Сместите полученный объект на две единицы вправо.
3. Одна сторона основания готова. Выделите ее и выберите в меню Edit (Правка) команду Duplicate (Дублировать). Копия по умолчанию располагается поверх оригинала. В данный момент она выделена. Переместите ее на четыре единицы влево.
Основы полигонального моделирования
Основы полигонального моделированияСетки полигонов лучше всего подходят для моделей, имеющих прямоугольные формы, механических объектов и т. п. Впрочем, при наличии навыков работы с инструментами для редактирования полигонов существует возможность моделировать в этом формате даже персонажей. Обычно работа над моделью начинается с появления в сцене объекта-примитива и выдавливания его граней, в то время как для получения NURBS-объектов в большинстве случаев сначала требуется создать кривую.
Впрочем, существует возможность создать полигональную поверхность на основе таких же кривых. Третьим методом является применение инструмента Create Polygon Tool (Создание полигонов), позволяющего непосредственно формировать полигональные грани.
Перемычки корзины
5.24. Перемычки корзины
4. Из пары продублированных кронштейнов и цилиндра создайте опору для рычага.
5. Подпорку смоделируйте последовательным выдавливанием граней куба. В качестве наглядного пособия используйте Рисунок 5.25.
Подготовка к применению инструмента Wedge Faces
5.8. Подготовка к применению инструмента Wedge Faces
9. Щелкните на квадратике, расположенном справа от команды Wedge Faces (Вывдавит грань по дуге) в меню Edit Poligons (Правка полигонов). Введите в поле Wedqe Angle (Угол выдавливания) значение 65, а в поле Wedge Divisions (Разбиений при выдавливании подуге) - значение 5 и щелкните на кнопке Wedge Face (Выдавить по дуге). Убедитесь в том, что выдавленная грань по-прежнему выделена, и уменьшите ее масштаб по оси Х примерно в двое. Затем слегка поверните еепо направлению к руке, как показано на изображении слева.
10. Дважды воспользуйтесь функцией Extrude Face (Выдавить грань), в первый раз введя в поле Local Translate Z (Локальное смещение по оси Z) значение 0,5 , а во второй раз - 0,4. Пока рука выглядит несколько неуклюже, особенно в области большого пальца (на рисунке справа).
Подготовка полигонального куба
5.4. Подготовка полигонального куба к процессу формирования кисти руки
3. Нажмите клавишу F8 для перехода в режим редактирования подобъектов и нажмите кнопку Select by Component Type: Faces (Выделение подобъектов типа: Грани) в строке состояния. Можно также щелкнуть на кубе правой кнопкой мыши и выбрать в появившемся меню команду Face (Грань). Впрочем, на первых порах лучше пользоваться кнопками в строке состояния, чтобы привыкнуть к интерфейсу.
4. Выделите переднюю грань ближайшего к вам угла, щелкнув на голубом маркере, находящемся в ее центре. Пальцы будут формироваться выдавливанием. Но перед этим слегка поверните грань вокруг оси Y, чтобы расположить указательный палец под небольшим углом к ладони.
5. Выберите в меню Edit Polygons (Правка полигонов) команду Extrude Face (Выдавить грань) и введите в поле Local Translate I (Локальное смещение по оси Т) окна диалога Channel Box (Окно каналов) значение 0,4. Это будет первый сегмент указательного пальца. Таким же способом получите второй сегмент. При третьем выдавливании введите в поле Local Translate I (Локальное смещение по оси Т) значение 0,3. Результат этой операции показан на Рисунок 5.5.
Сохраните сцену. Сравнить полученный результат с нашей версией можно, загрузив файл poly_hand_vl.mb из папки ChapterFHes\Poly_Hand\scenes прилагаемого к книге компакт-диска.
6. Повторите шаги 4 и 5 для формирования еще трех пальцев. Благодаря предварительному повороту грани между пальцами появятся небольшие зазоры (Рисунок 5.6). Если же этого не сделать, пальцы будут плотно сжаты, как будто находятся в рукавице. Параметры выдавливания для каждого из них приведены в табл. 5.1.
Подведем итоги
Подведем итогиСоздание сложных моделей значительно упрощается после разбиения их на базовые элементы. Впрочем, даже простые объекты допустимо разбить на отдельные сегменты, из которых потом будет составлена модель.
Искусству моделирования на основе сеток полигонов в Maya нет аналогов. Его техника и последовательность действий совершенствуются со временем. И важно не столько знание всех хитростей производства, сколько понимание подхода к моделированию и умение превратить модель в сетку полигонов.
Полигональные грани созданные
5.1. Полигональные грани, созданные с помощью инструмента Create Polygon Tool

Создайте подобный полигон самостоятельно и, убедившись в том, что его поверхность выделена, выберите в меню Polygons (Полигоны) команду Triangulate (Разбить на треугольники). В результате поверхность будет разбита на набор граней, вполне доступный для редактирования.
Практический опыт
Практический опытРассмотрим процесс формирования кисти руки из простого полигонального куба.
Создайте новый проект с названием Poly_Hand или скопируйте его на жесткий диск своего компьютера из папки ChapterFiles\Poly_Hand прилагаемого к книге компакт-диска.
1. Создайте полигональный куб и откройте для него окно диалога Attribute Editor (Редактор атрибутов). На вкладке Polycubel введите в поля Subdivisions Width (Разбиений по ширине) и Subdivisions Depth (Разбиений по глубине) значения 4 и 3 соответственно. Если вы не видите этой вкладки в окне диалога Attribute Editor (Редактор атрибутов), выделите куб и нажмите клавишу Delete. Затем нажмите кнопку Construction History (История конструирования) в строке состояния и создайте куб заново.
2. Перейдите на вкладку pCubel и введите в поле Scale (Масштабирование) для координат У и Z значения 0,25 и 1,3 соответственно. Результат этого преобразования показан на Рисунок 5.4.
Преобразование NURBSповерхностей в полигональные сетки
Преобразование NURBS-поверхностей в полигональные сеткиНекоторые пользователи предпочитают моделировать объекты исключительно на основе неоднородных рациональных полигональных сплайнов, а затем при необходимости преобразовывать их в сетки полигонов. В конце концов вы найдете наиболее предпочтительный для себя метод моделирования, но сначала имеет смысл подробно познакомиться с каждым из них.
Попробуем преобразовать NURBS-модель алебарды в сетку полигонов. Подобная операция полезна, например, если вы решите использовать этот объект в компьютерной игре. Загрузите файл axe_model_v3.mb из папки ChapterFiles\Axe_Model\ scenes прилагаемого к книге компакт-диска. Сложнее всего в данном случае сохранить точность формы, поэтому преобразовывать объект мы будем по частям:
1. Выделите рукоятку алебарды, выберите в меню Modify (Изменить) команду Convert (Преобразовать) и щелкните на квадратике, расположенном справа от команды NURBS to Polygons (NURBS в полигоны). Выберите в меню Edit (Правка) появившегося окна диалога команду Reset Settings (Сбросить настройки) и щелкните на кнопке Apply (Применить). Поверх NURBS-версии рукоятки появится сетка полигонов. Сместите ее на восемь единиц вправо.
2. Щелкните на обухе и нажмите клавишу Т, чтобы выделить все составные части группы Back_Axe. Если в своей версии файла вы не группировали отдельные элементы, выделите обух рамкой. В данном случае преобразование с заданными по умолчанию параметрами снова даст вполне корректный результат. Поэтому щелкните на кнопке Apply (Применить) в окне диалога Convert NURBS to Polygons Options (Параметры преобразования NURBS в полигоны) и сдвиньте полученный объект на восемь единиц вправо.
3. Лопасть топора составлена из большого числа изогнутых линий, поэтому увеличим разбиение будущей полигональной поверхности. Введите в поле Fractional Tolerance (Частичная устойчивость) значение 0,0005. Это приведет к увеличению количества граней (Рисунок 5.2). Щелкните на кнопке Tessetlate (Разбить) и переместите новый объект на восемь единиц вправо.
Процесс производства
Процесс производстваСложные объекты принято моделировать по частям. Разделим катапульту на пять основных элементов, каждый из которых, в свою очередь, состоит из подобъек-тов:
Смоделируйте каждый из этих элементов, взяв за основу набросок, показанный на Рисунок 5.14, и схему с Рисунок 5.15.
Разбиение с выдавливанием
Разбиение с выдавливаниемДетализацию грани легко повысить с помощью инструмента Poke Faces (Разбиение с выдавливанием). Достаточно выделить нужную грань и выбрать одноименную команду в меню Edit Polygons (Правка полигонов). В центре грани появятся новая вершина и манипулятор преобразования Move (Перемещение), позволяющий переместить ее в нужном вам направлении. Это позволяет формировать на поверхности выпуклости и впадины. Создавая дополнительные детали только в тех областях, где это действительно нужно, вы сохраняете число граней модели минимальным и увеличиваете эффективность своей работы.
Разбиение
РазбиениеПри визуализации все трехмерные объекты разбиваются на треугольные грани, вне зависимости от того, к какому формату принадлежит их поверхность. Компьютер вычисляет положение каждой значимой точки поверхности и соединяет их друг с другом, формируя оболочку, имеющую вид визуализируемого объекта.
Установка переключателя Tessellation Method (Метод разбиения) в положение General (Общий) приводит к появлению заданного пользователем числа линий, равномерно делящих поверхность по горизонтали и вертикали. Если же поставить его в положение Control Points (По управляющим точкам), поверхность будет разбита в соответствии с числом управляющих точек на исходных кривых. Чем больше количество управляющих вершин и интервалов, тем выше окажется разбиение поверхности. При установке этого переключателя в положение Count (По количеству граней) разбиение происходит на указанное пользователем число граней. Поэкспериментируйте с различными вариантами разбиения, обращая особое внимание на структуру получаемых поверхностей.
Результат формирования суставов
5.10. Результат формирования суставов с помощью инструмента Poke Faces
18. Щелкните на кнопке Smooth (Сгладить), и рука приобретет более естественный вид. Обратите внимание на число узлов в области INPUTS (Входные данные) окна диалога Channel Box (Окно каналов) (Рисунок 5.11). Их появление связано с фиксацией истории конструирования в процессе выполнения всех перечисленных

5.11. Сглаженная рука с историей ее создания
в упражнении действий. В любой момент можно выделить какой-нибудь узел и отредактировать соответствующий элемент в окне диалога Attribute Editor (Редактор атрибутов). Если же вы считаете, что модель полностью готова, выберите в меню Edit (Правка) команду Delete by Type > History (Удалить объекты типа > История).

Сохраните сцену. Чтобы проверить корректность полученной модели, загрузите файл poly_hand_v3.mb с прилагаемого к книге компакт-диска.
Результат задания слишком большого
5.3. Результат задания слишком большого значения параметра Roundness
Вы можете положиться на выбор программы, позволив ей задать значение параметра Roundness (Скругление) в соответствии с размером геометрии, на которой формируется скос. Для этого достаточно установить флажок Auto Fit (Автоматический подбор).
Инструмент Bevel (Скос) используется для скругления ребер, а в некоторых случаях и для создания дополнительных деталей.
Рука после создания четырех пальцев
5.6. Рука после создания четырех пальцев
Таблица 5.1. Параметры выдавливания
Палец
7. Осталось сформировать большой палец. Для этого сначала потребуется сдвинуть пару ребер, оставив свободное место. Выделите три ребра со стороны указательного пальца и слегка переместите их в положительном направлении оси Z (Рисунок 5.7). В результате появится вытянутая грань для большого пальца.
Рука с более пропорциональными пальцами и суставами
5.9. Рука с более пропорциональными пальцами и суставами
14. Теперь увеличим детализацию руки, сделав суставы слегка выступающими. Для этого потребуются дополнительные вершины. Их можно получить с помощью инструмента Split Polygon Tool (Инструмент разбиения полигонов). Вернитесь в режим выделения объектов и выделите руку. Выберите в меню Edit Polygons (Правка полигонов) команду Split Polygon Tool (Инструмент разбиения полигонов). Указатель мыши изменит свою форму. Щелкните на ребре в нижней части указательного пальца, а затем — на противоположном ребре, как показано на левом изображении.
15. Если теперь нажать клавишу Enter, линия превратится в новое ребро. Но пока вы находитесь в режиме работы с инструментом Split Polygon Tool (Инструмент разбиения полигонов), поэтому создайте еще три точки, расположенные вдоль тыльной стороны ладони, как показано на правом изображении.
16. Нажмите клавишу Enter, и на тыльной стороне ладони появятся четыре новых ребра и, следовательно, четыре новые грани. По очереди выделяйте каждую из них и выбирайте в меню Edit Polygons (Правка полигонов) команду Poke Faces (Разбиение с выдавливанием). После каждого выполнения этой команды соответствующая грань будет разбита на четыре части, с вершиной посередине. Появится также специальный манипулятор, который требуется слегка переместить вверх по оси Z. Полученный результат показан на Рисунок 5.10.
Рычаг катапульты
Рычаг катапультыТеперь попытайтесь самостоятельно создать рычаг катапульты, показанный на Рисунок 5.22. Используйте уже знакомые вам техники.
1. Рычаг на первый взгляд имеет замысловатую форму, но ее довольно просто воспроизвести выдавливанием граней. Используйте в качестве наглядного пособия Рисунок 5.23. Он позволит вам определить количество разбиений при каждой операции выдавливания.
С помощью инструмента Cut Faces
5.12. С помощью инструмента Cut Faces Tool можно разделить объект на части или просто отрезать одну из частей
Для применения этого инструмента достаточно выбрать в меню Edit Polygons (Правка полигонов) команду Cut Faces Tool (Инструмент разрезания граней). Установка флажка Delete the Cut Faces (Удалить отрезаемые грани) в окне диалога Polygon Cut Face Tool Options (Параметры инструмента разрезания полигонов) приведет к тому, что отрезанная часть просто исчезнет.
Инструмент Cut Faces Tool (Инструмент разрезания граней) позволяет создать прямую границу поверхности путем обрезки лишних фрагментов.
Схема разбиений модели
5.23. Схема разбиений модели
Схема разбиений опоры для рычага
5.25. Схема разбиений опоры для рычага
6. Сгруппируйте все созданные объекты и сделайте новую группу дочерней по отношению к узлу Catapult.
Сохраните сцену и сравните полученный результат с объектом из файла catapult_ vS.mb. Готовая модель катапульты показана на Рисунок 5.26.
Схематичное изображение катапульты
5.15. Схематичное изображение катапульты
Создание полигональных примитивов
Создание полигональных примитивовКоманда Create > Polygon Primitives (Создать » Полигональные примитивы) открывает меню с перечнем доступных полигональных примитивов. Щелчок на квадратике, расположенном справа от названий этих примитивов, дает доступ к редактированию их параметров. Для примера щелкните на квадратике, расположенном справа от команды Sphere (Сфера).
Наиболее заметным различием полигональных и NURBS-примитивов является способ задания детализации поверхности. В то время как детализация NURBS-поверхности задается изопараметрическими кривыми, у полигональных сеток рассматривается число разбиений (subdivisions) на грани. Чем выше число разбиений, тем более гладкой будет поверхность.
Убедитесь в том, что кнопка Construction History (История конструирования) в строке состояния нажата, и щелкните на кнопке Create (Создать) в окне диалога Polygon Sphere Options (Параметры полигональной сферы), а затем нажмите комбинацию клавиш Ctr+a, чтобы открыть для вновь созданной сферы окно диалога Attribute Editor (Редактор атрибутов). На вкладке polySpherel вы найдете ползунки параметров Subdivisions Axis (Разбиений вдоль оси) и Subdivisions Height (Разбиений по высоте), предназначенные для изменения уровня детализации поверхности.
Создание продолговатой грани для большого пальца
5.7. Создание продолговатой грани для большого пальца
8. Выделите продолговатую грань сбоку, затем щелкните на объекте правой кнопкой мыши и выберите в появившемся меню команду Edge (Ребро). При нажатой клавише Shft выделите ребро на правой стороне этой грани (рис5 8)
Указательный палец
5.5. Указательный палец
Увеличение детализации областей полигональной сетки
Увеличение детализации областей полигональной сеткиКак вы убедились в процессе моделирования руки, увеличение детализации поверхности обязательно сопровождается созданием новых граней. При этом благодаря появлению дополнительных деталей объект приобретает более естественную форму. Рука, показанная на рисунке, тоже создана описанным способом, но она намного более детализирована с помощью инструментов, о которых мы поговорим в этом разделе. Кроме того, у нее были созданы ногти.

Наиболее сложные объекты начинаются с самых простых моделей. Требуются только время и усилия пользователя. В Maya существуют несколько способов увеличения детализации полигональной поверхности.
потраченное на систематизацию объектов сцены,
ВНИМАНИЕВремя, потраченное на систематизацию объектов сцены, окупиться позднее, при их анимации.
Выдавливание по дуге
Выдавливание по дугеДействие команды Wedge Faces (Выдавить грани по дуге) в соответствии с ее названием сводится к выдавливанию граней по дуге, в отличие от команды Extrude Face (Выдавить грань), которая приводит к выдавливанию граней вдоль отрезка прямой. В данном случае требуется не только выделить грань, но и указать ребро, вокруг которого будет происходить поворот.
Выделите грань, щелкните на объекте правой кнопкой мыши и выберите в появившемся меню команду Edge (Ребро). Затем при нажатой клавише Shift щелчком выделите одно из ребер этой грани и щелкните на квадратике, расположенном справа от команды Wedge Faces (Выдавить грани по дуге) в меню Edit Polygons (Правка полигонов).
По умолчанию параметр Wedge Angle (Угол выдавливания), задающий угол поворота граней, равен 90, а число создаваемых при этом граней, определяемое параметром Wedge Divisions (Разбиений при выдавливании по дуге), равно 10.

Инструмент Wedge Faces (Выдавить грани по дуге) используется при моделировании таких элементов персонажа, как локтевые и коленные сгибы, а также при построении арок и тоннелей.
Выдавливание со скосом
Выдавливание со скосомИнструмент Bevel (Скос) работает на полигональных сетках таким же способом, как и на NURBS-поверхностях. Впрочем, в этом случае он используется в основном для скругления острых углов. Из выделенного ребра или ребер создаются новые грани. В Maya 6 этот инструмент приобрел ряд новых параметров. Выделите ребро или набор ребер и щелкните на квадратике, расположенном справа от команды Bevel (Скос) в меню Edit Polygons (Правка полигонов). Ползунок Offset Distance (Величина смещения) задает расстояние от выделенного ребра до центра новой грани. По существу, он определяет размер скошенного угла. Параметр Segments (Сегментов) указывает количество сегментов, формирующих скос. Чем выше его значение, тем более гладким получится скругление. Оставив этому параметру заданное по умолчанию значение 1, вы получите всего одну дополнительную грань.
Задания для самостоятельной работы
Задания для самостоятельной работыНа основе полигональных сеток можно создать самые разные объекты. Чтобы закрепить полученные знания и приобрести дополнительный опыт по использованию соответствующего инструментария, попытайтесь самостоятельно смоделировать следующие предметы:
Новые возможности в Maya 6
Чайник полученный на основе поверхностей
6.20. Чайник, полученный на основе поверхностей с иерархическим разбиением
Процедура преобразования в сетку полигонов у поверхностей с иерархоческим разбиением и NURBS-поверхности практически одинаковы:
1. Выделите все объекты сцены, выберите в меню Modify (Изменить) команду Convert (Преобразовать) и щелкните на квадратике, расположенном справа от команды Subdiv to Polygons (Поверхности с иерархическим разбиением в полигоны). Появится окно диалога, показанное на Рисунок 6.21.
2. Установите переключатель Tessellation Metod (Метод разбиения) в положение Adaptive (Адаптивный). Именно такой способ разбиения обычно дает самые лучшие результаты. В этом случае для каждого уровня разбиения создается равное число полигональных граней. Чем выше уровень разбиения области, тем больше количество граней будет для нее создано.
Человеческая рука превращена в
6.4. Человеческая рука превращена в руку инопланетянина с помощью деформатора Lattice
Как вы уже убедились, решетки позволяют подробно редактировать объекты без непосредственного перемещения управляющих вершин поверхности. С их помощью вы можете поменять форму как объекта в целом, так и его отдельных элементов.
Деформатор Lattice (Решетка) работает не только с полигональными сетками, но и со всеми остальными типами поверхностей в Maya. С его помощью вы можете придать модели определенную форму, а также создать эффект изменения формы во времени.
Дальнейшее редактирование модели чайника
Дальнейшее редактирование модели чайникаПопытайтесь создать на поверхности чайника дополнительные детали или даже изменить его конструкцию. Например, можно добавить свисток. Или создать набор чашек с блюдцами на основе поверхностей с иерархическим разбиением. Благодаря полученному в этой главе опыту вы сможете смоделировать целую кухню!
Кроме того, попробуйте, используя изученные техники, создать кисть руки из главы 5.
Изменение формы чайника с помощью деформатора Lattice
6.15. Изменение формы чайника с помощью деформатора Lattice
11. Перед преобразованием объекта в поверхность с иерархическим разбиением потребуется создать еще одну деталь, которая гарантирует наличие плоского днища после преобразования. Выделите чайник в окне проекции Side (Вид сбоку) или Front (Вид спереди) и выберите в меню Edit Polygons (Правка полигонов) команду Cut Faces Tool (Инструмент разрезания граней). Желательно открыть окно диалога с параметрами данного инструмента и выбрать в меню Edit (Правка) этого окна команду Reset Setting (Сбросить настройки). Создайте набор новых граней, идущих параллельно нижней поверхности чайника (Рисунок 6.16).
Команда Keep Faces Together позволяет
6.13. Команда Keep Faces Together позволяет выдавливать грани как единое целое
7. Выделите боковые грани ручки и выдавите вовнутрь, слегка уменьшив их размер, как показано на изображении справа.
Моделирование с помощью деформатора Lattice
Моделирование с помощью деформатора LatticeКак вы имели возможность убедиться в предыдущих главах при изучении полигонального моделирования и моделирования на основе неоднородных рациональных сплайнов Безье, деформаторы играют большую роль при создании и редактировании формы объектов. Например, нелинейный деформатор Bend (Изгиб) вызывает изгиб объекта, к которому он присоединен. Это простая деформация. Более сложное воздействие можно получить, например, с помощью деформатора Lattice (Решетка).
Этот деформатор, как следует из его названия, создает вокруг объекта решетку, контролирующую вид геометрии. Перемещения точек решетки сопровождаются изменением формы объекта. Чем больше количество этих точек, тем выше контроль.
Деформатор Lattice (Решетка) особенно полезен при редактировании сложной полигональной сетки или слишком плотной NURBS-поверхности. Непосредственная работа с такими объектами обычно затруднена. Поэтому воздействие на них осуществляется перемещением точек решетки.
Деформатор Lattice (Решетка) применим к поверхности любого типа, кроме того, одна решетка может воздействовать на несколько поверхностей одновременно. Перемещая объект сквозь решетку или, наоборот, двигая решетку вдоль поверхности объекта, можно получить анимированную деформацию.
Морская звезда после придания ей формы
6.8. Морская звезда после придания ей формы
7. Щелкните на объекте правой кнопкой мыши и выберите в появившемся меню команду Display Level > 2 (Уровень отображения > 2). Вершины следующего, более высокого уровня имеют вид цифры 2. Теперь вы можете придать морской звезде характерный вид. Попытайтесь сгладить области между «остриями» (Рисунок 6.8). Также попытайтесь переместить вершины первого или второго уровня таким образом, чтобы нижняя поверхность модели стала плоской.
8. Для получения формы, показанной на Рисунок 6.8, может потребоваться увеличение детализации отдельных областей. На данный момент максимальным уровнем редактирования является второй. Выделите вершины, расположенные в промежутках между «остриями» звезды (Рисунок 6.9).
Нолики представляют нулевой уровень
6.7. Нолики представляют нулевой уровень детализации поверхности с иерархическим разбиением и располагаются в тех же местах, что и вершины аппроксимирующей сетки полигонов
5. Щелкните на модели правой кнопкой мыши и выберите в появившемся меню команду Display Level > 1 (Уровень отображения > 1). На этом уровне мы придадим звезде нужную форму. Выделяйте вершины, расположенные между «остриями» звезды, и перемещайте их по направлению к центру. Уровни детализации автоматически создаются в момент преобразования объекта в поверхность с иерархическим разбиением. Следующую операцию вам предстоит проделать уже на втором уровне.
Совет
СОВЕТ

Для увеличения уровня детализации достаточно выделить все вершины объекта на самом высоком уровне и выбрать в меню Subdiv Surfaces (Поверхности с иерархическим разбиением) команду Refine Selected Components (Уточнить выделенные компоненты). После этого в меню Display Level (Уровень отображения) появится номер следующего уровня.
6. Сохраните сцену. При желании вы можете сравнить полученный результат с нашей версией, загрузив файл Starfish_v02.ma с прилагаемого к книге компакт-диска.
Окно диалога Convert Subdiv To Polygons Options
6.21. Окно диалога Convert Subdiv To Polygons Options
3. Параметр Divisions Per Face (Разбиений на одну грань) управляет степенью сглаживания итоговой полигональной поверхности. При заданном по умолчанию значении 1 чайник будет выглядеть разбитым на отдельные грани. Присвойте этому параметру значение 2.
4. Но самые лучшие результаты можно получить, преобразовывая объект по частям и регулируя значение параметра Divisions Per Face (Разбиений на одну грань) по обстоятельствам. Вы увидите, что значение 2 подходит ко всем частям, кроме ручки. В процессе преобразования ручки присвойте этому параметру значение 3.
По умолчанию выдавливание граней происходит по отдельности
6.12. По умолчанию выдавливание граней происходит по отдельности
Подведем итоги
Подведем итогиМоделирование можно считать одним из наиболее необходимых аспектов компьютерной графики, так как данная стадия требуется в подавляющем большинстве проектов. Поэтому изучение компьютерной графики начинается именно с моделирования.
Как вы убедились, получить объект можно различными способами. Это дает возможность выбрать собственный стиль моделирования. Впрочем, для подобного выбора нужен немалый опыт. Хорошие модельеры имеют наметанный глаз, отмечающий все детали, и привычку к выполнению повторяющихся действий.
Неустанно практикуйтесь. Моделируйте все, что попадается вам на глаза. Пытайтесь создать одну и ту же модель разными способами, переходите от NURBS-поверхностей к сеткам полигонов и поверхностям с иерархическим разбиением, чтобы как можно лучше освоить инструментарий Maya. Особое внимание уделяйте систематизации узлов и именованию создаваемых объектов.
После создания пятиугольника разделите
6.5. После создания пятиугольника разделите каждую из его сторон пополам
5. Переместите вновь созданные ребра к центру, чтобы получить звезду. В результате вы получите основу моделируемого объекта.

6. Сохраните сцену. Для сравнения загрузите файл Starfish_v01.ma, расположенный в папке ChapterFHes\Starfish\scenes прилагаемого к книге компакт-диска.
Построение металлического чайника
Построение металлического чайникаТеперь, когда вы получили представление о процессе создания и редактирования поверхностей с иерархическим разбиением, попробуем смоделировать еще один объект — металлический чайник. В главе 12 вам предстоит создать пар, выходящий из его носика. В данном случае моделирование начнется с простой полигональной формы, которая затем будет преобразована в поверхность с иерархическим разбиением.
Преобразование в поверхность с иерархическим разбиением
Преобразование в поверхность с иерархическим разбиениемБазовая полигональная форма будущего объекта готова. Пришла пора преобразовать ее в поверхность с иерархическим разбиением. 1. Выделите звезду и выберите в меню Modify (Изменить) команду Convert > Polygons to Subdiv (Преобразовать > Полигоны в поверхность с иерархическим разбиением). Результат этого преобразования показан на Рисунок 6.6.
Преобразование в сетку полигонов
Преобразование в сетку полигоновБольшинство моделей, созданных на основе поверхностей с иерархическим разбиением, после завершения работы преобразуются в сетку полигонов. Сами по себе подобные поверхности требуют значительного количества ресурсов, соответственно, упомянутое преобразование способствует повышению производительности дальнейшей работы, например анимации модели. Именно такой подход обычно демонстрируют профессионалы.
Размещение решетки воздействия
6.3. Размещение решетки воздействия и базовой решетки вокруг указательного пальца
5. Перемещая точки решетки, удлините указательный палец и расширьте его в области суставов.
Совет
СОВЕТ

Перед тем как удалить последнюю решетку, подвигайте сквозь нее палец и обратите внимание на то, как при этом меняется его вид. Попытайтесь представить, как этот эффект можно использовать в анимации. Скажем, таким способом можно создать шарик, проталкиваемый сквозь трубу.
Рука инопланетянина (Рисунок 6.4) создана исключительно с помощью деформатора Lattice (Решетка).
Решетка назначенная полигональной модели руки
6.1. Решетка, назначенная полигональной модели руки
редактирования, и выберите в меню Deform (Деформация) команду Create Lattice (Создать решетку). На Рисунок 6.1 показана детализированная полигональная модель руки, которой назначена решетка с заданными по умолчанию параметрами. Назначению решетки предшествовало выделение верхнего узла рассматриваемой модели.
В качестве практического примера работы с деформатором Lattice (Решетка) предлагаем вам отредактировать детализированную модель руки. Для этого потребуется несколько вариантов решеток. Перед вами стоит задача — получить руку инопланетянина, удлинив пальцы и сделав их более тонкими. Выполнение подобного преобразования путем перемещения вершин требует времени и значительных усилий. Намного проще реализовать его с помощью деформатора.
Загрузите файл detailed_poly_hand.ma из папки \ChapterFiles\Poly_Hand\scenes прилагаемого к книге компакт-диска.
1. Выделите верхний узел руки (он называется poly_hand) и выберите в меню Deform (Деформация) команду Create Lattice (Создать решетку). Появится решетка с заданными по умолчанию параметрами, воздействующая одновременно на всю руку. Именно она показана на Рисунок 6.1. Вы можете вызвать окно диалога с параметрами деформатора непосредственно перед созданием решетки, но в данном случае редактирование параметров отложено на более позднее время.
2. Сейчас в сцене выделена только что созданная решетка. Откройте для нее окно диалога Attribute Editor (Редактор атрибутов) и перейдите на вкладку ffdlLat-ticeShape. Здесь нас интересуют три атрибута: S Divisions (Разбиений по S), Т Divisions (Разбиений по Т) и U Divisions (Разбиений по U)1, определяющие число разбиений решетки. Присвойте им значения 2, 3 и 2 соответственно, чтобы получить решетку, показанную на Рисунок 6.2. Цифры 3x2x3 обозначают количество составляющих решетку линий, а не число сечений. В противном случае решетка описывалась бы цифрами 2 х 1 х 2.
Результат изменения числа разбиений решетки
6.2. Результат изменения числа разбиений решетки
и поменяйте масштаб решетки сначала по оси Z, чтобы рука стала более тонкой, а потом по оси X, чтобы она стала длиннее. В данном случае масштабирование решетки приведет к деформации всей руки.
Итак, вы изменили форму руки. Больше эта решетка не понадобится. Но если ее просто удалить, рука вернется в исходное состояние. Поэтому сначала нужно удалить историю конструирования объекта.
5. Выделите верхний узел руки и выберите в меню Edit (Правка) команду Delete by Type > History (Удалить объекты типа > История).
Теперь нужно удлинить пальцы и сделать более широкими их суставы. Начнем с указательного пальца:
1. Выделите верхний узел руки и создайте для него решетку.
2. Теперь можно разбить ее, получив тем самым возможность влиять на вид каждого из пальцев, но мы воспользуемся другим способом. Намного проще уменьшить масштаб решетки таким образом, чтобы она располагалась точно вокруг указательного пальца.
Результат перемещения и масштабирования
6.10. Результат перемещения и масштабирования горизонтальных наборов ребер
Результат преобразования чайника
6.17. Результат преобразования чайника и крышки в поверхность с иерархическим разбиением
3. Осталось смоделировать носик и ручку. Выберите в меню Create > Subdiv Primitives (Создать > Примитивы на основе поверхностей с иерархическим разбиением) команду Torus (Top). Измените масштаб тора, поверните его и поместите поверх чайника.
4. Убедитесь в том, что ручка по-прежнему выделена, и выберите в меню Subdiv Surfaces (Поверхности с иерархическим разбиением) команду Polygon Proxy Mode (Режим полигональной аппроксимации). Перемещая вершины полигональной-аппроксимирующей модели, сделайте ручку тоньше и удлините ее (Рисунок 6.18).
5. Не снимая выделения с ручки, вернитесь в стандартный режим, выбрав в меню Subdiv Surfaces (Поверхности с иерархическим разбиением) команду Standard Mode (Стандартный режим). Теперь нужно сгладить ручку — для этого создадим дополнительные разбиения. Перейдите в режим редактирования подобъектов, щелкните на ручке правой кнопкой мыши и выберите в появившемся контекстном меню команду Refine (Уточнить). Теперь вершины будут иметь вид единиц. По мере необходимости переходя с нулевого уровня на первый и обратно, отредактируйте вид ручки по своему вкусу. Для перехода используйте команду Display Level (Уровень отображения) из меню, вызываемого щелчком правой кнопкой мыши.
6. Создание носика начните с объекта-примитива Cylinder (Цилиндр) из группы Subdiv Primitives (Примитивы на основе поверхностей с иерархическим разбиением). Перейдите в режим редактирования подобъектов и выделите все грани цилиндра. Щелкните на нем правой кнопкой мыши и выберите в появившемся меню команду Display Level > 2 (Уровень отображения > 2). Выделите внутренний круг граней на верхней поверхности цилиндра и опустите их вниз (Рисунок 6.19).
Результат преобразования сетки
6.6. Результат преобразования сетки полигонов в поверхность с иерархическим разбиением
2. После преобразования объект потерял свою исходную форму, зато вы получили дополнительный контроль над его состоянием. Нажмите клавишу 3, чтобы увеличить детализацию модели. В данном случае, как и при работе с NURBS-поверхностями, детализацией управляют клавиши 1, 2 и 3.
Результат скругления ручки чайника путем перемещения ребер
6.14. Результат скругления ручки чайника путем перемещения ребер
9. Выделите четыре грани на верхней поверхности чайника и выдавите их. Уменьшите их масштаб, а затем немного приподнимите вверх, чтобы получить округлую форму.
10. Выделите чайник и выберите в меню Deform (Деформация) команду Create Lattice (Создать решетку). Введите в поля S Divisions (Разбиений по S), Т Divisions (Разбиений по Т) и U Divisions (Разбиений по U) окна диалога Channel Box (Окно каналов) значения 2, 3 и 2 соответственно. Отрегулируйте положение решетки, как показано на Рисунок 6.15. После получения данной формы выделите чайник и удалите историю его конструирования. После этого удалите решетку.
Результат удаления лишних ребер с верхней поверхности
6.11. Результат удаления лишних ребер с верхней поверхности
Ручка чайника
6.18. Ручка чайника
7. Расположите носик на поверхности чайника. Переместите вершины нижней поверхности цилиндра таким образом, чтобы они совпали с поверхностью чайника. Готовый объект показан на Рисунок 6.20.
Сохраните сцену. Созданный вами чайник будет использован в главе 12 при изучении динамики частиц.
С помощью инструмента Cut Faces
6.16. С помощью инструмента Cut Faces Tool создайте набор граней, параллельных нижней поверхности чайника, сформировав тем самым небольшую кромку
12. Выделите все полученные таким способом грани и выдавите их немного вперед. Перед этой операцией выберите в меню Polygons (Полигоны) команду Tool Options (Параметры инструмента) и убедитесь в наличии флажка рядом с командой Keep Faces Together (Объединить грани). В противном случае грани будут выдавлены по отдельности.

13. Сохраните сцену. Для сравнения загрузите файл Kettle_Model_v01.ma с прилагаемого к книге компакт-диска.
Создание базовой полигональной модели
Создание базовой полигональной модели1. Построение чайника мы начнем с полигонального цилиндра. Выберите в меню Create (Создать) команду Polygon Primitives (Полигональные примитивы) и щелкните на квадратике, расположенном справа от команды Cylinder (Цилиндр). Введите в поля Subdivisions Around Axis (Разбиение вдоль оси) и Subdivisions Along Height (Разбиений по высоте) появившегося окна диалога значения 8 и 4 соответственно и щелкните на кнопке Create (Создать).
2. Для создания крышки чайника вам потребуется еще один цилиндр. В данном случае параметры Subdivisions Around Axis (Разбиение вдоль оси) и Subdivisions Along Height (Разбиений по высоте) должны иметь значения 8 и 2 соответственно. Площади оснований обоих цилиндров должны совпадать.
3. По очереди выделяя горизонтальные ряды ребер, двигайте и масштабируйте их таким образом, чтобы придать крышке форму, показанную на Рисунок 6.10. Затем выделите четыре ребра на верхней поверхности и удалите их. В итоге эта поверхность должна приобрести вид, показанный на Рисунок 6.11.
Создание морской звезды
Создание морской звездыСоздание морской звезды начнется с полигональной сетки, как у моделей, с которыми вы познакомились в главе 5. Затем эта сетка будет преобразована в поверхность с иерархическим разбиением, чтобы облегчить процесс придания объекту нужной формы.
1. Создайте новую сцену и нажмите клавишу F3 для перехода в режим Modeling (Моделирование). Создайте полигональный куб и введите в поля Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) окна диалога Channel Box (Окно каналов) значения 8,1,2 несоответственно.
2. Воспользуйтесь инструментом Split Polygon Tool (Инструмент разбиения полигонов), вызываемым одноименной командой меню Edit Polygons (Правка полигонов), чтобы разделить одну из боковых сторон полученного параллелепипеда пополам.
Создание носика
6.19. Создание носика
Создание решетки
Создание решеткиУбедитесь в том, что вы находитесь в режиме Animation (Анимация). В противном случае нажмите клавишу F2. Выделите модель или группу, предназначенную для
Выделение областей для которых
6.9. Выделение областей, для которых требуется увеличить детализацию
9. Щелкните на любой группе выделенных вершин правой кнопкой мыши и выберите в появившемся меню команду Refine (Уточнить). Это приведет к увеличению детализации в выделенных областях. Постарайтесь придать объекту форму, близкую к показанной на Рисунок 6.8.
Примечание
ПРИМЕЧАНИЕ
Щелчок на выделенном наборе вершин с последующим выбором в появившемся меню команды Refine (Уточнить) является аналогом выбора в меню Subdiv Surfaces (Поверхности с иерархическим разбиением) команды Refine Selected Components (Уточнить выделенные компоненты). Выполнение данных операций для выделенного набора вершин приводит к появлению дополнительного разбиения исключительно в этой области. При этом в любой момент вы можете перейти к аппроксимирующей полигональной сетке и отредактировать общую форму модели. 10. Сохраните сцену и сравните полученный результат с авторским, загрузив файл Starfish_v03.ma с прилагаемого к книге компакт-диска.
Совет
СОВЕТ
Вы можете воспользоваться описанной техникой для создания кисти руки, над которой вы работали в главе 5.
Новые возможности в Maya 6
Анизотропная раскраска
Анизотропная раскраскаАнизотропная раскраска используется для имитации деформированных поверхностей, например смятой фольги или покореженного пластика. Термин «анизотропный» означает наличие свойств, зависящих от направления. Соответственно, форма зеркальных бликов в этом типе раскраски зависит от направления поверхности. В отличие от вариантов раскраски Phong (По Фонгу) и ВИпп (По Блинну), в данном случае зеркальные блики равномерно распределены по поверхности и имеют нерегулярную форму. Раскраска типа Anisotropic (Анизотропная) используется при имитации поверхностей с желобками, например поверхности компакт-диска. Ее вид показан на изображении снизу.
Атрибуты материалов
Атрибуты материаловКак и все объекты в Maya, раскраски состоят из узлов. В каждом из этих узлов вид раскраски определяется атрибутами. Вот краткий перечень основных атрибутов, с которыми вам придется иметь дело:
Примечание
ПРИМЕЧАНИЕ

Как вы узнали в главе 1, файлы изображений сохраняются с каналами красного, зеленого и синего цветов, в которых содержится информация о каждом пикселе сцены. Некоторые форматы, в том числе TIFF и TARGA, оснащены также альфа-каналом, называемым еще каналом прозрачности. Этот канал содержит информацию в оттенках серого, определяющую прозрачность изображения. Белые участки альфа-канала соответствуют полностью непрозрачным областям, в то время как черные — полностью прозрачным. Серый же цвет соответствует частичной прозрачности. Эта информация незаменима на стадии монтажа, как вам предстоит убедиться в главе 11.
Некоторые из атрибутов доступны только для определенных типов раскраски. Вот атрибуты для раскрасок Phong (По Фонгу), Phong E (Расширенная по Фонгу) и Blinn (По Блинну):
Атрибуты текстуры Wood в окне диалога Attribute Editor
7.6. Атрибуты текстуры Wood в окне диалога Attribute Editor
2. Щелкните на кнопке с рисунком шахматной доски, расположенной справа от ползунка Color (Цвет). В разделе 3D Textures (Трехмерные текстуры) появившегося окна диалога Create Render Node (Создать узел визуализации) щелкните на кнопке Wood (Дерево). Атрибуты этой текстуры в окне диалога Attribute Editor (Редактор атрибутов) показаны на Рисунок 7.6.
3. Щелкните на поле образца цвета Filler Color (Цвет заливки) и введите в поля Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность) окна диалога Color Chooser (Выбор цвета) значения 8,5, 0,85 и 0,43 соответственно, чтобы получить красно-коричневый цвет. Затем щелкните на поле образца цвета Vein Color (Цвет прожилок) и введите в поля Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность) значения 8,5, 0,75 и 0,08 соответственно. Вы получите более темную версию предыдущего цвета.
4. Параметру Vein Spread (Разброс прожилок) присвойте значение 0,7, а параметру Layer Size (Размер слоя) — значение 0,119. Ползунок Grain Color (Цвет зерна) немного переместите влево. В результате получится замечательная имитация красного дерева.
Текстура Wood (Дерево) относится к процедурным трехмерным текстурам. Она проецируется на объект с помощью узла размещения, как и текстура Env Chrome (Хромовое зеркало), с помощью которой мы формировали отражения на поверхности металла. Выделите рукоятку алебарды, щелкните на образце материала правой кнопкой мыши и выберите в появившемся меню команду Assign Material to Selection (Назначить материал выделенному объекту). Более подробную информацию о процедурных текстурах вы получите в разделе «Узлы текстуры» этой главы.
Совет
СОВЕТ

Существуют и другие способы назначения материалов. Например, можно средней кнопкой мыши перетащить материал из ячейки образца на объект в окне проекции.
5. Чтобы увидеть темную текстуру на поверхности объекта, создадим дополнительный источник света. Выберите в меню Create (Создать) команду Lights > Ambient Light (Источники света > Рассеянный) и нажмите комбинацию клавиш Ctrl+a, чтобы открыть для нового осветителя окно диалога Attribute Editor (Редактор атрибутов). Присвойте параметру Intensity (Интенсивность) значение 2,5.
6. Сосредоточьтесь на рукоятке алебарды и визуализируйте сцену (Рисунок 7.7). Обратите внимание на то, что повторение текстуры на поверхности объекта приводит к появлению странного и неестественного рисунка. Значит, нам нужно отредактировать расположение текстуры.
Чтобы добавить текстуру атрибуту
7.3. Чтобы добавить текстуру атрибуту материала, щелкните на кнопке с рисунком шахматной доски, расположенной справа от имени этого атрибута
11. В верхней части окна диалога Attribute Editor (Редактор атрибутов) слева от кнопки Presets (Предустановленные значения) находится кнопка Go to Output Connection (Перейти к выходным связям), отмеченная изображением указывающей вправо стрелки. Щелкните на ней, чтобы вернуться к редактированию основных атрибутов материала, и введите в поле Reflectivity (Отражательная способность) значение 0,85. Чем выше значение этого параметра, тем лучше карта текстуры, заданная атрибутом Reflected Color (Цвет отраженного света), будет отражаться в поверхности. На Рисунок 7.4 показан вид топора до и после назначения атрибуту Reflected Color (Цвет отраженного света) текстуры Env Chrome (Хромовое зеркало). Эта текстура создает впечатление полированной поверхности топора путем формирования отражений сетки, представляющей земную поверхность, и ярко-голубого неба.
Деревянная рукоятка
Деревянная рукояткаДля рукоятки алебарды замечательно подойдет блестящее красное дерево, для имитации которого нам также потребуется раскраска Phong (По Фонгу):
1. В меню Create (Создать) окна диалога Hypershade (Редактор узлов) выберите команду Materials > Phong (Материалы > По Фонгу). В окне диалога Attribute Editor (Редактор атрибутов) введите в поля Diffuse (Цвет диффузного рассеяния) и Cosine Power (Размер бликов) значения 0,7 и 50 соответственно. Параметру Specular Color (Цвет зеркальных бликов) присвойте светло-серый цвет.
Градиентная раскраска
Градиентная раскраскаТекстура Ramp (Линейный градиент) может быть назначена практически любому атрибуту материала. Она используется для создания плавных переходов между цветами и, как вы убедитесь в главе 12, может применяться даже для управления частицами. Эта текстура не только позволяет моделировать цветовые переходы, но и управляет прозрачностью, свечением и тому подобными эффектами. Вам еще предстоит подробно познакомиться с ней при выполнении упражнений данной главы.
Градиентная раскраска содержит набор узлов текстуры Ramp (Линейный градиент), присоединенных к различным атрибутам. Это избавляет вас от необходимости назначать данную текстуру вручную и упрощает редактирование материала. Ведь все управляющие элементы в данном случае находятся на одной вкладке окна диалога Attribute Editor (Редактор атрибутов) (Рисунок 7.1).
Для создания нового перехода достаточно щелкнуть в произвольном месте цветового градиента. Цвет редактируется с помощью цветового поля Selected Color (Выделенный цвет). Выделяется цвет щелчком на кружке, расположенном над градиентом. Перемещая этот кружок влево или вправо, вы меняете положение выбранного цвета в пространстве. Для удаления цвета достаточно щелкнуть на квадратике, расположенном под градиентом.
Инструмент Show Manipulator для плоской проекции
7.16. Инструмент Show Manipulator для плоской проекции
Подвигайте управляющие векторы специального манипулятора, меняя область покрытия текстуры, ее ориентацию и размер. Каждый из типов проекции оснащен своим манипулятором. На Рисунок 7.17 показан специальный манипулятор, превращающий текстуру Checker (Шахматное поле) в набор обернутых вокруг сферы полосок.
Короче говоря, вид проецируемой текстуры зависит от способа проецирования и ее положения на поверхности объекта.
Использование файлов из графического редактора Photoshop
Использование файлов из графического редактора Photoshop
В Maya 6 появилась возможность использовать в качестве растровых карт текстуры изображения в формате PSD. Их преимущество состоит в том, что вы можете назначать различным атрибутам материала различные слои изображения. Это избавляет от необходимости импортировать несколько разных файлов. Впрочем, чтобы воспользоваться этим свойством, потребуется знание приложения Photoshop и умение работать в Maya.
Создадим в Photoshop файл, который одновременно послужит картой текстуры для атрибутов Color (Цвет), Transparency (Прозрачность) и Bump (Рельефность). Альтернативой в данном случае является только создание отдельных карт текстуры для каждого из этих атрибутов.
1. Откройте новую сцену, создайте NURBS-сферу и назначьте ей материал на основе раскраски Lambert (По Ламберту).
2. Выделите сферу, затем, нажав клавишу F5, перейдите в режим Rendering (Визуализация) и щелкните на квадратике, расположенном справа от команды Create PSD Texture (Создать PSD-текстуру) в меню Texturing (Назначение текстур). В списке Attributes (Атрибуты) появившегося окна диалога выделите атрибуты Color (Цвет), Transparency (Прозрачность) и Bump (Рельефность) и щелкните на кнопке с указывающей вправо стрелкой, чтобы перенести их в список Selected Attributes (Выделенные атрибуты).
Манипулятор обертывающий текстуру
7.17. Манипулятор, обертывающий текстуру Checker вокруг сферы: слева— вид в окне проекции Perspective; справа— результат визуализации
Металлический материал для топора
Металлический материал для топораНачнем процесс создания материалов с указания параметров визуализации. Это связано с тем, что в процессе редактирования вам не раз придется оценивать вид материала путем визуализации сцены.
1. Выберите в меню Window > Rendering Editors (Окно > Редакторы визуализации) команду Render Globals (Общие параметры визуализации) или щелкните на кнопке Display Render Globals Window (Maya Software) (Отобразить окно с общими параметрами визуализации (Программный визуализатор)) в строке состояния, чтобы вызвать окно диалога Render Global Settings (Общие параметры визуализации). По умолчанию оно открыто на вкладке Common (Общие). Убедитесь в том, что в раскрывающемся списке Render Using (Визуализировать с помощью) выбран вариант Maya Software (Программный визуализатор).
2. В раскрывающемся списке Presets (Предустановленные значения) в разделе Resolution (Разрешение) выберите вариант 640 х 480. Перейдите на вкладку Maya Software (Программный визуализатор) и в разделе Anti-aliasing Quality (Качество сглаживания) выберите в раскрывающемся списке Quality (Качество) вариант Intermediate Quality (Промежуточное качество). Это сократит время тестовой визуализации.
3. Создать материал, имитирующий металл, можно двумя способами:
Металлический наконечник
Металлический наконечникВ данный момент вся рукоятка, включая наконечник, выглядит как красное дерево. Но наконечник на самом деле не деревянный, а металлический.
Многослойная раскраска в верхнем
7.12. Многослойная раскраска, в верхнем слое которой находится материал, имитирующий дерево
Совет
СОВЕТ
Чтобы увидеть имя слоя, достаточно навести на образец материала указатель мыши. 4. Щелчком выделите образец материала Wood в окне диалога Attribute Editor (Редактор атрибутов). Обратите внимание на то, что на кнопках, расположенных справа от ползунков Color (Цвет) и Transparency (Прозрачность), теперь находится не рисунок шахматной доски, а квадрат со стрелкой. Щелкните на кнопке, расположенной справа от ползунка Transparency (Прозрачность), чтобы вернуться к списку параметров текстуры Wood.
После назначения атрибуту карты текстуры рисунок шахматной доски на кнопке сменится изображением квадрата со стрелкой. Щелчок на этой кнопке открывает вкладку окна диалога Attribute Editor (Редактор атрибутов) с параметрами узла, присоединенного к рассматриваемому атрибуту. В данном случае произошел переход к параметрам текстуры Wood. Именно здесь произойдет присоединение прозрачного градиента, который будет управлять видимостью слоев.
5. Щелкните на кнопке с рисунком шахматной доски, расположенной справа от ползунка Transparency (Прозрачность), а затем щелкните на кнопке Ramp (Линейный градиент) в окне диалога Create Render Node (Создать узел визуализации). Но прежде убедитесь в том, что переключатель в верхней части раздела 2D Textures (Двумерные текстуры) стоит в положении Normal (Нормально).
6. В раскрывающемся списке Interpolation (Интерполяция) в разделе Ramp Attributes (Атрибуты градиента) выберите вариант None (Отсутствует). В раскрывающемся списке Туре (Тип градиента) выберите вариант U Ramp (Градиент по U-координате).
7. Щелкните на центральном квадратике (зеленого цвета), чтобы удалить данный цветовой переход. Щелчком выделите нижний (красный) кружок и измените цвет атрибута Selected Color (Выделенный цвет) на белый. Мышью перетащите кружок, а следовательно, и границу цвета немного вверх.
8. Выделите верхний (синий) кружок и измените цвет атрибута Selected Color (Выделенный цвет) на черный. Перетащите его вниз. В поле Selected Position (Положение выделенного цвета) должно появиться значение 0,105 (Рисунок 7.13). Если окно проекции Perspective (Перспектива) находится в режиме показа текстур (он включается нажатием клавиши 6), вы увидите, что шип рукоятки приобрел синеватый цвет металла, в то время как снизу осталось красное дерево. Подвигайте белый маркер и обратите внимание на то, как при этом меняется граница между материалами.
Многослойная раскраска
Многослойная раскраскаМногослойная раскраска позволяет совмещать раскраски различных типов, получая таким способом композиции из материалов. С ее помощью вы можете назначить различным частям объекта различные материалы, избежав при этом создания излишней геометрии.
Управление отдельными слоями осуществляется с помощью карт прозрачности, определяющих, в каких областях будет показан каждый из компонентов. Узлы соответствующих материалов просто перетаскиваются в верхнюю часть окна диалога Attribute Editor (Редактор атрибутов). При этом в верхнем слое оказывается крайний левый узел.
Многослойная раскраска превосходно подходит для создания материалов с надписями или имитации загрязнения. Вы получите практический навык работы с ней при выполнении упражнений данной главы.
Назначение материалов
Назначение материаловНазначение материалов подразумевает присвоение объекту видимого при визуализации цвета, рельефа, прозрачности, зеркальных бликов и других характеристик поверхности. С этим процессом тесно связано назначение текстур, то есть Процесс сопоставления определенного рисунка выбранному атрибуту материала. Этот способ позволяет даже имитировать детали на поверхности объекта. Например, назначив атрибуту Color (Цвет) изображение кирпичей, вы, по сути, назначите материалу карту текстуры. Назначение еще одной отсканированной фотографии с изображением впадин и выпуклостей той же самой кирпичной стены атрибуту Bump Mapping (Карта рельефа) также рассматривается как назначение текстуры. Из-за того, что текстуры могут быть сопоставлены различным атрибутам материала, процесс назначения материалов объектам часто называют назначением текстур.
В основе материалов лежат узлы, каждый из которых содержит определяющие материал атрибуты. При работе с материалами, как и при работе с иерархическими цепочками и группами объектов, приходится создавать сети связанных друг с другом узлов. Эти сети могут быть сколь угодно сложными и содержать произвольное количество узлов визуализации.
Каждый вариант раскраски, также называемый группой тонирования, включает в себя набор узлов материала. Узлы материала содержат всю информацию, относящуюся к визуализации объекта. Группа тонирования представляет собой узлы, соединяющие материал с поверхностью, для которой он создан. Редактируя раскраску в окне диалога Attribute Editor (Редактор атрибутов), вы редактируете узел материала.
В этой главе вам предстоит работать в основном с инструментом Hypershade (Редактор узлов), с которым вы знакомы по главе 3. Доступ к нему осуществляется через меню Window > Rendering Editors (Окно > Редакторы визуализации). Это окно диалога предназначено для создания и редактирования материалов.
Материалы в Maya обычно назначаются параллельно освещению сцены, о котором мы поговорим в главе 10. Редактируются текстуры уже после окончательного освещения сцены. Ведь вид материалов зависит именно от их освещения. Поэтому в упражнениях данной главы вам предстоит создать не только материалы, но и набор источников света.
Окна диалога Multilister и Hypershade
Окна диалога Multilister и HypershadeОкна диалога Multilister (Список узлов) и Hypershade (Редактор узлов) выполняют одну и ту же задачу, используя при этом разные способы представления информации. В окне диалога Multilister (Список узлов) узлы материалов представлены в табличном виде, в то время как окно диалога Hypershade (Редактор узлов) дает дополнительные возможности размещения материалов и создания связей между входными и выходными узлами. На вкладке General (Общие) окна диалога Multilister (Список узлов) образцы материалов представлены в виде групп тонирования (shading group), а в окне диалога Hypershade (Редактор узлов) показаны узлы материалов (material node). Группой тонирования называется узел, назначающий материал поверхности, в то время как узел материала несет информацию о его свойствах, например цвете, прозрачности, зеркальных бликах и т. п. В окне диалога Hypershade (Редактор узлов) по умолчанию показываются только узлы материалов, так как группы тонирования редактируются крайне редко. Чтобы сделать эти группы видимыми, нужно выделить узел материала и щелкнуть на кнопке Output Connections (Выходные связи) на панели инструментов окна диалога Hypershade (Редактор узлов). В окне диалога Multilister (Список узлов) просмотр узлов материала осуществляется на вкладке Materials (Материалы). Кроме того, можно щелкнуть на стрелке, расположенной в нижнем правом углу значков с образцами групп тонирования на вкладке General (Общие).
4. Дважды щелкните на значке нового материала, чтобы открыть для него окно диалога Attribute Editor (Редактор атрибутов).
5. Щелкните на цветовом поле Color (Цвет), чтобы открыть окно диалога Color Chooser (Выбор цвета). Вам нужно присвоить этому атрибуту серо-голубой цвет. Введите в поля Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность) значения 207, 0,085 и 0,8 соответственно и щелкните на кнопке Accept (Принять).
6. Щелкните на поле образца цвета Specular Color (Цвет зеркальных бликов). Этот параметр контролирует цвет и яркость зеркальных бликов на поверхности объекта. Введите в поля Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность) значения 208, 0,2 и 0,9 соответственно.
7. Увеличьте размер зеркальных бликов, введя в поле Cosine Power (Размер бликов) значение 2. В результате появится широкая область ярких зеркальных бликов, которая обычно присуща полированным отражающим поверхностям.
8. Выделите лопасть и обух и в окне диалога Hypershade (Редактор узлов) щелкните правой кнопкой мыши на образце материала. Выберите в появившемся меню команду Assign Material to Selection (Назначить материал выделенному объекту). В окне диалога Multilister (Список узлов) для этой цели используется команда Assign (Назначить) из меню Edit (Правка). Вид материала в обоих окнах диалога показан на Рисунок 7.2.
Окно диалога Attribute Editor
7.1. Окно диалога Attribute Editor для материала на основе градиентной раскраски
В градиентной раскраске текстура Ramp (Линейный градиент) автоматически присоединяется к атрибутам Color (Цвет), Transparency (Прозрачность), Incandescence (Свечение), Specular Color (Цвет зеркальных бликов), Reflectivity (Отражательная способность) и Environment (Окружающая среда). Кроме того, специальный градиент присоединен к атрибуту Specular Roll Off (Сила блеска). Он позволяет более точно контролировать процесс уменьшения яркости зеркальных бликов на поверхности объекта.
Параметры текстуры Ramp
7.19. Параметры текстуры Ramp
Раскрывающийся список Туре (Тип градиента) позволяет выбирать направление и форму градиента. Цветовой переход может идти параллельно как U-, так и V-координате, кроме того, быть круговым, радиальным, диагональным и т. п. Раскрывающийся список Interpolation (Интерполяция) содержит различные варианты цветовых переходов.
Атрибуты U Wave (Волна по U) и V Wave (Волна по V) позволяют формировать волнообразный рисунок, а атрибуты Noise (Шум) и Noise Frequency (Частота шума) размещают цветовые полосы случайным образом.
Интересную текстуру можно получить с помощью параметров раздела HSV Color Noise (Цветовое зашумление), позволяющих создать случайный рисунок на основе значений Hue (Цветовой тон), Saturation (Насыщенность) и Value (Интенсивность). Это позволяет внести небольшие изменения в текстуру и улучшить ее вид.
Подведем итоги
Подведем итогиСоздание материалов для сцены никогда не происходит отдельно от других процессов. При этом крайне важны сделанные вами настройки визуализации, освещение сцены и даже геометрия объектов. Продолжение темы материалов вы найдете в главах 10 и 11, посвященных освещению и визуализации.
Как и при создании прочих элементов Maya, в данном вопросе крайне важно воспринимать объекты сцены в комплексе. По мере накопления опыта вы лучше будете осознавать, насколько все взаимосвязано.
Для максимально эффективного использования Maya важно понимать, какой вид вы хотите придать объекту на экране. Процесс создания компьютерной графики включает в себя многочисленные исследования, сбор опорных материалов и львиную долю проб и ошибок.
При создании и назначении материалов вашим лучшим орудием являются собственные глаза, умение наблюдать за окружающими предметами и способность отразить пути их представления в компьютерной графике.
Проецирование текстуры на поверхность
Проецирование текстуры на поверхностьВ большинстве случаев разместить текстуру на поверхности объекта удается с помощью проекционных координат, но иногда приходится прибегать и к другим методам. Например, при назначении материалов сеткам полигонов текстуры обычно назначаются методом проецирования, то есть изображение из файла, градиент или другой рисунок разными способами отображаются на поверхности объекта.
Вы можете создать любой узел текстуры как с нормальными проекционными координатами, так и в виде проецируемого изображения. Метод выбирается с помощью переключателя, расположенного в верхней части окна диалога Create Render Node (Создать узел визуализации). По умолчанию он установлен в положение Normal (Нормально), то есть текстура на поверхности объекта размещается с помощью UV-координат. Если же установить его в положение As Projection (Как проекцию), текстура будет проецироваться на поверхность.
Проекционные координаты для полигональных сеток
Проекционные координаты для полигональных сетокНазначение материалов на основе карт текстуры сеткам полигонов может включать процесс определения проекционных координат, поэтому во многих случаях текстуру проще нарисовать. NURBS-поверхности не создают пользователю подобных проблем, так как в момент своего появления они уже оснащены встроенными проекционными координатами. В начальной точке такой поверхности UV-координаты имеют значение (0, 0), соответственно, диаметрально противоположная точка имеет координаты (1, 1). Рисуя в Photoshop изображение с разрешением 800 х 600, имеет смысл предположить, что первый пиксел изображения, имеющий координаты X = 0 и У= 0, точно совпадет с координатой (0, 0) на NURBS-поверхности, а диаметрально противоположная точка совпадет с координатой (1, 1). В результате процесс наложения растрового изображения на NURBS-поверхность становится достаточно очевидным. Нижняя часть изображения совпадет с нижней частью поверхности, и наоборот. На Рисунок 7.20 показан результат назначения NURBS-плоскости и NURBS-сфере материала на основе растровой текстуры. Стороны изображения, отмеченные текстом, соответствуют сторонам NURBS-плоскости. Так как сфера получена сверткой поверхности, точка начала координат находится на одном из полюсов, а нижний и верхний края изображения состыкованы.
К сожалению, для сеток полигонов такая простая операция часто невозможна. Пользователю приходится создавать свои проекционные координаты с учетом рельефа поверхности. В большинстве случаев это сложный и требующий больших временных затрат процесс, поэтому лучше воспользоваться другими методами.
Проекционные координаты
Проекционные координатыОсновой трехмерного пространства является декартова система координат с осями X, Y и Z. Поверхности тоже оснащены координатной системой с осями U и V, предназначенной для размещения текстур. Их также принято называть проекционными координатами. Значения координат U и V лежат в диапазоне от 0 до 1, а точка с координатами (0, 0) считается началом поверхности.
Объекты-примитивы в момент создания оснащаются встроенной системой UV-координат, но иногда, особенно во время работы с полигональными сетками, приходится прибегать к ее редактированию. В некоторых случаях лучше воспользоваться проецированием текстуры на сетку, так как редактирование ее формы приводит к смещению проекционных координат.
Исправить положение текстуры на поверхности объекта можно с помощью узла размещения. Более подробную информацию по этой теме вы получите в разделе «Узлы текстуры» данной главы.
Пространство проекционных координат
7.21. Пространство проекционных координат груши, сохраненное в виде TIFF-файла и используемое в качестве опорного рисунка
Достаточно создать для груши корректный материал, например на основе раскраски Blinn (По Блинну), и импортировать файл с нарисованной в Photoshop раскраской груши, назначив его атрибуту Color (Цвет). Результат визуализации полученного таким способом объекта показан на Рисунок 7.22.
Проверка геометрии
Проверка геометрииПеред началом работы по созданию текстур выделите верхний узел алебарды в окне диалога Outliner (Структура) и попытайтесь переместить и повернуть ее. Если вы воспользовались файлом с компакт-диска, окажется, что объект преобразуется по частям, а не как единое целое. Это обусловлено историей его конструирования, которая фиксировалась для некоторых поверхностей. Наличие таких поверхностей в составе группы приводит к двойным преобразованиям. Это означает, что поверхность с историей конструирования перемещается не только потому, что перемещается родительский по отношению к ней узел, но еще и потому, что этого требует история ее конструирования. Выделите узел Back_Axe, расположенный под узлом Ахе_2, и выберите в меню Edit (Правка) команду Delete by Type > History (Удалить объекты типа > История). Затем выделите узел Front_Axe_Head и проделайте для него ту же операцию. После этого объект Ахе_2 начнет перемещаться как одно целое.
Раскраска по Блинну
Раскраска по БлиннуНазванная по имени ее создателя (Джеймса Блинна) раскраска Blinn (По Блинну) отличается большими зеркальными бликами, имеющими четкую форму, и дополнительными элементами управления видом этих бликов. Этот вариант раскраски имеет смысл использовать при имитации блестящих и металлических поверхностей.
Блики в случае раскраски по Блинну выглядят не такими большими и неестественно яркими, как при раскраске типа Phong (По Фонгу). Их вид показан на верхнем изображении.
Раскраска по Фонгу
Раскраска по ФонгуРаскраска Phong (По Фонгу), названная в честь разработавшего ее в 1975 г. By Тонг-Фонга, соответствует поверхности, формирующей зеркальные блики. Примерами этой раскраски могут послужить такие материалы, как пластик, стекло и большинство металлов.
Отражение света такой поверхностью приводит к появлению ярких зеркальных бликов с четкими краями, как показано на изображении справа.
Раскраска по Ламберту
Раскраска по ЛамбертуНаиболее распространенным типом раскраски является Lambert (По Ламберту), имитирующий равномерно распределенный цвет тусклых или матовых поверхностей. К примеру, лист бумаги демонстрирует нам именно этот тип раскраски.
Объект, которому назначен материал на основе раскраски Lambert (По Ламберту), равномерно рассеивает свет всей своей поверхностью, как показано на изображении слева.
Расширенная раскраска по Фонгу
Расширенная раскраска по ФонгуВариант раскраски Phong (По Фонгу) в свое время был усовершенствован созданием дополнительных элементов управления видом зеркальных бликов. В этом варианте раскраски — он называется Phong E (Расширенная по Фонгу) — блики имеют более мягкую форму, чем при раскраске по Фонгу, но в то же время очерчены более четко, чем в случае раскраски по Блинну. Параметры расширенной раскраски по Фонгу позволяют воспроизводить металлический эффект. Вид возникающих в этом случае бликов показан на центральном изображении.
Результат назначения груше нарисованной в Photoshop текстуры
7.22. Результат назначения груше нарисованной в Photoshop текстуры
По мере усложнения полигональной модели усложняется и ее пространство текстуры. Впрочем, в данный момент важно, чтобы вы поняли общую методику работы с полигональными объектами. Скорее всего, она вам потребуется, когда вы будете намного более опытным в моделировании и назначении материалов человеком.
Результат назначения NURBSпримитивам
7.20. Результат назначения NURBS-примитивам текстуры, полученной на основе растрового изображения
Загрузите файл pear_texture_v01.mb из папки \ChapterFiles\Lighting\scenes прилагаемого к книге компакт-диска. Сцена содержит полигональную модель груши, с которой вам еще придется иметь дело в дальнейших упражнениях. Выделите грушу. В меню Panels (Панели) одного из окон ортографической проекции выберите команду Panel > UV Texture Editor (Панель > Редактор проекционных координат). Это окно диалога займет место выбранного окна проекции, и вы увидите проекцию на плоскости назначенной выбранному объекту текстуры (на изображении слева).
На практике для создания текстуры полигональному объекту потребуется нарисовать изображение таким образом, чтобы его цвета и пикселы были выровнены с проекцией текстуры, которую вы видите в окне диалога UV Texture Editor (Редактор проекционных координат). Пока что там показывается проекция назначенных по умолчанию UV-координат, с которыми не очень удобно работать. Следовательно, нужно их поменять.
Нажмите клавишу F3 для перехода в режим Modeling (Моделирование) и выберите в меню Texture (Текстура) команду Cylindrical Mapping (Цилиндрические проекционные координаты). Это приведет к появлению вокруг груши узла цилиндрической проекции, а соответственно, и нового варианта развертки проекционных координат в окне диалога UV Texture Editor (Редактор проекционных координат). Однако новая карта текстуры немного широковата и не помещается в UV-пространстве, как показано на изображении справа.
Результат назначения текстуры
7.13. Результат назначения текстуры Ramp атрибуту Transparency материала Wood
9. Выберите в меню Edit (Правка) окна диалога Hypershade (Редактор узлов) команду Delete Unused Nodes (Удалить неиспользуемые узлы). Это приведет к исчезновению всех материалов, которые не были назначены объектам.
10. Визуализируйте сцену и щелкните на кнопке Keep Image (Сохранить изображение) на панели окна диалога Render View (Визуализатор). В нижней части этого окна проявится полоса прокрутки, что даст вам возможность в дальнейшем сравнить сохраненное изображение со вновь полученным.
И. Выделите верхний узел алебарды и в окне проекции Perspective (Перспектива) поверните объект на 45° вокруг оси Z. Снова визуализируйте сцену. Обратите внимание на то, как изменится текстура дерева. Воспользуйтесь полосой прокрутки, чтобы сравнить два изображения (Рисунок 7.14).
Сеть узлов материала на основе текстуры Wood
7.8. Сеть узлов материала на основе текстуры Wood
8. Дважды щелкните на узле place3dTexture2, чтобы открыть для него окно диалога Attribute Editor (Редактор атрибутов).
9. Щелкните на кнопке Fit to group bbox (Совместить с габаритным контейнером группы), чтобы автоматически расположить узел размещения текстуры Wood (Дерево) вокруг рукоятки. В окне проекции Perspective (Перспектива) появится зеленый габаритный контейнер узла размещения (Рисунок 7.9).
Создание материалов для модели алебарды
Создание материалов для модели алебардыВ этом разделе для модели алебарды, созданной в главе 4, будут назначены материалы. В следующей главе готовая алебарда будет импортирована в сцену с анимацией. Это обычная практика. Сначала анимация осуществляется на примере простой модели, затем в сцену импортируется ее окончательный вариант с назначенными материалами.
Загрузите файл axe_texture_A.mb из папки ChapterFiles\Axe_Model\scenes прилагаемого к книге компакт-диска или воспользуйтесь своей моделью, полученной в главе 4.
Начнем с создания текстуры для лопасти и обуха топора. Металл является одним из самых сложных для создания и освещения материалов, так как на вид реальных металлических объектов влияют отражающиеся в их поверхности элементы окружающей среды.
На сайте фирмы Alias можно найти набор уже готовых материалов, имитирующих металлические поверхности. Кроме того, компакт-диск с дистрибутивом Maya содержит библиотеку материалов. Но мы рассмотрим процесс создания материала с нуля.
Создание текстуры путем импорта растровых изображений
Создание текстуры путем импорта растровых изображенийРассмотрим процесс назначения растрового изображения атрибуту Color (Цвет) материала, созданного на основе раскраски Lambert (По Ламберту):
1. Создайте материал на основе раскраски Lambert (По Ламберту).
2. Щелкните на кнопке с рисунком шахматной доски, расположенной справа от ползунка атрибута Color (Цвет). Убедитесь в том, что переключатель в верхней части окна диалога Create Render Node (Создать узел визуализации) стоит в положении Normal (Нормально), и щелкните на кнопке File (Файл). В окне диалога Attribute Editor (Редактор атрибутов) появятся атрибуты файлового узла.
Текстура Ramp
Текстура RampТекстура Ramp (Линейный градиент), как следует из ее названия, представляет собой переход от одного цвета к другому. Вы уже имели возможность оценить удобство работы с ней при знакомстве с раскраской типа Layered (Многослойная). Параметры этой текстуры в окне диалога Attribute Editor (Редактор атрибутов) показаны на Рисунок 7.19.
Расположенные слева от градиента кружки используются для выделения цвета. Кроме того, их перемещение смещает границу цветового перехода. Щелчок на любом из расположенных справа от градиента квадратиков удаляет выбранный цвет. Для создания нового цветового перехода достаточно щелкнуть в произвольном месте градиента.
Примечание
ПРИМЕЧАНИЕ
Текстура Ramp (Линейный градиент) отличается от градиентной раскраски. В составе последней фигурируют несколько текстур Ramp (Линейный градиент), назначенных различным атрибутам.
Текстуры Bulge Cloth Checker Grid и Water
Текстуры Bulge, Cloth, Checker, Grid и WaterТекстуры Bulge (Выпуклости), Cloth (Ткань), Checker (Шахматное поле), Grid (Решетка) и Water (Вода) обычно назначаются атрибуту Bump Mapping (Карта рельефа) для формирования различных элементов поверхности. Каждая из них создает на поверхности интересный рисунок, увеличивая при этом детализацию. Впрочем, данные текстуры можно использовать и для получения неоднородностей цвета или зеркальных бликов.
Текстура Grid (Решетка), назначенная атрибуту Bump Mapping (Карта рельефа), обычно используется для имитации желобков между плитками, текстура Cloth (Ткань) замечательно имитирует ткань, а текстура Checker (Шахматное поле) — поверхность резинового коврика. Назначив текстуру Water (Вода) атрибуту Reflectivity (Отражательная способность), можно воспроизвести блики на поверхности садовой мебели, возникающие из-за отражения солнечных лучей от поверхности воды в бассейне.
Текстуры Fractal Noise и Mountain
Текстуры Fractal Noise и MountainТекстуры Fractal Noise (Фрактальное зашумление) и Mountain (Горы) используются для создания нерегулярного рисунка, обычно добавляемого к атрибутам Color (Цвет) и Transparency (Прозрачность). Например, при создании поверхности имеет смысл сделать ее грязноватой. Ведь реальные поверхности редко бывают идеально чистыми. На основе текстур Fractal Noise (Фрактальное зашумление) и Mountain (Горы) часто создаются карты рельефа.
Текстуры и поверхности
Текстуры и поверхностиКарты текстуры назначаются различным атрибутам объекта. Существуют два вида текстур — процедурные и растровые. Первые используют встроенные узлы Maya для создания различных эффектов, например градиента, рисунка шахматной доски или фрактального шума. Рисунок процедурной текстуры изменяется редактированием ее атрибутов.
Растровой текстурой называется файл с изображением, импортируемый в сцену через узел файла текстуры. Эти файлы создаются в графических редакторах и содержат нарисованные или отсканированные изображения. Вам остается только правильно разместить текстуру на поверхности объекта. Для этого используются проекционные координаты или операция проецирования.
Типы раскрасок
Типы раскрасокОткройте окно диалога Hypershade (Редактор узлов), выбрав одноименную команду в меню Window > Rendering Editors (Окно > Редакторы визуализации). В левом столбце вы увидите перечень узлов Maya, имеющих отношение к созданию материалов. Первый раздел называется Surface (Поверхность) и содержит узлы различных раскрасок.
Пять вариантов раскраски встречаются и в других приложениях для создания компьютерной графики. С двумя из них вы подробно познакомитесь в этой главе.
Чтобы лучше понять, что представляет собой раскраска, поговорим о том, какие же факторы обусловливают вид объекта.
Прежде всего, это свет. Отражаясь от поверхности, он определяет, как будет выглядеть объект. Например, на поверхность могут быть нанесены пигменты, влияющие на частоту волны отражаемого света. А человеческий глаз воспринимает различные длины волн света как различные цвета. Кроме того, на отражение света влияют и другие детали поверхности.
Тип раскраски определяется именно способом отражения света от поверхности. В большинстве случаев падающий луч света распространяется по поверхности объекта. Кроме того, в некоторых случаях эти лучи формируют яркое пятно, называемое зеркальным бликом. Раскраски в Maya различаются видом зеркальных бликов. Знакомство с различными типами раскрасок должно изменить ваш взгляд на предметы. Старайтесь понять, к какому типу относится тот или иной материал, и представить способ его моделирования.
Трехмерные текстуры и текстуры внешней среды
Трехмерные текстуры и текстуры внешней среды
Как вы уже убедились в процессе назначения материалов модели алебарды, проецирование трехмерных текстур осуществляется в трехмерном пространстве. Такие текстуры хорошо подходят, например, для объектов, поверхность которых должна отражать окружающую обстановку.
В то время как двумерные текстуры просто накладываются на плоскость, трехмерные создают область «влияния» материала. В этом случае перемещение объекта в сцене приводит к тому, что текстура на его поверхности как бы «плывет». Этого можно избежать, сделав узел размещения текстуры дочерним по отношению к узлу объекта или преобразовав текстуру в растровое изображение.
Удаление текстуры
Удаление текстурыИногда оказывается, что текстура, назначенная какому-либо атрибуту материала, не дает нужного эффекта. В этом случае нужно удалить ее из состава материала. Как это сделать? Дважды щелкните на образце материала в окне диалога Hypershade (Редактор узлов), чтобы открыть для него окно диалога Attribute Editor (Редактор атрибутов). Или же вы можете щелкнуть на объекте правой кнопкой мыши и выбрать в появившемся меню команду Materials > Material Attributes (Материалы > Атрибуты материала). Затем остается щелкнуть правой кнопкой мыши на имени атрибута, которому была назначена карта текстуры, и выбрать в появившемся меню команду Break Connection (Разорвать связь).
Узел File
Узел FileУзел File (Файл) используется для импорта файлов с изображениями, которые вводятся в состав материала в качестве текстур. Например, если вы хотите смоделировать лицо назначением текстуры, взяв в качестве образца свою фотографию, воспользуйтесь узлом File (Файл) для импорта соответствующего изображения.
Узел материала имитирующего металл
7.2. Узел материала, имитирующего металл, в окнах диалога Hypershade и Multilister
9. Убедитесь в том, что у вас активно именно окно диалога Perspective (Перспектива), и щелкните на кнопке Render Current Frame (Визуализировать текущий кадр) в строке состояния. Поменяйте ориентацию алебарды в окне проекции и снова визуализируйте сцену. Проделайте эту операцию несколько раз, чтобы оценить, как выглядит металл при освещении встроенными источниками света.
Пока что вы получили простую имитацию металлической поверхности. Чтобы сделать ее более достоверной, нужно заставить поверхность отражать окружающую обстановку. Для этого используется узел текстуры окружающей среды. Этот узел проецирует содержащееся в нем изображение на указанный пользователем атрибут материала. В результате при перемещении объекта в пространстве его поверхность отражает различные части текстурного изображения.
10. Щелкните на кнопке с рисунком шахматной доски, расположенной справа от ползунка Reflected Color (Цвет отраженного света) (Рисунок 7.3). Эта операция требуется для присоединения нового узла, ответственного за создание отражений. В результате появится окно диалога Create Render Node (Создать узел визуализации). Щелкните на кнопке Env Chrome (Хромовое зеркало) в разделе Environment Textures (Карты текстуры окружающей среды). Присоединенная текстура вызовет появление интересных отражений.
Узел размещения текстуры используется
7.5. Узел размещения текстуры используется для управления положением и размером текстуры в сцене
Преобразования этого узла приведут к изменению проекции текстуры. Например, увеличение размера узла размещения приведет к увеличению размера сетки, отражающейся в поверхности лопасти. Дополнительную информацию об этом вы найдете в разделе «Узлы текстуры» этой главы.
Узел размещения текстуры на плоскости
7.18. Узел размещения текстуры на плоскости в окне диалога Attribute Editor
Флажки Mirror U (Зеркальные отражения по U) и Mirror V (Зеркальные отражения по V) определяют, будет ли в процессе повторения зеркально изменяться ориентация рисунка текстуры. Параметры Coverage (Область покрытия), Translate Frame (Смещение текстуры) и Rotate Frame (Поворот текстуры) определяют положение текстуры на поверхности объекта. Обычно они используются для размещения растровых изображений, полученных, например, сканированием.
Узел размещения текстуры Wood
7.9. Узел размещения текстуры Wood
10. Визуализация сцены покажет, что текстура на поверхности объекта до сих пор выглядит неправильно. Поверните узел размещения текстуры в окне проекции Perspective (Перспектива) на 90° относительно оси Z и снова щелкните на кнопке Fit to group bbox (Совместить с габаритным контейнером группы), чтобы совместить узел с контурами рукоятки. Это не приведет к отмене результатов преобразования поворота, а всего лишь изменит форму узла.
11. Визуализируйте сцену и обратите внимание на направление прожилок текстуры. Теперь они идут вдоль рукоятки, что увеличивает достоверность материала. Однако желательно расположить прожилки чуть дальше друг от друга.
Визуализировать сцену после каждого изменения вида текстуры не совсем удобно. Поэтому воспользуемся функцией интерактивной фотореалистичной визуализации, позволяющей наблюдать результаты редактирования в реальном времени. Щелкните на кнопке IPR Render the Current Frame (Интерактивная фотореалистичная визуализация текущего кадра) в строке состояния или выберите одноименную команду в меню Render (Визуализация). Результат визуализации появится в окне диалога Render View (Визуализатор) вместе с предложением выделить область, которая будет обновляться в процессе редактирования материала. Нарисуйте рамку вокруг рукоятки алебарды. Визуализатор тут же обновит эту часть окна. Теперь изображение в указанной области будет обновляться после внесения любых изменений в материал рукоятки.
12. Выделите узел размещения текстуры и поменяйте его масштаб таким образом, чтобы прожилки располагались довольно далеко друг от друга. Наш вариант окончательного вида текстуры показан на Рисунок 7.10.
Для сравнения вы можете загрузить файл axe_texture_B.mb с прилагаемого к книге компакт-диска.
| Назад |
Узлы place2dTexture
Узлы place2dTexture
Двумерные текстуры создаются одновременно с узлами размещения их на плоскости, которые управляют кратностью текстуры, ее ориентацией, размером, смещением и т. п. Окно диалога Attribute Editor (Редактор атрибутов) для одного из таких узлов показано на Рисунок 7.18. Редактируя его параметры, вы меняете положение узла в сети. С подобным подходом вы уже сталкивались при размещений текстуры дерева на поверхности алебарды.
Параметр Repeat UV (Повторение по UV-ко-ординатам) определяет количество повторений текстуры. Чем больше его значение, тем мель- че будет выглядеть текстура, но тем большее число раз она появится на поверхности.
Флажки Wrap U (Повторения по U) и Wrap V (Повторения по V) определяют, будет ли текстура распространяться на всю поверхность. Если их снять, текстура появится только один раз, остальная же часть поверхности будет залита материалом, цвет которого определяется параметром Default Color (Цвет по умолчанию) из раздела Color Balance (Цветовой баланс), расположенного в окне диалога Attribute Editor (Редактор атрибутов) на вкладке с параметрами выбранной текстуры.
Узлы текстуры
Узлы текстурыВ этом разделе мы рассмотрим наиболее важные типы узлов текстуры в Maya. При этом все узлы текстуры имеют общие атрибуты, влияющие на их окончательный вид. Откройте окно диалога Attribute Editor (Редактор атрибутов) для любого узла текстуры.
Параметры двух верхних разделов определяют цветовой баланс текстуры. Вот их краткое описание:
Вид назначенной объекту текстуры
7.14. Вид назначенной объекту текстуры меняется в процессе преобразования поворота
Что делать, если объект перемещается, а назначенная ему текстура остается на месте? Она проецируется с помощью узла размещения, следовательно, нужно сделать его дочерним по отношению к верхнему узлу объекта.
12. Верните алебарду в исходное положение и в окне диалога Outliner (Структура) выделите узел place3dTexture2. Следите за тем, чтобы не выделить вместо него узел размещения текстуры Env Chrome (Хромовое зеркало), имеющий похожее название. Средней кнопкой мыши перетащите его в группу Ахе_2.
Готовая модель топора с назначенными материалами находится в файле axe_te-xture_C.mb на прилагаемом к книге компакт-диске.
Итак, назначение материалов закончено. Благодаря многослойному материалу вам не пришлось создавать дополнительную геометрию, чтобы сформировать металлический наконечник алебарды. Материалы способны значительно улучшить вид любой модели. Как вы уже убедились, иногда с их помощью удается избежать увеличения количества геометрии в сцене. По мере накопления вами опыта в данной области поиск эффективных решений подобных проблем значительно упростится.
Загрузите модель катапульты, полученную в главе 5, и самостоятельно создайте материалы для всех ее частей. Поэкспериментируйте с различными вариантами текстур и потренируйтесь в размещении их на поверхности объекта.
Вид рукоятки алебарды после масштабирования текстуры
7.10. Вид рукоятки алебарды после масштабирования текстуры
Придать ему нужную раскраску можно двумя способами — изменением геометрии и редактированием материала. В первом случае требуется выделить горизонтальную изопараметрическую кривую на границе наконечника и рукоятки и разъединить поверхности, превратив наконечник в отдельный объект. Затем остается назначить ему соответствующий материал.
Этот подход приведет к появлению в сцене дополнительной геометрии, что в общем случае нежелательно. Да и возможность разъединить поверхности в нужном месте имеется не всегда.
Поэтому мы воспользуемся раскраской типа Layered (Многослойная), позволяющей создавать комбинацию из набора материалов. Управлять показом слоев можно с помощью параметра Transparency (Прозрачность) или карт прозрачности. Переход между деревянной и металлической частями будет реализован с помощью текстуры Ramp (Линейный градиент).
Процесс создания многослойного материала выглядит следующим образом:
1. Выделите рукоятку алебарды и выберите в меню Lighting/Shading (Освеще-ниеНазначение материалов) команду Assign New Material > Layered Shader (Назначить новый материал > Многослойная раскраска). Окно диалога Attribute Editor (Редактор атрибутов) для этого материала показано на Рисунок 7.11. По умолчанию наверху располагается слой зеленого цвета. В окне диалога Attribute Editor (Редактор атрибутов) он находится слева.
Совет
СОВЕТ
Выбор в меню Lighting/Shading (Освещение/Назначение материалов) команды Assign New Material (Назначить новый материал) позволяет создать и назначить материал, не прибегая к окнам диалога Hypershade (Редактор узлов) и Multilister (Список узлов). 2. Средней кнопкой мыши перетащите материал, имитирующий дерево, из окна диалога Hypershade (Редактор узлов) в верхнюю часть окна диалога Attribute Editor (Редактор атрибутов). Для удаления заданного по умолчанию зеленого материала достаточно щелкнуть на расположенном под его образцом квадратике.
3. Средней кнопкой мыши перетащите в окно диалога Attribute Editor (Редактор атрибутов) материал, имитирующий металл. Он должен располагаться правее материала, имитирующего дерево. Изменить порядок следования материалов можно, перетаскивая их средней кнопкой мыши слева направо. Обратите внимание на то, что теперь в верхнем слое находится материал Wood (Рисунок 7.12). Это означает, что в данный момент вся рукоятка будет деревянной.
Вид топора до и после формирования отражений
7.4. Вид топора до и после формирования отражений
После назначения текстуры Env Chrome (Хромовое зеркало) в начале координат появится зеленый каркас (Рисунок 7.5). Это узел размещения данной текстуры. Он допускает преобразования, как и любой другой объект Maya. Иными словами, вы можете его двигать, вращать и менять его размер.
Вид узла проецирования в окне диалога Attribute Editor
7.15. Вид узла проецирования в окне диалога Attribute Editor
Откройте новую сцену и создайте NURBS-сферу и NURBS-конус, расположив их рядом. Назначьте обоим объектам материал на основе раскраски ВИпп (По Блинну). В окне диалога Attribute Editor (Редактор атрибутов) присвойте атрибуту Color (Цвет) этого материала текстуру Checker (Шахматное поле). Перед этим убедитесь, что переключатель в верхней части окна диалога Create Render Node (Создать узел визуализации) стоит в положении Normal (Нормально). Текстура на поверхности объектов будет размещена с помощью проекционных координат. Результат показан на крайнем левом изображении.
Теперь удалим карту текстуры из материала. В окне диалога Attribute Editor (Редактор атрибутов) для назначенного объектам материала щелкните правой кнопкой мыши на имени атрибута Color (Цвет) и выберите в появившемся меню команду Break Connection (Разорвать связь). В результате материал приобретет исходный серый цвет. Теперь повторите назначение текстуры Checker (Шахматное поле) атрибуту Color (Цвет), но на этот раз установите переключатель в окне диалога Create Render Node (Создать узел визуализации) в положение As Projection (Как проекцию). На центральной иллюстрации показано окно проекции Perspective (Перспектива) в режиме показа текстур (он включается нажатием клавиши 6). На рисунке находятся два объекта и узел размещения текстуры на плоскости. Подвигайте этот узел и понаблюдайте, как при этом меняется вид текстуры. Результат визуализации этих объектов показан на крайнем справа изображении. Самостоятельно поэкспериментируйте с различными вариантами проекции, выбирая их в раскрывающемся списке Proj Type (Тип проекции) в окне диалога Attribute Editor (Редактор атрибутов).
Заданное по умолчанию количество
7.7. Заданное по умолчанию количество повторений текстуры слишком велико
7. Для получения доступа к узлу размещения текстуры Wood (Дерево) откройте окно диалога Hypershade (Редактор узлов). Средней кнопкой мыши перетащите образец материала на вкладку Work Area (Рабочая область) нижнего окна, щелкните на ней правой кнопкой мыши и выберите в появившемся меню команду Graph Network (Сеть узлов). Альтернативным способом является выделение ячей-к .с образцом материала и щелчок на кнопке Input Connections (Входные связи) на панели инструментов окна диалога Hypershade (Редактор узлов). Появится сеть узлов материала, показанная на Рисунок 7.8. Узел place3dTexture2 соединен с узлом wood2 и содержит информацию о положении текстуры на поверхности объекта. Узел wood2, в свою очередь, соединен с узлом материала phong3 и служит картой текстуры, назначенной атрибуту Color (Цвет).
Заданные по умолчанию параметры
7.11. Заданные по умолчанию параметры раскраски Layered в окне диалога Attribute Editor
Заключительное преобразование текстур
Заключительное преобразование текстурВ предыдущем упражнении мы сделали узел размещения текстуры Wood (Дерево) дочерним по отношению к верхнему узлу алебарды, чтобы заставить изображение двигаться в процессе преобразования этого объекта. Но существует и альтернативная возможность соединения текстуры с поверхностью. Для этой цели служит преобразование узла текстуры в узел файла. Другими словами, узел размещения превращается в изображение, назначенное каналу цвета материала. Узел проекции при этом пропадает. В результате вам уже не требуется прибегать к группировке, как в рассмотренном случае.
Вот как выполняется эта операция:
1. Откройте окно диалога Hypershade (Редактор узлов).
2. Выделите образец многослойного материала и средней кнопкой мыши перетащите его на вкладку Work Area (Рабочая область).
3. Щелкните на этом образце материала правой кнопкой мыши и выберите в появившемся меню команду Graph Network (Сеть узлов), чтобы увидеть все узлы многослойного материала, как показано на рисунке слева.
4. Выделите рукоятку алебарды и при нажатой клавише Shift выделите узел woodZ в окне диалога Hypershade (Редактор узлов).
5. Щелкните на квадратике, расположенном справа от команды Convert to File Texture (Преобразовать в файл текстуры) в меню Edit (Правка) окна диалога Hypershade (Редактор узлов). Введите в поля X Resolution (Разрешение по оси X) и Y Resolution (Разрешение по оси Y) появившегося окна диалога значение 512 и щелкните на кнопке Convert and Close (Преобразовать и закрыть). Если в процессе преобразования появилось сообщение об ошибке, выберите в меню Edit (Правка) команду Delete Unused Nodes (Удалить неиспользуемые узлы) и повторите операцию. В результате перестроения материала появятся файл текстуры, материал и узел группы тонирования, которые будут автоматически назначены выделенной геометрии. Снова удалите неиспользуемые узлы, чтобы освободить пространство в окне диалога Hypershade (Редактор узлов). Вид сети узлов после этой операции показан на изображении справа.
Обратите внимание на то, что после выполнения указанных действий из сцены и из окна диалога Hypershade (Редактор узлов) исчезли узлы размещения. Теперь текстура жестко прикреплена к объекту, и у вас пропала возможность редактировать ее положение.
Новые возможности в Maya 6
Анимация катапульты
Анимация катапультыТеперь вернемся к модели катапульты, созданной вами в главе 5, чтобы заставить ее двигаться.
Анимация мячика
Анимация мячикаТеперь нужно создать набор ключевых кадров для различных положений сферы. В главе 1 вы узнали, что позаимствованный из традиционной анимации термин «создание ключевых кадров» означает фиксацию положения объекта в определенном кадре. Все остальные положения объекта компьютер достраивает автоматически.
Начнем с воспроизведения общего перемещения мячика. Сначала нужно заставить его подпрыгнуть вверх и опуститься вниз:
1. Активизируйте инструмент Move (Переместить), нажав клавишу w, и переместите сферу на 10 единиц в положительном направлении оси Y. Переместите камеру таким образом, чтобы получить достаточное пространство для движений мяча.
2. В главе 3 при создании ключей анимации для планет вы выделяли нужные атрибуты в окне диалога Channel Box (Окно каналов) и нажимали клавишу s. Но в данном случае мы воспользуемся другим методом.
Нажмите комбинацию клавиш Shift+w. Это приведет к появлению в первом кадре ключей анимации для атрибутов Translate X (Смещение по оси X), Translate Y (Смещение по оси Y) и Translate Z (Смещение по оси Z). Проверим текущие параметры анимации. Выберите в меню Window (Окно) команду Setting/Preferences > Preferences (Настройки/Параметры > Параметры) и в списке Categories (Категории) появившегося окна диалога выделите строчку Settings (Настройки). В раскрывающемся списке Time (Время) раздела Working Units (Рабочие единицы) должен быть выбран вариант NTSC (30 fps) (NTSC (30 кадров/с)). Щелкните на кнопке Save (Сохранить). Заданный по умолчанию диапазон анимации, равный 120 кадрам, вполне подходит для наших целей.
3. Щелкните на кнопке Auto Keyframe toggle (Включение режима автоматической установки ключевых кадров). Теперь любое изменение положения объекта будет приводить к автоматическому созданию ключа анимации для атрибутов Translate X (Смещение по оси X), Translate Y (Смещение по оси Y) и Translate Z (Смещение по оси Z).
Примечание
ПРИМЕЧАНИЕ
Функция Auto keyframe (Автоматическая установка ключевых кадров) начинает работать только после того, как вы вручную зададите первый ключевой кадр для анимируемого атрибута. 4. Теперь нужно заставить мяч двигаться вниз. В данном случае точные временные интервалы не имеют особого значения, поэтому установите ползунок таймера анимации, например, на отметку кадра № 10 и перемещайте мяч в отрицательном направлении оси У, пока он не окажется примерно на четверть
погружен в опорную плоскость. Это нужно, чтобы впоследствии получить эффект сжатия мяча при ударе о поверхность. Программа автоматически создаст ключ анимации в этом кадре.
5. Установите ползунок таймера анимации на отметку кадра № 20 и переместите мяч вверх примерно на три четверти исходной высоты. Можно просто ввести в поле Translate Y (Смещение по оси Y) значение 7,5.
6. В кадре № 30 переместите мяч вниз, на этот раз погрузив его в пол менее чем на четверть.
7. В кадре № 40 поднимите мяч над поверхностью на половину исходной высоты, то есть до F-координаты 5.
8. Повторите описанную процедуру еще несколько раз, постепенно уменьшая высоту подскоков и глубину погружения в поверхность. Откройте окно диалога Graph Editor (Редактор анимационных кривых), выбрав в меню Window (Окно) команду Animation Editors > Graph Editor (Редакторы анимации > Редактор анимационных кривых), чтобы посмотреть на полученную кривую. Мы продолжим упражнение после детального рассмотрения интерфейса этого окна.
На втором шаге вы воспользовались комбинацией клавиш Shift+w, чтобы создать ключи анимации для преобразования перемещения по всем трем осям. Существуют аналогичные клавиатурные комбинации также для преобразований поворота и масштабирования. Нажатие клавиш Shift+e фиксирует текущую ориентацию объекта по всем трем осям, а комбинация Shift+r задает ключевые кадры для размера объекта по всем осям.
Анимация по методу ключевых кадров
Анимация по методу ключевых кадровКлассическим упражнением для начинающих изучать анимацию в компьютерной графике является моделирование прыгающего мячика. Так как порядок действий в данном случае достаточно очевиден, поведение шарика можно сделать совершенно произвольным, все зависит исключительно от вашей фантазии. Анимация шарика является замечательным способом потренироваться как в применении законов физики, так и в имитации движения персонажей из мультфильмов. Начнем мы с создания резинового мячика, к которому применим принципы анимации, обсуждавшиеся в главе 1.
Анимация полета топора
Анимация полета топораСледующее упражнение даст вам возможность попрактиковаться в работе с иерархическими цепочками, а также в создании и редактировании анимации более сложного объекта, чем прыгающий мячик. Порядок действий в данном случае также будет довольно прост, но это стандартная последовательность работы по корректной настройке сцены. Сначала вы создадите модель топора, сгруппируете все ее составные части и выберете положение опорной точки. Затем останется смоделировать бросок топора.
Но почему бы не воспользоваться уже готовой алебардой, которой к тому же были назначены материалы? Потому что она оставлена для следующего упражнения по импорту и замещению объектов.
Анимация с помощью деформаторов
Анимация с помощью деформаторовТеперь пришло время на базе временных интервалов движения лебедки запрограммировать перемещение рычага катапульты. Так как рычаг поддерживается скобой, а в основе действия катапульты лежит процесс натяжения, требуется изогнуть рычаг назад.
Анимация топора создание ключевых кадров
Анимация топора: создание ключевых кадровТеперь нужно создать начальные ключи анимации для топора. Это будет первый шаг его путешествия по заданной траектории.
Анимация вдоль траектории
Анимация вдоль траекторииАльтернативой анимации по методу ключевых кадров является анимация вдоль траектории, при которой объект начинает двигаться по заранее созданной кривой.
Загрузите файл axe_v7.mb с прилагаемого к книге компакт-диска. Это сцена с полностью анимированным топором. Вы удалите ключи анимации, относящиеся к преобразованию перемещения, сохранив все остальное. Затем вы создадите траекторию и заставите топор двигаться вдоль нее:
1. Воспользуйтесь инструментом CV Curve (Управляющие точки кривой), чтобы в окне проекции Front (Вид спереди) скопировать траекторию движения топора. Убедитесь в том, что переключатель Curve Degree (Порядок кривой) в окне диалога Tool Settings (Параметры инструмента) установлен в положение 3 Cubic (Третий).
Анимационная кривая атрибута Rotate
8.15. Анимационная кривая атрибута Rotate Z после добавления вторичного движения
6. Сфокусируйтесь на трех последних ключах анимации. В данный момент кривая сначала уходит вниз, а потом значение выделенного атрибута немного возрастает.
Анимационные кривые в окне диалога Graph Editor (Редактор анимационных кривых) представляют собой сплайны Безье, которые являются гладкими по умолчанию. Поэтому при создании нового ключа анимации путем поворота топора на 1,5° кривая меняет свой вид. При этом сохранить как можно более гладкую форму кривой позволяет углубление, появляющееся на ней (Рисунок 8.16).
Анимационная кривая параметра Rotate X объекта Arm
8.34. Анимационная кривая параметра Rotate X объекта Arm
Наш вариант сцены вы можете посмотреть, загрузив файл catapult_anim_v02.mb с прилагаемого к книге компакт-диска.
Дальнейшая анимация катапульты остается на ваше усмотрение. Вот несколько заключительных советов:
Анимационная кривая параметра
8.33. Анимационная кривая параметра Curvature деформатора Bend заставляет рычаг катапульты совершать колебания до момента остановки движения
Анимационная кривая прыгающего
8.5. Анимационная кривая прыгающего мячика. Обратите внимание на уменьшение высоты подскока с течением времени
2. Обратите внимание на то, что кривая существует только для атрибута Translate Y (Смещение по оси Y), несмотря на наличие на панели Outliner (Структура) списка всех трех атрибутов перемещения. Дело в том, что в первом кадре ключ анимации был создан для каждого из атрибутов, но перемещение происходило только вдоль оси Y. Это не очень хороший подход. Если вы не собираетесь аними-ровать какой-либо из атрибутов, не имеет смысла создавать для него ключи анимации.
3. Запустите воспроизведение анимации, чтобы посмотреть на движение объекта. Щелкните на кнопке Animation Preferences (Параметры анимации) и убедитесь в том, что в раскрывающемся списке Time (Время) раздела Working Units (Рабочие единицы) выбран вариант NTSC (30 fps) (NTSC (30 кадров/с)).
4. Основное внимание следует уделить временным интервалам отдельных фаз движения, то есть скорости движения мяча вверх и вниз. В данный момент видим следующее:
Анимационные кривые топора в окне диалога Graph Editor
8.14. Анимационные кривые топора в окне диалога Graph Editor
Кривые в окне диалога Graph Editor (Редактор анимационных кривых) представляют собой зависимости значений положения и ориентации топора от номера кадра. Три оси, относительно которых совершаются упомянутые преобразования, обозначены красным, зеленым и синим цветами, а список атрибутов, для которых существуют ключи анимации, находится слева, на панели Outliner (Структура). Выделение имени объекта или его атрибута слева приводит к появлению соответствующей кривой справа.
Обратите внимание на отсутствие атрибутов Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z). Это связано с тем, что для них не были созданы ключи анимации.
Также обратите внимание на то, что ключи анимации для атрибута Translate Y (Смещение по оси Y) существуют только в кадрах № 1 и 40. Именно поэтому топор опускается вниз между кадрами № 1 и 15. Этого эффекта не наблюдалось до появления кадра № 40.
6. Переместите первый ключ анимации атрибута Translate Y (Смещение по оси Y) из кадра № 1 в кадр № 15. Для этого выполните следующие действия:
Подвигайте ползунок таймера анимации, и вы увидите, что предварительное движение топора назад осталось без изменений. При задании ключей анимации вручную вы избежали бы подобных проблем, однако функция Auto keyframe (Автоматическая установка ключевых кадров) настолько удобна, что имеет смысл работать именно с ней, редактируя затем полученный результат.
Теперь нужно создать для объекта траекторию, имеющую форму дуги.
7. Установите ползунок таймера анимации на отметку кадра № 27. Это середина траектории топора.
8. Слегка переместите топор в положительном направлении оси Y, используя зеленый управляющий вектор манипулятора.
Функция Auto keyframe (Автоматическая установка ключевых кадров) может создать в кадре № 27 два ключа анимации — для параметра Translate Y (Смещение по оси Y) и для параметра Translate X (Смещение по оси X), хотя из-за ограничения преобразования осью Fлогично было бы ожидать появления только одного ключа. Но так как топор в кадре № 27 слегка поворачивается, его положение может поменяться как относительно оси Y, так и относительно оси X глобальной системы координат.
9. В окне диалога Graph Editor (Редактор анимационных кривых) выделите расположенный в кадре №27 ключ атрибута Translate X (Смещение по оси X), если он был создан, и удалите его.
Теперь, чтобы сделать анимацию более достоверной, заставим топор совершить переворот в воздухе.
Совет
СОВЕТ
Если в процессе перетаскивания ключа анимации средней кнопкой мыши удерживать клавишу Shift, перемещение будет ограничено одной осью. Перемещая ключ анимации вниз, вы меняете значение параметра Rotate Z (Поворот относительно оси Z), что приводит к дополнительному вращению топора. Перед этой операцией сместите окно диалога Graph Editor (Редактор анимационных кривых) в сторону таким образом, чтобы видеть происходящее в окне проекции
Perspective (Перспектива). В процессе перетаскивания вы увидите, как топор меняет свою ориентацию. Заставьте его совершить еще один поворот.
Запустите воспроизведение анимации. Если топор перемещается слишком быстро, скорее всего, в раскрывающемся списке Playback Speed (Скорость воспроизведения) выбран вариант Play Every Frame (Воспроизводить каждый кадр). Откройте окно диалога Preferences (Параметры), щелкнув на кнопке Animation Preferences (Параметры анимации), расположенной справа от шкалы диапазонов, и выберите в этом списке вариант NTSC (30 fps) (NTSC (30 кадров/с)).
Примечание
ПРИМЕЧАНИЕ
Изменение скорости воспроизведения анимации в окне диалога Preferences (Параметры) не влияет на ее продолжительность. Оно всего лишь влияет на скорость движения объектов на экране. Осталось немного скорректировать временные интервалы, воспользовавшись для этого инструментом Graph Editor (Редактор анимационных кривых). Переместите все ключи анимации кадра № 15 на отметку кадра № 13. Затем перетащите ключ анимации атрибута Translate Y (Смещение по оси Y) из кадра № 27 в кадр № 19, а все ключи анимации из кадра № 40 перетащите в кадр № 25. Снова запустите воспроизведение анимации.
Движение с ускорением
8.3. Движение с ускорением
Объект, функциональная кривая которого показана на Рисунок 8.4, резко начинает свое движение, затем оно постепенно замедляется. И в кадре № 27, где кривая становится плоской, объект останавливается.
Движение с замедлением
8.4. Движение с замедлением
Двойники
Двойники
В Maya существует возможность создания двойников, благодаря которой пользователь может наблюдать выделенный объект за несколько кадров до и после текущего положения. Например, выделите топор и выберите в меню Animate (Анимация) команду Ghost Selected (Двойники для выделенного). По умолчанию двойники выделенного объекта появляются за три кадра до и в трех кадрах после текущего положения. Отменить полученный результат можно с помощью команды Unghost Selected (Убрать двойников выделенного).
7. Выделите топор и откройте окно диалога Graph Editor (Редактор анимационных кривых). Вы увидите, что анимационная кривая преобразования Rotate Z (Поворот относительно оси Z) по-прежнему на своем месте, в то время как кривые, соответствующие преобразованию перемещения, отсутствуют. Щелкните на строчке motionPathl в разделе INPUTS (Входные данные) окна диалога Channel
Box (Окно каналов), и в окне диалога Graph Editor (Редактор анимационных кривых) появится кривая U Value (Значение по U-координате) атрибута Motion Path (Траектория движения). Выделите строчку U Value (Значение по U-координате) и нажмите клавишу а, чтобы сфокусироваться на данной кривой.
8. Эта кривая занимает диапазон от кадра № 1 до кадра № 60 и представляет собой отрезок прямой. Так как столкновение топора с мишенью происходит в кадре № 25, переместите последний ключ анимации из кадра № 60 в кадр № 25.
9. Отредактируем также время движения топора назад. Установите ползунок таймера анимации на отметку кадра № 4 и с помощью инструмента Insert Keys (Вставить ключи), кнопка которого находится на панели инструментов окна диалога Graph Editor (Редактор анимационных кривых), создайте ключ анимации в этом кадре. Для этого достаточно щелкнуть средней кнопкой мыши в нужном месте анимационной кривой.
10. Перетащите новый ключ анимации в кадр № 10. Именно в этом кадре изначально планировалось завершить движение топора назад.
11. Подвигайте ползунок таймера анимации, чтобы оценить полученный результат. Все выглядит вполне достоверно. Имеет смысл только слегка подкорректировать положение управляющих векторов касательных, но, по сути, вы получили точно такое же движение, как и в предыдущем случае.
Готовый вариант сцены находится в файле axe_path_v2.mb на прилагаемом к книге компакт-диске.
Хорошим упражнением по анимации вдоль траектории является моделирование атома. Нарисуйте вокруг ядра кривые, представляющие собой траектории движения электронов, и заставьте электроны двигаться по ним. Кроме того, попробуйте воспроизвести модель Солнечной системы, созданную вами в главе 3, но на этот раз используя анимацию вдоль траектории.
Функциональные кривые
Функциональные кривыеДля правильного построения анимации важно понимать смысл функциональных кривых. По их виду вы можете судить о направлении движения объекта, его скорости, ускорении и времени перехода в то или иное положение.
Как вы увидите в следующем упражнении, любая анимация объекта сопровождается проблемами, решать которые удобней всего с помощью функциональных кривых. Не бойтесь прибегать к окну диалога Graph Editor (Редактор анимационных кривых) и пользуйтесь им при каждом удобном случае. Чем больше будет ваш опыт работы с ним, тем проще вам будет по виду кривых определить наличие проблем в анимации.
На первый взгляд функциональные кривые напоминают неоднородные рациональные сплайны Безье, с которыми вы уже знакомы. Но кривизну в данном случае контролируют не управляющие точки, а векторы касательных, находящиеся в местах расположения ключей анимации. Кривизна редактируется перемещением маркеров на концах управляющих векторов.
Функциональная кривая представляет собой зависимость значения выбранного атрибута (оно откладывается по вертикали) от номера кадра (он откладывается по горизонтали). Вид анимации зависит не только от положения ключей, но и от формы самой кривой. Вот пример расшифровки функциональной кривой и ее редактирования.
На Рисунок 8.1 показан результат анимации атрибута Translate Z (Смещение по оси Z).
Элементы лебедки сгруппированы
8.28. элементы, лебедки сгруппированы друг с другом, а опорная точка группы центрирована, чтобы обеспечить корректное вращение
Выделите лебетку и выберите в меню Display (Отображение) команду Component Display > Selection Handles (Отображение компонентов > Манипуляторы выделения). Затем выделите задание и иередние колеса, а также рычаг катапульты и проделайте ту же операцию.
Действие манипуляторов выделения зависит от порядка выделения в Maya Этот порядок определяет приоритет выделения объектов. Так как вы сделали видимыми манипуляторы четырех узлов катапульты, попытка выделить катапульту с помощью рамки приведет к выделению только этих узлов. Это связано с более высоким приоритетом манипуляторов по сравнению с остальными объектами сцены-
Копирование анимации
Копирование анимацииЧтобы алебарда унаследовала все свойства топора, выполните следующие настройки:
1. Переместите опорную точку алебарды в место расположения опорной точки топора. Это гарантирует аналогичное вращение алебарды при броске.
2. Выделите алебарду и поверните ее на 180° вокруг оси Y.
3. Верните алебарду в начало координат. Нужно, чтобы рукоятка совпала с габаритным контейнером узла размещения текстуры.
4. Теперь требуется зафиксировать преобразования алебарды, чтобы вернуть всем ее атрибутам заданные по умолчанию значения. Но так как узел размещения текстуры Wood (Дерево) находится в группе ахе, фиксация преобразований вернет к заданным по умолчанию значениям и его атрибуты. Вы можете попробовать выбрать в меню Modify (Изменить) команду Freeze Transformations (Зафиксировать преобразования), чтобы посмотреть, что из этого выйдет, но потом обязательно отмените полученный результат. Для обхода этого ограничения на время выведем узел place3dTexture2 из состава группы ахе. Для этого достаточно перетащить его средней кнопкой мыши за пределы этой группы. Затем выберите в меню Modify (Изменить) команду Freeze Transformations (Зафиксировать преобразования) и средней кнопкой мыши верните узел placeSdTextureZ в группу ахе.
5. Выберите в меню Display (Отображение) команду Component Display > Selection Handles (Отображение компонентов > Манипуляторы выделения), чтобы сделать видимым манипулятор выделения алебарды.
6. Установите ползунок таймера анимации на отметку кадра № 1. Выделите исходный топор, откройте окно диалога Graph Editor (Редактор анимационных кривых) и выберите в меню Edit (Правка) этого окна команду Сору (Копировать).
Линейное движение
8.2. Линейное движение
Таким образом, форма кривой в окне диалога Graph Editor (Редактор анимационных кривых) определяет, как будет двигаться объект. Например, на Рисунок 8.2 показана кривая, соответствующая равномерному прямолинейному перемещению.
На Рисунок 8.3 показана кривая для постепенно ускоряющегося объекта, движение которого внезапно прекращается в кадре № 30. Обрыв кривой означает прекращение движения. Исключением являются бесконечные кривые, о которых мы поговорим чуть позже.
Манипуляторы выделения
Манипуляторы выделенияМанипуляторы выделения облегчают процесс выделения групп, сокращая тем самым время работы над сценой. Поэтому имеет смысл сделать их видимыми.
Место размещения опорной точки группы Target
8.13. Место размещения опорной точки группы Target
Место для опорной точки выбрано с учетом того, что в момент попадания топора мишень должна покачнуться. И именно небольшой поворот вокруг этой точки с откатом назад будет создавать впечатление, что в мишень действительно воткнулся топор. Сохраните сцену. Теперь все готово для анимации.
Мячик из мультфильма
Мячик из мультфильмаТеперь воспользуемся полученными знаниями для анализа анимационной кривой прыгающего мячика:
1. Откройте окно диалога Graph Editor (Редактор анимационных кривых) и посмотрите на анимационную кривую мячика. Она напоминает кривую с Рисунок 8.5.
На стадии моделирования важно
8.26. На стадии моделирования важно правильно разместить опорные точки отдельных элементов объекта
Например, опорная точка группы Arml должна располагаться на конце рычага (Рисунок 8.26). Ведь именно вокруг этой точки будет осуществляться вращение при броске.
Вам предстоит анимировать три группы, поэтому внимательно проверьте иерархические связи и расположение опорных точек всех элементов модели.
На Рисунок 8.27 показано расположение опорных точек у родительских узлов еще двух подлежащих анимации групп.
Настройка сцены
Настройка сценыНачнем с создания топора и мишени из объектов-примитивов. Затем вам предстоит сгруппировать отдельные части моделей и поместить их опорные точки в нужное место. Это стандартная предварительная работа по подготовке объектов сцены к анимации.
Окно диалога Graph Editor
Окно диалога Graph EditorВажным инструментом из арсенала аниматора является окно диалога Graph Editor (Редактор анимационных кривых). Оно дает возможность выполнить большую часть работы по редактированию движения объектов. Более того, с помощью этого инструмента можно создавать анимацию. Начальные сведения о нем вы получили в главе 2. В этом окне наглядно показано, как ключи анимации расположены во времени и в пространстве, что облегчает процесс их редактирования.
Окно диалога Motion Trail Options
8.21. Окно диалога Motion Trail Options
2. Установите переключатель Draw Style (Стиль рисунка) в положение Line (Линия), а затем убедитесь в наличии флажка Show Frame Number (Показывать номер кадра).
3. Щелкните на кнопке Apply (Применить), а потом на кнопке Close (Закрыть), чтобы закрыть окно диалога.
Траектория используется для точной регулировки движения объекта. При редактировании анимационной кривой в окне диалога Graph Editor (Редактор анимационных кривых) вы можете наблюдать в окне проекции, как меняется траектория перемещения объекта. Несколько раз запустите воспроизведение анимации, чтобы почувствовать движение.
4. Выделите топор и откройте окно диалога Graph Editor (Редактор анимационных кривых).
5. Сделайте траекторию движения топора более крутой. На панели Outliner (Структура) выделите строчку Translate Y (Смещение по оси Y), а затем выделите ключ анимации, расположенный в кадре № 19.
6. Переместите его примерно на 2 единицы вверх и посмотрите, как это повлияет на форму траектории.
7. Запустите воспроизведение анимации.
Обратите внимание на то, что теперь топор кажется еще тяжелее. Новая траектория движения показана на Рисунок 8.22.
Опорные точки групп Rear_Wheel
8.27. Опорные точки групп Rear_Wheel и Front_Wheell, центрированные по оси
Элементы лебедки также должны быть объединены в одну группу, а их опорная точка центрирована (Рисунок 8.28).
Опорная точка лебедки должна располагаться в ее геометрическом центре. Впрочем, результат действия команды Center Pivot (Центрировать опорную точку) из меню Modify (Изменить) зависит от расположения входящих в группу элементов. И в некоторых случаях устанавливать положение опорной точки приходится вручную.
Неправильное расположение опорной точки становится очевидным в процессе анимации. Это проявляется, например, в некорректном вращении объектов.
Для получения дополнительного опыта в области группировки объектов и создания иерархических цепочек можно разрушить все имеющиеся связи, воспользовавшись командой Ungroup (Разорвать связь) из меню Edit (Правка), или загрузить файл catapult _anim_v01_B.mb с прилагаемого к книге компакт-диска, в котором эта работа сделана за вас. После этого попытайтесь самостоятельно вернуть катапульту в исходный вид.
Отредактированная траектория движения топора
8.22. Отредактированная траектория движения топора
Совет
СОВЕТ
Чтобы скрыть номера кадров, выделите траекторию, нажмите комбинацию клавиш Ctrl+a и в окне диалога Attribute Editor (Редактор атрибутов) снимите флажок Show Frames (Показывать номера кадров). Чтобы удалить траекторию движения, выделите ее и нажмите клавишу Delete.
Перемещение трех последних ключей
8.7. Перемещение трех последних ключей анимации на один кадр влево делает перемещение мяча более естественным
Переместив все ключи анимации
8.6. Переместив все ключи анимации, кроме первого, на два кадра вправо, вы замедлите начальное падение мяча
Совет
СОВЕТ
Чтобы переместить ключи анимации в окне диалога Graph Editor (Редактор анимационных кривых), выделите их, нажмите клавишу w и перетащите ключи средней кнопкой мыши. Удерживая в процессе этого перемещения клавишу Shift, вы ограничите его горизонтальной или вертикальной осью.
Подведем итоги
Подведем итогиАнимация сложных систем обычно выполняется послойно. Например, в случае с катапультой сначала были анимированы ее отдельные части, а потом работа пошла над движением объекта в целом.
Этот принцип использовался и в более простых упражнениях, например, при анимации прыгающего мяча и брошенного в мишень топора. Проблемы решались по мере их возникновения; начав с общей анимации объекта, вы постепенно добавляли такие детали, как иллюзия наличия у топора массы. Последним штрихом было редактирование временных интервалов.
Вы узнали о том, как поменять метод анимации объекта, заменив, например, анимацию по методу ключевых кадров анимацией вдоль траектории. Кроме того, вы узнали, как можно заместить анимированный объект более совершенной моделью. Для успешного создания анимации требуется умение наблюдать за окружающими объектами, интерпретировать результаты своих наблюдений и воплощать их в жизнь на экране компьютера.
Подводим итоги
Подводим итогиВ примере с брошенным в мишень топором вы продолжили знакомство с послойной анимацией. Сначала было смоделировано основное движение топора, а затем в окне диалога Graph Editor (Редактор анимационных кривых) к нему были добавлены основные детали. Создание дополнительных ключей анимации позволило воспроизвести завершающее движение топора, а также вторичное движение. Благодаря последнему нам удалось создать впечатление наличия у топора веса.
Если бы после столкновения мишень не начала двигаться, зрителю показалось бы, что топор ничего не весит. Впрочем, и слишком сильная реакция мишени также повредила бы достоверности сцены. Еле заметные нюансы способны украсить даже простейшую анимацию.
Кроме того, вы познакомились еще с одним методом анимации в Maya — анимацией вдоль траектории и еще раз получили наглядное подтверждение того, что в Maya одна и та же задача может быть решена различными способами. Вам остается только найти наиболее предпочтительный.
| Назад |
Положение подпорок мишени
8.12. Положение подпорок мишени
Постарайтесь совместить относительную
8.32. Постарайтесь совместить относительную кривизну анимационных кривых лебедки и рычага
10. Установите ползунок таймера анимации на отметку кадра №90, присвойте параметру Curvature (Кривизна) значение 0 и создайте ключ анимации. Затем переместите ползунок на отметку кадра № 97 и введите в поле Curvature (Кривизна) значение 0,82, чтобы создать упреждающее движение. В кадре № 103 рычаг катапульты должен прогнуться в другую сторону, поэтому, установив ползунок на отметку этого кадра, введите в поле Curvature (Кривизна) значение -0,8.
11. Теперь воспользуемся преобразованием поворота, чтобы создать более впечатляющее зрелище. В сотом кадре рычаг катапульты должен располагаться практически вертикально. Выделите группу Arml и в первом кадре создайте ключ анимации для параметра Rotate X (Поворот относительно оси X). Установите ползунок таймера анимации на отметку кадра № 105 и поверните рычаг на 45° от-
носительно оси X. Если в исходном положении рычаг повернут на 30°, значит, в кадре № 105 параметру Rotate X (Поворот относительно оси X) нужно присвоить значение 75.
12. Если теперь запустить воспроизведение анимации, окажется, что изгиб рычага выглядит несколько странно. Дело в том, что деформатор не перемещается вслед за рычагом, соответственно, меняется и его действие. Чтобы решить данную проблему, установите ползунок таймера анимации на отметку кадра № 100 и сделайте деформатор дочерним объектом по отношению к узлу Arml.
Правильный выбор центра тяжести
8.11. Правильный выбор центра тяжести объекта гарантирует его корректное поведение при анимации
1. Выберите в меню Create (Создать) команду Polygon Primitives t Cylinder (Полигональные примитивы > Цилиндр).
2. С помощью инструмента Scale (Масштабировать) уменьшите высоту цилиндра (можно просто ввести в поле Scale Y (Масштабирование по оси Y) значение 0,79), а затем поверните его практически перпендикулярно поверхности, слегка наклонив вниз.
3. Введите в поля Scale X (Масштабирование по оси X) и Scale Z (Масштабирование по оси Z) значение 7.
Теперь нужно создать опору для мишени:
Предварительная подготовка ключевые
Предварительная подготовка: ключевые кадры и изучение движенияХорошую анимацию от плохой отличает корректное движение объектов, невозможное без имитации их веса. Благодаря наблюдениям за окружающими нас предметами мы инстинктивно представляем, как движется тот или иной объект. То есть мы чувствуем сущность движения. И именно вес объектов производит на нас определенное, по большей части подсознательное, впечатление. Пристальное наблюдение за перемещением объектов с учетом деталей их взаимодействия с окружающей обстановкой называется изучением движения.
К сожалению, знаний о том, как движется объект, недостаточно для его корректной анимации. В рассматриваемом случае вашей первостепенной задачей будет имитация веса топора. Нужно создать у зрителя ощущение, что созданный на экране объект действительно летит. Моделирование, назначение материалов и освещение не играют при этом решающей роли, но вот неверное воспроизведение движения может испортить все впечатление от анимации. Таким образом, получить убедительную сцену можно, только корректно смоделировав движение объектов. А это невозможно без пристальных наблюдений за объектом в реальном мире.
Ощущение веса во многом зависит от правильного выбора временных интервалов и корректного завершения движения, что требует от аниматора большого опыта.
Имеет смысл сначала попытаться совершить действие, которое вы собираетесь воспроизвести на экране компьютера. Возьмите ручку, снимите с нее колпачок и бросьте через комнату. Обратите внимание на то, как она описывает дугу в воздухе, как поворачивается вокруг центра тяжести и как ударяется о стену. Затем наденьте колпачок и повторите бросок, постаравшись заметить небольшое, но существенное отличие в движении, вызванное увеличением массы.
Подобные эксперименты являются частью подготовительной работы. Важно как можно лучше понять, как движется исследуемый предмет.
Известно, что правильно брошенный топор должен вращаться как можно меньше. Это нужно учитывать при работе над анимацией.
Предварительная подготовка
Предварительная подготовкаВ данном случае выполнение проекта начнется с создания базовой модели. По возможности воспользуйтесь Интернетом для поиска изображений различных топоров, а также информации по технике их броска. Кроме того, вам потребуется создать мишень, в которую будет брошен топор, поэтому обращайте внимание на различные виды мишеней.
Создайте новый проект, воспользовавшись командой Project > New (Проект > Создать) из меню File (Файл), и присвойте ему имя axe_anim. Поместите его в папку, в которой уже находятся остальные ваши проекты. Затем щелкните на кнопке Use Defaults (По умолчанию), а затем — на кнопке Accept (Принять). Впоследствии вам предстоит заместить простой топор моделью алебарды, созданной вами в главе 4.
Предвосхищение
ПредвосхищениеДвижение топора по предназначенной ему траектории начнется не сразу. Сначала он отклонится назад, как будто отведенный невидимой рукой. Подобные подготовительные действия называются предвосхищением (anticipation). Вот как это реализуется на практике:
1. Установите ползунок таймера анимации на отметку кадра № 15.
2. Переместите топор на 8 единиц в отрицательном направлении оси X и поверните его против часовой стрелки примерно на 45°.
3. Функция автоматического создания ключевых кадров зафиксирует заданные вами положение и ориентацию объекта.
Так как перемещение совершилось только относительно оси X, а поворот — только относительно оси Z, ключи анимации появились исключительно для атрибутов Translate X (Смещение по оси X) и Rotate Z (Поворот относительно оси Т). Ключей анимации для остальных атрибутов перемещения и поворота не появилось, так как их значения остались без изменений.
Примечание
ПРИМЕЧАНИЕ
Функция Auto keyframe (Автоматическая установка ключевых кадров) создает ключевые кадры только для атрибутов, значения которых претерпели изменения. 4. Подвигайте ползунок таймера анимации, чтобы посмотреть на движение топора назад.
5. Установите ползунок таймера анимации на отметку кадра № 40 и переместите топор таким образом, чтобы его лезвие воткнулось в центр мишени.
Нужно учитывать, что в данном случае топор должен перемещаться вдоль осей X и У одновременно, в то время как для предвосхищающего движения вы перемещали его только вдоль оси X. Такая необходимость возникает из-за поворота оси вращения топора в процессе его движения. В данном случае речь идет о локальной оси, ориентация которой меняется вместе с ориентацией объекта. Вначале вы повернули топор на 45° назад, на такую же величину сместилась и его локальная ось.
При желании на этой стадии вы можете загрузить файл axe_v3.mb с прилагаемого к книге компакт-диска и сравнить свой результат с нашим.
К сожалению, после создания ключа анимации в кадре № 40 исходное движение топора назад изменилось. Подвигайте ползунок таймера анимации и рассмотрите его во всех подробностях.
Эта проблема связана с особенностями работы функции Auto keyframe (Автоматическая установка ключевых кадров). Исходные ключи анимации для преобразований перемещения и поворота были созданы в кадре № 1, затем в кадре № 15 вы переместили топор вдоль оси X и повернули его относительно оси Z.
Функция Auto keyframe (Автоматическая установка ключевых кадров) создала ключевой кадр для атрибута Translate X (Смещение по оси X) в кадре N° 15. Но чтобы привести топор в положение, указанное в кадре № 40, вам потребовалось перемещать его вдоль осей X и Уодновременно. В итоге ключи анимации для атрибута Translate Y (Смещение по оси Y) существуют только в кадрах № 1 и 40. Это и является причиной дополнительного движения между кадрами № 1 и 15.
Не снимая выделения с топора, откройте окно диалога Graph Editor (Редактор анимационных кривых), чтобы посмотреть, что же происходит с анимацией. Как вы уже убедились при выполнении упражнения с прыгающим мячиком, это крайне важный инструмент, и чем больше навыков работы с ним вы получите, тем лучше.
В окне диалога Graph Editor (Редактор анимационных кривых) вы увидите красные, зеленые и синие линии, идущие в разных направлениях. Чтобы увидеть анимационные кривые целиком, вам, скорее всего, потребуется поменять масштаб изображения. Управление отображением в окне диалога Graph Editor (Редактор анимационных кривых), как и в других окнах диалога и проекции, осуществляется с помощью комбинаций нажатия клавиши Alt и различных кнопок мыши.
Кроме того, для изменения масштаба изображения можно воспользоваться клавишами а и f. Щелкните в произвольной точке окна диалога Graph Editor (Редактор анимационных кривых), чтобы сделать его активным, и нажмите клавишу а, чтобы уместить в границах этого окна все анимационные кривые. Вы должны получить изображение, показанное на Рисунок 8.14.
Пример анимационной кривой
8.1. Пример анимационной кривой
Кривая показывает, что сначала объект быстро перемещается в положительном направлении оси Z. Затем движение постепенно замедляется, пока объект не остановится. Остановке движения соответствует плоский участок кривой, центр которого располагается в кадре № 41. После этого объект снова начинает двигаться с ускорением, но на этот раз в отрицательном направлении оси 2.. Движение происходит с постоянной скоростью вплоть до кадра № 62. Здесь направление перемещения резко меняется, и в течение 45 кадров объект двигается в положительном направлении оси Z. В конце скорость движения медленно спадает до нуля.
Программирование постепенного
8.30. Программирование постепенного замедления движения лебедки с откатом в конце
Эта задача будет решена с помощью деформатора. С этим инструментом вы уже знакомы по упражнениям главы 4, но в данном случае деформатор нужно будет анимировать:
1. Нажмите клавишу F2 для перехода в режим Animation (Анимация). Выделите группу Axel и выберите в меню Deform (Деформация) команду Create NonLine-ar > Bend (Создать нелинейный > Изгиб). В сцене появится деформатор Bend (Изгиб), расположенный перпендикулярно рычагу. Выделите его и поверните таким образом, чтобы он был выровнен с осью рычага.
Примечание
ПРИМЕЧАНИЕ

Атрибуты Low Bound (Нижняя граница) и High Bound (Верхняя граница) определяют область действия деформатора. Параметр Envelope (Огибающая) определяет общее влияние деформатора на объект. В частности, если этот параметр равен 0, объект сохраняет первоначальную форму.
5. Начнем создание ключей анимации для рычага. Установите ползунок таймера анимации на отметку кадра № 1 и введите в поле Curvature (Кривизна) значение 0. Выделите строчку Curvature (Кривизна) в окне диалога Channel Box (Окно каналов), щелкните на ней правой кнопкой мыши и выберите в появившемся меню команду Key Selected (Установить ключ у выделенного параметра).
6. Установите ползунок таймера анимации на отметку кадра № 60 и введите в поле Curvature (Кривизна) значение 0,8. Если у вас включена функция Auto keyframe (Автоматическая установка ключевых кадров), ключ анимации появится автоматически. В противном случае вам придется создать его вручную. Положение рычага катапульты в кадре № 60 показано на Рисунок 8.31.
7. Если теперь запустить воспроизведение анимации, вы увидите, что скорость вращения лебедки не совпадает со скоростью сгиба рычага. Решить эту проблему можно редактированием анимационной кривой, поэтому откройте окно диалога Graph Editor (Редактор анимационных кривых).
8. На кривой параметра Curvature (Кривизна) создайте еще один ключ анимации, расположив его в кадре № 42. Переместите этот ключ таким образом, чтобы анимационные кривые лебедки и рычага имели одинаковую кривизну.
9. Создайте еще один ключ анимации, поместив его в кадр № 70. Он будет отвечать за движение рычага при откате лебедки. Параметр Curvature (Кривизна) в этом кадре должен иметь значение 0,79 или 0,8. Полученная в итоге анимационная кривая показана на Рисунок 8.32.
Растяжение и сжатие
Растяжение и сжатиеИдея деформации объекта при движении существует с момента возникновения анимации. Ведь таким способом создается впечатление, что объект имеет некий вес и реагирует на силу тяжести и столкновения с другими объектами. Простейшим способом деформации объекта в Maya является его неравномерное масштабирование, выполняемое с помощью инструмента Scale (Масштабировать). Вот как это выглядит на практике:

1. Загрузите файл ball_v03.mb с прилагаемого к книге компакт-диска или продолжите выполнение предыдущего упражнения. Убедитесь в том, что нажата кнопка Auto keyframe (Автоматическая установка ключевых кадров). Установите ползунок таймера анимации на отметку кадра № 12. Это соответствует первому удару мяча об пол. Нажмите клавишу г для активизации инструмента Scale (Масштабировать) и уменьшите масштаб мяча вдоль оси Y примерно до 0,6. Нужно сделать так, чтобы мяч больше не проваливался сквозь пол. Создайте ключ анимации для всех атрибутов масштабирования, нажав комбинацию клавиш Shift+r.
2. Установите ползунок таймера анимации на отметку кадра № 15 и увеличьте масштаб мяча по оси У примерно до 1,3.
Это соответствует его состоянию сразу после отскока от пола. Тремя кадрами позже верните масштаб мяча в исходное состояние, присвоив параметру Scale Y (Масштабирование по оси Y) значение 1.
3. Подвигайте ползунок таймера анимации. Вы обнаружите, что перед началом движения мяч уже находится в сплющенном состоянии. Это связано с отсутствием ключей анимации атрибутов масштабирования до момента соприкосновения
мяча с поверхностью. Установите ползунок таймера анимации на отметку кадра № 9 и введите в поле Scale Y (Масштабирование по оси Y) значение 1. Снова подвигайте ползунок таймера анимации, и вы увидите, что мяч начинает сплющиваться еще до момента соприкосновения с поверхностью. Откройте окно диалога Graph Editor (Редактор анимационных кривых) и переместите первый ключ анимации атрибута Scale Y (Масштабирование по оси Y) из кадра № 9 в кадр №11. Теперь мяч сжимается при ударе о пол и растягивается при отскоке.
4. Повторите описанную процедуру для остальных отскоков, постепенно уменьшая коэффициент масштабирования, ведь высота прыжков мяча уменьшается. Пара последних прыжков может происходить вообще без деформации мяча.
Для сравнения загрузите файл ball_v03.mb с прилагаемого к книге компакт-диска. Хотя теперь движение мяча выглядит корректно, ему не помешает небольшое редактирование, например более точный выбор временных интервалов. Откройте окно диалога Graph Editor (Редактор анимационных кривых) и поэкспериментируйте с анимационной кривой.
Реакция мишени на столкновение
8.20. Реакция мишени на столкновение с топором в окне проекции Front
5. Перейдите к кадру № 31 и верните мишени первоначальную ориентацию. Затем опустите ее до нулевой координаты по оси Ун еще немного сдвиньте назад вдоль оси X.
6. Установите ползунок таймера анимации на отметку кадра № 35 и повторите операции, описанные в шаге 4. Но при этом величины преобразований должны быть вдвое меньше.
7. Перейдите к кадру № 40 и повторите операции, описанные в шаге 5, но на этот раз сделав сдвиг по оси X совсем небольшим.
Наш вариант сцены вы найдете в файле axe_v6.mb на прилагаемом к книге компакт-диске.
Результат действия деформатора Bend
8.31. Результат действия деформатора Bend в кадре № 60
Результат приведения касательной
8.18. Результат приведения касательной к последнему ключу анимации к плоской форме
12. Отрегулируйте таким же способом управляющие векторы касательных к анимационным кривым атрибутов Translate X (Смещение по оси X) и Translate Y (Смещение по оси Y). Результат этого редактирования показан на Рисунок 8.19.
Результат редактирования скорости
8.8. Результат редактирования скорости мяча в начале и в конце подскока
3. Теперь при воспроизведении анимации мяч будет двигаться намного более реалистично. При желании вы можете самостоятельно дополнительно отредактировать ключи анимации по своему усмотрению.
Результат выравнивания осей топора и алебарды
8.24. Результат выравнивания осей топора и алебарды
Сглаженные кривые преобразования
8.19. Сглаженные кривые преобразования перемещения, приводящие к постепенному замедлению движения
13. Запустите воспроизведение анимации, и вы увидите, как топор при столкновении с мишенью немного погружается в нее. Это и есть завершающее действие.
Осталось добавить еще один штрих.
Создание мишени
Создание мишениПереместите топор примерно на 40 единиц в отрицательном направлении оси X, чтобы получить пространство для броска. Затем переместите его на 15 единиц в положительном направлении оси У. Теперь нужно создать простейшую мишень:
Создание мячика
Создание мячикаСоздадим объект, на примере которого будем изучать принципы анимации:
1. Создайте полигональную плоскость и увеличьте ее размер таким образом, чтобы она могла играть роль опорной поверхности. Затем создайте NURBS-сферу.
2. Нажмите клавишу 5 для перехода в режим показа тонированных оболочек объектов, а затем выделите сферу и нажмите клавишу 3, чтобы максимально увеличить ее детализацию.
3. Переместите сферу на одну единицу в положительном направлении оси У, чтобы она оказалась лежащей на опорной плоскости.

4. Выберите в меню Modify (Изменить) команду Freeze Transformations (Зафиксировать преобразования), чтобы вернуть координаты сферы к заданным по умолчанию значениям. В полях Translate X (Смещение по оси X), Translate Y (Смещение по оси Y) и Translate Z (Смещение по оси Z) окна диалога Channel Box (Окно каналов) появится значение 0. Эта операция называется фиксацией преобразований и используется в случаях, когда новые положение, ориентацию и масштаб объекта нужно определить как исходные.
5. Выберите в меню File (Файл) команду Project > New (Проект > Создать). Присвойте новому проекту имя bouncing_ball и поместите его в папку, в которой уже находится проект Solar_System. Щелкните на кнопке Use Defaults (По умолчанию), а затем — на кнопке Accept (Принять). Сохраните сцену.
Создание начальных ключевых кадров
Создание начальных ключевых кадровПродолжите выполнение предыдущего упражнения или загрузите файл axe_v2.mb с прилагаемого к книге компакт-диска.
1. В окне диалога Outliner (Структура) выделите группу ахе. Чтобы облегчить процесс выделения группы в дальнейшем, сделайте видимыми манипуляторы выделения, выбрав в меню Display (Отображение) команду Component Display > Selection Handles (Отображение компонентов > Манипуляторы выделения). В месте расположения опорной точки топора появится крест, щелчок на котором будет приводить к выделению всех составных частей рассматриваемой группы.
Примечание
ПРИМЕЧАНИЕ
Как вы убедитесь немного позже, с помощью манипулятора выделения можно выделить не только верхний узел группы, но и дочерние узлы. Так как манипулятор выделения был сделан видимым при выделенном верхнем узле иерархической цепочки, он представляет собой полый крест, расположенный в опорной точке группы.
Примечание
ПРИМЕЧАНИЕ
Манипуляторы выделения существуют практически для любого объекта в Maya вне зависимости от того, какое место этот объект занимает в иерархии группы. Манипулятор выделения для рядовых членов группы имеет вид обычного креста. 2. Установите ползунок таймера анимации на отметку кадра № 1 и создайте ключи для преобразований поворота и перемещения, нажав комбинации клавиш Shift+w и Shift+e. Этим вы зафиксировали начальное положение топора и его ориентацию.
Создание острого лезвия на топоре
8.10. Создание острого лезвия на топоре
Примечание
ПРИМЕЧАНИЕ
В большинстве случаев точные размеры объектов не имеют значения. В основном при создании моделей для последующей анимации используются пропорции и относительные величины. При необходимости точность всегда можно увеличить. 8. Нажмите клавишу F8 для выхода из режима редактирования подобъектов и выделите весь топор.
9. Выберите в меню Edit (Правка) команду Group (Группировать) и присвойте новой группе имя ахе.
Теперь нужно указать центр тяжести топора, поместив туда опорную точку группы. Так как самой тяжелой деталью является лопасть, которая к тому же направлена только в одну сторону, центр тяжести топора будет располагаться на небольшом расстоянии от рукоятки.
10. Нажмите клавишу Insert для перехода в режим редактирования опорной точки и в окне проекции Front (Вид спереди) переместите эту точку вдоль оси X примерно на один квадратик координатной сетки от центра рукоятки (Рисунок 8.11). Снова нажмите клавишу Insert.
Для сравнения вы можете загрузить файл axe_vl.mb из папки ChapterFiles\Axe_Anim\ scenes прилагаемого к книге компакт-диска.
Создание топора
Создание топораОсновой для топора послужат два полигональных примитива — цилиндр и куб.
1. Выберите в меню Create (Создать) команду Polygon Primitives (Полигональные примитивы) и щелкните на квадратике, расположенном справа от команды Cube (Куб). Введите в поле Subdivisions Along Width (Разбиений по ширине) значение 4 и щелкните на кнопке Create (Создать).
2. Присвойте новому объекту имя axe_head.
3. Выберите в меню Create (Создать) команду Polygon Primitives > Cylinder (Полигональные примитивы > Цилиндр) и присвойте новому объекту имя handle.
4. Введите в поля Scale X (Масштабирование по оси X), Scale Y (Масштабирование по оси Y) и Scale Z (Масштабирование по оси Z) значения 0,283, 6,998 и 0,283 соответственно.
5. Поместите куб в верхнюю часть цилиндра, оставив сверху небольшой наконечник. Введите в поля Scale X (Масштабирование по оси X) и Scale Y (Масштабирование по оси Y) значения 4,117 и 2,75 соответственно. Вид полученного объекта в окне проекции Front (Вид спереди) показан на Рисунок 8.9.
Траектория перемещения
Траектория перемещенияСуществует возможность увидеть траекторию перемещения объекта. Для этого выполните следующие действия:
1. Щелчком на маркере выделения выделите топор, а затем щелкните на квадратике, расположенном справа от команды Create Motion Trail (Создать траекторию движения) в меню Animate (Анимация). Появляющееся при этом окно диалога показано на Рисунок 8.21.
Управляющие векторы касательной
8.16. Управляющие векторы касательной к ключу анимации: слева — вектор касательной на входе в ключ; справа — векторкасательной на выходе из ключа
Нам нужно, чтобы топор при столкновении с мишенью слегка погрузился в нее и постепенно остановился. Для этого достаточно отредактировать кривизну сплайна с помощью управляющих векторов касательной к точке, расположенной в кадре № 25. Эти векторы появляются автоматически при выделении рассматриваемого ключа.
7. Выделите маркер управляющего вектора, расположенного на выходе из ключа, и средней кнопкой мыши перетащите его вверх, чтобы избавиться от углубления. Обратите внимание на то, как при этом меняется общая форма касательной.
8. Нажмите комбинацию клавиш Ctrl+z, чтобы отменить полученный результат. Нам нужно, чтобы перемещение одного управляющего вектора не влияло на состояние другого.
9. Выделите маркер управляющего вектора, расположенного на выходе из ключа, и щелкните на кнопке Break Tangents (Разрыв касательных) на панели инструментов окна диалога Graph Editor (Редактор анимационных кривых).
10. Переместите вверх управляющий вектор, расположенный на выходе из ключа, чтобы избавиться от углубления и получить в промежутке между кадрами № 25 и 28 прямую линию (Рисунок 8.17).
Вид алебарды рядом с топором
8.23. Вид алебарды рядом с топором
Подвигайте ползунок таймера анимации, чтобы посмотреть на полученный результат. Легко заметить, что движение алебарды отличается от движения топора только в самом конце, в момент удара о мишень. Как вы помните, топор в свое время был сделан дочерним объектом по отношению к узлу Target. Именно таким способом было создано завершающее движение. Проделайте ту же операцию с алебардой.
Нашу версию сцены вы можете посмотреть, загрузив файл axe_v8.mb с прилагаемого к книге компакт-диска.
10. Теперь, когда вы убедились, что алебарда движется корректно, удалите топор.
Вид объекта Catapult в окне диалога Outliner
8.25. Вид объекта Catapult в окне диалога Outliner
Создайте новый проект с именем Catapult_Anim или скопируйте уже готовый проект с компакт-диска. Загрузите файл catapult_anim_v01.mb, содержащий готовую модель катапульты.
Вид последнего сегмента анимационной
8.17. Вид последнего сегмента анимационной кривой атрибута Rotate Z
Теперь для того чтобы топор постепенно прекратил движение после столкновения с мишенью, нужно сгладить последний сегмент анимационной кривой атрибута Rotate Z (Поворот относительно оси Z).
11. Выделите последний ключ анимации, чтобы сделать видимыми управляющие векторы его касательной, и щелкните на кнопке Flat Tangents (Плоская форма касательной) на панели инструментов окна диалога Graph Editor (Редактор анимационных кривых). Вид последнего сегмента кривой после этой операции показан на Рисунок 8.18.
Без предварительной фиксации преобразований родительского
ВНИМАНИЕБез предварительной фиксации преобразований родительского узла мишени перед добавлением в группу Target группы Ахе результат анимации топора изменится, что может привести к непредсказуемым результатам. 2. В окне диалога Outliner (Структура) перетащите средней кнопкой мыши узел Ахе на узел Target.
3. Установите ползунок таймера анимации на отметку кадра № 25, то есть на момент удара, выделите мишень и нажмите по очереди комбинации клавиш Shift+w и Shift+e.
4. Установите ползунок таймера анимации на отметку кадра № 28 и поверните мишень примерно на -2,5° вокруг оси Z, а также слегка переместите ее вверх и назад (Рисунок 8.20).
в окне диалога Graph Editor
ВНИМАНИЕПри копировании и вставке кривых в окне диалога Graph Editor (Редактор анимационных кривых) нужно вернуть ползунок таймера анимации на отметку первого кадра. В противном случае анимация начнется с того кадра, на котором был установлен ползунок. 7. Выделите алебарду и выберите в меню Edit (Правка) окна диалога Graph Editor (Редактор анимационных кривых) команду Paste (Вставить). Топор и алебарда будут немного смещены друг относительно друга (Рисунок 8.23).
8. Совместите алебарду с топором. Так как она уже анимирована, переместите ее с помощью анимационных кривых. Например, выделите кривую преобразования Translate Y (Смещение по оси Y) и переместите немного вверх, пока не совместите лопасти.
9. Выделите кривую преобразования Translate X (Смещение по оси X) и переместите ее таким образом, чтобы рукоятка топора совпала с рукояткой алебарды (Рисунок 8.24).
Временные интервалы
Временные интервалыЗадание временных интервалов в анимации связано с установкой правильного порядка ключей. Для создания достоверной анимации крайне важно выбрать правильную скорость перемещения объекта. По мере роста вашего опыта выбор корректных временных интервалов будет происходить на интуитивном уровне. Упражнение с прыгающим мячиком крайне популярно как раз потому, что позволяет получить представление об основных аспектах редактирования анимации.
Загрузите файл ball_v02.mb из папки ChapterFiles\Bouncing_BaU\scenes прилагаемого к книге компакт-диска. Пока что при воспроизведении анимации движения мяча выглядят не очень натурально. Возникает ощущение, что он не отскакивает от пола, а опускается и поднимается на гребне волны. Проблема состоит в отсутствии ускорений и замедлений движения мяча. По умолчанию ключи анимации в Maya создаются таким образом, чтобы итоговая анимационная кривая была гладкой, как неоднородный рациональный сплайн Безье. Именно это является причиной некорректного движения мяча. Он должен постепенно разгоняться при падении и замедляться при отскоке. Вот как можно решить данную проблему:
1. В окне диалога Graph Editor (Редактор анимационных кривых) выделите все ключи анимации, соответствующие приземлению мяча, и щелкните на кнопке Linear Tangents (Линейные касательные) на панели инструментов этого окна.
2. Затем выделите все ключи анимации, соответствующие положению мяча в верхних точках, и щелкните на кнопке Flat Tangents (Плоские касательные). В итоге кривая анимации должна принять вид, показанный на Рисунок 8.8.
Переместите новый ключ анимации вниз,
8.29. Вставка ключа анимации в кадр № 42
7. Переместите новый ключ анимации вниз, чтобы сделать завершающий участок кривой более пологим. При этом нужно следить, чтобы на кривой не появилось минимума. Ведь изменение направления кривой означает изменение направления вращения. С помощью управляющих векторов касательной сгладьте кривую. Можно также смоделировать небольшой откат лебедки, вставив в кадр № 70 еще один ключ анимации (Рисунок 8.30).
| Назад |
Вторичные движения
Вторичные движенияПродолжите выполнение предыдущего упражнения или загрузите файл axe_v5.mb с прилагаемого к книге компакт-диска.
Не следует забывать о том, что мишень должна реагировать на удар брошенного в нее топора. Моделированием этого вторичного движения мы сейчас и займемся.
Движущийся объект обладает импульсом, который вычисляется как произведение массы объекта на его скорость. То есть чем тяжелее объект и чем быстрее он движется, тем больше его импульс. При столкновении импульс передается от одного объекта другому.
Например, при столкновении движущегося бильярдного шара с неподвижным первый передает часть своего импульса второму, приводя его в движение. А остаток импульса использует, чтобы срикошетировать в другую сторону.
В рассматриваемой сцене топор останавливается при столкновении с мишенью. То есть он передает ей весь свой импульс. Но так как мишень имеет намного большую массу, она практически не реагирует на удар. При этом чем более выраженной вы сделаете реакцию мишени на столкновение, тем более тяжелым будет казаться топор.
Начнем с того, что сделаем родительский узел топора дочерним по отношению к родительскому узлу мишени. Если этого не сделать, то после анимации мишени окажется, что топор забуксовал в воздухе, перед тем как в нее воткнуться. Но благодаря тому что дочерние узлы наследуют преобразования родительских, топор
повторит движение отклоняющейся мишени. Впрочем, операция формирования иерархической цепочки отразиться на результатах анимации топора.
Действуйте по следующей схеме:
1. В окне диалога Outliner (Структура) выделите узел Target и выберите в меню Modify (Изменить) команду Freeze Transformations (Зафиксировать преобразования). В результате все атрибуты преобразования мишени вернутся к заданным по умолчанию значениям.
Взаимное расположение частей топора
8.9. Взаимное расположение частей топора
6. Измените масштаб куба по оси Z таким образом, чтобы он оказался чуть больше ширины рукоятки.
7. Для создания острой кромки войдите в режим редактирования подобъектов, нажав клавишу F8. В окне проекции Тор (Вид сверху) рамкой выделите правую кромку куба. При этом будут выделены четыре вершины.
Замена топора
Замена топора1. Загрузите файл axe_v7.mb с прилагаемого к книге компакт-диска.
2. Выберите в меню File (Файл) команду Import (Импорт).
3. Найдите ваш собственный файл с готовой моделью алебарды или воспользуйтесь файлом axe_texture_C.mb из папки ChapterFHes\Axe_Model\scenes прилагаемого к книге компакт-диска. В начале координат существующей сцены появится алебарда. Обратите внимание на то, что при этом был импортирован и источник рассеянного света.
Замещение объектов
Замещение объектовМало создать объект и назначить ему материалы — его в большинстве случаев требуется еще и анимировать. Перед этим обычно тщательно проверяется группировка отдельных элементов, расположение опорных точек и вид геометрии.
Впрочем, существует также практика анимации аппроксимирующего объекта, то есть простой модели, которая впоследствии заменяется усложненной версией. С процессом замещения вы познакомитесь в следующем упражнении. Вам предстоит заменить топор алебардой, которой вы назначали материалы в предыдущей главе, а кроме того узнать, как скопировать анимацию с одного объекта на другой.
Завершение движения
Завершение движенияПродолжите выполнение предыдущего упражнения или загрузите файл axe_v4.mb с прилагаемого к книге компакт-диска.
Пока что наш топор не имеет веса. По крайней мере, ничто в сцене не указывает на то, что это тяжелый топор. Создать подобный эффект можно с помощью техник завершения движения (follow-through) и вторичного движения (secondary motion).
Примечание
ПРИМЕЧАНИЕ
Завершением движения называется побочное действие, следующее немедленно за главным. Например, в момент приземления супергероя его колени слегка сгибаются, а сам он прогибается в талии, чтобы сохранить равновесие. Чем сильнее выражено вторичное движение, тем больше анимация напоминает мультфильм. Вторичным движением называются небольшие перемещения отдельных элементов объекта, вызванные общим движением. Например, когда супергерой спрыгивает с крыши небоскреба, его шляпа начинает дрожать в потоке воздуха. Это волнообразное перемещение шляпы и называется вторичным движением.
В рассматриваемой сцене вторичным движением будет импульс, переданный мишени в момент столкновения. В результате мишень должна немного отклониться назад. Чем более проявленными вы сделаете завершение и вторичное движение, тем тяжелее будет выглядеть ваш топор. Однако не следует забывать и о чувстве меры.
Смоделировать завершающее движение можно в окне диалога Graph Editor (Редактор анимационных кривых):
1. Выделите топор, щелкнув на манипуляторе выделения, и откройте окно диалога Graph Editor (Редактор анимационных кривых).
2. Так как вам предстоит добавить три кадра в конец анимации, перейдите к кадру № 28.
3. В окне проекции Perspective (Перспектива) поверните топор вокруг оси Z еще на 1,5°.
4. Поворот, сделанный на предыдущем шаге, слегка перемещает топор вдоль оси Y, поэтому воспользуйтесь зеленым управляющим вектором манипулятора Move (Переместить), чтобы вернуть топор в положение, в котором он был до этого момента. Это приведет к еще более глубокому погружению лезвия в мишень. В окне диалога Graph Editor (Редактор анимационных кривых) при этом может появиться ключ анимации для атрибута Translate X (Смещение по оси X).
Пока что при воспроизведении анимации завершающее движение выглядит не очень хорошо. Топор сталкивается с мишенью и погружается в нее таким образом, как будто над движением работали два никогда не общавшихся друг с другом аниматора. Нужно сгладить переход между основным и вторичным движениями.
5. На панели Outliner (Структура) окна диалога Graph Editor (Редактор анимационных кривых) выделите строчку Rotate l (Поворот относительно оси Т). Оставшаяся в области просмотра кривая показана на Рисунок 8.15.
Сайт: Аннимация - Видео - Графика
- Анимация на сайте
- Графика на сайте
- Фотография на сайте
- Кино на сайте
- Flash на сайте
- Видео для сайта
- Premiere Pro
- Vstudio
- VirtualDub
- Sonic Scenarist
- DVD
- Изображения для сайта
- Пакет Photoshop
- Adobe Illustrator
- Adobe Illustrator
- CorelDRAW
- CorelXARA
- Maya