जीएलटीएफ फाइल क्या है?
glTF (GL ट्रांसमिशन फ़ॉर्मेट) एक 3D फ़ाइल स्वरूप है जो JSON प्रारूप में 3D मॉडल जानकारी संग्रहीत करता है। JSON का उपयोग 3D संपत्तियों के आकार और उन संपत्तियों को अनपैक करने और उपयोग करने के लिए आवश्यक रनटाइम प्रोसेसिंग दोनों को कम करता है। इसे अनुप्रयोगों द्वारा 3डी दृश्यों और मॉडलों के कुशल संचरण और लोडिंग के लिए अपनाया गया था। glTF को Khronos Group 3D Formats वर्किंग ग्रुप द्वारा विकसित किया गया था और इसके रचनाकारों द्वारा इसे JPEG 3D के रूप में भी वर्णित किया गया है।
GLTF फ़ाइल स्वरूप 3D सामग्री टूल और सेवाओं के लिए एक एक्स्टेंसिबल, सामान्य प्रकाशन प्रारूप को परिभाषित करता है जो ऑथरिंग वर्कफ़्लोज़ को सुव्यवस्थित करता है और पूरे उद्योग में सामग्री के इंटरऑपरेबल उपयोग को सक्षम बनाता है। GlTF फ़ाइल स्वरूप के निर्माण के पीछे का उद्देश्य 3D सामग्री टूल और सेवाओं के लिए एक एक्स्टेंसिबल, सामान्य प्रकाशन प्रारूप को परिभाषित करना था जो ऑथरिंग वर्कफ़्लोज़ को सुव्यवस्थित करना चाहिए और पूरे उद्योग में सामग्री के इंटरऑपरेबल उपयोग को सक्षम करना चाहिए। यह वेबजीएल और अन्य एपीआई का उपयोग करके अनुप्रयोगों द्वारा रनटाइम प्रोसेसिंग को कम करता है।
जीएलटीएफ फ़ाइल का संक्षिप्त इतिहास
जीएलटीएफ फ़ाइल प्रारूप 1.0 के लिए पहली विशिष्टताओं की घोषणा अक्टूबर 2015 में की गई थी। यह मार्च 2012 में ख्रोनोस द्वारा शुरू किए गए प्रयासों की एक श्रृंखला के रूप में आया था। इन प्रयासों का उद्देश्य WebGL कर्षण के आसपास के अवसरों का आकलन करना था। परिणामस्वरूप, JSON प्रारूप पर आधारित glTF प्रारूप का पहला डेमो 2012 में WebGl मीटअप में प्रस्तुत किया गया था। प्रारूप को समय-समय पर कई कंपनियों द्वारा अपनाया गया था, जिसमें सीज़ियम, 3D टाइलें, Oculus, Microsoft, Archilogic और अन्य शामिल हैं।
glTF 2.0 को 5 जून, 2017 को Web3D 2017 सम्मेलन में प्रकाशित किया गया था। उसके बाद glTF फ़ाइल स्वरूप को अपनाने वाली कंपनियों की एक लंबी सूची है।
जीएलटीएफ फ़ाइल प्रारूप
glTF 2.0 के लिए फ़ाइल प्रारूप विनिर्देश संदर्भ के लिए उपलब्ध हैं ऑनलाइन और समर्थन के लिए पढ़ने/लिखने से संबंधित किसी भी कार्यान्वयन में परामर्श किया जाना चाहिए GLTF फ़ाइल स्वरूप।
glTF बाहरी डेटा का समर्थन करने वाली JSON फ़ाइलों के रूप में संपत्ति को परिभाषित करता है। यह निम्नलिखित की सहायता से 3D मॉडल का प्रतिनिधित्व करता है:
- एक JSON-स्वरूपित .glTF फ़ाइल में निहित पूर्ण दृश्य विवरण जिसमें नोड पदानुक्रम, सामग्री, कैमरा, साथ ही साथ मेश, एनिमेशन और अन्य निर्माणों के लिए विवरणक जानकारी शामिल है
- बाइनरी फ़ाइलें (.bin) जिसमें ज्यामिति और एनिमेशन डेटा, और अन्य बफर-आधारित डेटा शामिल हैं
- बनावट के लिए छवि फ़ाइलें (.jpg, .png)
छवियों जैसी कोई भी बाहरी संपत्ति बाहरी फाइलों में संग्रहीत की जाती है जिन्हें यूआरआई के माध्यम से संदर्भित किया जाता है। इन यूआरआई को जीएलबी कंटेनर के साथ संग्रहीत किया जाता है या डेटा यूआरआई का उपयोग करके सीधे JSON में एम्बेड किया जाता है। प्रत्येक मान्य glTF को अपना संस्करण निर्दिष्ट करना होगा।
glTF को छोटे फ़ाइल आकार, तेज़ लोडिंग, पूर्ण 3D दृश्य प्रतिनिधित्व और एक्स्टेंसिबिलिटी प्राप्त करने के लिए डिज़ाइन किया गया है। ये अद्वितीय डिज़ाइन लक्ष्य 3D डोमेन में glTF फ़ाइल स्वरूप की लोकप्रियता के मुख्य कारण हैं। विभिन्न फ़ाइल प्रकारों के लिए glTF फ़ाइल स्वरूप द्वारा समर्थित माइम प्रकार निम्नलिखित हैं:
- .gltf फ़ाइलें मॉडल/gltf+json का उपयोग करती हैं
- .bin फ़ाइलें एप्लिकेशन/ऑक्टेट-स्ट्रीम का उपयोग करती हैं
- बनावट फ़ाइलें विशिष्ट छवि प्रारूप के आधार पर आधिकारिक छवि/* प्रकार का उपयोग करती हैं। आधुनिक वेब ब्राउज़र के साथ संगतता के लिए, निम्नलिखित छवि प्रारूप समर्थित हैं: छवि/जेपीईजी, छवि/पीएनजी।
JSON एन्कोडिंग
glTF JSON फ़ाइल प्रारूप पर अतिरिक्त प्रतिबंध लगाता है
क्लाइंट-साइड कार्यान्वयन को आसान बनाने के लिए, glTF के पास JSON प्रारूप और एन्कोडिंग पर अतिरिक्त प्रतिबंध हैं।
- JSON को BOM के बिना UTF-8 एन्कोडिंग का उपयोग करना चाहिए।
- इस विनिर्देश में परिभाषित सभी तार (गुण नाम, एनम) केवल ASCII वर्णसेट का उपयोग करते हैं और उन्हें सादे पाठ के रूप में लिखा जाना चाहिए, जैसे,
"\u0062\u0075\u0066\u0066\u0065\u0072"
के बजाय “बफर”। - JSON ऑब्जेक्ट में नाम (कुंजी) अद्वितीय होने चाहिए, यानी डुप्लिकेट कुंजियों की अनुमति नहीं है।
यूआरआई
बफ़र्स और छवि संसाधनों को यूआरआई के माध्यम से संदर्भित किया जाता है। निम्नलिखित दो यूआरआई प्रकार ग्राहकों द्वारा समर्थित होने चाहिए।
डेटा यूआरआई: डेटा यूआरआई आरएफसी 2397 द्वारा परिभाषित हैं और जेएसओएन में संसाधनों को एम्बेड करने के लिए जीएलटीएफ द्वारा उपयोग किया जाता है।
सापेक्ष यूआरआई पथ: या आरएफसी 3986, धारा 4.2 द्वारा परिभाषित पथ-नोस्केम - बिना योजना, अधिकार या पैरामीटर के। आरएफसी 3986, धारा 2.2 के अनुसार आरक्षित वर्ण प्रतिशत-एन्कोडेड होने चाहिए।