Полигональное моделирование в Autodesk Maya с нуля



Дата04.03.2016
өлшемі8.6 Mb.
#41148

Серия учебников «Завтра на работу»



Станислав Куракин


Autodesk Maya

- это просто

Под редакцией Надежды Куракиной

2014 год



Часть 1. Полигональное моделирование в Autodesk Maya с нуля

Для начала работы загрузи версию программы Autodesk Maya, которая наилучшим образом подойдёт для твоей операционной системы и железа. Системные требования читай на официальном сайте разработчика: http://knowledge.autodesk.com/support/maya/troubleshooting/caas/sfdcarticles/sfdcarticles/System-requirements-for-Autodesk-Maya.html. Данное руководство написано с использованием 11 версии.


Теперь давай изучать операции, которые использует полигональный модельер в своей работе.
1. Проверь, чтобы на твоём мониторе всё было именно так как на рисунке, приведенном ниже.
А. Выбран режим полигонального моделирования – Polygons 1
Б. Выбрана закладка – Polygons 2

В
. Стрелка мышки наведена на кубик 3



2. После этого щёлкни на кубике левой клавишей мышки и перенеси мышку на рабочую поверхность.




3
.
Ещё раз нажими левую кнопку мышки и проведи ей, удерживая при этом клавишу Shift. В итоге получится такой красивый кубик:
4. После этого вызови Редактор Атрибутов как это показано на рисунке:


Е
го окно появляется справа и выглядит вот-так:


5
.
Выбираем вкладку pCube1
6
. Раскрываем список Атрибутов Трансформации (Transform Attributes) и устанавливаем атрибут Перемещения (Translate) в ноль для всех значений осей X, Y и Z.
Если непонятно, смотри сюда:


Более профессионально и правильно будет вписать скрипт вызвав Редактор сценариев (Script Editor), через меню Window > General Editors > Script Editor (Окно > Редакторы общего назначения > Редактор сценариев)




Приведенный ниже скрипт скопируй в окно вкладки MEL


string $listObj[] = `ls -sl`;

for ($obj in $listObj){

xform -centerPivots $obj;

makeIdentity -apply true -t 1 -r 0 -s 0 -n 0 $obj;

float $pivPos[] = `xform -q -ws -piv $obj`;

move -ws ($pivPos[0]*-1)

($pivPos[1]*-1)

($pivPos[2]*-1) $obj;

}
Выглядеть он будет вот так:


Обрати внимание, что для выполнения команды кубик должен быть выделен. Делается это с помощью инструмента Select Tool.




С
начала выбираем этот инструмент, а далее обводим наш кубик удерживая левую клавишу мышки:


Когда кубик выбран его грани окрасятся в зелёный цвет. Если хочешь, переключи его отображение вот в такое:



Делается это с помощью кнопок на экране:


и
ли на на клавиатуре компьютера (цифры 5 и 4, соответственно). Поэкспериментируй с режимами просмотра, обрати внимание что кубик выделен (грани окрашены в зелёный) и далее нажми кнопку Выполнить Execute в окне Редактора сценариев (Script Editor).


Наш кубик переместиться в начало координат. Теперь окно Script Editor можно закрыть.


Ну, что? Немного освоился в Maya. Пора немного отдохнуть.


Переменка
А любознательным предлагаю покрутить наш кубик, обратившись к процедурной анимации.
Расположи курсор мышки в ячейке оси Х атрибута Вращение (Rotate) и нажав правую кнопку мышки выбери пункт выпадающего меню Create New Expression.



Появится окно процедурной анимации:


В нём нужно задать имя процедуры 1, вписать формулу 2 и нажать кнопку Create 3





Формула: pCube1.rotateX = time * 50 показывает зависимость угла вращения по оси X от времени (поскольку изменяющимся параметром у нас будет время или параметр time.
Д
ля плавности анимации, увеличим количество кадров до 1000
Далее запускаем кнопку воспроизведения


Т
ак, мимоходом мы познакомились с процедурной анимацией. Можно аналогично оси X задать Expression для Y и Z. Обратите внимание, что ячейка атрибута с Expression окрашивается в жёлтый цвет.

Продолжаем заниматься нашим полигональным моделированием. Для удобства моделирования настроим выделение полигонов «по центру».

W
indow > Settings Preferences > Preferences > Selection > Select Faces with=Center



И удалим Expression с атрибута RotateX (анимация отвлекает:)





Приблизим наш кубик, ввыделив его и нажав клавишу F на клавиатуре (обращай внимание на раскладку клавиатуры, должна быть EN). Наш экран будет выглядеть следующим образом:


Н
ажимаем клавишу 5 на клавиатуре и далее переходим в компонентный режим просмотра, нажав его кнопку как показано на рисунке:


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




8. Выполняем команду Выдавливания Extrude (обращаем внимание на режим работы, должен быть Polygons :)

Поскольку мы немного занимались анимацией, наше меню могло переключиться.




П
ереходим в режим фронтальной проекции…

выбираем инструмент Перемещение (Move Tool)…



и
тянем за один из манипуляторов, предварительно увеличив его клавишей «+» на клавиатуре компьютера


Ну что-же. Твоя первая экструзия удалась успешно!
Поскольку эту утомительную операцию тебе на работе прийдётся выполнять очень часто, назначим на неё горячую клавишу. Идём: Window > Settings/Preferences > Hotkey Editor


В
появившемся окне выбираем Edit Mesh 1, PolyExtrude 2, ставим горячую клавишу (например Е), отметив одновременно галку Ctrl 3 и далее нажимаем кнопку Assign 4.


Т
еперь в меню появилось сочетание клавиш на которое Maya будет быстро реагировать, выполняя Выдавливание (Extrude). Кстати, от себя программа добавила ещё и клавишу Shift.
Теперь можно попрактиковаться в действии, которое будет одним из основных в твоей будующей работе.
Кстати, после выполнения команды в стандартных настройках программы предусмотрено переключение на универсальный манипулятор, работу с которым тебе неплохо освоить. Попробуй сделать какую либо простую полигональную конструкцию с помощью этого манипулятора.


Стрелки обозначают манипуляторы перемещения, квадратики возле них работают на маштабирование, а при нажатии на окружность включаются манипуляторы вращения. Кстати, для отмены операции служит клавиатурная клавиша «z».


Д
алее продолжим полигональное моделирование и сделаем вот такую модель арки:

1. Для начала откроем новую сцену сочетанием клавиш Ctrl+N и изменим отображение проекций на ортогональное (вид сверху)



2
.
Создадим арку с помощью инструмента Three Point Circular Arc из меню Сreate > Arc Tools
Вид курсора измениться. Для привязки к сетке нужно удерживать клавишу “x”. Отступаем по шесть клеточек от точки пересечения координат и ставим три точки по часовой стрелке.




3
.
Выбираем инструмент Create Polygon Tool из меню Mesh

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




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


4. Выбираем последний использованный инструмент в панели инструментов, расположенной слева. В нашем случае это будет Create Polygon Tool.


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





К
огда дойдём до левой точки арки сделаем приближение. Для этого нужно удерживая клавиши Ctrl и Alt обвести приближаемую область с помощью левой кнопки мышки. Курсор поменяет вид на стрелку со знаком “+” (ведём из верхнего левого угла области увеличения в её нижний правый угол). Если сделать наоборот, курсор будет иметь вид стрелки со знаком “-”, что означает отдаление объекта. Если нажать клавишу “5” на клавиатуре мы увидим такое отображение:

У
величив область возле дуги, ставим точки на её пересечении с координатной сеткой. Для привязки теперь нажимаем клавишу «С» на клавиатуре.

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



5. Теперь удалим наши заготовки и очистим историю. Нажимаем кнопку выбора объектов:


С помощью левой кнопки мышки и клавиши Shift выделяем дугу и прямоугольник и удаляем их:




П
осле удаляем историю Edit > Delete by Type > History


Теперь перейдём в окно перспективной камеры и выполним нашу любимую экструзию или выдавливание.



П
редварительно не забыв выбрать компонентный режим 1 и нажав кнопку выбора граней 2

Теперь остаётся выбрать грань и нажать комбинацию быстрых клавиш для операции Выдавливания, которую мы уже делали с нашим кубиком.


Потянув за синюю стрелку получим арку в объёмном виде:




Значение параметра экструзии нужно поставить равным 0.6. Делается это в Редакторе Атрибутов (Atribute Editor), закладка Poly Extrude Fase History, атрибут Local Translate для оси Z:




После опять удаляем историю Edit > Delete by Type > History


6
.
Далее в компонентном режиме нажмём кнопку выбора рёбер
и отметим нижнее переднее ребро арки


После этого выполним команду меню Select > Select Contiguous Edges, которая выделит весь ряд рёбер.




и
далее опять наше любимое Выдавливание (Extrude)


после изменим окно проекции на ТОР


и
перейдём к инструменту Маштабирование (Scale Tool), нажав клавишу “R” на клавиатуре или кнопку Scale Tool в панели инструментов


После этого, потянем красный кубик масштабирования по оси Х, переместив новую грань на одну клетку




Т
еперь нажав клавишу Ctrl на клавиатуре, убираем выделение с нижних рёбер


и тянем синий кубик масштабирования по оси Z вниз, поднимая новую грань на одну клетку



7. Переходим в режим выбора граней


удерживая клавишу Shift, выбираем грани нового элемента арки





и
снова операция Выдавливания

В итоге получаем вот такую арку. Сохрани её, поскольку она пригодится нам дальше.


Ч
тобы её поднять в вертикальное положение, выбираем инструмент Перемещение (Move Tool)


Н
ажимаем клавишу Insert и переносим Центр вращения (Pivot) в нижнюю точку, задав её координаты в Редакторе Атрибутов X(0), Y(0), Z(12)

Теперь выбираем инструмент вращение 1 и поднимаем арку.


Более быстрым, точным и правильным будет поставить атрибут RotateX в значение 90° 2




8. Для дублирования арки, смещаем Pivot в нижний правый угол, задав для его положения, значения в Редакторе Атрибутов X(9), Y(0), Z(12)


д
алее нажимаем сочетание клавиш Ctrl+D это команда Дублирования (Duplicate) и ставим значения атрибута Rotate X(90), Y(90), Z(0)

Теперь остаётся развернуть исходную арку на 180°, предварительно сместив её Pivot в центр основания.

Rotate X(90), Y(-180), Z(0)

Pivot X(0), Y(0), Z(12)


Полигональная модель арки готова.




С
оздать ещё два элемента и крышу, попробуй самостоятельно.




9. Теперь сделаем ворота, которые будут сами открываться, для этого открой сохранённый файл с аркой


и перейди в ортогональную проекцию







10. Для начала, нарисуй створку ворот, используя полученные знания





1
1.
После немного уменьши размер створки относительно арки с помощью маштабирования (режим объекта)
Далее в компонентном режиме, нажми кнопку выбора рёбер…



и немного опусти нижнее ребро створки ворот




Д
алее наша любимая операция Выдавливание (компонентный режим граней)


Теперь остаётся создать вторую створку…


и
отрегулировать зазор между створками с помощью выбора рёбер в компонентном режиме

используя инструмент перемещение


Что-бы скрыть вторую створку, выбери её и установи атрибут Visibility в 0 убрав с него галку (смотри 1 на рисунке). При этом обрати внимание где он находится 2




Чтобы вернуть вторую створку на место, нужно сделать обратную операцию (поставить галку на место). Для этого вызови Outliner



и в нём выбери объект, относящийся ко второй створке 1. Далее поставь галку как была 2






1
3.
Теперь сделай петли, используя полигональный примитив и полученные знания
д
ля пропорционального маштабирования, используй центральный кубик инструмента…

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

для выбора лучше использовать Outliner 1, а как правильно создавать копии, ты уже знаешь 2


Т

еперь нам нужно перенести Центр вращения (Pivot) створок ворот в центр верхних петель, нажав клавишу Insert и работая в ортогональных проекциях

Теперь нужно сгруппировать наш объект Ctrl+G


и Pivot группы 1 сместить в нижнюю часть 2, задав для его положения следующие значения 3




Далее разворачиваем нашу группу…




и отодвигаем её





Ворота готовы. Можно теперь открыть створки




Возвращаем их на место, удаляем историю и сохраняем файл





Переменка: интересно знать
Н
а переменке заглянем в комнату для любознательных. Как ты смог заметить, оси X, Y и Z в программе Maya окрашены в различные цвета – красный, зелёный и синий. Это связанно с очерёдностью цветов в цветовой гамме RGB, запомнив которую ты легко будешь ориентироваться в осях при любой проекции. Центральная часть, расположенная на пересечении всех осей, отвечает за перемещение в пространстве 1 и пропорциональное масштабирование 2.

П
ри вращении внешняя окружность (жёлтого цвета) будет вращать объект параллально выбранной проекции. Подсказку по цветам осей, также можно посмотреть в нижнем левом углу экрана проекции. Увеличивать и уменьшать манипуляторы можно с помощью клавиш “+” и “-”, об этом ты уже знаешь.


Продолжаем занятие и сейчас мы сделаем новый атрибут, который будет отвечать за открытие ворот. Для начала, выбери нашу группу 1 и с помощью команды Freeze Transformations 2 обнули все значения атрибутов трансформации 3, задав исходное положение объёкту как первичное.







14. Открой створки ворот, задав значения вращения для оси Y




15. При выбранном объекте, выполни команду меню Modify > Add Attribute


д
альше задай имя новому атрибуту 1 и обозначь минимальное, максимальное и начальное значения 2


В Редакторе Атрибутов появиться новый динамический атрибут


Т
еперь установи связь между ним и Вращением створки ворот по оси Y с помощью команды выпадающего меню Set Driven Key

В появившемся окне с помощью кнопки Load Driver 1 выбираем управляющий атрибут LeftSashGate 2 и далее выставляем управляемый атрибут rotateY 3 и нажимаем кнопку Key. Так мы установили значение для закрытых ворот LeftSashGate = 0, rotateY = 0


Далее устанавливаем значение LeftSashGate = 1, переведя ползунок вправо 1, а rotateY = -180 градусов 2 и снова нажимаем кнопку Key 3





Двигаем ползунок атрибута и наша створка открывается LeftSashGate = 1 или закрывается LeftSashGate = 0, выполняя движение при промежуточных значениях




Далее создаём динимический атрибут RightSashGate для правой створки, после удаляем историю и сохраняем файл






1
6.
Следующим шагом свяжем между собой атрибуты LeftSashGate и RightSashGate для этого открой Windows > General Editors > Connection Editor

В
ыбери левую створку 1 и нажми кнопку Reload Left 2


После выбери правую створку 1 и нажми кнопку Reload Right 2


далее убери галки в меню Left Display > Show Non-Keyable и Right Display > Show Non-Keyable





и
выбери атрибуты LeftSashGate и RightSashGate


ячейка значений атрибута RightSashGate окрасилась в жёлтый цвет, это значит, что он зависит от LeftSashGate


т
еперь ползунок атрибута LeftSashGate открывает две створки ворот


17. Теперь приступаем к созданию мостика перед нашей аркой, который будет появляться при открытии ворот
С помощью уже знакомого тебе инструмента Create Polygon Tool из меню Mesh нарисуй в ортогональной проекции прямоугольник 1 на 2 клетки, не забывая использовать привязку к сетке (клавиша «х»)


Примени к прямоугольнику операцию Выдавливания по оси Z




Установи Pivot в центре прямоугольника, работая в режиме выбора объектов при включённом инструменте перемещения и выбрав команду меню Modify > Center Pivot




Д
алее с помощью команды меню Edit > Duplicate Special, нажав на прямоугольный бочёнок


в
ызови окно специального копирования Duplicate Special и установи здесь смещение по оси Y равное 3, а количество копий 10
после выбери, созданные объекты через один и смести их в левую сторону по оси Х, задав значение -9


для остальных объектов задай значение Х=9, сместив их вправо




После сгруппируй отдельно левую и правую части мостика…




и задай имя всем группам плюс объектам групп






1
8.
Для мостика создай дополнительные динимические атрибуты как и для створок ворот, только они будут связаны не с вращением, а с масштабированием. Перед этим, смести Pivot левой и правой частей мостика…
значение ScaleX для левой и правой частей установи равным 10…



установи мостик на место, сместив его по оси Y на одну клетку вниз и выполни традиционные: Freeze Transformations, Delete by Type > History, Ctrl+S




После задания ключей динамических атрибутов, создай управление обеими частями моста с помощью ползунка Brige Left S, аналогично, как мы это делали со створками ворот






19. На следующей ступеньке мы научим наш мостик и ворота встречать весёлого колобка
Создайте полигональную сферу 2 на 2 клетки, используя инструменты привязки – это и будет прототип нашего героя


У
величь его масштаб и приподними на высоту мостика


Установи зависимость угла вращения от перемещения колобка создав Expression
kolobok.rotateX = 360 * kolobok.translateZ / (3.14 * kolobok.scaleZ)



Теперь при перемещении по оси Z наш объект – колобок будет вращаться вокруг оси X




Далее создай Expression для моста, установив его на атрибуте BridgeLeftS


if (kolobok.translateZ < 70)

BridgeLeft.BridgeLeftS = 1.8 - (kolobok.translateZ - Ark.translateZ) * 0.025;

else

B
ridgeLeft.BridgeLeftS = 0;


и для ворот, атрибут Left Sash Gate
if(kolobok.translateZ < 70)

LeftSashGate.LeftSashGate = 1.8 - (kolobok.translateZ - Ark.translateZ) * 0.025;



else

L
eftSashGate.LeftSashGate = 0;



Т
еперь всё готово к приёму сказочного гостя

Достарыңызбен бөлісу:




©dereksiz.org 2024
әкімшілігінің қараңыз

    Басты бет