ResourceLoader

Inherits: Object

Singleton used to load resource files.

Description

Singleton used to load resource files from the filesystem.

It uses the many ResourceFormatLoader classes registered in the engine (either built-in or from a plugin) to load files into memory and convert them to a format that can be used by the engine.

Tutorials

Methods

bool

exists ( String path, String type_hint="" )

PoolStringArray

get_dependencies ( String path )

PoolStringArray

get_recognized_extensions_for_type ( String type )

bool

has ( String path )

bool

has_cached ( String path )

Resource

load ( String path, String type_hint="", bool no_cache=false )

ResourceInteractiveLoader

load_interactive ( String path, String type_hint="", bool no_cache=false )

void

set_abort_on_missing_resources ( bool abort )


Method Descriptions

bool exists ( String path, String type_hint="" )

Returns whether a recognized resource exists for the given path.

An optional type_hint can be used to further specify the Resource type that should be handled by the ResourceFormatLoader.


PoolStringArray get_dependencies ( String path )

Returns the dependencies for the resource at the given path.


PoolStringArray get_recognized_extensions_for_type ( String type )

Returns the list of recognized extensions for a resource type.


bool has ( String path )

Deprecated method. Use has_cached or exists instead.


bool has_cached ( String path )

Returns whether a cached resource is available for the given path.

Once a resource has been loaded by the engine, it is cached in memory for faster access, and future calls to the load or load_interactive methods will use the cached version. The cached resource can be overridden by using Resource.take_over_path on a new resource for that same path.


Resource load ( String path, String type_hint="", bool no_cache=false )

Loads a resource at the given path, caching the result for further access.

The registered ResourceFormatLoaders are queried sequentially to find the first one which can handle the file's extension, and then attempt loading. If loading fails, the remaining ResourceFormatLoaders are also attempted.

An optional type_hint can be used to further specify the Resource type that should be handled by the ResourceFormatLoader. Anything that inherits from Resource can be used as a type hint, for example Image.

If no_cache is true, the resource cache will be bypassed, and the resource will be loaded anew. Otherwise, the cached resource will be returned if it exists.

Returns an empty resource if no ResourceFormatLoader could handle the file.

GDScript has a simplified @GDScript.load built-in method which can be used in most situations, leaving the use of ResourceLoader for more advanced scenarios.


ResourceInteractiveLoader load_interactive ( String path, String type_hint="", bool no_cache=false )

Starts loading a resource interactively. The returned ResourceInteractiveLoader object allows to load with high granularity, calling its ResourceInteractiveLoader.poll method successively to load chunks.

An optional type_hint can be used to further specify the Resource type that should be handled by the ResourceFormatLoader. Anything that inherits from Resource can be used as a type hint, for example Image.

If no_cache is true, the resource cache will be bypassed, and the resource will be loaded anew. Otherwise, the cached resource will be returned if it exists.


void set_abort_on_missing_resources ( bool abort )

Changes the behavior on missing sub-resources. The default behavior is to abort loading.