Tekst naar 3D API is een functie waarmee je Meshy's Tekst naar 3D-mogelijkheden in je eigen applicatie kunt integreren. In dit gedeelte vind je alle informatie
die je nodig hebt om met deze API aan de slag te gaan.
Tekst naar 3D maakt gebruik van een tweestaps workflow. Maak eerst een preview-taak aan (mode: "preview") om een 3D-mesh zonder textuur te genereren, zodat je de vorm kunt beoordelen. Geef vervolgens de task-ID van de voltooide preview door aan een refine-taak (mode: "refine") om textuur op de mesh toe te passen. Beide stappen delen dezelfde endpoint.
Dit endpoint maakt een Tekst naar 3D preview-taak aan, die een niet-getextureerde 3D-mesh (alleen geometrie) genereert op basis van een tekstprompt. Dit is de eerste stap van de tweestaps-workflow. Zodra de preview is geslaagd, gebruik je de teruggegeven taak-ID om een refine-taak aan te maken voor het textureren. Raadpleeg
Het Text to 3D Task Object voor het volledige responsschema.
Parameters
Name
mode
Type
string
Verplicht
Description
Dit veld moet worden ingesteld op "preview" bij het aanmaken van een preview-taak.
Name
prompt
Type
string
Verplicht
Description
Beschrijf wat voor soort object het 3D-model is. Maximaal 800 tekens.
Name
model_type
Type
string
standaard standard
Description
Geef het type 3D-mesh-generatie op.
Beschikbare waarden:
standard: Reguliere 3D-mesh-generatie met hoge detaillering.
smart-topology: Kies het Smart Topology-model met ai_model (meshy-t2).
lowpoly (verouderd): Genereert een low-poly mesh geoptimaliseerd voor schonere polygonen. We raden aan om in plaats daarvan smart-topology te gebruiken.
Wanneer smart-topology is geselecteerd, worden should_remesh en decimation_mode genegeerd, en wordt alleen topology: triangle geaccepteerd.
Wanneer lowpoly is geselecteerd, worden ai_model, topology, target_polycount en should_remesh genegeerd.
Name
ai_model
Type
string
standaard latest
Description
ID van het te gebruiken model. De beschikbare waarden zijn afhankelijk van model_type.
meshy-t2 (standaard): het Smart Topology-model — schonere topology, van nature gescheiden onderdelen, driehoeksoutput, en een polygoonaantal dat je kunt instellen met target_polycount.
Name
ultra_mode
Type
boolean
standaard false
Description
Schakelt Ultra-generatie in voor geometrie van hogere kwaliteit met fijnere oppervlaktedetails. Genereren duurt langer en kost 5 extra credits.
Alleen ondersteund wanneer ai_modelmeshy-7 (of latest) is, en alleen in de preview-mode.
Name
should_remesh
Type
boolean
standaard false (meshy-6, meshy-7), true (others)
Description
Bepaalt of de remesh-fase wordt ingeschakeld. Voor het model met de hoogste kwaliteit raden we aan should_remesh op false te zetten.
Alleen van toepassing wanneer should_remesh = true
Name
topology
Type
string
standaard triangle
Description
Geef de topology van het gegenereerde model op.
Beschikbare waarden:
quad: Genereert een mesh die overwegend uit vierhoeken bestaat.
triangle: Genereert een gedecimeerde driehoeksmesh.
Smart Topology-output bestaat uitsluitend uit driehoeken. Het opvragen van quad samen met ai_model: meshy-t2 levert een foutmelding op.
Name
decimation_mode
Type
integer
Description
Schakel adaptieve decimatie in door een polygoonaantal-niveau in te stellen. Wanneer ingesteld, wordt target_polycount genegeerd.
Beschikbare waarden:
1: Adaptief — ultra polygonaantal.
2: Adaptief — hoog polygonaantal.
3: Adaptief — gemiddeld polygonaantal.
4: Adaptief — laag polygonaantal.
Name
target_polycount
Type
integer
Description
Beoogd aantal polygonen (vlakken) in de output. Het werkelijke aantal kan afwijken van het doel, afhankelijk van de geometrie.
target_polycount heeft effect in twee onafhankelijke gevallen:
Remesh — met should_remesh: true op een standard-model. De mesh wordt geremesht (gedecimeerd) tot ongeveer dit aantal. Bereik 100 tot 300.000, standaard 30.000. Als decimation_mode is ingesteld, heeft dit prioriteit en wordt target_polycount genegeerd.
Smart Topology — met model_type: smart-topology en ai_model: meshy-t2. Het model wordt direct gegenereerd met dit polygoonaantal; er wordt geen remesh uitgevoerd en should_remesh is niet vereist. Bereik 100 tot 15.000, standaard 4.000.
Name
symmetry_mode
Type
string
⚠ verouderd
standaard auto
Description
Verouderd. Deze parameter heeft geen invloed meer op de output.
Het symmetry_mode-veld bepaalt het symmetriegedrag tijdens het genereren van het model.
De geldige waarden zijn:
off: Schakelt symmetrie uit.
auto: Bepaalt en past automatisch symmetrie toe op basis van de invoergeometrie.
on: Dwingt symmetrie af tijdens het genereren.
Name
pose_mode
Type
string
standaard ""
Description
Geef de pose-mode voor het gegenereerde model op.
Beschikbare waarden:
a-pose: Genereert het model in een A-pose.
t-pose: Genereert het model in een T-pose.
"" (lege string): Geen specifieke pose toegepast.
Name
is_a_t_pose
Type
boolean
⚠ verouderd
standaard false
Description
Gebruik in plaats daarvan pose_mode. Of het model in een A/T-pose moet worden gegenereerd.
Name
art_style
Type
string
⚠ verouderd
standaard realistic
Description
Niet ondersteund door Meshy-6. Verzoeken met Meshy-6 negeren art_style, en sommige combinaties kunnen fouten veroorzaken. Beschikbare waarden: realistic, sculpture.
enable_pbr moet op false worden ingesteld bij gebruik van de Sculpture-stijl, aangezien de Sculpture-stijl zijn eigen set PBR-maps genereert.
Name
moderation
Type
boolean
standaard false
Description
Wanneer ingesteld op true, wordt de invoerinhoud automatisch gescreend op mogelijk schadelijke inhoud. Als schadelijke inhoud wordt gedetecteerd, gaat de taak niet verder naar generatie.
De tekst uit prompt wordt gescreend.
Name
target_formats
Type
string[]
Description
Specificeert welke 3D-bestandsindelingen in de output moeten worden opgenomen. Alleen de gevraagde indelingen worden gegenereerd en geretourneerd, wat de doorlooptijd van de taak kan verkorten. Wanneer weggelaten, worden alle ondersteunde indelingen opgenomen.
Wanneer weggelaten, worden alle indelingen behalve 3mf gegenereerd. 3mf wordt alleen opgenomen wanneer expliciet opgegeven.
Name
alpha_thumbnail
Type
boolean
standaard false
Description
Wanneer ingesteld op true, rendert de taak bovendien een versie van de preview met transparante achtergrond (RGBA) en retourneert deze als alpha_thumbnail_url in de GET-respons. Het bestaande veld thumbnail_url blijft ongewijzigd.
Name
auto_size
Type
boolean
standaard false
Description
Wanneer ingesteld op true, gebruikt de service AI-visie om automatisch de werkelijke hoogte van het object te schatten en het model dienovereenkomstig in formaat te wijzigen. De oorsprong wordt standaard bottom, tenzij origin_at expliciet is ingesteld.
Alleen van toepassing wanneer auto_size = true
Name
origin_at
Type
string
standaard bottom
Description
Positie van de oorsprong wanneer auto_size is ingeschakeld.
Beschikbare waarden: bottom, center.
Retourwaarden
De result-eigenschap van de respons bevat de taak-id van de nieuw aangemaakte Tekst naar 3D-taak.
Foutmodi
Name
400 - Bad Request
Description
Het verzoek was onaanvaardbaar. Veelvoorkomende oorzaken:
Ontbrekende parameter: Een vereiste parameter (bijv. prompt, mode) ontbreekt.
Ongeldige parameter: art_style is niet een van de toegestane waarden.
Prompt te lang: De prompt overschrijdt de tekenlimiet.
Name
401 - Unauthorized
Description
Authenticatie mislukt. Controleer je API-sleutel.
Name
402 - Payment Required
Description
Onvoldoende credits om deze taak uit te voeren.
Name
429 - Too Many Requests
Description
Je hebt je rate limit overschreden.
Request
POST
/openapi/v2/text-to-3d
# Simple preview with required params onlycurlhttps://api.meshy.ai/openapi/v2/text-to-3d \-H'Authorization: Bearer ${YOUR_API_KEY}' \-H'Content-Type: application/json' \-d'{ "mode": "preview", "prompt": "a monster mask"}'# Preview with remesh and A-posecurlhttps://api.meshy.ai/openapi/v2/text-to-3d \-H'Authorization: Bearer ${YOUR_API_KEY}' \-H'Content-Type: application/json' \-d'{ "mode": "preview", "prompt": "a futuristic robot warrior", "should_remesh": true, "target_polycount": 100000, "pose_mode": "a-pose", "target_formats": ["glb"]}'
Deze endpoint maakt een Text to 3D refine-taak aan, die een textuur toepast op een voltooide preview-mesh. Je moet de preview_task_id opgeven van een geslaagde preview-taak. Dit is de tweede stap van de tweestaps-workflow.
Parameters
Name
mode
Type
string
Verplicht
Description
Dit veld moet worden ingesteld op "refine" bij het aanmaken van een refine-taak.
Name
preview_task_id
Type
string
Verplicht
Description
De bijbehorende preview-task-id.
De status van de opgegeven preview-taak moet SUCCEEDED zijn.
Name
enable_pbr
Type
boolean
standaard false
Description
Genereer PBR-maps (metallic, roughness, normal) naast de basiskleur. Er wordt ook een emission map toegevoegd wanneer ai_modelmeshy-6 is, behalve bij texture_resolution: 8k (dan wordt geen emission map geproduceerd). meshy-7 (en latest) produceert geen emission map.
Name
texture_resolution
Type
string
standaard 2k
Description
Resolutie van de basiskleurtextuur. Een van 2k (2048×2048), 4k (4096×4096) of 8k (8192×8192). Hogere resoluties leggen meer oppervlaktedetail vast. Geldt alleen voor de refine-mode.
4k en 8k vereisen ai_modelmeshy-6, meshy-7 of latest. Bij 8k wordt geen emission map geproduceerd.
Name
hd_texture
Type
boolean
⚠ verouderd
standaard false
Description
Gebruik in plaats daarvan texture_resolution — equivalent aan texture_resolution: "4k". Als beide zijn ingesteld, heeft texture_resolution voorrang.
Name
texture_prompt
Type
string
Description
Geef een aanvullende tekstprompt op om het textureringsproces te sturen. Maximaal 800 tekens.
Name
texture_image_url
Type
string
Description
Geef een 2D-afbeelding op om het textureringsproces te sturen. We ondersteunen momenteel de formaten .jpg, .jpeg en .png.
Er zijn twee manieren om de afbeelding op te geven:
Publiek toegankelijke URL: een URL die toegankelijk is vanaf het openbare internet
Data URI: een base64-gecodeerde data-URI van de afbeelding. Voorbeeld van een data-URI: data:image/jpeg;base64,<your base64-encoded image data>
Het textureren op basis van een afbeelding werkt mogelijk niet optimaal als er aanzienlijke geometrieverschillen zijn tussen het originele asset en de geüploade afbeelding. Slechts één van texture_image_url of texture_prompt kan worden gebruikt om het textureringsproces te sturen. Als beide parameters worden opgegeven, wordt standaard texture_prompt gebruikt om het model te textureren.
Name
ai_model
Type
string
standaard inherited from the preview task
Description
ID van het model dat gebruikt moet worden voor het refinen. Beschikbare waarden: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Laat deze parameter weg om het model over te nemen dat door de preview-taak is gebruikt, zodat een preview en de bijbehorende refine end-to-end op hetzelfde model blijven. Geef een expliciete waarde op om die overname te overschrijven.
Een expliciete latest wordt hier op precies dezelfde manier bepaald als bij de preview-taak (momenteel Meshy 7), zodat een latest-preview en de bijbehorende latest-refine altijd op hetzelfde texture-model uitkomen.
Name
moderation
Type
boolean
standaard false
Description
Wanneer ingesteld op true, wordt de invoerinhoud automatisch gescreend op mogelijk schadelijke inhoud. Als schadelijke inhoud wordt gedetecteerd, gaat de taak niet verder naar generatie.
Zowel de tekst uit texture_prompt als de afbeelding uit texture_image_url worden gescreend.
Name
remove_lighting
Type
boolean
standaard true
Description
Verwijdert hooglichten en schaduwen uit de basiskleurtextuur, wat een schoner resultaat oplevert dat beter werkt bij aangepaste belichtingsopstellingen.
Heeft alleen effect wanneer ai_modelmeshy-6 is. Bij meshy-7 (en latest) wordt de parameter geaccepteerd maar genegeerd.
Name
target_formats
Type
string[]
Description
Bepaalt welke 3D-bestandsformaten in de uitvoer worden opgenomen. Alleen de gevraagde formaten worden gegenereerd en geretourneerd, wat de doorlooptijd van de taak kan verkorten. Indien weggelaten, worden alle ondersteunde formaten opgenomen.
Indien weggelaten, worden alle formaten behalve 3mf gegenereerd. 3mf wordt alleen opgenomen wanneer dit expliciet is opgegeven.
Name
alpha_thumbnail
Type
boolean
standaard false
Description
Wanneer ingesteld op true, rendert de taak bovendien een versie van de preview met transparante achtergrond (RGBA) en retourneert deze als alpha_thumbnail_url in de GET-response. Het bestaande veld thumbnail_url blijft ongewijzigd.
Name
auto_size
Type
boolean
standaard false
Description
Wanneer ingesteld op true, gebruikt de service AI-vision om automatisch de werkelijke hoogte van het object te schatten en het model dienovereenkomstig te herschalen. De oorsprong wordt standaard bottom, tenzij origin_at expliciet is ingesteld.
Alleen van toepassing wanneer auto_size = true
Name
origin_at
Type
string
standaard bottom
Description
Positie van de oorsprong wanneer auto_size is ingeschakeld.
Beschikbare waarden: bottom, center.
Retourneert
De result-eigenschap van de response bevat de task-id van de nieuw aangemaakte Text to 3D-taak.
Foutmodi
Name
400 - Bad Request
Description
Het verzoek was onacceptabel. Veelvoorkomende oorzaken:
Ongeldige task-ID: de preview_task_id is ongeldig of bestaat niet.
Taak nog niet gereed: de preview-taak is nog niet geslaagd.
Model komt niet overeen: het AI-model van de preview-taak is niet compatibel met het gevraagde refine-model.
Name
401 - Unauthorized
Description
Authenticatie mislukt. Controleer je API-sleutel.
Name
402 - Payment Required
Description
Onvoldoende credits om deze taak uit te voeren.
Name
404 - Not Found
Description
De preview-taak opgegeven via preview_task_id is niet gevonden.
Dit endpoint stelt je in staat om een Tekst naar 3D-taak op te halen met een geldige taak-id.
Raadpleeg Het Tekst naar 3D Taakobject om te zien welke
eigenschappen zijn opgenomen in het Tekst naar 3D-taakobject.
Dit endpoint werkt zowel voor preview- als refine-taken.
Parameters
Name
id
Type
path
Description
Unieke identificatie voor de Tekst naar 3D-taak die je wilt ophalen.
Het Text to 3D Task-object is een werkeenheid die Meshy bijhoudt om een 3D-model te genereren op basis van tekst-invoer. Er zijn twee fasen in de Text to 3D API, preview en refine. De preview-fase is voor het genereren van een 3D-model met alleen een mesh, en de refine-fase is voor het genereren van een getextureerd 3D-model op basis van het resultaat van de preview-fase.
Het object heeft de volgende eigenschappen:
Eigenschappen
Name
id
Type
string
Description
Unieke identifier voor de taak. Hoewel we als implementatiedetail een k-sorteerbare UUID gebruiken voor taak-id's, mag je geen aannames doen over de indeling van de id.
Name
type
Type
string
Description
Type van de Text to 3D-taak. Mogelijke waarden zijn text-to-3d-preview voor taken in de preview-fase en text-to-3d-refine voor taken in de refine-fase.
Name
model_urls
Type
object
Description
Downloadbare URL naar het getextureerde 3D-modelbestand dat door Meshy is gegenereerd. De eigenschap voor een formaat wordt weggelaten als het formaat niet is gegenereerd, in plaats van een lege tekenreeks terug te geven.
Name
glb
Type
string
Description
Downloadbare URL naar het GLB-bestand.
Name
fbx
Type
string
Description
Downloadbare URL naar het FBX-bestand.
Name
usdz
Type
string
Description
Downloadbare URL naar het USDZ-bestand.
Name
obj
Type
string
Description
Downloadbare URL naar het OBJ-bestand.
Name
mtl
Type
string
Description
Downloadbare URL naar het MTL-bestand.
Name
stl
Type
string
Description
Downloadbare URL naar het STL-bestand.
Name
3mf
Type
string
Description
Downloadbare URL naar het 3MF-bestand. Alleen aanwezig wanneer 3mf is opgevraagd via target_formats.
Name
prompt
Type
string
Description
Dit is de ongewijzigde prompt die is gebruikt om de taak te maken.
Name
negative_prompt
Type
string
⚠ verouderd
Description
Behouden voor achterwaartse compatibiliteit. Dit veld heeft geen functionele invloed op gegenereerde modellen.
Name
art_style
Type
string
⚠ verouderd
Description
De ongewijzigde art_style die is gebruikt om de preview-taak te maken. Niet ondersteund door Meshy-6.
Name
texture_richness
Type
string
⚠ verouderd
Description
Behouden voor achterwaartse compatibiliteit. Dit veld heeft geen functionele invloed op gegenereerde modellen.
Name
texture_prompt
Type
string
Description
Aanvullende tekstprompt die wordt gebruikt om het textureringsproces tijdens de refine-fase te sturen.
Name
ultra_mode
Type
boolean
Description
Geeft de ultra_mode-waarde weer waarmee de preview-taak is gemaakt. Alleen aanwezig voor meshy-7 (of latest) preview-taken die expliciet ultra_mode hebben ingesteld; anders weggelaten.
Name
texture_image_url
Type
string
Description
Downloadbare URL naar de textuurafbeelding die is gebruikt om het textureringsproces te sturen.
Name
thumbnail_url
Type
string
Description
Downloadbare URL naar de thumbnail-afbeelding van het modelbestand.
Name
alpha_thumbnail_url
Type
string
Description
Downloadbare URL naar een versie van thumbnail_url met transparante achtergrond (RGBA). Alleen aanwezig wanneer de taak is gemaakt met alpha_thumbnail: true en de transparante preview succesvol is gerenderd; anders wordt dit veld weggelaten.
Name
video_url
Type
string
⚠ verouderd
Description
Downloadbare URL naar de previewvideo. Zal in een toekomstige release worden verwijderd.
Name
progress
Type
integer
Description
Voortgang van de taak. Als de taak nog niet is gestart, is deze eigenschap 0. Zodra de taak is geslaagd, wordt dit 100.
Name
started_at
Type
timestamp
Description
Tijdstempel van het moment waarop de taak is gestart, in milliseconden. Als de taak nog niet is gestart, is deze eigenschap 0.
Een tijdstempel geeft het aantal milliseconden weer dat is verstreken sinds 1 januari 1970 UTC, volgens
de standaard RFC 3339.
Vrijdag 1 september 2023 12:00:00 PM GMT wordt bijvoorbeeld weergegeven als 1693569600000. Dit geldt
voor alle tijdstempels in de Meshy API.
Name
created_at
Type
timestamp
Description
Tijdstempel van het moment waarop de taak is gemaakt, in milliseconden.
Name
finished_at
Type
timestamp
Description
Tijdstempel van het moment waarop de taak is voltooid, in milliseconden. Als de taak nog niet is voltooid, is deze eigenschap 0.
Name
status
Type
string
Description
Status van de taak. Mogelijke waarden zijn een van PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Een array van textuur-URL-objecten die door de taak zijn gegenereerd. Normaal gesproken bevat dit slechts één textuur-URL-object. Elke textuur-URL heeft de volgende eigenschappen:
Name
base_color
Type
string
Description
Downloadbare URL naar de basiskleurenkaart-afbeelding.
Name
metallic
Type
string
Description
Downloadbare URL naar de metallic map-afbeelding.
Als de taak is gemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
normal
Type
string
Description
Downloadbare URL naar de normal map-afbeelding.
Als de taak is gemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
roughness
Type
string
Description
Downloadbare URL naar de roughness map-afbeelding.
Als de taak is gemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
emission
Type
string
Description
Downloadbare URL naar de emission map-afbeelding.
Als de taak is gemaakt met enable_pbr: false, of ai_modelmeshy-5 is, wordt deze eigenschap weggelaten.
Name
preceding_tasks
Type
integer
Description
Het aantal voorafgaande taken.
De waarde van dit veld is alleen betekenisvol als de taakstatus PENDING is.
Name
task_error
Type
object
Description
Foutdetails voor mislukte taken. Zie Fouten voor de volledige referentie van het task_error-object.
Name
consumed_credits
Type
integer
Description
Het aantal credits dat door deze taak is verbruikt. Aanwezig wanneer de taakstatus PENDING, IN_PROGRESS of SUCCEEDED is. Geeft 0 terug voor FAILED-taken (credits worden bij mislukking terugbetaald).
Example Text to 3D Task Object
{"id":"018a210d-8ba4-705c-b111-1f1776f7f578","type":"text-to-3d-preview","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=***","obj":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?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=***" },"prompt":"a monster mask","texture_prompt":"green slimy skin with scales and warts","texture_image_url":"","thumbnail_url":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***","progress":100,"started_at":1692771667037,"created_at":1692771650657,"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":20}