ResourceFormatLoader
继承
简要描述
从文件加载特定的资源类型。
描述
IdeaXR使用ResourceFormatLoader在编辑器或导出的游戏中加载资源。通过ResourceLoader单例,或在加载具有内部依赖项的资源时自动查询它们。 每种文件类型都可以作为不同的资源类型加载,因此在引擎中注册了多个ResourceFormatLoader。
您定义自己的加载器来扩展该类。为了确保符合文档的返回类型及值。您应该给它一个全局类名,来注册该类。像内置的ResourceFormatLoaders一样,在加载其处理类型的资源时将自动调用它。您也可以实现ResourceFormatSaver。
注意:如果您需要的资源类型存在,但是IdeaXR无法加载其格式,您也可以扩展EditorImportPlugin。选择一种方式替代另一种方式取决于格式是否适合最终导出的游戏。 例如,最好先将.png纹理导入为.stex(StreamTexture),以便可以在图形卡上更好地加载它们。
方法
返回值类型 | 方法名称 |
---|---|
void | get_dependencies(path: String, add_types: String) virtual |
PoolStringArray | get_recognized_extensions() virtual |
String | get_resource_type(path: String) virtual |
bool | handles_type(typename: String) virtual |
Variant | load(path: String, original_path: String) virtual |
int | rename_dependencies(path: String, renames: String) virtual |
方法说明
- get_dependencies get_dependencies(path: String, add_types: String) virtual
获取给定资源的依赖关系。如果add_types为真,则路径应附加::TypeName,其中TypeName是依赖项的类名 。
注意:ClassDB不了解脚本定义的自定义资源类型,因此您只需为其返回“ Resource”
。
- get_recognized_extensions get_recognized_extensions() virtual
获取程序能够读取的文件的扩展名列表。
- get_resource_type get_resource_type(path: String) virtual
获取与给定路径关联的资源的类名。无法加载程序无法处理,则返回空。
注意:脚本不能通过ClassDB知道自定义资源类型,因此您只需为其返回“ Resource”
。
- handles_type handles_type(typename: String) virtual
告诉此加载程序可以加载哪个资源类型。
注意:脚本不能通过ClassDB知道自定义资源类型,因此您只需为其返回“ Resource”
。
- load load(path: String, original_path: String) virtual
当引擎兼容此资源时加载资源。如果加载的资源是导入的结果,则original_path将以源文件为目标。 成功返回一个Resource对象,失败则返回Error常量。
- rename_dependencies rename_dependencies(path: String, renames: String) virtual
重命名给定资源依赖项并保存。renames是字典{String => 字符串}将旧的依赖路径映射到新路径。