Data paths¶
Path separators¶
For the sake of supporting as many platforms as possible, Godot only
accepts UNIX-style path separators (/
). These work on all
platforms, including Windows.
A path like C:\Projects
will become C:/Projects
.
Resource path¶
As mentioned in the Command line tutorial, Godot considers that
a project exists in any given folder that contains a project.godot
text file, even if such file is empty.
Accessing project files can be done by opening any path with res://
as a base. For example, a texture located in the root of the project
folder may be opened from the following path: res://some_texture.png
.
User path (persistent data)¶
While the project is running, it is a common scenario that the resource path will be read-only, due to it being inside a package, self-contained executable, or system-wide install location.
Storing persistent files in such scenarios should be done by using the
user://
prefix, for example: user://game_save.txt
.
On some devices (for example, mobile and consoles), this path is unique
to the project. On desktop operating systems, the engine uses the
typical ~/.local/share/godot/app_userdata/Name
on macOS and Linux,
and %APPDATA%/Name
on Windows. Name
is taken from the
application name defined in the Project Settings, but it can be
overridden on a per-platform basis using
feature tags.
Editor data paths¶
The editor uses different paths for user data, user settings and cache depending on the platform. By default, these paths are:
Type | Location |
---|---|
User data |
|
User settings |
|
Cache |
|
- User data contains export templates and project-specific data.
- User settings contains editor settings, text editor themes, script templates, etc.
- Cache contains temporary data. It can safely be removed when Godot is closed.
Godot complies with the XDG Base Directory Specification on all platforms. Environment variables can be overridden as per the specification to change the editor (and project) data paths.
Note
If you use
Godot packaged as a Flatpak,
the editor data paths will be located in subfolders in
~/.var/app/org.godotengine.Godot/
.
Self-contained mode¶
If you create a file called ._sc_
or _sc_
in the same directory as the
editor binary, Godot will enable self-contained mode. This will make Godot
write all user data to a directory named editor_data/
in the same directory
as the editor binary. This is useful to create a “portable” installation,
which can then be placed on an USB drive.
The Steam release of Godot uses self-contained mode by default.