API Retekstur ialah ciri yang membolehkan anda mengintegrasikan keupayaan retekstur AI Meshy ke dalam aplikasi anda sendiri. Dalam bahagian ini, anda akan menemui semua maklumat
yang anda perlukan untuk memulakan penggunaan API ini.
Endpoint ini membolehkan anda mencipta tugas Retekstur yang baharu. Rujuk
Objek Tugas Retekstur untuk melihat sifat-sifat
yang disertakan dengan objek tugas Retekstur.
Parameter
Hanya salah satu daripada input_task_id atau model_url yang diperlukan. Jika kedua-duanya disediakan, input_task_id diberi keutamaan.
Name
input_task_id
Type
string
Diperlukan
Description
ID tugas Imej ke 3D atau Teks ke 3D yang telah selesai yang ingin anda retekstur.
Tugas ini mestilah salah satu daripada tugas berikut: Teks ke 3D Preview, Teks ke 3D Refine, Imej ke 3D atau Remesh. Selain itu, ia mesti mempunyai status SUCCEEDED.
Name
model_url
Type
string
Diperlukan
Description
Berikan model 3D untuk Meshy tekstur. Format yang disokong: .glb, .gltf, .obj, .fbx, .stl.
Terdapat dua cara untuk menyediakan model tersebut:
URL yang boleh diakses secara umum: URL yang boleh diakses daripada internet awam.
Data URI: Data URI model yang dikodkan base64. Gunakan MIME type application/octet-stream. Contoh: data:application/octet-stream;base64,<data model terkod base64 anda>.
Tepat satu input gaya adalah diperlukan: text_style_prompt, image_style_url, atau multiview_image_urls. multiview_image_urls tidak boleh digabungkan dengan mana-mana daripada dua yang lain; jika kedua-dua text_style_prompt dan image_style_url disediakan, image_style_url diberi keutamaan.
Name
text_style_prompt
Type
string
Diperlukan
Description
Terangkan gaya tekstur objek yang anda inginkan menggunakan teks. Maksimum 800 aksara.
Name
image_style_url
Type
string
Diperlukan
Description
Berikan imej 2D untuk membimbing proses pembuatan tekstur. Kami kini menyokong format .jpg, .jpeg, dan .png.
Terdapat dua cara untuk menyediakan imej tersebut:
URL yang boleh diakses secara umum: URL yang boleh diakses daripada internet awam
Data URI: Data URI imej yang dikodkan base64. Contoh Data URI: data:image/jpeg;base64,<data imej terkod base64 anda>
Pembuatan tekstur imej mungkin tidak berfungsi dengan optimum jika terdapat perbezaan geometri yang ketara antara aset asal dan imej yang dimuat naik.
Name
multiview_image_urls
Type
string[]
Diperlukan
Description
Berikan 1 hingga 4 imej yang menunjukkan objek yang sama daripada pandangan yang berbeza untuk membimbing pembuatan tekstur. Imej pertama adalah pandangan utama (depan); susunan pandangan yang selebihnya (kiri, belakang, kanan) tidak penting.
Setiap elemen menerima format yang sama seperti image_style_url (URL yang boleh diakses secara umum atau Data URI base64, .jpg/.jpeg/.png).
Memerlukan ai_model: "meshy-7" secara eksplisit.
Name
ai_model
Type
string
lalai latest
Description
ID model AI yang digunakan untuk retekstur. Nilai yang tersedia: meshy-6-lite, meshy-6, meshy-7, latest (Meshy 7).
Name
enable_original_uv
Type
boolean
lalai false
Description
Kekalkan susun atur UV sedia ada model berbanding menjana susun atur UV yang baharu.
Jika anda melakukan retekstur pada model yang dijana oleh Meshy (melalui input_task_id, atau model_url yang menunjuk kepada output Meshy), tetapkan ini kepada true untuk menggunakan semula susun atur UV yang telah dioptimumkan.
Jika anda melakukan retekstur pada model pihak ketiga yang anda muat naik, tetapkan true apabila ia telah mempunyai UV yang baik yang ingin anda kekalkan, atau biarkan false untuk membolehkan Meshy membuka lipatan UV yang baharu (paling sesuai untuk model yang tiada pemetaan UV yang betul).
Name
enable_pbr
Type
boolean
lalai false
Description
Jana peta PBR (metallic, roughness, normal) sebagai tambahan kepada warna asas. Peta emisi juga disertakan apabila ai_model ialah meshy-6, kecuali pada texture_resolution: 8k. meshy-6-lite, meshy-7 dan latest tidak menghasilkan peta emisi.
Name
texture_resolution
Type
string
lalai 2k
Description
Resolusi tekstur warna asas. Salah satu daripada 2k (2048×2048), 4k (4096×4096), atau 8k (8192×8192). Resolusi yang lebih tinggi menangkap lebih banyak perincian permukaan.
4k dan 8k memerlukan ai_modelmeshy-6, meshy-7 atau latest. Pada 8k, tiada peta emisi dihasilkan.
Name
hd_texture
Type
boolean
⚠ lapuk
lalai false
Description
Gunakan texture_resolution sebagai gantinya — bersamaan dengan texture_resolution: "4k". Apabila kedua-duanya ditetapkan, texture_resolution diutamakan.
Name
remove_lighting
Type
boolean
lalai true
Description
Mengalih keluar sorotan dan bayang-bayang daripada tekstur warna asas, menghasilkan keputusan yang lebih bersih yang berfungsi dengan lebih baik di bawah persediaan pencahayaan tersuai.
Hanya disokong apabila ai_model ialah meshy-6.
Name
target_formats
Type
string[]
Description
Menentukan format fail 3D yang hendak disertakan dalam output. Hanya format yang diminta akan dijana dan dikembalikan, yang boleh mengurangkan masa penyiapan tugas. Apabila diabaikan, semua format yang disokong disertakan.
Nilai yang tersedia: glb, obj, fbx, stl, usdz, 3mf
Apabila diabaikan, semua format kecuali 3mf dijana. 3mf hanya disertakan apabila dinyatakan secara eksplisit.
Name
alpha_thumbnail
Type
boolean
lalai false
Description
Apabila ditetapkan kepada true, tugas tersebut turut memaparkan versi latar belakang telus (RGBA) bagi preview dan mengembalikannya sebagai alpha_thumbnail_url pada respons GET. Medan thumbnail_url yang sedia ada tidak berubah.
Kembalian
Sifat result bagi respons tersebut mengandungi id tugas bagi tugas Retekstur yang baharu dicipta.
Mod Kegagalan
Name
400 - Bad Request
Description
Permintaan tersebut tidak boleh diterima. Punca biasa:
Parameter tiada: Sama ada model_url atau input_task_id mesti disediakan.
Gaya tiada: Salah satu daripada text_style_prompt, image_style_url atau multiview_image_urls mesti disediakan.
Input gaya yang bercanggah: multiview_image_urls tidak boleh digabungkan dengan text_style_prompt atau image_style_url.
Model tidak disokong untuk berbilang pandangan: multiview_image_urls memerlukan ai_model: "meshy-7" secara eksplisit.
Model tidak tersedia: ai_model: "meshy-7" dan ai_model: "meshy-6-lite" sedang dilancarkan secara progresif dan mungkin belum diaktifkan untuk akaun anda.
Tugas input tidak sah: input_task_id mesti merujuk kepada tugas yang berjaya daripada model yang disokong.
Format model tidak sah: model_url menunjuk kepada fail dengan sambungan yang tidak disokong.
URL tidak dapat dicapai: model_url, image_style_url atau elemen multiview_image_urls tidak dapat dimuat turun.
Name
401 - Unauthorized
Description
Pengesahan gagal. Sila semak kunci API anda.
Name
402 - Payment Required
Description
Kredit tidak mencukupi untuk melaksanakan tugas ini.
Name
429 - Too Many Requests
Description
Anda telah melebihi had kadar anda.
Request
POST
/openapi/v1/retexture
# Retexture with text promptcurlhttps://api.meshy.ai/openapi/v1/retexture \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "model_url": "https://cdn.meshy.ai/model/example_model_2.glb", "text_style_prompt": "red fangs, Samurai outfit that fused with japanese batik style", "enable_original_uv": true, "enable_pbr": true }'# Retexture with image style and PBRcurlhttps://api.meshy.ai/openapi/v1/retexture \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "model_url": "https://cdn.meshy.ai/model/example_model_2.glb", "image_style_url": "https://cdn.meshy.ai/image/example_image.jpg", "ai_model": "latest", "enable_pbr": true, "enable_original_uv": true }'
Endpoint ini membolehkan anda mendapatkan semula tugas Retekstur dengan id tugas yang sah.
Rujuk The Retexture Task Object untuk melihat sifat
yang disertakan dengan objek tugas Retekstur.
Parameter
Name
id
Type
path
Description
Pengecam unik untuk tugas Retekstur yang hendak didapatkan semula.
Nilai Pulangan
Respons mengandungi objek tugas Retekstur. Semak
bahagian The Retexture Task Object untuk maklumat lanjut.
{"id":"018a210d-8ba4-705c-b111-1f1776f7f578","type":"retexture","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=***","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=***" },"thumbnail_url":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***","text_style_prompt":"red fangs, Samurai outfit that fused with japanese batik style","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" } ],"task_error": {"message":"" },"consumed_credits":10}
Endpoint ini memadam secara kekal tugasan retekstur, termasuk semua model dan data yang berkaitan. Tindakan ini tidak boleh dibatalkan.
Parameter Laluan
Name
id
Type
path
Description
ID tugasan retekstur yang hendak dipadamkan.
Status Tugasan
Tugasan yang masih PENDING akan dipadam dan kredit yang digunakan pada
masa penciptaan akan dikembalikan.
Tugasan yang sudah IN_PROGRESS tidak boleh dipadamkan: permintaan akan
ditolak dengan 409 Conflict dan tugasan itu akan terus berjalan. Kredit bagi
tugasan yang sudah mula diproses oleh worker tidak boleh dikembalikan, jadi
memadamkannya semasa ia sedang berjalan akan menyebabkan anda kehilangan
kedua-dua kredit dan hasilnya. Tunggu sehingga ia mencapai status
SUCCEEDED, FAILED atau CANCELED, kemudian padamkannya.
Tugasan yang berada dalam status akhir (SUCCEEDED, FAILED atau CANCELED)
akan dipadam tanpa bayaran balik.
Pulangan
Mengembalikan 200 OK jika berjaya, atau 409 Conflict apabila tugasan
berstatus IN_PROGRESS.
// 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."}
[ {"id":"018a210d-8ba4-705c-b111-1f1776f7f578","type":"retexture","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=***" },"thumbnail_url":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***","text_style_prompt":"red fangs, Samurai outfit that fused with japanese batik style","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":10 }]
Objek Tugas Retekstur adalah unit kerja yang digunakan oleh Meshy untuk menghasilkan tekstur 3D daripada input teks atau imej.
Model ini mempunyai ciri-ciri berikut:
Ciri-ciri
Name
id
Type
string
Description
Pengenal unik untuk tugas tersebut. Walaupun kami menggunakan UUID yang boleh diisih-k (k-sortable) untuk id tugas sebagai
butiran pelaksanaan, anda tidak patut membuat sebarang andaian tentang format id tersebut.
Name
type
Type
string
Description
Jenis tugas Retekstur. Nilainya ialah retexture.
Name
model_urls
Type
object
Description
URL yang boleh dimuat turun untuk fail model 3D bertekstur yang dihasilkan oleh Meshy.
Name
glb
Type
string
Description
URL yang boleh dimuat turun untuk fail GLB.
Name
fbx
Type
string
Description
URL yang boleh dimuat turun untuk fail FBX.
Name
obj
Type
string
Description
URL yang boleh dimuat turun untuk fail OBJ.
Name
usdz
Type
string
Description
URL yang boleh dimuat turun untuk fail USDZ.
Name
mtl
Type
string
Description
URL yang boleh dimuat turun untuk fail MTL, dikembalikan bersama eksport OBJ apabila tekstur wujud.
Name
stl
Type
string
Description
URL yang boleh dimuat turun untuk fail STL.
Name
3mf
Type
string
Description
URL yang boleh dimuat turun untuk fail 3MF. Hanya wujud apabila 3mf diminta melalui target_formats.
Name
text_style_prompt
Type
string
Description
Ini adalah prompt teks yang digunakan untuk mencipta tugas tekstur ini.
Name
image_style_url
Type
string
Description
Ini adalah input imej yang digunakan untuk mencipta tugas tekstur ini.
Name
multiview_image_urls
Type
string[]
Description
URL yang boleh dimuat turun untuk imej rujukan Berbilang Pandangan yang digunakan untuk mencipta tugas tekstur ini. Hanya wujud apabila tugas dicipta dengan multiview_image_urls.
Name
thumbnail_url
Type
string
Description
URL yang boleh dimuat turun untuk imej kecil bagi fail model.
Name
alpha_thumbnail_url
Type
string
Description
URL yang boleh dimuat turun untuk versi latar belakang lutsinar (RGBA) bagi thumbnail_url. Hanya wujud apabila tugas dicipta dengan alpha_thumbnail: true dan pratonton lutsinar berjaya dihasilkan; jika tidak, medan ini akan ditinggalkan.
Name
progress
Type
integer
Description
Kemajuan (progress) tugas tersebut. Jika tugas belum bermula, ciri ini akan menjadi 0. Setelah tugas berjaya, ini akan menjadi 100.
Name
started_at
Type
timestamp
Description
Cap masa bila tugas dimulakan, dalam milisaat. Jika tugas belum bermula, ciri ini akan menjadi 0.
Cap masa mewakili bilangan milisaat yang berlalu sejak 1 Januari 1970 UTC, mengikut
piawaian RFC 3339.
Sebagai contoh, Jumaat, 1 September 2023 12:00:00 PM GMT diwakili sebagai 1693569600000. Ini berlaku
untuk semua cap masa dalam Meshy API.
Name
created_at
Type
timestamp
Description
Cap masa bila tugas dicipta, dalam milisaat.
Name
expires_at
Type
timestamp
Description
Cap masa bila hasil tugas akan tamat tempoh, dalam milisaat.
Name
finished_at
Type
timestamp
Description
Cap masa bila tugas selesai, dalam milisaat. Jika tugas belum selesai, ciri ini akan menjadi 0.
Name
status
Type
string
Description
Status tugas tersebut. Nilai yang mungkin adalah salah satu daripada PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Satu array objek URL tekstur yang dihasilkan daripada tugas tersebut. Biasanya ini hanya mengandungi satu objek URL tekstur. Setiap URL tekstur mempunyai ciri-ciri berikut:
Name
base_color
Type
string
Description
URL yang boleh dimuat turun untuk imej peta warna asas.
Name
metallic
Type
string
Description
URL yang boleh dimuat turun untuk imej peta logam.
Jika tugas dicipta dengan enable_pbr: false, ciri ini akan ditinggalkan.
Name
normal
Type
string
Description
URL yang boleh dimuat turun untuk imej peta normal.
Jika tugas dicipta dengan enable_pbr: false, ciri ini akan ditinggalkan.
Name
roughness
Type
string
Description
URL yang boleh dimuat turun untuk imej peta kekasaran.
Jika tugas dicipta dengan enable_pbr: false, ciri ini akan ditinggalkan.
Name
emission
Type
string
Description
URL yang boleh dimuat turun untuk imej peta pancaran.
Jika tugas dicipta dengan enable_pbr: false, atau ai_model adalah meshy-6-lite, ciri ini akan ditinggalkan.
Name
preceding_tasks
Type
integer
Description
Bilangan tugas terdahulu.
Ciri ini hanya wujud apabila status tugas adalah PENDING.
Name
task_error
Type
object
Description
Butiran ralat untuk tugas yang gagal. Lihat Ralat untuk rujukan penuh objek task_error.
Name
consumed_credits
Type
integer
Description
Bilangan kredit yang digunakan oleh tugas ini. Wujud apabila status tugas adalah PENDING, IN_PROGRESS, atau SUCCEEDED. Mengembalikan 0 untuk tugas FAILED (kredit dikembalikan apabila gagal).
Example Retexture Task Model
{"id":"018a210d-8ba4-705c-b111-1f1776f7f578","type":"retexture","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=***" },"text_style_prompt":"red fangs, Samurai outfit that fused with japanese batik style","image_style_url":"https://assets.meshy.ai/***/image/example_image.jpg?Expires=***","thumbnail_url":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***","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":10}