デバッグ ツールの概要

このガイドでは、エンジンで利用可能なデバッグツールの概要を説明します。

Godotには、バグの追跡、実行時のゲームの検査、重要なメトリックの監視、パフォーマンスの測定を行う強力なデバッガーとプロファイラーが付属しています。また、実行中のゲーム内のコリジョンボックスとナビゲーションポリゴンを視覚化するオプションも提供します。

最後に、リモートデバイスで実行されているゲームをデバッグし、ゲームの実行中にシーンまたはコードへの変更を再ロードするオプションがあります。

Output Panel

The output panel allows you to see text printed by the project, but also by the editor (e.g. from @tool scripts). You can find information about in Output panel.

デバッガーパネル

Godotのデバッグツールの多くはデバッガーパネルにあり、デバッグについての情報は デバッガーパネル で見つけることができます。

デバッグメニューオプション

エディタでゲームを実行するときにオンとオフを切り替えることができるいくつかの一般的なデバッグオプションがあり、ゲームのデバッグに役立ちます。

これらのオプションは、エディタの デバッグ メニューにあります。

../../../_images/overview_debug.webp

オプションの説明は次のとおりです:

リモートデバッグでデプロイ

このオプションを有効にしている状態で、ワンクリック・デプロイを行うと、実行可能ファイルがこのコンピュータのIPに接続しようとし、実行中のプロジェクトをデバッグできるようになります。このオプションはリモートデバッグ (主にモバイル デバイス) で使用することを目的としています。 通常はGDScriptデバッガーをローカルで使用するために有効にする必要はありません。

ネットワークファイルシステムでスモールデプロイ

このオプションは、リモートデバイス上で大きなフットプリントを持つゲームのテストを高速化します。

ネットワークファイルシステムでスモールデプロイ がオンのとき、ゲーム全体をエクスポートする代わりに、ゲームをデプロイすると最小限の実行可能ファイルがビルドされます。その後、エディタはプロジェクトからネットワーク経由でファイルを提供します。

また、Androidでは、デプロイを高速化するためにUSBケーブルを使用してゲームがデプロイされます。

コリジョン形状を表示

このオプションを有効にすると、実行中のプロジェクトでコリジョンシェイプとレイキャストノード (2Dと3D) が表示されます。

パスを可視

このオプションを有効にすると、パスノードで使用されるカーブリソースが、ゲーム実行中にも表示されるようになります。

ナビゲーションを表示

このオプションを有効にすると、ナビゲーションメッシュとポリゴンがゲーム実行中のプロジェクトにも表示されるようになります。

回避情報を表示

このオプションを有効にすると、回避オブジェクトの形状、半径、速度がゲーム実行中にも表示されるようになります。

CanvasItem の再描画をデバッグする

このオプションを有効にすると、2D オブジェクトの再描画リクエストが実行中のプロジェクトに (短いフラッシュとして) 表示されるようになります。これは、低プロセッサモードのトラブルシューティングに役立ちます。

シーン変更を同期

このオプションを有効にすると、エディターからシーンに加えられた変更が、実行中のプロジェクトに反映されるようになります。リモートのデバイス上で使用する場合、ネットワークファイルシステムのオプションも有効であればより効率的になります。

スクリプト変更を同期

このオプションを有効にすると、保存したスクリプトが、実行中のプロジェクトで再読み込みされます。リモートのデバイス上で使用する場合、ネットワークファイルシステムのオプションも有効であればより効率的になります。

デバッグサーバーを開いたままにする

このオプションを有効にすると、デバッガーは起動したままとなり、エディター以外で開始された新しい実行を監視するようになります。

実行インスタンスのカスタマイズ...

このメニューを選択するとダイアログが開き、ゲームの複数インスタンスを同時に実行し、各インスタンスのコマンドライン引数を指定するようGodotに指示できます。これはマルチプレイヤーゲームを構築およびデバッグする場合に特に便利です。

../../../_images/customize_run_instances.webp

複数のインスタンスを有効

このオプションを有効にすると、プロジェクトを実行するときにエディタは複数のインスタンスを一度に実行します。

このチェックボックスの下には、実行するインスタンスの数を選択するセレクターがあります。

"複数のインスタンスを有効"をオンにして、このセレクターを1のみに設定すると、"複数のインスタンスを有効"をオンにしないのと同じ挙動になります。

メイン実行の引数

これは特定のインスタンスの "メイン実行の引数を無視する" に "有効" をチェックしない限り、プロジェクトの実行時に すべて のインスタンスに渡される引数です。

引数が複数個ある場合はスペースで区切って指定します。

Tip

この引数はスクリプト内で get_cmdline_args を使用してアクセスできます。

警告

"複数インスタンスを有効" のチェックを外した場合でも、プロジェクト実行時にはこれらの引数が渡されます。

メイン機能のタグ

これは特定のインスタンスの "メイン機能のタグの無視する" に "有効" をチェックしない限り、プロジェクトの実行時に すべて のインスタンスに渡される機能タグです。

メイン実行の引数を無視する

これを有効にすると、プロジェクトの実行時に"メイン実行の引数" この特定のインスタンスに**渡されなくなります**。

起動時の引数

これはプロジェクトを実行するときにこの特定のインスタンスに渡される引数です。これは "メイン実行の引数を無視する" で "有効" をチェックしない限り、メイン実行の引数”と**結合されます

メイン機能のタグを無視する

これを有効にすると、プロジェクトの実行時に "メイン機能のタグ" がこの特定のインスタンスに**渡されなくなります**。

機能タグ

これはプロジェクトを実行するときにこの特定のインスタンスに渡される機能タグです。これらは "メイン機能のタグを無視する" で "有効" をチェックしない限り、"メイン機能のタグ" と 結合されます

警告

get_cmdline_user_args でアクセスできる "ユーザー" 引数を渡したい場合は、 -- one two three のように2つのダッシュ **とスペース ** を先頭に付ける必要があります。

この2つのダッシュは、インスタンスごとの "起動時の引数" に後で追加される引数に適用されるため、 メイン実行の引数起動時の引数 を組み合わせるときに混乱が生じる可能性があることに注意してください。

"メイン実行の引数"に -- one two three を、"起動時の引数" に -- four 5 six を配置すると、最終的なコマンド ライン引数は one two three -- four 5 six になります。これは "起動引数" で "--" が繰り返されているためです。

スクリプトエディタのデバッグツールとオプション

スクリプトエディタには、ブレークポイントと2つのオプションで使用するための独自のデバッグツールセットがあります。ブレークポイントツールは、デバッガーの[デバッグ]タブにもあります。

Tip

スクリプトエディタの左側 (行番号の左側) にあるガターをクリックすると、ブレークポイントを作成できます。このガターにマウスを移動すると、透明な赤い点が表示されます。クリックしてブレークポイントを配置すると、この点が不透明な赤い点に変わります。赤い点をもう一度クリックするとブレークポイントを削除できます。この方法で作成されたブレークポイントは、エディタの終了時にスクリプトが保存されなかった場合でも保持されます。

GDScriptで breakpoint キーワードを使用して、スクリプト自体に保存されるブレークポイントを作成することもできます。ガター内をクリックして作成されたブレークポイントとは異なり、このキーワードベースのブレークポイントは、バージョン管理を使用しているとき、異なるマシン間でも永続的に存在できます。

../../../_images/overview_script_editor.webp

ブレーク ボタンは、ブレークポイントのようにスクリプトを中断します。実行を継続 は、ブレークポイントで一時停止した後にゲームを続行します。ステップオーバー はコードの次の行に進み、ステップイン は可能であれば関数に入ります。それ以外の場合、ステップオーバー と同じことを行います。

The Debug with External Editor option lets you debug your game with an external editor. You can set a shortcut for it in Editor Settings > Shortcuts > Debugger.

デバッガーがブレークポイントで中断すると、スクリプトエディタのガターに緑色の三角形の矢印が表示されます。この矢印は、デバッガーが中断したコード行を示します。

デバッグプロジェクトの設定

In the project settings, there is a Debug category with subcategories which control different things. Enable Advanced Settings to change these settings.

設定

これらは、現在のFPSを Output パネルに出力するなどの一般的な設定、プロファイリング時の関数の最大量などです。

File Logging

These settings allow you to log console output and error messages to files.

GDScript

These settings allow you to toggle specific GDScript warnings, such as for unused variables. You can also turn off warnings completely. See GDScript警告システム for more information.

Shader Language

These settings allow you to toggle specific shader warnings, such as for unused variables. You can also turn off warnings completely.

Canvas Items

These settings are for canvas item redraw debugging.

Shapes

Shapesは、コリジョンシェイプやナビゲーションシェイプなど、デバッグ目的でのみ表示されるシェイプの色を調整できる場所です。

シーンドックのリモート

エディタでゲームを実行すると、シーン ドックの上部に リモートローカル の2つのオプションが表示されます。リモート を使用している間、実行中のプロジェクトのノードのパラメーターを検査または変更できます。

../../../_images/overview_remote.webp

注釈

デバッグに関連するエディタ設定の一部は、エディタ設定Network -> Debug および Debugger セクションにあります。