BioErrorLog Tech Blog

試行錯誤の記録

`user://`はどこを指しているのか | Godot Engine

Godot Engineにおいて、user://で指定されるディレクトリがどこなのかの備忘録です。

はじめに

ConfigFileを使ってデータをsaveする際、user://で指定するディレクトリにファイルを保存することがあります。

# 例

# Create new ConfigFile object.
var config = ConfigFile.new()

# Store some values.
config.set_value("Player1", "player_name", "Steve")
config.set_value("Player1", "best_score", 10)
config.set_value("Player2", "player_name", "V3geta")
config.set_value("Player2", "best_score", 9001)

# Save it to a file (overwrite if already exists).
config.save("user://scores.cfg")

このuser://が具体的にはどのパスなのかが分からなかったので、備忘録にまとめます。

user:// はどこを指しているのか

デフォルトでは各プラットフォームそれぞれ下記のディレクトリを指しています。

# Windows
%APPDATA%\Godot\app_userdata\[project_name]

# macOS
~/Library/Application Support/Godot/app_userdata/[project_name]

# Linux
~/.local/share/godot/app_userdata/[project_name]

参考:ドキュメントより


ちなみにこのディレクトリパスは、カスタムすることも可能です。

Godot Engineのエディターから、
Project Settings > Application > Config > Custom User Dir Name
を指定することで、下記のディレクトリ配下に自由にパスを指定することができます。

# Windows
%APPDATA%\[custom_user_dir_name]

# macOS
~/Library/Application Support/[custom_user_dir_name]

# Linux
~/.local/share/[custom_user_dir_name]

Godot Engineエディターから、Project Settings > Application > Config > Custom User Dir Name を指定する

おわりに

以上、Godot Engineで指定できるuser://の場所をメモしました。

どなたかの参考になれば幸いです。

[関連記事]

www.bioerrorlog.work

www.bioerrorlog.work

www.bioerrorlog.work

参考

ConfigFile — Godot Engine (stable) documentation in English

Where are "user://" locations on each platform? - Godot Engine - Q&A

File paths in Godot projects — Godot Engine (stable) documentation in English