API Мульти-зображення у 3D

API Мульти-зображення у 3D — це функція, яка дозволяє інтегрувати можливості Meshy для Мульти-зображення у 3D у ваш власний додаток. У цьому розділі ви знайдете всю необхідну інформацію, щоб почати роботу з цим API.


POST/openapi/v1/multi-image-to-3d

Створення завдання Мульти-зображення у 3D

Ця кінцева точка дозволяє створити нове завдання Мульти-зображення у 3D. Зверніться до Об'єкта завдання Мульти-зображення у 3D, щоб побачити, які властивості включені в об'єкт завдання Мульти-зображення у 3D.

Параметри

  • Name
    input_task_id
    Type
    string
    Обов'язковий
    Description

    ID завершеного завдання генерації зображення, вихідні дані якого (1-4 зображення) слід використати як вхідні. Це завдання має бути одним із наступних: Текст у зображення, Зображення у зображення, Текст у зображення Мультивид, або Зображення у зображення Мультивид. Крім того, воно має бути виконане через API та мати статус SUCCEEDED.

  • Name
    image_urls
    Type
    array
    Обов'язковий
    Description

    Надайте від 1 до 4 зображень для використання Meshy при створенні моделі. Наразі ми підтримуємо формати .jpg, .jpeg та .png. Для найкращих результатів усі зображення повинні відображати той самий об'єкт з різних кутів.

    Існує два способи надання кожного зображення:

    • Загальнодоступний URL: URL-адреса, доступна з публічного інтернету.
    • Data URI: Дані зображення у форматі base64. Приклад Data URI: data:image/jpeg;base64,<ваші дані зображення в кодуванні base64>.
  • Name
    ai_model
    Type
    string
    за замовчуванням latest
    Description

    ID моделі, яку слід використовувати. Доступні значення: meshy-5, meshy-6, meshy-7, latest (Meshy 7).

  • Name
    ultra_mode
    Type
    boolean
    за замовчуванням false
    Description

    Увімкнення режиму Ultra для отримання геометрії вищої точності з тоншими деталями поверхні.

  • Name
    should_texture
    Type
    boolean
    за замовчуванням true
    Description

    Визначає, чи генерувати текстури. Встановлення значення false пропускає етап текстурування, надаючи сітку без текстур.

Застосовується лише коли should_texture = true
  • Name
    enable_pbr
    Type
    boolean
    за замовчуванням false
    Description

    Генерувати PBR-карти (metallic, roughness, normal) на додачу до базового кольору. Карта випромінювання (emission) також включається, коли ai_model дорівнює meshy-6, окрім texture_resolution: 8k. meshy-7 та latest не створюють карту випромінювання.

  • Name
    texture_resolution
    Type
    string
    за замовчуванням 2k
    Description

    Роздільна здатність текстури базового кольору. Одне зі значень 2k (2048×2048), 4k (4096×4096), або 8k (8192×8192). Вищі роздільні здатності захоплюють більше деталей поверхні.

  • Name
    hd_texture
    Type
    boolean
    застарілий
    за замовчуванням false
    Description

    Використовуйте texture_resolution замість цього — еквівалентно texture_resolution: "4k". Якщо встановлено обидва, texture_resolution має пріоритет.

  • Name
    texture_prompt
    Type
    string
    Description

    Надайте текстовий prompt для спрямування процесу текстурування. Максимум 800 символів.

  • Name
    texture_image_url
    Type
    string
    Description

    Надайте 2D-зображення для спрямування процесу текстурування. Наразі ми підтримуємо формати .jpg, .jpeg та .png.

    Існує два способи надання зображення:

    • Загальнодоступний URL: URL-адреса, доступна з публічного інтернету
    • Data URI: Дані зображення у форматі base64. Приклад Data URI: data:image/jpeg;base64,<ваші дані зображення в кодуванні base64>
  • Name
    texture_image_urls
    Type
    string[]
    Description

    Надайте від 1 до 4 зображень, що показують той самий об'єкт з різних видів, для спрямування текстурування. Перше зображення є основним (переднім) видом; порядок решти видів (лівий, задній, правий) не має значення.

    Кожен елемент приймає ті самі формати, що й texture_image_url (загальнодоступний URL або base64 data URI, .jpg/.jpeg/.png).

    Ці зображення спрямовують лише текстурування і не залежать від image_urls — обидва списки можуть містити різні зображення та різну кількість зображень.

  • Name
    should_remesh
    Type
    boolean
    за замовчуванням false (meshy-6), true (others)
    Description

    Керує тим, чи вмикати етап ремешу. Для моделі найвищої якості ми рекомендуємо встановити should_remesh у значення false.

Застосовується лише коли should_remesh = true
  • Name
    topology
    Type
    string
    за замовчуванням triangle
    Description

    Вкажіть topology згенерованої моделі.

    Доступні значення:

    • quad: Генерувати сітку з переважанням чотирикутників.
    • triangle: Генерувати децимовану трикутну сітку.
  • Name
    target_polycount
    Type
    integer
    за замовчуванням 30,000
    Description

    Вкажіть цільову кількість полігонів у згенерованій моделі. Фактична кількість полігонів може відхилятися від цільової залежно від складності геометрії.

    Допустимий діапазон значень залежить від рівня користувача:

    • від 100 до 300 000 (включно)
  • Name
    decimation_mode
    Type
    integer
    Description

    Увімкнути адаптивну децимацію, встановивши рівень кількості полігонів. Коли встановлено, target_polycount ігнорується.

    Доступні значення:

    • 1: Адаптивна — ультра кількість полігонів.
    • 2: Адаптивна — висока кількість полігонів.
    • 3: Адаптивна — середня кількість полігонів.
    • 4: Адаптивна — низька кількість полігонів.
  • Name
    save_pre_remeshed_model
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, Meshy також зберігає додатковий файл GLB до завершення етапу ремешу.

  • Name
    symmetry_mode
    Type
    string
    застарілий
    за замовчуванням auto
    Description

    Застаріле. Цей параметр більше не впливає на результат.

    Поле symmetry_mode керує поведінкою симетрії під час процесу генерації моделі.

    Допустимі значення:

    • off: Вимикає симетрію.
    • auto: Автоматично визначає та застосовує симетрію на основі вхідної геометрії.
    • on: Примусово застосовує симетрію під час генерації.
  • Name
    pose_mode
    Type
    string
    за замовчуванням ""
    Description

    Вкажіть режим пози для згенерованої моделі.

    Доступні значення:

    • a-pose: Генерувати модель у позі A.
    • t-pose: Генерувати модель у позі T.
    • "" (порожній рядок): Жодна конкретна поза не застосовується.
  • Name
    is_a_t_pose
    Type
    boolean
    застарілий
    за замовчуванням false
    Description

    Використовуйте pose_mode замість цього. Чи генерувати модель у позі A/T.

  • Name
    image_enhancement
    Type
    boolean
    за замовчуванням true
    Description

    Оптимізує вхідні зображення для отримання кращих результатів. Встановіть false, щоб зберегти точний вигляд вхідних зображень без будь-якої стильової обробки.

  • Name
    remove_lighting
    Type
    boolean
    за замовчуванням true
    Description

    Видаляє відблиски та тіні з текстури базового кольору, забезпечуючи чистіший результат, який краще працює при індивідуальних налаштуваннях освітлення.

  • Name
    moderation
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, вхідний контент буде автоматично перевірено на потенційно шкідливий вміст. Якщо виявлено шкідливий контент, завдання не перейде до етапу генерації.

    Кожне зображення з image_urls та текст з texture_prompt будуть перевірені.

  • Name
    target_formats
    Type
    string[]
    Description

    Вказує, які формати 3D-файлів включати у вихідні дані. Будуть згенеровані та повернуті лише запитані формати, що може скоротити час виконання завдання.

    Доступні значення: glb, obj, fbx, stl, usdz, 3mf

  • Name
    auto_size
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, служба використовує AI vision для автоматичної оцінки реальної висоти об'єкта та відповідного зміни розміру моделі. Початок координат за замовчуванням буде bottom, якщо явно не встановлено origin_at.

  • Name
    alpha_thumbnail
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, завдання додатково рендерить версію попереднього перегляду з прозорим фоном (RGBA) і повертає її як alpha_thumbnail_url у відповіді GET. Наявне поле thumbnail_url залишається незмінним.

  • Name
    multi_view_thumbnails
    Type
    boolean
    за замовчуванням false
    Description

    Коли встановлено true, завдання додатково рендерить чотири мініатюри з основних видів (передній, правий, задній, лівий) і повертає їх у полі thumbnail_urls у відповіді GET. Наявне поле thumbnail_url залишається незмінним і продовжує вказувати на передній вигляд, тому наявні клієнти не зазнають впливу.

Застосовується лише коли auto_size = true
  • Name
    origin_at
    Type
    string
    за замовчуванням bottom
    Description

    Позиція початку координат, коли увімкнено auto_size. Доступні значення: bottom, center.

Повертає

Властивість result відповіді містить id завдання новоствореного завдання Мульти-зображення у 3D.

Режими відмов

  • Name
    400 - Bad Request
    Description

    Запит було неприйнятним. Поширені причини:

    • Відсутній параметр: Необхідно надати або image_urls, або input_task_id.
    • Недійсне вхідне завдання: input_task_id повинен посилатися на завдання типу Текст у зображення, Зображення у зображення або варіант мультивиду зі статусом SUCCEEDED.
    • Недійсна кількість зображень: image_urls повинен містити від 1 до 4 зображень, а texture_image_urls — від 1 до 4.
    • Недійсний формат зображення: Одне або декілька зображень у image_urls мають непідтримувані формати.
    • Конфліктуючі вхідні дані текстур: texture_image_urls не можна поєднувати з texture_image_url або texture_prompt, і потребує should_texture: true.
    • Непідтримувана модель для мультивидової текстури: texture_image_urls вимагає ai_model meshy-7 або latest.
    • Недосяжний URL: Один або декілька елементів image_urls або texture_image_urls не вдалося завантажити.
  • Name
    401 - Unauthorized
    Description

    Автентифікація не вдалася. Будь ласка, перевірте свій API-ключ.

  • Name
    402 - Payment Required
    Description

    Недостатньо кредитів для виконання цього завдання.

  • Name
    429 - Too Many Requests
    Description

    Ви перевищили обмеження частоти запитів.

Request

POST
/openapi/v1/multi-image-to-3d
# Simple request
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_urls": [
      "<your publicly accessible image url or base64-encoded data URI>",
      "<your second publicly accessible image url or base64-encoded data URI>"
    ]
  }'

# With PBR texturing and GLB format
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_urls": [
      "<your publicly accessible image url or base64-encoded data URI>",
      "<your second publicly accessible image url or base64-encoded data URI>"
    ],
    "should_texture": true,
    "enable_pbr": true,
    "target_formats": ["glb"]
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

GET/openapi/v1/multi-image-to-3d/:id

Отримання завдання Мульти-зображення у 3D

Ця кінцева точка дозволяє отримати завдання Мульти-зображення у 3D за наявності дійсного id завдання. Зверніться до Об'єкт завдання Мульти-зображення у 3D, щоб побачити, які властивості включені в об'єкт завдання Мульти-зображення у 3D.

Параметри

  • Name
    id
    Type
    path
    Description

    Унікальний ідентифікатор для завдання Мульти-зображення у 3D, яке потрібно отримати.

Повертає

Відповідь містить об'єкт завдання Мульти-зображення у 3D. Перевірте розділ Об'єкт завдання Мульти-зображення у 3D для деталей.

Запит

GET
/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 30
}

DELETE/openapi/v1/multi-image-to-3d/:id

Видалити завдання Мульти-зображення у 3D

Ця кінцева точка назавжди видаляє завдання Мульти-зображення у 3D, включаючи всі пов'язані моделі та дані. Ця дія є незворотною.

Параметри шляху

  • Name
    id
    Type
    path
    Description

    Ідентифікатор завдання Мульти-зображення у 3D, яке потрібно видалити.

Повертає

Повертає 200 OK у разі успіху.

Запит

DELETE
/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь

// Returns 200 Ok on success.

GET/openapi/v1/multi-image-to-3d

Перелік завдань Мульти-зображення у 3D

Ця кінцева точка дозволяє отримати перелік завдань Мульти-зображення у 3D.

Параметри

Необов'язкові атрибути

  • Name
    page_num
    Type
    integer
    Description

    Номер сторінки для пагінації. Починається і за замовчуванням дорівнює 1.

  • Name
    page_size
    Type
    integer
    Description

    Ліміт розміру сторінки. За замовчуванням 10 елементів. Максимально дозволено 50 елементів.

  • Name
    sort_by
    Type
    string
    Description

    Поле для сортування. Доступні значення:

    • +created_at: Сортувати за часом створення у порядку зростання.
    • -created_at: Сортувати за часом створення у порядку спадання.

Повертає

Повертає список з пагінацією Об'єктів завдань Мульти-зображення у 3D.

Запит

GET
/openapi/v1/multi-image-to-3d
curl https://api.meshy.ai/openapi/v1/multi-image-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Відповідь

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "multi-image-to-3d",
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
      "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
      "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
      "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "thumbnail_urls": {
      "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
      "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
      "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
      "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
    },
    "texture_prompt": "",
    "progress": 100,
    "started_at": 1692771667037,
    "created_at": 1692771650657,
    "expires_at": 1692771679037,
    "finished_at": 1692771669037,
    "status": "SUCCEEDED",
    "texture_urls": [
      {
        "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
        "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
        "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
        "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
        "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
      }
    ],
    "preceding_tasks": 0,
    "task_error": {

      "message": ""

    },

    "consumed_credits": 30
  }
]

GET/openapi/v1/multi-image-to-3d/:id/stream

Потокове передавання завдання Мульти-зображення у 3D

Ця кінцева точка передає в реальному часі оновлення для завдання Мульти-зображення у 3D, використовуючи Server-Sent Events (SSE).

Параметри

  • Name
    id
    Type
    path
    Description

    Унікальний ідентифікатор для завдання Мульти-зображення у 3D для потокового передавання.

Повертає

Повертає потік Об'єктів завдання Мульти-зображення у 3D як Server-Sent Events.

Для завдань зі статусом PENDING або IN_PROGRESS, потік відповіді буде містити лише необхідні поля progress та status.

Запит

GET
/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v1/multi-image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Потік відповіді

// Error event example
event: error
data: {
  "status_code": 404,
  "message": "Task not found"
}

// Message event examples illustrate task progress.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "model_urls": {
  "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
  "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
  "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
  "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
  "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
  "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
  "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
  "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
  "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
  "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 30
}

Об'єкт завдання Мульти-зображення у 3D

Об'єкт завдання Мульти-зображення у 3D — це робоча одиниця, яку Meshy відстежує для генерації 3D-моделі з декількох зображень (від 1 до 4 включно). Зображення мають бути одного об'єкта, бажано з різних ракурсів або кутів. Об'єкт має такі властивості:

Властивості

  • Name
    id
    Type
    string
    Description

    Унікальний ідентифікатор завдання. Хоча як деталь реалізації ми використовуємо k-сортований UUID для ідентифікаторів завдань, вам не слід робити жодних припущень щодо формату ідентифікатора.

  • Name
    type
    Type
    string
    Description

    Тип завдання Мульти-зображення у 3D. Значення — multi-image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    Завантажувальне посилання на текстуровану 3D-модель, згенеровану Meshy. Властивість для формату буде відсутня, якщо цей формат не було згенеровано, замість повернення порожнього рядка.

    • Name
      glb
      Type
      string
      Description

      Завантажувальне посилання на файл GLB.

    • Name
      fbx
      Type
      string
      Description

      Завантажувальне посилання на файл FBX.

    • Name
      obj
      Type
      string
      Description

      Завантажувальне посилання на файл OBJ.

    • Name
      usdz
      Type
      string
      Description

      Завантажувальне посилання на файл USDZ.

    • Name
      mtl
      Type
      string
      Description

      Завантажувальне посилання на файл MTL, що повертається разом з експортом OBJ, коли присутні текстури.

    • Name
      stl
      Type
      string
      Description

      Завантажувальне посилання на файл STL.

    • Name
      3mf
      Type
      string
      Description

      Завантажувальне посилання на файл 3MF. Присутнє лише якщо 3mf було запитано через target_formats.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      Завантажувальне посилання на оригінальний вихідний файл GLB до перетопології.

  • Name
    thumbnail_url
    Type
    string
    Description

    Завантажувальне посилання на мініатюру моделі. Еквівалент thumbnail_urls.front, коли присутній, збережено для зворотної сумісності.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    Завантажувальне посилання на версію thumbnail_url з прозорим фоном (RGBA). Присутнє лише якщо завдання було створене з alpha_thumbnail: true і прозорий попередній перегляд було успішно згенеровано; інакше це поле відсутнє.

  • Name
    thumbnail_urls
    Type
    object
    Description

    Завантажувальні посилання на чотири мініатюри згенерованої 3D-моделі з основних напрямків огляду. Кожне значення — це підписане посилання на PNG розміром 512×512, відрендерене з тими ж матеріалами та освітленням, що й thumbnail_url. Корисно для попереднього перегляду моделі з декількох кутів у пакетних конвеєрах без завантаження GLB.

    • Name
      front
      Type
      string
      Description

      Вигляд спереду, обертання на 0° навколо вертикальної осі (відповідає thumbnail_url).

    • Name
      right
      Type
      string
      Description

      Вигляд справа, обертання на 90°.

    • Name
      back
      Type
      string
      Description

      Вигляд ззаду, обертання на 180°.

    • Name
      left
      Type
      string
      Description

      Вигляд зліва, обертання на 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    Текстовий prompt, який використовувався для керування процесом текстурування.

  • Name
    texture_image_urls
    Type
    string[]
    Description

    Завантажувальні посилання на референсні зображення текстур, які використовувалися для створення завдання, у порядку, в якому вони були надані. Присутнє лише якщо завдання було створене з texture_image_urls.

  • Name
    ultra_mode
    Type
    boolean
    Description

    Відображає значення ultra_mode, з яким було створено завдання. Присутнє лише для завдань meshy-7 (або latest), які явно встановили ultra_mode; інакше відсутнє.

  • Name
    progress
    Type
    integer
    Description

    Прогрес виконання завдання. Якщо завдання ще не розпочато, ця властивість матиме значення 0. Коли завдання успішно завершиться, це стане 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Мітка часу початку виконання завдання, у мілісекундах. Якщо завдання ще не розпочато, ця властивість матиме значення 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Мітка часу створення завдання, у мілісекундах.

  • Name
    expires_at
    Type
    timestamp
    Description

    Мітка часу закінчення строку дії результату завдання, у мілісекундах.

  • Name
    finished_at
    Type
    timestamp
    Description

    Мітка часу завершення завдання, у мілісекундах. Якщо завдання ще не завершено, ця властивість матиме значення 0.

  • Name
    status
    Type
    string
    Description

    Статус завдання. Можливі значення: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Масив об'єктів посилань на текстури, згенеровані для завдання. Зазвичай він містить лише один об'єкт посилань на текстуру. Кожен об'єкт посилань на текстуру має такі властивості:

    • Name
      base_color
      Type
      string
      Description

      Завантажувальне посилання на зображення карти базового кольору.

    • Name
      metallic
      Type
      string
      Description

      Завантажувальне посилання на зображення карти металевості.

    • Name
      normal
      Type
      string
      Description

      Завантажувальне посилання на зображення карти нормалей.

    • Name
      roughness
      Type
      string
      Description

      Завантажувальне посилання на зображення карти шорсткості.

    • Name
      emission
      Type
      string
      Description

      Завантажувальне посилання на зображення карти випромінювання.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Кількість завдань, що передують цьому.

  • Name
    task_error
    Type
    object
    Description

    Деталі помилки для невдалих завдань. Див. Помилки для повного опису об'єкта task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Кількість кредитів, витрачених на це завдання. Присутнє, коли статус завдання — PENDING, IN_PROGRESS або SUCCEEDED. Повертає 0 для завдань зі статусом FAILED (кредити повертаються при невдачі).

Example Multi-Image to 3D Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "multi-image-to-3d",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
    "fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
    "pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "thumbnail_urls": {
    "front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
    "right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
    "back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
    "left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
  },
  "texture_prompt": "",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "expires_at": 1692771679037,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
      "metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
      "normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
      "roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
      "emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 30,
}