Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
gdevelop5:interface:debugger [2018/04/25 16:37]
4ian [Inspect and edit the instances]
gdevelop5:interface:debugger [2019/05/29 11:13] (current)
akbarhabeebb [Profile the performance of your game.] Typo
Line 1: Line 1:
-# Game Debugger+# Game Debugger ​and Profiler
  
-The debugger ​is a tool that let you inspect the content of your game, in particular the variables (global variables, scene variables and variables of instances ​of objects) and the instances living in the scenes ​of your game+A *Debugger* ​is a tool that lets you inspect the content of your game. In particular, you can inspect ​the global variables, scene variables and variables of instances of your objectsIt is a powerful tool. 
-You can pause the game at any momentIt'​s ​a great way to understand why something is not working as intended or to do quick tests in the game.+ 
 +You can pause the game at any timeUsing the Debugger is a great way to understand why something is not working as intended or to do quick tests in the game. 
 + 
 +The *profiler* is a tool that measures the time spent in different parts of the engine while your game is running. It helps to find bottlenecks or events that could take a lot of resources in your game. [[gdevelop5:​interface:​debugger:​profile-your-game|Read more about using the profiler here!]] ​
  
 <​note>​ <​note>​
Line 16: Line 19:
 {{ :​gdevelop5:​interface:​debug-icon_2x.png?​nolink |}} {{ :​gdevelop5:​interface:​debug-icon_2x.png?​nolink |}}
  
-In the menu, choose "​Preview with debugger"​.+In the menu, choose "​Preview with debugger ​and performance profiler".
 This will open a new tab called "​Debugger"​ and will also launch a preview of your game as usual. This will open a new tab called "​Debugger"​ and will also launch a preview of your game as usual.
  
-Note that even if you close the preview, you can let the debugger tab opened. This way, any preview that you launch (with the usual Preview button) will be connected to the debugger.+Note that even if you close the preview, you can let the debugger tab stay unclosed. This way, any preview that you launch (with the usual Preview button) will be connected to the debugger.
  
 When the game is just launched, the debugger is empty: When the game is just launched, the debugger is empty:
Line 25: Line 28:
 {{ :​gdevelop5:​interface:​empty-debugger_2x.png?​nolink |}} {{ :​gdevelop5:​interface:​empty-debugger_2x.png?​nolink |}}
  
-Click on **"​Refresh"​** at anytime ​to fetch the data of the game.+Click on **"​Refresh"​** at any time to fetch the data of the game.
  
 {{ :​gdevelop5:​interface:​debugger-refresh-button_2x.png?​nolink |}} {{ :​gdevelop5:​interface:​debugger-refresh-button_2x.png?​nolink |}}
Line 33: Line 36:
 ## Inspect the scenes of the game ## Inspect the scenes of the game
  
-The currently running scenes are list below Scenes item in the list:+The currently running scenes are listed ​below Scenes item in the list:
  
 {{ :​gdevelop5:​interface:​inspector-list.png?​nolink |}} {{ :​gdevelop5:​interface:​inspector-list.png?​nolink |}}
Line 48: Line 51:
 {{ :​gdevelop5:​interface:​create-instance.png| }} {{ :​gdevelop5:​interface:​create-instance.png| }}
  
-The instance will be created at position 0;0, on base layer with Z order 0.+The instance will be created at position 0;0, on base layer with Z-order 0.
 You can then find it in the list of instances and change its position, angle, layer... You can then find it in the list of instances and change its position, angle, layer...
  
Line 58: Line 61:
 {{ :​gdevelop5:​interface:​instance-inspector.png |}} {{ :​gdevelop5:​interface:​instance-inspector.png |}}
  
-The inspector shows general properties of the instance, for example position, rotation, layer... For each of these properties, you can **edit them by clicking on the value**:+The inspector shows general properties of the instance, for exampleposition, rotation, layer... For each of these properties, you can **edit them by clicking on the value**:
  
 {{ :​gdevelop5:​interface:​debugger-inspector-edit-value.png?​nolink |}} {{ :​gdevelop5:​interface:​debugger-inspector-edit-value.png?​nolink |}}
Line 75: Line 78:
 {{ :​gdevelop5:​interface:​instance-variables.png?​nolink |}} {{ :​gdevelop5:​interface:​instance-variables.png?​nolink |}}
  
-As other fields, you can **click on the value of the variable** to change it. It's a good way to see how you game is behaving according to the value of variables and test that your events are working properly.+Like other fields, you can **click on the value of the variable** to change it. It's a good way to see how your game is behaving according to the value of variables and test that your events are working properly.
  
 Variables can also be **structures**,​ meaning that they hold other variables. In this case, instead of seeing the value (number or text) of the variable, you will see a sub-list containing the children variables: Variables can also be **structures**,​ meaning that they hold other variables. In this case, instead of seeing the value (number or text) of the variable, you will see a sub-list containing the children variables:
  
  
-Here is an example of a variable "​Options", ​containg ​children variables to store the options of a game:+Here is an example of a variable "​Options", ​containing ​children variables to store the options of a game:
 {{ :​gdevelop5:​interface:​structure-variable-inspector.png?​nolink |}} {{ :​gdevelop5:​interface:​structure-variable-inspector.png?​nolink |}}
  
 You can also change the value of the children variables like any other. You can also change the value of the children variables like any other.
 +
 +## Profile the performance of your game.
 +
 +A profiler is a tool included in the Debugger that measures the time spent in various part of the engine while your game is running. It then shows a breakdown of each section, including events. [[gdevelop5:​interface:​debugger:​profile-your-game|Read more about using the profiler here!]] ​