ResourceFormatLoader

Loads a specific resource type from a file.

Godot loads resources in the editor or in exported games using ResourceFormatLoaders. They are queried automatically via the ResourceLoader singleton, or when a resource with internal dependencies is loaded. Each file type may load as a different resource type, so multiple ResourceFormatLoaders are registered in the engine. Extending this class allows you to define your own loader. 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 ResourceFormatLoaders, it will be called automatically when loading resources of its handled type(s). You may also implement a ResourceFormatSaver. Note: You can also extend EditorImportPlugin if the resource type you need exists but Godot is unable to load its format. Choosing one way over another depends on if the format is suitable or not for the final exported game. For example, it's better to import .png textures as .stex (StreamTexture) first, so they can be loaded with better efficiency on the graphics card.

Members

Aliases

BaseClasses
alias BaseClasses = AliasSeq!(typeof(_GODOT_base), typeof(_GODOT_base).BaseClasses)
Undocumented in source.

Functions

getDependencies
void getDependencies(String path, String add_types)

If implemented, gets the dependencies of a given resource. If add_types is true, paths should be appended ::TypeName, where TypeName is the class name of the dependency. Note: Custom resource types defined by scripts aren't known by the ClassDB, so you might just return "Resource" for them.

getRecognizedExtensions
PoolStringArray getRecognizedExtensions()

Gets the list of extensions for files this loader is able to read.

getResourceType
String getResourceType(String path)

Gets the class name of the resource associated with the given path. If the loader cannot handle it, it should return "". Note: Custom resource types defined by scripts aren't known by the ClassDB, so you might just return "Resource" for them.

handlesType
bool handlesType(String typename)

Tells which resource class this loader can load. Note: Custom resource types defined by scripts aren't known by the ClassDB, so you might just handle "Resource" for them.

load
Variant load(String path, String original_path)

Loads a resource when the engine finds this loader to be compatible. If the loaded resource is the result of an import, original_path will target the source file. Returns a Resource object on success, or an error constant in case of failure.

opAssign
typeof(null) opAssign(typeof(null) n)
opEquals
bool opEquals(ResourceFormatLoader other)
opEquals
bool opEquals(typeof(null) n)
renameDependencies
long renameDependencies(String path, String renames)

If implemented, renames dependencies within the given resource and saves it. renames is a dictionary { String => String } mapping old dependency paths to new paths. Returns constant OK on success, or an error constant in case of failure.

toHash
size_t toHash()

Mixins

__anonymous
mixin baseCasts
Undocumented in source.

Static functions

_new
ResourceFormatLoader _new()

Construct a new instance of ResourceFormatLoader. Note: use memnew!ResourceFormatLoader instead.

Static variables

_classBindingInitialized
bool _classBindingInitialized;
Undocumented in source.

Structs

GDNativeClassBinding
struct GDNativeClassBinding
Undocumented in source.

Unions

__anonymous
union __anonymous
Undocumented in source.

Variables

_GODOT_internal_name
enum string _GODOT_internal_name;
Undocumented in source.

Mixed In Members

From mixin baseCasts

as
inout(To) as()
Undocumented in source. Be warned that the author may not have intended to support it.
as
inout(To) as()
Undocumented in source. Be warned that the author may not have intended to support it.
as
inout(ToRef) as()
Undocumented in source. Be warned that the author may not have intended to support it.
opCast
template opCast(To)
Undocumented in source.
opCast
template opCast(To)
Undocumented in source.
opCast
template opCast(ToRef)
Undocumented in source.
opCast
void* opCast()
Undocumented in source. Be warned that the author may not have intended to support it.
opCast
godot_object opCast()
Undocumented in source. Be warned that the author may not have intended to support it.
opCast
bool opCast()
Undocumented in source. Be warned that the author may not have intended to support it.

Meta