API Testo in 3D

L'API Testo in 3D è una funzionalità che ti permette di integrare le funzionalità di Testo in 3D di Meshy nella tua applicazione. In questa sezione troverai tutte le informazioni necessarie per iniziare a usare questa API.

Testo in 3D utilizza un flusso di lavoro in due fasi. Innanzitutto, crea un'attività di preview (mode: "preview") per generare una mesh 3D senza texture, in modo da poter valutare la forma. Successivamente, passa l'ID dell'attività di preview completata a un'attività di refine (mode: "refine") per applicare la texture alla mesh. Entrambi i passaggi condividono lo stesso endpoint.


POST/openapi/v2/text-to-3d

Create a Text to 3D Preview Task

Questo endpoint crea un task di anteprima Testo in 3D, che genera una mesh 3D non texturizzata (sola geometria) a partire da un prompt testuale. Questo è il primo passo del flusso di lavoro in due fasi. Una volta completata con successo l'anteprima, usa l'ID del task restituito per creare un task refine per la texturizzazione. Fai riferimento a L'oggetto Task Testo in 3D per lo schema completo della risposta.

Parametri

  • Name
    mode
    Type
    string
    Obbligatorio
    Description

    Questo campo deve essere impostato su "preview" quando si crea un task di anteprima.

  • Name
    prompt
    Type
    string
    Obbligatorio
    Description

    Descrivi che tipo di oggetto è il modello 3D. Massimo 800 caratteri.

  • Name
    model_type
    Type
    string
    predefinito standard
    Description

    Specifica il tipo di generazione della mesh 3D.

    Valori disponibili:

    • standard: Generazione di mesh 3D standard ad alto dettaglio.
    • smart-topology: Scegli il modello Smart Topology con ai_model (meshy-t2).
    • lowpoly (deprecato): Genera una mesh low-poly ottimizzata per poligoni più puliti. Ti consigliamo di usare invece smart-topology.
  • Name
    ai_model
    Type
    string
    predefinito latest
    Description

    ID del modello da utilizzare. I valori disponibili dipendono da model_type.

    Generazione standard (model_type: standard):

    • meshy-6-lite, meshy-6, meshy-7.1, latest (Meshy 7.1)
    • meshy-7 (deprecato): usa meshy-7.1 al suo posto.

    Generazione Smart Topology (model_type: smart-topology):

    • meshy-t2 (predefinito): il modello Smart Topology — topology più pulita, parti separate nativamente, output triangolare e un numero di facce impostabile con target_polycount.
  • Name
    geometry_resolution
    Type
    string
    predefinito standard
    Description

    Passaggio di generazione della geometria. 2k esegue il passaggio Ultra a 2048³; 4k lo esegue a 4096³ per il massimo dettaglio di superficie.

    Valori disponibili: standard, 2k, 4k

  • Name
    ultra_mode
    Type
    boolean
    deprecato
    predefinito false
    Description

    Usa geometry_resolution al suo posto. ultra_mode: true equivale a geometry_resolution: "2k".

  • Name
    should_remesh
    Type
    boolean
    predefinito false (Meshy 6 and Meshy 7 models), true (others)
    Description

    Controlla se abilitare la fase di remesh. Per il modello con la qualità più alta, ti consigliamo di impostare should_remesh su false.

Si applica solo quando should_remesh = true
  • Name
    topology
    Type
    string
    predefinito triangle
    Description

    Specifica la topology del modello generato.

    Valori disponibili:

    • quad: Genera una mesh a dominanza di quadrilateri.
    • triangle: Genera una mesh triangolare decimata.
  • Name
    decimation_mode
    Type
    integer
    Description

    Abilita la decimazione adattiva impostando un livello di conteggio poligoni. Se impostato, target_polycount viene ignorato.

    Valori disponibili:

    • 1: Adattivo — conteggio poligoni ultra.
    • 2: Adattivo — conteggio poligoni alto.
    • 3: Adattivo — conteggio poligoni medio.
    • 4: Adattivo — conteggio poligoni basso.
  • Name
    target_polycount
    Type
    integer
    Description

    Numero target di poligoni (facce) nell'output. Il conteggio effettivo può discostarsi dal target a seconda della geometria.

    target_polycount ha effetto in due casi indipendenti:

    • Remesh — con should_remesh: true su un modello standard. La mesh viene rieseguita in remesh (decimata) approssimativamente a questo conteggio. Intervallo da 100 a 300.000, predefinito 30.000. Se decimation_mode è impostato, ha la priorità e target_polycount viene ignorato.
    • Smart Topology — con model_type: smart-topology e ai_model: meshy-t2. Il modello viene generato direttamente con questo conteggio di facce; non viene eseguito alcun remesh e should_remesh non è richiesto. Intervallo da 100 a 15.000, predefinito 4.000.
  • Name
    symmetry_mode
    Type
    string
    deprecato
    predefinito auto
    Description

    Deprecato. Questo parametro non influisce più sull'output.

    Il campo symmetry_mode controlla il comportamento della simmetria durante il processo di generazione del modello.

    I valori validi sono:

    • off: Disabilita la simmetria.
    • auto: Determina e applica automaticamente la simmetria in base alla geometria di input.
    • on: Impone la simmetria durante la generazione.
  • Name
    pose_mode
    Type
    string
    predefinito ""
    Description

    Specifica il pose_mode per il modello generato.

    Valori disponibili:

    • a-pose: Genera il modello in posa A.
    • t-pose: Genera il modello in posa T.
    • "" (stringa vuota): Nessuna posa specifica applicata.
  • Name
    is_a_t_pose
    Type
    boolean
    deprecato
    predefinito false
    Description

    Usa pose_mode al suo posto. Indica se generare il modello in posa A/T.

  • Name
    art_style
    Type
    string
    deprecato
    predefinito realistic
    Description

    Non supportato da Meshy-6. Le richieste che usano Meshy-6 ignoreranno art_style, e alcune combinazioni potrebbero causare errori. Valori disponibili: realistic, sculpture.

  • Name
    moderation
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il contenuto in input verrà automaticamente controllato per individuare potenziali contenuti dannosi. Se viene rilevato contenuto dannoso, il task non procederà alla generazione.

    Il testo di prompt verrà controllato.

  • Name
    target_formats
    Type
    string[]
    Description

    Specifica quali formati di file 3D includere nell'output. Verranno generati e restituiti solo i formati richiesti, il che può ridurre il tempo di completamento del task. Se omesso, vengono inclusi tutti i formati supportati.

    Valori disponibili: glb, obj, fbx, stl, usdz, 3mf

  • Name
    alpha_thumbnail
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il task genera inoltre una versione con sfondo trasparente (RGBA) dell'anteprima e la restituisce come alpha_thumbnail_url nella risposta GET. Il campo esistente thumbnail_url rimane invariato.

  • Name
    auto_size
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il servizio usa la visione AI per stimare automaticamente l'altezza reale dell'oggetto e ridimensionare il modello di conseguenza. L'origine sarà impostata su bottom per impostazione predefinita, a meno che origin_at non venga impostato esplicitamente.

Si applica solo quando auto_size = true
  • Name
    origin_at
    Type
    string
    predefinito bottom
    Description

    Posizione dell'origine quando auto_size è abilitato.

    Valori disponibili: bottom, center.

Valori restituiti

La proprietà result della risposta contiene l'id del task appena creato per Testo in 3D.

Modalità di errore

  • Name
    400 - Bad Request
    Description

    La richiesta non era accettabile. Cause comuni:

    • Parametro mancante: Manca un parametro obbligatorio (ad es. prompt, mode).
    • Parametro non valido: art_style non è uno dei valori consentiti.
    • Prompt troppo lungo: Il prompt supera il limite di caratteri.
    • Modello non supportato per low poly: ai_model: "meshy-6-lite" non supporta model_type: "lowpoly".
    • Modello non supportato per Ultra: geometry_resolution richiede meshy-7.1 o latest.
  • Name
    401 - Unauthorized
    Description

    Autenticazione fallita. Controlla la tua chiave API.

  • Name
    402 - Payment Required
    Description

    Crediti insufficienti per eseguire questo task.

  • Name
    429 - Too Many Requests
    Description

    Hai superato il tuo limite di frequenza.

Request

POST
/openapi/v2/text-to-3d
# Simple preview with required params only
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "preview",
  "prompt": "a monster mask"
}'

# Preview with Ultra 4K geometry, remesh and A-pose
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "preview",
  "prompt": "a futuristic robot warrior",
  "ai_model": "meshy-7.1",
  "geometry_resolution": "4k",
  "should_remesh": true,
  "target_polycount": 100000,
  "pose_mode": "a-pose",
  "target_formats": ["glb"]
}'

Response

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

POST/openapi/v2/text-to-3d

Creare un task Text to 3D Refine

Questo endpoint crea un task Text to 3D refine, che applica la texture a una mesh di preview completata. Devi fornire il preview_task_id di un task di preview riuscito. Questo è il secondo passaggio del flusso di lavoro in due fasi.

Parametri

  • Name
    mode
    Type
    string
    Obbligatorio
    Description

    Questo campo deve essere impostato su "refine" quando si crea un task refine.

  • Name
    preview_task_id
    Type
    string
    Obbligatorio
    Description

    L'id del task di preview corrispondente.

    Lo stato del task di preview specificato deve essere SUCCEEDED.

  • Name
    enable_pbr
    Type
    boolean
    predefinito false
    Description

    Genera mappe PBR (metallic, roughness, normal) in aggiunta al colore base. Viene inclusa anche una mappa di emissione quando ai_model è meshy-6, tranne che con texture_resolution: 8k (in questo caso non viene prodotta alcuna mappa di emissione). meshy-6-lite, meshy-7.1 e latest non producono una mappa di emissione.

  • Name
    texture_resolution
    Type
    string
    predefinito 2k
    Description

    Risoluzione della texture del colore base. Una tra 2k (2048×2048), 4k (4096×4096) o 8k (8192×8192). Risoluzioni più elevate catturano maggiori dettagli della superficie. Si applica solo al mode refine.

  • Name
    hd_texture
    Type
    boolean
    deprecato
    predefinito false
    Description

    Usa texture_resolution invece di questo — equivale a texture_resolution: "4k". Quando entrambi sono impostati, texture_resolution ha la precedenza.

  • Name
    texture_prompt
    Type
    string
    Description

    Fornisce un prompt testuale aggiuntivo per guidare il processo di texturing. Massimo 800 caratteri.

  • Name
    texture_image_url
    Type
    string
    Description

    Fornisce un'immagine 2D per guidare il processo di texturing. Attualmente supportiamo i formati .jpg, .jpeg e .png.

    Ci sono due modi per fornire l'immagine:

    • URL pubblicamente accessibile: un URL accessibile dalla rete internet pubblica
    • Data URI: un data URI dell'immagine codificato in base64. Esempio di data URI: data:image/jpeg;base64,<i tuoi dati immagine codificati in base64>
  • Name
    ai_model
    Type
    string
    predefinito inherited from the preview task
    Description

    ID del modello da usare per il refine.

    Valori disponibili:

    • meshy-6-lite, meshy-6, meshy-7.1, latest (Meshy 7.1)
    • meshy-7 (deprecato): usa meshy-7.1 invece.

    Omettendo questo parametro viene ereditato il modello usato dal task di preview, il che mantiene una preview e il suo refine sullo stesso modello dall'inizio alla fine. Passa un valore esplicito per sovrascrivere questa eredità.

  • Name
    moderation
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il contenuto in input verrà automaticamente controllato per individuare contenuti potenzialmente dannosi. Se viene rilevato un contenuto dannoso, il task non procederà alla generazione.

    Verranno controllati sia il testo di texture_prompt che l'immagine di texture_image_url.

  • Name
    remove_lighting
    Type
    boolean
    predefinito true
    Description

    Rimuove le luci e le ombre dalla texture del colore base, producendo un risultato più pulito che funziona meglio con impostazioni di illuminazione personalizzate.

  • Name
    target_formats
    Type
    string[]
    Description

    Specifica quali formati di file 3D includere nell'output. Verranno generati e restituiti solo i formati richiesti, il che può ridurre il tempo di completamento del task. Se omesso, vengono inclusi tutti i formati supportati.

    Valori disponibili: glb, obj, fbx, stl, usdz, 3mf

  • Name
    alpha_thumbnail
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il task renderizza inoltre una versione con sfondo trasparente (RGBA) della preview e la restituisce come alpha_thumbnail_url nella risposta GET. Il campo thumbnail_url esistente resta invariato.

  • Name
    auto_size
    Type
    boolean
    predefinito false
    Description

    Quando impostato su true, il servizio usa la visione artificiale per stimare automaticamente l'altezza reale dell'oggetto e ridimensionare il modello di conseguenza. L'origine sarà impostata per impostazione predefinita su bottom a meno che origin_at non sia esplicitamente impostato.

Si applica solo quando auto_size = true
  • Name
    origin_at
    Type
    string
    predefinito bottom
    Description

    Posizione dell'origine quando auto_size è abilitato.

    Valori disponibili: bottom, center.

Restituisce

La proprietà result della risposta contiene l'id del task del nuovo task Text to 3D creato.

Modalità di errore

  • Name
    400 - Bad Request
    Description

    La richiesta non è stata accettata. Cause comuni:

    • ID del task non valido: il preview_task_id non è valido o non esiste.
    • Task non pronto: il task di preview non è ancora andato a buon fine.
    • Modello incompatibile: il modello AI del task di preview è incompatibile con il modello refine richiesto.
  • Name
    401 - Unauthorized
    Description

    Autenticazione non riuscita. Controlla la tua chiave API.

  • Name
    402 - Payment Required
    Description

    Crediti insufficienti per eseguire questo task.

  • Name
    404 - Not Found
    Description

    Il task di preview specificato da preview_task_id non è stato trovato.

  • Name
    429 - Too Many Requests
    Description

    Hai superato il tuo limite di frequenza.

Request

POST
/openapi/v2/text-to-3d
# Basic refine task
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "refine",
  "preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "enable_pbr": true
}'

# Refine with auto-size and GLB format
curl https://api.meshy.ai/openapi/v2/text-to-3d \
  -H 'Authorization: Bearer ${YOUR_API_KEY}' \
  -H 'Content-Type: application/json' \
  -d '{
  "mode": "refine",
  "preview_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "target_formats": ["glb"],
  "auto_size": true
}'

Response

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

GET/openapi/v2/text-to-3d/:id

Recupera un'attività Testo in 3D

Questo endpoint consente di recuperare un'attività Testo in 3D dato un id di attività valido. Consulta L'oggetto attività Testo in 3D per vedere quali proprietà sono incluse nell'oggetto attività Testo in 3D.

Questo endpoint funziona sia per le attività preview che per quelle refine.

Parametri

  • Name
    id
    Type
    path
    Description

    Identificatore univoco dell'attività Testo in 3D da recuperare.

Restituisce

La risposta contiene l'oggetto attività Testo in 3D. Consulta la sezione L'oggetto attività Testo in 3D per i dettagli.

Esempi

ModeModello di esempio
PreviewPreview model
RefineRefined model

Request

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

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "text-to-3d-preview",
  "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=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?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=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "prompt": "a monster mask",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "finished_at": 1692771669037,
  "status": "SUCCEEDED",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
    }
  ],
  "preceding_tasks": 0,
  "task_error": {

    "message": ""

  },

  "consumed_credits": 20
}

DELETE/openapi/v2/text-to-3d/:id

Elimina un task Testo in 3D

Questo endpoint elimina permanentemente un task Testo in 3D, inclusi tutti i modelli e i dati associati. Questa azione è irreversibile.

Parametri del percorso

  • Name
    id
    Type
    path
    Description

    L'ID del task Testo in 3D da eliminare.

Stato del task

Un task ancora in stato PENDING viene eliminato e i crediti consumati al momento della creazione vengono rimborsati.

Un task già in stato IN_PROGRESS non può essere eliminato: la richiesta viene rifiutata con 409 Conflict e il task continua a essere eseguito. I crediti per un task che il worker ha già iniziato a elaborare non sono rimborsabili, quindi eliminarlo a metà esecuzione ti farebbe perdere sia i crediti che il risultato. Attendi che raggiunga lo stato SUCCEEDED, FAILED o CANCELED, quindi eliminalo.

Un task in uno stato finale (SUCCEEDED, FAILED o CANCELED) viene eliminato senza rimborso.

Restituisce

Restituisce 200 OK in caso di successo, oppure 409 Conflict quando il task è in stato IN_PROGRESS.

Request

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

Response

// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
  "message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}

GET/openapi/v2/text-to-3d

List Text to 3D Tasks

Questo endpoint consente di recuperare un elenco di attività Testo in 3D.

Parametri

  • Name
    page_num
    Type
    integer
    predefinito 1
    Description

    Numero di pagina per la paginazione.

  • Name
    page_size
    Type
    integer
    predefinito 10
    Description

    Limite dimensione pagina. Il massimo consentito è 100 elementi.

  • Name
    sort_by
    Type
    string
    Description

    Campo per cui ordinare.

    Valori disponibili:

    • +created_at: Ordina per data di creazione in ordine crescente.
    • -created_at: Ordina per data di creazione in ordine decrescente.

Restituisce

Restituisce un elenco paginato di Oggetti Task Testo in 3D.

Request

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

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "text-to-3d-preview",
    "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=***",
      "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "prompt": "a monster mask",
    "progress": 100,
    "started_at": 1692771667037,
    "created_at": 1692771650657,
    "finished_at": 1692771669037,
    "status": "SUCCEEDED",
    "texture_urls": [
      {
        "base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***"
      }
    ],
    "preceding_tasks": 0,
    "task_error": {

      "message": ""

    },

    "consumed_credits": 20
  }
]

GET/openapi/v2/text-to-3d/:id/stream

Trasmetti in streaming un'attività di Testo in 3D

Questo endpoint trasmette in streaming gli aggiornamenti in tempo reale di un'attività di Testo in 3D utilizzando Server-Sent Events (SSE).

Parametri

  • Name
    id
    Type
    path
    Description

    Identificatore univoco dell'attività di Testo in 3D da trasmettere in streaming.

Valori restituiti

Restituisce uno stream di oggetti attività Testo in 3D come Server-Sent Events.

Per le attività PENDING o IN_PROGRESS, lo stream di risposta includerà solo i campi necessari progress e status.

Request

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

Response Stream

// 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",
  "progress": 50,
  "status": "IN_PROGRESS"
}

event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "text-to-3d-preview",
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1692771650657,
"started_at": 1692771667037,
"finished_at": 1692771669037,
"model_urls": {
  "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
},
"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": 20
}

L'oggetto Text to 3D Task

L'oggetto Text to 3D Task è un'unità di lavoro che Meshy monitora per generare un modello 3D a partire da un input di tipo testo. Ci sono due fasi dell'API Testo in 3D, preview e refine. La fase preview serve a generare un modello 3D composto solo dalla mesh, mentre la fase refine serve a generare un modello 3D con texture basato sul risultato della fase preview.

L'oggetto ha le seguenti proprietà:

Proprietà

  • Name
    id
    Type
    string
    Description

    Identificatore univoco del task. Anche se utilizziamo un UUID k-sortable per gli id dei task come dettaglio implementativo, non dovresti fare nessuna ipotesi sul formato dell'id.

  • Name
    type
    Type
    string
    Description

    Tipo del task Testo in 3D. I valori possibili sono text-to-3d-preview per i task della fase preview e text-to-3d-refine per i task della fase refine.

  • Name
    model_urls
    Type
    object
    Description

    URL scaricabile del file del modello 3D con texture generato da Meshy. La proprietà per un formato verrà omessa se il formato non viene generato, invece di restituire una stringa vuota.

    • Name
      glb
      Type
      string
      Description

      URL scaricabile del file GLB.

    • Name
      fbx
      Type
      string
      Description

      URL scaricabile del file FBX.

    • Name
      usdz
      Type
      string
      Description

      URL scaricabile del file USDZ.

    • Name
      obj
      Type
      string
      Description

      URL scaricabile del file OBJ.

    • Name
      mtl
      Type
      string
      Description

      URL scaricabile del file MTL.

    • Name
      stl
      Type
      string
      Description

      URL scaricabile del file STL.

    • Name
      3mf
      Type
      string
      Description

      URL scaricabile del file 3MF. Presente solo quando 3mf è stato richiesto tramite target_formats.

  • Name
    prompt
    Type
    string
    Description

    Questo è il prompt non modificato che è stato utilizzato per creare il task.

  • Name
    negative_prompt
    Type
    string
    deprecato
    Description

    Mantenuto per retrocompatibilità. Questo campo non ha alcun impatto funzionale sui modelli generati.

  • Name
    art_style
    Type
    string
    deprecato
    Description

    L'art_style non modificato che è stato utilizzato per creare il task di preview. Non supportato da Meshy-6.

  • Name
    texture_richness
    Type
    string
    deprecato
    Description

    Mantenuto per retrocompatibilità. Questo campo non ha alcun impatto funzionale sui modelli generati.

  • Name
    texture_prompt
    Type
    string
    Description

    Prompt testuale aggiuntivo fornito per guidare il processo di texturing durante la fase refine.

  • Name
    ultra_mode
    Type
    boolean
    deprecato
    Description

    Deprecato; leggi invece geometry_resolution.

  • Name
    geometry_resolution
    Type
    string
    Description

    Il livello Ultra con cui è stato eseguito il task di preview (2k o 4k); omesso per standard.

  • Name
    texture_image_url
    Type
    string
    Description

    URL scaricabile dell'immagine texture che è stata utilizzata per guidare il processo di texturing.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL scaricabile dell'immagine miniatura del file del modello.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL scaricabile di una versione con sfondo trasparente (RGBA) di thumbnail_url. Presente solo quando il task è stato creato con alpha_thumbnail: true e l'anteprima trasparente è stata renderizzata con successo; in caso contrario questo campo viene omesso.

  • Name
    video_url
    Type
    string
    deprecato
    Description

    URL scaricabile del video di anteprima. Verrà rimosso in una futura release.

  • Name
    progress
    Type
    integer
    Description

    Progresso del task. Se il task non è ancora iniziato, questa proprietà sarà 0. Una volta che il task è riuscito, diventerà 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Timestamp di quando il task è stato avviato, in millisecondi. Se il task non è ancora iniziato, questa proprietà sarà 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Timestamp di quando il task è stato creato, in millisecondi.

  • Name
    finished_at
    Type
    timestamp
    Description

    Timestamp di quando il task è stato completato, in millisecondi. Se il task non è ancora terminato, questa proprietà sarà 0.

  • Name
    status
    Type
    string
    Description

    Stato del task. I valori possibili sono uno tra PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Un array di oggetti URL di texture generati dal task. Normalmente contiene solo un oggetto URL di texture. Ogni URL di texture ha le seguenti proprietà:

    • Name
      base_color
      Type
      string
      Description

      URL scaricabile dell'immagine della mappa colore base.

    • Name
      metallic
      Type
      string
      Description

      URL scaricabile dell'immagine della mappa metallica.

    • Name
      normal
      Type
      string
      Description

      URL scaricabile dell'immagine della normal map.

    • Name
      roughness
      Type
      string
      Description

      URL scaricabile dell'immagine della mappa di rugosità.

    • Name
      emission
      Type
      string
      Description

      URL scaricabile dell'immagine della mappa di emissione.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Il numero di task precedenti.

  • Name
    task_error
    Type
    object
    Description

    Dettagli dell'errore per i task non riusciti. Consulta Errori per il riferimento completo all'oggetto task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Il numero di crediti consumati da questo task. Presente quando lo stato del task è PENDING, IN_PROGRESS o SUCCEEDED. Restituisce 0 per i task FAILED (i crediti vengono rimborsati in caso di fallimento).

Example Text to 3D Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "text-to-3d-preview",
  "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=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
  },
  "prompt": "a monster mask",
  "texture_prompt": "green slimy skin with scales and warts",
  "texture_image_url": "",
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "progress": 100,
  "started_at": 1692771667037,
  "created_at": 1692771650657,
  "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": 20
}