Создание P6-скелета в Roblox¶
P6 (P6-риг) — это тип скелетного рига персонажа в Roblox Studio, построенный по шестиступенчатой схеме костей (Root, Torso, Right Arm, Left Arm, Right Leg, Left Leg), который служит основой для анимаций и скелетной деформации моделей. Термин происходит от обозначения «P6» («Preset 6» или «6-part rig»), подразумевающего шесть основных частей тела, и является стандартом для классических персонажей Roblox наряду с более ранним R6 (шестиступенчатый блочный риг) и более новым R15 (пятнадцатиступенчатый). В отличие от R6, P6-риг подразумевает иерархию костей с суставами, что позволяет создавать плавные анимации с деформацией мешей.
¶Назначение и отличия от R6 и R15
В Roblox Studio существует два штатных режима скелета персонажа:
- R6 — классический шестиступенчатый риг из блочных частей (голов, торс, две руки, две ноги), где движение происходит жёсткими поворотами суставов без деформации геометрии;
- R15 — пятнадцатиступенчатый риг, разработанный для более естественных анимаций, с возможностью гибки конечностей.
P6 в сообществе разработчиков Roblox чаще всего обозначает гибридный или кастомный риг, построенный по шестиступенчатой схеме, но с костной иерархией (Bone-based rig), совместимой с технологией скелетной деформации (Skeleton Deformation) и ассетами Marketplace. Такой риг позволяет использовать преимущества простоты R6 при сохранении возможностей плавной деформации.
¶Подготовка к созданию
Перед началом работы необходимо:
- Установить Roblox Studio (последнюю версию с поддержкой Bone API);
- Открыть новый или существующий проект;
- Убедиться, что в настройках персонажа выбран нужный режим аватара (R6 или R15) — это влияет на совместимость анимаций;
- Подготовить модель персонажа (Character) в виде MeshPart или набора частей, которую предполагается риговать.
¶Пошаговое создание P6-риг
¶Шаг 1. Создание основы персонажа
В Explorer создаётся Model с именем персонажа. Внутри него размещаются шесть основных частей тела, названных по стандарту Roblox:
| Часть | Имя в Explorer |
|---|---|
| Корень | HumanoidRootPart |
| Голов | Head |
| Торс | Torso |
| Правая рука | Right Arm |
| Левая рука | Left Arm |
| Правая нога | Right Leg |
| Левая нога | Left Leg |
К каждой части добавляется компонент Humanoid (в корневую часть) и Motor6D-суставы, соединяющие части в правильной иерархии.
¶Шаг 2. Добавление костей (Bone)
С помощью инструмента Bone Tool (в панели инструментов Rig Builder или через меню) в каждую часть тела вставляется кость. Кости создаются в иерархии:
`` HumanoidRootPart └── RootBone ├── TorsoBone │ ├── RightArmBone │ ├── LeftArmBone │ └── HeadBone ├── RightLegBone └── LeftLegBone ``
Каждая кость привязывается к соответствующей MeshPart через свойство Bone.TransformedWorld или через SkeletonDeformer, который автоматически связывает кости с мешем.
¶Шаг 3. Настройка скелетной деформации
К Model персонажа добавляется компонент SkeletonDeformer. Он автоматически строит карту весов (weights) между костями и вершинами меша. Для корректной деформации необходимо:
- Распределить веса вершин вручную в режиме правки (если автоматическое распределение даёт артефакты);
- Убедиться, что веса соседних костей перекрываются (blend), чтобы суставы сгибались плавно;
- Проверить иерархию костей — каждая дочерняя кость должна быть наследником родительской.
¶Шаг 4. Создание анимации
Через Animation Editor (встроенное средство Roblox Studio) создаётся новый клип. В редакторе отображается P6-риг с возможностью вращать кости в суставах. Ключевые кадры задаются перемещением/поворотом костей, после чего анимация сохраняется в виде AnimationAsset с уникальным ID.
¶Шаг 5. Применение анимации
Анимация привязывается к персонажу через скрипт:
``lua local anim = Instance.new("Animation") anim.AnimationId = "rbxassetid://ВАШ_ID" local humanoid = character:WaitForChild("Humanoid") local animator = humanoid:FindFirstChildOfClass("Animator") or Instance.new("Animator", humanoid) local track = animator:LoadAnimation(anim) track:Play() ``
¶Типичные ошибки
- Несовпадение имён частей — Roblox требует точного соответствия стандартным именам (
Torso,Right Armи т. д.); - Отсутствие иерархии костей — если кости не вложены друг в друга, деформация не работает;
- Конфликт Motor6D и Bone — нельзя одновременно управлять одной частью и через сустав, и через кость;
- Неправильные веса — приводит к «разрыву» меша при анимации.
¶Альтернативные инструменты
Для создания P6-ригов помимо встроенного Rig Builder используются сторонние плагины:
- Blender с аддоном Roblox Rig Exporter — позволяет собрать скелет и экспортировать его в формат, поддерживаемый Roblox;
- Moon Animator — популярный плагин Roblox Studio для продвинутой анимации, поддерживающий костные риги;
- Animation Converter — утилиты для конвертации анимаций между R6, R15 и кастомными ригами.
¶Применение
P6-риги используются в жанрах, где важна плавная анимация при сохранении компактной структуры персонажа: ролевые игры, файтинги, шутеры с видом от третьего лица. Кастомные риги также применяются для NPC и неигровых существ, где стандартные R6/R15 не дают нужной выразительности.
Источники:
- Документация Roblox Creator Hub (create.roblox.com/docs)
- Roblox Developer Forum (devforum.roblox.com)
- Roblox Studio — руководство по Bone и SkeletonDeformer
