From b75fd032ef91059a584152f3f8be03b70c22e05a Mon Sep 17 00:00:00 2001 From: Matthew Date: Sat, 13 Jun 2020 18:13:51 -0400 Subject: [PATCH] Put Debugger panel info on a new page and add info (#3673) Co-authored-by: Hugo Locurcio --- tutorials/debug/debugger_panel.rst | 105 ++++++++++++++++++ tutorials/debug/img/video_ram.png | Bin 0 -> 23661 bytes tutorials/debug/index.rst | 1 + .../debug/overview_of_debugging_tools.rst | 103 +---------------- 4 files changed, 112 insertions(+), 97 deletions(-) create mode 100644 tutorials/debug/debugger_panel.rst create mode 100644 tutorials/debug/img/video_ram.png diff --git a/tutorials/debug/debugger_panel.rst b/tutorials/debug/debugger_panel.rst new file mode 100644 index 000000000..8d9774f53 --- /dev/null +++ b/tutorials/debug/debugger_panel.rst @@ -0,0 +1,105 @@ +.. _doc_debugger_panel: + +Debugger panel +============== + +Many of Godot's debugging tools, including the debugger, can be found in the +debugger panel at the bottom of the screen. Click on **Debugger** to open it. + +.. image:: img/overview_debugger.png + +The debugger panel is split into several tabs, each focusing on a specific task. + +Debugger +++++++++ + +The Debugger tab opens automatically when the GDScript compiler reaches +a breakpoint in your code. + +It gives you a `stack trace `__, +information about the state of the object, and buttons to control +the program's execution. + +You can use the buttons in the top-right corner to: + +- Skip all breakpoints. That way, you can save breakpoints for future + debugging sessions. +- Copy the current error message. +- **Step Into** the code. This button takes you to the next line of code, + and if it's a function, it steps line-by-line through the function. +- **Step Over** the code. This button goes to the next line of code, + but it doesn't step line-by-line through functions. +- **Break**. This button pauses the game's execution. +- **Continue**. This button resumes the game after a breakpoint or pause. + +Errors +++++++ + +This is where error and warning messages are printed while running the game. + +You can disable specific warnings in **Project Settings > Debug > GDScript**. + +Profiler +++++++++ + +The debugger comes with three profilers for your processor, network operations, +and video memory. + +The profiler is used to show why individual frames take as long as they do +to process and render. + +Unlike other debugging tools, the profiler does not start automatically. It can +be started at any time during gameplay by pressing the start button. You can +even start the profiler before opening the game to profile startup performance. +It can also be started and stopped while the game is running without losing +information from when it was last running. The information it records won't +go away unless you click clear, or close the game, reopen it and start +the profiler again. + +After starting and stopping the profiler, you should see things being kept track +of on the left and a graph on the right. The items listed on the left are +everything that contributes to frame time, and they should each have a value +for time and calls for the current frame you are looking at. + +The frame number in the top right tells you which frame you are currently +looking at. You can change this by using the up or down arrows, typing in the +frame number, or clicking on the graph. + +If you want to add something to your graph or think it looks too cluttered, +you can check and uncheck the box next to an item to add or remove it +from the graph. + +Network Profiler +++++++++++++++++ + +The Network Profiler contains a list of all the nodes that communicate over the +multiplayer API and, for each one, some counters on the amount of incoming and +outgoing network interactions. It also features a bandwidth meter that displays +the total bandwidth usage at any given moment. + +Monitors +++++++++ + +The monitors are graphs of several aspects of the game while its running such as +FPS, memory usage, how many nodes are in a scene and more. All monitors keep +track of stats automatically, so even if one monitor isn't open while the game +is running, you can open it later and see how the values changed. + +Video RAM ++++++++++ + +The **Video RAM** tab shows the video RAM usage of the game while it is running. +It provides a list of every resource using video RAM by resource path, the type +of resource it is, what format it is in, and how much Video RAM that resource is +using. There is also a total video RAM usage number at the top right of the panel. + +.. image:: img/video_ram.png + +Misc +++++ + +The **Misc** tab contains tools to identify the control nodes you are clicking +at runtime: + +- **Clicked Control** tells you where the clicked node is in the scene tree. +- **Clicked Control Type** tells you the type of the node you clicked is. diff --git a/tutorials/debug/img/video_ram.png b/tutorials/debug/img/video_ram.png new file mode 100644 index 0000000000000000000000000000000000000000..c2929f7ca0f921c1523c1654fd374d483973d4a6 GIT binary patch literal 23661 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 literal 0 HcmV?d00001 diff --git a/tutorials/debug/index.rst b/tutorials/debug/index.rst index 3ba7f9896..fd09c5e4e 100644 --- a/tutorials/debug/index.rst +++ b/tutorials/debug/index.rst @@ -6,3 +6,4 @@ Debug :name: toc-learn-features-debug overview_of_debugging_tools + debugger_panel diff --git a/tutorials/debug/overview_of_debugging_tools.rst b/tutorials/debug/overview_of_debugging_tools.rst index 1dd46e488..bc1ed0b11 100644 --- a/tutorials/debug/overview_of_debugging_tools.rst +++ b/tutorials/debug/overview_of_debugging_tools.rst @@ -14,6 +14,12 @@ in the running game. Finally, you have options to debug the game running on a remote device and to reload changes to your scenes or your code while the game is running. +Debugger Panel +-------------- + +Many of Godot's debugging tools are part of the Debugger panel, which you can +find information about in :ref:`doc_debugger_panel`. + Debug menu options ------------------ @@ -109,103 +115,6 @@ Shapes Shapes are where you can adjust the color of shapes that only appear for debugging purposes, such as collision and navigation shapes. -Debugging tools ---------------- - -You can find the debugger in the bottom panel. Click on **Debugger** to open it. - -.. image:: img/overview_debugger.png - -The debugger is split into several tabs, each focusing on a specific task. - -Debugger -++++++++ - -The debugger tab opens automatically when the GDScript compiler reaches -a breakpoint in your code. - -It gives you a `stack trace `__, -information about the state of the object, and buttons to control -the program's execution. - -You can use the buttons in the top-right to: - -- Skip all breakpoints. That way, you can save breakpoints for future - debugging sessions. -- Copy the current error message. -- **Step Into** the code. This button takes you to the next line of code, - and if it's a function, it steps line-by-line through the function. -- **Step Over** the code. This button goes to the next line of code, - but it doesn't step line-by-line through functions. -- **Break**. This button pauses the game's execution. -- **Continue**. This button resumes the game after a breakpoint or pause. - -Errors -++++++ - -This is where errors and warning messages are printed while running the game. - -Profiler -++++++++ - -The debugger comes with three profilers for your processor, network operations, -and video memory. - -The profiler is used to show why individual frames take as long as they do -to process and render. - -Unlike other debugging tools, the profiler does not start automatically. It can -be started at any time during gameplay by pressing the start button. You can -even start the profiler before opening the game to profile startup performance. -It can also be started and stopped while the game is running without losing -information from when it was last running. The information it records won't -go away unless you click clear, or close the game, reopen it and start -the profiler again. - -After starting and stopping the profiler you should see things being kept track -of on the left and a graph on the right. The items listed on the left are -everything that contributes to frame time, and they should each have a value -for time and calls for the current frame you are looking at. - -The frame number in the top right tells you which frame you are currently -looking at. You can change this by using the up or down arrows, typing in the -frame number, or clicking on the graph. - -If you want to add something to your graph, or think it looks too cluttered, -you can check and uncheck the box next to an item to add or remove it -from the graph. - -Network Profiler -++++++++++++++++ - -The Network Profiler contains a list of all the nodes that communicate over the -multiplayer API and, for each one, some counters on the amount of incoming and -outgoing network interactions. It also features a bandwidth meter that displays -the total bandwidth usage at any given moment. - -Monitors -++++++++ - -The monitors are graphs of several aspects of the game while its running such as -FPS, memory usage, how many nodes are in a scene and more. All monitors keep -track of stats automatically, so even if one monitor isn't open while the game -is running, you can open it later and see how the values changed. - -Video Memory -++++++++++++ - -The **Video Mem** tab lists the video memory usage of the running game -and the resources using it. - -Misc -++++ - -The **Misc** tab contains tools to identify the control nodes you are clicking -at runtime: - -- **Clicked Control** tells you where the clicked node is in the scene tree. -- **Clicked Control Type** tells you the type of the node you clicked is. - Remote in scene dock --------------------