Text till 3D API är en funktion som låter dig integrera Meshys funktioner för Text till 3D i din egen applikation. I det här avsnittet hittar du all information
du behöver för att komma igång med detta API.
Text till 3D använder ett arbetsflöde i två steg. Skapa först en preview-uppgift (mode: "preview") för att generera ett 3D-nät utan textur, så att du kan utvärdera formen. Skicka sedan den slutförda preview-uppgiftens uppgifts-ID till en refine-uppgift (mode: "refine") för att applicera textur på nätet. Båda stegen delar samma endpoint.
Denna endpoint skapar en Text till 3D-preview-uppgift, som genererar ett otexturerat 3D-nät (endast geometri) från en textprompt. Detta är det första steget i det tvåstegsarbetsflödet. När preview lyckats, använd det returnerade uppgifts-ID:t för att skapa en refine-uppgift för texturering. Se
The Text to 3D Task Object för det fullständiga svarsschemat.
Parametrar
Name
mode
Type
string
Obligatorisk
Description
Detta fält ska sättas till "preview" när en preview-uppgift skapas.
Name
prompt
Type
string
Obligatorisk
Description
Beskriv vilken typ av objekt 3D-modellen är. Max 800 tecken.
Name
model_type
Type
string
standard standard
Description
Ange typen av 3D-nätgenerering.
Tillgängliga värden:
standard: Vanlig högdetaljerad 3D-nätgenerering.
smart-topology: Välj Smart Topology-modellen med ai_model (meshy-t2).
lowpoly (föråldrad): Genererar low-poly-nät optimerat för renare polygoner. Vi rekommenderar att du använder smart-topology istället.
När smart-topology väljs ignoreras should_remesh och decimation_mode, och endast topology: triangle accepteras.
När lowpoly väljs ignoreras ai_model, topology, target_polycount och should_remesh.
Name
ai_model
Type
string
standard latest
Description
ID för modellen som ska användas. De tillgängliga värdena beror på model_type.
meshy-t2 (standard): Smart Topology-modellen — renare topology, naturligt separerade delar, triangelutdata, och ett antal ytor som du kan ställa in med target_polycount.
Name
ultra_mode
Type
boolean
standard false
Description
Aktiverar Ultra-generering för geometri med högre kvalitet och finare ytdetaljer. Genereringen tar längre tid och kostar 5 extra credits.
Stöds endast när ai_model är meshy-7 (eller latest), och endast i preview-mode.
Name
should_remesh
Type
boolean
standard false (meshy-6, meshy-7), true (others)
Description
Styr om remesh-fasen ska aktiveras. För modellen med högst kvalitet rekommenderar vi att sätta should_remesh till false.
Gäller endast när should_remesh = true
Name
topology
Type
string
standard triangle
Description
Ange topology för den genererade modellen.
Tillgängliga värden:
quad: Genererar ett nät som domineras av quads.
triangle: Genererar ett decimerat triangelnät.
Smart Topology-utdata är endast trianglar. Att begära quad tillsammans med ai_model: meshy-t2 returnerar ett fel.
Name
decimation_mode
Type
integer
Description
Aktivera adaptiv decimering genom att ange en polygonantal-nivå. När denna är satt ignoreras target_polycount.
Tillgängliga värden:
1: Adaptiv — ultra polygonantal.
2: Adaptiv — hög polygonantal.
3: Adaptiv — medium polygonantal.
4: Adaptiv — låg polygonantal.
Name
target_polycount
Type
integer
Description
Önskat antal polygoner (ytor) i utdatan. Det faktiska antalet kan avvika från målet beroende på geometrin.
target_polycount gäller i två oberoende fall:
Remesh — med should_remesh: true på en standard-modell. Nätet remeshas (decimeras) till ungefär detta antal. Intervall 100 till 300 000, standard 30 000. Om decimation_mode är satt har den prioritet och target_polycount ignoreras.
Smart Topology — med model_type: smart-topology och ai_model: meshy-t2. Modellen genereras direkt med detta antal ytor; ingen remesh körs och should_remesh krävs inte. Intervall 100 till 15 000, standard 4 000.
Name
symmetry_mode
Type
string
⚠ föråldrad
standard auto
Description
Föråldrad. Denna parameter påverkar inte längre utdatan.
Fältet symmetry_mode styr symmetribeteende under modellgenereringsprocessen.
De giltiga värdena är:
off: Inaktiverar symmetri.
auto: Bestämmer och tillämpar automatiskt symmetri baserat på inmatad geometri.
on: Tvingar fram symmetri under generering.
Name
pose_mode
Type
string
standard ""
Description
Ange pose mode för den genererade modellen.
Tillgängliga värden:
a-pose: Genererar modellen i en A-pose.
t-pose: Genererar modellen i en T-pose.
"" (tom sträng): Ingen specifik pose tillämpas.
Name
is_a_t_pose
Type
boolean
⚠ föråldrad
standard false
Description
Använd pose_mode istället. Om modellen ska genereras i en A/T-pose.
Name
art_style
Type
string
⚠ föråldrad
standard realistic
Description
Stöds inte av Meshy-6. Förfrågningar som använder Meshy-6 kommer att ignorera art_style, och vissa kombinationer kan orsaka fel. Tillgängliga värden: realistic, sculpture.
enable_pbr bör sättas till false när Sculpture-stil används, eftersom Sculpture-stil genererar sin egen uppsättning PBR-mappar.
Name
moderation
Type
boolean
standard false
Description
När detta sätts till true kommer det inmatade innehållet automatiskt att granskas för potentiellt skadligt innehåll. Om skadligt innehåll upptäcks kommer uppgiften inte att fortsätta till generering.
Texten från prompt kommer att granskas.
Name
target_formats
Type
string[]
Description
Anger vilka 3D-filformat som ska ingå i utdatan. Endast de begärda formaten genereras och returneras, vilket kan minska uppgiftens genomförandetid. När den utelämnas inkluderas alla format som stöds.
När den utelämnas genereras alla format utom 3mf. 3mf inkluderas endast när det anges explicit.
Name
alpha_thumbnail
Type
boolean
standard false
Description
När detta sätts till true renderar uppgiften dessutom en version av preview med transparent bakgrund (RGBA) och returnerar den som alpha_thumbnail_url i GET-svaret. Det befintliga fältet thumbnail_url förblir oförändrat.
Name
auto_size
Type
boolean
standard false
Description
När detta sätts till true använder tjänsten AI-vision för att automatiskt uppskatta objektets verkliga höjd och ändrar storlek på modellen därefter. Origo kommer som standard vara bottom om inte origin_at uttryckligen anges.
Gäller endast när auto_size = true
Name
origin_at
Type
string
standard bottom
Description
Origos position när auto_size är aktiverat.
Tillgängliga värden: bottom, center.
Returer
Egenskapen result i svaret innehåller uppgifts-id:t för den nyligen skapade Text till 3D-uppgiften.
Felägen
Name
400 - Bad Request
Description
Begäran kunde inte accepteras. Vanliga orsaker:
Saknad parameter: En obligatorisk parameter (t.ex. prompt, mode) saknas.
Ogiltig parameter: art_style är inte ett av de tillåtna värdena.
Prompt för lång: prompt överskrider teckengränsen.
Name
401 - Unauthorized
Description
Autentiseringen misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckligt med credits för att utföra denna uppgift.
Name
429 - Too Many Requests
Description
Du har överskridit din hastighetsgräns.
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"]}'
Denna endpoint skapar en Text till 3D refine task, som applicerar textur på ett färdigt preview-nät. Du måste ange preview_task_id från en lyckad preview task. Detta är det andra steget i det tvåstegs arbetsflödet.
Parametrar
Name
mode
Type
string
Obligatorisk
Description
Detta fält ska sättas till "refine" när en refine task skapas.
Name
preview_task_id
Type
string
Obligatorisk
Description
Motsvarande preview task-id.
Status för den angivna preview task måste vara SUCCEEDED.
Name
enable_pbr
Type
boolean
standard false
Description
Generera PBR-mappar (metallic, roughness, normal) utöver basfärgen. En emission map inkluderas också när ai_model är meshy-6, förutom vid texture_resolution: 8k (ingen emission map produceras då). meshy-7 (och latest) producerar inte någon emission map.
Name
texture_resolution
Type
string
standard 2k
Description
Upplösning för basfärgstexturen. Antingen 2k (2048×2048), 4k (4096×4096) eller 8k (8192×8192). Högre upplösningar fångar mer ytdetalj. Gäller endast för refine-mode.
4k och 8k kräver ai_modelmeshy-6, meshy-7 eller latest. Vid 8k produceras ingen emission map.
Name
hd_texture
Type
boolean
⚠ föråldrad
standard false
Description
Använd texture_resolution istället — motsvarar texture_resolution: "4k". Om båda anges har texture_resolution företräde.
Name
texture_prompt
Type
string
Description
Ange en ytterligare textprompt för att styra textureringsprocessen. Max 800 tecken.
Name
texture_image_url
Type
string
Description
Ange en 2d-bild för att styra textureringsprocessen. Vi stöder för närvarande formaten .jpg, .jpeg och .png.
Det finns två sätt att ange bilden:
Publikt tillgänglig URL: En URL som är tillgänglig från det publika internet
Data URI: En base64-kodad data URI av bilden. Exempel på en data URI: data:image/jpeg;base64,<din base64-kodade bilddata>
Bildtexturering fungerar eventuellt inte optimalt om det finns betydande geometriska skillnader mellan den ursprungliga tillgången och den uppladdade bilden. Endast en av texture_image_url eller texture_prompt kan användas för att styra textureringsprocessen. Om båda parametrarna anges kommer texture_prompt som standard att användas för att texturera modellen.
Name
ai_model
Type
string
standard inherited from the preview task
Description
ID för modellen som ska användas för refine. Tillgängliga värden: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
Utelämna denna parameter för att ärva modellen som användes av preview task, vilket håller en preview och dess refine på samma modell hela vägen. Skicka ett explicit värde för att åsidosätta detta arv.
Ett explicit latest löses upp exakt som det gör för preview task (för närvarande Meshy 7), så en latest-preview och dess latest-refine hamnar alltid på samma texturmodell.
Name
moderation
Type
boolean
standard false
Description
När det sätts till true kommer det angivna innehållet automatiskt att granskas för potentiellt skadligt innehåll. Om skadligt innehåll upptäcks kommer tasken inte att fortsätta till generering.
Både texten från texture_prompt och bilden från texture_image_url kommer att granskas.
Name
remove_lighting
Type
boolean
standard true
Description
Tar bort highlights och skuggor från basfärgstexturen, vilket ger ett renare resultat som fungerar bättre med anpassade ljussättningar.
Har endast effekt när ai_model är meshy-6. På meshy-7 (och latest) accepteras parametern men ignoreras.
Name
target_formats
Type
string[]
Description
Anger vilka 3D-filformat som ska inkluderas i resultatet. Endast de begärda formaten kommer att genereras och returneras, vilket kan minska tiden det tar att slutföra tasken. Om parametern utelämnas inkluderas alla format som stöds.
Om parametern utelämnas genereras alla format förutom 3mf. 3mf inkluderas endast när det anges explicit.
Name
alpha_thumbnail
Type
boolean
standard false
Description
När det sätts till true renderar tasken dessutom en version av förhandsgranskningen med transparent bakgrund (RGBA) och returnerar den som alpha_thumbnail_url i GET-svaret. Det befintliga fältet thumbnail_url förblir oförändrat.
Name
auto_size
Type
boolean
standard false
Description
När det sätts till true använder tjänsten AI-syn för att automatiskt uppskatta objektets verkliga höjd och ändra storlek på modellen därefter. Origo kommer som standard att vara bottom om inte origin_at uttryckligen anges.
Gäller endast när auto_size = true
Name
origin_at
Type
string
standard bottom
Description
Origos position när auto_size är aktiverat.
Tillgängliga värden: bottom, center.
Returvärden
Svarets result-egenskap innehåller task-id för den nyligen skapade Text till 3D-tasken.
Felfall
Name
400 - Bad Request
Description
Begäran kunde inte accepteras. Vanliga orsaker:
Ogiltigt task-id: preview_task_id är ogiltigt eller finns inte.
Task inte redo: Preview task har ännu inte lyckats.
Modellmissmatchning: Preview tasken AI-modell är inkompatibel med den begärda refine-modellen.
Name
401 - Unauthorized
Description
Autentiseringen misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckliga credits för att utföra denna task.
Name
404 - Not Found
Description
Preview tasken som angavs av preview_task_id hittades inte.
Denna endpoint gör det möjligt att hämta en Text till 3D-uppgift givet ett giltigt uppgifts-id.
Se The Text to 3D Task Object för att se vilka
egenskaper som ingår i Text till 3D-uppgiftsobjektet.
Denna endpoint fungerar för både preview- och refine-uppgifter.
Parametrar
Name
id
Type
path
Description
Unik identifierare för den Text till 3D-uppgift som ska hämtas.
Text till 3D-uppgiftsobjektet är en arbetsenhet som Meshy håller reda på för att generera en 3D-modell från en text-inmatning. Det finns två steg i Text till 3D API:et, preview och refine. Preview-steget är till för att generera en 3D-modell med enbart nät, och refine-steget är till för att generera en texturerad 3D-modell baserad på resultatet från preview-steget.
Objektet har följande egenskaper:
Egenskaper
Name
id
Type
string
Description
Unik identifierare för uppgiften. Även om vi använder en k-sorterbar UUID för uppgifts-id som implementationsdetalj bör du inte göra några antaganden om id:ts format.
Name
type
Type
string
Description
Typ av Text till 3D-uppgift. Möjliga värden är text-to-3d-preview för uppgifter i preview-steget och text-to-3d-refine för uppgifter i refine-steget.
Name
model_urls
Type
object
Description
Nedladdningsbar URL till den texturerade 3D-modellfilen som genererats av Meshy. Egenskapen för ett format utelämnas om formatet inte genereras, istället för att returnera en tom sträng.
Name
glb
Type
string
Description
Nedladdningsbar URL till GLB-filen.
Name
fbx
Type
string
Description
Nedladdningsbar URL till FBX-filen.
Name
usdz
Type
string
Description
Nedladdningsbar URL till USDZ-filen.
Name
obj
Type
string
Description
Nedladdningsbar URL till OBJ-filen.
Name
mtl
Type
string
Description
Nedladdningsbar URL till MTL-filen.
Name
stl
Type
string
Description
Nedladdningsbar URL till STL-filen.
Name
3mf
Type
string
Description
Nedladdningsbar URL till 3MF-filen. Finns endast med när 3mf begärdes via target_formats.
Name
prompt
Type
string
Description
Detta är den oförändrade prompt som användes för att skapa uppgiften.
Name
negative_prompt
Type
string
⚠ föråldrad
Description
Bibehålls för bakåtkompatibilitet. Detta fält har ingen funktionell påverkan på genererade modeller.
Name
art_style
Type
string
⚠ föråldrad
Description
Den oförändrade art_style som användes för att skapa preview-uppgiften. Stöds inte av Meshy-6.
Name
texture_richness
Type
string
⚠ föråldrad
Description
Bibehålls för bakåtkompatibilitet. Detta fält har ingen funktionell påverkan på genererade modeller.
Name
texture_prompt
Type
string
Description
Ytterligare textprompt som tillhandahålls för att styra textureringsprocessen under refine-steget.
Name
ultra_mode
Type
boolean
Description
Återspeglar värdet på ultra_mode som preview-uppgiften skapades med. Finns endast med för meshy-7- (eller latest-) preview-uppgifter som uttryckligen angav ultra_mode; utelämnas i annat fall.
Name
texture_image_url
Type
string
Description
Nedladdningsbar URL till texturbilden som användes för att styra textureringsprocessen.
Name
thumbnail_url
Type
string
Description
Nedladdningsbar URL till miniatyrbilden för modellfilen.
Name
alpha_thumbnail_url
Type
string
Description
Nedladdningsbar URL till en version av thumbnail_url med transparent bakgrund (RGBA). Finns endast med när uppgiften skapades med alpha_thumbnail: true och den transparenta förhandsvisningen renderades korrekt; annars utelämnas detta fält.
Name
video_url
Type
string
⚠ föråldrad
Description
Nedladdningsbar URL till förhandsvisningsvideon. Kommer att tas bort i en framtida version.
Name
progress
Type
integer
Description
Uppgiftens progress. Om uppgiften ännu inte har startats kommer denna egenskap att vara 0. När uppgiften har lyckats blir den 100.
Name
started_at
Type
timestamp
Description
Tidsstämpel för när uppgiften startades, i millisekunder. Om uppgiften ännu inte har startats kommer denna egenskap att vara 0.
En tidsstämpel representerar antalet millisekunder som förflutit sedan 1 januari 1970 UTC, enligt
standarden RFC 3339.
Till exempel representeras fredagen den 1 september 2023 12:00:00 PM GMT som 1693569600000. Detta gäller
för alla tidsstämplar i Meshy API.
Name
created_at
Type
timestamp
Description
Tidsstämpel för när uppgiften skapades, i millisekunder.
Name
finished_at
Type
timestamp
Description
Tidsstämpel för när uppgiften avslutades, i millisekunder. Om uppgiften ännu inte är avslutad kommer denna egenskap att vara 0.
Name
status
Type
string
Description
Uppgiftens status. Möjliga värden är ett av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
En array av texture URL-objekt som genereras från uppgiften. Vanligtvis innehåller denna endast ett texture URL-objekt. Varje texture URL har följande egenskaper:
Name
base_color
Type
string
Description
Nedladdningsbar URL till bilden för baskulör-mappen.
Name
metallic
Type
string
Description
Nedladdningsbar URL till bilden för den metalliska mappen.
Om uppgiften skapas med enable_pbr: false utelämnas denna egenskap.
Name
normal
Type
string
Description
Nedladdningsbar URL till bilden för normalmappen.
Om uppgiften skapas med enable_pbr: false utelämnas denna egenskap.
Name
roughness
Type
string
Description
Nedladdningsbar URL till bilden för ojämnhetsmappen (roughness).
Om uppgiften skapas med enable_pbr: false utelämnas denna egenskap.
Name
emission
Type
string
Description
Nedladdningsbar URL till bilden för emissionsmappen.
Om uppgiften skapas med enable_pbr: false, eller om ai_model är meshy-5, utelämnas denna egenskap.
Name
preceding_tasks
Type
integer
Description
Antalet föregående uppgifter.
Värdet för detta fält är endast meningsfullt om uppgiftens status är PENDING.
Name
task_error
Type
object
Description
Felinformation för misslyckade uppgifter. Se Fel för hela referensen för objektet task_error.
Name
consumed_credits
Type
integer
Description
Antalet credits som förbrukats av denna uppgift. Finns med när uppgiftens status är PENDING, IN_PROGRESS eller SUCCEEDED. Returnerar 0 för FAILED-uppgifter (credits återbetalas vid misslyckande).
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}