Maya. Глава 2: Необходимые основы моделирования или проламываем стенку. — различия между версиями
Материал из S.T.A.L.K.E.R. Inside Wiki
Boom1x (обсуждение | вклад) |
RedPython (обсуждение | вклад) м (Откачено к последнему изменению, сделанному RedPython) |
||
(не показаны 15 промежуточные версии 6 участников) | |||
Строка 1: | Строка 1: | ||
− | В этой статье я опишу как быстро (у меня создание этой сцены, вместе с рисованием текстуры заняло меньше 10 минут) сцену дома с проломом в стене, выглядящую примерно следующим образом: [[Изображение:Maya_tutor2_1.jpg|350px|center|thumb|Рисунок 1. Так будет выглядеть созданная нами сцена.]] | + | {{TOCright}}В этой статье я опишу как быстро (у меня создание этой сцены, вместе с рисованием текстуры заняло меньше 10 минут) сцену дома с проломом в стене, выглядящую примерно следующим образом: [[Изображение:Maya_tutor2_1.jpg|350px|center|thumb|Рисунок 1. Так будет выглядеть созданная нами сцена.]] |
+ | |||
+ | == Шаг 1. Настраиваем сцену. == | ||
+ | |||
+ | О [[Maya. Глава 1: Hello World или первый кубик.#Шаг 2. Настраиваем сцену.|настройках котрые я упоминал в предидущей главе]] повторяться не буду, сразу перейду к тем, котрые мы ещё не рассматривали. | ||
+ | |||
+ | Для удобства работы настроим сетку и привязку к ней: | ||
+ | |||
+ | === Настраиваем сетку === | ||
+ | |||
+ | Включить сетку можно поставив галочку в меню '''Display -> Grid''' | ||
+ | [[Изображение:Maya_tutor2_3.jpg|180px|center|thumb|Рисунок 2. Включаем сетку.]] | ||
+ | |||
+ | В том же меню, нажав на расширенные настройки мы можем настроить её:[[Изображение:Maya_tutor2_4.jpg|174px|center|thumb|Рисунок 3. Заходим в настройку.]] | ||
+ | |||
+ | Я, для удобства, сделал это следующим образом:[[Изображение:Maya_tutor2_2.jpg|400px|center|thumb|Рисунок 4. Настраиваем сетку.]] | ||
+ | |||
+ | === Включаем привязку к сетке === | ||
+ | |||
+ | Для того, чтобы включить привязку к сетке нужно нажать на следующий значок, на понели инструментов:[[Изображение:Maya_tutor_014.jpg|145px|center|thumb|Рисунок 5. Включаем привязку.]] | ||
+ | |||
+ | == Шаг 2. Моделируем сцену == | ||
+ | |||
+ | === Создаём полигон === | ||
+ | |||
+ | # Создаём объект '''Plane''' (меню '''Create -> Polygon Primitives -> Кубик рядом с Plane'''), с параметрами: | ||
+ | #* '''Width''': 8 | ||
+ | #* '''Height''': 8[[Изображение:Maya_tutor2_5.jpg|250px|center|thumb|Рисунок 6. Создаём объект Plane.]] | ||
+ | # Помещаем объект на сцену | ||
+ | # Теперь нам необходимо изменить координаты центра объекта на (0,0,0), для этого в '''Channel Box''' установите (не снимая выделения с объекта) значения свойств '''Translate X,Y,Z''' в 0. Как попасть в Channel Box изображено на рисунке ниже[[Изображение:Maya_tutor2_6.jpg|200px|center|thumb|Рисунок 7. Устанавливаем объект в положение (0,0,0).]] | ||
+ | |||
+ | Всё площадка готова к тому, чтобы мы её превратили в желаемый объект. Но сначала немного теории: | ||
+ | |||
+ | === Немножко теории === | ||
+ | |||
+ | # Теоретически можно выделить три метода построения полигональных моделей, которые могут применяться как в чистом виде, так и в разнообразных комбинациях. Модель может строиться: | ||
+ | #* вытягиванием из одного-единственного исходного полигона, при этом каждый новый полигон вытягивается из предыдущего и, в ряде случаев, сваривается с каким-то соседним полигоном через вершины; | ||
+ | #* на основе полигональных примитивов, когда берется примитив (куб, сфера и т.п.), а затем из него вытягиваются те или иные подобъекты и при необходимости делятся отдельные грани. Данный метод пользуется наибольшей популярностью; | ||
+ | #* модель создается с нуля, а входящие в нее полигоны не вытягиваются, а рисуются вручную. | ||
+ | #Для создания и редактирования полигональных моделей предназначены командные меню '''Polygons''' и '''Edit Polygons''', содержащие очень большое количество команд. Однако самыми важными в полигональном моделировании являются команды: | ||
+ | #* '''Split Polygon Tool''' (Разбить полигон) из меню '''Edit Polygons''' — приводит к разбиению каждой грани на несколько новых граней, что реализуется путем создания новых ребер; | ||
+ | #* '''Extrude Face/Extrude Edge/Extrude Vertex''' (Выдавить грань/Выдавить ребро/Выдавить вершину) из меню '''Edit Polygons''' — обеспечивает перемещение выделенных граней, ребер и вершин и изменение в итоге формы модели; | ||
+ | #* '''Smooth''' (Сгладить) из меню '''Polygons''' — увеличивает детализацию объекта благодаря переразбиению на большее число граней; может выполняться как для всего объекта в целом, так и для его отдельных подобъектов. | ||
+ | #Чтобы результат моделирования оказался удачным, стоит придерживаться следующих правил: | ||
+ | #* многие модели симметричны, поэтому, как правило, создается лишь одна их половина, а затем генерируется ее зеркальная копия (команда '''Polygons -> Mirror Geometry''' — Полигоны -> Зеркальная геометрия), по окончании обе половинки модели сшиваются, например путем булева объединения, а затем полученная модель сглаживается; | ||
+ | #* модели не должны иметь в своем составе лишних подобъектов, которые не нужны для формирования задуманной поверхности, — это лишь усложняет модель и может стать причиной неправильного выполнения тех или иных операций. Поэтому от лишних подобъектов нужно сразу же избавляться — например для уничтожения лишних вершин достаточно переключиться в режим редактирования вершин и удалить ненужные; | ||
+ | #* нередко воспользоваться нужным инструментом не получается, например при попытке создания новой грани не удается провести новое ребро от ребра A к ребру B. Причиной возникновения таких ситуаций является невозможность выполнения операции в данном конкретном случае, так как происходит нарушение существующей полигональной системы плоскостей. Можно попытаться провести ту же операцию, но в обратном порядке, то есть соединить ребро B с ребром A, иначе придется придумывать какое-то иное решение; | ||
+ | #* операция сглаживания ('''Smooth''') существенно увеличивает количество полигонов модели, поэтому не стоит злоупотреблять ею — в противном случае модель может стать слишком сложной: из-за большого числа полигонов с ней трудно будет работать, время визуализации сильно вырастет, а недостаточно мощный компьютер может при ее обработке зависать. | ||
+ | |||
+ | === Обрабатываем полигон === | ||
+ | |||
+ | И так, тяжело в учении легко в бою, приступим. | ||
+ | # Включаем вид сверху, для этого на компасе нажимаем на указатель с надписью Y: [[Изображение:Maya_tutor2_7.jpg|71px|center|thumb|Рисунок 7. Переключаемся на вид сверху.]] | ||
+ | # В меню выбираем настройки инструмента '''Split Polygon Tool (разделение полигона)''' ('''Edit Mesh -> Квадратик рядом с Split Polygon Tool'''), для того чтобы включить привязку у этого инструмента к сетке, настраиваем как у меня: [[Изображение:Maya_tutor2_8.jpg|250px|center|thumb|Рисунок 8. Включаем привязку к сетке у инструмента Split Polygon Tool.]] | ||
+ | # Теперь для того, чтобы поделить наш полигон на две части нам нужно кликнуть на теместа края полигона, где будет начинаться и заканчиваться разделительная линия. Затем нажать '''Enter''': [[Изображение:Maya_tutor2_9.jpg|250px|center|thumb|Рисунок 9. Режим наш полигон.]] | ||
+ | # Такимже образом нарезаем наш полигон в следующую заготовку: [[Изображение:Maya_tutor2_10.jpg|350px|center|thumb|Рисунок 10. Готовая заготовка.]] | ||
+ | |||
+ | === Вытягиваем стены из полигона === | ||
+ | |||
+ | Всё теперь вид переключаем на перспективу (жмём кубик на компасе) и переключаемся в режим редактирования фэйсов (для тех, кто забыл первый урок: жмём правой кнопкой на объекте в раскрывшемся списке выбираем '''Face'''). | ||
+ | # Выделям фэйсы как у меня: [[Изображение:Maya_tutor2_11.jpg|250px|center|thumb|Рисунок 11. Выделяем вытягиваемые полигоны.]] | ||
+ | # Жмём в меню '''Edit Mesh -> Extrude (вытягивание)''' (не снимая выделения с фэйсов) | ||
+ | # Открываем '''Attribute Editor''' | ||
+ | # Указываем в параметре '''Translate (Y)''' значение '''2''', это должно вытянуть выделенные нами полигоны на 2 метра вверх: [[Изображение:Maya_tutor2_12.jpg|600px|center|thumb|Рисунок 12. Вытягиваем стены из полигона.]] | ||
+ | |||
+ | Всё, стены для того чтобы их проламывать готовы. | ||
+ | |||
+ | === Делаем пробоину === | ||
+ | |||
''В процессе, пишу..'' | ''В процессе, пишу..'' | ||
+ | |||
+ | [[Категория:Wireframe]] |
Текущая версия на 18:30, 13 января 2011
Шаг 1. Настраиваем сцену.
О настройках котрые я упоминал в предидущей главе повторяться не буду, сразу перейду к тем, котрые мы ещё не рассматривали.
Для удобства работы настроим сетку и привязку к ней:
Настраиваем сетку
Включить сетку можно поставив галочку в меню Display -> Grid
В том же меню, нажав на расширенные настройки мы можем настроить её: Я, для удобства, сделал это следующим образом:Включаем привязку к сетке
Для того, чтобы включить привязку к сетке нужно нажать на следующий значок, на понели инструментов:Шаг 2. Моделируем сцену
Создаём полигон
- Создаём объект Plane (меню Create -> Polygon Primitives -> Кубик рядом с Plane), с параметрами:
- Width: 8
- Height: 8
- Помещаем объект на сцену
- Теперь нам необходимо изменить координаты центра объекта на (0,0,0), для этого в Channel Box установите (не снимая выделения с объекта) значения свойств Translate X,Y,Z в 0. Как попасть в Channel Box изображено на рисунке ниже
Всё площадка готова к тому, чтобы мы её превратили в желаемый объект. Но сначала немного теории:
Немножко теории
- Теоретически можно выделить три метода построения полигональных моделей, которые могут применяться как в чистом виде, так и в разнообразных комбинациях. Модель может строиться:
- вытягиванием из одного-единственного исходного полигона, при этом каждый новый полигон вытягивается из предыдущего и, в ряде случаев, сваривается с каким-то соседним полигоном через вершины;
- на основе полигональных примитивов, когда берется примитив (куб, сфера и т.п.), а затем из него вытягиваются те или иные подобъекты и при необходимости делятся отдельные грани. Данный метод пользуется наибольшей популярностью;
- модель создается с нуля, а входящие в нее полигоны не вытягиваются, а рисуются вручную.
- Для создания и редактирования полигональных моделей предназначены командные меню Polygons и Edit Polygons, содержащие очень большое количество команд. Однако самыми важными в полигональном моделировании являются команды:
- Split Polygon Tool (Разбить полигон) из меню Edit Polygons — приводит к разбиению каждой грани на несколько новых граней, что реализуется путем создания новых ребер;
- Extrude Face/Extrude Edge/Extrude Vertex (Выдавить грань/Выдавить ребро/Выдавить вершину) из меню Edit Polygons — обеспечивает перемещение выделенных граней, ребер и вершин и изменение в итоге формы модели;
- Smooth (Сгладить) из меню Polygons — увеличивает детализацию объекта благодаря переразбиению на большее число граней; может выполняться как для всего объекта в целом, так и для его отдельных подобъектов.
- Чтобы результат моделирования оказался удачным, стоит придерживаться следующих правил:
- многие модели симметричны, поэтому, как правило, создается лишь одна их половина, а затем генерируется ее зеркальная копия (команда Polygons -> Mirror Geometry — Полигоны -> Зеркальная геометрия), по окончании обе половинки модели сшиваются, например путем булева объединения, а затем полученная модель сглаживается;
- модели не должны иметь в своем составе лишних подобъектов, которые не нужны для формирования задуманной поверхности, — это лишь усложняет модель и может стать причиной неправильного выполнения тех или иных операций. Поэтому от лишних подобъектов нужно сразу же избавляться — например для уничтожения лишних вершин достаточно переключиться в режим редактирования вершин и удалить ненужные;
- нередко воспользоваться нужным инструментом не получается, например при попытке создания новой грани не удается провести новое ребро от ребра A к ребру B. Причиной возникновения таких ситуаций является невозможность выполнения операции в данном конкретном случае, так как происходит нарушение существующей полигональной системы плоскостей. Можно попытаться провести ту же операцию, но в обратном порядке, то есть соединить ребро B с ребром A, иначе придется придумывать какое-то иное решение;
- операция сглаживания (Smooth) существенно увеличивает количество полигонов модели, поэтому не стоит злоупотреблять ею — в противном случае модель может стать слишком сложной: из-за большого числа полигонов с ней трудно будет работать, время визуализации сильно вырастет, а недостаточно мощный компьютер может при ее обработке зависать.
Обрабатываем полигон
И так, тяжело в учении легко в бою, приступим.
- Включаем вид сверху, для этого на компасе нажимаем на указатель с надписью Y:
- В меню выбираем настройки инструмента Split Polygon Tool (разделение полигона) (Edit Mesh -> Квадратик рядом с Split Polygon Tool), для того чтобы включить привязку у этого инструмента к сетке, настраиваем как у меня:
- Теперь для того, чтобы поделить наш полигон на две части нам нужно кликнуть на теместа края полигона, где будет начинаться и заканчиваться разделительная линия. Затем нажать Enter:
- Такимже образом нарезаем наш полигон в следующую заготовку:
Вытягиваем стены из полигона
Всё теперь вид переключаем на перспективу (жмём кубик на компасе) и переключаемся в режим редактирования фэйсов (для тех, кто забыл первый урок: жмём правой кнопкой на объекте в раскрывшемся списке выбираем Face).
- Выделям фэйсы как у меня:
- Жмём в меню Edit Mesh -> Extrude (вытягивание) (не снимая выделения с фэйсов)
- Открываем Attribute Editor
- Указываем в параметре Translate (Y) значение 2, это должно вытянуть выделенные нами полигоны на 2 метра вверх:
Всё, стены для того чтобы их проламывать готовы.
Делаем пробоину
В процессе, пишу..