Yeniden Dokulama API, Meshy'nin yapay zeka ile yeniden dokulama yeteneklerini kendi uygulamanıza entegre etmenizi sağlayan bir özelliktir. Bu bölümde, bu API ile başlamanız için gereken tüm bilgileri bulacaksınız.
Bu uç nokta, yeni bir Yeniden Dokulama görevi oluşturmanıza olanak tanır. Yeniden Dokulama görev nesnesine hangi özelliklerin dahil olduğunu görmek için
Yeniden Dokulama Görev Nesnesi bölümüne bakın.
Parametreler
input_task_id veya model_url parametrelerinden yalnızca biri gereklidir. Her ikisi de sağlanırsa, input_task_id önceliklidir.
Name
input_task_id
Type
string
Zorunlu
Description
Yeniden doku uygulamak istediğiniz, tamamlanmış Görselden 3D'ye veya Metinden 3D'ye görevinin ID'si.
Bu görev şu görevlerden biri olmalıdır: Metinden 3D'ye Ön İzleme, Metinden 3D'ye İyileştirme, Görselden 3D'ye veya Yeniden ağ. Ayrıca, durumu SUCCEEDED olmalıdır.
Name
model_url
Type
string
Zorunlu
Description
Meshy'nin doku uygulaması için bir 3D model sağlayın. Desteklenen formatlar: .glb, .gltf, .obj, .fbx, .stl.
Modeli sağlamanın iki yolu vardır:
Herkese açık erişilebilir URL: Genel internetten erişilebilen bir URL.
Data URI: Modelin base64 ile kodlanmış bir data URI'si. MIME type olarak application/octet-stream kullanın. Örnek: data:application/octet-stream;base64,<base64 ile kodlanmış model verileriniz>.
Tam olarak bir stil girdisi gereklidir: text_style_prompt, image_style_url veya multiview_image_urls. multiview_image_urls, diğer ikisinden hiçbiriyle birlikte kullanılamaz; hem text_style_prompt hem de image_style_url sağlanırsa, image_style_url önceliklidir.
Name
text_style_prompt
Type
string
Zorunlu
Description
Nesnenin istediğiniz doku stilini metin kullanarak açıklayın. Maksimum 800 karakter.
Name
image_style_url
Type
string
Zorunlu
Description
Doku uygulama işlemine kılavuzluk etmesi için 2 boyutlu bir görsel sağlayın. Şu anda .jpg, .jpeg ve .png formatlarını destekliyoruz.
Görseli sağlamanın iki yolu vardır:
Herkese açık erişilebilir URL: Genel internetten erişilebilen bir URL
Data URI: Görselin base64 ile kodlanmış bir data URI'si. Data URI örneği: data:image/jpeg;base64,<base64 ile kodlanmış görsel verileriniz>
Orijinal asset ile yüklenen görsel arasında önemli geometri farklılıkları varsa, görsel doku uygulama işlemi optimum şekilde çalışmayabilir.
Name
multiview_image_urls
Type
string[]
Zorunlu
Description
Doku uygulamaya kılavuzluk etmesi için aynı nesneyi farklı açılardan gösteren 1 ile 4 arasında görsel sağlayın. İlk görsel birincil (ön) görünümdür; kalan görünümlerin (sol, arka, sağ) sırası önemli değildir.
Her bir öğe, image_style_url ile aynı formatları kabul eder (herkese açık erişilebilir bir URL veya base64 data URI, .jpg/.jpeg/.png).
Açıkça belirtilmiş bir ai_model: "meshy-7" gerektirir.
Name
ai_model
Type
string
varsayılan latest
Description
Yeniden dokulama için kullanılacak AI modelinin ID'si. Kullanılabilir değerler: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
enable_original_uv
Type
boolean
varsayılan false
Description
Yeni bir UV yerleşimi oluşturmak yerine modelin mevcut UV yerleşimini koruyun.
Meshy tarafından oluşturulmuş bir modele (input_task_id üzerinden veya bir Meshy çıkışına işaret eden model_url üzerinden) yeniden doku uyguluyorsanız, optimize edilmiş UV yerleşimini yeniden kullanmak için bunu true olarak ayarlayın.
Yüklediğiniz üçüncü taraf bir modele yeniden doku uyguluyorsanız, korumak istediğiniz iyi UV'lere zaten sahipse true olarak ayarlayın veya Meshy'nin yeni UV'ler açmasına izin vermek için false bırakın (düzgün UV eşlemesi olmayan modeller için en iyisidir).
Name
enable_pbr
Type
boolean
varsayılan false
Description
Temel renge ek olarak PBR haritaları (metallic, roughness, normal) oluşturun. ai_modelmeshy-6 olduğunda, texture_resolution: 8k hariç, bir emisyon haritası da dahil edilir. meshy-7 ve latest emisyon haritası üretmez.
Name
texture_resolution
Type
string
varsayılan 2k
Description
Temel renk doku çözünürlüğü. 2k (2048×2048), 4k (4096×4096) veya 8k (8192×8192) değerlerinden biri. Daha yüksek çözünürlükler daha fazla yüzey detayı yakalar.
4k ve 8k, ai_model olarak meshy-6, meshy-7 veya latest gerektirir. 8k çözünürlükte emisyon haritası üretilmez.
Name
hd_texture
Type
boolean
⚠ kullanımdan kaldırıldı
varsayılan false
Description
Bunun yerine texture_resolution kullanın — texture_resolution: "4k" ile eşdeğerdir. Her ikisi de ayarlandığında, texture_resolution önceliklidir.
Name
remove_lighting
Type
boolean
varsayılan true
Description
Temel renk dokusundan vurguları ve gölgeleri kaldırarak, özel aydınlatma kurulumları altında daha iyi çalışan daha temiz bir sonuç üretir.
Yalnızca ai_modelmeshy-6 olduğunda desteklenir.
Name
target_formats
Type
string[]
Description
Çıktıya dahil edilecek 3D dosya formatlarını belirtir. Yalnızca istenen formatlar oluşturulur ve döndürülür, bu da görev tamamlanma süresini kısaltabilir. Belirtilmediğinde, desteklenen tüm formatlar dahil edilir.
Belirtilmediğinde, 3mf hariç tüm formatlar oluşturulur. 3mf, yalnızca açıkça belirtildiğinde dahil edilir.
Name
alpha_thumbnail
Type
boolean
varsayılan false
Description
true olarak ayarlandığında, görev ek olarak ön izlemenin şeffaf arka planlı (RGBA) bir sürümünü render eder ve GET yanıtında bunu alpha_thumbnail_url olarak döndürür. Mevcut thumbnail_url alanı değişmez.
Dönüş Değerleri
Yanıtın result özelliği, yeni oluşturulan Yeniden Dokulama görevinin id değerini içerir.
Hata Modları
Name
400 - Bad Request
Description
İstek kabul edilemedi. Yaygın nedenler:
Eksik parametre: model_url veya input_task_id değerlerinden biri sağlanmalıdır.
Eksik stil: text_style_prompt, image_style_url veya multiview_image_urls değerlerinden biri sağlanmalıdır.
Çakışan stil girdileri: multiview_image_urls, text_style_prompt veya image_style_url ile birlikte kullanılamaz.
Çoklu görünüm için desteklenmeyen model: multiview_image_urls, açıkça belirtilmiş bir ai_model: "meshy-7" gerektirir.
Model kullanılamıyor: ai_model: "meshy-7" kademeli olarak devreye alınmaktadır ve henüz hesabınız için etkinleştirilmemiştir.
Geçersiz girdi görevi: input_task_id, desteklenen bir modelden başarılı bir göreve işaret etmelidir.
Geçersiz model formatı: model_url, desteklenmeyen bir uzantıya sahip bir dosyaya işaret ediyor.
Erişilemeyen URL: model_url, image_style_url veya bir multiview_image_urls öğesi indirilemedi.
Name
401 - Unauthorized
Description
Kimlik doğrulama başarısız oldu. Lütfen API anahtarınızı kontrol edin.
Name
402 - Payment Required
Description
Bu görevi gerçekleştirmek için yeterli krediniz yok.
Name
429 - Too Many Requests
Description
Hız sınırınızı aştınız.
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 }'
Bu uç nokta, geçerli bir görev id verildiğinde bir Yeniden Dokulama görevini getirmenizi sağlar.
Yeniden Dokulama görev nesnesi ile hangi özelliklerin dahil olduğunu görmek için Yeniden Dokulama Görev Nesnesi bölümüne bakın.
Parametreler
Name
id
Type
path
Description
Getirilecek Yeniden Dokulama görevi için benzersiz tanımlayıcı.
{"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 }]
Yeniden Dokulama Görev nesnesi, Meshy'nin metin veya görüntü girdilerinden bir 3D doku oluşturmak için kullandığı bir iş birimidir.
Modelin aşağıdaki özellikleri vardır:
Özellikler
Name
id
Type
string
Description
Görev için benzersiz tanımlayıcı. Görev kimlikleri için k-sıralanabilir UUID kullanmamıza rağmen, kimliğin formatı hakkında herhangi bir varsayımda bulunmamalısınız.
Name
type
Type
string
Description
Yeniden dokulama görevinin türü. Değer retexture'dir.
Name
model_urls
Type
object
Description
Meshy tarafından oluşturulan dokulu 3D model dosyasının indirilebilir URL'si.
Name
glb
Type
string
Description
GLB dosyasının indirilebilir URL'si.
Name
fbx
Type
string
Description
FBX dosyasının indirilebilir URL'si.
Name
obj
Type
string
Description
OBJ dosyasının indirilebilir URL'si.
Name
usdz
Type
string
Description
USDZ dosyasının indirilebilir URL'si.
Name
mtl
Type
string
Description
MTL dosyasının indirilebilir URL'si, dokular mevcut olduğunda OBJ dışa aktarımlarıyla birlikte döndürülür.
Name
stl
Type
string
Description
STL dosyasının indirilebilir URL'si.
Name
3mf
Type
string
Description
3MF dosyasının indirilebilir URL'si. Sadece target_formats aracılığıyla 3mf talep edildiğinde mevcuttur.
Name
text_style_prompt
Type
string
Description
Dokulama görevini oluşturmak için kullanılan metin prompt'u.
Name
image_style_url
Type
string
Description
Dokulama görevini oluşturmak için kullanılan görüntü girdisi.
Name
multiview_image_urls
Type
string[]
Description
Dokulama görevini oluşturmak için kullanılan çoklu görünüm referans görüntülerinin indirilebilir URL'leri. Sadece görev multiview_image_urls ile oluşturulduğunda mevcuttur.
Name
thumbnail_url
Type
string
Description
Model dosyasının küçük resim görüntüsünün indirilebilir URL'si.
Name
alpha_thumbnail_url
Type
string
Description
thumbnail_url'un şeffaf arka planlı (RGBA) versiyonunun indirilebilir URL'si. Sadece görev alpha_thumbnail: true ile oluşturulduğunda ve şeffaf önizleme başarıyla render edildiğinde mevcuttur; aksi takdirde bu alan atlanır.
Name
progress
Type
integer
Description
Görevin ilerlemesi. Görev henüz başlamadıysa, bu özellik 0 olacaktır. Görev başarıyla tamamlandığında, bu 100 olacaktır.
Name
started_at
Type
timestamp
Description
Görevin başlatıldığı zamanın zaman damgası, milisaniye cinsinden. Görev henüz başlamadıysa, bu özellik 0 olacaktır.
Bir zaman damgası, 1 Ocak 1970 UTC'den itibaren geçen milisaniye sayısını temsil eder ve
RFC 3339 standardını takip eder.
Örneğin, 1 Eylül 2023 Cuma 12:00:00 PM GMT, 1693569600000 olarak temsil edilir. Bu, Meshy API'deki tüm zaman damgaları için geçerlidir.
Name
created_at
Type
timestamp
Description
Görevin oluşturulduğu zamanın zaman damgası, milisaniye cinsinden.
Name
expires_at
Type
timestamp
Description
Görev sonucunun sona erdiği zamanın zaman damgası, milisaniye cinsinden.
Name
finished_at
Type
timestamp
Description
Görevin tamamlandığı zamanın zaman damgası, milisaniye cinsinden. Görev henüz tamamlanmadıysa, bu özellik 0 olacaktır.
Name
status
Type
string
Description
Görevin durumu. Olası değerler PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED'dan biridir.
Name
texture_urls
Type
array
Description
Görevden üretilen doku URL nesnelerinin bir dizisi. Normalde bu sadece bir doku URL nesnesi içerir. Her doku URL'si aşağıdaki özelliklere sahiptir:
Name
base_color
Type
string
Description
Temel renk haritası görüntüsünün indirilebilir URL'si.
Name
metallic
Type
string
Description
Metalik harita görüntüsünün indirilebilir URL'si.
Görev enable_pbr: false ile oluşturulmuşsa, bu özellik atlanacaktır.
Name
normal
Type
string
Description
Normal harita görüntüsünün indirilebilir URL'si.
Görev enable_pbr: false ile oluşturulmuşsa, bu özellik atlanacaktır.
Görev enable_pbr: false veya ai_modelmeshy-5 ise, bu özellik atlanacaktır.
Name
preceding_tasks
Type
integer
Description
Önceki görevlerin sayısı.
Bu özellik sadece görev durumu PENDING olduğunda mevcuttur.
Name
task_error
Type
object
Description
Başarısız görevler için hata detayları. Tam task_error nesne referansı için Hatalar bölümüne bakın.
Name
consumed_credits
Type
integer
Description
Bu görev tarafından tüketilen kredi sayısı. Görev durumu PENDING, IN_PROGRESS veya SUCCEEDED olduğunda mevcuttur. FAILED görevler için 0 döner (başarısızlık durumunda krediler iade edilir).
Örnek Yeniden Dokulama Görev Modeli
{"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}