Text till 3D API är en funktion som tillåter dig att integrera Meshy's Text till 3D-funktionalitet i din egen applikation. I detta avsnitt 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. Först skapar du en förhandsgranskning-uppgift (mode: "preview") för att generera ett 3D-nät utan textur, så du kan utvärdera formen. Sedan vidarebefordrar du ID:t för den slutförda förhandsgranskningen till en förfina-uppgift (mode: "refine") för att applicera textur på nätet. Båda stegen delar samma endpoint.
Denna endpoint skapar en Text till 3D förhandsgranskningsuppgift, som genererar ett icke-texturerat 3D-nät (endast geometri) från en textprompt. Detta är det första steget av arbetsflödet i två steg. När förhandsgranskningen lyckas, använd det returnerade uppgifts-ID:t för att skapa en förfina-uppgift för texturering. Se
Text till 3D Uppgiftsobjektet för hela svarsstrukturen.
Parametrar
Name
mode
Type
string
Obligatorisk
Description
Detta fält ska ställas in till "preview" när du skapar en förhandsgranskningsuppgift.
Name
prompt
Type
string
Obligatorisk
Description
Beskriv vad för slags objekt 3D-modellen är. Max 600 tecken.
Name
model_type
Type
string
standard standard
Description
Specificera typen av 3D nätgenerering.
Tillgängliga värden:
standard: Vanlig högdetaljnätgenerering.
smart-topology: Välj Smart Topology-modellen med ai_model (meshy-t2).
lowpoly (föråldrad): Genererar ett låg-poly nät optimerat för renare polygoner. Vi rekommenderar att använda smart-topology istället.
När smart-topology är vald, ignoreras should_remesh och decimation_mode, och endast topology: triangle accepteras.
När lowpoly är vald, 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. Tillgängliga värden beror på model_type.
meshy-t2 (standard): Smart Topology-modellen — renare topology, nativt separerade delar, triangulär utgång, och ett ansiktsantal du kan sätta med target_polycount.
Name
ultra_mode
Type
boolean
standard false
Description
Aktiverar Ultra-generering för högre trogenhet på geometri med finare ytdetalj. Generering tar längre tid och kräver 5 credits.
Endast stödt när ai_model är meshy-7 (eller latest), och endast i preview-läge.
Name
should_remesh
Type
boolean
standard false (meshy-6, meshy-7), true (annat)
Description
Kontrollerar om man ska aktivera remesh-fasen. För den bästa kvaliteten rekommenderar vi att ställa should_remesh till false.
Gäller endast när should_remesh = true
Name
topology
Type
string
standard triangle
Description
Specificera topologin av den genererade modellen.
Tillgängliga värden:
quad: Generera ett fyrdominerat nät.
triangle: Generera ett decimerat triangulärt nät.
Smart Topology-utgång är bara triangulär. Förfrågan om quad tillsammans med ai_model: meshy-t2 returnerar ett fel.
Name
decimation_mode
Type
integer
Description
Aktivera adaptiv decimation genom att ställa in en polycounthöjd. När den är satt ignoreras target_polycount.
Tillgängliga värden:
1: Adaptiv — ultra polygonantal.
2: Adaptiv — högt polygonantal.
3: Adaptiv — medelhögt polygonantal.
4: Adaptiv — lågt polygonantal.
Name
target_polycount
Type
integer
Description
Målad antal polygoner (ytor) i utgången. Det faktiska antalet kan avvika från målet beroende på geometrin.
target_polycount träder i kraft i två oberoende fall:
Remesh — med should_remesh: true på en standard-modell. Modellen är remeshed (decimerad) till ungefär detta antal. Intervall 100 till 300,000, standard 30,000. Om decimation_mode är inställd, går den före och target_polycount ignoreras.
Smart Topology — med model_type: smart-topology och ai_model: meshy-t2. Modellen genereras direkt vid detta ytantalsantal; inga 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 utgången.
symmetry_mode-fältet kontrollerar symmetrins beteende under modellgenereringsprocessen.
De giltiga värdena är:
off: Inaktiverar symmetri.
auto: Bestämmer och tillämpar symmetri automatiskt baserat på inmatningsgeometri.
on: Tvingar symmetri under generering.
Name
pose_mode
Type
string
standard ""
Description
Specificera poseläget för den genererade modellen.
Tillgängliga värden:
a-pose: Generera modellen i en A-pos.
t-pose: Generera modellen i en T-pos.
"" (tom sträng): Ingen specifik pose tillämpad.
Name
is_a_t_pose
Type
boolean
⚠ föråldrad
standard false
Description
Använd pose_mode istället. Huruvida modellen ska genereras i en A/T-pos.
Name
art_style
Type
string
⚠ föråldrad
standard realistic
Description
Ej stödd av Meshy-6. Förfrågningar med Meshy-6 kommer att ignorera art_style, och vissa kombinationer kan orsaka fel. Tillgängliga värden: realistic, sculpture.
enable_pbr bör ställas till false när Skulptur-stil används, eftersom Skulptur-stil genererar sin egen uppsättning av PBR mappar.
Name
moderation
Type
boolean
standard false
Description
När den är inställd på true, kommer innehållet automatiskt att kontrolleras 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
Specificerar vilka 3D-filformat som ska inkluderas i utgången. Endast de begärda formaten kommer att genereras och returneras, vilket kan minska slutförandetiden för uppgiften. När det utelämnas inkluderas alla stödda format.
När det utelämnas genereras alla format utom 3mf. 3mf är endast inkluderat när det uttryckligen är angivet.
Name
alpha_thumbnail
Type
boolean
standard false
Description
När den är inställd på true, renderar uppgiften dessutom en version med transparent bakgrund (RGBA) av förhandsgranskningen och returnerar den som alpha_thumbnail_url på GET-svaret. Det befintliga thumbnail_url-fältet är oförändrat.
Name
auto_size
Type
boolean
standard false
Description
När den är inställd på true, använder tjänsten AI-vision för att automatiskt uppskatta objektets verkliga höjd och ändra storleken på modellen därefter. Ursprung kommer att standardinställas till bottom såvida inte origin_at uttryckligen är angivet.
Gäller endast när auto_size = true
Name
origin_at
Type
string
standard bottom
Description
Position av ursprunget när auto_size är aktiverad.
Tillgängliga värden: bottom, center.
Återkommer
result-egenskapen i svaret innehåller uppgiften id för den nyligen skapade Text till 3D-uppgiften.
Felmodeller
Name
400 - Bad Request
Description
Begäran var oacceptabel. Vanliga orsaker:
Saknad parameter: En krävd parameter (t.ex. prompt, mode) saknas.
Ogiltig parameter: art_style är inte ett av de tillåtna värdena.
För lång prompt: prompt överstiger teckengränsen.
Name
401 - Unauthorized
Description
Autenticering misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckliga 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
# Enkel förhandsgranskning med endast obligatoriska parametrarcurlhttps://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"}'# Förhandsgranskning med remesh och 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": "en futuristisk robotkrigare", "should_remesh": true, "target_polycount": 100000, "pose_mode": "a-pose", "target_formats": ["glb"]}'
Denna endpoint skapar en Text till 3D förfina uppgift, som applicerar textur på ett avslutat förhandsgranskningsnät. Du måste ange preview_task_id från en lyckad förhandsgranskningsuppgift. Detta är det andra steget i arbetsflödet i två steg.
Parametrar
Name
mode
Type
string
Obligatorisk
Description
Detta fält ska sättas till "refine" när man skapar en förfina uppgift.
Name
preview_task_id
Type
string
Obligatorisk
Description
Det motsvarande förhandsgranskningsuppgifts-ID:t.
Status för den angivna förhandsgranskningsuppgiften måste vara SUCCEEDED.
Name
enable_pbr
Type
boolean
standard false
Description
Generera PBR-mappar (metaller, ojämnhet, normal) utöver grundfärgen. En emissionskarta ingår också när ai_model är meshy-6, förutom vid texture_resolution: 8k (ingen emissionskarta produceras). meshy-7 (och latest) producerar inte en emissionskarta.
Name
texture_resolution
Type
string
standard 2k
Description
Grundfärgs texturupplösning. En av 2k (2048×2048), 4k (4096×4096), eller 8k (8192×8192). Högre upplösningar fångar mer ytdetalj. Gäller endast refine-läge.
4k och 8k kräver ai_modelmeshy-6, meshy-7, eller latest. Vid 8k produceras ingen emissionskarta.
Name
hd_texture
Type
boolean
⚠ föråldrad
standard false
Description
Använd texture_resolution istället — motsvarar texture_resolution: "4k". När båda är inställda, har texture_resolution företräde.
Name
texture_prompt
Type
string
Description
Ange en extra textprompt för att guida textureringsprocessen. Max 600 tecken.
Name
texture_image_url
Type
string
Description
Tillhandahåll en 2D-bild för att guida textureringsprocessen. Vi stöder för närvarande .jpg, .jpeg, och .png format.
Det finns två sätt att tillhandahålla bilden:
Offentligt tillgänglig URL: En URL som är tillgänglig från det offentliga internet
Data URI: En base64-kodad data URI av bilden. Exempel på en data URI: data:image/jpeg;base64,<your base64-encoded image data>
Bildtexturering kanske inte fungerar optimalt om det finns betydande skillnader i geometri mellan den ursprungliga asset och den uppladdade bilden. Endast en av texture_image_url eller texture_prompt får användas för att guida textureringsprocessen. Om båda parametrarna tillhandahålls kommer texture_prompt att användas för att texturera modellen som standard.
Name
ai_model
Type
string
standard latest
Description
ID för modellen som ska användas för förfining. Tillgängliga värden: meshy-5, meshy-6, meshy-7, latest (Meshy 7).
latest löser sig här precis som det gör på förhandsgranskningsuppgiften (för närvarande Meshy 7), så en latest-förhandsgranskning och dess latest-förfining landar alltid på samma texturmodell.
Name
moderation
Type
boolean
standard false
Description
När den är inställd på true, kommer innehållet automatiskt att kontrolleras för potentiellt skadligt innehåll. Om skadligt innehåll upptäcks kommer uppgiften 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 höjdpunkter och skuggor från grundfärgstexturen, vilket ger ett renare resultat som fungerar bättre under anpassade ljusinställningar.
Endast effektiv när ai_model är meshy-6. På meshy-7 (och latest) accepteras parametern men ignoreras.
Name
target_formats
Type
string[]
Description
Specificerar vilka 3D-filformat som ska inkluderas i utgången. Endast de begärda formaten kommer att genereras och returneras, vilket kan minska slutförandetiden för uppgiften. När det utelämnas inkluderas alla stödda format.
När det utelämnas genereras alla format utom 3mf. 3mf är endast inkluderat när det uttryckligen är angivet.
Name
alpha_thumbnail
Type
boolean
standard false
Description
När den är inställd på true, renderar uppgiften dessutom en version med transparent bakgrund (RGBA) av förhandsgranskningen och returnerar den som alpha_thumbnail_url på GET-svaret. Det befintliga thumbnail_url-fältet är oförändrat.
Name
auto_size
Type
boolean
standard false
Description
När den är inställd på true, använder tjänsten AI-vision för att automatiskt uppskatta objektets verkliga höjd och ändra storleken på modellen därefter. Ursprung kommer att standardinställas till bottom såvida inte origin_at uttryckligen är angivet.
Gäller endast när auto_size = true
Name
origin_at
Type
string
standard bottom
Description
Position av ursprunget när auto_size är aktiverad.
Tillgängliga värden: bottom, center.
Återkommer
result-egenskapen i svaret innehåller uppgiften id för den nyligen skapade Text till 3D-uppgiften.
Felmodeller
Name
400 - Bad Request
Description
Begäran var oacceptabel. Vanliga orsaker:
Ogiltigt uppgifts-ID: preview_task_id är ogiltig eller finns inte.
Uppgift inte redo: Förhandsgranskningsuppgiften har inte lyckats än.
Modellmismatch: Förhandsgranskningsuppgiftens AI-modell är inkompatibel med den begärda förfiningsmodellen.
Name
401 - Unauthorized
Description
Autenticering misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckliga credits för att utföra denna uppgift.
Name
404 - Not Found
Description
Förhandsgranskningsuppgiften specificerad av preview_task_id hittades inte.
Denna endpoint låter dig hämta en Text till 3D uppgift givet ett giltigt uppgifts id.
Se Text till 3D Uppgiftsobjektet för att se vilka
egenskaper som ingår med Text till 3D uppgiftsobjektet.
Denna endpoint fungerar för både förhandsgranskning och förfiningsuppgifter.
Parametrar
Name
id
Type
path
Description
Unik identifierare för Text till 3D-uppgiften 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, preview och refine. Förhandsgranskningssteget är för att generera en modell endast med nät, och förfiningssteget är för att generera en texturerad 3D-modell baserat på resultatet av förhandsgranskningssteget.
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:n som implementeringsdetalj, bör du inte göra några antaganden om formatet på ID:t.
Name
type
Type
string
Description
Typ av Text till 3D-uppgift. Möjliga värden är text-to-3d-preview för förhandsgranskningsstegs-uppgifter och text-to-3d-refine för förfiningsstegs-uppgifter.
Name
model_urls
Type
object
Description
Nedladdningsbar URL till den texturerade 3D-modellfilen som genereras 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. Endast närvarande när 3mf begärdes via target_formats.
Name
prompt
Type
string
Description
Detta är omodifierad prompt som användes för att skapa uppgiften.
Name
negative_prompt
Type
string
⚠ föråldrad
Description
Kvarstår för bakåtkompatibilitet. Detta fält har ingen funktionell inverkan på genererade modeller.
Name
art_style
Type
string
⚠ föråldrad
Description
Det omodifierade art_style som användes för att skapa förhandsgranskningsuppgiften. Ej stödd av Meshy-6.
Name
texture_richness
Type
string
⚠ föråldrad
Description
Kvarstår för bakåtkompatibilitet. Detta fält har ingen funktionell inverkan på genererade modeller.
Name
texture_prompt
Type
string
Description
Extra textprompt som tillhandahålls för att vägleda textureringsprocessen under förfiningssteget.
Name
ultra_mode
Type
boolean
Description
Återger ultra_mode-värdet som förhandsgranskningsuppgiften skapades med. Endast närvarande för meshy-7 (eller latest) förhandsgranskningsuppgifter som uttryckligen satte ultra_mode; utelämnas annars.
Name
texture_image_url
Type
string
Description
Nedladdningsbar URL till texturbilden som användes för att vägleda textureringsprocessen.
Name
thumbnail_url
Type
string
Description
Nedladdningsbar URL till miniatyrbilden av modellfilen.
Name
alpha_thumbnail_url
Type
string
Description
Nedladdningsbar URL till en version med transparent bakgrund (RGBA) av thumbnail_url. Endast närvarande när uppgiften skapades med alpha_thumbnail: true och den transparenta förhandsgranskningen renderades framgångsrikt; annars utelämnas detta fält.
Name
video_url
Type
string
⚠ föråldrad
Description
Nedladdningsbar URL till förhandsgranskningsvideon. Kommer att tas bort i en framtida release.
Name
progress
Type
integer
Description
Framsteg för uppgiften. Om uppgiften inte har börjat än, kommer denna egenskap att vara 0. När uppgiften har lyckats, kommer denna att bli 100.
Name
started_at
Type
timestamp
Description
Tidsstämpel för när uppgiften startades, i millisekunder. Om uppgiften inte har startat än, kommer denna egenskap att vara 0.
En tidsstämpel representerar antalet millisekunder som har förflutit sedan den 1 januari 1970 UTC, i enlighet med
RFC 3339 standarden.
Till exempel, fredag den 1 september 2023 12:00:00 PM GMT representeras 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 inte är avslutad än, kommer denna egenskap att vara 0.
Name
status
Type
string
Description
Status för uppgiften. Möjliga värden är en av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
En array av textur-URL-objekt som genereras från uppgiften. Normalt innehåller detta endast en textur-URL-objekt. Varje textur-URL har följande egenskaper:
Name
base_color
Type
string
Description
Nedladdningsbar URL till grundfärgskartsbilden.
Name
metallic
Type
string
Description
Nedladdningsbar URL till metallkartansbilden.
Om uppgiften skapas med enable_pbr: false, kommer denna egenskap att utelämnas.
Name
normal
Type
string
Description
Nedladdningsbar URL till normalmap bild.
Om uppgiften skapas med enable_pbr: false, kommer denna egenskap att utelämnas.
Name
roughness
Type
string
Description
Nedladdningsbar URL till ojämnhetskartansbilden.
Om uppgiften skapas med enable_pbr: false, kommer denna egenskap att utelämnas.
Name
emission
Type
string
Description
Nedladdningsbar URL till emissionskartansbilden.
Om uppgiften skapas med enable_pbr: false, eller ai_model är meshy-5, kommer denna egenskap att utelämnas.
Name
preceding_tasks
Type
integer
Description
Antalet föregående uppgifter.
Värdet på detta fält är meningsfullt endast om uppgiftsstatusen är PENDING.
Name
task_error
Type
object
Description
Feldetaljer för misslyckade uppgifter. Se Fel för full task_error-objektreferens.
Name
consumed_credits
Type
integer
Description
Antalet credits som konsumeras av denna uppgift. Närvarande när uppgiftsstatusen ä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}