API Gambar ke 3D

API Gambar ke 3D adalah fitur yang memungkinkan Anda untuk mengintegrasikan kemampuan Gambar ke 3D dari Meshy ke dalam aplikasi Anda sendiri. Di bagian ini, Anda akan menemukan semua informasi yang Anda butuhkan untuk memulai dengan API ini.


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

Buat Tugas Gambar ke 3D

endpoint ini memungkinkan Anda untuk membuat tugas Gambar ke 3D yang baru. Lihat Objek Tugas Gambar ke 3D untuk melihat properti apa saja yang termasuk dengan objek tugas Gambar ke 3D.

Parameter

  • Name
    input_task_id
    Type
    string
    Wajib
    Description

    ID dari tugas pembuatan gambar yang sudah selesai yang hasilnya harus digunakan sebagai gambar input. Tugas ini harus salah satu dari tugas berikut: Teks ke Gambar atau Gambar ke Gambar. Selain itu, tugas ini harus dijalankan melalui API, memiliki status SUCCEEDED, dan menghasilkan tepat satu gambar.

  • Name
    image_url
    Type
    string
    Wajib
    Description

    Berikan gambar untuk digunakan Meshy dalam pembuatan model. Kami saat ini mendukung format .jpg, .jpeg, dan .png.

    Ada dua cara untuk menyediakan gambar:

    • URL yang dapat diakses publik: URL yang dapat diakses dari internet publik.
    • Data URI: Data URI yang di-encode dengan base64 dari gambar. Contoh dari data URI: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    model_type
    Type
    string
    default standard
    Description

    Tentukan jenis pembuatan mesh 3D.

    Nilai yang tersedia:

    • standard: Pembuatan mesh 3D dengan detail tinggi yang biasa.
    • smart-topology: Pilih model Smart Topology dengan ai_model (meshy-t1 atau meshy-t2).
    • lowpoly (usang): Menghasilkan mesh low-poly yang dioptimalkan untuk poligon yang lebih bersih. Kami merekomendasikan menggunakan smart-topology sebagai gantinya.
  • Name
    ai_model
    Type
    string
    default latest
    Description

    ID dari model yang akan digunakan. Nilai yang tersedia tergantung pada model_type.

    Pembuatan standar (model_type: standard):

    • meshy-5, meshy-6, meshy-7, latest (Meshy 7)

    Pembuatan Smart Topology (model_type: smart-topology):

    • meshy-t2 (default, disarankan): model Smart Topology — topology yang lebih bersih, bagian yang terpisah secara native, output segitiga, dan jumlah wajah yang dapat Anda tentukan dengan target_polycount.
    • meshy-t1: model low-poly lama; tidak mendukung pengaturan jumlah wajah dengan target_polycount.
  • Name
    ultra_mode
    Type
    boolean
    default false
    Description

    Mengaktifkan pembuatan Ultra untuk geometri dengan fidelitas lebih tinggi dan detail permukaan yang lebih halus.

  • Name
    should_texture
    Type
    boolean
    default true
    Description

    Menentukan apakah tekstur akan dihasilkan. Mengaturnya ke false akan melewatkan fase tekstur, menyediakan mesh tanpa tekstur.

Hanya berlaku ketika should_texture = true
  • Name
    enable_pbr
    Type
    boolean
    default false
    Description

    Hasilkan PBR Maps (metallic, roughness, normal) selain warna dasar. Peta emisi juga disertakan ketika ai_model adalah meshy-6, kecuali pada texture_resolution: 8k. meshy-7 dan latest tidak menghasilkan peta emisi.

  • Name
    texture_resolution
    Type
    string
    default 2k
    Description

    Resolusi tekstur warna dasar. Salah satu dari 2k (2048×2048), 4k (4096×4096), atau 8k (8192×8192). Resolusi lebih tinggi menangkap lebih banyak detail permukaan.

  • Name
    hd_texture
    Type
    boolean
    usang
    default false
    Description

    Gunakan texture_resolution sebagai gantinya — setara dengan texture_resolution: "4k". Ketika keduanya diatur, texture_resolution memiliki prioritas.

  • Name
    texture_prompt
    Type
    string
    Description

    Berikan prompt teks untuk membimbing proses tekstur. Maksimum 600 karakter.

  • Name
    texture_image_url
    Type
    string
    Description

    Berikan gambar 2D untuk membimbing proses tekstur. Kami saat ini mendukung format .jpg, .jpeg, dan .png.

    Ada dua cara untuk menyediakan gambar:

    • URL yang dapat diakses publik: URL yang dapat diakses dari internet publik
    • Data URI: URI data yang di-encode base64 dari gambar. Contoh dari URI data: data:image/jpeg;base64,<your base64-encoded image data>
  • Name
    should_remesh
    Type
    boolean
    default false (meshy-6, meshy-7), true (lainnya)
    Description

    Mengontrol apakah akan mengaktifkan fase remesh. Untuk model dengan kualitas tertinggi, kami merekomendasikan mengatur should_remesh ke false.

Hanya berlaku ketika should_remesh = true
  • Name
    topology
    Type
    string
    default triangle
    Description

    Tentukan topology dari model yang dihasilkan.

    Nilai yang tersedia:

    • quad: Menghasilkan mesh dominan quad.
    • triangle: Menghasilkan mesh segitiga yang tereduksi.
  • Name
    decimation_mode
    Type
    integer
    Description

    Mengaktifkan decimation adaptif dengan mengatur tingkat jumlah poligon. Ketika diatur, target_polycount diabaikan.

    Nilai yang tersedia:

    • 1: Adaptif — jumlah poligon yang ultra tinggi.
    • 2: Adaptif — jumlah poligon yang tinggi.
    • 3: Adaptif — jumlah poligon yang sedang.
    • 4: Adaptif — jumlah poligon yang rendah.
  • Name
    save_pre_remeshed_model
    Type
    boolean
    default false
    Description

    Ketika diatur ke true, Meshy juga menyimpan file GLB tambahan sebelum fase remesh selesai.

  • Name
    target_polycount
    Type
    integer
    Description

    Jumlah target poligon (wajah) dalam output. Hitungan sebenarnya mungkin menyimpang dari target tergantung pada geometri.

    target_polycount berlaku dalam dua kasus independen:

    • Remesh — dengan should_remesh: true pada model standard. Mesh akan di-remesh (di-decimate) sampai mendekati jumlah ini. Rentang 100 hingga 300.000, default 30.000. Jika decimation_mode diatur, ia memiliki prioritas dan target_polycount diabaikan.
    • Smart Topology — dengan model_type: smart-topology dan ai_model: meshy-t2. Model akan dihasilkan langsung pada jumlah wajah ini; tidak ada remesh yang dijalankan dan should_remesh tidak diperlukan. Rentang 100 hingga 15.000, default 4.000.
  • Name
    symmetry_mode
    Type
    string
    usang
    default auto
    Description

    Usang. Parameter ini tidak lagi mempengaruhi output.

    Bidang symmetry_mode mengontrol perilaku simetri selama proses pembuatan model.

    Nilai yang valid adalah:

    • off: Menonaktifkan simetri.
    • auto: Secara otomatis menentukan dan menerapkan simetri berdasarkan geometri input.
    • on: Memaksa penerapan simetri selama pembuatan.
  • Name
    pose_mode
    Type
    string
    default ""
    Description

    Tentukan mode pose untuk model yang dihasilkan.

    Nilai yang tersedia:

    • a-pose: Menghasilkan model dalam pose A.
    • t-pose: Menghasilkan model dalam pose T.
    • "" (string kosong): Tidak ada pose khusus yang diterapkan.
  • Name
    is_a_t_pose
    Type
    boolean
    usang
    default false
    Description

    Gunakan pose_mode sebagai gantinya. Apakah akan menghasilkan model dalam pose A/T.

  • Name
    image_enhancement
    Type
    boolean
    default true
    Description

    Mengoptimalkan gambar input untuk hasil yang lebih baik. Ditetapkan ke false untuk mempertahankan tampilan asli gambar input tanpa adanya pemrosesan gaya.

  • Name
    remove_lighting
    Type
    boolean
    default true
    Description

    Menghilangkan highlight dan bayangan dari tekstur warna dasar, menghasilkan hasil yang lebih bersih yang bekerja lebih baik di bawah pengaturan pencahayaan khusus.

  • Name
    moderation
    Type
    boolean
    default false
    Description

    Ketika diatur ke true, konten input akan otomatis disaring untuk konten yang berpotensi berbahaya. Jika konten berbahaya terdeteksi, tugas tidak akan melanjutkan ke tahap pembuatan.

    Konten dari input image_url, texture_image_url, dan texture_prompt akan disaring.

  • Name
    target_formats
    Type
    string[]
    Description

    Menentukan format file 3D mana yang akan disertakan dalam output. Hanya format yang diminta yang akan dihasilkan dan dikembalikan, yang dapat mengurangi waktu penyelesaian tugas. Jika dihilangkan, semua format yang didukung akan disertakan.

    Nilai yang tersedia: glb, obj, fbx, stl, usdz, 3mf

  • Name
    auto_size
    Type
    boolean
    default false
    Description

    Ketika diatur ke true, layanan menggunakan visi AI untuk secara otomatis memperkirakan tinggi riil dari objek dan mengubah ukuran model sesuai. Titik asal akan diatur ke bottom kecuali origin_at secara eksplisit diatur.

  • Name
    alpha_thumbnail
    Type
    boolean
    default false
    Description

    Ketika diatur ke true, tugas juga merender versi latar belakang transparan (RGBA) dari pratinjau dan mengembalikannya sebagai alpha_thumbnail_url dalam respons GET. Bidang thumbnail_url yang ada tidak berubah.

  • Name
    multi_view_thumbnails
    Type
    boolean
    default false
    Description

    Ketika diatur ke true, tugas juga merender empat thumbnail tampilan kardinal (depan, kanan, belakang, kiri) dan mengembalikannya di bawah thumbnail_urls dalam respons GET. Bidang thumbnail_url yang ada tidak berubah dan terus menunjuk ke tampilan depan, jadi klien yang ada tidak terpengaruh.

Hanya berlaku ketika auto_size = true
  • Name
    origin_at
    Type
    string
    default bottom
    Description

    Posisi titik asal ketika auto_size diaktifkan.

    Nilai yang tersedia: bottom, center.

Returns

Properti result dari respons berisi id tugas dari tugas Gambar ke 3D yang baru dibuat.

Failure Modes

  • Name
    400 - Bad Request
    Description

    Permintaan tidak dapat diterima. Penyebab umum:

    • Parameter yang hilang: Salah satu dari image_url atau input_task_id harus disediakan.
    • Tugas input yang tidak valid: input_task_id harus merujuk ke tugas Teks ke Gambar atau Gambar ke Gambar SUCCEEDED yang menghasilkan tepat satu gambar.
    • Format gambar yang tidak valid: image_url yang diberikan bukan format yang didukung (.jpg, .jpeg, .png).
    • URL yang tidak dapat dijangkau: image_url tidak dapat diunduh (404 atau timeout).
    • Data URI yang tidak valid: String base64 rusak.
    • Kombinasi parameter yang tidak valid: enable_pbr hanya didukung ketika should_texture bernilai true.
  • Name
    401 - Unauthorized
    Description

    Autentikasi gagal. Harap periksa kunci API Anda.

  • Name
    402 - Payment Required
    Description

    Kredit tidak mencukupi untuk melakukan tugas ini.

  • Name
    429 - Too Many Requests
    Description

    Anda telah melampaui batas laju Anda.

Request

POST
/openapi/v1/image-to-3d
# Permintaan sederhana dengan parameter yang diperlukan
curl https://api.meshy.ai/openapi/v1/image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>"
  }'

# Dengan remesh, PBR, dan A-pose
curl https://api.meshy.ai/openapi/v1/image-to-3d \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>",
    "enable_pbr": true,
    "should_remesh": true,
    "target_polycount": 100000,
    "should_texture": true,
    "pose_mode": "a-pose",
    "target_formats": ["glb"]
  }'

Response

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

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

Ambil Tugas Gambar ke 3D

endpoint ini memungkinkan Anda untuk mengambil tugas Gambar ke 3D yang diberikan id tugas yang valid. Lihat Objek Tugas Gambar ke 3D untuk melihat properti apa saja yang termasuk dengan objek tugas Gambar ke 3D.

Parameter

  • Name
    id
    Type
    path
    Description

    Pengenal unik untuk tugas Gambar ke 3D yang akan diambil.

Returns

Respons berisi objek tugas Gambar ke 3D. Periksa bagian Objek Tugas Gambar ke 3D untuk detail.

Request

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

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "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/image-to-3d/:id

Hapus Tugas Gambar ke 3D

endpoint ini menghapus secara permanen tugas Gambar ke 3D, termasuk semua model dan data yang terkait. Tindakan ini tidak dapat dibatalkan.

Parameter Jalur

  • Name
    id
    Type
    path
    Description

    ID dari tugas Gambar ke 3D yang akan dihapus.

Returns

Mengembalikan 200 OK jika berhasil.

Request

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

Response

// Mengembalikan 200 Ok jika berhasil.

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

Daftar Tugas Gambar ke 3D

endpoint ini memungkinkan Anda untuk mengambil daftar tugas Gambar ke 3D.

Parameter

Atribut opsional

  • Name
    page_num
    Type
    integer
    Description

    Nomor halaman untuk paginasi. Dimulai dan default ke 1.

  • Name
    page_size
    Type
    integer
    Description

    Batas ukuran halaman. Default ke 10 item. Jumlah maksimum yang diizinkan adalah 50 item.

  • Name
    sort_by
    Type
    string
    Description

    Bidang untuk mengurutkan. Nilai yang tersedia:

    • +created_at: Urutkan berdasarkan waktu pembuatan dalam urutan menaik.
    • -created_at: Urutkan berdasarkan waktu pembuatan dalam urutan menurun.

Returns

Mengembalikan daftar paginasi Objek Tugas Gambar ke 3D.

Request

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

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "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/image-to-3d/:id/stream

Streaming Tugas Gambar ke 3D

endpoint ini streaming pembaruan secara real-time untuk tugas Gambar ke 3D menggunakan Server-Sent Events (SSE).

Parameter

  • Name
    id
    Type
    path
    Description

    Pengenal unik untuk tugas Gambar ke 3D yang akan di-streaming.

Returns

Mengembalikan arus Objek Tugas Gambar ke 3D sebagai Server-Sent Events.

Untuk tugas PENDING atau IN_PROGRESS, aliran respon hanya akan mencakup field progress dan status yang diperlukan.

Request

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

Response Stream

// Contoh kesalahan event
event: error
data: {
  "status_code": 404,
  "message": "Tugas tidak ditemukan"
}

// Contoh event pesan menggambarkan progress tugas.
// Untuk tugas PENDING atau IN_PROGRESS, aliran respons tidak akan menyertakan semua field.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "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
}

Objek Tugas Gambar ke 3D

Objek Tugas Gambar ke 3D adalah unit kerja yang dilacak oleh Meshy untuk menghasilkan model 3D dari input gambar. Objek ini memiliki properti berikut:

Properties

  • Name
    id
    Type
    string
    Description

    Pengenal unik untuk tugas. Meskipun kami menggunakan UUID yang dapat diurutkan k-secara unik untuk id tugas sebagai detail implementasi, Anda seharusnya tidak membuat asumsi tentang format id.

  • Name
    type
    Type
    string
    Description

    Jenis tugas Gambar ke 3D. Nilainya adalah image-to-3d.

  • Name
    model_urls
    Type
    object
    Description

    URL yang dapat diunduh untuk file model 3D bertekstur yang dihasilkan oleh Meshy. Properti untuk format akan dihilangkan jika format tidak dihasilkan daripada mengembalikan string kosong.

    • Name
      glb
      Type
      string
      Description

      URL yang dapat diunduh untuk file GLB.

    • Name
      fbx
      Type
      string
      Description

      URL yang dapat diunduh untuk file FBX.

    • Name
      obj
      Type
      string
      Description

      URL yang dapat diunduh untuk file OBJ.

    • Name
      usdz
      Type
      string
      Description

      URL yang dapat diunduh untuk file USDZ.

    • Name
      mtl
      Type
      string
      Description

      URL yang dapat diunduh untuk file MTL, dikembalikan bersamaan dengan ekspor OBJ ketika tekstur hadir.

    • Name
      stl
      Type
      string
      Description

      URL yang dapat diunduh untuk file STL.

    • Name
      3mf
      Type
      string
      Description

      URL yang dapat diunduh untuk file 3MF. Hanya ada ketika 3mf diminta melalui target_formats.

    • Name
      pre_remeshed_glb
      Type
      string
      Description

      URL yang dapat diunduh untuk output GLB asli sebelum remeshing.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL yang dapat diunduh untuk gambar thumbnail dari file model. Sama dengan thumbnail_urls.front ketika tersedia, disimpan untuk kompatibilitas ke belakang.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    URL yang dapat diunduh untuk versi latar belakang transparan (RGBA) dari thumbnail_url. Hanya ada ketika tugas dibuat dengan alpha_thumbnail: true dan pratinjau transparan berhasil dirender; jika tidak, field ini dihilangkan.

  • Name
    thumbnail_urls
    Type
    object
    Description

    URL yang dapat diunduh untuk empat thumbnail tampilan kardinal dari model 3D yang dihasilkan. Setiap nilai adalah URL yang ditandatangani ke PNG 512×512 yang dirender dengan bahan dan pencahayaan yang sama dengan thumbnail_url. Berguna untuk mem-preview model dari beberapa sudut dalam pipeline batch tanpa mengunduh GLB.

    • Name
      front
      Type
      string
      Description

      Tampilan depan, rotasi 0° di sekitar sumbu vertikal (cocok dengan thumbnail_url).

    • Name
      right
      Type
      string
      Description

      Tampilan kanan, rotasi 90°.

    • Name
      back
      Type
      string
      Description

      Tampilan belakang, rotasi 180°.

    • Name
      left
      Type
      string
      Description

      Tampilan kiri, rotasi 270°.

  • Name
    texture_prompt
    Type
    string
    Description

    Teks prompt yang digunakan untuk membimbing proses penetexturan.

  • Name
    texture_image_url
    Type
    string
    Description

    URL yang dapat diunduh untuk gambar tekstur yang digunakan untuk membimbing proses penetexturan.

  • Name
    ultra_mode
    Type
    boolean
    Description

    Mencerminkan nilai ultra_mode yang digunakan saat tugas dibuat. Hanya ada untuk tugas meshy-7 (atau latest) yang secara eksplisit mengatur ultra_mode; jika tidak, dihilangkan.

  • Name
    progress
    Type
    integer
    Description

    Progres dari tugas. Jika tugas belum dimulai, properti ini akan 0. Begitu tugas berhasil, ini akan menjadi 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Stempel waktu kapan tugas dimulai, dalam milidetik. Jika tugas belum dimulai, properti ini akan 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Stempel waktu kapan tugas dibuat, dalam milidetik.

  • Name
    expires_at
    Type
    timestamp
    Description

    Stempel waktu ketika hasil tugas habis, dalam milidetik.

  • Name
    finished_at
    Type
    timestamp
    Description

    Stempel waktu kapan tugas selesai, dalam milidetik. Jika tugas belum selesai, properti ini akan 0.

  • Name
    status
    Type
    string
    Description

    Status dari tugas. Nilai yang mungkin adalah salah satu dari PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Sebuah array objek URL tekstur yang dihasilkan dari tugas. Normalnya ini hanya berisi satu objek URL tekstur. Setiap URL tekstur memiliki properti berikut:

    • Name
      base_color
      Type
      string
      Description

      URL yang dapat diunduh ke gambar peta warna dasar.

    • Name
      metallic
      Type
      string
      Description

      URL yang dapat diunduh ke gambar peta metallic.

    • Name
      normal
      Type
      string
      Description

      URL yang dapat diunduh ke gambar peta normal.

    • Name
      roughness
      Type
      string
      Description

      URL yang dapat diunduh ke gambar peta roughness.

    • Name
      emission
      Type
      string
      Description

      URL yang dapat diunduh ke gambar peta emisi.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Jumlah tugas sebelumnya.

  • Name
    task_error
    Type
    object
    Description

    Detail kesalahan untuk tugas yang gagal. Lihat Kesalahan untuk referensi lengkap objek task_error.

  • Name
    consumed_credits
    Type
    integer
    Description

    Jumlah kredit yang dikonsumsi oleh tugas ini. Ada ketika status tugas adalah PENDING, IN_PROGRESS, atau SUCCEEDED. Mengembalikan 0 untuk tugas FAILED (kredit dikembalikan saat gagal).

Contoh Objek Tugas Gambar ke 3D

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "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": "",
  "texture_image_url": "",
  "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
}