Class ResourceFormatSaver
Saves a specific resource type to a file.
- Inheritance
-
ResourceFormatSaver
Remarks
The engine can save resources when you do it from the editor, or when you use the ResourceSaver singleton. This is accomplished thanks to multiple ResourceFormatSavers, each handling its own format and called automatically by the engine.
By default, Godot saves resources as .tres
(text-based), .res
(binary) or another built-in format, but you can choose to create your own format by extending this class. Be sure to respect the documented return types and values. You should give it a global class name with class_name
for it to be registered. Like built-in ResourceFormatSavers, it will be called automatically when saving resources of its recognized type(s). You may also implement a ResourceFormatLoader.
Methods
_get_recognized_extensions(Resource)
Qualifiers: virtualconst
Returns the list of extensions available for saving the resource object, provided it is recognized (see ResourceFormatSaver._recognize).
PackedStringArray _get_recognized_extensions(Resource resource)
Parameters
resource
Resource
_recognize(Resource)
Qualifiers: virtualconst
Returns whether the given resource object can be saved by this saver.
bool _recognize(Resource resource)
Parameters
resource
Resource
_recognize_path(Resource, String)
Qualifiers: virtualconst
Returns true
if this saver handles a given save path and false
otherwise.
If this method is not implemented, the default behavior returns whether the path's extension is within the ones provided by ResourceFormatSaver._get_recognized_extensions.
bool _recognize_path(Resource resource, String path)
Parameters
_save(Resource, String, int)
Qualifiers: virtual
Saves the given resource object to a file at the target path
. flags
is a bitmask composed with SaverFlags constants.
Returns @GlobalScope.OK on success, or an Error constant in case of failure.
int _save(Resource resource, String path, int flags)
Parameters
_set_uid(String, int)
Qualifiers: virtual
Sets a new UID for the resource at the given path
. Returns @GlobalScope.OK on success, or an Error constant in case of failure.
int _set_uid(String path, int uid)