Posted Articles

UE5.3's articles. (1)

わんころのUE5勉強会 Sep/07/2023 06:33

【UE5.3】Enhanced Input:IMC と Input Action の変更点

UE5.2 を全然触ってないまま UE5.3 がリリースされました。

そこで、Enhanced Input の Input Mapping Context と、入力アクション(Input Action)で UE5.1 から UE5.3 で変更された部分を自分で確認出来た範囲でまとめてみようと思います。

※ UE5.2 で既に変更された部分も含まれています
※ 未検証部分が含まれます
※ 気づいた点などあれば加筆・修正も予定しています



入力アクション

コンテンツブラウザで右クリック> 入力> 入力アクションで作成出来るアセットです。


変更された部分は画像で囲った部分です。

Accumulation Behavior

IMC に設定した IA_○○ に複数のキーが設定されていて、2つ以上の入力が同時に発生した場合の入力値をどうするか選択できます。

例えば IA_Move には WASD などキャラ移動に対して何個かキーが割り当たっています。

WとSキーを同時に押すと、入力値としては -1.0と1.0 が発生するので値が相殺(±0)されてその場から動かなくなりそうですが、W/S なら前方向、A/Dなら右方向へ移動します。


Unreal Engine Issues にも報告があり、仕様ではなく不具合だったようで修正されたみたいです。
Feature Request: Make WASD movement cancel out movement when you press keys in opposite directions


そして、以前の入力と今回修正されたオプションがこのプルダウンメニューから選択できるようになっています。

[Take Highest Absolute Value]
入力値の大きい値で処理されます。デフォルトではこちらが選択されており従来通りの挙動です。

[Comulative]
先程挙げた修正にて新しく追加された処理方式で、複数の入力値の合計値で処理されます。

例えば IA_Move をこのオプションに設定すると、-1.0 と 1.0 の合計値で 0.0 になり、キャラはその場から動きません。


Consume Lower Priority Enhanced Input Mappings

長い名前になりましたが、Consume Input の設定です。
以前の記事で記載しておりますのでこちらでは割愛します。

【UE5】Enhanced Input:Priority や Consume Input の検証


Consumes Action and Axis Mappings

Enhanced Input + 従来の入力イベントを併用する場合の処理方法を決定できます。

このオプションにチェックを入れるとすぐ下の "Trigger Events That Consume Legacy Keys" が設定できるようになります。


プルダウンメニューの中から、Enhanced Input のどのイベントと連動させるかを決められます。


各種入力イベントを置いて Enter キーでトリガーされるように実装して確認しました。

"Consumes Action and Axis Mappings" にチェックを入れると、Enhanced Input の入力イベントのみ実行されたことが確認できます。

従来の入力イベントと併用する場合で、Enhanced Input の処理を優先したい場合はこのオプションを利用すると良さそうです。


Legacy Input mappings and Gameplay Debug Mappings cannot "consume" Enhanced Input actions
余談ですが、Unreal Engine Issues に報告されているこちら内容は UE5.4 で修正予定のようです。
(Enhanced Input の IA_○○ の入力と、Debug Key○○ で同じキーを利用している場合両方トリガーされるという問題です)



現在 Enhanced Input の Debug版の入力イベントには Consume Input の設定がないため、画像のようなケースでも両方トリガーされます。

UE5.4 で Debug版の入力に対しても Consume Input の設定が出来ると嬉しいです。


Player Mappable Key Settings(未検証)

従来だと Input Mapping Context 内で設定していた "Player Mappable Options" が入力アクション内でも設定出来るようになりました。

IMC 側もそうですが、設定の仕方が以前と変わりました。

"Player Mappable Key Settings" を [None] から [Player Mappable Key Setteings(Experimental)] に変更すると、画像のような設定画面が展開されます。

キーコンフィグ等で利用するために設定する名前や、ゲーム内で表示する名前・カテゴリを設定できるのは以前と変わらずです。

"サポートキープロファイル" が新しく追加されていました。


[空のマップ]と書いた部分をクリックするとゲームプレイタグを設定できる画面が表示されます。

どういう使い方をするのか未検証のため分かり次第追記予定です。


Input Mapping Context

Setting Behavior

入力アクション内でも出てきた "Player Mappable Key Settings" の設定を IMC 内でどうするか選択することができます。

Inherit Settings from Action

入力アクションで設定した情報をそのまま利用します。
デフォルトでこの設定になっています。

Override Settings(未検証)


IMC 内で独自に設定できます。
同じくサポートキープロファイルについては未検証です。

Ignore Settings from Action

入力アクションで設定した情報を使用しません。


入力イベント系は頻繁に使うので Enhanced Input 系の機能は少しでも覚えていきたいです。

If you liked this article, support the creator with a tip!

Sending tips requires user registration.Find details about tips here.

Search by Article Tags

Monthly Archive

Search by Exclusive Perks

Search Articles