Action とは
Actionを作る流れ
Action → Composite
または
Action → Binding
の2パターンあります
どう使い分けするかですが、
前者は、Actionの最終目的アウトプットを得るために1個のBindだけで完結しない場合
例えば、4方向の付加情報(Vector2)を最終目的アウトプットとした場合、
ジョイスティックであれば1Bindで情報を取ることができるが、キーボードで取得使用した場合、
WASDなどの複数のBindが必要となる。こういた場合にCompositeを使うようだ。
なので付加情報が必要ない場合であれば後者でいいってことになります。
本当にInputSystemは複雑でややこしい、だめだこりゃ
ActionType
Actionは ActionType と ControlType を決める必要があります
下記表に従って決めましょう
ActionType | 条件 | ControlType |
---|---|---|
Button | 1回押したら反応するもの | 選択不可 |
Value | Button以外のもの全て | Vector2 |
アクションタイプを作るには下記図の+ボタンで作成可能です
Composite
作り方は Action の右側にある+ボタンを押下するとメニューが表示されるので、
その中にある 「Composite」という接尾語があるものを選べます。
設定値は Action に引っ張られる形になるので特に設定は必要ないです(2021/10/06時点の知識)
Comositeを作ると自動でBindingもセット作られるのであとはゲーム仕様に合わせて入力条件をセットしていくだけになります。
Bind
作り方は Action の右側にある+ボタンを押下するとメニューが表示されるので、
その中にある 「Add Binding」を選択します
パラメータの設定方法としては、
① 入力デバイスを選択
② ①の入力デバイスの「どこ」を押したときに発火させるのかを選びます
Processors とは
誤動作を閾値を設けて精度を上げようという機能と思っていますが。
Interaction とは
moveAction.started += MoveAction_started; moveAction.performed += MoveAction_performed; moveAction.canceled += MoveAction_canceled;
この3つのコールバックがInteractionの設定内容によって変化します。
performed だけ検知すれば目的の判定になると思います。
Press
押された瞬間を検知
パラメータ | 内容 |
---|---|
Press Point | 変更したらまともに動作しないから変更厳禁 |
Trigger/Callback | Started | Performed | Canceled |
---|---|---|---|
Press Only | ボタンが押された瞬間 | ボタンが押された瞬間 | ボタンが離れた瞬間 |
Release Only | ボタンが押された瞬間 | ボタンが離れた瞬間 | ボタンが離れた瞬間 |
Press and Release | ボタンが押された瞬間 | ボタンが押された瞬間 ボタンが離れた瞬間 |
ボタンが離れた瞬間 |
Hold
押し続けを検知する
パラメータ | 内容 |
---|---|
HoldTime | 押し続けたというしきい値(秒数) |
Callback | Started | Performed | Canceled |
---|---|---|---|
Started | ボタンが押された | ||
Performed | HoldTime秒押し続けた瞬間 1度検知されたら離さないと検知はされない |
||
Canceled | ボタンが押された瞬間 |
Tap
押して離すを検知
パラメータ | 内容 |
---|---|
Max Tap Duration | 押してから離すまでのしきい値(秒数) |
Callback | Started | Performed | Canceled |
---|---|---|---|
Started | ボタンが押された | ||
Performed | ボタンが押されてからMax Tap Duration以内にボタンが離れた瞬間 | ||
Canceled | ボタンを押してからMax Tap Duration後も押し続けられた瞬間 |
SlowTap
長押して離すを検知
パラメータ | 内容 |
---|---|
Min Tap Duration | 押してから離すまでのしきい値(秒数) |
Callback | Started | Performed | Canceled |
---|---|---|---|
Started | ボタンが押された | ||
Performed | ボタンを押されてからMin Tap Duration 秒以後にボタンが離れた瞬間 | ||
Canceled | ボタンを押されてからMin Tap Duration秒以前にボタンが離された瞬間 |
Multi Tap
ダブルクリック・連打を検知
| --- | --- |
| Tap Count | この回数クリックしたら |
| Max Tap Spacing | 押離しから再度押すまでの猶予時間
この時間を超えるとキャンセルとなる |
| Max Tap Duration | 単押しとする押した〜離すまでの時間
この時間を超えるとキャンセルとなる |
Callback | Started | Performed | Canceled |
---|---|---|---|
Started | ボタンが押された | ||
Performed | Tap Count をクリックした場合 条件達成後も同じ条件で再度イベントが発生 |
||
Canceled | キャンセル条件に該当した場合 |