GDExtensionManager
继承: Object
提供对 GDExtension 功能的访问。
描述
GDExtensionManager 能够加载、初始化、跟踪项目中所有可用的 GDExtension 库。
注意:不清楚有什么用就不必担心 GDExtension。
教程
方法
get_extension(path: String) |
|
get_loaded_extensions() const |
|
is_extension_loaded(path: String) const |
|
load_extension(path: String) |
|
load_extension_from_function(path: String, init_func: |
|
reload_extension(path: String) |
|
unload_extension(path: String) |
信号
extension_loaded(extension: GDExtension) 🔗
编辑器完成加载新扩展时发出。
注意:该信号仅会在编辑器构建中发出。
extension_unloading(extension: GDExtension) 🔗
编辑器完成卸载某个扩展时发出。
注意:该信号仅会在编辑器构建中发出。
extensions_reloaded() 🔗
在编辑器已完成重新加载一个或多个扩展后发出。
枚举
enum LoadStatus: 🔗
LoadStatus LOAD_STATUS_OK = 0
扩展已被成功加载。
LoadStatus LOAD_STATUS_FAILED = 1
扩展加载失败,可能是因为它不存在或缺少依赖项。
LoadStatus LOAD_STATUS_ALREADY_LOADED = 2
扩展已被加载。
LoadStatus LOAD_STATUS_NOT_LOADED = 3
扩展尚未被加载。
LoadStatus LOAD_STATUS_NEEDS_RESTART = 4
该扩展需要应用程序重新启动才能完全加载。
方法说明
GDExtension get_extension(path: String) 🔗
返回给定文件 path 处的 GDExtension,如果尚未加载或不存在,则返回 null。
PackedStringArray get_loaded_extensions() const 🔗
返回所有当前加载的扩展的文件路径。
bool is_extension_loaded(path: String) const 🔗
如果给定文件 path 处的扩展已成功加载,则返回 true。另见 get_loaded_extensions()。
LoadStatus load_extension(path: String) 🔗
使用绝对文件路径加载扩展。path 需要指向有效的 GDExtension。成功时返回 LOAD_STATUS_OK。
LoadStatus load_extension_from_function(path: String, init_func: const GDExtensionInitializationFunction*) 🔗
Loads the extension already in address space via the given path and initialization function. The path needs to be unique and start with "libgodot://". Returns LOAD_STATUS_OK if successful.
LoadStatus reload_extension(path: String) 🔗
重新加载给定文件路径处的扩展。path 需要指向有效的 GDExtension,否则该方法可能返回 LOAD_STATUS_NOT_LOADED 或 LOAD_STATUS_FAILED。
注意:你只能在编辑器中重新加载扩展。在发布构建中,该方法总是失败并返回 LOAD_STATUS_FAILED。
LoadStatus unload_extension(path: String) 🔗
按文件路径卸载扩展。path 需要指向已经加载的 GDExtension,否则该方法返回 LOAD_STATUS_NOT_LOADED。