Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

ResourceSaver

Eredita: Object

Un singleton per salvare le Resource nel file system.

Descrizione

Un singleton per salvare i tipi risorsa nel file system.

Utilizza le numerose classi ResourceFormatSaver registrate nel motore (sia integrate sia da un'estensione) per salvare i dati delle risorse all'interno di file basati su testo (ad esempio .tres o .tscn) o binari (ad esempio .res o .scn).

Metodi

void

add_resource_format_saver(format_saver: ResourceFormatSaver, at_front: bool = false)

PackedStringArray

get_recognized_extensions(type: Resource)

int

get_resource_id_for_path(path: String, generate: bool = false)

void

remove_resource_format_saver(format_saver: ResourceFormatSaver)

Error

save(resource: Resource, path: String = "", flags: BitField[SaverFlags] = 0)

Error

set_uid(resource: String, uid: int)


Enumerazioni

flags SaverFlags: 🔗

SaverFlags FLAG_NONE = 0

Nessuna opzione di salvataggio di risorse.

SaverFlags FLAG_RELATIVE_PATHS = 1

Salva la risorsa con un percorso relativo alla scena che la utilizza.

SaverFlags FLAG_BUNDLE_RESOURCES = 2

Impacchetta le risorse esterne.

SaverFlags FLAG_CHANGE_PATH = 4

Modifica il Resource.resource_path della risorsa salvata per adattarlo alla sua nuova posizione.

SaverFlags FLAG_OMIT_EDITOR_PROPERTIES = 8

Non salvare i metadati specifici dell'editor (identificati dal prefisso __editor).

SaverFlags FLAG_SAVE_BIG_ENDIAN = 16

Salva come big endian (vedi FileAccess.big_endian).

SaverFlags FLAG_COMPRESS = 32

Comprime la risorsa al salvataggio utilizzando FileAccess.COMPRESSION_ZSTD. Disponibile solo per tipi di risorse binarie.

SaverFlags FLAG_REPLACE_SUBRESOURCE_PATHS = 64

Occupa i percorsi delle sotto-risorse salvate (vedi Resource.take_over_path()).


Descrizioni dei metodi

void add_resource_format_saver(format_saver: ResourceFormatSaver, at_front: bool = false) 🔗

Registra un nuovo ResourceFormatSaver. Il ResourceSaver utilizzerà il ResourceFormatSaver come descritto in save().

Questo metodo è eseguito implicitamente per i ResourceFormatSaver scritti in GDScript (vedi ResourceFormatSaver per maggiori informazioni).


PackedStringArray get_recognized_extensions(type: Resource) 🔗

Restituisce la lista delle estensioni disponibili per salvare una risorsa di un determinato tipo.


int get_resource_id_for_path(path: String, generate: bool = false) 🔗

Restituisce l'ID risorsa per il percorso specificato. Se generate è true, verrà generato un nuovo ID risorsa se non ne viene trovato uno per il percorso. Se generate è false e il percorso non viene trovato, viene restituito ResourceUID.INVALID_ID.


void remove_resource_format_saver(format_saver: ResourceFormatSaver) 🔗

Annulla la registrazione del ResourceFormatSaver specificato.


Error save(resource: Resource, path: String = "", flags: BitField[SaverFlags] = 0) 🔗

Salva una risorsa su disco nel percorso specificato, utilizzando un ResourceFormatSaver che riconosce l'oggetto risorsa. Se path è vuoto, ResourceSaver proverà a utilizzare Resource.resource_path.

È possibile specificare la maschera di bit flags per personalizzare il comportamento di salvataggio.

Restituisce @GlobalScope.OK in caso di successo.

Nota: Quando il progetto è in esecuzione, qualsiasi UID generato associato alla risorsa non sarà salvato poiché il codice necessario è eseguito solo in modalità editor.


Error set_uid(resource: String, uid: int) 🔗

Imposta l'UID del percorso resource di risorsa su uid. È possibile generare un nuovo UID tramite ResourceUID.create_id().

Poiché le risorse normalmente ottengono un UID automaticamente, questo metodo è utile solo in casi molto specifici.