ResourceSaver

Inherits: Object

Singleton for saving Godot-specific resource types.

Description

Singleton for saving Godot-specific resource types to the filesystem.

It uses the many ResourceFormatSaver classes registered in the engine (either built-in or from a plugin) to save engine-specific resource data to text-based (e.g. .tres or .tscn) or binary files (e.g. .res or .scn).

Enumerations

enum SaverFlags:

  • FLAG_RELATIVE_PATHS = 1 — Save the resource with a path relative to the scene which uses it.
  • FLAG_BUNDLE_RESOURCES = 2 — Bundles external resources.
  • FLAG_CHANGE_PATH = 4 — Changes the Resource.resource_path of the saved resource to match its new location.
  • FLAG_OMIT_EDITOR_PROPERTIES = 8 — Do not save editor-specific metadata (identified by their __editor prefix).
  • FLAG_SAVE_BIG_ENDIAN = 16 — Save as big endian (see File.endian_swap).
  • FLAG_COMPRESS = 32 — Compress the resource on save using File.COMPRESSION_ZSTD. Only available for binary resource types.
  • FLAG_REPLACE_SUBRESOURCE_PATHS = 64 — Take over the paths of the saved subresources (see Resource.take_over_path).

Method Descriptions

Returns the list of extensions available for saving a resource of a given type.


Saves a resource to disk to the given path, using a ResourceFormatSaver that recognizes the resource object.

The flags bitmask can be specified to customize the save behavior.

Returns @GlobalScope.OK on success.