UnrealEngine プロジェクトのデバッグ
JetBrains Rider を使用すると、行ブレークポイント、ウォッチポイント、条件付きブレークポイントなどを設定できます。デバッグセッション中に、評価式を使用したり、値を設定したりすることもできます。
Natvis のサポート
LLDB ベースのデバッガーは Natvis ファイルをサポートしており、UE4.natvis を自動的に検出してロードし、UnrealEngine データ型のユーザーフレンドリーなビューを提供します。
次の Visual Studio Natvis カスタマイズ機能がサポートされています。
継承可能な属性。視覚化を基本型のみに適用するか、基本型とすべての派生型に適用するかを指定します。
値の表示形式を制御するフォーマット指定子。
CustomListItems。データ構造をトラバースするためのカスタムロジックを記述できます。これは、
TMap
やTSet
のような Unreal 4.26 のコンテナーに特に役立ちます。
組み込みのレンダラー:
JetBrains Rider は、Natvis でカバーされていないすべての構造について 1 行の要約を自動的に生成し、要約は読みやすくするために色付けされます。
JetBrains Rider は、Natvis で生成された値の【ロービュー】を示します。
組み込みのフォーマッタは、ワイド /Unicode 文字列 (
wchar_t
、char16_t
、char32_t
) に対して有効になっています。
ライブコーディングとホット再ロード
ライブコーディングは、エンジンの実行中にアプリケーションの C++ コードを再構築し、そのバイナリにパッチを適用できるシステムです。JetBrains Rider は、IDE から直接ライブコーディング (およびホット再ロード) を呼び出すことをサポートしています。つまり、C++ クラスに変更を加えてコンパイルし、それらの変更が有効になることをすぐに確認できます。
ホット再ロードは、エディターを開いている間に新しい DLL ファイルをコンパイルしてロードする同様のシステムです。これはレガシー機能とみなされ、ライブコーディングがより高速で柔軟なオプションとして推奨されることに注意してください。
Windows では、バージョン 5.0 以降のすべての新しい Unreal Engine インストールでライブコーディングがデフォルトで有効になっています。これが無効になっている場合、Unreal Editor はホット再ロードを使用するようにフォールバックします。
macOS および Linux では、ライブコーディングは現在利用できず、代わりにホット再ロードが使用されます。
Unreal Editor でライブコーディングまたはホット再ロードが有効になっている場合、JetBrains Rider はデバッグプロセス中にビルドと再ロードツールバーボタンを表示します。このボタンをクリックして変更をコンパイルし、Unreal Editor に更新をロードさせます。
監視ポイント
ウォッチポイント ( データブレークポイントとも呼ばれます) は、プログラム実行全体を通じて特定の変数とその動作に注目する必要がある場合に役立ちます。プログラムが監視対象のブレークポイントにアクセスするたびに、JetBrains Rider は実行を一時停止するか、コンソールにログを記録します。
ウォッチポイントを設定する
変数または式を選択し、右クリックして監視ポイントの追加を選択します。
ポップアップでウォッチポイントを構成します。
追加のプロパティにアクセスするには、さらに Ctrl+Shift+F8 をクリックするか、メインメニューから を選択します。
オプション
説明
有効
ウォッチポイントを有効または無効にするには、このチェックボックスをオンまたはオフにします。
実行の中断
このオプションを選択すると、プログラムの実行はアクセスタイプフィールドで指定されたイベントで停止します。このチェックボックスをオフにすると、プログラムはウォッチポイントヒット時に停止することはありませんが、関連付けられたアクション(例: ロギング)は引き続き実行されます。
ログ
これらのチェックボックスを選択すると、ブレークポイントのヒットメッセージまたはウォッチポイントのスタックトレースがコンソールに記録されます。これは、プログラムの実行を停止せずに変数の変更を分析する場合に便利です。
次のブレークポイントに到達するまで無効にする
このオプションは、他のブレークポイントが発生するまで現在のウォッチポイントを無効にします。
アクセスタイプ
ウォッチポイントをトリガーするアクセスのタイプを Read、Write、Any から選択します。
Windows 上のシンボルサーバー
デバッグ時に、ローカルマシンでライブラリシンボルを使用できないことがあります。この場合、シンボルサーバーを使用できます。
シンボルサーバーは、デバッグシンボルを各開発者のコンピューターではなくサーバー上に一元的に格納するファイルサーバーです。次に、デバッガーをシンボルサーバーにポイントして、シンボル名を解決できます。全員が同じサーバーを共有できます。
Windows の JetBrains Rider では、デバッガーを
で選択したシンボルサーバーに向けることができます。JetBrains Rider を使用すると、シンボルサーバー (またはインデックス付きストレージ) とインデックスなしの共有フォルダーを個別に構成できます。パブリック Microsoft シンボルサーバーを追加する必要がある場合は、対応するリンクをクリックします。
初めて構成する場合、デバッガーセッションの開始時にダウンロードがトリガーされます。シンボルがダウンロードされると、ライブラリシンボルが正しく解決されます。例: Windows システムライブラリのフレームが表示されます。
シンボルサーバー: OFF | シンボルサーバー: ON |
---|---|
シンボルサーバーのサポートを有効にする設定により、JetBrains Rider のデバッガーは、ダウンロードされたシンボルキャッシュをローカルで使用できます。このキャッシュのディレクトリは、設定で構成可能です。
関連ページ:
Unreal Engine プログラムの引数と環境変数
プログラム引数と環境変数を実行 / デバッグ構成に追加することで、ゲームの実行時の動作に影響を与えることができます。に進みます。または、を押してからを押します。開いた実行 / デバッグ構成ダイアログで、引数を渡す構成を選択し、環境変数を追加します。オプションの引数フィールドに引数を入力します。引数はスペースまたは改行で区切る必要があります。「」をクリックしてテキストフィールドを展開すると、引数をリストとして表示および編集できます。「環境変数」フィールドに、変数名と値「」を入力します。複数の変...
パフォーマンスのヒント
Unreal Engine コードのインデックス作成:Unreal Engine プロジェクトを開いてから数秒後に、入力または移動を開始できます。デフォルトでは、エンジンコード(プロジェクトの主要部分を構成する)のインデックス作成は、非エンジンコードが解析された後にバックグラウンドで実行されるためです。JetBrains Rider 設定の ページでエンジンコードのインデックスを作成する方法を構成できます。開始前にすべてのエンジンコードにインデックスを付けたい場合や、パフォーマンスの低下に気...