Въвеждане на пакета на входната система

Страницата се актуализира :
Дата на създаване на страница :

Среда за проверка

Уиндоус
  • Прозорци 11
Редактор на единство
  • 2020.3.25ф1

За пакета на входната система

В ранните дни на Unity използвахме Input Manager като механизъм за получаване на входни данни от потребителите. Въпреки това, в средата на разнообразяване на платформите за игри, мениджърът на входа е остарял. Добавен е нов механизъм за управление на потребителското въвеждане: Input Systemu Manager.

От 2022 г. са налични както новият "Пакет на входната система", така и "Мениджърът на входовете" за съвместимост. Ако имате стар проект, можете да използвате "Input Manager" такъв, какъвто е, Мисля, че в бъдеще ще премине към нов "пакет на входната система", така че в нов проект Използвайте пакета на входната система.

Този раздел описва как да го настроите.

Инсталиране на пакети на входната система

От Unity Editor 2020.3.25f1 пакетите на входната система се управляват като пакети, които първоначално не са инсталирани. За да инсталирате пакета:

След като създадете проекта си и стартирате редактора на Unity, изберете Window > Package Manager от менюто.

Когато се появи екранът Package Manager, изберете "Unity Registry" от пакета.

Ако превъртите надолу списъка вляво, има "Входна система", така че го изберете и кликнете върху бутона "Инсталиране" в долния десен ъгъл.

Когато е инсталиран, той ще се показва като инсталиран, така че затворете диалоговия прозорец.

Ако след инсталирането на пакета се покаже следният диалогов прозорец, кликнете върху бутона "Да", за да конфигурирате автоматично следващия "Активиране на пакета на входната система". В този случай редакторът на Unity ще се рестартира.

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.

Активиране на пакета на входната система

Тъй като току-що инсталирах пакета, в момента имам остарял входен мениджър. Превключете това към пакета на входната система.

Изберете Редактиране > настройките на проекта от менюто.

Когато се отвори диалоговият прозорец Настройки на проект, изберете Player от лявото меню.

В раздела, разположен по-долу, изберете PC, Mac.... Изберете раздела Настройки и разгънете Още настройки в групата в долната част.

Ако превъртите надолу до известна степен, ще намерите елемент, наречен "Входна обработка в употреба" в категорията "Настройки", където можете да изберете "Пакет на входната система (нов)". Можете да активирате и двете за момента, но това е объркващо, така че в случай на нов проект е по-добре да използвате само пакета на входната система.

След като направите промените, ще се появи следният диалогов прозорец, така че кликнете върху "Приложи", за да рестартирате редактора на Unity.

Това е, свършено е с теб!

За проблема с използването на пространството от имена "UnityEngine.InputSystem" при въвеждане на код, което води до грешка

В момента не съм въвел кода, така че няма да е грешка, Може да получите грешка, че пространството на имената не съществува, когато се опитвате да го използвате при въвеждане на UnityEngine.InputSystem код (например Visual Studio).

Например, ако създадете скрипт, преди да инсталирате "Пакет на входната система".

Това е така, защото проектът UnityEngine.InputSystem няма препратка към . За да разрешите това, направете следното:

Изберете Редактиране > предпочитания от менюто.

Изберете Външни инструменти от менюто вляво и кликнете върху бутона Регенериране на файлове на проект.

По този начин Visual Studio UnityEngine.InputSystem добавя към препратката.

Също така, кодът е без грешки.

Промяна на приемането на потребителски вход в потребителския интерфейс в пакет на входната система

Това поле не е уместно, ако не използвате потребителския интерфейс на Unity, като например полета за въвеждане или падащи менюта, и трябва да бъде игнорирано.

Когато поставите поле за въвеждане, падащо меню или т.н. в изглед, автоматично се създава платно и обектът на потребителския интерфейс се поставя там. В същото време се създава обект, наречен "EventSystem". Това е обект, който управлява какво се случва, когато се направи някакъв вход в потребителския интерфейс.

Тази система за събития първоначално се изпълнява с по-стар мениджър на входове. Ако е активиран само пакетът на входната система, потребителският интерфейс няма да работи както е, така че трябва да преминете към пакета на входната система.

За да направите промени, първо изберете EventSystem.

След това се показва предупреждение в "Самостоятелен входен модул" в инспектора.

Щракнете върху бутона Замяна с InputSystemUIInputModule, за да замените самостоятелния входен модул с входния модул на потребителския интерфейс на входната система.

Потребителският интерфейс на играта ви вече трябва да приема правилно въвеждането.