इनपुट सिस्टम पैकेज ़ का परिचय

पेज अद्यतन :
पेज निर्माण की तारीख :

सत्यापन वातावरण

विंडोज़
  • विंडोज 11
एकता संपादक
  • 2020.3.25f1

इनपुट सिस्टम पैकेज के बारे में

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

2022 तक, संगतता के लिए नए "इनपुट सिस्टम पैकेज" और "इनपुट मैनेजर" दोनों उपलब्ध हैं। यदि आपके पास एक पुरानी परियोजना है, तो आप "इनपुट मैनेजर" का उपयोग कर सकते हैं, मुझे लगता है कि यह भविष्य में एक नए "इनपुट सिस्टम पैकेज" में संक्रमण करेगा, इसलिए एक नई परियोजना में। इनपुट सिस्टम पैकेज का उपयोग करें।

यह अनुभाग वर्णन करता है कि इसे कैसे सेट करें.

इनपुट सिस्टम पैकेज़ स्थापित करना

एकता संपादक 2020.3.25f1 के अनुसार, इनपुट सिस्टम पैकेज को उन पैकेजों के रूप में प्रबंधित किया जाता है जो शुरू में स्थापित नहीं होते हैं। पैकेज को स्थापित करने के लिए:

अपनी परियोजना बनाने और एकता संपादक लॉन्च करने के बाद, मेनू से विंडो > पैकेज प्रबंधक का चयन करें।

जब पैकेज प्रबंधक स्क्रीन प्रकट होता है, तो पैकेज से "एकता रजिस्ट्री" का चयन करें।

यदि आप बाईं ओर सूची को नीचे स्क्रॉल करते हैं, तो "इनपुट सिस्टम" है, इसलिए इसका चयन करें और नीचे दाईं ओर "इंस्टॉल करें" बटन पर क्लिक करें।

स्थापित होने पर, यह स्थापित के रूप में प्रदर्शित किया जाएगा, इसलिए संवाद बंद करें।

यदि पैकेज को स्थापित करने के बाद निम्न संवाद प्रदर्शित होता है, तो अगले "इनपुट सिस्टम पैकेज को सक्रिय करें" स्वचालित रूप से कॉन्फ़िगर करने के लिए "हाँ" बटन पर क्लिक करें। इस स्थिति में, एकता संपादक पुनरारंभ होगा।

This project is using the new input system package but the native platform backends for the new input system are not enabled in the player settngs. This means that no input from native devices will come through.

Do you want to enable the backends? Doing so *RESTART* the editor and will *DISABLE* the old UnityEngine.Input APIs.

इनपुट सिस्टम पैकेज को सक्रिय करें

चूंकि मैंने अभी पैकेज स्थापित किया है, इसलिए मेरे पास इस समय एक पुराना इनपुट मैनेजर सक्रिय है। इसे इनपुट सिस्टम पैकेज पर स्विच करें।

मेनू से > प्रोजेक्ट सेटिंग्स संपादित करें का चयन करें.

जब प्रोजेक्ट सेटिंग्स संवाद खुलता है, तो बाएँ मेनू से प्लेयर का चयन करें।

नीचे स्थित टैब में, पीसी, मैक का चयन करें। सेटिंग्स टैब का चयन करें और नीचे समूह में अधिक सेटिंग्स का विस्तार करें।

यदि आप कुछ हद तक नीचे स्क्रॉल करते हैं, तो आपको "सेटिंग्स" श्रेणी में "उपयोग में इनपुट प्रोसेसिंग" नामक एक आइटम मिलेगा, जहां आप "इनपुट सिस्टम पैकेज (नया)" का चयन कर सकते हैं। आप दोनों को कुछ समय के लिए सक्रिय कर सकते हैं, लेकिन यह भ्रामक है, इसलिए एक नई परियोजना के मामले में, केवल इनपुट सिस्टम पैकेज का उपयोग करना बेहतर है।

परिवर्तन करने के बाद, निम्न संवाद दिखाई देगा, इसलिए एकता संपादक को पुनरारंभ करने के लिए "लागू करें" पर क्लिक करें।

बस इतना ही, आप कर चुके हैं!

कोड इनपुट में "UnityEngine.InputSystem" नामस्थान का उपयोग करने की समस्या के बारे में जिसके परिणामस्वरूप त्रुटि होती है

मैंने फिलहाल कोड दर्ज नहीं किया है, इसलिए यह एक त्रुटि नहीं होगी, कोड दर्ज करते समय इसका UnityEngine.InputSystem उपयोग करने का प्रयास करते समय आपको एक त्रुटि प्राप्त हो सकती है (उदाहरण के लिए, Visual Studio).

उदाहरण के लिए, यदि आप "इनपुट सिस्टम पैकेज" स्थापित करने से पहले एक स्क्रिप्ट बनाते हैं।

ऐसा इसलिए है क्योंकि परियोजना UnityEngine.InputSystem का कोई संदर्भ नहीं है। इसे हल करने के लिए, निम्न कार्य करें:

मेनू से > प्राथमिकताएँ संपादित करें का चयन करें.

बाईं ओर मेनू से बाहरी उपकरण का चयन करें और प्रोजेक्ट फ़ाइलें पुन: उत्पन्न करें बटन पर क्लिक करें।

ऐसा करने से, Visual Studio UnityEngine.InputSystem संदर्भ में जोड़ता है।

इसके अलावा, कोड त्रुटि मुक्त है।

UI में उपयोगकर्ता इनपुट की स्वीकृति को इनपुट सिस्टम पैकेज में बदलें

यदि आप एकता UI का उपयोग नहीं करते हैं, जैसे इनपुट फ़ील्ड या ड्रॉपडाउन, तो यह फ़ील्ड प्रासंगिक नहीं है, और इसे अनदेखा किया जाना चाहिए.

जब आप किसी दृश्य में इनपुट फ़ील्ड, ड्रॉपडाउन, या इतने पर रखते हैं, तो एक कैनवास स्वचालित रूप से बनाया जाता है और UI ऑब्जेक्ट वहां रखा जाता है। उसी समय, "इवेंटसिस्टम" नामक एक ऑब्जेक्ट बनाया जाता है। यह एक ऑब्जेक्ट है जो प्रबंधित करता है कि यूआई में कुछ इनपुट किए जाने पर क्या होता है।

यह इवेंट सिस्टम प्रारंभ में एक पुराने इनपुट प्रबंधक के साथ चल रहा है। यदि केवल इनपुट सिस्टम पैकेज सक्षम है, तो यूआई काम नहीं करेगा जैसा कि यह है, इसलिए आपको इनपुट सिस्टम पैकेज में बदलने की आवश्यकता है।

परिवर्तन करने के लिए, पहले ईवेंट सिस्टम का चयन करें।

फिर निरीक्षक में "स्टैंडअलोन इनपुट मॉड्यूल" में एक चेतावनी प्रदर्शित की जाती है।

स्टैंडअलोन इनपुट मॉड्यूल को इनपुट सिस्टम यूआई इनपुट मॉड्यूल से बदलने के लिए इनपुट सिस्टम यूआई इनपुटमॉड्यूल के साथ बदलें बटन पर क्लिक करें।

आपके गेम पर यूआई को अब इनपुट को सही ढंग से स्वीकार करना चाहिए।