Скиннинг меша персонажей для анимации игр
Скиннинг — то место, где риг из технической схемы превращается в работающий инструмент анимации. Можно собрать отличную иерархию костей и получить неприемлемый результат на этапе деформации: лоскуты ткани на плечах, перекрученные запястья, складки на животе при наклоне. Всё это — проблемы weight painting, и правятся они вручную.
Где ломается автоматический скиннинг
Automatic Weights в Blender — удобный старт, но не финальный результат. Алгоритм работает через Heat Diffusion: каждая кость «прогревает» ближайшие вершины пропорционально расстоянию. На открытых участках меша это работает приемлемо. Проблемы начинаются в четырёх зонах:
Подмышка. Вершины плеча и торса геометрически близки к обеим костям — плечевой и позвоночнику. Автовеса размазываются на три-четыре кости, и при подъёме руки выше 90° ткань под подмышкой деформируется нечитаемо. Правится через чистый вес плечевой кости в зоне дельты и нулевые веса позвоночника на внешней части плеча.
Запястье при пронации/супинации. Если в риге нет отдельной Twist-кости предплечья, вращение кисти передаётся напрямую на Forearm-кость — и mesh «скручивается» как тряпка. Решение: добавить промежуточную Forearm_Twist кость с весом 0.5 на средней части предплечья, распределив деформацию по длине конечности.
Коленный сустав. Автовеса дают слишком мягкий переход между бедром и голенью, и колено при сгибании «пережимается». Нужно вручную ограничить зону влияния каждой кости до примерно 40% длины сегмента, а не 60%, которые выдаёт Automatic Weights.
Пальцы. На кистях с детальным мешем (>500 вершин на руку) автовеса обязательно дают cross-contamination — вес одного пальца затрагивает соседний. При анимации захвата пальцы слипаются. Только ручная правка с Vertex Group Isolation.
Weight Painting в Blender: не кисть, а хирургия
Практический workflow: после Automatic Weights — pose mode, сгибаем каждый сустав на 90°, смотрим на деформацию. Фиксируем проблемы. Возвращаемся в weight paint mode.
Ключевые настройки кисти, которые меняют всё: Blur для сглаживания краёв зоны влияния, Gradient для линейного распределения вдоль кости (лучше автовесов в большинстве случаев), Subtract для точного удаления случайных весов. Максимальное количество костей на вершину в Unity — 4 (стандарт) или 8 (расширенный режим, более дорогой на GPU). Blender по умолчанию не ограничивает — нужно явно нормализовать через Limit Total с Max Influences = 4.
В Maya workflow другой: Smooth Skin Binding с опцией Closest in Hierarchy даёт чище начальный результат для humanoid. Paint Skin Weights Tool с Flood по 0 для очистки, потом ручное добавление. Hammering — быстрая правка через Component Editor с прямым вводом значений. Удобно для точечной правки вершин в суставах.
Нормализация и Export
Финальный шаг перед экспортом: все веса нормализованы (сумма = 1.0 на каждую вершину), количество инфлуенций ограничено, вершины без весов отсутствуют. В Blender последнее проверяется через Mesh > Vertices > Select All by Trait > Without a Group — если что-то выделилось, скиннинг неполный.
FBX-экспорт с параметром Deformer → Skin обязателен. В Unity при импорте: Rig → Animation Type → Humanoid, затем Avatar Configuration → Auto Map. Если скелет именован по стандарту Mixamo/Unity — маппинг проходит без ошибок. Если есть кастомные имена — нужен ручной маппинг, что занимает дополнительное время.
Проверка в движке: подключить любой Humanoid animation clip, запустить Preview в Animator. Деформация при ходьбе и беге — основной тест. Руки при замахе — дополнительный. Сгибание колена и локтя — минимальный стресс-тест для весов суставов.
Сроки и объём работы
Скиннинг занимает в среднем столько же времени, сколько риггинг — иногда больше, если меш детальный или есть сложные зоны.
| Масштаб задачи | Ориентировочный срок |
|---|---|
| Простой персонаж без пальцев | от 3 до 6 часов |
| Полный humanoid с пальцами | от 1 до 1.5 дней |
| Персонаж с одеждой (отдельные меши) | от 2 до 3 дней |
| Существо с нестандартной анатомией | от 2 до 4 дней |
Стоимость определяется после оценки меша: количество вершин, наличие отдельных мешей одежды и снаряжения, требования к максимальному количеству инфлуенций и целевая платформа.





