Unreal Engine v5.4.1
はじめに
UE5 でジャンプなどのキー割り当てをする際、最初に調べた方法が古く、非推奨となっていたため最新の方法である「Enhanced Input」についてまとめました。
以前の方法
- レベルエディタで「編集」 > 「プロジェクト設定」の順に選択する
- プロジェクト設定ウィンドウで「エンジン」-「インプット」を選択
- アクションマッピングで各アクションのキー割り当てをする
以前は上記設定で行っていたようですが現在は非推奨となり、Enhanced Inputを代わりに使用するよう注意文が表示されています。
Enhanced Input
従来の方法より複雑で高度な入力制御が可能になっているようです。
基本的にはアクションごとに「入力アクション」ファイルを作成し「入力マッピングコンテキスト」ファイルでキー割り当てをします。
入力アクション
プレイヤーが実行できるアクションを表します。
ジャンプ、移動、弾の発射など各アクションごとに作成します。
入力マッピングコンテキスト
入力アクションにどのキーを割り当てるか指定するマッピングファイルです。
基本とは別に「ダッシュ中」「しゃがみ」など作成しておくことで状態に応じで変化させることができます。
例:
例として、スペースキーを押すとキャラクターがジャンプするようにキー割り当てをする設定を紹介します。
作りたてのFirstPersonプロジェクトで作業している前提で記載しています。今プロジェクトにはすでに基本的な入力アクションや入力マッピングコンテキストの切り替えなどが実装済みなので構成を確認するだけでも大まかな使用方法はわかるかと思います。
- 入力アクションを作成する
- コンテンツブラウザで右クリック、入力 > 入力アクション を選択
- IA_Jump2 と名前を付ける
- Triggers に「押される」「リリース済み」を追加します
- 入力マッピングコンテキストを作成する
- コンテンツブラウザで右クリック、入力 > 入力マッピングコンテキスト を選択
- IMC_Jump と名前を付ける
- Mappings に IA_Jump2 を追加しスペースバーを割り当てる
- キャラクターブループリントにIA_Jump追加する
- BP_FirstPersonCharacter を開く
- 右クリックでIA_Jump2 を追加する
- 右クリックでキャラクターの Jump を追加する
- IA_Jump2 の Started を Jump にリンクさせる
- プレイヤーコントローラーブループリントにIMC_Jumpを設定する
- BP_FirstPersonPlayerController を開く
- Mapping Context の割り当てを IMC_Jump に変更する
- レベルエディタを実行しスペースキーでジャンプできることを確認する
詳細
詳しくは以下の公式サイトを確認してください