Vs Chromium を使ったUnreal Engine ソースコードの高速な検索

1. Vs Chromium とは

Vs Chromium は Visual Studio の拡張で、高速なソースコードの検索を可能にします。Vs Chromium のプロダクトは無料でアクセスすることができ、Visual Studio を利用する環境において直ぐに利用することが出来ます。Unreal Engine のソースコードは膨大で、Visual Studio 標準のコード検索機能を利用すると長い時間を要します。有料のツール (Rider, Entrian Source Search) を既に利用されている場合はそちらで十分ですが、無料で高速な検索ができる点を加味すると、十分に利用する価値のあるツールです。

Vs Chromium は以下のサイトで詳細な説明がありダウンロードが可能です。
https://chromium.github.io/vs-chromium/

ダウンロードページからインストーラのページに飛ぶと特定のバージョンに紐づいたページにジャンプするため、VS2022の対応 (または最新のVisual Studioに対応した) インストーラを入手する場合は、リリースから最新のインストーラを入手してください。

2. 利用方法

入手したインストーラをインストールした後に、「vs-chromium-project.txt」というファイルを検索したいディレクトリのルートに配置します。例えばエンジンのコード全てを検索対象にしたい場合、以下のような「Engine」フォルダと同列にテキストファイルを配置します。

「vs-chromium-project.txt」ファイルには検索でフィルタする拡張子などを指定します。使い方のサイトは見ると以下のように全てのファイル拡張子を対象に検索することを記述されていますが、これでは全てのファイルが対象となってしまうため検索に時間がかかることがあります。

[SearchableFiles.include]
*

Unreal Engine のソースコードを対象とする場合、以下の内容でファイルに記述すると、より効率的です。このファイルは Github から取得したエンジンコードには含まれませんが、Perforceから取得したエンジンコードにはデフォルトで含まれています。

[SourceExplorer.ignore]
.cache/
.git/
.vs/
.vscode/
*.sdf
*.opensdf
*.suo
*.csproj
*.vcxproj
*.udd
*.uasset
**/Cooked/
**/DerivedDataCache/0
**/DerivedDataCache/1
**/DerivedDataCache/2
**/DerivedDataCache/3
**/DerivedDataCache/4
**/DerivedDataCache/5
**/DerivedDataCache/6
**/DerivedDataCache/7
**/DerivedDataCache/8
**/DerivedDataCache/9
**/Intermediate/
**/Saved/
**/Staged/
**/Content/
enc_temp_folder/
LocalBuilds/

[SearchableFiles.include]
*.bat
*.c
*.cc
*.cpp
*.cs
*.cxx
*.h
*.hh
*.hpp
*.ini
*.inl
*.ispc
*.isph
*.java
*.natvis
*.template
*.txt
*.uplugin
*.uproject
*.usf
*.ush
*.verse
*.versetest
*.json
*.xml

[SearchableFiles.ignore]
.cache/
.git/
.vs/
.vscode/
Engine/Programs/UnrealBuildTool/Log*
*.bak
*.cpp.txt
*.gen.cpp
*.gen.h
*.udd
*.uasset
**/Binaries/
**/Cooked/
**/obj/
**/bin/
**/DerivedDataCache/0
**/DerivedDataCache/1
**/DerivedDataCache/2
**/DerivedDataCache/3
**/DerivedDataCache/4
**/DerivedDataCache/5
**/DerivedDataCache/6
**/DerivedDataCache/7
**/DerivedDataCache/8
**/DerivedDataCache/9
**/Intermediate/
**/Logs/
**/Private_Projects/
**/Saved/
**/Staged/
**/ThirdParty/**/*.json
**/Content/
enc_temp_folder/
LocalBuilds/

3. コード検索方法

上記のセットアップが完了したら Visual Studio でコード検索が可能になります。コード検索用のウィンドウは、[View]->[Other Windows]->[Code Search] から開くことができます。

以下の内容は 「Command*“dump”」と入力した結果ですが、複数キーワード検索など、高度な検索も可能です。詳細な検索方法についてはドキュメントのページをご確認ください。1点だけ気を付ける点として、検索において Vs Chromium自体である程度メモリを消費するため、メモリに余裕がある状況でご利用ください(このエンジンコード検索においては1.69GBを使用)。

2 Likes