Unity&C#/Unity

[Unity] Input system - multitap value issue

리네엔 2024. 10. 15. 22:22

Multi tap을 사용하려고 하는데 키보드 입력에서 Interaction prorperties Action을 Value로 두면 한번만 눌러도 작동해버려요.

디버그를 찍어보니까 한번만 눌렀는데 로그가 두번찍혀요.

Value

  • 활성화 될때 (임계 값 이상으로 눌렸을 때) InputAction.Started InputAction.Performed
  • 값이 변경될 때마다 InputAction.Performed
  • 더 이상 활성화 되지 않을때 (임계값 이하로 눌렸을 때) InputAction.Performed

keyboard는 디지털 입력으로 0,1로 작동한다 즉 임계값이상으로 눌렸을 때와 값이 변경되었을때가 누르자마자 동시에 실행이된다

즉, 누르자마자 InputAction.Started InputAction.Performed로 활성화 될 때 행동을 수행하고, 값이 변경됨 행동인 InputAction.Performed만 호출되는 행동을 한번에 한다.
이로 인해서 누르자마자 performed가 두번 발생하기 때문에, 멀티탭이 2번인경우 작동을 해버리고, 로그가 두번씩 찍히는 문제가 발생했던 것 .

아래의 Button을 사용하면 문제를 해결 할 수 있다.

Button

  • 활성화 될때 InputAction.Started
  • 임계값 이상일 때 InputAction.Performed
  • 비활성화 될 때 InputAction.Canceled

(https://docs.unity3d.com/Packages/com.unity.inputsystem@1.11/manual/Interactions.html)

'Unity&C# > Unity' 카테고리의 다른 글

[Unity] Resources.UnloadAsset()  (1) 2024.10.16
[Unity 2D] Sprite Flip  (0) 2024.10.14
[Unity] Frame  (0) 2024.10.14
data path  (0) 2023.09.25
[input system] 작성중  (0) 2022.09.20