Chapter 18

1.2.7 【UE】操作入力の設定をする(Enhanced Input)

ひえひえ
ひえひえ
2023.01.16に更新

概要

Unreal Engine 5.1から追加?されたEnhanced Inputについて確認する。

公式

https://docs.unrealengine.com/5.1/ja/enhanced-input-in-unreal-engine/

プラグイン


こういったものが追加されており、これが有効だと使用できる状態となる。

使用するために必要なもの

  • Input Mapping Context
    • Input Actionを用いてボタン設定を行う
  • Input Action
    • 入力に値を決定する

Input Action


中身は基本的にこうなっており、設定する部分も「Value Type」となる。

ON/OFFのみとなるジャンプや決定ボタンは「Digital(bool)」
スティックによる二値化は「Axis2D(Vector2D)」

Input Mapping Context


先ほどのInput Actionを用いて、設定を行うようになる。

MappingsからInput Actionを紐づけ、どういったボタンを受け付けるか設定する。
boolのほうがボタンだけだが、Axis2Dのほうは、どちらがプラスなのかなどを設定する必要がある。

呼び出し


ブループリントにて、ボタンによる動作を決定づける方法として、Input Actionを呼び出して行うようになる。

Triggerdが入力されたタイミングなどで呼ばれ、値はAction Valueから受け取れる。
画像だとboolだが、Axis2Dならfloatが受け取れる。

  • 「Started」
    • 押された瞬間を受け取れる
  • 「Completed」
    • 離れた瞬間を受け取れる
  • 「Triggerd」
    • 押している間を受け取れる

同時押し


Wボタンを押す条件として、IA_Jumpが推されていないとできないというような形にしている。
これにより、同時推し状態でないとWが効かない。
つまり、Wが押されたらIA_Jumpも押されている。ということが分かる。

「W」の「Triggers」に「Chorded Action」を適応し、Chord ActionにIA_Jumpを入れる。
そうすることで、IA_Jumpが有効になったらWが推せるようになる。

デバッグコマンド


@キーを押し、「showdebug enhancedinput」で入力状態などがとれる。
入力中に候補として出ないので、恐れずに…。