Retekstur API adalah satu fungsi 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 dengan API ini.
Endpoint ini membolehkan anda mewujudkan satu tugas Retekstur baru. 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 diperlukan. Jika kedua-duanya disediakan, input_task_id akan diutamakan.
Name
input_task_id
Type
string
Diperlukan
Description
ID tugas Imej ke 3D atau Teks ke 3D yang telah selesai yang anda ingin retekstur. Tugas ini mesti salah satu daripada tugas berikut: Teks ke 3D Pratonton, Teks ke 3D Refine, Imej ke 3D atau Remesh. Selain itu, ia mesti mempunyai status SUCCEEDED.
Name
model_url
Type
string
Diperlukan
Description
Sediakan model 3D untuk Meshy untuk tekstur. Format yang disokong: .glb, .gltf, .obj, .fbx, .stl.
Terdapat dua cara untuk menyediakan model:
URL yang boleh diakses oleh umum: URL yang boleh diakses dari internet awam.
Data URI: Data URI berformat base64 bagi model tersebut. Gunakan jenis MIME application/octet-stream. Contoh: data:application/octet-stream;base64,<your base64-encoded model data>.
Tepat satu input gaya adalah diperlukan: text_style_prompt, image_style_url, atau multiview_image_urls. multiview_image_urls tidak boleh digabungkan dengan salah satu daripada dua yang lain; jika kedua-dua text_style_prompt dan image_style_url diberikan, image_style_url akan diutamakan.
Name
text_style_prompt
Type
string
Diperlukan
Description
Huraikan gaya tekstur objek yang anda kehendaki menggunakan teks. Maksimum 600 aksara.
Name
image_style_url
Type
string
Diperlukan
Description
Sediakan imej 2D untuk membimbing proses peneksturan. Kami kini menyokong format .jpg, .jpeg, dan .png.
Terdapat dua cara untuk menyediakan imej:
URL yang boleh diakses oleh umum: URL yang boleh diakses dari internet awam
Data URI: Data URI berformat base64 bagi imej tersebut. Contoh data URI: data:image/jpeg;base64,<your base64-encoded image data>
Peneksturan imej mungkin tidak berfungsi secara optimum jika terdapat perbezaan geometri yang besar antara asset asal dan imej yang diunggah.
Name
multiview_image_urls
Type
string[]
Diperlukan
Description
Sediakan 1 hingga 4 imej yang menunjukkan objek yang sama dari pandangan yang berlainan untuk membimbing peneksturan. Imej pertama adalah pandangan utama (depan); susunan pandangan baki (kiri, belakang, kanan) tidak penting.
Setiap elemen menerima format yang sama seperti image_style_url (URL yang boleh diakses oleh umum atau data URI berformat base64, .jpg/.jpeg/.png).
Memerlukan ai_model: "meshy-7" (atau latest).
Name
ai_model
Type
string
lalai latest
Description
ID model AI untuk digunakan bagi retekstur. Nilai-nilai yang ada: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
enable_original_uv
Type
boolean
lalai false
Description
Kekalkan susun atur UV model sedia ada dan bukannya menjana yang baru.
Jika anda sedang menjalankan retekstur pada model yang dihasilkan oleh Meshy (melalui input_task_id, atau model_url yang menunjuk kepada output Meshy), tetapkan ini kepada true untuk menggunakan kembali susun atur UV yang dioptimumkan.
Jika anda sedang menjalankan retekstur pada model pihak ketiga yang anda muat naik, tetapkan true apabila ia sudah mempunyai UV yang baik yang anda mahu simpan, atau biarkan false untuk membiarkan Meshy membongkar UV baru (terbaik untuk model yang kekurangan peta UV yang betul).
Name
enable_pbr
Type
boolean
lalai false
Description
Jana Peta PBR (metallic, roughness, normal) sebagai tambahan kepada warna asas. Peta pelepasan juga termasuk apabila ai_model adalah meshy-6, kecuali pada texture_resolution: 8k. meshy-7 dan latest tidak menghasilkan peta pelepasan.
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 pelepasan dihasilkan.
Name
hd_texture
Type
boolean
⚠ lapuk
lalai false
Description
Gunakan texture_resolution sebaliknya — setara dengan texture_resolution: "4k". Apabila kedua-duanya ditetapkan, texture_resolution akan diutamakan.
Name
remove_lighting
Type
boolean
lalai true
Description
Mengeluarkan sorotan dan bayang daripada tekstur warna asas, menghasilkan keputusan yang lebih bersih yang berfungsi lebih baik di bawah persediaan lampu khusus.
Hanya disokong apabila ai_model adalah meshy-6.
Name
target_formats
Type
string[]
Description
Menentukan format fail 3D mana yang akan disertakan dalam output. Hanya format yang diminta akan dihasilkan dan dikembalikan, yang boleh mengurangkan masa penyelesaian tugas. Apabila tidak dinyatakan, semua format yang disokong disertakan.
Nilai yang tersedia: glb, obj, fbx, stl, usdz, 3mf
Apabila tidak dinyatakan, semua format kecuali 3mf dihasilkan. 3mf hanya disertakan apabila ditetapkan secara eksplisit.
Name
alpha_thumbnail
Type
boolean
lalai false
Description
Apabila ditetapkan kepada true, tugas juga merender versi latar belakang telus (RGBA) dari pratonton dan mengembalikannya sebagai alpha_thumbnail_url pada jawapan GET. Medan thumbnail_url sedia ada tidak berubah.
Pengembalian
Sifat result dari respons mengandungi tugas id dari tugas Retekstur yang baru dicipta.
Mod Kegagalan
Name
400 - Bad Request
Description
Permintaan tidak boleh diterima. Punca-punca umum:
Parameter kurang: Sama ada model_url atau input_task_id mesti disediakan.
Gaya kurang: Salah satu daripada text_style_prompt, image_style_url atau multiview_image_urls mesti disediakan.
Input gaya bertentangan: multiview_image_urls tidak boleh digabungkan dengan text_style_prompt atau image_style_url.
Model tidak disokong untuk pandangan pelbagai: multiview_image_urls memerlukan ai_model: "meshy-7" (atau latest).
Model tidak terdapat: ai_model: "meshy-7" sedang diluncurkan secara bertahap dan belum diaktifkan untuk akaun anda.
Tugas input tidak sah: input_task_id mesti merujuk kepada tugas yang berjaya dari model yang disokong.
Format model tidak sah: model_url menunjuk kepada fail dengan sambungan yang tidak disokong.
URL tidak dapat dicapai: Elemen model_url, image_style_url atau multiview_image_urls tidak dapat dimuat turun.
Name
401 - Unauthorized
Description
Pengesahan gagal. Sila periksa 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.
Permintaan
POST
/openapi/v1/retexture
# Retekstur dengan prompt tekscurlhttps://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 }'# Retekstur dengan gaya imej dan 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 tugas Retekstur diberikan id tugas yang sah. Rujuk Objek Tugas Retekstur untuk melihat sifat-sifat yang disertakan dengan objek tugas Retekstur.
Parameter
Name
id
Type
path
Description
Pengecam unik untuk tugas Retekstur yang hendak diambil.
Pengembalian
Respons mengandungi objek tugas Retekstur. Semak bahagian Objek Tugas Retekstur 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}
[ {"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 menjana satu tekstur 3D daripada input teks atau imej. Model mempunyai sifat-sifat berikut:
Sifat
Name
id
Type
string
Description
Pengecam unik untuk tugas. Walaupun kami menggunakan UUID yang boleh disusun K untuk ID tugas sebagai perincian pelaksanaan, anda tidak seharusnya membuat apa-apa anggapan tentang format ID.
Name
type
Type
string
Description
Jenis tugas Retekstur. Nilai adalah retexture.
Name
model_urls
Type
object
Description
URL yang boleh dimuat turun ke fail model 3D bertekstur yang dijana oleh Meshy.
Name
glb
Type
string
Description
URL yang boleh dimuat turun ke fail GLB.
Name
fbx
Type
string
Description
URL yang boleh dimuat turun ke fail FBX.
Name
obj
Type
string
Description
URL yang boleh dimuat turun ke fail OBJ.
Name
usdz
Type
string
Description
URL yang boleh dimuat turun ke fail USDZ.
Name
mtl
Type
string
Description
URL yang boleh dimuat turun ke fail MTL, dikembalikan bersama eksport OBJ apabila tekstur hadir.
Name
stl
Type
string
Description
URL yang boleh dimuat turun ke fail STL.
Name
3mf
Type
string
Description
URL yang boleh dimuat turun ke fail 3MF. Hanya hadir apabila 3mf diminta melalui target_formats.
Name
text_style_prompt
Type
string
Description
Ini adalah prompt teks yang digunakan untuk mencipta tugas peneksturan.
Name
image_style_url
Type
string
Description
Ini adalah input imej yang digunakan untuk mencipta tugas peneksturan.
Name
multiview_image_urls
Type
string[]
Description
URL yang boleh dimuat turun ke imej rujukan pandangan pelbagai yang digunakan untuk mencipta tugas peneksturan. Hanya hadir apabila tugas dibuat dengan multiview_image_urls.
Name
thumbnail_url
Type
string
Description
URL yang boleh dimuat turun ke imej kecil fail model.
Name
alpha_thumbnail_url
Type
string
Description
URL yang boleh dimuat turun ke versi latar belakang telus (RGBA) thumbnail_url. Hanya hadir apabila tugas dicipta dengan alpha_thumbnail: true dan pratonton telus berjaya dirender; jika tidak, medan ini diabaikan.
Name
progress
Type
integer
Description
Kemajuan tugas. Jika tugas belum dimulakan, sifat ini akan menjadi 0. Setelah tugas berjaya, ini akan menjadi 100.
Name
started_at
Type
timestamp
Description
Cap masa apabila tugas dimulakan, dalam milisaat. Jika tugas belum dimulakan, sifat ini akan menjadi 0.
Cap masa mewakili bilangan milisaat yang telah berlalu sejak 1 Januari 1970 UTC, mengikuti
standard RFC 3339. Sebagai contoh, Jumaat, 1 September 2023, 12:00:00 PM GMT diwakili sebagai 1693569600000. Ini berkenaan untuk semua cap masa dalam Meshy API.
Name
created_at
Type
timestamp
Description
Cap masa apabila tugas dicipta, dalam milisaat.
Name
expires_at
Type
timestamp
Description
Cap masa apabila hasil tugas tamat, dalam milisaat.
Name
finished_at
Type
timestamp
Description
Cap masa apabila tugas selesai, dalam milisaat. Jika tugas belum selesai, sifat ini akan menjadi 0.
Name
status
Type
string
Description
Status tugas. Nilai yang mungkin adalah salah satu PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Satu senarai objek URL tekstur yang dijana daripada tugas. Biasanya ini hanya mengandungi satu objek URL tekstur. Setiap URL tekstur mempunyai sifat-sifat berikut:
Name
base_color
Type
string
Description
URL yang boleh dimuat turun ke imej peta warna asas.
Name
metallic
Type
string
Description
URL yang boleh dimuat turun ke imej peta metalik.
Jika tugas dicipta dengan enable_pbr: false, sifat ini akan diabaikan.
Name
normal
Type
string
Description
URL yang boleh dimuat turun ke imej peta normal.
Jika tugas dicipta dengan enable_pbr: false, sifat ini akan diabaikan.
Name
roughness
Type
string
Description
URL yang boleh dimuat turun ke imej peta kekasaran.
Jika tugas dicipta dengan enable_pbr: false, sifat ini akan diabaikan.
Name
emission
Type
string
Description
URL yang boleh dimuat turun ke imej peta pelepasan.
Jika tugas dicipta dengan enable_pbr: false, atau ai_model adalah meshy-5, sifat ini akan diabaikan.
Name
preceding_tasks
Type
integer
Description
Kira jumlah tugas terdahulu.
Sifat ini hanya hadir apabila status tugas adalah PENDING.
Name
task_error
Type
object
Description
Butiran ralat untuk tugas yang gagal. Lihat Ralat untuk rujukan objek task_error penuh.
Name
consumed_credits
Type
integer
Description
Jumlah kredit yang dikonsum oleh tugas ini. Hadir apabila status tugas adalah PENDING, IN_PROGRESS, atau SUCCEEDED. Mengembalikan 0 untuk tugas FAILED (kredit dikembalikan semula jika 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}