マウスの入力をシミュレートする。
yield return とかでフレームが経過しないと呼ばれないと思います。
MouseState state = new MouseState();
state.WithButton(MouseButton.Left);
InputSystem.QueueStateEvent(device,state);
InputSystem.QueueDeltaStateEvent(device.delta,new Vector2(10,10));
inputsystemAsset-Binding-pathにあたる文字列を入れれば入力を直接セットできるようです。

var device = InputSystem.devices[1];
InputEventPtr eventPtr;
using (StateEvent.From(device, out eventPtr))
{
((ButtonControl) device["firstButton"]).WriteValueIntoEvent(1, eventPtr);
((ButtonControl) device["dpad/up"]).WriteValueIntoEvent(1, eventPtr);
InputSystem.QueueEvent(eventPtr);
}
Deviceに直接入力を送れます
InputActionAssetでいうところのActionMapに直接入力を送る方法は見つかりませんでした。
下の場合でいう、Player.LeftDragを直接シミュレートするような方法はわからずです。
というか無理なのかも。

上のようなModifierを使った条件付きの入力も最初のコードのようにマウスに入力を送れば反応しました。
コメント