Android XR के लिए Unreal Engine का इस्तेमाल करके ऐप्लिकेशन बनाना

इस्तेमाल किए जा सकने वाले XR डिवाइस
इन दिशा-निर्देशों से आपको इस तरह के एक्सआर डिवाइसों के लिए अनुभव तैयार करने में मदद मिलती है.
एक्सआर हेडसेट
वायर वाले एक्सआर स्मार्ट ग्लास

एक्सआर डेवलपमेंट के लिए Unreal Engine, OpenXR स्टैंडर्ड पर काम करता है. इससे यह पक्का होता है कि Android XR के लिए काम करने वाली OpenXR सुविधाएं, Unreal में नेटिव तौर पर काम करें.

इस गाइड को पढ़कर, इनके बारे में जानें:

  • Android XR के लिए Unreal Engine की सुविधा
    • Unreal Engine XR के बारे में बुनियादी जानकारी
    • Android XR के लिए ऐप्लिकेशन डेवलप और पब्लिश करना
    • Android XR के लिए Unreal Engine प्लगिन
    • सहायता पाना
  • इनपुट और इंटरैक्शन
  • काम करने वाले एक्सटेंशन

Android XR के लिए Unreal Engine की सुविधा

Android XR के लिए Unreal ऐप्लिकेशन बनाते समय, Unreal Engine 5 के नए वर्शन की स्पेशल कंप्यूटिंग सुविधाओं का फ़ायदा लिया जा सकता है. Unreal Engine 5, OpenXR की मुख्य सुविधाओं के साथ काम करता है. वहीं, Unreal के लिए Android XR एक्सटेंशन, Android XR और अन्य खास एक्सटेंशन के साथ काम करते हैं. इससे आपको तुरंत शुरुआत करने में मदद मिलती है.

Unreal Engine XR के बारे में बुनियादी जानकारी

अगर आपको Unreal या XR डेवलपमेंट के बारे में ज़्यादा जानकारी नहीं है, तो बुनियादी कॉन्सेप्ट और वर्कफ़्लो को समझने के लिए, Unreal के XR डेवलपमेंट से जुड़े दस्तावेज़ देखें. यहां कुछ ऐसे खास हिस्सों के बारे में बताया गया है जहां तीसरे पक्ष की कुकी अहम भूमिका निभाती हैं:

Android के लिए ऐप्लिकेशन डेवलप और पब्लिश करना

Unreal Engine, Android के लिए गेम डेवलप करने, बनाने, और पब्लिश करने के बारे में पूरी जानकारी देता है. इस दस्तावेज़ में, इंजन में Android की अनुमतियों को मैनेज करने, Android बिल्ड सेटिंग को कॉन्फ़िगर करने (प्रोजेक्ट सेटिंग > प्लैटफ़ॉर्म > Android के ज़रिए), और Unreal ऑटोमेशन टूल (यूएटी) का इस्तेमाल करने के बारे में बताया गया है.

इसके अलावा, Android XR के लिए ऐप्लिकेशन की पैकेजिंग और उन्हें उपलब्ध कराने से जुड़ा दस्तावेज़ देखें. इसमें उन ज़रूरी शर्तों के बारे में बताया गया है जो Google Play Store पर उपलब्ध कराए जाने वाले स्पेशल ऐप्लिकेशन पर लागू होती हैं. यह भी पक्का करें कि आपका ऐप्लिकेशन, इमर्सिव अनुभव देने के लिए क्वालिटी से जुड़े दिशा-निर्देशों का पालन करता हो. इससे Android XR पर उपयोगकर्ताओं को लगातार बेहतर और आरामदायक अनुभव मिलेगा.

Android XR के लिए Unreal Engine प्लगिन

Android XR के लिए Unreal ऐप्लिकेशन बनाने में मदद करने वाले दो मुख्य प्लग इन हैं. इन प्लगिन को प्लगिन मेन्यू (बदलाव करें > प्लगिन) से मैनेज किया जाता है.

Android XR OpenXR प्लगिन

Android XR OpenXR प्लगिन, मुख्य इंजन इंटरफ़ेस है. यह Unreal में Android XR की सुविधा जोड़ता है. यह OpenXR एक्सटेंशन लागू करता है. ये एक्सटेंशन, स्पेशल ट्रैकिंग, आस-पास की चीज़ों को समझने, और उन्हें पहचानने के लिए ज़रूरी हैं. इस प्लगिन को जोड़ने और कॉन्फ़िगर करने का तरीका जानने के लिए, Unreal Engine OpenXR दस्तावेज़ देखें.

Unreal के लिए Android XR Extensions

Unreal के लिए Android XR Extensions (v1.1.0, Unreal Engine 5.6.x और 5.8.x के साथ काम करता है) OpenXR की बुनियादी सुविधाओं के साथ काम करता है. इसमें इमर्सिव अनुभव देने वाली अतिरिक्त सुविधाएं भी शामिल हैं. जैसे, स्पेशल एंटिटी, स्पेशल और डेप्थ रेकास्टिंग, व्यूपोर्ट फ़ेदरिंग, लाइट एस्टिमेशन क्यूबमैप, बेहतर हैंड मेश डेटा, और हार्डवेयर के हिसाब से ऑप्टिमाइज़ेशन. इस पैकेज को इंपोर्ट और कॉन्फ़िगर करने का तरीका जानने के लिए, Android XR Extensions के लिए क्विकस्टार्ट गाइड पढ़ें या Unreal के लिए Android XR Extensions के एपीआई का संदर्भ देखें.

सहायता पाएं

अगर आपको कोई समस्या आती है, तो मदद पाने के लिए हमारे सहायता पेज पर Unreal Engine के लिए सहायता सेक्शन देखें.

इनपुट और इंटरैक्शन

इंटरैक्टिव स्पेशल एक्सपीरियंस बनाने के लिए, फ़िज़िकल मूवमेंट को डिजिटल ऐक्शन के साथ मैप करना ज़रूरी है. Unreal Engine, मोशन कंट्रोलर और हाथ ट्रैक करने की सुविधा, दोनों को मैनेज करने के लिए, OpenXR के साथ बेहतर इनपुट सिस्टम का इस्तेमाल करता है. इनपुट ऐक्शन और इनपुट मैपिंग कॉन्टेक्स्ट सेट अप करके, इंटरैक्शन को ज़रूरत के हिसाब से बनाया जा सकता है. जैसे, ग्रैब करना, पॉइंट करना, और यूज़र इंटरफ़ेस (यूआई) नेविगेशन. ये Android XR के अलग-अलग इनपुट तरीकों पर आसानी से काम करते हैं.

इन तकनीकों को बनाने के बारे में पूरी जानकारी पाने के लिए, Unreal Engine के दस्तावेज़ में इंटरैक्टिव एक्सआर अनुभव बनाना देखें.

Android XR, Unreal Engine में इंटरैक्शन के इन तरीकों के साथ काम करता है:

इंटरैक्शन प्रोफ़ाइलें

OpenXR सेक्शन में जाकर, प्रोजेक्ट सेटिंग में इंटरैक्शन प्रोफ़ाइलें कॉन्फ़िगर की जा सकती हैं. इससे आपके ऐप्लिकेशन को अलग-अलग कंट्रोलर और ट्रैकिंग के तरीकों के लिए, एक जैसी इनपुट मैपिंग बनाए रखने में मदद मिलती है.

हाथों से इंटरैक्ट करने की सुविधा

हाथों से इंटरैक्ट करने की सुविधा, OpenXR Hand Tracking एक्सटेंशन के ज़रिए उपलब्ध कराई जाती है. Blueprints या C++ में एक्सआर ट्रैकिंग कॉम्पोनेंट की मदद से, हाथ के जोड़ों के डेटा और पोज़ को ऐक्सेस किया जा सकता है.

आई गेज़ इंटरैक्शन

Eye gaze data can be retrieved as a standard input pose, letting you drive UI focus or social presence features. इसके लिए, android.permission.EYE_TRACKING_FINE अनुमति की ज़रूरत होती है.

चेहरा ट्रैक करने की सुविधा

अवतारों को ऐनिमेट करने या सोशल इंटरैक्शन को बेहतर बनाने के लिए, चेहरे के हाव-भाव का रीयल-टाइम डेटा ऐक्सेस करना. इसके लिए, XR_ANDROID_face_tracking एक्सटेंशन का इस्तेमाल किया जाता है.

काम करने वाले एक्सटेंशन

Unreal में Android XR के लिए ऐप्लिकेशन बनाते समय, OpenXR के ये एक्सटेंशन इस्तेमाल किए जा सकते हैं:

सुविधा या क्षमता OpenXR एक्सटेंशन स्ट्रिंग इनके ज़रिए मिला

डिवाइस ऐंकर परसिस्टेंस

XR_ANDROID_device_anchor_persistence

Unreal के लिए Android XR Extensions (v1.0.0)

Raycast

XR_ANDROID_raycast

Unreal के लिए Android XR Extensions (v1.0.0)

ट्रैक किए जा सकने वाले ऑब्जेक्ट (प्लेन/डेप्थ)

XR_ANDROID_trackables

Unreal के लिए Android XR Extensions (v1.0.0)

ऑब्जेक्ट ट्रैकिंग

XR_ANDROID_trackables_object

Unreal के लिए Android XR Extensions (v1.0.0)

सीन मेशिंग

XR_ANDROID_scene_meshing

Unreal के लिए Android XR Extensions (v1.0.0)

चेहरा ट्रैक करने की सुविधा

XR_ANDROID_face_tracking

Unreal के लिए Android XR Extensions (v1.0.0)

आई ट्रैकिंग की सुविधा

XR_ANDROID_eye_tracking

Unreal के लिए Android XR Extensions (v1.0.0)

Passthrough Camera State

XR_ANDROID_passthrough_camera_state

Unreal के लिए Android XR Extensions (v1.0.0)

Passthrough Mesh Layer

XR_ANDROID_composition_layer_passthrough_mesh

Unreal के लिए Android XR Extensions (v1.0.0)

डेप्थ टेक्स्चर

XR_ANDROID_depth_texture

Unreal के लिए Android XR Extensions (v1.0.0)

लाइट एस्टिमेशन

XR_ANDROID_light_estimation

Unreal के लिए Android XR Extensions (v1.0.0)

लाइट एस्टिमेशन क्यूबमैप

XR_ANDROID_light_estimation_cubemap

Unreal के लिए Android XR Extensions (v1.1.0)

परफ़ॉर्मेंस मेट्रिक

XR_ANDROID_performance_metrics

Unreal के लिए Android XR Extensions (v1.0.0)

सुझाया गया रिज़ॉल्यूशन

XR_ANDROID_recommended_resolution

Unreal के लिए Android XR Extensions (v1.0.0)

हाथ से इंटरैक्शन

XR_EXT_hand_interaction

Unreal के लिए Android XR Extensions (v1.0.0)

डीबग यूटिलिटी

XR_EXT_debug_utils

Unreal Native OpenXR

परफ़ॉर्मेंस सेटिंग

XR_EXT_performance_settings

Unreal Native OpenXR

डिसप्ले का रीफ़्रेश रेट

XR_FB_display_refresh_rate

Unreal Native OpenXR

हाथ ट्रैक करने की सुविधा का मेश

XR_FB_hand_tracking_mesh

Unreal के लिए Android XR Extensions (v1.0.0)

Space Warp

XR_FB_space_warp

Unreal Native OpenXR

Equirect2 कंपोज़िशन लेयर

XR_KHR_composition_layer_equirect2

Unreal Native OpenXR

Android पर Thread की सेटिंग

XR_KHR_android_thread_settings

Unreal Native OpenXR

ग्लोबल पासथ्रू डिमिंग

XR_ANDROID_global_passthrough_dimming

Unreal के लिए Android XR Extensions (v1.0.0)

सिस्टम एक्सटेंशन प्रॉपर्टी

XR_ANDROID_enumerate_system_extension_properties

Unreal के लिए Android XR Extensions (v1.0.0)

स्पेशल इकाइयां

XR_EXT_spatial_entity

Unreal के लिए Android XR Extensions (v1.0.0)

स्पेशल प्लेन ट्रैकिंग

XR_EXT_spatial_plane_tracking

Unreal के लिए Android XR Extensions (v1.0.0)

स्पेशल मार्कर ट्रैकिंग

XR_EXT_spatial_marker_tracking

Unreal के लिए Android XR Extensions (v1.0.0)

स्पेशल ऐंकर और पर्सिस्टेंस

XR_EXT_spatial_anchor, XR_EXT_spatial_persistence

Unreal के लिए Android XR Extensions (v1.0.0)

व्यूपोर्ट फ़ेदरिंग

XR_ANDROID_viewport_feathering

Unreal के लिए Android XR Extensions (v1.1.0)

स्पेशल डिस्कवरी और डेप्थ रेकास्ट

XR_ANDROID_spatial_discovery_raycast

Unreal के लिए Android XR Extensions (v1.1.0)

एक्सटेंशन, इनमें से किसी एक सोर्स से उपलब्ध कराए जाते हैं:

  • Unreal के लिए Android XR Extensions: ये Google के खास एक्सटेंशन (ANDROID) और स्पेशल एंटिटी एक्सटेंशन (EXT) हैं. इन्हें Android XR प्लैटफ़ॉर्म के लिए डेवलप किया गया है. स्पेशल ऑडियो की इन सुविधाओं का इस्तेमाल करने के लिए, अपने .uproject में Android XR Extensions प्लग इन इंस्टॉल और चालू करें. साथ ही, ब्लूप्रिंट और C++ के इस्तेमाल के लिए, Unreal API के लिए Android XR Extensions का रेफ़रंस देखें.
  • Unreal Native OpenXR: ये सुविधाएं, Khronos (KHR), एक्सटेंशन (EXT), और Meta (FB) के स्टैंडर्ड एक्सटेंशन का इस्तेमाल करती हैं. ये एक्सटेंशन, Unreal Engine के मुख्य OpenXR प्लग इन में पहले से ही इंटिग्रेट किए गए हैं और सीधे तौर पर मैनेज किए जाते हैं.