前提・実現したいこと
こちらを参考に、MouseとTouchにおいて、
「コールバックを登録する」の方法は実装ができ、Mouseの左ボタンでも、タッチでもFireが動くことは確認できたのですが、
「より手軽に入力を受け取れるPlayerInput」の方法を試したところ、Android実機のタッチにおいて、意図せぬ挙動となったため、
ご教示お願い致します。
試したこと
C#
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4using UnityEngine.InputSystem; 5 6[RequireComponent(typeof(PlayerInput))] 7public class MyInput : MonoBehaviour 8{ 9 10 [SerializeField] 11 GameObject cube; 12 13 void OnFire() { 14 cube.transform.localScale *= 2.2f; 15 } 16}
Default Shemeには、Any,Mouse,Touchsreenの3種類が用意されていますが、
Anyはおそらく、「どれでも」、つまり、MouseにもTouchsreenにも対応していると考えているのですが、
下記のようにAnyに設定してテストすると、Android実機上でのタッチに反応しなかったのです。
この挙動に疑問があるのですが、いかがでしょうか?
ちなみに、Default SchemeをTouchsreenに設定した場合は、Android実機上でタッチが反応しました。
Android実機上での結果は下記です。MapはPlayerしか作成していません。
他の設定は画像の通りで変えていません。
Default Scheme:Any, Auto-Switch:オンの結果:×Android実機上でタッチに反応せず。 Default Scheme:Any, Auto-Switch:オフの結果:×Android実機上でタッチに反応せず。 Default Scheme:Mouse, Auto-Switch:オンの結果:×Android実機上でタッチに反応せず。 Default Scheme:Mouse, Auto-Switch:オフの結果:×Android実機上でタッチに反応せず。 Default Scheme:Touchscreen, Auto-Switch:オンの結果:〇Android実機上でタッチに反応。 Default Scheme:Touchscreen, Auto-Switch:オフの結果:〇Android実機上でタッチに反応。
Touchscreenに反応するならば、Anyで反応してもいいような気がするのですが、何故なのでしょうか。
Auto-Switchの設定もよくわからないのですが、この設定は何なのでしょうか?
また、Unityエディタのマウスの左クリックは全てに反応しました。
Default Scheme:Any, Auto-Switch:オンの結果:〇Unityエディタのマウスの左クリックに反応。 Default Scheme:Any, Auto-Switch:オフの結果:〇Unityエディタのマウスの左クリックに反応。 Default Scheme:Mouse, Auto-Switch:オンの結果:〇Unityエディタのマウスの左クリックに反応。 Default Scheme:Mouse, Auto-Switch:オフの結果:〇Unityエディタのマウスの左クリックに反応。 Default Scheme:TouchScreen, Auto-Switch:オンの結果:〇Unityエディタのマウスの左クリックに反応。 Default Scheme:TouchScreen, Auto-Switch:オフの結果:〇Unityエディタのマウスの左クリックに反応。
補足情報(FW/ツールのバージョンなど)
Unity 2020.1.2f1 (64-bit)
追記
・Anyのログ。
Info Unity Default scheme for MyInput: Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Current scheme for MyInput: Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 0: Keyboard:/Keyboard Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 1: Keyboard:/Keyboard1 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 2: Keyboard:/Keyboard2 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 3: Mouse:/Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 4: Keyboard:/Keyboard3 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 5: Touchscreen:/Touchscreen Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 6: Keyboard:/Keyboard4 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35)
・Mouseのログ。
Info Unity Default scheme for MyInput: Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Current scheme for MyInput: Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 0: Keyboard:/Keyboard Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 1: Keyboard:/Keyboard1 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 2: Keyboard:/Keyboard2 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 3: Mouse:/Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 4: Keyboard:/Keyboard3 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 5: Touchscreen:/Touchscreen Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 6: Keyboard:/Keyboard4 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35)
・Touchscreenのログ。
Info Unity Default scheme for MyInput: Touchscreen Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Current scheme for MyInput: Touchscreen Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 0: Keyboard:/Keyboard Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 1: Keyboard:/Keyboard1 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 2: Keyboard:/Keyboard2 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 3: Mouse:/Mouse Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 4: Keyboard:/Keyboard3 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 5: Touchscreen:/Touchscreen Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35) Info Unity Info Unity Connected device 6: Keyboard:/Keyboard4 Info Unity (Filename: ./Runtime/Export/Debug/Debug.bindings.h Line: 35)
回答1件
あなたの回答
tips
プレビュー