API Wiele obrazów na 3D

API Wiele obrazów na 3D to funkcja, która pozwala zintegrować możliwości Wiele obrazów na 3D firmy Meshy z własną aplikacją. W tej sekcji znajdziesz wszystkie informacje potrzebne do rozpoczęcia pracy z tym API.


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

Utwórz Zadanie Wiele obrazów na 3D

Ten punkt końcowy umożliwia utworzenie nowego zadania Wiele obrazów na 3D. Odwołaj się do Obiektu Zadania Wiele obrazów na 3D, aby zobaczyć, które właściwości są uwzględnione w obiekcie zadania Wiele obrazów na 3D.

Parametry

  • Name
    input_task_id
    Type
    string
    Wymagane
    Description

    ID ukończonego zadania generowania obrazów, którego wyjście (1-4 obrazy) powinno być użyte jako wejście. Zadanie to musi należeć do jednego z następujących zadań: Tekst na obraz, Obraz na obraz, Tekst na obraz Wiele widoków lub Obraz na obraz Wiele widoków. Dodatkowo, musi zostać uruchomione przez API i mieć status SUCCEEDED.

  • Name
    image_urls
    Type
    array
    Wymagane
    Description

    Podaj od 1 do 4 obrazów, które Meshy użyje do stworzenia modelu. Obecnie obsługujemy formaty .jpg, .jpeg i .png. Wszystkie obrazy powinny przedstawiać ten sam obiekt z różnych kątów dla najlepszych wyników.

    Są dwa sposoby podawania każdego obrazu:

    • Publicznie dostępny URL: URL dostępny z publicznego internetu.
    • Data URI: Zakodowane w base64 URI danych obrazu. Przykład Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    ai_model
    Type
    string
    domyślne latest
    Description

    ID modelu do użycia. Dostępne wartości: meshy-5, meshy-6, meshy-7, latest (Meshy 7).

  • Name
    should_texture
    Type
    boolean
    domyślne true
    Description

    Określa, czy tekstury są generowane. Ustawienie na false pomija fazę tekstur, dostarczając siatkę bez tekstur.

Dotyczy tylko gdy should_texture = true
  • Name
    enable_pbr
    Type
    boolean
    domyślne false
    Description

    Generuj mapy PBR (metaliczność, chropowatość, normalne) oprócz podstawowego koloru. Mapa emisji jest również uwzględniona, gdy ai_model to meshy-6, z wyjątkiem texture_resolution: 8k. meshy-7 i latest nie tworzą mapy emisji.

  • Name
    texture_resolution
    Type
    string
    domyślne 2k
    Description

    Rozdzielczość tekstury dla koloru bazowego. Jedna z 2k (2048×2048), 4k (4096×4096) lub 8k (8192×8192). Wyższe rozdzielczości uchwycają więcej szczegółów powierzchni.

  • Name
    hd_texture
    Type
    boolean
    przestarzałe
    domyślne false
    Description

    Użyj zamiast tego texture_resolution — równoważne z texture_resolution: "4k". Kiedy oba są ustawione, texture_resolution ma pierwszeństwo.

  • Name
    texture_prompt
    Type
    string
    Description

    Podaj tekst, aby poprowadzić proces teksturowania. Maksymalnie 600 znaków.

  • Name
    texture_image_url
    Type
    string
    Description

    Podaj dwuwymiarowy obraz, aby poprowadzić proces teksturowania. Obecnie obsługujemy formaty .jpg, .jpeg i .png.

    Są dwa sposoby podawania obrazu:

    • Publicznie dostępny URL: URL dostępny z publicznego internetu
    • Data URI: Zakodowane w base64 URI danych obrazu. Przykład Data URI: data:image/jpeg;base64,<your base64-encoded image data>
  • Name
    should_remesh
    Type
    boolean
    domyślne false (meshy-6), true (others)
    Description

    Kontroluje, czy włączyć fazę remesh. Dla modelu najwyższej jakości zalecamy ustawienie should_remesh na false.

Dotyczy tylko gdy should_remesh = true
  • Name
    topology
    Type
    string
    domyślne triangle
    Description

    Określ topologię generowanego modelu.

    Dostępne wartości:

    • quad: Wygeneruj siatkę zdominowaną przez quady.
    • triangle: Wygeneruj zdecymowaną siatkę trójkątów.
  • Name
    target_polycount
    Type
    integer
    domyślne 30,000
    Description

    Określ docelową liczbę wielokątów w generowanym modelu. Rzeczywista liczba wielokątów może się różnić od docelowej, w zależności od złożoności geometrii.

    Prawidłowy zakres wartości zależy od poziomu użytkownika:

    • 100 do 300 000 (włącznie)
  • Name
    decimation_mode
    Type
    integer
    Description

    Włącz adaptacyjną decymację, ustawiając poziom liczby wielokątów. Kiedy ustawione, target_polycount jest ignorowane.

    Dostępne wartości:

    • 1: Adaptacyjna — ultra liczba wielokątów.
    • 2: Adaptacyjna — wysoka liczba wielokątów.
    • 3: Adaptacyjna — średnia liczba wielokątów.
    • 4: Adaptacyjna — niska liczba wielokątów.
  • Name
    save_pre_remeshed_model
    Type
    boolean
    domyślne false
    Description

    Kiedy ustawione na true, Meshy również zapisuje dodatkowy plik GLB przed zakończeniem fazy remesh.

  • Name
    symmetry_mode
    Type
    string
    przestarzałe
    domyślne auto
    Description

    Przestarzałe. Ten parametr nie ma już wpływu na wynik.

    Pole symmetry_mode kontroluje zachowanie symetrii podczas procesu generowania modelu.

    Prawidłowe wartości to:

    • off: Wyłącza symetrię.
    • auto: Automatycznie określa i stosuje symetrię na podstawie wejściowej geometrii.
    • on: Wymusza symetrię podczas generacji.
  • Name
    pose_mode
    Type
    string
    domyślne ""
    Description

    Określ tryb pozy dla generowanego modelu.

    Dostępne wartości:

    • a-pose: Wygeneruj model w pozycji A.
    • t-pose: Wygeneruj model w pozycji T.
    • "" (pusty ciąg): Nie stosuje się konkretnej pozy.
  • Name
    is_a_t_pose
    Type
    boolean
    przestarzałe
    domyślne false
    Description

    Użyj zamiast tego pose_mode. Określa, czy wygenerować model w pozycji A/T.

  • Name
    image_enhancement
    Type
    boolean
    domyślne true
    Description

    Optymalizuje obrazy wejściowe dla lepszych wyników. Ustawienie na false zachowuje dokładny wygląd wejściowych obrazów bez przetwarzania stylu.

  • Name
    remove_lighting
    Type
    boolean
    domyślne true
    Description

    Usuwa podświetlenia i cienie z tekstury koloru bazowego, dając czystszy rezultat, który działa lepiej przy niestandardowych ustawieniach oświetlenia.

  • Name
    moderation
    Type
    boolean
    domyślne false
    Description

    Kiedy ustawione na true, zawartość wejściowa zostanie automatycznie sprawdzona pod kątem potencjalnie szkodliwej treści. Jeśli zostanie wykryta szkodliwa zawartość, zadanie nie przejdzie do generowania.

    Każdy obraz z image_urls i tekst z texture_prompt zostanie sprawdzony.

  • Name
    target_formats
    Type
    string[]
    Description

    Określa, które formaty plików 3D mają być uwzględnione w wyniku. Tylko żądane formaty zostaną wygenerowane i zwrócone, co może skrócić czas ukończenia zadania.

    Dostępne wartości: glb, obj, fbx, stl, usdz, 3mf

  • Name
    auto_size
    Type
    boolean
    domyślne false
    Description

    Kiedy ustawione na true, usługa używa wizji AI, aby automatycznie oszacować rzeczywistą wysokość obiektu i odpowiednio zmienić rozmiar modelu. Punkt początkowy domyślnie jest ustawiony na bottom, chyba że origin_at jest wyraźnie ustawiony.

  • Name
    alpha_thumbnail
    Type
    boolean
    domyślne false
    Description

    Kiedy ustawione na true, zadanie dodatkowo renderuje wersję podglądu z przezroczystym tłem (RGBA) i zwraca ją jako alpha_thumbnail_url w odpowiedzi GET. Istniejące pole thumbnail_url pozostaje bez zmian.

  • Name
    multi_view_thumbnails
    Type
    boolean
    domyślne false
    Description

    Kiedy ustawione na true, zadanie dodatkowo renderuje cztery miniatury widoków kardynalnych (front, right, back, left) i zwraca je jako thumbnail_urls w odpowiedzi GET. Istniejące pole thumbnail_url pozostaje bez zmian i nadal wskazuje na widok frontowy, więc istniejące aplikacje nie są dotknięte.

Dotyczy tylko gdy auto_size = true
  • Name
    origin_at
    Type
    string
    domyślne bottom
    Description

    Pozycja punktu początkowego, gdy auto_size jest włączone. Dostępne wartości: bottom, center.

Zwraca

Właściwość result odpowiedzi zawiera id nowo utworzonego zadania Wiele obrazów na 3D.

Tryby awarii

  • Name
    400 - Bad Request
    Description

    Żądanie było nieakceptowalne. Typowe przyczyny:

    • Brakujący parametr: Należy podać image_urls lub input_task_id.
    • Nieprawidłowe zadanie wejściowe: input_task_id musi odnosić się do zadania SUCCEEDED Tekst na obraz, Obraz na obraz lub wariantu wielowidokowego.
    • Nieprawidłowa liczba obrazów: image_urls musi zawierać od 1 do 4 obrazów.
    • Nieprawidłowy format obrazu: Jeden lub więcej obrazów w image_urls nie jest w obsługiwanym formacie.
    • Nieosiągalny URL: Jeden lub więcej image_urls nie mogło zostać pobranych.
  • Name
    401 - Unauthorized
    Description

    Niepowodzenie uwierzytelnienia. Sprawdź swój klucz API.

  • Name
    402 - Payment Required
    Description

    Niewystarczające kredyty do wykonania tego zadania.

  • Name
    429 - Too Many Requests
    Description

    Przekroczyłeś swój limit szybkości.

Request

POST
/openapi/v1/multi-image-to-3d
# Proste żądanie
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>"
    ]
  }'

# Z teksturami PBR i formatem GLB
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"]
  }'

Odpowiedź

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

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

Pobierz Zadanie Wiele obrazów na 3D

Ten punkt końcowy umożliwia pobranie zadania Wiele obrazów na 3D podając prawidłowe id zadania. Odwołaj się do Obiektu Zadania Wiele obrazów na 3D, aby zobaczyć, które właściwości są uwzględnione w obiekcie zadania Wiele obrazów na 3D.

Parametry

  • Name
    id
    Type
    path
    Description

    Unikalny identyfikator zadania Wiele obrazów na 3D do pobrania.

Zwraca

Odpowiedź zawiera obiekt zadania Wiele obrazów na 3D. Sprawdź sekcję Obiektu Zadania Wiele obrazów na 3D dla szczegółów.

Request

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}"

Odpowiedź

{
  "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

Usuń Zadanie Wiele obrazów na 3D

Ten punkt końcowy trwale usuwa zadanie Wiele obrazów na 3D, w tym wszystkie powiązane modele i dane. Ta czynność jest nieodwracalna.

Parametry Ścieżki

  • Name
    id
    Type
    path
    Description

    ID zadania Wiele obrazów na 3D do usunięcia.

Zwraca

Zwraca 200 OK w przypadku sukcesu.

Request

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}"

Odpowiedź

// Zwraca 200 Ok w przypadku sukcesu.

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

Lista Zadań Wiele obrazów na 3D

Ten punkt końcowy umożliwia pobranie listy zadań Wiele obrazów na 3D.

Parametry

Opcjonalne atrybuty

  • Name
    page_num
    Type
    integer
    Description

    Numer strony dla stronicowania. Rozpoczyna się i domyślnie ustawiony na 1.

  • Name
    page_size
    Type
    integer
    Description

    Limit rozmiaru strony. Domyślnie 10 elementów. Maksymalnie dozwolone to 50 elementów.

  • Name
    sort_by
    Type
    string
    Description

    Pole do sortowania. Dostępne wartości:

    • +created_at: Sortuj według czasu utworzenia w kolejności rosnącej.
    • -created_at: Sortuj według czasu utworzenia w kolejności malejącej.

Zwraca

Zwraca stronicowaną listę Obiektów Zadania Wiele obrazów na 3D.

Request

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}"

Odpowiedź

[
  {
    "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

Streamuj Zadanie Wiele obrazów na 3D

Ten punkt końcowy streamuje aktualizacje w czasie rzeczywistym dla zadania Wiele obrazów na 3D, korzystając z Server-Sent Events (SSE).

Parametry

  • Name
    id
    Type
    path
    Description

    Unikalny identyfikator zadania Wiele obrazów na 3D do streamowania.

Zwraca

Zwraca strumień Obiektów Zadania Wiele obrazów na 3D jako Server-Sent Events.

Dla zadań PENDING lub IN_PROGRESS, strumień odpowiedzi będzie zawierał tylko niezbędne pola progress i status.

Request

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}"

Strumień odpowiedzi

// Przykład zdarzenia błędu
event: error
data: {
  "status_code": 404,
  "message": "Task not found"
}

// Przykłady zdarzeń wiadomości ilustrują postęp zadania.
// Dla zadań PENDING lub IN_PROGRESS strumień odpowiedzi nie będzie zawierał wszystkich pól.
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
}

Obiekt Zadania Wiele obrazów na 3D

Obiekt Zadania Wiele obrazów na 3D to jednostka pracy, którą Meshy śledzi, aby wygenerować model 3D z wielu obrazów (od 1 do 4 włącznie). Obrazy powinny dotyczyć tego samego obiektu, najlepiej z różnych widoków lub kątów. Obiekt ma następujące właściwości:

Właściwości

  • Name
    id
    Type
    string
    Description

    Unikalny identyfikator zadania. Chociaż jako szczegół implementacji używamy k-sortowalnego UUID dla ID zadań, nie powinieneś dokonywać żadnych założeń co do formatu ID.

  • Name
    type
    Type
    string
    Description

    Typ zadania Wiele obrazów na 3D. Wartość to multi-image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    Pobieralny URL do teksturowanego pliku modelu 3D wygenerowanego przez Meshy. Właściwość dla formatu zostanie pominięta, jeśli format nie zostanie wygenerowany, zamiast zwracania pustego ciągu.

    • Name
      glb
      Type
      string
      Description

      Pobieralny URL do pliku GLB.

    • Name
      fbx
      Type
      string
      Description

      Pobieralny URL do pliku FBX.

    • Name
      obj
      Type
      string
      Description

      Pobieralny URL do pliku OBJ.

    • Name
      usdz
      Type
      string
      Description

      Pobieralny URL do pliku USDZ.

    • Name
      mtl
      Type
      string
      Description

      Pobieralny URL do pliku MTL, zwracany wraz z eksportami OBJ, gdy tekstury są obecne.

    • Name
      stl
      Type
      string
      Description

      Pobieralny URL do pliku STL.

    • Name
      3mf
      Type
      string
      Description

      Pobieralny URL do pliku 3MF. Obecny tylko wtedy, gdy 3mf został zażądany poprzez target_formats.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      Pobieralny URL do oryginalnego wyjścia GLB przed remeshem.

  • Name
    thumbnail_url
    Type
    string
    Description

    Pobieralny URL do miniatury obrazu pliku modelu. Równoważne z thumbnail_urls.front, kiedy obecne, zachowane dla zgodności wstecznej.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    Pobieralny URL do wersji thumbnail_url z przezroczystym tłem (RGBA). Obecny tylko wtedy, gdy zadanie zostało utworzone z alpha_thumbnail: true i przezroczysty podgląd został pomyślnie wyrenderowany; w przeciwnym razie to pole jest pomijane.

  • Name
    thumbnail_urls
    Type
    object
    Description

    Pobieralne URL do czterech miniatur widoków kardynalnych wygenerowanego modelu 3D. Każda wartość to podpisany URL do pliku PNG 512×512 wyrenderowanego z tymi samymi materiałami i oświetleniem co thumbnail_url. Przydatne do podglądu modelu z różnych kątów w procesach wsadowych bez pobierania GLB.

    • Name
      front
      Type
      string
      Description

      Widok z przodu, obrót 0° wokół osi pionowej (zgodny z thumbnail_url).

    • Name
      right
      Type
      string
      Description

      Widok z prawej strony, obrót 90°.

    • Name
      back
      Type
      string
      Description

      Widok z tyłu, obrót 180°.

    • Name
      left
      Type
      string
      Description

      Widok z lewej strony, obrót 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    Prompt tekstowy, który został użyty do kierowania procesem teksturowania.

  • Name
    progress
    Type
    integer
    Description

    Postęp zadania. Jeśli zadanie jeszcze się nie rozpoczęło, to pole będzie miało wartość 0. Gdy zadanie zakończy się sukcesem, stanie się 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Znacznik czasu, kiedy zadanie zostało rozpoczęte, w milisekundach. Jeśli zadanie jeszcze się nie rozpoczęło, to pole będzie miało wartość 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Znacznik czasu, kiedy zadanie zostało utworzone, w milisekundach.

  • Name
    expires_at
    Type
    timestamp
    Description

    Znacznik czasu, kiedy wynik zadania wygaśnie, w milisekundach.

  • Name
    finished_at
    Type
    timestamp
    Description

    Znacznik czasu, kiedy zadanie zostało zakończone, w milisekundach. Jeśli zadanie nie jest jeszcze zakończone, to pole będzie miało wartość 0.

  • Name
    status
    Type
    string
    Description

    Status zadania. Możliwe wartości to PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Tablica obiektów z URL tekstur, które zostały wygenerowane w ramach zadania. Zwykle zawiera tylko jeden obiekt URL tekstury. Każdy URL tekstury ma następujące właściwości:

    • Name
      base_color
      Type
      string
      Description

      Pobieralny URL do obrazu mapy koloru bazowego.

    • Name
      metallic
      Type
      string
      Description

      Pobieralny URL do obrazu mapy metaliczności.

    • Name
      normal
      Type
      string
      Description

      Pobieralny URL do obrazu mapy normalnych.

    • Name
      roughness
      Type
      string
      Description

      Pobieralny URL do obrazu mapy chropowatości.

    • Name
      emission
      Type
      string
      Description

      Pobieralny URL do obrazu mapy emisji.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Liczba poprzedzających zadań.

  • Name
    task_error
    Type
    object
    Description

    Szczegóły błędu dla nieudanych zadań. Zobacz Błędy dla pełnej referencji obiektu task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Liczba kredytów zużytych przez to zadanie. Obecne, gdy status zadania to PENDING, IN_PROGRESS lub SUCCEEDED. Zwraca 0 dla zadań FAILED (kredyty są zwracane w przypadku niepowodzenia).

Przykładowy Obiekt Zadania Wiele obrazów na 3D

{
  "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,
}