Риггинг и позирование персонажа в Blender
Здравствуйте, уважаемые читатели портала 3D Today.
Я уже достаточно давно печатаю и крашу фигурки. Но не всегда можно найти подходящую. Надо двигаться дальше, и вот решил создать интересную фигурку уже не из готовой модели, а из того, что осталось, то есть из заготовок. А заодно и рассказать, как делать Rigging модели в Blender’е.
Риггинг – это процесс создания скелета у 3д модели, при помощи которого впоследствии создаются позы персонажа и анимация.
Также придётся столкнуться с таким понятием как «инверсная кинематика». Это мне напомнило обратную задачу кинематики в робототехнике (я робототехник). Если не вдаваться в научные объяснения в обратной кинематике по положению конечного звена определяются расположения всех остальных звеньев. Например, у нас есть ладонь и по положению ладони Blender автоматически сгибает запястье, локоть и плечо. Это удобно и одновременно позволяет делать позу более естественной.
Итак, что же мне досталось?
Магосы кузней Марса прислали мне СШК файлы из неведомых архивов с изображением ассасина храма Каллидус. Изображения были в формате OBJ были разъединены на отдельные плоскости и с кучей ошибок. Предположительно это модель для модификации какой-то игры из Вархаммера.
Масштаб также был микроскопический, модель была в позе «раскоряки», а лечение её в Netfabbe не давало результата. Поэтому пришлось лечить модели вручную каждую по отдельности, а потом соединять их булевыми операциями. Пистолет и оружие ближнего боя я оставил как отдельные модели. Сохранил модель как STL файл.
1) После этого я импортировал модель в Blender: File – import - .Stl . Перед началом работы важно так спозиционировать модель, чтобы её линия симметрии располагалась на центре координат (это важно).
2) Для того чтобы создать скелет нужно нажать Add (Shift + A) – Armature – single bone. Для того, чтобы наш скелет был виден сквозь предметы нужно поставить галочку X-Ray во вкладке Арматуры (рисунок человечка). Также стоит поставить галочку Names там же, чтобы видеть названия костей.
3) Появится маленькая кость в виде пирамидки. Ее можно крутить, масштабировать и перемещать, как и привычный объект в Блендере. В Edit Mode при Экструдировании (E) вытягивается ещё одна новая кость. Для создания кости не связанной с остальными работает комбинация Shift + A. Каждую кость нужно перемещать внутри тела так чтобы она была на своём месте. Это не значит, что у нас должно быть 33 позвонка, но в остальном нужно стараться придерживаться реальной анатомии, повторяя те кости, которые имеют суставы. Коса у нашей девушки тоже должна изгибаться под своим весом, поэтому в ней много костей. Чтобы было более удобно и быстро размещать кости лучше пользоваться ортогональными видами (клавиши Numpad ’а).
4) Таким образом, мы прописываем кости везде, где считаем нужным (кроме тех конечностей, которые симметричны).
5) Добавляем к каждой кости имя на вкладке с костями. Это лучше заранее сделать т.к. в скелете риггинга человека несколько десятков элементов, которые будут мешать своими непонятными именами. Симметричные кости нужно именовать по типу «имя».L, где L – обозначает левую кость. Это очень поможет, когда мы будем копировать элементы на правую сторону.
6) Теперь нужно добавить инверсную кинематику. Перейдём на вид сбоку и добавим как бы шпору и отдельную кость около колена.
Для того чтобы кость инверсной кинематики не была соединена ни с одной из костей скелета, выбираем в Edit Mode эту кость, затем Alt + P и Clear parent .
Для каждой из созданных костей заходим во вкладку костей и снимаем галочку с Deform. Теперь эти кости не будут деформировать нашу модель при движении.
7) Выберем кость Foot1.l зажмём Shift и добавим к ней LegIK.L, а затем Make parent (Ctrl + P) и пункт Keep offset. Теперь наша стопа крутиться, если покрутить LegIK.L
8) Для добавления инверсной кинематики в режиме Pose Mode выберем кость LegIK.L зажмём Shift и добавим к ней Leg.L, а затем выберем Add constraint (Ctrl + Shift + C) - Inverse Kinematics. Кость ноги при этом окрасится в желтоватый цвет.
9) Выберем жёлтую кость и зайдём во вкладку ограничений и настроим инверсную кинематику, установим Chain Length – 2, то есть наша кость инверсной кинематики будет увлекать за собой 2 кости. Также чтобы наша нога могла поворачиваться из стороны в сторону, сделаем ограничение Pole Target – Armature – Target . L. Попробуем согнуть нашу ногу за LegIK.L. Если нога сгибается неправильно, возможно, следует поиграться с параметром Pole Angle .
Сделаем таким же образом ещё и руку и косу.
10) Сделаем зеркальную копию нашей ноги. Для этого перейдём на вид спереди (клавиша 1) и заменим Центр вращения на 3д курсор и поместим сам курсор в начало координат зажав Shift + S и выбрав Cursor to center.
После чего в Edit Mode выберем все наши кости для копирования и нажмём следующую волшебную комбинацию: Shift+D , S , X , -1, Enter . Теперь наши кости продублировались, и чтобы написать им правильные имена не снимая выделения с них, зайдём в меню Armature – Flip Names.
11) После того как все кости созданы, соединим их между собой: Выберем кость бедра в Edit Mode затем, затем зажмём Shift и добавим Spine3, выполним операцию Make parent (Ctrl + P) – Keep offset
У вас всё правильно, если при сдвиге костей позвоночника ноги сами сдвигаются и картинка соединения похожа на такую:
12) Выберем в Object Mode наше тело, затем через Shift скелет и нажмём на Set parent to (Ctrl+P) - Armature Deform - With Automatic Weights. Теперь наша модель соединена со скелетом и при движении костей она будет деформироваться, но не всегда правильно.
13) Теперь выберем нашу модель и перейдём в режим Weight Painting, где начнём раскрашивать веса.
Вот так выглядит кость с автоматически проставленными весами. Как мы видим тут цветовая палитра от красного к синему. Красные части строго следуют за моделью, а на синие части влияние у кости отсутствует. При промежуточных цветах происходит деформация полигонов при движении.
Раскрашивать нашу модель следует так: красным - там где нет деформации при движении, например грудная клетка, а также всякие навесные элементы, как подсумки. ремешки, бляхи и пр. Промежуточными цветами нужно красить места сочленения костей, стараясь сделать переход как можно более плавным.
Есть кисточки, которыми мы будем раскрашивать нашу модель:
Две самые часто распространённые кисти это Mix и Blur. Первая кисть лучше подходит для покраски вершин в нужный цвет. Вторая кисть лучше всего подходит для растушёвывания цвета, т.е. для создания плавных переходов.
Параметр Weight – это сила закрашивания вершин, Для кисти Mix: 0 – синий цвет, 1 – красный. Radius – размер кисти, хотя я предпочитаю масштабировать саму модель, а не менять её размер. Strength – отвечает за силу применения эффекта кисти (я её не трогал при работе).
То, что я пометил стрелочкой - это и есть сама кисть, т.е. курсор превращается в такой вот кружочек.
Самая распространённая новичковая ошибка при распределении весов – это случайная покраска весом совершено не соответсвующей части тела. Поэтому если вдруг у вас при сгибании руки внезапно деформируется также пятно на животе – ищите в костях руки покрашенное пятно и убирайте его.
Как понять, что вы всё сделали правильно? Да очень просто (ирония)– нужно лишь проверить каждую кость, крутя её в Pose Mode и наблюдая, есть ли неестественная деформация. И справлять, исправлять, исправлять! Процесс не то чтобы сложный, но скорее муторный, если модель имеет много костей.
Поэтому запасаемся терпением и красим каждую кость.
И это ещё не всё! У нас также есть 2 оружия, которые существуют отдельно от нашей модели. Для того чтобы исправить это подведём их в те места, где они должны располагаться, а потом в Object mode выбираем наш предмет, и жмём Add constraint (Ctrl + Shift + C) - Child Of .
В этом ограничении стоит указать нужную кость: Target – Armature , Bone – Palm.L, т.к. крепится пистолет будет к кости ладони.
Если наш предмет внезапно пропал из виду, нужно нажать Set Inverse.
Теперь при движении наши предметы будут следовать за руками. Проделаем ту же операцию и с ножом.
Осталось только правильно расположить нашего персонажа, просто передвигая кости. Для того, чтобы поза получилась естественной, попрактикуйтесь перед зеркалом (это реально помогает прочувствовать, на сколько куда и что нужно повернуть).
Если Вы сделали что-то не так, то выделите в режиме Pose Mode нужные кости и выберите Pose - Clear Transform – All. Это вернёт их в первоначальное положение.
В получившейся позе я специально сделал 1 ногу выше другой, чтобы она опиралась на бортик подставки, которую я замоделил во Fusion 360.
Я опасался, что руки выйдут кривыми, но вот такие кулачки у меня получились, пока я загибал пальчики один за другим:
В конце получился вот такой вот пафосный ассасин, которого я конечно же буду печатать, красить и дорабатывать.
Долго не решался делать риггинг, ибо первые попытки были не сильно удачными, но я надеюсь, что эта статья покажет, что это не так сложно и не так страшно.
Еще больше интересных статей
Книга для конструкторов, проектирующих для FDM
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Хочу представить новую книгу по FDM 3D-печати. Книга может быть полез...
Поднимаем модель с изображения.
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Часто натыкаясь в объявлениях о просьбе замоделить что-то простое...
Доктор Ливси из Острова сокровищ
Подпишитесь на автора
Подпишитесь на автора, если вам нравятся его публикации. Тогда вы будете получать уведомления о его новых статьях.
Отписаться от уведомлений вы всегда сможете в профиле автора.
Как большой (заядлый) любитель мультфильма "Остров сокровищ", давно хо...
Комментарии и вопросы
абс уже печатал в этом ящике,....
к термостату подключу вентилят...
Стандартные настройки под пров...
печатал держатель катушки для...
Доброго времени суток.Вопрос н...
Здравствуйте, недавно приобрел...