Text na 3D API je funkce, která vám umožňuje integrovat možnosti Meshy Text na 3D do vaší vlastní aplikace. V této části najdete všechny informace,
které potřebujete, abyste mohli s tímto API začít.
Text na 3D používá dvoukrokový pracovní postup. Nejprve vytvořte úlohu náhledu (mode: "preview") pro vygenerování 3D sítě bez textury, abyste mohli vyhodnotit tvar. Poté předejte ID dokončené úlohy náhledu úloze zpřesnění (mode: "refine") pro aplikování textury na síť. Oba kroky sdílejí stejný koncový bod.
Tento koncový bod vytvoří úlohu náhledu Text na 3D, která z textového prompt vygeneruje neotexturovanou 3D síť (pouze geometrie). Toto je první krok dvoukrokového workflow. Jakmile náhled uspěje, použijte vrácené ID úlohy k vytvoření refine úlohy pro texturování. Úplné schéma odpovědi najdete v části
Objekt úlohy Text na 3D.
Parametry
Name
mode
Type
string
Povinné
Description
Toto pole by mělo být při vytváření úlohy náhledu nastaveno na "preview".
Name
prompt
Type
string
Povinné
Description
Popište, jaký druh objektu 3D model představuje. Maximálně 600 znaků.
Name
model_type
Type
string
výchozí standard
Description
Určete typ generování 3D sítě.
Dostupné hodnoty:
standard: Běžné generování 3D sítě s vysokými detaily.
lowpoly: Generuje low-poly síť optimalizovanou pro čistší polygony.
Když je vybráno lowpoly, ai_model, topology, target_polycount, should_remesh jsou ignorovány.
Name
ai_model
Type
string
výchozí latest
Description
ID modelu, který se má použít. Dostupné hodnoty: meshy-5, meshy-6, latest (Meshy 6).
Name
should_remesh
Type
boolean
výchozí false (meshy-6), true (others)
Description
Určuje, zda povolit fázi Remesh. Když je nastaveno na false, API přímo vrátí trojúhelníkovou síť s nejvyšší přesností.
Určete cílový počet polygonů ve vygenerovaném modelu. Skutečný počet polygonů se může od cíle lišit v závislosti na složitosti geometrie.
Platný rozsah hodnot se liší v závislosti na úrovni uživatele:
100 až 300 000 (včetně)
Name
decimation_mode
Type
integer
Description
Povolte adaptivní decimaci nastavením úrovně počtu polygonů. Když je nastaveno, target_polycount je ignorováno.
Dostupné hodnoty:
1: Adaptivní — ultra počet polygonů.
2: Adaptivní — vysoký počet polygonů.
3: Adaptivní — střední počet polygonů.
4: Adaptivní — nízký počet polygonů.
Name
symmetry_mode
Type
string
⚠ zastaralé
výchozí auto
Description
Zastaralé. Tento parametr již neovlivňuje výstup.
Pole symmetry_mode řídí chování symetrie během procesu generování modelu.
Platné hodnoty jsou:
off: Zakáže symetrii.
auto: Automaticky určí a použije symetrii na základě vstupní geometrie.
on: Vynutí symetrii během generování.
Name
pose_mode
Type
string
výchozí ""
Description
Určete pose_mode pro vygenerovaný model.
Dostupné hodnoty:
a-pose: Vygeneruje model v A pose.
t-pose: Vygeneruje model v T pose.
"" (prázdný řetězec): Nepoužije se žádná konkrétní póza.
Name
is_a_t_pose
Type
boolean
⚠ zastaralé
výchozí false
Description
Místo toho použijte pose_mode. Zda vygenerovat model v A/T pose.
Name
art_style
Type
string
⚠ zastaralé
výchozí realistic
Description
Meshy-6 není podporováno. Požadavky používající Meshy-6 budou art_style ignorovat a některé kombinace mohou způsobit chyby. Dostupné hodnoty: realistic, sculpture.
enable_pbr by mělo být při použití stylu Sculpture nastaveno na false, protože styl Sculpture generuje vlastní sadu PBR map.
Name
moderation
Type
boolean
výchozí false
Description
Když je nastaveno na true, vstupní obsah bude automaticky zkontrolován na potenciálně škodlivý obsah. Pokud je škodlivý obsah detekován, úloha nepřejde ke generování.
Text z prompt bude zkontrolován.
Name
target_formats
Type
string[]
Description
Určuje, které formáty 3D souborů zahrnout do výstupu. Vygenerovány a vráceny budou pouze požadované formáty, což může zkrátit dobu dokončení úlohy. Pokud je vynecháno, zahrnou se všechny podporované formáty.
Dostupné hodnoty: glb, obj, fbx, stl, usdz, 3mf
Pokud je vynecháno, vygenerují se všechny formáty kromě 3mf. 3mf je zahrnuto pouze tehdy, když je výslovně zadáno.
Name
alpha_thumbnail
Type
boolean
výchozí false
Description
Když je nastaveno na true, úloha navíc vykreslí verzi náhledu s průhledným pozadím (RGBA) a vrátí ji jako alpha_thumbnail_url v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny.
Name
auto_size
Type
boolean
výchozí false
Description
Když je nastaveno na true, služba použije AI vision k automatickému odhadu skutečné výšky objektu a odpovídajícímu změnění velikosti modelu. Počátek bude ve výchozím nastavení bottom, pokud není origin_at výslovně nastaveno.
Platí pouze když auto_size = true
Name
origin_at
Type
string
výchozí bottom
Description
Poloha počátku, když je povoleno auto_size.
Dostupné hodnoty: bottom, center.
Vrací
Vlastnost result odpovědi obsahuje id úlohy nově vytvořené úlohy Text na 3D.
Režimy selhání
Name
400 - Bad Request
Description
Požadavek nebyl přijatelný. Běžné příčiny:
Chybějící parametr: Chybí požadovaný parametr (např. prompt, mode).
Neplatný parametr: art_style není jednou z povolených hodnot.
Příliš dlouhý prompt: prompt překračuje limit znaků.
Name
401 - Unauthorized
Description
Autentizace selhala. Zkontrolujte prosím svůj API klíč.
Tento koncový bod vytvoří úlohu refine Text na 3D, která aplikuje texturu na dokončenou náhledovou síť. Musíte zadat preview_task_id z úspěšné náhledové úlohy. Toto je druhý krok dvoukrokového workflow.
Parametry
Name
mode
Type
string
Povinné
Description
Toto pole by mělo být při vytváření úlohy refine nastaveno na "refine".
Name
preview_task_id
Type
string
Povinné
Description
ID odpovídající náhledové úlohy.
Stav dané náhledové úlohy musí být SUCCEEDED.
Name
enable_pbr
Type
boolean
výchozí false
Description
Kromě základní barvy vygeneruje PBR mapy (metallic, roughness, normal). Mapa emisí je také zahrnuta, když je ai_model nastaven na meshy-6 nebo latest.
Name
hd_texture
Type
boolean
výchozí false
Description
Vygeneruje texturu základní barvy v rozlišení 4K (4096×4096) pro vyšší úroveň detailů.
Podporováno pouze tehdy, když je ai_model nastaven na meshy-6 nebo latest. PBR mapy se vždy generují ve 2K.
Name
texture_prompt
Type
string
Description
Zadejte dodatečný textový prompt pro vedení procesu texturování. Maximálně 600 znaků.
Name
texture_image_url
Type
string
Description
Zadejte 2D obrázek pro vedení procesu texturování. Aktuálně podporujeme formáty .jpg, .jpeg a .png.
Obrázek lze zadat dvěma způsoby:
Veřejně přístupná URL: URL, která je přístupná z veřejného internetu
Data URI: Data URI obrázku kódovaná v base64. Příklad Data URI: data:image/jpeg;base64,<your base64-encoded image data>
Texturování pomocí obrázku nemusí fungovat optimálně, pokud jsou mezi původním assetem a nahraným obrázkem výrazné rozdíly v geometrii. K vedení procesu texturování lze použít pouze jeden z parametrů texture_image_url nebo texture_prompt. Pokud jsou zadány oba parametry, bude se pro texturování modelu ve výchozím nastavení používat texture_prompt.
Name
ai_model
Type
string
výchozí latest
Description
ID modelu, který se má použít pro refine. Dostupné hodnoty: meshy-5, meshy-6, latest (Meshy 6).
Name
moderation
Type
boolean
výchozí false
Description
Při nastavení na true bude vstupní obsah automaticky kontrolován na potenciálně škodlivý obsah. Pokud je zjištěn škodlivý obsah, úloha nebude pokračovat ke generování.
Bude kontrolován jak text z texture_prompt, tak obrázek z texture_image_url.
Name
remove_lighting
Type
boolean
výchozí true
Description
Odstraní odlesky a stíny z textury základní barvy, čímž vytvoří čistší výsledek, který lépe funguje s vlastními nastaveními osvětlení.
Podporováno pouze tehdy, když je ai_model nastaven na meshy-6 nebo latest.
Name
target_formats
Type
string[]
Description
Určuje, které formáty 3D souborů mají být zahrnuty ve výstupu. Vygenerují a vrátí se pouze požadované formáty, což může zkrátit dobu dokončení úlohy. Pokud je vynecháno, zahrnou se všechny podporované formáty.
Dostupné hodnoty: glb, obj, fbx, stl, usdz, 3mf
Pokud je vynecháno, vygenerují se všechny formáty kromě 3mf. 3mf je zahrnut pouze při explicitním zadání.
Name
alpha_thumbnail
Type
boolean
výchozí false
Description
Při nastavení na true úloha navíc vykreslí verzi náhledu s průhledným pozadím (RGBA) a vrátí ji jako alpha_thumbnail_url v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny.
Name
auto_size
Type
boolean
výchozí false
Description
Při nastavení na true služba použije AI vision k automatickému odhadu reálné výšky objektu a odpovídajícímu změnění velikosti modelu. Počátek bude ve výchozím nastavení bottom, pokud není explicitně nastaveno origin_at.
Platí pouze když auto_size = true
Name
origin_at
Type
string
výchozí bottom
Description
Poloha počátku, když je povoleno auto_size.
Dostupné hodnoty: bottom, center.
Návratové hodnoty
Vlastnost result odpovědi obsahuje id úlohy nově vytvořené úlohy Text na 3D.
Režimy selhání
Name
400 - Bad Request
Description
Požadavek nebyl přijatelný. Běžné příčiny:
Neplatné ID úlohy: preview_task_id je neplatné nebo neexistuje.
Úloha není připravena: Náhledová úloha ještě nebyla úspěšně dokončena.
Neshoda modelu: AI model náhledové úlohy není kompatibilní s požadovaným modelem refine.
Name
401 - Unauthorized
Description
Autentizace selhala. Zkontrolujte svůj API klíč.
Name
402 - Payment Required
Description
Nedostatek kreditů k provedení této úlohy.
Name
404 - Not Found
Description
Náhledová úloha určená pomocí preview_task_id nebyla nalezena.
Tento koncový bod vám umožňuje načíst úlohu Text na 3D podle platného id úlohy.
Podívejte se na Objekt úlohy Text na 3D, kde zjistíte, které
vlastnosti jsou zahrnuty v objektu úlohy Text na 3D.
Tento koncový bod funguje pro úlohy náhledu i zpřesnění.
Parametry
Name
id
Type
path
Description
Jedinečný identifikátor úlohy Text na 3D, kterou chcete načíst.
Vrací
Odpověď obsahuje objekt úlohy Text na 3D. Podrobnosti najdete v části
Objekt úlohy Text na 3D.
Objekt úlohy Text na 3D je pracovní jednotka, kterou Meshy sleduje za účelem vygenerování 3D modelu z textového vstupu. API Text na 3D má dvě fáze: preview a refine. Fáze náhledu slouží ke generování 3D modelu pouze se sítí a fáze zpřesnění slouží ke generování 3D modelu s mapami materiálů na základě výsledku fáze náhledu.
Objekt má následující vlastnosti:
Vlastnosti
Name
id
Type
string
Description
Jedinečný identifikátor úlohy. Přestože jako implementační detail používáme pro ID úloh k-sortable UUID,
neměli byste dělat žádné předpoklady o formátu ID.
Name
type
Type
string
Description
Typ úlohy Text na 3D. Možné hodnoty jsou text-to-3d-preview pro úlohy fáze náhledu a text-to-3d-refine pro úlohy fáze zpřesnění.
Name
model_urls
Type
object
Description
URL ke stažení souboru otexturovaného 3D modelu vygenerovaného službou Meshy. Vlastnost pro daný formát bude vynechána, pokud formát není vygenerován, namísto vrácení prázdného řetězce.
Name
glb
Type
string
Description
URL ke stažení souboru GLB.
Name
fbx
Type
string
Description
URL ke stažení souboru FBX.
Name
usdz
Type
string
Description
URL ke stažení souboru USDZ.
Name
obj
Type
string
Description
URL ke stažení souboru OBJ.
Name
mtl
Type
string
Description
URL ke stažení souboru MTL.
Name
stl
Type
string
Description
URL ke stažení souboru STL.
Name
3mf
Type
string
Description
URL ke stažení souboru 3MF. Přítomno pouze tehdy, když byl 3mf vyžádán prostřednictvím target_formats.
Name
prompt
Type
string
Description
Toto je nezměněný prompt, který byl použit k vytvoření úlohy.
Name
negative_prompt
Type
string
⚠ zastaralé
Description
Zachováno kvůli zpětné kompatibilitě. Toto pole nemá žádný funkční dopad na vygenerované modely.
Name
art_style
Type
string
⚠ zastaralé
Description
Nezměněný art_style, který byl použit k vytvoření úlohy náhledu. Není podporováno službou Meshy-6.
Name
texture_richness
Type
string
⚠ zastaralé
Description
Zachováno kvůli zpětné kompatibilitě. Toto pole nemá žádný funkční dopad na vygenerované modely.
Name
texture_prompt
Type
string
Description
Dodatečný textový prompt poskytnutý k vedení procesu texturování během fáze zpřesnění.
Name
texture_image_url
Type
string
Description
URL ke stažení obrázku textury, který byl použit k vedení procesu texturování.
Name
thumbnail_url
Type
string
Description
URL ke stažení obrázku miniatury souboru modelu.
Name
alpha_thumbnail_url
Type
string
Description
URL ke stažení verze thumbnail_url s průhledným pozadím (RGBA). Přítomno pouze tehdy, když byla úloha vytvořena s alpha_thumbnail: true a průhledný náhled byl úspěšně vykreslen; jinak je toto pole vynecháno.
Name
video_url
Type
string
⚠ zastaralé
Description
URL ke stažení videa náhledu. Bude odstraněno v budoucí verzi.
Name
progress
Type
integer
Description
Progress úlohy. Pokud úloha ještě nebyla spuštěna, tato vlastnost bude 0. Jakmile bude úloha úspěšně dokončena, hodnota bude 100.
Name
started_at
Type
timestamp
Description
Časové razítko okamžiku, kdy byla úloha spuštěna, v milisekundách. Pokud úloha ještě nebyla spuštěna, tato vlastnost bude 0.
Časové razítko představuje počet milisekund uplynulých od 1. ledna 1970 UTC podle
standardu RFC 3339.
Například pátek 1. září 2023 12:00:00 GMT je reprezentován jako 1693569600000. To se vztahuje
na všechna časová razítka v Meshy API.
Name
created_at
Type
timestamp
Description
Časové razítko okamžiku, kdy byla úloha vytvořena, v milisekundách.
Name
finished_at
Type
timestamp
Description
Časové razítko okamžiku, kdy byla úloha dokončena, v milisekundách. Pokud úloha ještě není dokončena, tato vlastnost bude 0.
Name
status
Type
string
Description
Stav úlohy. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
texture_urls
Type
array
Description
Pole objektů URL textur, které jsou vygenerovány z úlohy. Obvykle obsahuje pouze jeden objekt URL textury. Každá URL textura má následující vlastnosti:
Name
base_color
Type
string
Description
URL ke stažení obrázku mapy základní barvy.
Name
metallic
Type
string
Description
URL ke stažení obrázku metalické mapy.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
normal
Type
string
Description
URL ke stažení obrázku normálové mapy.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
roughness
Type
string
Description
URL ke stažení obrázku mapy drsnosti.
Pokud je úloha vytvořena s enable_pbr: false, tato vlastnost bude vynechána.
Name
emission
Type
string
Description
URL ke stažení obrázku emisní mapy.
Pokud je úloha vytvořena s enable_pbr: false, nebo ai_model je meshy-5, tato vlastnost bude vynechána.
Name
preceding_tasks
Type
integer
Description
Počet předcházejících úloh.
Hodnota tohoto pole má význam pouze tehdy, když je stav úlohy PENDING.
Name
task_error
Type
object
Description
Podrobnosti o chybě u neúspěšných úloh. Úplnou referenci objektu task_error najdete v části Chyby.
Name
consumed_credits
Type
integer
Description
Počet kreditů spotřebovaných touto úlohou. Přítomno, když je stav úlohy PENDING, IN_PROGRESS nebo SUCCEEDED. Vrací 0 pro úlohy FAILED (kredity jsou při selhání vráceny).
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,"seed":1234,"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}