РуководстваИнструкция5 мин чтения

Риг и анимация 3D-моделей из Claude Code: Дайте агенту риггер, а не скрипт для Blender

Добавьте MCP-сервер afk-rig, и Claude Code сделает риг персонажа, животного или пропса одним вызовом инструмента, а затем проверит каждую анимацию и исправит то, что не так.

localhost:5173
claude · ~/game

> Сделай риг models/fox.glb как четвероногого животного и пусть лиса бегает по сцене

● rig_model (path: "models/fox.glb", type: "fox", animations: ["Idle", "Walk", "Run"])

⎿
models/fox.rigged.glb · type fox · 3 animations · charge free

● Update (src/scene.js)

⎿
Updated src/scene.js with 9 additions

● Риг лисы готов, она бегает. В файле также есть Idle и Walk, их можно смешивать.

Claude Code с добавленным afk-rig. Лиса — модель с ригом от afk.ai, она проигрывает свою анимацию Run в three.js.

Попросите ИИ-агента для программирования «сделай риг этой модели и заставь её ходить», и обычно он попытается сделать всё вручную: Python-скрипт для Blender, который расставляет кости, автоматические веса, цикл ходьбы по ключам, тестовый рендер — и новый круг, когда колени гнутся не в ту сторону. На это может уйти целая сессия, а результат всё равно будет выглядеть не так.

MCP-сервер afk-rig вместо этого даёт агенту один инструмент. rig_model отправляет модель в тот же ИИ-риггер, что и на afk.ai/rig, и записывает обратно GLB со скелетом, весами скиннинга и всеми анимациями для её типа тела — обычно меньше чем за минуту. Агент тратит силы на то, что у него получается хорошо: на код, который проигрывает эти анимации в вашей игре.

Почему агенту трудно делать риг вручную

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

Суставы
Агент угадывает, где плечи, бёдра и колени. На стилизованном персонаже, собаке или драконе эти догадки часто ошибочны, а сустав не на своём месте портит все анимации, которые идут после него.
Веса скиннинга
Автоматические веса Blender не срабатывают на многих реальных мешах — с отдельными частями, дырами или пересекающимися кусками — и выдают ошибку «Bone Heat Weighting: failed to find solution for one or more bones». После этого агент зацикливается на исправлениях меша, которые не может проверить на глаз.
Анимации
Правдоподобные ходьба, бег и idle — это очень много ключей, которые нужно выставить верно, не видя результата, а каждый новый тип тела начинается с нуля.
Затраты
Каждая попытка стоит времени и токенов, а два запуска на одной и той же модели редко дают одинаковый результат.

Вместо этого — один вызов инструмента

rig_model передаёт модель риггеру afk.ai. ИИ, обученный находить части тела, расставляет скелет, созданный для такого типа тела, веса скиннинга получаются процессом, настроенным на реальных мешах, а анимации сделаны именно под этот скелет, поэтому подходят без ретаргетинга.

В ответ приходит стандартный GLB, который открывается в three.js, Godot, Unreal, Unity (через glTFast) и Blender. Человек получает 66 костей со всеми пальцами и 594 анимации, остальные 14 типов тела — от 12 до 128 каждый. У всех моделей одного типа тела одинаковые названия костей и анимаций, поэтому всеми ими управляет один контроллер.

Агент делает риг вручнуюАгент вызывает afk-rig
РаботаСкрипты, тестовые рендеры и исправления, часто за много круговОдин вызов инструмента
ВремяОт нескольких минут до долгой сессииОбычно от 30 секунд до минуты
СкелетУгадан по координатамРасставлен ИИ, обученным находить части тела
АнимацииКлючи вручную, по одной анимацииВсе сделаны под этот тип тела
  • Меш: рыцарь с ригом, отрисованный afk-rig

    Меш

    23 293 вершины, 6 материалов и 14 текстур, как при загрузке

  • Скелет: рыцарь с ригом, отрисованный afk-rig

    Скелет

    66 костей, включая все пальцы, с одинаковыми названиями у любого гуманоида

  • Веса скиннинга: рыцарь с ригом, отрисованный afk-rig

    Веса скиннинга

    До 4 костей на вершину, здесь у каждой кости свой цвет

  • Анимаций: 593: рыцарь с ригом, отрисованный afk-rig

    Анимаций: 593

    Все для этого типа тела; здесь Sword_Attack на 0,7 с

Что внутри knight.rigged.glb, в отрисовке afk-rig render: те же картинки, которые ИИ-агент получает от render_rig.

Настройка

Создайте API-ключ в панели разработчика: войдите через Google и нажмите Create key. Затем добавьте сервер в Claude Code:

claude mcp add afk-rig \
  --env AFK_API_KEY=afk_... \
  -- npx -y afk-rig mcp

В Cursor, Windsurf, Claude Desktop и других MCP-клиентах добавьте его в mcp.json:

{
  "mcpServers": {
    "afk-rig": {
      "command": "npx",
      "args": ["-y", "afk-rig", "mcp"],
      "env": { "AFK_API_KEY": "afk_..." }
    }
  }
}

Ключ хранится в окружении сервера, поэтому никогда не попадает в разговор. Агент получает десять инструментов: пять делают риг в облаке afk.ai, а ещё пять проверяют и исправляют модель с ригом на вашем компьютере.

afk-rig · 10 toolsconnected

В облаке afk.aiиспользует ваш ключ

  • rig_modelДелает риг .glb, .gltf или .fbx и записывает .glb с ригом
  • image_to_characterНа входе картинка, на выходе персонаж с ригом
  • list_body_types15 типов тела и анимации каждого
  • get_accountСколько ригов осталось в этом месяце
  • rig_statusРиг, запущенный в другом месте

На вашем компьютеребесплатно, без ключа

  • inspect_rigЧто не так в каждой анимации, начиная с худшего
  • render_rigКартинка любого момента с нарисованным поверх скелетом
  • adjust_animationИнструменты управления анимацией с afk.ai/rig, руки не заходят в тело
  • fix_stretchingИсправляет кожу, которая рвётся при движении
  • fix_spotЗаново рисует веса скиннинга одного участка
Что npx afk-rig mcp даёт агенту. Каждое исправление записывает новый файл, так что исходный никогда не меняется.

Что у него можно попросить

После добавления сервера просите обычными словами. Агент сам выбирает инструмент, тип тела и анимации:

  • «Сделай риг models/knight.glb как человека и запусти его комбо с мечом в сцене three.js».
  • «Сделай риг models/fox.glb как четвероногого животного только с Idle, Walk и Run, затем создай сцену Godot, которая переключается между ними».
  • «Сделай риг каждого .glb в assets/props как объекта с Bounce и Spin и используй их для подбираемых монет и кристаллов».
  • «Какие анимации есть у типа dragon? Сделай риг dragon.glb с полётными анимациями и настрой для них AnimationPlayer».
  • «Сделай риг horse.glb, импортируй его в Unity как Generic-риг и собери Animator Controller с Walk, Trot и Run».
  • «Сделай персонажа с ригом по concept/hero.png». Модели ещё нет? image_to_character создаёт её по картинке и делает риг примерно за 2–3 минуты.
  • humanSword combo
  • foxRun
  • objectBounce
  • dragonFly
Что возвращают первые четыре запроса на моделях с ригом от afk.ai: у каждого типа тела свои анимации.

Проверьте и исправьте результат

Остальные пять инструментов работают на вашем компьютере на том же коде Adjust, что и afk.ai/rig: без ключа, бесплатно и ничего не загружая. inspect_rig находит стопы, проваливающиеся в пол, разрывы кожи и руки, проходящие сквозь тело, — начиная с самых серьёзных. render_rig рисует любой момент любой анимации, чтобы агент мог на него посмотреть. adjust_animation, fix_stretching и fix_spot исправляют это в новый файл, -v2.glb, так что исходный файл никогда не меняется.

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

claude · ~/game

> Проверь Walk у рыцаря и исправь всё, что не так

● inspect_rig (file: "knight.rigged.glb", animations: ["Walk"])

⎿
Walk: arms or hands through the body in 18 of 51 frames (deepest: hand_l into calf_l, 4.6% of its height, at 1.633 s)

● adjust_animation (animations: ["Walk"], keep_arms_out: 1)

⎿
knight.rigged-v2.glb · arms_through_body_frames [18, 0]

● render_rig (animation: "Walk", time: 1.633) × 2

⎿
до и после, справа

● Рука со щитом врезалась в левую ногу на трети цикла ходьбы. Исправлено в knight.rigged-v2.glb.

До: Walk рыцаря на 1,633 с, отрисовано afk-rig

До: колено проходит сквозь щит

После: Walk рыцаря на 1,633 с, отрисовано afk-rig

После: щит не задевает ногу

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

Пусть агент сделает остальное

Риггинг — это то, на что агент тратит больше всего сил с наименьшим результатом. А вот обвязка — его сильная сторона: AnimationMixer в three.js, AnimationPlayer в Godot, Animator Controller в Unity, блендинг между клипами или скрипт, который делает риг всех моделей для уровня. От файла с ригом до движения — всего несколько строк:

const gltf = await new GLTFLoader().loadAsync('fox.rigged.glb')
scene.add(gltf.scene)
const mixer = new THREE.AnimationMixer(gltf.scene)
const run = THREE.AnimationClip.findByName(gltf.animations, 'Run')
mixer.clipAction(run).play() // then mixer.update(delta) every frame

О том, что умеет риггить API, включая объекты, читайте в статье что можно создать с API для риггинга afk.ai.

Вопросы и ответы

Работает ли MCP-сервер с другими клиентами, кроме Claude Code?

Да. Это стандартный MCP-сервер на stdio (npx afk-rig mcp), так что Cursor, Windsurf, Claude Desktop и другие MCP-клиенты запускают его той же командой с AFK_API_KEY в окружении.

Где происходит риггинг?

rig_model и image_to_character работают на серверах afk.ai: инструмент загружает файл, ждёт и записывает результат в ваш проект. Каждая модель сначала проходит проверку на контент для взрослых, и если проверка её отклоняет, запрос завершается ошибкой и ничего не стоит. Инструменты проверки и исправления работают на вашем компьютере.

Какие модели он может зариггить?

GLB, glTF со всеми встроенными данными или FBX, до 200 МБ, включая файлы со сжатием Draco и meshopt. Выберите тип тела, подходящий модели: human, fox (четвероногие животные), horse (копытные), bird, dragon, kaiju (динозавры), spider, insect, snake, fish, turtle, kangaroo, frog, ghost или object.

Сколько это стоит?

Первые 3 рига каждый месяц бесплатны — тот же лимит, что и на afk.ai/rig. Дальше риги оплачиваются API-кредитами, подробнее — в разделе цены на API. Неудачный риг ничего не стоит, а инструменты проверки и исправления всегда бесплатны.

Можно ли использовать модели с ригом в коммерческих целях?

Да. Скелеты и анимации распространяются по CC0, а ваша модель остаётся вашей.

Дайте своему агенту риггер

Все анимации для типа тела в одном GLB — из Claude Code, Cursor, терминала или вашего кода.

Получить API-ключ

Другие руководства