vision
Last updated
Last updated
हमारा मानना है कि अगले कुछ वर्षों में वेब पर 3D का उपयोग काफी बढ़ेगा। जहाँ आज नेटिव ऐप सामान्य हैं, वहीं अधिक से अधिक कंटेंट वेब ऐप या के रूप में उपलब्ध कराया जा रहा है। नए VR और AR डिवाइस , जिससे एक दिलचस्प समस्या पैदा होगी: रेस्पॉन्सिव का मतलब अचानक सिर्फ "छोटी स्क्रीन" या "बड़ी स्क्रीन" नहीं रह जाएगा, आपको स्पेस, 3D, स्थानिक प्लेसमेंट और संभावित रूप से चश्मे और कंट्रोलर से भी निपटना होगा!
इसमें अधिक इंटरेक्टिविटी और सहयोग की ओर जोर दें, और आपके पास चुनौतियों का एक दिलचस्प मिश्रण है।
Needle में, हम मानते हैं कि इस स्पेस में विचार-मंथन और निर्माण करना आसान होना चाहिए। हमने चीजों को गति देने का लक्ष्य रखा है - इन लक्ष्यों तक पहुंचने के लिए अपना खुद का रनटाइम बनाया है। इसीलिए हम AR और VR में डिप्लॉय करने की क्षमता को अपने मुख्य कंपोनेंट में शामिल कर रहे हैं, और लगातार यह परीक्षण कर रहे हैं कि नए विचार सभी प्लेटफॉर्म पर काम करते हैं।
कई विकल्प हैं, यह सच है! हमने पाया कि वर्तमान सिस्टम्स1 को मोटे तौर पर दो श्रेणियों में बांटा जा सकता है: कुछ में उत्कृष्ट एसेट हैंडलिंग, टूल और कलाकार-अनुकूल वर्कफ़्लो हैं लेकिन वे किसी प्रकार का बाइनरी ब्लोब आउटपुट करते हैं, और अन्य अधिक कोड-केंद्रित, डेवलपर-अनुकूल हैं और आधुनिक वेब वर्कफ़्लो2 में उत्कृष्ट इंटीग्रेशन की अनुमति देते हैं।
हम इन दुनियाओं को जोड़ना चाहते हैं और दोनों का सर्वोत्तम संयोजन करना चाहते हैं: कलाकार-अनुकूल वर्कफ़्लो और आधुनिक वेब तकनीकें। आधुनिक फॉर्मेट और एक स्नैपी वर्कफ़्लो के साथ मिलकर, हमारा मानना है कि यह बहुत सारे क्रिएटर्स को अपनी सामग्री वेब पर लाने की अनुमति देगा। हमने शुरुआत से ही AR, VR और सहयोग को सही करने का भी अवसर देखा।
1: उदाहरणों में Unity, PlayCanvas, three.js, react-three-fiber, Babylon, A-Frame, Godot और कई अन्य शामिल हैं।2: इसकी बारीकियां एक शुरुआती पैराग्राफ में फिट होने से कहीं ज़्यादा हैं! सभी इंजन और फ्रेमवर्क की अपनी ताकत और कमजोरियां होती हैं, और वे लगातार विकसित हो रहे हैं।
हमारा मानना है कि वेब पर 3D ऐप्स की अगली लहर बेहतर वर्कफ़्लो के साथ आएगी: हर किसी को वेब पर 3D दृश्य, एक आर्ट गैलरी, एक उत्पाद या 3D स्कैन प्रस्तुत करने या सरल गेम बनाने में सक्षम होना चाहिए। इस लक्ष्य तक पहुँचने के लिए केवल एक विशेष सिस्टम का समर्थन करने और वहां से वेब पर निर्यात करने से कहीं अधिक की आवश्यकता होगी।
हमारा लक्ष्य लोगों को उनके रचनात्मक टूल से डेटा वेब पर लाने की अनुमति देना है: चाहे वह Unity, Blender, Photoshop या कुछ और हो। हम जानते हैं कि यह एक बड़ा लक्ष्य है - लेकिन एक साथ सब कुछ करने के बजाय, हम दोहराना चाहते हैं और साथ मिलकर इसके करीब पहुंचना चाहते हैं।
Needle Engine के मूल में फॉर्मेट और कस्टम एक्सटेंशन के साथ इसका विस्तार करने की क्षमता है। लक्ष्य यह है: एक एकल .glb
फ़ाइल में आपके पूरे एप्लिकेशन का डेटा शामिल हो सकता है।
यह ध्यान देने योग्य है कि glTF के अंदर वास्तविक कोड शिप करना लक्ष्य नहीं है; कोड शिप करना और चलाना आधुनिक वेब रनटाइम और बंडलिंग का काम है। हम निश्चित रूप से कल्पना कर सकते हैं कि तर्क के अमूर्त प्रतिनिधित्व (जैसे ग्राफ, स्टेट मशीन, आदि) को एक निश्चित सीमा तक मानकीकृत किया जा सकता है और इंटरऑपरेबल दुनिया की अनुमति दी जा सकती है, लेकिन हम अभी वहां नहीं हैं।
इटरेटर तेज होना चाहिए और डिप्लॉयमेंट तेज होना चाहिए।
3D वेब प्रोजेक्ट्स पर काम करना 2D वेब प्रोजेक्ट्स पर काम करने जितना आसान होना चाहिए।
डेवलपर्स और कलाकार सीधे सहयोग करने में सक्षम होने चाहिए।
रेस्पॉन्सिव वेब स्क्रीन से परे तक फैला हुआ है – AR और VR को बाद के विचारों के बजाय इसमें बनाया जाना चाहिए।
हम ओपन-सोर्स प्रोजेक्ट्स में योगदान देना चाहते हैं।
3D और वेब स्टैंडर्ड के संबंध में खुली चर्चा।
ओपन फॉर्मेट में अपना डेटा लाने और लेने की क्षमता।
आप किस वेब फ्रेमवर्क का उपयोग करते हैं, यह चुनने की क्षमता, किसी विशेष फ्रेमवर्क और विक्रेताओं में लॉक-इन नहीं।
सामान्य उपयोग के मामले सीमित कोडिंग अनुभव के साथ या बिना काम करते हैं।
सभी Editor संस्करणों, फीचर सेट, रेंडर पाइपलाइन के सभी संयोजनों का 100% कवरेज होना लक्ष्य नहीं है।
पूरी तरह से नो-कोड वातावरण प्रदान करना लक्ष्य नहीं है।
अन्य इंजनों की फीचर सेट, क्षमताएं, या रनटाइम प्रदर्शन से मेल खाना लक्ष्य नहीं है।
Unity के साथ कई वर्षों तक काम करने से हमने पाया है कि जबकि इंजन और Editor बेहतरीन गति से प्रगति कर रहे हैं, WebGL आउटपुट कुछ हद तक पीछे रह गया है। वेब-आधारित सिस्टम में Unity प्लेयर्स का इंटीग्रेशन काफी कठिन है, आसपास की वेबसाइट से "बातचीत" करने के लिए कई समाधानों की आवश्यकता होती है, और सबसे बढ़कर, जिस तरह से Unity IL2CPP के माध्यम से सभी कोड को WebAssembly में पैक करती है, उसके कारण इटरेटर समय बहुत धीमा होता है। ये टेक्नोलॉजी शानदार हैं, और उत्कृष्ट रनटाइम प्रदर्शन और बहुत लचीलापन प्रदान करती हैं। लेकिन वे आधुनिक वेब विकास वर्कफ़्लो की तुलना में बहुत धीमी और बंद हैं कि हमने मामले को अपने हाथों में लेने का फैसला किया।
Needle Engine तीन.js पर आधारित है। सभी रेंडरिंग इसके माध्यम से होती है, glTF फ़ाइलें three के एक्सटेंशन इंटरफेस के माध्यम से लोड की जाती हैं, और हमारा कंपोनेंट सिस्टम three के Object3D और सीन ग्राफ के इर्द-गिर्द घूमता है। हम अपने कुछ बदलावों और सुधारों को अपस्ट्रीम करने, पुल रिक्वेस्ट बनाने और रास्ते में समस्याओं की रिपोर्ट करने के लिए प्रतिबद्ध हैं।
पेज AI का उपयोग करके स्वतः अनुवादित किया गया है।