입력 시스템 패키지 소개

페이지 업데이트 :
페이지 생성 날짜 :

검증 환경

윈도우
  • 윈도우 11
Unity 에디터
  • 2020.3.25f1

입력 시스템 패키지 정보

Unity 초창기에는 사용자로부터 입력을 받기 위한 메커니즘으로 Input Manager를 사용했습니다. 그러나 게임 플랫폼이 다양화되는 환경에서 입력 관리자는 구식이 되었습니다. 사용자 입력을 관리하기 위한 새로운 메커니즘인 Input Systemu Manager가 추가되었습니다.

2022년부터 호환성을 위해 새로운 "입력 시스템 패키지"와 "입력 관리자"를 모두 사용할 수 있습니다. 예전 프로젝트가 있는 경우 "입력 관리자"를 그대로 사용할 수 있습니다. 앞으로 새로운 "입력 시스템 패키지"로 전환 될 것이라고 생각하므로 새로운 프로젝트에서 입력 시스템 패키지를 사용합니다.

이 섹션에서는 설정 방법에 대해 설명합니다.

입력 시스템 패키지 설치

Unity 에디터 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.

입력 시스템 패키지 활성화

방금 패키지를 설치했기 때문에 현재 오래된 입력 관리자가 활성화되어 있습니다. 이것을 입력 시스템 패키지로 전환하십시오.

메뉴에서 편집(Edit) > 프로젝트 설정(Project Settings)을 선택합니다.

프로젝트 설정 대화 상자가 열리면 왼쪽 메뉴에서 플레이어를 선택합니다.

아래 탭에서 PC, Mac.... 설정 탭을 선택하고 아래쪽의 그룹에서 추가 설정을 확장합니다.

어느 정도 아래로 스크롤하면 "설정" 범주에서 "입력 시스템 패키지(신규)"를 선택할 수 있는 "사용 중인 입력 처리"라는 항목을 찾을 수 있습니다. 당분간은 둘 다 활성화 할 수 있지만 혼란 스럽기 때문에 새로운 프로젝트의 경우 입력 시스템 패키지 만 사용하는 것이 좋습니다.

변경 후 다음과 같은 다이얼로그가 표시되므로, "Apply"를 클릭하여 Unity 에디터를 재시작합니다.

그게 다야, 너 끝났어!

코드 입력에 "UnityEngine.InputSystem" 네임스페이스를 사용하여 오류가 발생하는 문제에 대해

지금은 코드를 입력하지 않았으므로 오류가 아닙니다. 코드를 입력할 때 UnityEngine.InputSystem 네임스페이스를 사용하려고 할 때 네임스페이스가 없다는 오류가 표시될 수 있습니다(예: Visual Studio).

예를 들어 "입력 시스템 패키지"를 설치하기 전에 스크립트를 만드는 경우입니다.

이는 프로젝트에 UnityEngine.InputSystem 에 대한 참조가 없기 때문입니다. 이 문제를 해결하려면 다음을 실행합니다.

메뉴에서 Edit(편집> Preferences(기본 설정))를 선택합니다.

왼쪽 메뉴에서 외부 도구를 선택하고 프로젝트 파일 재생성 버튼을 클릭합니다.

이렇게 하면 Visual Studio UnityEngine.InputSystem 에서 참조에 추가됩니다.

또한 코드에 오류가 없습니다.

UI에서 사용자 입력 수락을 입력 시스템 패키지로 변경

이 필드는 입력 필드 또는 드롭다운과 같은 Unity UI를 사용하지 않는 경우 관련이 없으며 무시해야 합니다.

뷰에 입력 필드, 드롭다운 등을 배치하면 Canvas가 자동으로 만들어지고 UI 개체가 배치됩니다. 동시에 "EventSystem"이라는 객체가 생성됩니다. UI에서 일부 입력이 수행될 때 발생하는 작업을 관리하는 개체입니다.

이 EventSystem은 처음에 이전 입력 관리자로 실행됩니다. 입력 시스템 패키지만 활성화하면 UI가 그대로 작동하지 않으므로 입력 시스템 패키지로 변경해야 합니다.

변경하려면 먼저 EventSystem을 선택합니다.

그런 다음 인스펙터의 "Standalone Input Module"에 경고가 표시됩니다.

InputSystemUIInputModule로 바꾸기 버튼을 클릭하여 독립형 입력 모듈을 입력 시스템 UI 입력 모듈로 바꿉니다.

이제 게임의 UI가 입력을 올바르게 받아들여야 합니다.