| Иллюстрированный самоучитель по Maya для начинающих |
|
|
| 14.12.2007 г. | |||||||||
Страница 5 из 7 Моток кабеля Как свернуть кабель вокруг бобины? Тема:
Используемые техники и инструменты:
В большинстве проектов анимация и моделирование - это два различных процесса. Однако многие объекты гораздо проще моделировать с помощью анимации, нежели классических инструментов моделирования. Например, центральная диафрагма фотокамеры напоминает ракушку улитки. Если вы начнете ее моделирование с профиля (со спирали), это займет слишком много времени. Гораздо быстрее вы получите требуемый результат, если немного подумаете, как создать анимацию закручивания спирали. В этом уроке мы будем моделировать кое-что похожее: свернутый в моток кабель. Исходить будем из того, что нам нужно создать анимацию поперечного сечения кабеля, то есть окружности, по всей его длине. Мы получим моток кабеля, после того как создадим достаточное количество копий поперечных сечений. К счастью, Мауа предлагает команду, которая выполнит копирование за нас и одновременно позволит анимировать процесс намотки.
Рис. 9.1. Опорная точка окружности смещена к началу координат сцены. С помощью новой точки вращения мы сможем подготовить первый виток намотки
Если вы повернете окружность вокруг оси Z, она будет двигаться циклически по кольцу. А если переместите маленькую окружность на одну единицу по оси Z . после каждого завершенного цикла, то путь ее вращения опишет первый виток вокруг несуществующей бобины (см. рис. 9.2). Мы создадим десять витков для нашего кабеля. Для этого нужно будет выполнить вращение на 10 * 360 = 3600° и перемещение на 10 единиц. (Если мы переместим больше чем на 10 единиц, кабель не сможет компактно уложиться на бобине, между его витками мы получим зазоры, которые, правда, иногда являются желаемым эффектом.) Рис. 9.2. Если мы повернем маленькую окружность на 360° вокруг оси Z и одновременно передвинем ее на одну единицу по Z, то получим первый виток кабеля вокруг бобины
Рис. 9.3. Каналы перемещения и вращения окружности получают ключевые кадры в кадре 100
Рис. 9.4. Для получения равномерной намотки нам потребуется линейная анимация, вместо той, которая медленно начинается и заканчивается. Поэтому мы зададим касательным анимационных кривых тип Linear (Линейные) Линейные касательные необходимы для получения равномерной намотки. Если вы зададите им тип Flat (Горизонтальные), намотка в начале будет ускоряться, а в конце замедляться, что создаст слишком большую плотность размещения окружностей для построения лофтированной поверхности.
Animation Snapshot (Копии фаз анимированного объекта) создаст 100 или 101 окружность - в зависимости от того, где начинается анимация: в нулевом, или первом кадре, - описывающие витки вокруг бобины.
Рис. 9.5. Большим прямоугольником выделим все окружности, чтобы подготовить лофт через 101 окружность. Желтые стрелки указывают на первую и последнюю окружности, созданные инструментом Animation Snapshot (Копии фаз анимированного объекта)
Рис. 9.6. Лофтированная поверхность, построенная по 101 окружности, представляет собой 10 идеальных витков вокруг еще не существующей бобины Если лофтированная поверхность выглядит угловатой, а не округлой, нажмите клавишу 3 для получения максимально качественной прорисовки поверхности. Последняя окружность содержит всю информацию об операции Animation Snapshot (Копии фаз анимированного объекта).
Рис. 9.7. Кабель с разными значениями параметра End Time (Конечное Время) лофтированной поверхности Здесь вы найдете историю создания поверхности. Анимируя параметры Start Time (Начальное Время) и End Time (Конечное Время), вы можете создать анимацию намотки кабеля вокруг бобины. Установив Start Time (Начальное Время) на 0 и ключевые кадры для End Time (Конечное Время) с 0 до 100, вы, наконец, получите намотку кабеля на бобину. Анимация параметра Start Time (Начальное Время) уменьшает длину кабеля с начала в процессе намотки (рис. 9.8). Рис. 9.8. История создания лофтированной поверхности может быть проанимирована. Чем меньше значение End Time (Конечное Время), тем короче кабель Когда кабель наконец намотается, вы можете добавить последние штрихи. Обычный цилиндр, возможно немного подмасштабированный с торцов, послужит геометрией для бобины. Если вам захочется поиграть с деревянной текстурой, вы можете найти ее в секции 3D-texture-Section в окне Hypershader (рис. 9.9). Рис. 9.9. Намотайте медный материал вокруг кабеля, а в качестве бобины добавьте цилиндрический блок с деревянной текстурой А теперь кое-что новенькое. Вы никогда не пробовали «нащелкать» лошадь, используя Bert van Brandes' Skeleton Works? Узловатый человечек Как смоделировать фигуру, чья поверхность грубее, чем у обычного трехмерного персонажа? Тема:
Используемые техники и инструменты:
Многие трехмерные объекты имеют безупречно гладкую поверхность, что хорошо не для всех задач. Обычно, для того чтобы сделать поверхность немного грубее и имитировать неровности, используют, так называемые Bump Maps (Карты Рельефа). В действительности же Bump Map (Карта Рельефа) - это свойство не поверхности, а камеры. В большинстве случаев Bump Mapping (Наложение Карты Рельефа) является достаточно эффективной процедурой и не требует много времени при рендеринге. Однако она совершенно неприменима, если вам нужны деформации и выпуклости, отчетливо выделяются на фоне. Познакомьтесь с Displacement Mapping (Наложение Карты Смещения) - техникой, которая не просто имитирует деформации для камеры, а реально деформирует поверхность, используя полутона процедурной текстуры или растрового изображения. К сожалению, эти деформации нельзя видеть в окнах моделирования. Нам придется их отрендерить. Этот урок состоит из двух взаимосвязанных частей. Мы начнем с моделирования высокого худого человечка с маленькой головой, используя SDS-поверхности. Немного практики - и это займет лишь пару минут. (Перед эпохой SDS-поверхностей это стоило разработчику не меньше часа.) Если у вас нет Maya Unlimited, вы можете достичь тех же результатов, используя инструменты разбиения и экструдирования и выполнив после них операцию Polygon / Smooth (Многоугольники / Сглаживание). Если вы хотите пропустить моделирование либо отложить его на потом, просто возьмите любой примитив и приступайте ко второй части урока, посвященной технике Displacement (Смещение).
Рис. 10.1. Полигональный куб, преобразованный в SDS-поверхностъ. Его контекстное меню позволяет сделать видимым исходный полигональный объект Вы можете моделировать SDS-поверхности в двух основных режимах. В первом вы используете инструменты полигонального моделирования, а во втором - инструменты из мира NURBS-моделирования. Классические инструменты полигонального моделирования незаменимы при получении высокой подробности геометрии (например, в области, где ноги прикрепляются к туловищу). Именно поэтому большую часть моделирования нашего человечка мы будем осуществлять в режиме Polygon mode (Полигональный режим).
Рис. 10.2. Используя Split Polygon Tool (Разбиение Многоугольника), разбейте нижнюю грань куба на две части Рис. 10.3. Инструмент Extrude Tool локально увеличивает плотность геометрии. Здесь мы это сделали, для того чтобы начать вытягивать грани для моделирования ног
Рис. 10.4. Несколько последовательных экструдов (а не экструзий) - и ноги готовы. Не совсем идеальные по форме, но все-таки это ноги. Последнее экструдирование (на этот раз в горизонтальном направлении) создаст стопы
Рис. 10.5. Вид сбоку используется для более точного моделирования носков стоп Рис. 10.6. Моделирование нижних конечностей завершено. Немного практики - и это займет лишь пару минут
Рис. 10.7. Работаем над верхней частью тепа. Это первые два экструда для рук
Рис. 10.8. Первые два экструда для шеи и головы
Рис. 10.9. Последние штрихи: вращение затылка В окне Channel Box (Окно Каналов) вы увидите, что история создания поверхности содержит слишком много уже ненужной информации. Для того чтобы облегчить сцену, удалите историю: Edit / Delete by Type / History (Редактирование / Удалить в зависимости от типа / История). Имейте в виду, что при этом вы не сможете удалить «сабдивность» поверхности. Используя контекстное меню и команды Coarser (Грубый) и Finer (Подробный), вы можете переключаться с одного уровня иерархии на другой для более глобальной или локальной работы как в полигональном, так и в стандартном режиме (рис. 10.10). Рис. 10.10. Контекстное меню SDS-поверхности позволяет вам переключаться между различными уровнями иерархии. Более подробные уровни позволяют работать локально На этом этапе не стоит слишком увлекаться такими деталями, как нос, плечи или пальцы ног. Displacement Shader (Шейдер Смещения) может стереть нос, плечи и другие мелкие элементы.
Рис. 10.11. Так создается Displacement Map (Карта Смещения) трехмерной текстуры проекционного типа. Откройте Attribute Editor (Редактор Атрибутов) для Shading Group (Шейдинг-группа), щелкните по шахматной иконке рядом с полем Displacement Mat и в окне Create Render Node (Создать Функциональный Узел Рендеринга) выберите параметр «As projection» для метода и, скажем. Solid Fractal для текстуры Поскольку в окне моделирования вы не увидите никаких изменений, отрендерите сцену. Рендеринг не займет много времени, - может, несколько минут, в зависимости от используемой геометрии, материала и, конечно, скорости вашего компьютера. Результаты наглядно демонстрируют разницу между Displacement Mapping (Карта Смещения) и Bump Mapping (Карта Рельефа). В рис. 10.12 как к персонажу впереди, так и к дальнему персонажу применялась одна и та же текстура Solid Fractal. Однако переднему персонажу текстура была назначена с помощью Bump Map (Карта Рельефа), а не Displacement Map (Карта Смещения) (как дальнему). Поверхность передней фигуры выглядит неровной, однако ее контур остается гладким, что отчетливо видно на фоне фона. Рис. 10.12. В основе этих двух персонажей одна и та же геометрия и одинаковая текстура. Разница - в способе наложения текстуры. Неровность поверхности передней фигуры обусловлена применением Bump Map (Карта Рельефа). А метод наложения текстуры дальней фигуры - Displacement Map (Карта Вытеснения). Края передней фигуры выглядят гладкими, a Displacement Map изменяет не только внутренние области, но и контур поверхности. И хотя больше никакие настройки процедуры отображения не менялись, Displacement Map значительно увеличивает толщину персонажа. Bump Map, в свою очередь, в основном сохраняет первоначальную геометрию модели Displacement Mapping (Карта Смещения) может иметь больший или меньший эффект, в зависимости от размера узловатого человечка. Есть два способа настройки интенсивности эффекта. Один из них - это изменение плотности наложения текстуры на геометрию. В окнах моделирования вы можете видеть каркасный куб с именем placeSDTexturel. Это именно тот инструмент, с помощью которого мы можем изменять плотность наложения текстуры (рис. 10.13). На рис. 10.14 слева - отрендеренная сцена. С помощью отмеченной пиктограммы вы можете сохранить отрендеренное изображение в оперативную память. Оно не будет удалено до тех пор, пока вы не выйдете из Мауа (или пока не произойдет фатальный сбой в программе). Второй способ настройки текстуры смещения - это использование градаций серого текстуры. Displacement Mapping (Карта Смещения), как и Bump Mapping (Наложение Карты Рельефа), использует только яркость (альфа-канал, а не цвет) текстуры в деформации геометрии. Для большинства текстур, таких, как Solid Fractal, вы найдете входные данные для полутонов в секции Color Balance в окне Attribute Editor (Редактор Атрибутов). Начните с самых темных, почти черных значений цвета и низкого значения для Alpha Gain (Усиление Альфа-канала) (рис. 10.15). Рис. 10.13. Каркасный куб вокруг стоп персонажа определяет размер наложенной Displacement Map (Карта Смещения). Чем меньше куб, тем чаще текстура повторяется на объекте Рис. 10.14. Объект, отображающий расположение 3d текстуры, теперь охватывает весь персонаж полностью Рис. 10.15. Окно Attribute Editor (Редактор Атрибутов) для текстуры. В верхней части располагаются параметры, отвечающие за структуру фрактала, ниже - установки для градаций серого, отвечающие за деформации. Основные параметры для Displacement Map (Карта Смещения) - это Color Gain (Усиление Цвета) и Alpha Gain (Усиление Альфа- канала). Большие значения этих параметров означают более белый цвет, что приводит к увеличению объекта. Если Displacement Map (Карта Смещения) обнаруживает только черный цвет, геометрия остается нетронутой Вообще-то, персонаж увеличивается в размере, если вы применяете яркую текстуру. Когда Displacement Mapping (Карта Смещения) обнаруживает только черный цвет, размер модели не меняется. Если текстура имеет значительные колебания в яркости, персонаж получится очень «комковатым». Выпуклости соответствуют наиболее ярким областям текстуры. Вам придется приложить много усилий и совершить много (много... много) ошибок в поисках подходящей комбинации настроек для достижения желаемого результата. К сожалению, инструмент IPR (Интерактивный фотореалистичный рендеринг) не работает с Displacement Map (Карта Смещения). Это значит, что вам придется потратить много времени на тестовый рендеринг. Используя настройки окна рендеринга, отрендерите либо часть изображения, либо изображение маленького размера. SDS-моделирование и Displacement Mapping (Карта Смещения) - это два мощных инструмента для эффективного создания сложных персонажей, которые выглядят так, будто их вылепили из глины (рис. 10.16) или выковали из металла (рис. 10.17). Рис. 10.16. Персонаж, вылепленный из глины Рис. 10.17. Выкованные из металла узловатые человечки Для создания более мелкой текстуры вы можете добавить Bump Map (Карта Рельефа) к Displacement Mapping (Карта Смещения). Bump mapping добавит мелкие шероховатости к изменениям поверхности, создаваемым техникой Displacement mapping. При экструдировании UV-координаты текстуры очень неровно распределяются. Это можно видеть, если в качестве метода отображения выбрать Normal (Обычный), а не As Projection (Проекция). Для решения проблемы распределения текстурных координат вам нужно создать новую UV-карту например с помощью команды Automatic Mapping (Автоматическое создание текстурных координат), которую вы найдете в меню Subdiv Surfaces (SDS-поверхности). Проекционная текстура, как та, с которой мы только что работали, не использует UV-координаты поверхности. Однако, как только вы начнете анимацию персонажа, вам придется зафиксировать проекционную текстуру на его геометрии. В противном случае, как только персонаж начнет двигаться, текстура буквально «поплывет» по его поверхности. Команду для фиксации текстуры на поверхности вы найдете в окне Hypershader. Выберите Edit / Convert to File Texture (Редактирование / Преобразовать в файловую текстуру). Если вы хотите для наложения текстур использовать какие-то изощренные средства из арсенала полигонального моделирования, то сохраните сцену и преобразуйте наше существо из SDS-поверхности в полигоны (выберите Modify / Convert / Subdiv to Polygons (Модифицировать / Преобразование / SDS-поверхности в Полигоны). Рис. 10.18. Узловатые человечки, выкованные из золота А теперь кое-что новенькое. Приходилось .ли вам в последнее время нажимать клавиши А или F? Изогнутое крыло автомобиля Как создать крыло автомобиля из нескольких хороших NURBS-кривых? Тема:
Используемые техники и инструменты:
Когда разрабатывается дизайн автомашины, крыло (часть, которая огибает колесо) лишь в очень редких случаях проектируется отдельно. Форма крыла должна соответствовать внешнему виду автомобиля, поэтому обычно включается в процесс разработки дизайна. Тем не менее крыло автомобиля - это хороший пример для упражнения в моделировании весьма специфичных форм с использованием специальных кривых. В этом уроке мы будем непрерывно создавать и модифицировать кривые, затем строить по ним поверхности, оценивать результат и удалять промежуточные построения. Начнем только с двух кривых, которые образуют Loft (поверхность, построенную по сечениям). Затем будем использовать инструмент Square (Квадрат) и закончим работу инструментом Birail3+ Tool. С помощью этих инструментов будет построена поверхность по двум направляющим кривым (кривым Rail) и нескольким профильным кривым. Это будет та поверхность, которую мы сохраним. Для начала работы вовсе не обязательно использовать сложные инструменты. Начнем с обычного Loft (Построение поверхности по сечениям) - он даст нам отличные кривые для создания более совершенных поверхностей.
Рис. 11.1. Это лофтированная поверхность, построенная между двумя параллельными кривыми. В меню Pick Mask (Маска Выбора) в верхней части экрана дезактивирована пиктограмма с изображением поверхности. В этом режиме работы с кривыми возможность случайного выделения поверхности исключена Рис. 11.2. Колесо отлично входит в нишу, созданную инструментом Proportional Modification Tool (Пропорциональная Модификация). Действие Proportional Modification Tool на контрольные вершины пропорционально расстоянию от середины выделенного множества. Чем дальше располагается контрольная вершина от середины, тем эффект модификации меньше выражен
Рис. 11.3. Инструмент Proportional Modification Tool (Пропорциональная Модификация) хорош не только для перемещения контрольных вершин, но и для их масштабирования. Мы сделаем нишу для колеса меньше и округлее. Соответствующие контрольные вершины верхних кривых следует масштабировать пропорционально, для того чтобы соблюсти точность геометрии поверхности
Рис. 11.4. Обе передние контрольные вершины передвинуты вправо, для того чтобы изобразить изгиб крыла в направлении решетки радиатора
Рис. 11.5. Для того чтобы изогнуть край крыла в направлении корпуса машины, немного сместите оставшиеся верхние контрольные вершины
Рис. 11.6. Верхние передние контрольные вершины смещены назад для придания передней части машины требуемого наклона Крыло не выглядит идеально. Имейте, однако, в виду, что вы затратили очень мало времени на его создание! Крыло уже похоже на крыло и ни на что другое. Однако после манипуляций с кривыми вы обнаружите ограничения в использовании лофтированной поверхности (поверхности, полученной лофтом). Горизонтальные кривые дают вам хороший контроль над формой в целом, но у вас нет вертикального контроля. Вам нужны кривые, которые позволят добавить детали, например заостренное ребро ниши колеса. Кроме того, оба вертикальных края поверхности абсолютно прямые, а ведь и они должны быть немного закругленными. Вы могли бы вставить третью кривую между двумя уже существующими и создать новую лофтированную поверхность для получения требуемого закругления. Но это будет очень неудобный способ. Вы можете получить абсолютный вертикальный контроль над поверхностью только с помощью вертикальных кривых. В следующей части мы используем Square tool (инструмент Квадрат), с помощью которого создадим поверхность по четырем соприкасающимся или пересекающимся граничным кривым. Если этот инструмент отсутствует в вашей версии Мауа, используйте инструмент Birail 2 Tool. Перед тем как удалить лофтированную поверхность, выделите ее и в последний раз взгляните на ее структуру и параметризацию. Лофтированная поверхность содержит две горизонтальные и несколько почти параллельных вертикальных кривых. Если какие-то из изопарм (кривые, образующие поверхность) пересекаются, то что-то не так с исходными кривыми и их (кривые, по которым строилась поверхность) нужно перестроить (рис. 11.7). Рис. 11.7. Базисная форма крыла, состоящая из нескольких вертикальных и двух горизонтальных кривых
Рис.11.8. Две новые кривые двумя щелчками мыши. Они соединяют концевые вершины предыдущих кривых
Рис. 11.9. Новая поверхность, построенная по четырем кривым. Перемещение двух центральных контрольных вершин передней кривой придает округлую форму передней части машины Заметьте, насколько могущественны эти крошечные изменения кривизны и как они влияют на всю структуру поверхности. Если вам захочется передвинуть крайние контрольные вершины какой-нибудь из кривых, убедитесь, что вы также выделили и двигаете соответствующую контрольную вершину соприкасающейся кривой. В противном случае Square tool не будет создавать результирующую поверхность. Неплохо было бы одновременно передвигать соответствующие контрольные вершины противоположных кривых, поскольку односторонние изменения могут оказать самый неожиданный эффект на форму изопарм. После удаления нашей поверхности четыре оставшиеся кривые описывают форму крыла гораздо точнее, чем кривые, оставшиеся после лофтированной поверхности (рис. 11.10). Рис. 11.10. Завершение второй фазы разработки дизайна крыла: поверхность, построенная инструментом Квадрат, перед удалением
Рис. 11.11. Две новые вертикальные кривые, созданные инструментами ЕР Curve Tool (Построение кривой по редактируемым точкам) и Curve Snapping (Прилипание к Кривой)
Рис. 11.12. Переместите центральные контрольные вершины в горизонтальном направлении (влево) для придания середине крыла округлой формы
Таким образом мы создали новую поверхность - последнюю в этом уроке (рис. 11.13). Она очень отличается от всех предыдущих поверхностей. Рядом с новыми вертикальными кривыми можно увидеть несколько дополнительных изопарм, которые немного портят внешний вид поверхности. Однако вскоре мы это исправим. Рис. 11.13. Поверхность, построенная с помощью Birail 3+ Tool, выглядит менее аккуратно, чем предыдущие поверхности, поскольку ей приходится дополнительно учитывать кривые в центре Мы добавили средние профильные кривые, для того чтобы более детально проработать верхнюю часть ниши колеса. Использования имеющихся контрольных вершин вертикальных кривых на этом этапе явно недостаточно для детализации формы крыла. Если вы откроете Attribute Editor (Редактор Атрибутов) для кривых, вы увидите, что каждая из них состоит только из одного интервала (span), полученного двумя щелчками мыши, с двумя контрольными вершинами в середине. Нам нужно перестроить (команда Rebuild) кривые, для того чтобы увеличить количество контрольных вершин. Для сохранения аккуратности геометрической формы крыла мы перестроим все четыре вертикальные кривые, используя одинаковые установки операции rebuild.
Рис. 11.14. Перестроив все профильные кривые, мы теперь можем добавить дополнительные детали на верхнюю часть ниши колеса и получить характерный жесткий излом Когда все вертикальные кривые перестроены, увеличивается концентрация горизонтальных патчей на поверхности Birail (поверхность, построенная по двум направляющим). Заметьте, что поверхность перестраивать не нужно, она автоматически адаптируется к новым атрибутам кривых.
Волшебный момент: еле заметное перемещение контрольных вершин создает желаемый острый выступ ниши колеса. Особенность этого выступа заключается в том, что он плавно сходит на нет к концам крыла, прямо как у настоящей машины. Эта плавность обязана взаимодействию между соседними вертикальными кривыми. Увеличив-плотность геометрии, вы можете добавить детали в верхнюю часть всех вертикальных кривых (см. рис. 11.16). Старайтесь, если это возможно, двигать соответствующие контрольные вершины вместе. Проверьте - может быть, в другом окне и в другом режиме отображения (Shading mode), - как влияют на расположение изопарм и патчей на поверхности различные манипуляции с кривыми. Рис. 11.15. Перемещение выделенных контрольных вершин обеих кривых немного вниз создает характерный выступ над нишей колеса. Этот выступ плавно сходит на нет к концам крыла, поскольку контрольные вершины передней и задней кривых распределены равномерно Рис. 11.16. Добавление изопараметрических кривых позволяет добиться более точной формы перестроенной поверхности Если окажется, что для получения желаемого результата вам все-таки недостаточно контрольных вершин, перестройте кривые снова. Когда результат вас удовлетворит, перестройте всю поверхность. Так вы сможете более равномерно распределить изопармы на поверхности.
Рис. 11.17. Окно перестраивания поверхностей идентично окну перестраивания кривых. С установками по умолчанию команда создает более простую и равномерную поверхность
Теперь поверхность перестроена с более простым и равномерным распределением изопараметрических кривых. Если какие-то детали из созданных ранее отсутствуют, отмените предыдущий шаг и перестройте поверхность снова, увеличив значения по U и по V. Кривые теперь совершенно не нужны, и вы можете удалить их. Если вы хотите продолжить работу с кривыми для внесения каких-либо изменений или добавления деталей, выделите четыре изопармы по краям поверхности и используйте инструмент Square (Квадрат) или Birail 2 Tool для построения новой поверхности по этим четырем кривым. После этого можете удалить старую поверхность. Главная цель этого упражнения - это научиться использовать наименьшее количество возможно более простых кривых для построения выразительных поверхностей. Прежде чем вы приступите к рендерингу, увеличьте значения Tesselation (Тесселяции) в окне Attribute Editor (Редактор Атрибутов) поверхности для получения действительно гладкой формы крыла. Поищите шейдер металла в библиотеке шейдеров либо создайте собственный многослойный шейдер с полупрозрачным слоем лака сверху. Рис. 11.18. Красиво смоделированное крыло автомобиля ждет дверь, корпус и решетку радиатора А теперь кое-что новенькое. Приходилось ли вам использовать Поиск Меню? [Здесь идет речь о MEL-команде findMenuItem, позволяющей отыскать пункты меню с желаемым названием (если помните, как примерно называется пункт меню, но забыли, где его искать). - Примеч. ред. ] Нос с бородавкой Как смоделировать нос с двумя ноздрями, бородавкой и веснушками? Тема:
Используемые техники и инструменты:
Человеческий нос обладает одной особенностью, которая при трехмерном моделировании просто взывает к NURBS моделированию: это его округлость. Но есть и другая особенность, кошмарная для NURBS моделлера: две дырки! Специалиста по полигонам, в свою очередь, дырки совершенно не беспокоят. Его, однако, весьма озадачивает вопрос получения гладкой округлой поверхности. Тем не менее проблема носа просто решается путем использования SDS-поверхностей (или сабдивов). MAYA предлагает огромное количество готовых SDS-примитивов в меню Create (Создать). Мы могли бы начать моделирование с классического полигонального куба. В удивительно короткое время мы бы получили нос, не только гладкий и круглый, но еще и имеющий две ноздри и даже бородавку! В реальной жизни носы очень редко существуют сами по себе, обычно они являются составляющей частью всего лица. Поскольку технология моделирования на базе SDS-поверхностей практически не зависит от исходной топологии поверхности, описанную здесь процедуру можно применять в проектах, где вы, скажем, начинали с создания сферы для головы. В отличие от обычного процесса моделирования с использованием SDS-поверхностей, где - как в главе 10 с узловатым человечком - мы в большинстве случаев использовали инструмент Extrude (Экструдирование), мы выполним всю работу только с помощью серии локальных детализаций поверхности и четко выполненных перемещений. Никакого экструдирования. В завершение мы конвертируем нос в полигональную поверхность и нарисуем на нем веснушки.
Рис. 12.1. Жил-был обычный SDS-куб Рис. 12.2. Переключитесь с режима Standard mode (Стандартный режим) на Polygon mode (Полигональный режим)
Рис. 12.3. Масштабирование вершин многоугольника придает кубу основу формы носа, а SDS-поверхность плавно следует изменениям Рис. 12.4. Дальнейшее масштабирование и перемещения формируют основание носа Рис. 12.5. Моделируем острый кончик носа
Рис. 12.6. Удаление четырех тыльных граней полигона открывает нос сзади. Никакая NURBS-поверхность не смирилась бы с такой операцией, а целостность SDS-поверхности остается неповрежденной За несколько хорошо рассчитанных шагов моделирования вы создали объект, который уже выглядит как нос. Поскольку вам ничего не пришлось экструдировать, вы все еще работаете на одном-единственном уровне SDS-поверхности - 0. Нумерацию уровней можно видеть в окне Channel Box (Окно Каналов) либо с помощью контекстного меню. Для этого нужно переключиться в режим Standard mode (Стандартный режим) и активизировать вершины. В окне моделирования вершины появятся в виде нулей - говоря о том, что вы все еще работаете на нулевом уровне. Если вы попробуете переместить нижние вершины носа вверх для формирования ноздрей, то обнаружите, что плотность геометрии недостаточна для этой операции. Все, что вы можете сделать на данном этапе, - это переместить вверх всю нижнюю поверхность. Существует простой способ увеличить плотность геометрии.
Рис. 12.7. Локальная детализация вокруг центрального нижнего ребра носа готовит поверхность к созданию двух ноздрей Теперь у вас кроме уровня 0 есть еще два уровня: 1 и 2, которые позволят вам осуществлять более локальные изменения. В большинстве случаев персонажной анимации (и в этом уроке тоже) уровень 2 вполне достаточен для моделирования ноздрей. Вы можете переключаться с одного уровня на другой, либо меняя параметры команды Display Level (Показать Уровень) в окне Channel Box (Окно Каналов), либо используя команды контекстного меню Coarser (Грубый) и Fine (Подробный). Эти команды позволят вам шагать по иерархии уровней вниз и вверх.
Рис. 12.8. Восемь вершин уровня 2 готовят нас к моделированию ноздрей
Рис. 12.9. Инструмент Proportional Modification Tool (Пропорциональная Модификация) перемещает восемь вершин пропорционально вверх и формирует в носу две красивые дырочки
Вы создали ноздри всего лишь несколькими операциями. В зависимости от того, насколько точной детализации требует ваш проект, вы можете оставить нос в таком виде, либо дополнительно поработать с этими тремя уровнями. Скажем, вы можете попытаться воссоздать какой-нибудь весьма специфический нос - это может быть нос реального человека или с рисунка. Либо, если вы работаете над анатомически правильной анимацией, вы, может быть, захотите поместить камеру внутрь носа. В этом случае вам понадобится более детальная работа над ноздрями для изображения синусоидальных пазух. Наш нос будет закончен, когда мы добавим анатомически несовершенную, но милую маленькую бородавочку на самый его кончик. Рис. 12.10. Конструируем ноздри с внешней стороны в уровне 1
Рис. 12.11. Локальная детализация вокруг точки первого уровня. Именно здесь мы разместим нашу бородавку
Рис. 12.12. Перемещение вперед, от поверхности. Плотность геометрии, хотя и детализированная до уровня 2, все еще недостаточна для моделирования маленькой бородавки
Рис. 12.13. Детализация носа на уровне 4. Наконец, мы можем вытянуть очень маленькую область из большой поверхности Рис. 12.14. Вершины в основании бородавки сдвинуты масштабированием друг к дружке Теперь, когда мы удовлетворены формой (см. рис. 12.15), давайте поработаем над цветом. Для того чтобы нарисовать веснушки, преобразуйте смоделированный нос в полигональный объект и приведите в порядок его UV-координаты. Этот шаг важен, поскольку предыдущие трансформации должны были исказить карту распределения UV-координат по поверхности. На этом этапе было бы неплохо сохранить SDS-сцену под другим именем: вдруг вы захотите к ней вернуться. Другой способ возвращения к красивому носу из сабдивов, над которым вы так усердно до настоящего времени работали, отсутствует [Здесь имеется в виду, что после конвертации SDS-поверхности в полигоны нельзя будет вер- гуться обратно к SDS-представлению с сохранением иерархии. Можно будет отконвертиро- вать полигональную поверхность в SDS, но при этом, естественно, уровни иерархии будут потеряны, то есть все точки станут точками нулевого уровня деталировки, и в этом смысле поверхность потеряет элегантность представлени. - примеч. ред. ].
Рис. 12.15. Законченный нос в окнах моделирования. Вверху справа результат рендеринга (визуализации) с двумя источниками света
Помимо каналов цвета вы можете изменить и другие атрибуты с помощью инструмента 3D Paint Tool (Трехмерного Рисования). Загляните в меню Attribute to Paint (атрибут для рисования). Рисуя с использованием этой техники (техники трехмерного рисования), вы создаете двумерную картинку, которая накладывается на нос в соответствии с ранее созданным распределением текстурных (UV) координат. Вы можете открыть и отредактировать ее в программе Photoshop или в Paint Effects в режиме 2D, который иначе называется режим Canvas mode (режим Холста). (Смотрите урок в главе 28 о текстурировании спасательного круга). Рис. 12.16. Разноцветные веснушки, нанесенные Инструментом Трехмерного Рисования Использование инструмента 3D Paint Tool (Инструмент Трехмерного Рисования) (с или без использования кистей модуля Paint Effects) значительно отличается от рисования в окне модуля Paint Effects (клавиша 8 на клавиатуре). Здесь (в окне Paint Effects) нарисованные вами штрихи представляют собой не пиксели в двумерном текстурном файле, а кривые в трехмерном пространстве. Эти кривые визуализируются как штрихи, которые либо располагаются по поверхности носа, либо торчат из нее, как пучки волос, растущие из ноздрей. Для того чтобы добавить волосы, откройте в окне Visor секцию Hair. А теперь кое-что новенькое. Приходилось ли вам задавать ключевой кадр для вращения, используя клавиши Ctrl+E? Четыре чемодана ...Но какой из них самый удобный и полезный? Тема:
Используемые техники и инструменты:
В принципе нет ничего сложного в моделировании чемодана. Однако это прекрасный пример того, как различные подходы к решению задачи дают различные результаты. Мы сконструируем четыре чемодана четырьмя разными способами. Последний будет самым красивым, но мы не сможем его деформировать. Полигональный чемодан Самый очевидный способ начинается с полигонального куба.
Эта операция разбивает куб на большее количество граней (рис. 13.1). Рис. 13.1. Создайте полигональный чемодан vi примените к нему несколько раз операцию Smooth (Сгладить). Это детализирует его форму
Рис. 13.2. После каждой операции Smooth (Сгладить) вершины на углах раздвигаются масштабированием... [Нужно использовать именно масштабирование, чтобы не потерять симметричность формы. - Примеч. ред. ]
Рис. 13.3. ...для того, чтобы заострить сглаженные края чемодана
На этом завершается моделирование полигонального чемодана. Чемодан из SDS-поверхностей Этот процесс немного сложнее, чем предыдущий, но с самого начала он дает вам закругленные края.
Рис. 13.4. SDS-куб на иерархическом уровне 0
Рис. 13.5. Масштабированием раздвигаем диагональные вершины наружу Рис. 13.6. Команда Refine (Детализировать) создает геометрию более высокой плотности на углах чемодана
Рис. 13.7. Диагональные вершины более подробного уровня тоже масштабируются Рис. 13.8. Этапы моделирования чемодана из SDS-куба Чемодан из NURBS-сферы Использование NURBS-сферы для моделирования прямоугольного чемодана может показаться странным. Однако NURBS-сферы являются очень гибкими в использовании поверхностями.
Рис. 13.9. Обычная NURBS-сфера. Она более округлая, чем SDS-чемодан, и очень нуждается в масштабировании угловых контрольных вершин наружу
Рис. 13.10. Масштабируем все угловые контрольные вершины вместе в окне Top View (Вид Сверху) Рис. 13.11. Масштабируем контрольные вершины верхнего и нижнего полюсов Итак, чемодан из NURBS-сферы готов. На его моделирование мы затратили гораздо меньше времени, чем на остальные. Округленный чемодан Последний метод основан на NURBS-кубе и во многом базируется на использовании инструмента Round Tool (Округление). Этот инструмент создает систему связанных, взаимозависимых поверхностей и создает по-настоящему красивый чемодан.
Рис. 13.12. NURBS-куб готов к применению инструмента Round Tool (Округление). Небольшому чемодану требуется маленький радиус округления Рис. 13.13. Манипулятор предлагает радиус 0,2 для первого ребра. Он может быть интерактивно изменен
Рис. 13.14. Двенадцать пар ребер выделены. После завершения операции Round Tool (Округление)...
Рис. 13.15. ...появляются несколько новых полукруглых поверхностей. Окно Channel Box (Окно Каналов) показывает заданные радиусы
Все четыре подхода к моделированию формы чемодана имеют свои плюсы и минусы (рис. 13.16). Последний чемодан состоит из великолепно смоделированных отдельных поверхностей, но, поскольку фактически они являются триммингованными NURBS-поверхностями, мы не можем их адекватно деформировать. Чемодан из NURBS-сферы легок в построении, и его геометрия наименее сложная, но у него нет четких краев. Чемодан из SDS-поверхностей позволяет применить локальную детализацию для добавления деталей, но он требует выполнения специальных действий при текстурировании. Полигональный чемодан нужно несколько раз сглаживать, прежде чем он станет хоть немного круглее, зато его очень просто текстурировать как детально, так и в целом. Рис. 13.16. Слева направо: полигоны, сабдивы, NURBS-сфера и округленный чемодан Всем нашим чемоданам не хватает двух вещей: ручек, для того чтобы их поднять, и способа, позволяющего открыть чемодан (см. рис. 13.17). Если вы будете моделировать ручки чемодана, начните с половинки NURBS-тора либо с окружности, экструдированной вдоль пути. Открыть чемоданы довольно просто, поскольку у них всех есть либо изопараметрические кривые, либо ребра на линии открывания, по которым можно разделить поверхность на части. Для того чтобы открыть округленный чемодан, вам нужно разбить поверхности, составляющие «верх» и «низ» чемодана, по двум разным группам. Рис. 13.17. Четыре чемодана демонстрируют четыре техники моделирования и четыре техники текстурирования. Второй по порядку чемодан (тот, который когда-то был NURBS- сферой) раскрашен инструментом 3D Paint Tool (Инструмент Трехмерного Рисования). Остальным назначены обычные процедурные текстуры А теперь кое-что новенькое. Приходилось ли вам визуализировать свои работы с помощью инструмента RenderPal? [Имеется в виду утилита RenderPal - диспетчер bach render - рендера из командной строки. Эта утилита имеет довольно простой интерфейс и позволяет организовывать последовательный обсчет нескольких задач пакетного рендеринга (рендеринга из командной строки). - Примеч. ред.] Два глаза и рот Как сшить вместе три круглые поверхности, для того чтобы получить лицо? Тема:
Используемые техники и инструменты:
В этом уроке мы познакомимся с техникой, удобной для создания NURBS-структуры с более чем двумя отверстиями, - Сшивание. Зачем вам могут понадобиться так много отверстий в NURBS-поверхности? Ну, скажем, вы моделируете человеческую голову. NURBS-моделирование дает вам гладкую криволинейную поверхность, но отверстия в ней можно делать лишь вдоль изопармы. Это означает, что, если вы начнете с создания NURBS-сферы и раскроете два полюса, для того чтобы сконструировать рот и шею, больше вам ничего сделать не удастся - вы даже не сможете добавить ни единой ноздри. Конечно, вы могли бы преобразовать NURBS-голову в полигональную поверхность и продолжить добавлять детали. Полигоны допускают очень мелкую детализацию и не возражают против отверстий. Но тогда вы бы потеряли мягкие радиальные деформации, которые дает вам техника NURBS-моделирования. Даже самый современный способ, предполагающий использование SDS-поверхностей (который, как вы заметили, я очень часто применяю в этой книге), не даст вам точного соблюдения радиальной геометрии вокруг носа и глаз, как этого требует человеческая анатомия. Сшивание (Stitch) заключается в том, что оно настолько сближает края нескольких NURBS-поверхностей друг с дружкой, что они уже ведут себя как единая поверхность (хотя таковой не являются). К такой структуре деформирование не применяется. Однако для моделирования рта и глаз многие деформации в основном затрагивают внутренние области каждой из поверхностей, а на границах происходят малые деформации, которые не нарушают целостности стича и прекрасно им отрабатываются. Крис Ландрет сшил несколько NURBS-поверхностей вместе для моделирования лица первого персонажа, созданного в MAYA - клоуна Бинго, который впоследствии стал очень популярным.
Рис. 14.1. Начните с двух окружностей. Внутренняя окружность будет ртом
Рис. 14.2. Три NURBS-поверхности, все еще не связанные между собой, для рта и глаз Мы сошьем все три поверхности вместе одной-единственной командой Global Stitch (Сшивание всех Границ). Для того чтобы прочувствовать работу инструмента, вы можете попробовать сшить их вручную, используя неавтоматический вариант инструмента, который находится в меню Edit NURBS / Stitch / Stitch Edges Tool (Редактирование NURBS / Сшивание / Сшивание Границ) (или щелкните мышкой по соответствующей пиктограмме в панели инструментов). Следуйте иллюстрациям для вашей модели. Строка помощи MAYA попросит вас выделить две граничные изопармы поверхности: в нашем случае выберем для этого внешние изопармы двух поверхностей, созданных для глаз. Когда мы применим команду, MAYA попробует каким-нибудь образом соединить две окружности из изопараметрических кривых. Поскольку это в общем-то невозможно (как можно левую половину окружности левого глаза прикрепить к правой половине окружности правого глаза?), видимого результата вы не получите. Однако мы можем ограничить области, где две окружности фактически будут касаться, передвинув манипуляторы (это маленькие ромбики; рис. 14.3). Результат, вроде бы, неплохой. Но теперь нам нужна вторая пара манипуляторов, для того чтобы вторая окружность решила, с какой частью первой окружности она будет соприкасаться (рис. 14.4). Рис. 14.3. Для того чтобы сшить поверхности двух глаз, передвиньте ромбовидный манипулятор к центру лица Рис. 14.4. Появляется второй манипулятор (желтый). Передвиньте его, для того чтобы определить, какая часть правой поверхности будет соприкасаться с левой поверхностью Если вы все делали с нами, отмените операцию сшивания и, перед тем как мы снова осуществим ее, откройте для этого инструмента окно настроек. Здесь мы видим, что один из краев имеет приоритет над другим. Задайте одинаковый Weighting (Вес) для обоих краев (см. рис. 14.5). Две пары ромбиков появятся, для того чтобы мы могли сшить обе поверхности по строго определенным точкам (см. рис. 14.6). Рис. 14.5. Окно Настроек инструмента Stitch Tool (Сшивание). Две одинаково важные поверхности и весить должны одинаково Рис. 14.6. Появились манипуляторы левой поверхности. Они определяют, какой части левой поверхности может касаться правая поверхность После эксперимента по ручному сшиванию отмените все, что вы делали, и приготовьтесь к «великому сшиванию».
Поскольку Global Stitch (Сшивание всех Границ) теперь работает, вы можете поработать с каждой из трех поверхностей. Например, вы можете захотеть передвинуть ряд контрольных вершин вдоль одной из изопарм поверхности рта внутрь и наружу для получения формы губ (см. рис. 14.8). Заметьте, что, когда вы изменяете одну поверхность, все соседние с ней тоже стараются следовать новой форме и перестраиваются соответствующим образом. Но даже если вы деформируете все три поверхности чем-нибудь вроде деформатора Sculpt Deformer (Создать Рельеф), сшивание не нарушается. Если вам захотелось временно взглянуть на поверхность в ее изначальном виде, деактивируйте Global Stitch (Сшивание всех Границ), выбрав Modify / Enable Nodes / Global Stitch (Модифицировать / Активировать Узлы / Сшивание всех Границ). Рис. 14.7. Команда Global Stitch (Сшивание всех Границ) автоматически скрепляет между собой несколько поверхностей. Однако инструмент нуждается в некоторых настройках в окне Attribute Editor (Редактор Атрибутов) Рис. 14.8. Все три поверхности сшиты вместе (слева). В среднем примере рот сдвинут, а глаза наследуют движение поверхности рта. Под влиянием деформатора Sculpt Deformer (Создать Рельеф) (справа) все три поверхности деформированы единообразно по направлению от центра лица Теперь вы можете создать отверстия для ушей и носа, не теряя комфорта NURBS-моделирования. Это может положить начало моделированию целой головы с помощью инструмента Stitch (Сшивание). А теперь кое-что новенькое. Приходилось ли вам пользоваться командой Duplicate With Transform? Кривой стул Как сконструировать ножку кривого стула? [Навеяно работами Анны Кубик.] Тема:
Используемые техники и инструменты:
Стул состоит из пары кубов, масштабированных в длину для создания спинки и ножек, и куба, уплощенного для создания сиденья. Но такие прямые стулья бывают только в воображении заурядных архитекторов и промышленных дизайнеров. Дерево, из которого делается большинство стульев, - это живой материал. Таким же является и деревянный стул. Рис. 15.1. Происхождение кривой ножки стула. Справа - вид моделей, слева - отрендеренные фазы конструирования У меня была возможность заглянуть через плечо польского аниматора Анны Кубик, когда она моделировала трехмерный стул для анимации, которая была ее диссертацией в немецкой школе кино. Около ее клавиатуры лежали эскизы кривого стула с высокой спинкой, выполненные в карандаше. По этим рисункам она сконструировала стул от начала до конца буквально за один-два часа. Анна использовала только три инструмента: Subdivision Surfaces (SDS-поверхности), Split Polygon Tool (Разбиение Многоугольника) и Creasing (Складка), который придает заостренную форму округлым краям. Если ваша версия MAYA не содержит инструмента построения сабдивов, применяйте команду Smooth Polygon (Сглаживание) к выделенным граням. При этом невыделенные части геометрии останутся нетронутыми. Основная идея Анны заключалась в том, чтобы использовать обычную технику моделирования SDS-поверхностей немного по-другому. Обычно вы преобразуете полигональные поверхности в сабдивы, для того чтобы получить округлые и гладкие края. Она же использует SDS-поверхности, для того чтобы заострить округлые области. В этом уроке мы смоделируем только одну ножку стула, но вы, может быть, захотите продолжить и создать целый стул, используя ту же процедуру. И не смейтесь над часами, которые Анна провела за моделированием стула. Визуализированное изображение стула в конце этой главы говорит само за себя. Я был поражен реалистичностью результата ее работы. Теперь у меня не возникает вопроса, почему стул, сконструированный в считанные минуты обычным дублированием и масштабированием, в целом выглядит так холодно и скучно. Не говоря уже о том, что в контексте огромного, занимающего целый месяц анимационного проекта пара часов, проведенных за моделированием стула, который играет центральную роль в законченной работе, - это не так уж много времени.
Рис. 15.2. Инструмент Split Polygon Tool (Разбиение Многоугольника) разбивает передний многоугольник ножки стула
Инструмент Split Polygon Tool (Разбиение Многоугольника) ожидает, что вы будете щелкать мышкой по ребрам поверхности. Держите кнопку мышки нажатой после первого щелчка - и вы сможете передвигать зеленую точку вниз и вверх вдоль ребра. Эта точка останавливается (привязывается), когда достигает уже существующей линии разбиения. Вы всегда можете отпустить кнопку и заново отредактировать позицию точки, используя среднюю кнопку мыши. После разбиения SDS-поверхность старается измениться в соответствии с только что созданными гранями многоугольника.
Рис. 15.3. Снова переключитесь с режима Polygon mode (режим Многоугольников) на Standard mode (Стандартный режим)
Рис. 15.4. Выделяем восемь верхних ребер для применения инструмента Crease (Складка)
Рис. 15.5. Команда Full Crease (Полная Складка) придает ребрам многоугольника заостренную форму
Рис. 15.6. К нижним ребрам применена более мягкая форма складки При создании складок увеличивается разрешение поверхности вокруг ребер полигональной фигуры. Вы начали работу с нулевого уровня детализации. Теперь у вас есть также уровни 1 и 2, доступные для добавления деталей.
Рис. 15.7. Переключаемся на более подробное представление в режиме Standard mode (Стандартный режим)
Ножка стула готова. После этого Анна создала второй полигональный куб для следующей ножки и уделила ей столько же внимания. Она также использовала еще несколько трюков SDS-дизайна, но это ее личные MAYA секреты. Рис. 15.8. Нижние вершины уровня 1 раздвинуты в стороны Рис. 15.9. Уровень 2 предлагает более мелкие манипуляции и деформации ножки стула Теперь все зависит от вас: последуете ли вы примеру Анны либо продолжите дублирование и масштабирование существующих объектов. В любом случае в итоге у вас будет сконструирован стул, который значительно отличается от идеально прямых стульев, которые предлагают архитектурные программы CAD. Рис. 15.10. Процесс работы: несколько видов стула Анны Кубик для ее анимации «Sally Burton» А теперь кое-что новенькое. Приходилось ли вам щелкать мышкой на кнопку A\W в окне Hotbox (окно оперативного доступа к элементам интерфейса) и смотреть на Север? |
|||||||||
| Последнее обновление ( 14.12.2007 г. ) | |||||||||
| « Пред. |
|---|