Tekst naar 3D API is een functie waarmee je de Tekst naar 3D-mogelijkheden van Meshy kunt integreren in je eigen applicatie. In dit gedeelte vind je alle informatie
die je nodig hebt om aan de slag te gaan met deze API.
Tekst naar 3D gebruikt een tweestaps workflow. Maak eerst een preview-taak (mode: "preview") aan om een 3D-mesh zonder textuur te genereren, zodat je de vorm kunt beoordelen. Geef vervolgens de taak-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 geretourneerde taak-ID om een refine-taak aan te maken voor het aanbrengen van texturen. 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
Specificeer het type 3D-mesh-generatie.
Beschikbare waarden:
standard: Reguliere 3D-mesh-generatie met hoog detailniveau.
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 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, triangle-output en een polygonaantal dat je kunt instellen met target_polycount.
Name
ultra_mode
Type
boolean
standaard false
Description
Schakelt Ultra-generatie in voor geometrie met een hogere getrouwheid en 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
Specificeer de topology van het gegenereerde model.
Beschikbare waarden:
quad: Genereert een overwegend quad-gebaseerde mesh.
triangle: Genereert een gereduceerde triangle-mesh.
Smart Topology-output is uitsluitend triangle. Het opvragen van quad samen met ai_model: meshy-t2 geeft een foutmelding.
Name
decimation_mode
Type
integer
Description
Schakel adaptieve reductie in door een polygonaantal-niveau in te stellen. Wanneer dit is 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 in twee onafhankelijke gevallen effect:
Remesh — met should_remesh: true op een standard-model. De mesh wordt geremesht (gereduceerd) 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 met dit polygonaantal gegenereerd; 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 effect 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
Specificeer de pose_mode voor het gegenereerde model.
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. Aanvragen met Meshy-6 negeren art_style, en sommige combinaties kunnen fouten veroorzaken. Beschikbare waarden: realistic, sculpture.
enable_pbr moet op false worden gezet 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 door naar de generatiefase.
De tekst uit prompt wordt gescreend.
Name
target_formats
Type
string[]
Description
Specificeert welke 3D-bestandsformaten in de output moeten worden opgenomen. Alleen de opgevraagde 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 expliciet opgegeven.
Name
alpha_thumbnail
Type
boolean
standaard false
Description
Wanneer ingesteld op true, rendert de taak aanvullend 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-vision om automatisch de werkelijke hoogte van het object te schatten en het model dienovereenkomstig van formaat te wijzigen. De oorsprong wordt standaard op bottom gezet, 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 eigenschap result van de respons bevat de taak-id van de nieuw aangemaakte Text to 3D-taak.
Foutmodi
Name
400 - Bad Request
Description
Het verzoek was onaanvaardbaar. Veelvoorkomende oorzaken:
Ontbrekende parameter: Een verplichte 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 is 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"]}'
Dit endpoint creëert een Tekst naar 3D refine-taak, die textuur toepast op een voltooide preview-mesh. U moet de preview_task_id van een succesvolle preview-taak opgeven. Dit is de tweede stap van de tweestapswerkwijze.
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-taak-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. Een emissiemap wordt ook meegeleverd wanneer ai_modelmeshy-6 is, behalve bij texture_resolution: 8k (er wordt geen emissiemap geproduceerd). meshy-7 (en latest) produceert geen emissiemap.
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 emissiemap geproduceerd.
Name
hd_texture
Type
boolean
⚠ verouderd
standaard false
Description
Gebruik in plaats daarvan texture_resolution — equivalent aan texture_resolution: "4k". Wanneer beide zijn ingesteld, heeft texture_resolution voorrang.
Name
texture_prompt
Type
string
Description
Geef een aanvullende tekstprompt op om het textureringsproces te begeleiden. Maximaal 800 tekens.
Name
texture_image_url
Type
string
Description
Geef een 2D-afbeelding op om het textureringsproces te begeleiden. 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>
Afbeeldingstexturering werkt mogelijk niet optimaal als er aanzienlijke geometrische verschillen zijn tussen het originele asset en de geüploade afbeelding. Slechts één van texture_image_url of texture_prompt mag worden gebruikt om het textureringsproces te begeleiden. Als beide parameters worden opgegeven, wordt texture_prompt standaard gebruikt om het model te textureren.
Name
ai_model
Type
string
standaard latest
Description
ID van het te gebruiken model voor refine. Beschikbare waarden: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
latest wordt hier precies zo herleid als bij de preview-taak (momenteel Meshy 7), zodat een latest-preview en de bijbehorende latest-refine altijd bij hetzelfde texturemodel terechtkomen.
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 van texture_prompt als de afbeelding van texture_image_url worden gescreend.
Name
remove_lighting
Type
boolean
standaard true
Description
Verwijdert lichtaccenten en schaduwen uit de basiskleurtextuur, wat een schoner resultaat oplevert dat beter werkt onder aangepaste lichtopstellingen.
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
Specificeert welke 3D-bestandsformaten in de uitvoer moeten worden opgenomen. Alleen de aangevraagde formaten worden gegenereerd en geretourneerd, wat de voltooiingstijd van de taak kan verkorten. Wanneer weggelaten, worden alle ondersteunde formaten opgenomen.
Wanneer 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-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 reële hoogte van het object te schatten en het model dienovereenkomstig aan te passen. De oorsprong staat standaard op 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.
Returns
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 onacceptabel. Veelvoorkomende oorzaken:
Ongeldige taak-ID: De preview_task_id is ongeldig of bestaat niet.
Taak nog niet gereed: De preview-taak is nog niet geslaagd.
Modelmismatch: Het AI-model van de preview-taak is niet compatibel met het aangevraagde refine-model.
Name
401 - Unauthorized
Description
Authenticatie mislukt. Controleer uw API-sleutel.
Name
402 - Payment Required
Description
Onvoldoende credits om deze taak uit te voeren.
Name
404 - Not Found
Description
De preview-taak die is opgegeven via preview_task_id is niet gevonden.
Deze endpoint stelt je in staat om een Tekst naar 3D-taak op te halen met een geldig taak-id.
Raadpleeg Het Tekst naar 3D-taakobject om te zien welke
eigenschappen zijn opgenomen in het Tekst naar 3D-taakobject.
Deze endpoint werkt zowel voor preview- als refine-taken.
Parameters
Name
id
Type
path
Description
Unieke identificatie voor de Tekst naar 3D-taak die moet worden opgehaald.
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 identificatiecode voor de taak. Hoewel we als implementatiedetail een k-sortable UUID gebruiken voor taak-id's, mag je geen aannames doen over het formaat 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 string te retourneren.
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 via target_formats is aangevraagd.
Name
prompt
Type
string
Description
Dit is de ongewijzigde prompt die werd gebruikt om de taak aan te maken.
Name
negative_prompt
Type
string
⚠ verouderd
Description
Onderhouden voor achterwaartse compatibiliteit. Dit veld heeft geen functionele invloed op gegenereerde modellen.
Name
art_style
Type
string
⚠ verouderd
Description
De ongewijzigde art_style die werd gebruikt om de preview-taak aan te maken. Niet ondersteund door Meshy-6.
Name
texture_richness
Type
string
⚠ verouderd
Description
Onderhouden 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 werd aangemaakt. 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 werd 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 werd aangemaakt 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. Wordt in een toekomstige release 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 wanneer de taak is gestart, in milliseconden. Als de taak nog niet is gestart, is deze eigenschap 0.
Een tijdstempel geeft het aantal milliseconden weer sinds 1 januari 1970 UTC, volgens
de RFC 3339-standaard.
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 wanneer de taak is aangemaakt, in milliseconden.
Name
finished_at
Type
timestamp
Description
Tijdstempel van wanneer 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 basiskleurenafbeelding (base color map).
Name
metallic
Type
string
Description
Downloadbare URL naar de metallic map-afbeelding.
Als de taak is aangemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
normal
Type
string
Description
Downloadbare URL naar de normal map-afbeelding.
Als de taak is aangemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
roughness
Type
string
Description
Downloadbare URL naar de roughness map-afbeelding.
Als de taak is aangemaakt met enable_pbr: false, wordt deze eigenschap weggelaten.
Name
emission
Type
string
Description
Downloadbare URL naar de emission map-afbeelding.
Als de taak is aangemaakt met enable_pbr: false, of ai_modelmeshy-5 is, wordt deze eigenschap weggelaten.
Name
preceding_tasks
Type
integer
Description
Het aantal voorgaande taken.
De waarde van dit veld is alleen relevant 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. Retourneert 0 voor FAILED-taken (credits worden terugbetaald bij een mislukking).
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}