4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

BPのみで変数をドロップダウンメニューにしてデバッグを便利にする

Last updated at Posted at 2025-12-09

本記事について

難易度★☆☆☆☆(1)BPのみ、ある程度ノードが組める人/初心者でも可
職種ターゲット:誰でも
所要時間:5~10分程度
検証エンジンVer:5.6~

概要

FName変数をドロップダウンメニューにします。基本的にデバッグ用途になります。

ドロップダウンメニューにすると何が良い?

データテーブルなどではID管理が多いと思います。
上手くやれば例えばIDではなく敵やアイテムの名前で表示することも可能です。
ドロップダウンメニューにすることでID入力の面倒やこのIDなんだっけ...?ということがなくなります。

最終的なゴールは以下の様なものになります。凄く箸休め記事となります。
image.png

方法

①ドロップダウンメニューにしたいBPアクターを用意する。

今回はAActorを継承したBP_DebugActorを作成しました。
image.png

②Name変数を作成する。

今回は変数名をSpawnActorとしています。
用途によってはFString型でも可能です。他の型は(FText含む)不可でした。
image.png

③InstanceEditableを有効にする。

作成した変数のDetailsを開き、設定する。
または①の添付画像にある目のマークをクリックしても変更できます。
image.png

④NameArray変数を作成する。

NameListとしました。
試しに要素を追加して適当な文字列を入力します。「テスト」
image.png
image.png

⑤SpawnActor変数のDetailsを設定する

Advancedという項目があるので展開してDrop-down Optionsというパラメータに表示したいNameArray変数名を入力する。
image.png

⑥用意したBPアクターをレベルに配置して確認する。

完成!
image.png

注意点:リスト化するArrayはFName型でないと出来ないようです。

応用編

ID管理のデータテーブルから自動でリスト化する。ついでに選択したクラスをスポーンさせる。

サンプルとして以下のような適当なデータテーブルを用意しました。
image.png

ConstructionScriptに以下の処理を用意しました。
image.png

処理を分解すると
AddUniqueまでがNameListにDT_EnemyStatusにあるName(化け猫、河童、天狗)要素を追加しています。
その後のBranchで選択中のSpawnActor変数と一致する場合のIDをStatusID変数に格納しています。

スポーン処理はよしなにしてます。
image.png

河童を選択した状態でPIEすると河童アクターが生成されました。
image.png

改善のススメ

今回SpawnActorはSingle変数でしたがArrayにすることで複数にすることも可能です。
image.png

ゲーム内容によっては、
装備のプリセットをDataAssetで用意してるのであればそれをドロップダウンメニューにして用意してあげたり、
関係ないですがプレイヤーのステータスの上書きなどを設定できるようになればデバッグしやすくなるのかなと思います。

まとめ

やることはドロップダウンメニューにしたい変数をNameArray設定するだけ!
BPで完結しているのでC++でUPROPETYを設定する必要がありません。
個人的にデバッグ用のアクターにソースコード書くの面倒くさい!のが解消されました。

開発環境によるかもしれませんが、PRGじゃなくても作成できる難易度だと思っています。
良きデバッグライフを!

C++を活用した方法はこちらを参考に
https://qiita.com/_whoisefe/items/1930525c15f881ac56db

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?