Как сделать скелет в blender

Добавил пользователь Алексей Ф.
Обновлено: 04.10.2024

Создание хорошей арматуры (скелета) - важнейший шаг для перехода к непосредственному риггингу и последующему .

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

Расскажу как с помощью аддонов собрать скелет для персонажа. Быстрый способ риггинга в новой версии Blender.

Простой, но очень важный урок по риггингу лоу-поли (и не только) персонажа в Blender, а также пара слов об анимации.

В этой серии: Создание персонажа,скелет в Blender 3D,анимация,кости,анимация персонажа,как создать игру,канал .

В этом ролике разбираемся с костями и арматурами в Blender 2.8 путём создания и анимирования змеи. Коротко о .

Узнайте, как с нуля создать 3D раннер для Android на Unity! В этом видео мы сделаем риггинг и анимацию для персонажа в .

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

В этом уроке мы рассмотрим способ для создания скелета под UE4 epic skeleton с помощью Mixamo и блендера. Аддон .

Human Meta-Rig - это риг для персонажа с готовой инверсной кинематикой. Тут есть всё что необходимо для создания .

Разбираемся как настроить "скелет" вашему персонажу, затратив на это минимум времени! А еще расставим ключевые .

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

Простой способ создания базового меша для персонажа для дальнейшего скульптинга. Изучим модификатор Skin.

Многие просили уроки по анимации в Blender 2.8 - вот один из них. Мы разберемся в базовой анимации с dope sheet, .

Я уже давно обещал сделать видео про лицевой риггинг в Blender. Это первое видео на эту тему. Не забудьте подписаться .

В этом видео будет рассмотрен метод создания рига для промышленного робота в Blender и подготовка его к .

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

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

Создавать и редактировать кости может большинство программ, занимающихся комплексным созданием трехмерной графики. Примерами таких пакетов могут быть: пакеты компании Autodesk (3dsMax, Maya, Softimage), Houdini, Blender 3D, Cinema 4D, Lightwave3D и др.

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

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

Иерархия скелета персонажа

Родитель может иметь бесконечное множество детей, но у ребенка может быть только один родитель. В то же самое время, объект являющийся ребенком для одного родителя, может сам быть родителем для другого ребенка.

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

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

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

Скиннинг персонажа

Трехмерные модели строятся из составных частей: точки, ребра и полигоны. Т.е. любую трехмерную модель можно представить как объект, состоящий из набора точек, ребер или полигонов. Для связи трехмерной геометрии с костями используются именно точки. Понятие веса позволяет задать, как та или иная кость будет влиять на точки геометрии модели. Чем сильнее влияние кости на точку, тем сильнее точка будет следовать за костью при ее трансформации. Ну а чем слабее влияние кости на точку, тем меньше она будет зависеть от трансформации кости.

Вес кости задается в пределах от 0 до 1. 0 — это отсутствие влияние, а 1 — это максимальное влияние. Возможно так же и частичное влияние, например 0,3 или 0,65. Суммарный вес точки должен быть 1. Поэтому, если точка имеет вес 0,7 для одной кости, то оставшиеся 0,3 должны распределиться между другими костями или костью.

Такая система дает возможность создавать эффекты реалистичной деформации геометрии модели. Плавно назначенные веса создают красивые, а главное, реалистичные изгибы в районе суставов персонажа. Для удобства работы с весами их очень часто отображают в цветовой градации. Например, синий цвет — назначен весу со значением 0, а красный — 1. Тогда, например, вес — 0,5 будет отображаться оранжевым цветом. В каждом конкретном пакете эти цвета могут варьироваться.

Вес можно задавать различными способами. Его можно назначать каждой точке и кости вручную, используя таблицу весов, но это неудобно и долго. Хотя, иногда, только такой подход решает проблему точного назначения веса. Его можно задавать, используя ограничители (envelope) — некие виртуальные оболочки, позволяющие определить зону влияния кости. Это уже лучше, но еще не всегда удобно. Для многих самым удобным способом назначения и распределения веса является его рисование. В этом случае мы просто раскрашиваем вес точек модель кистью. Это дает возможность легко и быстро назначать вес и очень просто прорабатывать участки перехода веса (места, где вес распределяется между несколькими суставами).

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

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

Создание мышечной структуры персонажа

Наличие мышечной массы у персонажа можно и даже нужно подчеркивать самой геометрией, так как сама она не появится. Но ее наличие на геометрии еще не гарантирует ее реалистичной анимации. Поэтому, для этих целей используются специальные методы. Специалист по настройке скелета создает еще одну упрощенную геометрию, которая имитирует мышцы, находящиеся под кожей. После этого мышцам задается и настраивается их динамическое поведение. Только после этого они могут раскачиваться и колыхаться при движениях персонажа, так же, как это делает мышечная масса у живых существ.

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

После создания мышц модель наконец-то готова к заключительному этапу — ригингу.

Настройка управляющих элементов модели

Можно выделить несколько основных моментов при создании рига (ригинга) персонажа, которые обязательно имеют место быть. Это:

  • создание прямых/обратных кинематических связей (FK/IK) для конечностей персонажа;
  • создание управляющих объектов и установка их связей с персонажем;
  • создание средств управления лицевой мимикой персонажа;
  • написание дополнительных интерфейсов для удобства управления персонажем.

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

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

Создание кинематических связей для конечностей персонажа

Кинематические связи нужны для удобства управления конечностями персонажа. Они делятся на два типа:

  1. Прямая кинематическая связь.
  2. Обратная кинематическая связь.

Прямая кинематика (FK — Forward Kinematics) — это средство управления объектами, находящимися в иерархической связи, при которой управление идет от родительского объекта к дочернему.

Отличным примером работы прямой кинематики являются робо-подобные механизмы. Для персонажей прямая кинематика очень часто используется для настройки рук трехмерной модели.

Обратная кинематика (IK — Inverse Kinematics) — это средство управления объектами, находящимися в иерархической связи, при которой управление трансформацией всех объектов просчитывается решателем обратной кинематики (математическим алгоритмом).

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

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

Управляющие объекты — это чаще всего объекты, созданные с помощью кривых линий (splines/curves), которые не видны при визуализации (рендеринге), но позволяют легко и просто выделять себя. Так как такие объекты делают в будущем управляющими объектами для костей и суставов, к которым применена обратная кинематика, то двигая управляющие объекты, мы легко и просто можем двигать части модели, а значит так же легко и просто анимировать ее.

Процесс создания управляющих объектов прост. Это банальное рисование различных стрелочек и других форм, которые по логике будут ассоциироваться с тем, чем они управляют и какое действие выполняют. После того, как объект создан, он размещается в том месте, где должен быть. Например, объект двигающий таз, располагается в районе таза, управляющий объект кисти руки расположен там же, где находится кисть персонажа и т.п. В дальнейшем координаты трансформации управляющего объекта сбрасываются в ноль, для того, чтобы аниматор мог легко вернуть модель в стартовую позу, просто, обнулив координаты любого управляющего объекта. Самым интересным на данном этапе является использование ограничителей или констрейнов (от анг. constrain — ограничивать). Именно они и позволяют контрольным объектам быть управляющими объектами для костей и других систем, которые уже используются в персонаже.

Существует несколько типов ограничителей, но мы остановимся только на некоторых, которые являются часто используемыми.

  • положения — заставляют один объект наследовать координаты перемещения другого объекта;
  • ориентации — заставляют один объект наследовать координаты вращения другого объекта;
  • look at (смотреть на что-то) — заставляют один объект следить (смотреть) за перемещениями другого объекта.

После установки правильных констрейнов управляющие объекты полноценно становятся хозяевами персонажа и могут управлять любыми движениями его тела.

Одним из важных этапов при разработке трехмерной модели и анимации в будущем, является создание лицевой мимики персонажа. Так же как и у человека, мимика лица играет одну из главных ролей при создании реалистичной анимации для трехмерного персонажа. Мимика привносит такие мелкие и на первый взгляд незаметные нюансы, которые заставляют анимацию быть живой.

Создание лицевой мимики трехмерного персонажа

Для создания лицевой анимации есть два основных способа. Первый — это использование костей. Он ни чем принципиально не отличается от всего того, о чем было сказано выше. А вот второй способ иной — это использование морфоцелей или блендшейпов.

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

В будущем все эти головы прячутся и поэтому не мешают аниматору в его работе. У каждого пакета для создания трехмерной анимации обязательно есть инструменты, которые позволяют связать финальную голову персонажа с огромным количеством копий и дать возможность, используя удобную систему бегунков и переключателей, анимировать переход лица из одного состояния в другое. Главное требования при использовании технологии морфинга — это использование одного и того же объекта для создания морфоцелей, чтобы количество точек геометрии не отличалось. Т.е. обычно вся работа происходит с одной головой одного персонажа. Нельзя использовать голову одного персонажа для создания морфоцелей для другого персонажа.

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

Создание дополнительных интерфейсов для удобства управления персонажем

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

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

Расскажите о своем проекте:

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

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

В данном уроке мы установим популярную программу для создания простых много и мало полигональных человечков MakeHuman 1.2.0.

Данная версия программы хорошо совместима с Blender выше 2.8x , хотя пойдет и на Blender 2.79 .

Создадим человечка. Оденем его. Посмотрим как загружать новую одежду в MakeHuman 1.2.0 .

Посмотрим как менять количество полигонов в человечке в MakeHuman 1.2.0 ( самого человечка одежды это не касается, у нее свои полигоны ) .

Затем создадим скелет, установим в нужную позу и загрузим в 3D редактор Blender (в уроке версия 2.9.3)

Загрузим bvh анимацию хождения человечка на месте.

Посмотрим где можно отредактировать анимацию скелета.

Подготовим человечка для экспорта в 2D и в 3D игру.

2D Игра : Анимация в формате изображений, сменяющихся друг за другом картинок в определенном направлении. Влево и вправо, вверх и вниз. Создание подобных картинок часто называют рендерингом (визуализацией).

3D Игра: Формат в виде 3D модели. Используется вместе с игровыми движками и отображается с помощью специальных библиотек (OpenGL и др.).

Я уже писал про инструментарий для Motion Capture в Blender. Сегодня хочу продолжить эту тему рассказом про простые способы создания модели человека в Blender. Впрочем, эти способы пригодятся далеко не только для Motion Capture. Полученная модель будет с готовым для анимации ригом, и даже с набором готовых анимаций.

Создание модели человека с ригом для последующей работы в Blender 2.8

Варианты создания модели человека с ригом в Blender

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

Ручное моделирование человека в Blender

Blender 2.8 Rigify

Использование программы MakeHuman

MakeHuman — это свободное ПО для создания модели человека. Когда-то все начиналось с аддона к Blender, но сегодня это самостоятельная программа. Интерфейс достаточно удобный, но до удобства нижеописанного Fuse ему далеко конечно. Модель человека на выходе получается довольно качественной, есть возможность выбрать между несколькими вариантами топологии меша, а также между несколькими вариантами рига (более простого для игровых движков и более детального для продвинутой анимации). Здесь также имеются некоторые приятные дополнения, например — неплохая библиотека поз.

Но… Дальше все упирается в создание одежды для персонажа. В комплекте по умолчанию идет несколько одежек, но они больше подходят для демонстрации возможностей, чем для реального использования. Есть еще правда библиотека одежды, созданной в свободном комьюнити, но это какой-то треш и позор, даже говорить не о чем. Можно создавать одежду для моделей в Blender, а затем импортировать ее обратно в MakeHuman, для этих целей даже создали специальные аддоны для Blender. И снова но… Это дикая боль. Мало того, что процесс моделирования и текстурирования одежды сам по себе — довольно трудоемкая операция, так еще и работа с упомянутыми аддонами далека от идеала удобства и интуитивной понятности. Даже если вы купите или найдете бесплатные готовые модели одежды, натянуть их на модель человека в MakeHuman — тот еще квест. Кстати, ровно та же беда с прическами. Короче, быстро сделать качественную готовую модель здесь не получится (если вы конечно не работаете над очередным изданием Камасутры, для которой одежда не нужна).

Использование аддона MB-Lab для Blender

Модель человека в Blender при помощи аддона MB-Lab

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

Быстрое создание модели человека в Adobe Fuse и последующий экспорт в Blender

Adobe Fuse — это программа для быстрого создания качественных моделей людей с возможностью их последующей анимации. Как и все продукты от Adobe, эта программа имеет версии под Windows и MacOS, но не под Linux. Но при этом имеется бесплатная Steam-версия, которая замечательно работает посредством Proton-а. Думаю, та же версия будет работать и через обычный Wine.

Если не боитесь английского, то вот хороший ролик с подробностями о том, как провернуть всю эту последовательность (в ролике используется Blender 2.79, однако для Blender 2.8 отличий практически нет):

Но здесь есть обходной путь. Нужно сохранить вручную obj-файл из стимовской версии Fuse, и этот obj загрузить вручную на Mixamo. После этого там предложат обозначить ключевые точки модели (локти, колени, таз и т.п.), и автоматически создадут скелет. Результат довольно качественный, проверено на собственном опыте. То есть способ вполне рабочий.

Читайте также: