ゲーム開発備忘録

ゲームプログラマー UE4・5向けの記事を書いておりますので見ていただけるとありがたいです。

【UE4・UE5】プチ改造!PrintStringをショートカットを使ってスマートに出してみる

はじめに

UE4やUE5にはBPのイベントグラフ内において、
Bとクリックでブランチノード
SとクリックでSequenceノード
などといったショートカットが存在します。

詳しくはプロジェクトを開いた状態で、編集-エディタの環境設定-キーボードショートカットで変更できますが、
なんと鬼のようによく使うPrintStringノードをデフォルトでショートカットに登録することができません。

そこでエンジン側の設定ファイルからショートカットを登録する部分を編集し、
任意のノードを出せるようにしていきたいと思います。

やりかた

まず、インストールされているエンジンのコンフィグフォルダに飛びます。
デフォルト設定では以下のパスにあると思います(4.26の場合)

C:\Program Files\Epic Games\UE_4.26\Engine\Config

そこから以下のファイルをテキストなどで開きます。

BaseEditorPerProjectUserSettings.ini

上からスクロールして5/6くらいの場所に以下の記述があるとおもいます。       

BaseEditorPerProjectUserSettings.ini
[BlueprintSpawnNodes]
; Comment box is bound to C, but that is handled differently due to it needing to work without clicking
+Node=(Class=Actor:ReceiveBeginPlay Key=P Shift=false Ctrl=false Alt=false)
+Node=(Class="Do N" Key=N Shift=false Ctrl=false Alt=false)
+Node=(Class=KismetSystemLibrary:Delay Key=D Shift=false Ctrl=false Alt=false)
+Node=(Class=K2Node_IfThenElse Key=B Shift=false Ctrl=false Alt=false)
+Node=(Class=K2Node_ExecutionSequence Key=S Shift=false Ctrl=false Alt=false)
+Node=(Class=Gate Key=G Shift=false Ctrl=false Alt=false)
+Node=(Class=K2Node_MultiGate Key=M Shift=false Ctrl=false Alt=false)
+Node=(Class=ForEachLoop Key=F Shift=false Ctrl=false Alt=false)
+Node=(Class=DoOnce Key=O Shift=false Ctrl=false Alt=false)
+Node=(Class=KismetArrayLibrary:Array_Get Key=A Shift=false Ctrl=false Alt=false)

ここの最後の行に以下の一文を追加します。意味はFキーでPrintStringを出すということです。

+Node=(Class=PrintString Key=F Shift=false Ctrl=false Alt=false)


【メモ】
キーはカテゴリー内で設定されているキー以外なら別のものでも良いです。
個人的には一番上のBeginPlayをPで出すという設定をしている行
+Node=(Class=Actor:ReceiveBeginPlay Key=P Shift=false Ctrl=false Alt=false)
これを消して追加する行のKey=Pに変更することでPrintStringをPで出せるようにしています。


保存した後に任意のプロジェクトのイベントグラフを開き

Fとクリックをしてみましょう。
PrintStringノードが出ると成功です。

さいごに

今回紹介したもの以外でも、マテリアル用のスポーンショートカットを設定できる
[MaterialEditorSpawnNodes]などもあります。

また、基本的にはエンジン側に処理を書き加えているため、
同じバージョンのプロジェクトであればどのプロジェクトにも同様のショートカットが適応されます。

ぜひ自分好みのショートカットを入れて快適なUE生活を楽しみましょう!

 

UE4やUE5向けの記事を書いています。

皆様の応援が投稿のモチベーションになりますので

コメントやTwitterのフォローなどしていただけるとありがたいです。

それではよきゲーム開発を。