

メニュー選択などにおける上下左右キーのトリガー判定入力処理をInputSystemで実装しようとしたところ、  
右キーを押したまま上キー、下キーを押したまま右キーなどの、同時押しの対応の仕方がよく分かりませんでした。（ビルトインのInputSystemUIInputModuleの挙動も怪しい気がしています。）  
下記のようにすれば理想の挙動が得られたのですが、なんだかInputSystemの恩恵を得られていないように思えてきて、1つのアクションで下記のコードと同等の処理は実装可能なのでしょうか？  
下記のコードでは、左右と上下でアクションを分けています。

[code]

    if (NavigateX.WasPressedThisFrame() 
        || (Gamepad.current != null && (Gamepad.current.dpad.left.wasPressedThisFrame || Gamepad.current.dpad.right.wasPressedThisFrame)))
    {
        var m = NavigateX.ReadValue<Vector2>();
        if (Gamepad.current != null) 
            m.x += Gamepad.current.dpad.x.value;
        // ...
    }
    if (NavigateY.WasPressedThisFrame()
        || (Gamepad.current != null && (Gamepad.current.dpad.up.wasPressedThisFrame || Gamepad.current.dpad.down.wasPressedThisFrame)))
    {
        var m = NavigateY.ReadValue<Vector2>();
        if (Gamepad.current != null)
            m.y += Gamepad.current.dpad.y.value;
        // ...
    
[/code]

[![](https://i.stack.imgur.com/a9vzL.png)](https://i.stack.imgur.com/a9vzL.png)

バージョン：  
Unity: 2021.3.27  
InputSystem: 1.6.3


CC BY-SA 4.0
2023-08-01T07:08:42.153
95820
2023-08-02T13:21:57.620
2023-08-01T22:21:46.310
96
96
question
unity3d unity2d
UnityのInputSystemで1つのアクションで上下左右キーの同時押しに対応することは可能ですか？