Die Retexture API ist eine Funktion, die es Ihnen ermöglicht, Meshy's KI-Neutexturierung in Ihre eigene Anwendung zu integrieren. In diesem Abschnitt finden Sie alle Informationen,
die Sie benötigen, um mit dieser API zu beginnen.
Dieser Endpunkt ermöglicht es Ihnen, eine neue Neutexturierungsaufgabe zu erstellen. Verweisen Sie auf
Das Retexture Aufgabenobjekt, um zu sehen, welche
Eigenschaften im Neutexturierungsaufgabenobjekt enthalten sind.
Parameter
Nur eine von input_task_id oder model_url ist erforderlich. Wenn beide angegeben sind, hat input_task_id Vorrang.
Name
input_task_id
Type
string
Erforderlich
Description
Die ID der abgeschlossenen Bild zu 3D oder Text zu 3D Aufgabe, die Sie neu texturieren möchten.
Diese Aufgabe muss eine der folgenden Aufgaben sein: Text zu 3D-Vorschau, Text zu 3D-Verfeinerung, Bild zu 3D oder Neuvernetzung. Außerdem muss sie den Status SUCCEEDED haben.
Name
model_url
Type
string
Erforderlich
Description
Stellen Sie ein 3D-Modell für Meshy zur Verfügung, um es zu texturieren. Unterstützte Formate: .glb, .gltf, .obj, .fbx, .stl.
Es gibt zwei Möglichkeiten, das Modell bereitzustellen:
Öffentlich zugängliche URL: Eine URL, die aus dem öffentlichen Internet zugänglich ist.
Data URI: Eine Base64-kodierte Data URI des Modells. Verwenden Sie den MIME-Typ application/octet-stream. Beispiel: data:application/octet-stream;base64,<your base64-encoded model data>.
Genau ein Stil-Eingang ist erforderlich: text_style_prompt, image_style_url oder multiview_image_urls. multiview_image_urls kann nicht mit einem der anderen beiden kombiniert werden; wenn sowohl text_style_prompt als auch image_style_url angegeben sind, hat image_style_url Vorrang.
Name
text_style_prompt
Type
string
Erforderlich
Description
Beschreiben Sie Ihren gewünschten Texturstil des Objekts mit Text. Maximal 600 Zeichen.
Name
image_style_url
Type
string
Erforderlich
Description
Stellen Sie ein 2D-Bild zur Verfügung, um den Texturierungsprozess zu leiten. Wir unterstützen derzeit die Formate .jpg, .jpeg und .png.
Es gibt zwei Möglichkeiten, das Bild bereitzustellen:
Öffentlich zugängliche URL: Eine URL, die aus dem öffentlichen Internet zugänglich ist
Data URI: Eine Base64-kodierte Data URI des Bildes. Beispiel: data:image/jpeg;base64,<your base64-encoded image data>
Die Bildtexturierung funktioniert möglicherweise nicht optimal, wenn es erhebliche Geometrieunterschiede zwischen dem ursprünglichen Asset und dem hochgeladenen Bild gibt.
Name
multiview_image_urls
Type
string[]
Erforderlich
Description
Stellen Sie 1 bis 4 Bilder bereit, die dasselbe Objekt aus verschiedenen Blickwinkeln zeigen, um die Texturierung zu leiten. Das erste Bild ist die primäre (vordere) Ansicht; die Reihenfolge der verbleibenden Ansichten (links, hinten, rechts) spielt keine Rolle.
Jedes Element akzeptiert die gleichen Formate wie image_style_url (eine öffentlich zugängliche URL oder eine Base64-Data URI, .jpg/.jpeg/.png).
Erfordert ai_model: "meshy-7" (oder latest).
Name
ai_model
Type
string
Standard latest
Description
ID des KI-Modells, das für die Neutexturierung verwendet wird. Verfügbare Werte: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Name
enable_original_uv
Type
boolean
Standard false
Description
Behalten Sie das bestehende UV-Layout des Modells bei, anstatt ein neues zu generieren.
Wenn Sie ein von Meshy generiertes Modell neu texturieren (über input_task_id oder eine model_url, die auf ein Meshy-Ausgabe verweist), setzen Sie dies auf true, um das optimierte UV-Layout wiederzuverwenden.
Wenn Sie ein hochgeladenes Drittanbieter-Modell neu texturieren, setzen Sie true, wenn es bereits gute UVs hat, die Sie beibehalten möchten, oder lassen Sie es auf false, um Meshy neue UVs entpacken zu lassen (am besten für Modelle, die keine korrekte UV-Zuordnung haben).
Name
enable_pbr
Type
boolean
Standard false
Description
Generieren Sie PBR-Texturen (metallisch, Rauheit, Normal Map) zusätzlich zur Basisfarbe. Eine Emissionskarte ist ebenfalls enthalten, wenn ai_modelmeshy-6 ist, außer bei texture_resolution: 8k. meshy-7 und latest produzieren keine Emissionskarte.
Name
texture_resolution
Type
string
Standard 2k
Description
Basisfarbtexturauflösung. Eine von 2k (2048×2048), 4k (4096×4096) oder 8k (8192×8192). Höhere Auflösungen erfassen mehr Oberflächendetails.
4k und 8k erfordern ai_modelmeshy-6, meshy-7 oder latest. Bei 8k wird keine Emissionskarte produziert.
Name
hd_texture
Type
boolean
⚠ veraltet
Standard false
Description
Verwenden Sie stattdessen texture_resolution — entspricht texture_resolution: "4k". Wenn beide gesetzt sind, hat texture_resolution Vorrang.
Name
remove_lighting
Type
boolean
Standard true
Description
Entfernt Highlights und Schatten von der Basisfarbtextur, um ein saubereres Ergebnis zu erzielen, das besser unter benutzerdefinierten Beleuchtungssetups funktioniert.
Wird nur unterstützt, wenn ai_modelmeshy-6 ist.
Name
target_formats
Type
string[]
Description
Gibt an, welche 3D-Dateiformate in die Ausgabe einbezogen werden sollen. Es werden nur die angeforderten Formate generiert und zurückgegeben, was die Abschlusszeit der Aufgabe verkürzen kann. Wenn weggelassen, werden alle unterstützten Formate einbezogen.
Verfügbare Werte: glb, obj, fbx, stl, usdz, 3mf
Wenn weggelassen, werden alle Formate außer 3mf generiert. 3mf wird nur einbezogen, wenn ausdrücklich angegeben.
Name
alpha_thumbnail
Type
boolean
Standard false
Description
Wenn auf true gesetzt, rendert die Aufgabe zusätzlich eine Version der Vorschau mit transparentem Hintergrund (RGBA) und gibt sie als alpha_thumbnail_url in der GET-Antwort zurück. Das vorhandene thumbnail_url-Feld bleibt unverändert.
Rückgaben
Die result-Eigenschaft der Antwort enthält die Aufgaben-ID der neu erstellten Neutexturierungsaufgabe.
Fehlerarten
Name
400 - Bad Request
Description
Die Anfrage war unzulässig. Häufige Ursachen:
Fehlender Parameter: Entweder model_url oder input_task_id muss angegeben werden.
Fehlender Stil: Einer von text_style_prompt, image_style_url oder multiview_image_urls muss angegeben werden.
Konfliktierende Stil-Eingaben: multiview_image_urls kann nicht mit text_style_prompt oder image_style_url kombiniert werden.
Nicht unterstütztes Modell für Mehransicht: multiview_image_urls erfordert ai_model: "meshy-7" (oder latest).
Modell nicht verfügbar: ai_model: "meshy-7" wird schrittweise eingeführt und ist noch nicht für Ihr Konto aktiviert.
Ungültige Eingabeaufgabe: Die input_task_id muss auf eine erfolgreiche Aufgabe aus einem unterstützten Modell verweisen.
Ungültiges Modellformat: Die model_url zeigt auf eine Datei mit einer nicht unterstützten Erweiterung.
Nicht erreichbare URL: Die model_url, image_style_url oder ein Element von multiview_image_urls konnte nicht heruntergeladen werden.
Name
401 - Unauthorized
Description
Authentifizierung fehlgeschlagen. Bitte überprüfen Sie Ihren API-Schlüssel.
Name
402 - Payment Required
Description
Unzureichende Credits, um diese Aufgabe auszuführen.
Name
429 - Too Many Requests
Description
Sie haben Ihre Ratenbegrenzung überschritten.
Request
POST
/openapi/v1/retexture
# Neutexturierung mit 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": "rote Reißzähne, Samuraiaufzug, der mit japanischem Batikstil verschmolzen ist", "enable_original_uv": true, "enable_pbr": true }'# Neutexturierung mit Bildstil und 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 }'
Dieser Endpunkt ermöglicht es Ihnen, eine Neutexturierungsaufgabe mit einer gültigen Aufgaben-ID abzurufen.
Verweisen Sie auf Das Retexture Aufgabenobjekt, um zu sehen, welche
Eigenschaften im Neutexturierungsaufgabenobjekt enthalten sind.
Parameter
Name
id
Type
path
Description
Eindeutiger Bezeichner für die abzurufende Neutexturierungsaufgabe.
Rückgaben
Die Antwort enthält das Neutexturierungsaufgabenobjekt. Überprüfen Sie
Das Retexture Aufgabenobjekt für Details.
Das Retexture Aufgabenobjekt ist eine Arbeitseinheit, die Meshy verwendet, um eine 3D-Textur aus einem Text- oder Bildeingaben zu erzeugen.
Das Modell hat folgende Eigenschaften:
Eigenschaften
Name
id
Type
string
Description
Eindeutiger Bezeichner für die Aufgabe. Während wir ein k-sortierbares UUID für Aufgaben-IDs als Implementierungsdetail verwenden, sollten Sie keine Annahmen über das Format der ID machen.
Name
type
Type
string
Description
Typ der Neutexturierungsaufgabe. Der Wert ist retexture.
Name
model_urls
Type
object
Description
Herunterladbare URL zur texturierten 3D-Modell-Datei, die von Meshy generiert wurde.
Name
glb
Type
string
Description
Herunterladbare URL zur GLB-Datei.
Name
fbx
Type
string
Description
Herunterladbare URL zur FBX-Datei.
Name
obj
Type
string
Description
Herunterladbare URL zur OBJ-Datei.
Name
usdz
Type
string
Description
Herunterladbare URL zur USDZ-Datei.
Name
mtl
Type
string
Description
Herunterladbare URL zur MTL-Datei, die zusammen mit OBJ-Exporte zurückgegeben wird, wenn Texturen vorhanden sind.
Name
stl
Type
string
Description
Herunterladbare URL zur STL-Datei.
Name
3mf
Type
string
Description
Herunterladbare URL zur 3MF-Datei. Nur vorhanden, wenn 3mf über target_formats angefordert wurde.
Name
text_style_prompt
Type
string
Description
Dies ist der Text-Prompt, der verwendet wurde, um die Texturierungsaufgabe zu erstellen.
Name
image_style_url
Type
string
Description
Dies ist der Bildeingang, der verwendet wurde, um die Texturierungsaufgabe zu erstellen.
Name
multiview_image_urls
Type
string[]
Description
Herunterladbare URLs zu den Mehransichts-Referenzbildern, die verwendet wurden, um die Texturierungsaufgabe zu erstellen. Nur vorhanden, wenn die Aufgabe mit multiview_image_urls erstellt wurde.
Name
thumbnail_url
Type
string
Description
Herunterladbare URL zum Miniaturbild der Modelldatei.
Name
alpha_thumbnail_url
Type
string
Description
Herunterladbare URL zu einer Version von thumbnail_url mit transparentem Hintergrund (RGBA). Nur vorhanden, wenn die Aufgabe mit alpha_thumbnail: true erstellt wurde und die transparente Vorschau erfolgreich gerendert wurde; andernfalls wird dieses Feld weggelassen.
Name
progress
Type
integer
Description
Fortschritt der Aufgabe. Wenn die Aufgabe noch nicht begonnen hat, wird diese Eigenschaft 0 sein. Sobald die Aufgabe erfolgreich abgeschlossen ist, wird dies 100 sein.
Name
started_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe gestartet wurde, in Millisekunden. Wenn die Aufgabe noch nicht begonnen hat, wird diese Eigenschaft 0 sein.
Ein Zeitstempel repräsentiert die Anzahl der Millisekunden seit dem 1. Januar 1970 UTC, gemäß
dem RFC 3339 Standard. Beispiel: Freitag, 1. September 2023, 12:00:00 Uhr GMT wird als 1693569600000 dargestellt. Dies gilt
für alle Zeitstempel in der Meshy API.
Name
created_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe erstellt wurde, in Millisekunden.
Name
expires_at
Type
timestamp
Description
Zeitstempel, wann das Aufgabenergebnis abläuft, in Millisekunden.
Name
finished_at
Type
timestamp
Description
Zeitstempel, wann die Aufgabe beendet wurde, in Millisekunden. Wenn die Aufgabe noch nicht beendet ist, wird diese Eigenschaft 0 sein.
Name
status
Type
string
Description
Status der Aufgabe. Mögliche Werte sind PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Ein Array von Textur-URL-Objekten, die von der Aufgabe generiert werden. Normalerweise enthält dies nur ein Textur-URL-Objekt. Jede Textur-URL hat die folgenden Eigenschaften:
Name
base_color
Type
string
Description
Herunterladbare URL zum Basisfarbkartenbild.
Name
metallic
Type
string
Description
Herunterladbare URL zum metallischen Kartenbild.
Wenn die Aufgabe mit enable_pbr: false erstellt wurde, wird diese Eigenschaft weggelassen.
Name
normal
Type
string
Description
Herunterladbare URL zum Normal Map Bild.
Wenn die Aufgabe mit enable_pbr: false erstellt wurde, wird diese Eigenschaft weggelassen.
Name
roughness
Type
string
Description
Herunterladbare URL zum Rauigkeitskartenbild.
Wenn die Aufgabe mit enable_pbr: false erstellt wurde, wird diese Eigenschaft weggelassen.
Name
emission
Type
string
Description
Herunterladbare URL zum Emissionskartenbild.
Wenn die Aufgabe mit enable_pbr: false erstellt wurde, oder ai_modelmeshy-5 ist, wird diese Eigenschaft weggelassen.
Name
preceding_tasks
Type
integer
Description
Die Anzahl der vorhergehenden Aufgaben.
Diese Eigenschaft ist nur vorhanden, wenn der Aufgabenstatus PENDING ist.
Name
task_error
Type
object
Description
Fehlerdetails für fehlgeschlagene Aufgaben. Siehe Fehler für die vollständige task_error Objektreferenz.
Name
consumed_credits
Type
integer
Description
Die Anzahl der von dieser Aufgabe verbrauchten Credits. Vorhanden, wenn der Aufgabenstatus PENDING, IN_PROGRESS oder SUCCEEDED ist. Gibt 0 für FAILED Aufgaben zurück (die Credits werden bei einem Fehler zurückerstattet).
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":"rote Reißzähne, Samuraiaufzug, der mit japanischem Batikstil verschmolzen ist","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}