Skip to content
Mitchell Davis edited this page Aug 23, 2022 · 3 revisions

Tools

OctaneGUI provides extra controls and windows when the library is compiled with 'Tools' enabled. These additional components are provided to aid in inspecting and debugging aspects of the library. A description of all available tools are provided below.

Command Palette

The command palette is the entry point for accessing the tools within the library. This control is a popup with a text input field for commands to be input. This can be opened using the Ctrl+P key combination. Once open and a command is given, pressing the enter/return key will send the command to the system and the associated tool will be invoked if one exists. The given key bindings are supported on all platforms.

Inspector

Command: 'inspector'

The Inspector tool is a window that will inspect elements of the window it was opened for. The tool is divided into two panels. The left panel is a tree of all of the controls in the window and the right panel displays detailed information about a selected control from the tree. While the window is open, controls can be selected either from the tree or by hovering the control in the inspected window. When a control is selected, both views are synced to show the selected control.

A 'Picker' checkbox is available to allow for interacting with the inspected window when it is turned off. This is useful in cases where the window is scrollable and there is a need to inspect elements out of view.

Profiler

Command: 'profile'

Arguments:

  • 'enable' or 'e': Starts a profiling session.
  • 'disable' or 'd': Ends a profiling session.

The profiler tool gathers stats during a profiling session that is displayed when the session ends. The tool is made up of two containers. The top container displays a bar graph showing either the total frame time of each update, or the total event count. The bottom container shows a tree of the currently selected frame. The tree is the list of events that can be expanded and each tree row displays its frame time and event count. This can be used to drill down and find problematic areas of a single frame.

Texture Viewer

Command: 'textureviewer' or 'tv'

The Texture Viewer tool will display window and show a list of all loaded textures. This helps with inspecting the loaded images and fonts if there happens to be an issue.

Dump Json

Command: 'dumpjson'

Arguments:

  • 'pretty': Splits objects and arrays into separate lines for readability.

This command will print out a json string representation of all of the controls for the window. The output is also copied into the system clipboard so it can be pasted into a separate file.

Clone this wiki locally