UV Unwrap API
Gumawa ng UV unwrap para sa isang umiiral na 3D model. Patakbuhin ito bago mo i-texture ang model, o kapag kailangan ng isang tool tulad ng Blender, Substance Painter, o Unreal ng malinis at hindi nagtutumpukang UV layout.
Ang output ay isang UV white model. Ito ay may kaparehong hugis ng input, bagong UV coordinates, at walang tunay na texture. Kasama rito ang isang 2×2 abuhing placeholder material upang manatiling valid ang glTF material slot, at itinuturing ito ng mga standard na tool bilang untextured.
Sinusuportahan ng UV Unwrap ang mga mesh na hanggang 40,000 faces. Ang mas malaking model ay nagbabalik ng 400. Para mabawasan ang bilang ng faces, patakbuhin muna ang Remesh.
Tina-triangulate ng Meshy ang mga quad at n-gon mesh habang gumagawa ng UV, kaya ang output ay palaging isang triangle mesh.
Gumawa ng UV Unwrap task
Gumagawa ng UV Unwrap task.
Ang task ay tumatakbo sa background. Para malaman kung gaano karaming oras karaniwang tumatagal ang isang task, tingnan ang Oras ng pagproseso.
Request
# Chain from an existing Meshy task
curl https://api.meshy.ai/openapi/v1/uv-unwrap \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}'
# Or from a publicly accessible model URL
curl https://api.meshy.ai/openapi/v1/uv-unwrap \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/path/to/model.glb"
}'
Response
{
"result": "019361c6-9b34-7b23-bef2-d0107c4d92e2"
}
Mga Parameter
- Name
- input_task_id
- Type
- string
- Kinakailangan
- Description
Kinakailangan maliban kung magpadala ka ng
model_url. Ang ID ng isang Meshy API task na ang GLB output ay gusto mong i-unwrap, halimbawa ang isang Image to 3D, Text to 3D, o Remesh task. Ang task ay dapat may status naSUCCEEDEDat nakagawa ng isang GLB file.Ang mesh ay maaaring magkaroon ng hindi hihigit sa 40,000 faces. Ang isang mesh na may higit pa dito ay magbabalik ng
400. Para mabawasan ang bilang ng face, patakbuhin muna ang Remesh.
- Name
- model_url
- Type
- string
- Kinakailangan
- Description
Kinakailangan maliban kung magpadala ka ng
input_task_id. Ang model na i-u-unwrap, bilang isang pampublikong URL o isang data URI. Kung magpadala ka ng pareho, ginagamit ng Meshy anginput_task_id.Ang model ay dapat na isang
.glbfile. Para i-unwrap ang ibang format, i-convert muna ito sa GLB gamit ang Convert API.Ang file ay maaaring hanggang 400 MB mula sa isang
httpohttpsURL, o 100 MB bilang isang data URI. Para sa isang data URI, gamitin ang MIME type naapplication/octet-stream. Ang isang GLB na higit sa 100 MB ay hindi dapat gumamit ng Draco compression.Ang parehong 40,000-face na limitasyon ay naaangkop tulad ng sa
input_task_id. Ang isang mesh na may higit pa dito ay magbabalik ng400, kaya patakbuhin muna ang Remesh.
Mga Ibinabalik
Ang result field ng response ay may hawak ng ID ng bagong UV Unwrap task.
Mga mode ng kabiguan
- Name
400 - Bad Request- Description
Hindi maipapatakbo ang request. Sinasabi ng error message kung aling problema ang natagpuan nito. Halimbawa:
- Nawawalang parameter: Hindi ipinadala ang
input_task_idnimodel_url. - Di-wastong input task: Ang
input_task_iday hindi isang matagumpay na API task na may GLB na resulta. - Lumagpas ang bilang ng face: Ang mesh ay may mas maraming face kaysa sa pinapayagan ng UV Unwrap. Patakbuhin muna ang Remesh.
- Di-wastong format ng model: Ang
model_urlfile ay may hindi suportadong extension. - Hindi ma-access na URL: Hindi ma-download ng Meshy ang
model_urlfile. - Masyadong malaki ang model file: Ang
model_urlfile ay higit sa 400 MB mula sa isanghttpohttpsURL, o higit sa 100 MB bilang isang data URI. - Sobra sa dami ang face: Ang
model_urlfile ay higit sa 100 MB at may higit sa 10,000,000 face. Bawasan ang bilang ng face, pagkatapos ay ipadala muli ang file. - Hindi mabasang model file: Ang
model_urlfile ay higit sa 100 MB, at hindi mabasa ng Meshy ang header nito. Halimbawa, ito ay isang Draco-compressed GLB. - Masyadong kumplikado ang header ng model: Ang
model_urlfile ay higit sa 100 MB, at ang header nito ay may masyadong maraming mesh, node, o record na kailangang suriin. Bawasan ang bilang ng mga object sa file, pagkatapos ay ipadala ito muli.
Ayusin ang request, pagkatapos ay ipadala itong muli. Tingnan ang Errors.
- Nawawalang parameter: Hindi ipinadala ang
- Name
401 - Unauthorized- Description
Nawawala o hindi wasto ang API key. Suriin ang
Authorizationheader.
- Name
402 - Payment Required- Description
Halimbawa:
- Hindi sapat na credits: Ang account ay walang sapat na credits para sa task na ito, o naabot ng account ang isang limitasyon sa credit. Ang isang UV Unwrap task ay nagkakahalaga ng 5 credits. Suriin ang inyong balanse ng credit, pagkatapos ay subukan muli.
- Libreng plano: Ang paggawa ng task ay nangangailangan ng bayad na plano. I-upgrade ang inyong plano sa inyong subscription settings, pagkatapos ay subukan muli.
- Name
403 - Forbidden- Description
Ang
input_task_iday isang bas-relief model, na hindi ma-unwrap ng endpoint na ito. Ang mensahe ayThis model type does not support this operation. Magpadala ng ibang model.
- Name
404 - Not Found- Description
Ang
input_task_iday hindi tumutugma sa alinman sa inyong mga task. Suriin ang task ID, pagkatapos ay ipadala muli ang request.
- Name
429 - Too Many Requests- Description
Lumampas kayo sa inyong rate limit. Maghintay, pagkatapos ay subukan muli. Tingnan ang Rate limits.
Kumuha ng UV Unwrap task
Ibinabalik ang kasalukuyang estado ng isang UV Unwrap task batay sa ID nito.
Request
curl https://api.meshy.ai/openapi/v1/uv-unwrap/019361c6-9b34-7b23-bef2-d0107c4d92e2 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Para sa isang halimbawang tugon, tingnan ang halimbawang UV Unwrap task object.
Mga Ibinabalik
Mag-delete ng UV Unwrap task
Permanenteng nagde-delete ng UV Unwrap task, kasama ang mga output nito. Hindi mo na maibabalik pa ang isang na-delete.
Request
curl https://api.meshy.ai/openapi/v1/uv-unwrap/019361c6-9b34-7b23-bef2-d0107c4d92e2 \
-X DELETE \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Status ng task
Ang pag-delete ng PENDING na task ay nagre-refund ng mga credits na nagamit noong ginawa mo ito.
Hindi pwedeng i-delete ang isang IN_PROGRESS na task. Ang request ay magbabalik ng 409 Conflict,
at magpapatuloy pa ring tumakbo ang task. Hindi nagre-refund ang Meshy para sa isang task na nagsimula na,
kaya kung ide-delete mo ito, mawawala sa iyo ang credits at ang resulta. Hintayin munang
umabot ito sa SUCCEEDED, FAILED, o CANCELED, bago ito i-delete.
Ang pag-delete ng task na nasa final status (SUCCEEDED, FAILED, o CANCELED)
ay hindi nagre-refund ng mga credits nito.
List UV Unwrap tasks
Nagbabalik ng paginated na listahan ng iyong mga UV Unwrap task, mula sa pinakabago. Upang mag-page sa listahan, gamitin ang page_num at page_size.
Request
curl "https://api.meshy.ai/openapi/v1/uv-unwrap?page_num=1&page_size=20" \
-H "Authorization: Bearer ${YOUR_API_KEY}"
I-stream ang isang UV Unwrap task
Ini-stream ang mga update ng isang UV Unwrap task bilang Server-Sent Events (SSE). Ang bawat message event ay nagdadala ng isang UV Unwrap task object. Nagsasara ang stream kapag naabot ng task ang SUCCEEDED, FAILED, o CANCELED.
Upang mas mabilis na malaman na tapos na ang task, gamitin ang endpoint na ito sa halip na mag-poll ng GET /openapi/v1/uv-unwrap/:id.
Request
curl https://api.meshy.ai/openapi/v1/uv-unwrap/019361c6-9b34-7b23-bef2-d0107c4d92e2/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-N
Ang UV Unwrap task object
Ang isang UV Unwrap task object ay naglalarawan ng isang UV unwrap ng isang 3D model. Ito ang naghahawak ng status, ng progress, at ng model file kapag nagtagumpay ang task.
Example UV Unwrap Task Object
{
"id": "019361c6-9b34-7b23-bef2-d0107c4d92e2",
"type": "uv-unwrap",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/019361c6-9b34-7b23-bef2-d0107c4d92e2/output/model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/019361c6-9b34-7b23-bef2-d0107c4d92e2/output/preview.png?Expires=***",
"progress": 100,
"status": "SUCCEEDED",
"preceding_tasks": 0,
"created_at": 1716579120000,
"started_at": 1716579122000,
"finished_at": 1716579180000,
"expires_at": 1716665580000,
"task_error": {
"message": ""
},
"consumed_credits": 5
}
- Name
- id
- Type
- string
- Description
Ang task ID. Ituring ito bilang isang opaque string, at huwag umasa sa format nito.
- Name
- type
- Type
- string
- Description
Ang uri ng task, palaging
uv-unwrap.
- Name
- model_urls
- Type
- object
- Description
Mga naka-sign na download URL para sa UV white model. Ang UV Unwrap ay laging nagbabalik ng iisang
glbkey. Pinapanatili ng model ang input na heometriya, mayroon itong bagong UV coordinates, at gumagamit ng default na kulay-abong material sa halip na texture.
- Name
- thumbnail_url
- Type
- string
- Description
Naka-sign na download URL para sa PNG preview image ng UV white model.
- Name
- progress
- Type
- integer
- Description
Kung gaano na katapos ang task, bilang isang porsyento mula
0hanggang100.
- Name
- status
- Type
- string
- Description
Ang status ng task, isa sa
PENDING,IN_PROGRESS,SUCCEEDED,FAILED, oCANCELED.
- Name
- preceding_tasks
- Type
- integer
- Description
Ang bilang ng mga task na nauuna sa pila bago ang task na ito. Naroroon habang ang task ay
PENDING.
- Name
- created_at
- Type
- timestamp
- Description
Oras nang ginawa ang task, sa Unix milliseconds.
- Name
- started_at
- Type
- timestamp
- Description
Oras nang nagsimula ang task, sa Unix milliseconds. Ito ay
0hanggang magsimula ang task.
- Name
- finished_at
- Type
- timestamp
- Description
Oras nang natapos ang task, sa Unix milliseconds. Ito ay
0hanggang matapos ang task.
- Name
- expires_at
- Type
- timestamp
- Description
Oras nang mag-expire ang mga naka-sign na download URL, sa Unix milliseconds.
- Name
- task_error
- Type
- object
- Description
Ang mga detalye ng error kapag nabigo ang task. Tingnan ang Errors.
- Name
- consumed_credits
- Type
- integer
- Description
Ang bilang ng credits na ginamit ng task. Ang isang matagumpay na UV Unwrap task ay nagkakahalaga ng 5 credits. Ito ay
0para sa isangFAILEDna task, dahil ibinabalik ni Meshy ang credits kapag nabigo ang isang task.