हिट टेस्ट, असल दुनिया में वर्चुअल ऑब्जेक्ट डालते हैं

प्लैटफ़ॉर्म के हिसाब से गाइड

Android (Kotlin/Java)

Android एनडीके (C)

यूनिटी (एआर फ़ाउंडेशन)

सीन के हिसाब से ब्लेंड करने के लिए, एआर (ऑगमेंटेड रिएलिटी) कॉन्टेंट को सही जगह पर डालना और उसका साइज़ बदलना ज़रूरी है. असल दुनिया के ऑब्जेक्ट की तरह, इससे दूर मौजूद वर्चुअल ऑब्जेक्ट भी छोटे दिखने चाहिए. अपने सीन में 3D ऑब्जेक्ट की सही जगह का पता लगाने के लिए, एक हिट-टेस्ट (या एआर फ़ाउंडेशन फ़ॉर यूनिट में एक रेकास्ट) किया जा सकता है. सही प्लेसमेंट यह पक्का करता है कि एआर कॉन्टेंट को उचित (साफ़ तौर पर) आकार में रेंडर किया गया हो.

हिट-टेस्ट की मदद से, असली दुनिया की 3D ज्यामिति और मूल और दिशा वाली वर्चुअल किरण के बीच के अंतर को समझा जा सकता है. मूल रूप से डिवाइस के कैमरे वाली रेज़ का इस्तेमाल आम तौर पर सबसे ज़्यादा किया जाता है. हालांकि, ARCore में दुनिया के अंतरिक्ष निर्देशांकों में आर्बिट्रेरी रे के साथ हिट-टेस्ट करने के लिए एक एपीआई शामिल है.

मान लें कि उपयोगकर्ता के डिवाइस के कैमरे से एक किरण निकल रही है. यह तब तक आगे बढ़ती है, जब तक कि वह सीन की 3D ज्यामिति (जैसे, फ़र्श, दीवार या ऑब्जेक्ट) से टकरा नहीं जाती. ऐसा होने के बाद, आपको हिट के नतीजों की सूची या उन जगहों की जानकारी मिलती है जहां सीन की ज्यामिति का पता लगाया गया है. सूची को डिवाइस से दूरी के हिसाब से क्रम में लगाया जाता है. साथ ही, सूची में सबसे नज़दीकी चौराहे को क्रम से लगाया जाता है. यह ज़रूरी है क्योंकि आम तौर पर आप किसी दूसरे ऑब्जेक्ट के पीछे छिपे हुए ऑब्जेक्ट नहीं देख सकते, इसलिए ज़्यादातर पहला नतीजा सबसे अहम होता है.

हिट नतीजे की सामग्री

किसी एक हिट नतीजे को सूची के तौर पर दिखाया जाता है, जिसमें हर नतीजे के लिए नीचे दी गई जानकारी होती है:

  • किरण मूल से दूरी, मीटर में
  • हिट नतीजे का पोज़ (रैंक और ओरिएंटेशन)
  • वह 3D ज्यामिति जिसे आपने हिट किया, वह ट्रैक किए जा सकने वाले रूप में

इसके बाद, अपनी पसंद के हिट नतीजे का इस्तेमाल करके, ऐंकर का इस्तेमाल करके 3D कॉन्टेंट को सही जगह पर रखा जा सकता है.

हिट नतीजे के टाइप

हिट नतीजे चार तरह के होते हैं: डेप्थ, प्लेन, फ़ीचर पॉइंट, और तुरंत प्लेसमेंट के नतीजे. दोनों के अपने इस्तेमाल के उदाहरण और ट्रेड-ऑफ़ हैं, जैसा कि नीचे दी गई टेबल में दिखाया गया है.

हिट के नतीजे का टाइप ब्यौरा ओरिएंटेशन इस्तेमाल के बारे में जानकारी
गहराई किसी पॉइंट की सही गहराई और ओरिएंटेशन का पता लगाने के लिए, पूरे सीन की गहराई से जानकारी का इस्तेमाल करता है 3D सतह के लंबवत वर्चुअल ऑब्जेक्ट को किसी आर्बिट्रेरी सतह पर रखें (सिर्फ़ फ़र्श और दीवारों पर ही नहीं)
जहाज़ किसी पॉइंट की सही गहराई और ओरिएंटेशन का पता लगाने के लिए, वह हॉरिज़ॉन्टल और/या वर्टिकल सतह को हिट करता है 3D सतह के लंबवत प्लेन की पूरी ज्यामिति का इस्तेमाल करके, किसी समतल जगह (फ़्लोर या दीवार) पर कोई चीज़ रखें. स्केल की ज़रूरत तुरंत है. डेप्थ हिट-टेस्ट के लिए फ़ॉलबैक
फ़ीचर पॉइंट किसी पॉइंट की सही पोज़िशन और ओरिएंटेशन का पता लगाने के लिए, उपयोगकर्ता के टैप करने की जगह के आस-पास की विज़ुअल सुविधाओं के आधार पर काम करता है 3D सतह के लंबवत किसी ऑब्जेक्ट को किसी आर्बिट्रेरी सतह पर रखें (सिर्फ़ फ़र्श और दीवारों पर नहीं)
इंस्टैंट प्लेसमेंट (परसिस्टेंट रेकास्ट) कॉन्टेंट दिखाने के लिए स्क्रीन स्पेस का इस्तेमाल करता है. शुरुआत में यह ऐप्लिकेशन से मिली अनुमानित गहराई का इस्तेमाल करता है. तुरंत काम करता है, लेकिन जब ARCore वास्तविक सीन की ज्यामिति का पता लगा लेगा, तो आस-पास का पोज़ और वास्तविक गहराई बदल जाएगी +Y ऊपर की ओर, गुरुत्वाकर्षण के विपरीत हवाई जहाज़ की पूरी ज्यामिति का इस्तेमाल करके सतह (फ़्लोर या दीवार) पर कोई वस्तु रखें, जहां तेज़ प्लेसमेंट ज़रूरी है. साथ ही अनुभव, अज्ञात गहराई और स्केल को सहन कर सकता है

मेरे डिवाइस पर यह सुविधा काम नहीं करती

हिट-टेस्ट की सुविधा, ऐसे सभी डिवाइसों पर काम करती है जिन पर ARCore काम करता है. हालांकि, डेप्थ हिट-टेस्ट के लिए डेप्थ सपोर्ट वाले डिवाइसों की ज़रूरत होगी.

एआर (ऑगमेंटेड रिएलिटी) कॉन्टेंट दिखाने के लिए, हिट नतीजों का इस्तेमाल करना

हिट नतीजा मिलने के बाद, अपने सीन में एआर (ऑगमेंटेड रिएलिटी) कॉन्टेंट डालने के लिए, इनपुट के तौर पर उसके पोज़ का इस्तेमाल किया जा सकता है.