Samsung Galaxy XR अब उपलब्ध है. यह Android XR पर काम करता है! यह ब्लॉग पोस्ट, Android XR Spotlight Week का हिस्सा है. इसमें हम आपको कई संसाधन उपलब्ध कराते हैं. जैसे, ब्लॉग पोस्ट, वीडियो, सैंपल कोड वगैरह. ये सभी संसाधन, Android XR के लिए ऐप्लिकेशन बनाने, उन्हें तैयार करने, और उनके बारे में जानने में आपकी मदद करने के लिए डिज़ाइन किए गए हैं.
XR डेवलपमेंट में शामिल होने का इससे बेहतर समय नहीं हो सकता. पिछले साल दिसंबर में, हमने Android XR का एलान किया था. यह Google का नया Android प्लैटफ़ॉर्म है. इसे OpenXR और Vulkan जैसे ओपन स्टैंडर्ड के आधार पर बनाया गया है. इससे, एक्सआर डेवलपमेंट को पहले से ज़्यादा आसानी से ऐक्सेस किया जा सकता है.
साथ ही, Unity के मौजूदा XR टूल के साथ इसका इस्तेमाल करने पर, आपको एक दमदार और बेहतर डेवलपमेंट स्टैक मिलता है. इससे ऐसे XR ऐप्लिकेशन बनाए और डिप्लॉय किए जा सकते हैं जो कई डिवाइसों पर काम करते हैं.
चाहे आपने पहले कभी XR डेवलपमेंट किया हो या नहीं, हम आपकी मदद करना चाहते हैं.
इस ब्लॉग से, आपको Android XR और Unity डेवलपमेंट के बारे में जानकारी मिलेगी. हम आपके एनवायरमेंट को कॉन्फ़िगर करने, पैकेज के इकोसिस्टम को समझने, और बनाना शुरू करने के लिए ज़रूरी चरणों पर फ़ोकस करेंगे.
इस ब्लॉग के आखिर तक, आपको इन चीज़ों के बारे में अच्छी जानकारी मिल जाएगी:
- पैकेज नेटवर्क
- सेटअप के लिए ज़रूरी चरण
- इनपुट के तरीके
- निजता और अनुमतियां
- कंपोज़िशन लेयर
Android XR के लिए Unity की मदद से ऐप्लिकेशन बनाना
क्रॉस-प्लैटफ़ॉर्म के साथ काम करने की सुविधा की वजह से, Unity को चुना जा सकता है. इससे एक बार में ही Android XR और अन्य XR डिवाइसों के लिए बिल्ड बनाया जा सकता है.
Unity का इस्तेमाल करने पर, आपको इसके XR इकोसिस्टम और टूलिंग का फ़ायदा मिलता है. इसमें पहले से ही कई पैकेज उपलब्ध हैं. जैसे, XR Interaction Toolkit, OpenXR plugin, XR composition layers, XR Hands, और XR के साथ काम करने वाले कॉम्पोनेंट और टेंप्लेट से भरा हुआ एक बड़ा ऐसेट स्टोर. साथ ही, इसमें XR सिम्युलेशन और टेस्टिंग टूल भी उपलब्ध हैं. Unity 6 को पिछले साल नवंबर में रिलीज़ किया गया था. इसलिए, आपको इसकी बेहतर यूनिवर्सल रेंडर पाइपलाइन (यूआरपी) परफ़ॉर्मेंस, बेहतर Vulkan ग्राफ़िक्स सपोर्ट, और बेहतर बिल्ड प्रोफ़ाइलों का फ़ायदा भी मिलेगा.
यहां कुछ सैंपल प्रोजेक्ट दिए गए हैं, ताकि आपको यह पता चल सके कि क्या-क्या किया जा सकता है:
ज़रूरी सेटअप: डेवलपमेंट की बुनियादी बातें
Unity 6 की ज़रूरी शर्तें और इसे इंस्टॉल करने का तरीका
ऐप्लिकेशन बनाने के लिए, आपको Unity 6 की ज़रूरत होगी. ऐसा इसलिए, क्योंकि इसके पुराने वर्शन, Android XR के साथ काम नहीं करते. सबसे पहले, Unity Hub इंस्टॉल करें. इसके बाद, Android Build Support मॉड्यूल के साथ Unity 6 इंस्टॉल करें. इसके लिए, यह तरीका अपनाएं.
Android XR की बिल्ड प्रोफ़ाइलें: कॉन्फ़िगरेशन को आसान बनाना
Unity की बिल्ड प्रोफ़ाइलें, प्रोजेक्ट की ऐसी ऐसेट होती हैं जिनमें प्लैटफ़ॉर्म के हिसाब से सेटिंग और कॉन्फ़िगरेशन सेव किए जाते हैं. इसलिए, अलग-अलग मेन्यू में जाकर 15 से 20 सेटिंग को मैन्युअल तरीके से सेट अप करने के बजाय, बिल्ड प्रोफ़ाइल का इस्तेमाल करके इसे अपने-आप किया जा सकता है.
आपके पास अपनी बिल्ड प्रोफ़ाइल बनाने का विकल्प होता है. हालांकि, फ़िलहाल हमारा सुझाव है कि आप Android XR के लिए बनाई गई बिल्ड प्रोफ़ाइल का इस्तेमाल करें.
अपने Unity प्रोजेक्ट में, फ़ाइल > बिल्ड प्रोफ़ाइल को चुनकर, अपनी बिल्ड प्रोफ़ाइल चुनी जा सकती है. पूरी जानकारी के लिए, Android XR के लिए ऐप्लिकेशन डेवलप करना वर्कफ़्लो पेज देखें.
अगर आपको कोई बदलाव करना है, तो अपनी टीम के साथ शेयर करने के लिए, नई बिल्ड प्रोफ़ाइल बनाएं. इस तरह, यह पक्का किया जा सकता है कि सभी डिवाइसों पर एक जैसा बिल्ड अनुभव मिले.
यह तरीका अपनाने के बाद, Android XR डिवाइसों के लिए अपना APK बनाया और चलाया जा सकता है.
Graphics API: Vulkan क्यों ज़रूरी है
Android XR बिल्ड प्रोफ़ाइल के साथ Unity प्रोजेक्ट सेट अप करने के बाद, हमारा सुझाव है कि आप सबसे पहले यह पक्का करें कि आपने Vulkan को ग्राफ़िक्स एपीआई के तौर पर सेट किया हो. Android XR को Vulkan-first प्लैटफ़ॉर्म के तौर पर बनाया गया है. मार्च 2025 में, Google ने यह एलान किया कि Vulkan अब Android के लिए आधिकारिक ग्राफ़िक्स एपीआई है. यह एक मॉडर्न और लो-लेवल ग्राफ़िक्स एपीआई है. इससे डेवलपर को मॉडर्न जीपीयू की परफ़ॉर्मेंस को बेहतर बनाने में मदद मिलती है. साथ ही, यह रे-ट्रेसिंग और मल्टीथ्रेडिंग जैसी बेहतर सुविधाएं अनलॉक करता है. इससे गेमिंग के विज़ुअल को ज़्यादा रियलिस्टिक और इमर्सिव बनाया जा सकता है.
ये स्टैंडर्ड, आपके मौजूदा ऐप्लिकेशन के साथ सबसे अच्छी तरह काम करते हैं. साथ ही, पोर्टिंग से जुड़ी समस्याओं और लागत को कम करते हैं. इससे Android XR की ऐडवांस सुविधाओं को चालू किया जा सकता है. जैसे, यूआरपी ऐप्लिकेशन स्पेस वार्प और फ़ोविएटेड रेंडरिंग.
Unity 6, Vulkan को अपने-आप मैनेज करता है. इसलिए, Android XR बिल्ड प्रोफ़ाइल का इस्तेमाल करने पर, Unity, Vulkan को आपके ग्राफ़िक्स एपीआई के तौर पर कॉन्फ़िगर करेगा. इससे यह पक्का होता है कि आपको Android XR की सभी ऐडवांस सुविधाओं का ऐक्सेस मिले. इसके लिए, आपको मैन्युअल तरीके से कॉन्फ़िगरेशन करने की ज़रूरत नहीं होती.
‘बदलाव करें’ > ‘प्रोजेक्ट की सेटिंग’ > ‘प्लेयर’ > ‘Android टैब’ > ‘अन्य सेटिंग’ > ‘ग्राफ़िक्स एपीआई’ पर जाकर, ग्राफ़िक्स एपीआई की सेटिंग की पुष्टि की जा सकती है.
पैकेज के ईकोसिस्टम के बारे में जानकारी
Unity में Android XR के लिए, दो अलग-अलग पैकेज इस्तेमाल किए जा सकते हैं. पहला तरीका, Unity के लिए Android XR एक्सटेंशन का इस्तेमाल करना है. दूसरा तरीका, Unity OpenXR: Android XR पैकेज का इस्तेमाल करना है.
ये दोनों एक जैसी लग सकती हैं, लेकिन इनमें अंतर है.
Unity OpenXR: Android XR पैकेज, Android XR के साथ काम करने वाला आधिकारिक Unity पैकेज है. इसमें Android XR की ज़्यादातर सुविधाएं मिलती हैं. ये सुविधाएं, OpenXR स्टैंडर्ड के ज़रिए उपलब्ध कराई जाती हैं. यह मिक्स्ड रिएलिटी की सुविधाओं के लिए, AR Foundation इंटिग्रेशन को भी चालू करता है. Unity OpenXR: Android XR पैकेज का इस्तेमाल करने का मुख्य फ़ायदा यह है कि यह एक्सआर डिवाइसों के साथ काम करने के लिए, एक यूनिफ़ाइड एपीआई उपलब्ध कराता है.
वहीं, Android XR Extensions for Unity, Google का एक्सआर पैकेज है. इसे खास तौर पर Android XR डिवाइसों के लिए ऐप्लिकेशन डेवलप करने के लिए डिज़ाइन किया गया है. यह Unity OpenXR पैकेज में, एनवायरमेंट ब्लेंड मोड, सीन मेशिंग, इमेज ट्रैकिंग, और बॉडी ट्रैकिंग जैसी अतिरिक्त सुविधाएँ जोड़ता है. हालांकि, इसका नुकसान यह है कि सिर्फ़ Android XR डिवाइसों के लिए ऐप्लिकेशन बनाए जा सकते हैं.
इनमें से कौनसी सुविधा चुननी है, यह आपकी ज़रूरतों पर निर्भर करेगा. हालांकि, हमारा सुझाव है कि आप Unity OpenXR: Android XR को चुनें. इससे आपको उन डिवाइसों के लिए ज़्यादा विकल्प मिलते हैं जिनके साथ आपका ऐप्लिकेशन काम करेगा. इसके बाद, ऐप्लिकेशन की ज़रूरी शर्तों के आधार पर, Unity के लिए Android XR एक्सटेंशन जोड़े जा सकते हैं.
पैकेज इंस्टॉल करने का तरीका
नया पैकेज जोड़ने के लिए, Unity में अपना प्रोजेक्ट खोलें. इसके बाद, ‘Window’ > ‘Package Management’ > ‘Package Manager’ चुनें.
यहाँ से, ‘Unity Registry’ टैब से इन पैकेज को इंस्टॉल किया जा सकता है:
Github के ज़रिए Android XR for Unity पैकेज इंस्टॉल किया जा सकता है. इसके लिए, ➕ आइकॉन चुनें. इसके बाद, ‘Install package from git URL’ चुनें. इसके बाद, ‘https://github.com/android/android-xr-unity-package.git’ डालें
OpenXR की ज़रूरी सुविधाएं
अब आपके पास ज़रूरी पैकेज इंस्टॉल हो गए हैं. आइए, अपने प्रोजेक्ट को चालू करने के लिए कुछ मुख्य सुविधाएं चालू करें.
Android के लिए OpenXR सेटिंग चालू की जा सकती है: ‘बदलाव करें’ -> ‘प्रोजेक्ट सेटिंग’ -> ‘XR प्लगिन मैनेजमेंट’ -> Android पर क्लिक करें और OpenXR चालू करें
इसके बाद, हमें इन सुविधाओं के लिए सहायता चालू करनी होगी: ‘Android XR के साथ काम करने की सुविधा’. हम OpenXR की अन्य सुविधाओं के बारे में तब बताएंगे, जब हमें उनकी ज़रूरत होगी. फ़िलहाल, हमें सिर्फ़ Android XR के साथ काम करने की सुविधा चालू करनी है.
इनपुट
Android XR, हाथों के मूवमेंट, आवाज़, आई ट्रैकिंग की सुविधा, कीबोर्ड, और कंट्रोलर से मिले इनपुट को सपोर्ट करता है. हमारा सुझाव है कि आप XR Interaction Toolkit और XR Hands इंस्टॉल करें. इनमें शुरू करने के लिए सबसे अच्छे प्रीफ़ैब शामिल हैं. इन प्रीफ़ैब का इस्तेमाल करके, आपको अपने ऐप्लिकेशन में हाथों और कंट्रोलर को सपोर्ट करने के लिए ज़रूरी सभी चीज़ें मिल जाएंगी.
XR Hands और XR Interactive टूलकिट, दोनों इंस्टॉल हो जाने के बाद, हमारा सुझाव है कि आप स्टार्टर ऐसेट और Hands Interaction Demo को इंपोर्ट करें. इसके बाद, आपको हाथ के इंटरैक्शन और Khronos Simple Controller प्रोफ़ाइलें चालू करनी होंगी. साथ ही, हाथ के मूवमेंट को ट्रैक करने वाला सबसिस्टम और Meta के हाथ के मूवमेंट को ट्रैक करने की सुविधा चालू करनी होगी.
इन सेटिंग में बदलाव करने के लिए, ‘बदलाव करें’ > ‘प्रोजेक्ट सेटिंग’ > XR प्लग-इन मैनेजमेंट’ > ‘OpenXR’ पर जाएं
हम Unity के प्रीफ़ैब, XR Origin का इस्तेमाल करने का भी सुझाव देते हैं. यह XR स्पेस में उपयोगकर्ता की पोज़िशन और ओरिएंटेशन को दिखाता है. इसमें कैमरा रिग और ट्रैकिंग कॉम्पोनेंट शामिल होते हैं. इनकी मदद से, सही व्यूपॉइंट से XR अनुभव को रेंडर किया जा सकता है.
इस प्रीफ़ैब को जोड़ने का सबसे आसान तरीका यह है कि इसे हाथों के इंटिग्रेशन के उस डेमो से इंपोर्ट किया जाए जिसे हमने पहले इंपोर्ट किया था. यह डेमो यहां ‘Hands Integration Toolkit’ > ’Hand Interaction’ > ’Prefabs’ > ’XR Origin’ पर मौजूद है
हमारा सुझाव है कि आप अपने गेम ऑब्जेक्ट में ‘XR Origin’ विकल्प के बजाय इस प्रीफ़ैब का इस्तेमाल करें. ऐसा इसलिए, क्योंकि यह XR Input Modality Manager का इस्तेमाल करता है. इससे, उपयोगकर्ताओं के हाथों और कंट्रोलर के बीच अपने-आप स्विच हो जाता है. इससे आपको हाथों और कंट्रोलर के बीच स्विच करने में आसानी होगी.
निजता और अनुमतियां: उपयोगकर्ताओं का भरोसा जीतना
आपको जो भी बनाना है उसके लिए, उपयोगकर्ताओं से रनटाइम की अनुमतियां लेनी होंगी. ऐसा इसलिए है, क्योंकि सीन को समझने, आई ट्रैकिंग की सुविधा, चेहरा ट्रैक करने की सुविधा, और हाथ ट्रैक करने की सुविधा से ऐसे डेटा को ऐक्सेस किया जा सकता है जो उपयोगकर्ता के लिए ज़्यादा संवेदनशील हो सकता है.
ये सुविधाएं, परंपरागत डेस्कटॉप या मोबाइल ऐप्लिकेशन की तुलना में ज़्यादा निजी जानकारी इकट्ठा करती हैं. इसलिए, रनटाइम की अनुमतियों से यह पक्का किया जाता है कि आपके उपयोगकर्ताओं के पास यह तय करने का पूरा कंट्रोल हो कि उन्हें कौन-सा डेटा शेयर करना है. इसलिए, Android की सुरक्षा और निजता नीतियों का पालन करने के लिए, Android XR में इन सभी सुविधाओं के लिए अनुमतियां हैं.
उदाहरण के लिए, अगर आपको हाथ के जेस्चर को पसंद के मुताबिक बनाने के लिए XR Hands पैकेज का इस्तेमाल करना है, तो आपको हाथ ट्रैक करने की सुविधा की अनुमति (नीचे देखें) का अनुरोध करना होगा. ऐसा इसलिए, क्योंकि इस पैकेज को उपयोगकर्ता के हाथों के बारे में काफ़ी जानकारी ट्रैक करनी होती है. इसमें हाथ के जोड़ों की पोज़िशन और कोणीय और रैखिक वेगों को ट्रैक करना शामिल है;
ध्यान दें: उन एक्सटेंशन की पूरी सूची देखने के लिए जिन्हें अनुमतियों की ज़रूरत होती है, XR डेवलपर की वेबसाइट पर दी गई जानकारी देखें.
const string k_Permission = "android.permission.HAND_TRACKING";
#if UNITY_ANDROID
void Start()
{
if (!Permission.HasUserAuthorizedPermission(k_Permission))
{
var callbacks = new PermissionCallbacks();
callbacks.PermissionDenied += OnPermissionDenied;
callbacks.PermissionGranted += OnPermissionGranted;
Permission.RequestUserPermission(k_Permission, callbacks);
}
}
void OnPermissionDenied(string permission)
{
// handle denied permission
}
void OnPermissionGranted(string permission)
{
// handle granted permission
}
#endif // UNITY_ANDROIDकंपोज़िशन लेयर की मदद से विज़ुअल क्वालिटी को बेहतर बनाना
यूज़र इंटरफ़ेस (यूआई) एलिमेंट को रेंडर करने के लिए, कंपोज़िशन लेयर का इस्तेमाल करने का सुझाव दिया जाता है. इनकी मदद से, Unity के स्टैंडर्ड रेंडरिंग पाइपलाइन की तुलना में ज़्यादा क्वालिटी वाले एलिमेंट दिखाए जा सकते हैं. ऐसा इसलिए, क्योंकि सभी एलिमेंट सीधे तौर पर प्लैटफ़ॉर्म के कंपोज़िटर पर रेंडर किए जाते हैं.
उदाहरण के लिए, अगर आपको टेक्स्ट दिखाना है, तो स्टैंडर्ड Unity रेंडरिंग में टेक्स्ट के धुंधले होने, किनारों के हल्के होने, और विज़ुअल आर्टफ़ैक्ट होने की संभावना ज़्यादा होती है. वहीं, कंपोज़िशन लेयर का इस्तेमाल करने पर, टेक्स्ट ज़्यादा साफ़ दिखेगा, आउटलाइन ज़्यादा शार्प होंगी, और कुल मिलाकर अनुभव बेहतर होगा.
यह टेक्स्ट के साथ-साथ, वीडियो, इमेज, और यूज़र इंटरफ़ेस (यूआई) एलिमेंट को भी बेहतर क्वालिटी में रेंडर करता है. यह ऐसा, कंपोज़िटर लेयर के लिए रनटाइम की नेटिव सहायता का इस्तेमाल करके करता है.
कंपोज़िशन लेयर चालू करने के लिए, Package Manager खोलें. इसके बाद, ‘Unity Register’ को चुनें. फिर, ‘XR Composition Layers’ को इंस्टॉल करें.
बनाएं और चलाएं
OpenXR पैकेज इंस्टॉल करने और सुविधाएं चालू करने के बाद, अब आपके पास हाथ और सिर की गतिविधियों के लिए प्रीफ़ैब सेटअप है. अब अपनी सीन बनाएं और टेस्टिंग के लिए सीधे अपने हेडसेट पर डिप्लॉय करें.
इसके बाद क्या होगा: अपने कौशल को बेहतर बनाना
अब आपने Android XR डेवलपमेंट एनवायरमेंट सेट अप कर लिया है और आपको मुख्य कॉन्सेप्ट के बारे में पता है. इसलिए, XR डेवलपमेंट जारी रखने के लिए यहां दिए गए अगले चरण पूरे करें:
लगातार सीखने के लिए ज़रूरी संसाधन:
- Android XR डेवलपर दस्तावेज़ - Android XR की सभी सुविधाओं के लिए पूरी जानकारी देने वाली गाइड
- Unity XR डेवलपमेंट मैनुअल - Unity के आधिकारिक XR डेवलपमेंट संसाधन
एक्सप्लोर करने के लिए सैंपल प्रोजेक्ट:
- Android XR Unity के सैंपल - Google के आधिकारिक सैंपल प्रोजेक्ट, जिनमें Android XR की अलग-अलग सुविधाएं दिखाई गई हैं
- Unity XR Interaction Toolkit के उदाहरण - एक्सआर इंटरैक्शन और गेमप्ले के तरीकों के बारे में पूरी जानकारी देने वाले उदाहरण
- Unity VR Template - वीआर प्रोजेक्ट के लिए शुरुआती पॉइंट
- वीआर मल्टीप्लेयर टेंप्लेट - सोशल एक्सआर एक्सपीरियंस एक्सप्लोर करें
-
कैसे करेंऐप्लिकेशन की परफ़ॉर्मेंस को अक्सर बेहतर यूज़र इंटरफ़ेस (यूआई) और ऐप्लिकेशन के तेज़ी से शुरू होने से जोड़कर देखा जाता है. हालांकि, मेमोरी एक ऐसा आधार है जिस पर ये मेट्रिक तैयार की जाती हैं. यह कोई छिपी हुई बात नहीं है कि अब डिवाइस की मेमोरी पहले से ज़्यादा ज़रूरी हो गई है.
Alice Yuan, Ajesh Pai, Fung Lam • पढ़ने में 10 मिनट लगेंगे -
कैसे करेंआज हमें यह बताते हुए खुशी हो रही है कि Google ने पुष्टि किया गया नया ईमेल क्रेडेंशियल जारी किया है. डेवलपर अब इसे सीधे तौर पर, Android के Credential Manager Digital Credential API से पा सकते हैं.
Niharika Arora, Jean-Pierre Pralle • तीन मिनट में पढ़ा जा सकता है -
कैसे करेंचाहे Android Studio में Gemini का इस्तेमाल किया जा रहा हो, Gemini CLI का, Antigravity का या Claude Code या Codex जैसे तीसरे पक्ष के एजेंट का, हमारा मकसद यह पक्का करना है कि हर जगह बेहतरीन क्वालिटी के Android ऐप्लिकेशन बनाए जा सकें.
Adarsh Fernando, Esteban de la Canal • पढ़ने में 4 मिनट लगेंगे
Android डेवलपमेंट से जुड़ी नई अहम जानकारी, हर हफ़्ते अपने इनबॉक्स में पाएं.