API для риггинга позволяет программно добавлять скелет (арматуру) к 3D моделям человекоподобных персонажей, связывая с ним сетку, чтобы они были готовы для анимации. Для применения анимаций к риггированному персонажу, см. API анимации.
Обратите внимание, что программный риггинг в настоящее время хорошо работает только со стандартными человекоподобными (двуногими) ассетами с четко определенными конечностями и структурой тела.
Этот эндпоинт позволяет создать новую задачу по риггингу для данной 3D модели. После успешного завершения он предоставляет риггированного персонажа в стандартных форматах и, по желанию, базовые анимации ходьбы/бега.
В настоящее время автоматический риггинг не подходит для следующих моделей:
Меши без текстур
Негуманоидные ассеты
Гуманоидные ассеты с нечеткой структурой конечностей и тела
При использовании input_task_id, модели с более чем 300,000 граней не поддерживаются для риггинга. Пожалуйста, используйте Remesh API для уменьшения количества граней перед риггингом.
При использовании model_url, лицо персонажа должно быть направлено к оси +Z (стандартное направление вперед в glTF). Модели, направленные в другие стороны, не пройдут оценку позы.
Параметры
Только один из input_task_id или model_url является обязательным. Если оба предоставлены, input_task_id имеет приоритет.
Name
input_task_id
Type
string
Обязательный
Description
Входная задача, которую необходимо риггировать. В настоящее время мы поддерживаем текстурированные гуманоидные модели.
Name
model_url
Type
string
Обязательный
Description
Пожалуйста, предоставьте 3D модель для риггинга Meshy через общедоступный URL или Data URI. В настоящее время мы поддерживаем текстурированные гуманоидные GLB файлы (формат .glb).
Name
height_meters
Type
number
по умолчанию 1.7
Description
Примерная высота модели персонажа в метрах. Это помогает в масштабировании и точности риггинга. Должно быть положительным числом.
Name
texture_image_url
Type
string
Description
Изображение базовой текстуры цвета модели с развернутой UV. Общедоступный URL или Data URI. В настоящее время мы поддерживаем формат .png.
Возвращаемые значения
Свойство result ответа содержит id задачи вновь созданной задачи по риггингу.
Режимы отказа
Name
400 - Bad Request
Description
Запрос был неприемлемым. Общие причины:
Отсутствует параметр: Должен быть предоставлен либо model_url, либо input_task_id.
Неверный формат модели: model_url указывает на файл с неподдерживаемым расширением (поддерживается только .glb).
Недоступный URL: model_url не может быть загружен.
Неверная входная задача: input_task_id не ссылается на действительную задачу API.
Превышено количество граней: Входная модель имеет более 300,000 граней. Пожалуйста, используйте Remesh API для уменьшения количества граней перед риггингом.
Name
401 - Unauthorized
Description
Аутентификация не удалась. Пожалуйста, проверьте ваш API-ключ.
Name
402 - Payment Required
Description
Недостаточно кредитов для выполнения этой задачи.
Name
422 - Unprocessable Entity
Description
Оценка позы не удалась. Предоставленная модель может не быть действительным гуманоидным персонажем.
Name
429 - Too Many Requests
Description
Вы превысили ваше ограничение частоты.
Запрос
POST
/openapi/v1/rigging
# Rig a model from a URLcurlhttps://api.meshy.ai/openapi/v1/rigging \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "model_url": "YOUR_MODEL_URL_OR_DATA_URI", "height_meters": 1.8 }'
Этот эндпоинт позволяет получить задачу по риггингу, используя действительный id задачи. Обратитесь к разделу Объект задачи по риггингу, чтобы увидеть, какие свойства включены.
Параметры
Name
id
Type
path
Description
Уникальный идентификатор задачи по риггингу для получения.
Возвращаемые значения
Ответ содержит объект задачи по риггингу. Проверьте раздел Объект задачи по риггингу для получения деталей.
Возвращает список задач по риггингу вызывающего, отсортированный по убыванию. Стандартная пагинация через page_num и page_size.
Обратите внимание, что задачи, созданные через API, управляются через API — они не отображаются в разделе "Мои ассеты" веб-приложения. Используйте этот эндпоинт, чтобы найти задачу, ID которой у вас больше нет.
Объект задачи риггинга представляет собой рабочую единицу для риггинга персонажа.
Свойства
Name
id
Type
string
Description
Уникальный идентификатор задачи.
Name
type
Type
string
Description
Тип задачи риггинга. Значение — rig.
Name
status
Type
string
Description
Статус задачи. Возможные значения: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Прогресс выполнения задачи (0-100). 0, если не начато, 100, если успешно завершено.
Name
created_at
Type
timestamp
Description
Временная метка (миллисекунды с начала эпохи), когда задача была создана.
Временная метка представляет собой количество миллисекунд, прошедших с 1 января 1970 года по UTC, в соответствии
со стандартом RFC 3339.
Например, пятница, 1 сентября 2023 года, 12:00:00 по Гринвичу представляется как 1693569600000. Это применимо
ко всем временным меткам в Meshy API.
Name
started_at
Type
timestamp
Description
Временная метка (миллисекунды с начала эпохи), когда задача начала обрабатываться. 0, если не начато.
Name
finished_at
Type
timestamp
Description
Временная метка (миллисекунды с начала эпохи), когда задача была завершена. 0, если не завершено.
Name
expires_at
Type
timestamp
Description
Временная метка (миллисекунды с начала эпохи), когда результаты задачи истекают и могут быть удалены.
Name
task_error
Type
object
Description
Детали ошибки для неудачных задач. См. Ошибки для полного справочника объекта task_error.
Name
consumed_credits
Type
integer
Description
Количество кредитов, потребленных этой задачей. Присутствует, когда статус задачи PENDING, IN_PROGRESS или SUCCEEDED. Возвращает 0 для задач FAILED (кредиты возвращаются при неудаче).
Name
result
Type
object
Description
Содержит URL-адреса выходных ассетов, если задача SUCCEEDED, null в противном случае.
Name
rigged_character_fbx_url
Type
string
Description
URL для скачивания риггированного персонажа в формате FBX.
Name
rigged_character_glb_url
Type
string
Description
URL для скачивания риггированного персонажа в формате GLB.
Name
basic_animations
Type
object (optional)
Description
Содержит URL-адреса для стандартных анимаций. (например, если generate_basic_animations был неявно включен или включен по умолчанию).
Name
walking_glb_url
Type
string
Description
URL для скачивания анимации ходьбы в формате GLB (с кожей).
Name
walking_fbx_url
Type
string
Description
URL для скачивания анимации ходьбы в формате FBX (с кожей).
Name
walking_armature_glb_url
Type
string
Description
URL для скачивания арматуры анимации ходьбы в формате GLB.
Name
running_glb_url
Type
string
Description
URL для скачивания анимации бега в формате GLB (с кожей).
Name
running_fbx_url
Type
string
Description
URL для скачивания анимации бега в формате FBX (с кожей).
Name
running_armature_glb_url
Type
string
Description
URL для скачивания арматуры анимации бега в формате GLB.
Name
preceding_tasks
Type
integer
Description
Количество предшествующих задач в очереди. Имеет смысл только если статус PENDING.