runtimefee.lol

Recommended Godot Editor Settings

9. Oktober 2024

The default Godot Editor has sensible defaults, but it isn't quite optimized for me. Over the years working with the engine, I found various editor tweaks that make using the engine a little bit easier. I will go through most of the editor settings and explain which settings I changed, what they are doing and how it makes working with Godot a bit easier.

Accessing the Editor Settings

Let's start by changing the editor settings for the Engine. This will affect all projects opened with the Engine, which can or can not be what you want. So keep that in mind when changing a settings here.

To open the settings, open an empty or current project of yours and click on Editor and then Editor Settings. This will open a window containing all the settings you can change. Based on the scrollable list on the left side, the following sections of this article will represent the groups and specific values to change.

interface/editor/import_resources_when_unfocused

This setting affects when the Godot Engine Editor will try to import new resources you dragged and dropped into the project folder. The default behaviour will only import resources when the editor window is focused. Turning this setting on can help when importing multiple large folders.

interface/inspector/default_color_picker_mode

If you are used to a different color model than RGB, e.g. HSL/V which is probably easier to visualize you can change the default color picker mode here and also in which shape it will be, either squared or a circular shape.

interface/scene_tabs/display_close_button

If you have multiple scene open it can be annoying wanting to close a specific one, as by default only the active scene has a "x" button next to the scene name.

interface/scene_tabs/show_script_button

Similar as above, a scene can have a button to quickly open the script attached to the topmost node.

interface/scene_tabs/restore_scenes_on_load

If you have many scenes open most of the time, saving this state on exit will make the project load slower on the next startup. You can disable that behaviour with this setting.

filesystem/external_programs/raster_image_editor

You can change which program shall open when using the "Open in External Editor" context menu entry. This is very useful to quickly open a 3D model with F3D for example.

filesystem/directories/autoscan_project_path

If you have a folder that contains all your Godot Projects, you can set the project managers main directory to that folder, allowing you to auto-scan all projects, e.g. if you downloaded a project from the internet. You can also set filesystem/directories/default_project_path so it uses the same path for convenience.

filesystem/file_dialog/show_hidden_files

Simple setting: you can show hidden files like a .gitignore file or something else.

docks/scene_tree/start_create_dialog_fully_expanded

This is a useful setting, expanding the Create New Node dialog fully, so no arrows need to be clicked. This is also useful if you are rather scrolling through the list to find your node you want to add.

text_editor/appearance/caret/caret_blink

This setting stops the cursor from blinking. It can also save energy as the editor does not have to redraw the cursor blinking. The line you are in is already highlighted anyway so that's a good setting for a few minutes of extra battery life (hopefully).

text_editor/appearance/gutters/line_numbers_zero_padded

Pads numbers with zeroes to keep them more consistent. If you have more than 100 lines of code, the very first line will have '001' as the line number instead of '1' e.g.

text_editor/appearance/gutters/show_info_gutter

Displays small helper icons for overriden methods or signals.

text_editor/appearance/minimap/show_minimap

The minimap is a feature in code editors that is useful for a nice visualization but I'm just not using it often enough to really be valulable. I rather use bookmarks to jump to specific code.

text_editor/appearance/whitespace/draw_tabs

If you don't like the chevron symbols for tabs, you can disable them.

text_editor/appearance/whitespace/line_spacing

The default line spacing is a bit too much for me. Changing this parameter can fit more code on the screen.

text_editor/behavior/navigation/scroll_past_end_of_file

I don't like looking at the end of my display when I code. Being able to move the last lines to the center of the screen is much angenehmer and this setting enables this.

text_editor/behavior/indent/size

The default tab size of 4 feels a bit too much for me, I set this to 2.

text_editor/behavior/files/trim_trailing_whitespace_on_save

This setting removes unnecessary whitespace at the end of lines and makes version control less noisy.

text_editor/behavior/files/autosave_interval_secs

You can specify an auto-save every x seconds if you want to. Pretty good when the editor or your PC crashes frequently to avoid data loss.

text_editor/completion/idle_parse_delay

A very important setting I always change. When you stop typing, the editor waits 1.5 seconds to check the script for errors, which is too long for my liking.

text_editor/completion/code_complete_delay

This setting is related to the previous setting and can show suggestions either quicker or slower.

run/output/always_clear_output_on_play

This is good to know: You can stop the output window (e.g. your debug logs) from clearing when starting and stopping the project.

debugger/auto_switch_to_remote_scene_tree

This is a very helpful setting and prevents an unnecessary click when debugging projects. It will open your remote scene tree automatically e.g. with all your autoload nodes or attached levels under your level manager that would not be visible otherwise.

Recommended Godot Project Settings

The settings require the "Advanced Settings" toggle to be active. Keep in mind that the following settings will only apply for your currently opened project unlike the previous Editor settings.

debug/settings/stdout/print_fps

You can print the FPS and GPU information into your terminal (via stdout), e.g. how long a frame took to render.

debug/file_logging/enable_file_logging

You can enable logging into a file for easier access and without the need to copy it from the output panel.

debug/gdscript/warnings/untyped_declaration

You can achieve type safety by setting this to either warn or, if you're really brave, to error. Fixing the "errors" is very rewarding though, as it will lead to perfomance increases.