BLOGブログ

2021.01.27UE4/ Blueprint

[UE4]ブループリント内の検索について

執筆バージョン: Unreal Engine 4.26.0

こんにちは、エンジニアの山中です。
皆さんがエディタを使用していく中で
エディタ内の検索機能を利用することが多々あるかと思います。
今回はその中のブル―プリント(以下「BP」と呼ぶ)内での検索に関する一部機能を紹介します。
※サンプルプロジェクト「Third Person」を使用させていただきました


↑こんなの

■BP内検索ウィンドウの出しかた

BP内にて以下のいずれかの操作を行います

①「Window」→「FindResults」を押下

②「Ctrl+F」

上記操作により表示される検索ウィンドウは
検索範囲がそのBP内のみとなりますが、
検索入力欄右側のアイコンを押下することで
プロジェクト内の全てのBPを対象に検索を行うことができます。


↑BP全体の検索ウィンドウ

■使いかた

①検索したいキーワードを入力

「update」という文字列を含んだ検索を行いたい場合、
入力欄にそのまま検索したいキーワードを入れます。
一般的に検索と言うとこの方法がポピュラーかと思います。

※大文字、小文字は区別しません


↑キーワードと一致する要素が検索結果として一覧化

また、「&&」や「||」を使用することで複合的な検索も可能です。


↑「update」「overlap」両方の文字列を含んだ要素が検索結果として一覧化


↑「update」「overlap」いずれかの文字列を含んだ要素が検索結果として一覧化

②サブフィルタ情報を利用した検索

①で紹介した検索結果を見ると、関数、引数、コメント等
様々な要素を対象に検索を行っていることが分かります。
特定の要素(例えば関数)のみを対象に検索を行いたい時には
サブフィルタと呼ばれる情報を使用します。

※「Name=」は省略可


↑キーワードと一致する「関数」のみが検索結果として一覧化

関数(Functions)の他に、
ノード(Nodes)、
ピン(Pins)、
変数(Variables)、等
様々なサブフィルタが使用可能です。

③ネスティング(入れ子構造)を利用した検索

②で紹介した機能に加え、ネスティングを利用することで
より詳細な検索を行うことができます。


↑ピン「Print to Screen」の値が「true」のノード「PrintString」が検索結果として一覧化

少しややこしいですが、検索入力と検索結果の対応は以下の通りです。

要するに「ノード」と「そのノード内のピン」に対して
条件を追加することで、より細かな条件で検索を行う方法、ということになります。

いかがでしたか?
BP内の検索機能に関しては、
今回紹介していない内容もまだまだあります。
気になる方は以下の公式ドキュメントをご参照ください。
公式ドキュメントのURL → 「https://docs.unrealengine.com/ja/ProgrammingAndScripting/Blueprints/Search/index.html」

これらの情報を活用して、更なる開発効率UPを目指してみてください!