ゲーム開発備忘録

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

【ゼロからアンリアルエンジン5】㉝ドラッグアンドドロップで動作するシンプルなインベントリを作成しよう=インベントリの表示非表示=

目次

 

はじめに

注意

UE5.0.0の現在の情報です。

今後のアップデートによりUIや機能が変更される可能性があることをあらかじめご理解ください。

 

これまでの記事の工程を行っていなくても実装できます。

 

この記事を作成するにあたり以下の内容を参考にさせていただきました。

[UE4] ドラッグドロップで操作できるアイコンの作り方|株式会社ヒストリア

 

Unreal Engine でドラッグ アンド ドロップの UI を作成する | Unreal Engine ドキュメント

 

解説

①インベントリ画面を作成しよう

ウィジェットブループリントUserWidgetからWBP_Inventoryを作ります。

f:id:namiton:20220415125559p:plain

 

CanvasPanelとBackground Blurを追加します。

f:id:namiton:20220415125725p:plain

 

Background Blurが全画面になるようにアンカーを調整し、

BlurStrengthを任意の数値にします。

f:id:namiton:20220415125906p:plain

 

②インベントリーの表示切替

 

BP_ThirdPersonCharacterを開きます。

 

インベントリが表示されたときの処理を関数でまとめておきます。ActiveInventoryControlを作成します。

 

インベントリ用のウィジェットが存在するかチェックしてなければ生成します。

f:id:namiton:20220415132951p:plain

 

Activeかどうかを変数にしておきます。

f:id:namiton:20220415133517p:plain

 

ウィジェットやカーソル、インプットモードの切り替えを行います。

f:id:namiton:20220415133716p:plain

 

全体像

f:id:namiton:20220415133826p:plain

 

イベントグラフにもどりBeginPlayに接続します。

f:id:namiton:20220415135707p:plain

またインベントリ表示キーを押したらイベントを呼びます。

f:id:namiton:20220415133950p:plain

死亡時にInventoryを無効化してUIの削除に追加します。

f:id:namiton:20220415135958p:plain



実行して切れ変えできるか確認しましょう。

f:id:namiton:20220415134225p:plain

 

③インベントリー中の操作禁止処理

インベントリー表示中のレバーを操作したり移動したりできてしまうのでこれらを無効化します。

 

DisibleMovementを使用すると落下中に停止してしまうので強引に入力箇所に判定を挟んで対応しました。うまいやり方があったらコメントで

f:id:namiton:20220415135230p:plain

 

最後に

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

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

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

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