🌡️

【UE5】EnhancedInputでAnyKeyを実装する

2024/12/08に公開

概要

この記事は一人アドベントカレンダー by ダリアの8日目の記事です。
今回はEnhancedInputでどのキーやどのボタンでも反応するAnyKeyをするやり方が分からなかったので、それを調べた記事になります。

想定してるイメージはこちらとなります。

やり方の参考の一つにでもなれば幸いです。

環境

UE5.4.4

やり方

まず、InputActionとInputMappingContextの2つのアセットを作ります。
自分はこのように作成しました。

作成したらInputMappingContextの方を編集します。
開いてキーボードからいずれかのキーを選択します
こう設定することで通常のAnyKeyと同じ様になります。
キーボードの括りになってますが、ゲームパッドのボタンも反応します。

設定は以上です。
後はCharacterのBlueprintなどでIA_AnyKeyのカスタムイベントを定義して呼ばれるか確認します。

場合によってはこのままだと既に用意してあるInputMappingContext(ThirdPersonTemplateだとIMC_Default)と競合すると思います。
AnyKeyだけ適応したい場合はRemoveMappingContextでIMC_DefaultをRemoveしてからAddMappingContextで入れ替えるようにします。

サンプル

元に戻す場合はAnyKeyRemoveMappingContextでIMC_AnyKeyをRemoveしてからAddMappingContextでIMC_Defaultを入れて元の設定に戻すようにします。

記事は以上になります。
ここまで読んでいただきありがとうございました。

参考

https://forums.unrealengine.com/t/inhanced-input-how-to-change-input-mapping-context-priority/786039/7

Discussion