Найти тему

Риггинг 2D-персонажа в Blender.

Оглавление

Оригинальная статья изначально была размещена на сайте: https://blender3d.com.ua/rigging-2d-personazha-v-blender/

Я решил переделать её под версию Blender 3.0.1, так что если у вас установлена версия Blender 2.79 и ниже, перейдите по ссылке и прочтите оригинальную статью.

В этом уроке вы узнаете, как создать анимацию 2D-персонажа для вашего видеоролика. Урок достаточно простой и поможет понять некоторые фундаментальные принципы при работе с арматурой в Blender.

Создание персонажа

В любом графическом редакторе создайте персонажа состоящего из отдельных элементов (руки, ноги, голова…) и расположите каждый элемент на отдельном слое.

Расположите все элементы отдельно друг от друга так, чтобы они не пересекались. Отключите фон и сохраните итоговое изображение в формате .PNG (с альфа-каналом).

-2

Перейдите в Blender и удалите все лишнее.

-3

Перейдите на вид спереди (NumPad 1), ортогональный режим (NumPad 5) и загрузите созданное вами изображение в качестве фона.

-4

Увеличьте прозрачность до 1.

-5

Добавьте в сцену плоскость.

-6

На панели инструментов (N) отметьте пункт Align to View, чтобы выровнять плоскость в соответствии с текущим видом камеры.

-7

Перейдите в режим редактирования (Tab) и режим Wireframe (Z), чтобы видеть происходящее позади меша.

-8

Выделите все вершины, переместите их в область руки и подымите верхние вершины в соответствии с ее высотой.

-9

Добавьте разрез (loop cut) по центру плоскости (Ctrl + R).

-10

Продолжайте добавлять разрезы для плоскости. Создавайте их в тех местах, где рука персонажа должна изгибаться, для более плавной деформации меша.

-11

Добавьте модификатор Subdivision surface.

-12

Включите отображение результата работы модификатора в режиме редактирования.

-13

Скоректируйте расположение вершин, чтобы лучше соответствовать форме руки.

-14

Так как обе руки у нас идентичны, продублируйте данную плоскость на вторую руку (Shift + D).

Если нужно провести коррекцию вершин — выполните это.

-15

Для ноги создайте новую плоскость. Делайте это в режиме редактирования, чтобы все части были одним объектом.

-16

Как и с предыдущей плоскостью, выровняйте ее в соответствии с нашим текущим видом.

-17

Повторить форму ноги можно таким же способом, как мы делали это с рукой или же при помощи экструдирования (E) и масштабирования (S).

-18

Снова новая плоскость и снова выравниваем ее к виду. Повторяем форму торса персонажа.

-19

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

-20

Фоновое изображение можно удалить.

-21

Дайте название нашему объекту Character.

-22

Текстурирование персонажа

Разделите окно 3D-вида на две части и в одной из них откройте редактор UV.

-23

Загрузите в редактор изображение персонажа и увеличьте развертку, чтобы соответствовать ему.

-24

Выполните развертку меша (U — Project From View), раскройте всплывшее окно в левом нижнем углу и включите Scale to Bounds.

-25

Создайте новый материал.

-26

Добавьте Image Texture загрузите в неё изображение персонажа.

-27

Настройте материал как на картинке.

-28
-29

Перейдите в режим рендера.

-30

Если у вас возникла проблема показанная ниже.

-31

настройте модификатор Subdivision surface как на изображении

-32

Перегруппировка меша персонажа

Соберите из имеющихся частей персонажа (если нужно дублируйте нужные части Shift + D).

-33

Центр нашего объекта находиться в центре оси координат. Выделите все вершины и расположите персонажа так, чтобы его центр располагался внизу.

-34

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

-35

Выйдите из режима редактирования (Tab) и сохранитесь.

Настройка арматуры и риггинг

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

-36

Добавьте в сцену арматуру.

-37

Отметьте пункт In Front, чтобы видеть кости сквозь меш.

-38

Выберите арматуру и перейдите в режим редактирования (Tab) и расположите кость, как показано на рисунке.

-39

При помощи экструдирования создайте следующую связку костей (две для торса и одна для головы).

-40

Также создайте одну кость в обратном направления для управления тазом персонажа.

-41

Расположите 3D-курсор(Shift+ правая кнопка мыши) в том месте, где начинается нога персонажа и добавьте новую кость (Shift + A). Из нее продолжайте эксрудировать кости для ноги.

-42

Продублируйте кости одной ноги на другую

-43

Так же как и для ног, создайте кости для рук персонажа.

-44
-45

Дайте осмысленные имена всем костям персонажа. Для правой и левой части используйте суффиксы .L и .R.

-46

Создайте связь родитель-потомок между руками персонажа и грудью (chest). Благодаря этому руки всегда будут следовать за корпусом (как и должно быть).

Сначала надо выбрать кости которые будут «потомками», после чего выберите родителя и нажмите Комбинацию клавиш Ctrl + P и выберите Keep Offset

-47

Выйдите из режима редактирования, выделите персонажа, затем с зажатой клавишей Shift арматуру, нажмите Ctrl + P и выберите пункт With Empty Groups. Этим мы создали связь между арматурой и объектом и создали необходимое количество групп вершин с соответствующими именами. Назначать веса для них мы будет в ручном режиме.

-48

Перейдите в режим редактирования, выделите все вершины имеющие отношение к голове персонажа, выделите группу вершин с соответствующим названием (Head) и назначьте данные вершины выделенной группе.

-49

После назначения вершин группе можете проверить корректность работы перейдя в режим позирования (Pose Mode) и вращая кость Head.

-50

Далее продолжаем процедуру назначение вершин группам до тех пор, пока все вершины не будут задействованы. После того как закончите со всеми группами, снова перейдите в режим Pose Mode и проверьте работу скелета.

Alt + G или Alt + R для отмены изменений

-51

Следующим шагом создадим инверсную кинематику. Выделите вершину кости голени и переместите в это место курсор (Shift + S — Cursor to Selected).

-52

Добавьте новую кость в месте 3D-курсора и опустите ее вниз.

-53

Назовите ее leg_ik.l.

Перейдите в режим позирования.

Выделите кость голени и добавьте ограничитель Inverse Kinematics.

-54

Укажите в качестве целевой кости кость leg_ik.l и увеличьте длину цепи до 2.

-55

В режиме позирования выделите кость leg_ik.l и проверьте результат работы перемещая ее.

-56

Тоже самое проделайте и для второй ноги и рук.

-57

Так-же у вас может возникнуть такая проблема.

-58

Чтобы это решить создайте две кости на месте колен и назовите их knee_ik.l и knee_ik.R соответственно, после чего настройте Inverse Kinematics на голени как на фотографии.

-59
-60

Тоже самое проделайте рук.

-61

Создание текстурной карты

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

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

Несмотря на то, что сама текстура квадратная, эмоции глаз и рта могут быть любой формы. Эмоции рта можете отсортировать по группам: улыбка, смех, плач и т.д.

-62

Объекты лица и настройка текстуры

Перейдите в режим редактирования и на вид спереди.

Добавьте плоскость и выровняйте ее в соответствии с нашим видом.

Расположите новую плоскость перед лицом персонажа.

Так как для нашего объекта назначен модификатор Subdivision Surface, квадратная плоскость принимает форму круга. Чтобы исправить это выделите все ее грани, нажмите Shift + E и установите значение Mean Crease равное 1. Благодаря этому модификатор не будет изменять форму данной части меша. Также измените форму в соответствии с пропорциями рта.

-63

Продублируйте объект, чтобы создать отдельную часть для глаз. Также измените ее форму.

-64

Разделите окно на две части и в одной из них откройте редактор UV.

Выполните развертку лишь двух новых частей объекта (рта и глаз).

-65

Загрузите в редактор текстуру эмоций персонажа.

Уменьшите размер развертки рта до размеров первой эмоции. Это будет эмоция по умолчанию.

Также и для глаз.

-66

Настройка материала для глаз и рта

Добавьте второй слот материала для объекта.

-67

Переименуйте материал и установите для него настройки приведённые ранее.

Выберите глаза и рот и сделайте следующие.

-68

Установка связи с костью

Выделите вершины рта и глаз и назначьте их группе Head, чтобы они также следовали за головой.

Проверьте это в режиме позирования.

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

Перейдите в режим редактирования, создайте новую группу вершин Eyes и назначьте ей соответствующие вершины.

-69

Затем тоже самое для рта.

Перейдите в настройки программы и активируйте дополнение Import Images as Planes.

-70

Импортируйте текстуру с эмоциями с помощью данного аддона.

-71

Перейдите на вид спереди, выделите только что добавленную плоскость и в режиме редактирования поверните ее на 90° по оси X.

Продублируйте одну из вершин плоскости и расположите ее в центре первой эмоции (проще всего это делать с привязкой к сетке).

Проделайте тоже самое со всеми остальными эмоциями.

-72

Выделите одну из вершин и переместите к ней курсор (Shift + S — Cursor to Selected).

Добавьте новую арматуру.

Выделите вершину кости и уменьшите ее, как показано на рисунке.

-73

Добавьте в то же месте еще одну кость и сделайте ее вдвое больше предыдущей. Перейдите в режим Wireframe, чтобы лучше видеть кости.

-74

Продублируйте обе кости и переместите их к вершине первой эмоции глаз. Для точности позиционирования также воспользуйтесь привязкой.

-75

Добавьте 5-ю кость рядом с текстурой. Это будет родительская кость.

-76

Выделите указанную кость и назовите ее mouth-base.

-77

Выделите указанную кость и назовите ее Mouth-Control.

-78

И тоже самое для костей глаз. 5-ю кость назовите main.

-79

Выделите по очереди все кости и в последнюю очередь кость main. Привяжите их сочетанием клавиш Ctrl + P — Keep Offset.

-80

В объектном режиме переименуйте арматуру в Armature-Face.

-81

Перейдите в режим позирования. Выделите плоскость, затем кость main и свяжите их Ctrl + P — Bone.

-82

Настройка управляющей кости с помощью модификатора UV Warp

Выделите персонажа и добавьте модификатор UV Warp.

-83

Установите настройки, как показано на изображении. При перемещении кости Mouth Control, текстурная карта также будет перемещаться и деформироваться и это будет влиять лишь на вершины из группы Mouth.

-84
-85

Когда вы будете перемещать кость mouth-control вы увидите что текстура также смещается.

Библиотека поз

Сбросьте положение и вращение всех костей выделив их и нажав по очереди Alt + R и Alt + G.

На вкладке арматуры создайте новую библиотеку поз.

-86

Выделите кость mouth-controller и добавьте новую позу.

-87

Назовите ее Smile.

Переместите кость на вторую эмоцию и создайте новую позу (Shift + L — Add New).

-88

Назовите ее Sad.

И так далее пока не создадите позы для всех эмоций (включая эмоции глаз).

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

-89

На этом урок окончен! Надеюсь он вам понравился.

cgtrader: https://www.cgtrader.com/paisen9
renderhub:
https://www.renderhub.com/raisen/gallery
sketchfab:
https://sketchfab.com/Raisen9
3dexport:
https://ru.3dexport.com/raisen
3docean:
https://3docean.net/user/raisen9


vk:
https://vk.com/public208853327?w=wall-208853327_8
instagram:
https://www.instagram.com/p/CUSy7csq5G5/
artstation:
https://www.artstation.com/paisen91
tumblr:
https://raisen9.tumblr.com/
pinterest:
https://www.pinterest.ru/vovamelshkin/_saved/
tiktok:
https://www.tiktok.com/@raisen_9?lang=ru-RU
#2d #Blender #animation #анимация #туториал #урок #Blender3D