A Thousand Ships 0343cedd48 General proofreading (#1262) 2 months ago
..
examples c97a648356 Improve Run-time File Saving and Loading demo (#1196) 6 months ago
screenshots a2557fce51 Add a run-time saving/loading demo project 2 years ago
README.md 0343cedd48 General proofreading (#1262) 2 months ago
icon.svg a2557fce51 Add a run-time saving/loading demo project 2 years ago
icon.svg.import 14fcc0e133 Update all demo projects for Godot 4.5 and use path-deterministic UIDs (#1258) 2 months ago
project.godot 14fcc0e133 Update all demo projects for Godot 4.5 and use path-deterministic UIDs (#1258) 2 months ago
runtime_save_load.gd 0343cedd48 General proofreading (#1262) 2 months ago
runtime_save_load.gd.uid 14fcc0e133 Update all demo projects for Godot 4.5 and use path-deterministic UIDs (#1258) 2 months ago
runtime_save_load.tscn 14fcc0e133 Update all demo projects for Godot 4.5 and use path-deterministic UIDs (#1258) 2 months ago

README.md

Run-time File Saving and Loading

This project showcases how to load and save various file types without going through Godot's resource importing system.

This is useful to load/save images, sounds, 3D scenes, and ZIP archives at run-time such as user-generated content, without requiring users to generate a PCK file through Godot.

Can be loaded and saved at run-time:

  • Images (JPEG, PNG, WebP)
  • 3D scenes (glTF 2.0)
  • ZIP archives
  • Plain text files[^1]

Can be loaded at run-time:

  • Images (TGA, BMP, SVG[^2])
  • 3D scenes (FBX[^3])
  • Audio (Ogg Vorbis, MP3, WAV)
  • Fonts (TTF, OTF, WOFF, WOFF2, PFB, PFM, BMFont)

[^1]: Manipulating custom binary formats is possible using the FileAccess and PackedByteArray classes, but this is not shown in this demo.

[^2]: It is possible to procedurally generate SVG as text and save it to a file with .svg extension using the FileAccess class, but this is not shown in this demo.

[^3]: There are known issues with runtime FBX loading, as mentioned in issue #96043.

See the Saving and Loading (Serialization) demo for an example of saving/loading game progress.

Language: GDScript

Renderer: Compatibility

Check out this demo on the asset library: https://godotengine.org/asset-library/asset/2779

Screenshots

Screenshot

Licenses