XR_ANDROID_mouse_interaction OpenXR एक्सटेंशन

Name String

XR_ANDROID_mouse_interaction

एक्सटेंशन टाइप

इंस्टेंस एक्सटेंशन

रजिस्टर किया गया एक्सटेंशन नंबर

705

बदलाव

1

एक्सटेंशन और वर्शन की डिपेंडेंसी

OpenXR 1.0

पिछली बार बदलाव करने की तारीख

2024-09-06

आईपी स्टेटस

आईपी पर कोई दावा नहीं किया गया है.

योगदान देने वाले

शरयु शेनॉय, Google

Chiara Coetzee, Google

लेवाना चेन, Google

स्पेंसर क्विन, Google

खास जानकारी

यह एक्सटेंशन, माउस इनपुट पाने के लिए XrPath उपलब्ध कराता है. साथ ही, उपयोगकर्ता की माउस प्रोफ़ाइलों के लिए, आम तौर पर इस्तेमाल होने वाली एक ऐक्शन पोज़ तय करता है. इसमें माउस डिवाइसों और ट्रैकपैड डिवाइसों, दोनों को शामिल किया जाता है.

इस एक्सटेंशन में, इंटरैक्शन की एक नई प्रोफ़ाइल भी जोड़ी गई है. इसे खास तौर पर, OpenXR ऐक्शन सिस्टम के ज़रिए इनपुट करने के लिए, माउस डिवाइसों के लिए डिज़ाइन किया गया है.

माउस इंटरैक्शन के लिए ऐक्शन पोज़

यहां दिया गया ऐक्शन पॉज़ (यानी "ऐम") 3D पॉइंटर रे को चालू करता है. भले ही, ट्रैकिंग इनपुट माउस डिवाइस या ट्रैकपैड डिवाइस से दिए गए हों.

…/input/aim/pose ऐक्शन सबपाथ, उन सभी इंटरैक्शन प्रोफ़ाइलों पर काम करेगा जो /user/mouse के उपयोगकर्ता पाथ के लिए मान्य हैं. इनमें, एक्सटेंशन की मदद से चालू की गई इंटरैक्शन प्रोफ़ाइलें भी शामिल हैं.

ऐम पोज़

…/input/aim/pose को 3D स्पेस में माउस पॉइंटर की मदद से ऑब्जेक्ट के साथ इंटरैक्ट करने के लिए डिज़ाइन किया गया है. उदाहरण के लिए, दीवार पर मौजूद वर्चुअल बटन को ऐम करने के लिए वर्चुअल लेज़र पॉइंटर का इस्तेमाल करना, "ऐम" पोज़ के हिसाब से सही इंटरैक्शन है.

यह वही "ऐम" पोज़ है जिसे स्टैंडर्ड पोज़ आइडेंटिफ़ायर में बताया गया है. ट्रैक की गई हर कंट्रोलर प्रोफ़ाइल में, यह पोज़ पहले से ही काम करता है.

टारगेट करने के लिए पोज़ का उदाहरण

पद

आम तौर पर, "ऐम" पोज़ की पोज़िशन, उपयोगकर्ता के सिर की होती है. इसका मतलब है कि माउस की मूवमेंट का पता चलने पर, सिर की वही पोज़िशन होती है. माउस की गति होने पर, माउस के ऐम पोज़ की गिनती की जाती है. आखिरी बार ऐम करने की जगह, माउस को अगली बार हिलाने तक बनी रहेगी.

ओरिएंटेशन

"ऐम" पोज़ के ओरिएंटेशन का इस्तेमाल, वर्चुअल ऑब्जेक्ट के साथ इंटरैक्ट करने के लिए 3D पॉइंटर रे को रेंडर करने के लिए किया जा सकता है. उदाहरण के लिए, दीवार पर मौजूद मेन्यू बटन पर क्लिक करना.

माउस की पोज़िशन का हिसाब तब लगाया जाता है, जब माउस को किसी जगह पर ले जाया जाता है. माउस को अगली बार हिलाने तक, आखिरी बार इस्तेमाल किए गए ऐंगल को बनाए रखा जाएगा.

-Z दिशा, ऐमिंग जेस्चर की आगे की दिशा होती है. इसका मतलब है कि ऐमिंग रे, कहां पर ऐम कर रही है.

माउस के X,Y ऐक्सिस पर होने वाली गति का इस्तेमाल, उपयोगकर्ता के सिर के चारों ओर मौजूद गोले के हिसाब से माउस की गति का हिसाब लगाने के लिए किया जाता है.

टारगेट करने के लिए पोज़ का उदाहरण

प्राइमरी क्लिक और स्क्रोल का इस्तेमाल करके, डेप्थ मूवमेंट की सुविधा काम करेगी. जब ज़ूम इन करने की कार्रवाई की जा रही हो, तो रे के साथ-साथ सिर की पोज़िशन से पोज़िशन को ऑफ़सेट किया जाता है. यह ऑफ़सेट, स्क्रोल की वैल्यू के आधार पर, Z-डायरेक्शंस में पॉज़िटिव या नेगेटिव हो सकता है. सिस्टम, उपयोगकर्ता के सिर के आस-पास मौजूद गोले में, गहराई की गति को स्थिर कर देगा.

माउस डिवाइसों के लिए इंटरैक्शन प्रोफ़ाइल

माउस इंटरैक्शन प्रोफ़ाइल, ऐसे रनटाइम के लिए डिज़ाइन की गई है जो बटन और स्क्रोल वाले माउस डिवाइसों या ट्रैकपैड डिवाइसों का इस्तेमाल करके, माउस इनपुट उपलब्ध कराते हैं. इससे माउस डिवाइसों और ट्रैकपैड डिवाइसों को, OpenXR ऐक्शन सिस्टम को आम तौर पर इस्तेमाल होने वाले क्लिक, स्क्रोल, और ऐक्शन पोज़ देने की अनुमति मिलती है.

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

  • /interaction_profiles/android/mouse_interaction

टॉप लेवल के उपयोगकर्ता पाथ के लिए मान्य:

  • /user/mouse

इस्तेमाल किए जा सकने वाले कॉम्पोनेंट पाथ:

  • …/input/aim/pose
  • …/input/select/click
  • …/input/secondary/click
  • …/input/tertiary/click
  • …/input/scroll/value

यह इंटरैक्शन प्रोफ़ाइल, इस सेक्शन में बताए गए ऐक्शन पोज़ के साथ-साथ, ऐक्शन इनपुट के इन दो ग्रुप के साथ काम करती है.

क्लिक ऐक्शन

यह इंटरैक्शन प्रोफ़ाइल, …/input/select/click, …/input/secondary/click, और /input/tertiary/click ऐक्शन के साथ काम करती है.

…/input/select/click एक बूलियन इनपुट है. इसमें वैल्यू XR_TRUE से पता चलता है कि माउस या ट्रैकपैड पर प्राइमरी बटन दबाया गया है.

…/input/secondary/click एक बूलियन इनपुट है. इसमें XR_TRUE वैल्यू से पता चलता है कि माउस या ट्रैकपैड पर सेकंडरी बटन दबाया गया है.

…/input/tertiary/click एक बूलियन इनपुट है. इसमें वैल्यू XR_TRUE से पता चलता है कि माउस स्क्रोल या तीसरे बटन को दबाया गया है.

स्क्रोल करने की कार्रवाई

यह इंटरैक्शन प्रोफ़ाइल, …/input/scroll/value कार्रवाइयों के साथ काम करती है.

…/input/scroll/value एक 2D इनपुट कॉम्पोनेंट है, जो नीचे और ऊपर स्क्रोल करने के लिए, -1 से 1 के बीच में बदलता रहता है.

नए ऑब्जेक्ट टाइप

फ़्लैग के नए टाइप

नई Enum Constant

नए Enums

नए स्ट्रक्चर

नए फ़ंक्शन

समस्याएं

वर्शन का इतिहास

  • पहला बदलाव, 29-08-2024 (लेवन चेन)
    • एक्सटेंशन के बारे में शुरुआती जानकारी