UV अनरैप API
UV अनरैप API स्वचालित रूप से एक मौजूदा 3D मॉडल के लिए उच्च-गुणवत्ता वाला UV अनरैप उत्पन्न करता है। इसका उपयोग टेक्सचरिंग से पहले की पूर्वापेक्षित चरण के रूप में करें — या जब भी आपको डाउनस्ट्रीम टूल्स (Blender, Substance Painter, Unreal) के लिए एक साफ, गैर-ओवरलैपिंग UV लेआउट की आवश्यकता हो।
आउटपुट एक "UV व्हाइट मॉडल" है — इनपुट के समान आकार लेकिन नए UV निर्देशांक के साथ और कोई वास्तविक टेक्सचर नहीं (एक 2×2 ग्रे प्लेसहोल्डर मटेरियल शामिल है ताकि glTF मटेरियल स्लॉट वैध रहे; मानक टूल्स इसे बिना टेक्सचर के रूप में मानते हैं)।
सीमाएँ। ऑटो UV वर्तमान में 40,000 चेहरों तक के मेश का समर्थन करता है — बड़े मॉडल को 400 के साथ अस्वीकार कर दिया जाता है; पॉलीकाउंट को कम करने के लिए पहले रीमेश चलाएं। क्वाड और n-गोन मेश को UV जनरेशन के दौरान त्रिकोणीय किया जाता है, इसलिए आउटपुट हमेशा एक त्रिकोण मेश होता है।
एक UV अनरैप टास्क बनाएं
यह एंडपॉइंट एक नया UV अनरैप टास्क बनाता है।
पैरामीटर
input_task_id या model_url में से एक आवश्यक है। यदि दोनों दिए गए हैं, तो input_task_id को प्राथमिकता दी जाएगी।
- Name
- input_task_id
- Type
- string
- आवश्यक
- Description
उस पूर्ण Meshy API टास्क का ID जिसका GLB आउटपुट आप UV-अनरैप करना चाहते हैं (उदाहरण के लिए इमेज से 3D, टेक्स्ट से 3D, या रीमेश परिणाम)। स्रोत टास्क का स्टेटस
SUCCEEDEDहोना चाहिए और उसने एक GLB फाइल उत्पन्न की होनी चाहिए।यदि स्रोत मेश का फेस-काउंट सीमा 40,000 फेस से अधिक है, तो अनुरोध को
400के साथ अस्वीकार कर दिया जाएगा और आपको पहले रीमेश चलाना चाहिए ताकि पॉलीकाउंट कम हो सके।
- Name
- model_url
- Type
- string
- आवश्यक
- Description
एक सार्वजनिक रूप से उपलब्ध URL या डेटा URI के माध्यम से सीधे एक 3D मॉडल प्रदान करें। केवल
.glbसमर्थित है — API glTF बाइनरी पढ़ता है और अन्य प्रारूपों को पार्स नहीं करता। किसी अन्य प्रारूप में मॉडल को UV-अनरैप करने के लिए (.fbx,.obj,.stl,.gltf), पहले इसे.glbमें कन्वर्ट करें Convert API के माध्यम से, फिर उत्पन्न टास्क ID कोinput_task_idके रूप में या इसके GLB आउटपुट URL को यहां पास करें।डेटा URI के लिए, MIME type
application/octet-streamका उपयोग करें।वही 40,000-फेस सीमा
input_task_idके लिए लागू होती है: ओवरसाइज़ मेश को400के साथ अस्वीकार कर दिया जाता है — पहले रीमेश चलाएं।
रिटर्न्स
प्रतिक्रिया की result प्रॉपर्टी में नव निर्मित UV अनरैप टास्क का id होता है।
विफलता मोड
- Name
400 - Bad Request- Description
अनुरोध अस्वीकार्य था। सामान्य कारण:
- लापता पैरामीटर: या तो
input_task_idयाmodel_urlप्रदान किया जाना चाहिए। - अमान्य इनपुट टास्क:
input_task_idको एक सफल टास्क के साथ GLB परिणाम के लिए संदर्भित करना चाहिए। - फेस काउंट अधिकतम सीमा पार: स्रोत मेश में UV अनरैप सीमा से अधिक फेस हैं। पहले रीमेश चलाएं।
- अमान्य मॉडल प्रारूप:
model_urlएक असमर्थित एक्सटेंशन वाली फाइल की ओर इशारा करता है। - अप्राप्य URL:
model_urlको डाउनलोड नहीं किया जा सका।
- लापता पैरामीटर: या तो
- Name
401 - Unauthorized- Description
प्रमाणीकरण विफल। कृपया अपनी API की जांचें।
- Name
402 - Payment Required- Description
इस टास्क को करने के लिए अपर्याप्त क्रेडिट। UV अनरैप की लागत प्रति कॉल 5 क्रेडिट है।
- Name
404 - Not Found- Description
यह फीचर आपके खाते के लिए सक्षम नहीं है। UV अनरैप एक Statsig फ्लैग द्वारा रोलआउट के दौरान गेटेड है — यदि आपको एक्सेस की आवश्यकता है तो Meshy समर्थन से संपर्क करें।
- Name
429 - Too Many Requests- Description
आपने अपनी रेट लिमिट को पार कर लिया है।
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"
}
एक UV अनरैप कार्य प्राप्त करें
यह एंडपॉइंट ID द्वारा एक UV अनरैप कार्य की वर्तमान स्थिति प्राप्त करता है।
रिटर्न करता है
एक UV अनरैप कार्य ऑब्जेक्ट रिटर्न करता है।
Request
curl https://api.meshy.ai/openapi/v1/uv-unwrap/019361c6-9b34-7b23-bef2-d0107c4d92e2 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
नीचे उदाहरण कार्य ऑब्जेक्ट देखें।
एक UV अनरैप कार्य हटाएं
एक UV अनरैप कार्य को स्थायी रूप से हटाएं। कार्य और इसके आउटपुट अप्राप्य हो जाते हैं।
Request
curl https://api.meshy.ai/openapi/v1/uv-unwrap/019361c6-9b34-7b23-bef2-d0107c4d92e2 \
-X DELETE \
-H "Authorization: Bearer ${YOUR_API_KEY}"
UV अनरैप कार्यों की सूची
कॉलर के UV अनरैप कार्यों की पेजिनेशन की गई सूची लौटाता है, नवीनतम पहले। page_num और page_size के माध्यम से मानक पेजिनेशन।
Request
curl "https://api.meshy.ai/openapi/v1/uv-unwrap?page_num=1&page_size=20" \
-H "Authorization: Bearer ${YOUR_API_KEY}"
UV अनरैप कार्य को स्ट्रीम करें
सर्वर-सेंट इवेंट्स के रूप में कार्य progress की सदस्यता लें। प्रत्येक message इवेंट एक UV अनरैप कार्य ऑब्जेक्ट ले जाता है; स्ट्रीम तब बंद हो जाती है जब कार्य SUCCEEDED, FAILED, या CANCELED तक पहुँच जाता है।
इसे 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
UV अनरैप टास्क ऑब्जेक्ट
- Name
- id
- Type
- string
- Description
कार्य के लिए अद्वितीय पहचानकर्ता।
- Name
- type
- Type
- string
- Description
हमेशा
uv-unwrap।
- Name
- model_urls
- Type
- object
- Description
उत्पन्न UV व्हाइट मॉडल के लिए प्री-साइन किए गए डाउनलोड URLs। UV अनरैप हमेशा एकल
glbप्रविष्टि लौटाता है — आउटपुट इनपुट ज्यामिति को संरक्षित करता है, नई UV निर्देशांक डालता है, और किसी भी टेक्सचर के स्थान पर एक डिफ़ॉल्ट ग्रे मटेरियल का उपयोग करता है।
- Name
- thumbnail_url
- Type
- string
- Description
UV व्हाइट मॉडल के PNG पूर्वावलोकन के लिए प्री-साइन किया गया URL।
- Name
- progress
- Type
- integer
- Description
कार्य प्रगति,
0से100तक।
- Name
- status
- Type
- string
- Description
इनमें से एक
PENDING,IN_PROGRESS,SUCCEEDED,FAILED,CANCELED।
- Name
- preceding_tasks
- Type
- integer
- Description
इस कार्य से पहले कतार में लगे कार्यों की संख्या। स्थिति
PENDINGहोने पर मौजूद।
- Name
- created_at
- Type
- timestamp
- Description
कार्य निर्माण का टाइमस्टैंप, मिलीसेकंड में।
- Name
- started_at
- Type
- timestamp
- Description
जब प्रोसेसिंग शुरू हुई, उसका टाइमस्टैंप, मिलीसेकंड में। शुरू होने तक
0।
- Name
- finished_at
- Type
- timestamp
- Description
पूर्णता का टाइमस्टैंप, मिलीसेकंड में। समाप्त होने तक
0।
- Name
- expires_at
- Type
- timestamp
- Description
टाइमस्टैंप जिसके बाद साइन किए गए डाउनलोड URLs समाप्त हो जाते हैं, मिलीसेकंड में।
- Name
- task_error
- Type
- object
- Description
असफल कार्यों के लिए एरर विवरण। पूर्ण
task_errorऑब्जेक्ट संदर्भ के लिए एरर देखें।
- Name
- consumed_credits
- Type
- integer
- Description
इस कार्य द्वारा उपभोग किए गए क्रेडिट।
FAILEDकार्यों के लिए0लौटाता है (असफलता पर क्रेडिट वापस कर दिए जाते हैं)। UV अनरैप सफलता पर 5 क्रेडिट चार्ज करता है।
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
}