본문 바로가기
유니티

[unity error]InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings

by 유니티세상 2025. 1. 13.

Active Input Handling

 

 

Unity에서 Input System 설정 변경방법

  • Unity 에디터에서 Edit 메뉴를 클릭한 후 Project Settings를 선택합니다.
  • Player 탭을 선택합니다.
  • Other Settings 섹션으로 스크롤 다운하여 Active Input Handling 항목을 찾습니다.
  • Active Input Handling을 Both로 설정합니다

Active Input Handling은 Unity에서 입력 시스템을 어떻게 처리할지를 설정하는 옵션입니다. Unity는 입력을 처리하기 위해 두 가지 주요 시스템을 제공합니다:

  1. Legacy Input System (기존 입력 시스템):
    • Unity의 기본 입력 시스템으로, Input.GetKey(), Input.GetAxis() 등의 API를 사용하여 입력을 처리합니다.
    • 이전 Unity 버전에서 사용되던 방식입니다.
  2. New Input System (새로운 입력 시스템):
    • Unity에서 제공하는 더 유연하고 확장 가능한 입력 시스템입니다.
    • 복잡한 입력 처리, 여러 장치 간의 입력 처리, 커스터마이징된 입력 설정 등을 지원합니다.
    • UnityEngine.InputSystem 네임스페이스와 함께 사용됩니다.

Active Input Handling 설정

  • None: 입력 시스템을 사용하지 않거나 기본 입력 시스템만 사용하는 설정입니다.
  • Old (Legacy): 기존의 Legacy Input System만 사용하는 설정입니다.
  • New: 새로운 Input System만 사용하는 설정입니다.
  • Both: 두 입력 시스템을 모두 활성화하여, Legacy와 New 입력 시스템 모두를 사용할 수 있도록 설정하는 것입니다. 이는 특히 두 시스템을 동시에 사용할 필요가 있는 경우 유용합니다.

왜 "Both"가 필요할까?

Persistent Cloud Anchors 샘플과 같은 AR 관련 기능은 새로운 입력 시스템을 사용하여 더 정교한 입력 처리(예: 터치 입력, VR/AR 장치 지원)를 처리하는 반면, 기존 시스템에서 동작하는 다른 기능들도 있을 수 있습니다. 따라서 Both로 설정하면 두 시스템이 동시에 작동하여 서로 충돌 없이 기능을 사용할 수 있게 됩니다.

 

 

참고)

https://j1-story.tistory.com/9

 

[Unity][Error] InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched

InvalidOperationException: You are trying to read Input using the UnityEngine.Input class, but you have switched active Input handling to Input System package in Player Settings 문제 내용 Project 를 생성하게 되면 기본적으로 Input System 이

j1-story.tistory.com

 

 

'유니티' 카테고리의 다른 글

이벤트 함수의 실행 순서와 상황  (0) 2025.01.23
Unity Gamebase 3009 에러  (2) 2025.01.13
KEYSTORE 생성하기  (0) 2025.01.13
[Error] No 'git' executable was found.  (0) 2025.01.09
정규표현식 Regex(IsMatch)  (1) 2025.01.08