Das Dateisystem speichert Ressourcen auf der Festplatte. Alles, von einem Skript, einer Szene oder einem PNG-Bild, ist eine Ressource für die Engine. Wenn eine Ressource Eigenschaften enthält, die auf andere Ressourcen auf der Festplatte verweisen, werden auch die Pfade zu diesen Ressourcen mit einbezogen. Wenn eine Ressource über Unterressourcen verfügt, die eingebaut sind, wird die Ressource in einer einzigen Datei zusammen mit allen gebündelten Unterressourcen gespeichert. Beispielsweise wird eine Fontressource oft zusammen mit den Schrifttexturen gebündelt.
Beispiel für den Inhalt eines Dateisystems:
/project.godot /feind/feind.tscn /script/feind/feind.gd /feind/find_sprite.png /script/spieler/player.gd project.godot
Die Datei project.godot ist die Projektbeschreibungsdatei und befindet sich immer im Stammverzeichnis des Projekts. Tatsächlich definiert seine Position, wo sich die Wurzel befindet. Dies ist die erste Datei, nach der Godot beim Öffnen eines Projekts sucht.
Diese Datei enthält die Projektkonfiguration im Klartext im Format „ini“. Auch ein leeres project.godot kann als Basisdefinition eines leeren Projekts dienen.
Pfad-Trennzeichen
Godot unterstützt nur / als Pfad-Trennzeichen. Dies geschieht aus Gründen der Portabilität. Alle Betriebssysteme unterstützen dies, so dass ein Pfad wie c:\meinprojekt\project.godot als c:/meinprojekt/project.godot eingegeben werden muss.
Ressourcen-Pfade
Beim Zugriff auf Ressourcen benötigst du den speziellen Pfad res:. Der Pfad res: zeigt immer auf die Projektwurzel (wo project.godot liegt, also ist res:project.godot immer gültig). Dieses Dateisystem wird nur dann lesend und schreibend verwendet, wenn das Projekt lokal aus dem Editor heraus ausgeführt wird. Beim Export oder bei der Ausführung auf verschiedenen Geräten (z.B. Smartphones, Konsolen oder von DVD) wird das Dateisystem schreibgeschützt und das Schreiben ist nicht mehr erlaubt. Benutzerpfad Das Schreiben auf die Festplatte ist oft noch für verschiedene Aufgaben wie das Speichern des Spielstatus oder das Herunterladen von Inhaltspaketen erforderlich. Zu diesem Zweck stellt die Engine sicher, dass es einen speziellen Pfad user: gibt, der immer beschreibbar ist.