दिवस 8: युनिटी मध्ये एआर फाउंडेशन वापरुन ऑब्जेक्ट्स लपविण्यासाठी ओव्हल्यूशन कसे वापरावे. एआर साठी ट्यूटोरियल

या ट्यूटोरियल मध्ये आपण वास्तविक जगाच्या वस्तू आणि भिंतींच्या मागे वस्तू लपविण्यासाठी ओव्हल्यूशन कसे वापरावे जेणेकरून एआर मध्ये अधिक वास्तविक अनुभव तयार करू शकाल. हे मिळवण्यासाठी आम्ही युनिटी इन एआर फाउंडेशन वापरणार आहोत.

हा 30 दिवसांच्या स्प्रिंटचा भाग आहे जिथे आम्ही 30 दिवसांत 30 प्रकल्प प्रकाशित करण्याचा प्रयत्न करतो म्हणजे याचा अर्थ सुरवातीपासून पूर्ण प्रकल्प तयार करणे. कोडची दोनदा तपासणी, ट्यूटोरियल लिहिणे आणि नंतर पोस्ट करणे. काही टायपॉईज असल्यास आम्हाला कळवा आणि मी आशा करतो की आपण या ट्युटोरियलचा व प्रोजेक्टचा आनंद घ्याल.

मागील लेखांमध्ये आम्ही एआर फाउंडेशन आणि एआरच्या तत्त्वांविषयी शिकलो. आम्ही प्लेन डिटेक्शन आणि शोधलेल्या प्लेनवर ऑब्जेक्ट ठेवण्यासारखे ट्रॅकबल शिकलो आणि तयार केले.

त्या लेखामधून, जर आपणास लक्षात आले की आम्ही विमाने ठेवलेले चौकोनी मोकळ्या जागेवर पाहिले तेव्हा त्या ख real्या वाटल्या. जेव्हा वातावरणात बर्‍याच वस्तू आणि भूमिती असताना लवकरच वास्तववाद वेगळा झाला.

आपल्या आभासी वस्तू खर्‍या जगाबरोबर मिसळण्यासाठी आम्ही हे अधिक वास्तववादी बनवण्यासाठी काय करू शकतो?

समावेश

समावेश म्हणजे एक वस्तू दुस another्यामागे लपविण्याची प्रक्रिया. उदाहरणार्थ, आभासी जगात, भिंत त्याच्या मागे असलेल्या गोष्टी लपवते. कॅमेर्‍याच्या दृष्टिकोनातून, गणिते पिक्सेलद्वारे पिक्सेलद्वारे केली जातात आणि संपूर्ण दृश्यात तपासली जातात. आणि त्या ऑब्जेक्ट्स ज्यास दृश्यावर रेखांकित करण्याची किंवा प्रस्तुत करण्याची आवश्यकता नाही त्यांना वगळले किंवा पुसून टाकले जाईल. आपण येथे ऐक्यात वापरल्या गेलेल्या भिन्न प्रकारच्या तंत्रज्ञान पद्धतींबद्दल अधिक वाचू शकता.

आम्ही हे एआर मध्ये कसे लागू करू?

आम्ही शेडर्स वापरतो, शेडर्स स्क्रिप्ट्स आहेत ज्या गणिताची गणना करतात आणि प्रत्येक पिक्सेल दृश्यावर प्रस्तुत करण्यासाठी अल्गोरिदम ठेवतात. ते ज्या वस्तूवर लागू होते त्या वस्तू आणि प्रकाश गुणधर्मांवर अवलंबून असतात.

आम्ही आपल्या प्लेन ऑब्जेक्टवर शेडर तयार आणि लागू करू. या शेडरमध्ये आम्ही झेड-बफरला लिहू जे प्रत्येक पिक्सेलची झेड स्थिती साठवते जे त्या पिक्सेलच्या मूल्याच्या आधारे प्रस्तुत कसे होईल ते ठरवते.

जेव्हा आम्ही हा शेडर आमच्या विमानात लागू करतो. मागे असलेल्या कोणत्याही वस्तूचे कमी झेड-बफर मूल्य असेल आणि म्हणून ते प्रस्तुत केले जाणार नाहीत. अशा प्रकारे आढळलेल्या विमानामागील आमची आभासी वस्तू लपवित आहे. उदाहरणार्थ, एक टेबल किंवा भिंत.

आम्ही या लेखात हे प्रदर्शित करण्यासाठी एक अनुप्रयोग तयार करू.

अंतिम परिणाम यासारखे दिसेल.

प्रारंभ करणे

पूर्व शर्ती

  1. ऐक्य 2019.2.18f1.
  2. प्रोग्रामिंगची मूलभूत समज.
  3. येथून एआर फाउंडेशन आणि विमानाचा मागोवा घेण्याबद्दल पूर्वीचा लेख.

स्रोत कोड डाउनलोड करा

शेडर तयार करणे

हे शेडर प्लॅटफॉर्म-स्वतंत्र असल्याने हे Android आणि iOS दोन्ही वर कार्य आहे.

एकदा आपण मागील लेखाचे अनुसरण केल्यानंतर, शेडर स्क्रिप्ट तयार करुन प्रारंभ करूया.

प्रोजेक्ट विंडोमध्ये “शेडर्स” नावाचे एक नवीन फोल्डर तयार करा आणि त्यामध्ये -> तयार करा -> शेडर -> मानक पृष्ठभाग शेडर क्लिक करा. आम्ही आमच्या हेतूसाठी संपादित आणि सुधारित करू.

त्यास “प्लेनऑक्लूझनशेडर” असे नाव द्या.

शेडरवर डबल क्लिक करा आणि ते व्हिज्युअल स्टुडिओमध्ये उघडेल. स्क्रिप्टमधील प्रत्येक गोष्ट हटवा आणि त्यास खालील स्क्रिप्टने पुनर्स्थित करा

शेडर "कस्टम / प्लेनऑक्लूझनशेडर" {सबशेडर {टॅग्ज R "रेंडरटाइप" = "अपारदर्शक"} टॅग्ज Que "रांगे" = "भूमिती -1" Z झेड टेस्ट लेक्वल कलरमास्क 0 पास {सीजीपीआरजीएम # प्रॅगॅमा व्हर्टीक्स #practma फ्रेगमेंट "UnityCG.cginc" स्ट्रक्चर dपडेटा {फ्लोट 4 वर्टेक्स: पॉझीशन; }; v v2f {फ्लोट 4 शिरोबिंदू: SV_POSITION; }; v2f वर्ट (dपडाटा v) {v2f ओ; o.vertex = UnityObjectToClipPos (v.vertex); रिटर्न ओ; } फिक्स्ड 4 तुक (v2f i): एसव्ही_तरजेट {रिटर्न फिक्स्ड 4 (0.0, 0.0, 0.0, 0.0); } ENDCG}}

ते जतन करा आणि पुन्हा ऐक्यात जा. आमचे शेडर आता तयार आहे.

साहित्य तयार करीत आहे

आता आपण एक नवीन मटेरियल तयार करू आणि या शेडरला असाइन करू. त्यानंतर, आमच्या प्लेन प्रीफेबवर सामग्री नियुक्त केली जाईल.

प्रोजेक्ट व्ह्यूमध्ये मटेरियल्स नावाचे फोल्डर तयार करा आणि त्या आत, -> तयार करा -> सामग्रीवर राइट-क्लिक करा.

हे प्लेनऑक्लूजनमॅटवर पुनर्नामित करा

सामग्री निवडा आणि निरीक्षक विंडोमध्ये, शेडर ड्रॉपडाउन शोधा आणि -> सानुकूल -> प्लेनऑक्लूजनशेडर,

आता प्रीफेब फोल्डर आणि त्याच्या इंस्पेक्टर विंडो मध्ये प्लेन प्रीफेब वर जा, त्याच्या मेष रेंडरर घटक खाली मटेरियल साइज प्रॉपर्टी 2 सेट करा.

मटेरियल प्रॉपर्टीच्या एलिमेंट 1 फील्डला प्लेनऑक्लूजनमॅट मटेरियल द्या.

बस एवढेच. विमानाकडे आता ओझेशन प्रॉपर्टी आहे आणि त्यामागील कोणतीही आभासी वस्तू लपवेल.

प्रथम सामग्रीमुळे विमाने डीफॉल्ट असतील - घटक 0 मध्ये डीबग विमानाची सामग्री नियुक्त केली आहे. आपण विमाने दृश्यमान होऊ इच्छित नसल्यास प्रथम घटक 0 हटवा.

आता आपण आपल्या डिव्हाइसवर अॅप तयार करू शकता आणि चाचणी घेऊ शकता.

कृपया खाली टिप्पण्या विभागात कोणत्याही प्रतिक्रिया किंवा क्वेरी खाली द्या!

मूळतः 24 फेब्रुवारी 2020 रोजी https://tutorialsforar.com वर प्रकाशित केले.