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.

GDExtensionManager

继承: Object

提供对 GDExtension 功能的访问。

描述

GDExtensionManager 加载、初始化、并跟踪项目中所有可用的 GDExtension 库。

注意:除非你知道自己在做什么,否则无需担心 GDExtension。

教程

方法

GDExtension

get_extension(path: String)

PackedStringArray

get_loaded_extensions() const

bool

is_extension_loaded(path: String) const

LoadStatus

load_extension(path: String)

LoadStatus

reload_extension(path: String)

LoadStatus

unload_extension(path: String)


信号

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 reload_extension(path: String) 🔗

重新加载给定文件路径处的扩展。path 需要指向有效的 GDExtension,否则该方法可能返回 LOAD_STATUS_NOT_LOADEDLOAD_STATUS_FAILED

注意:你只能在编辑器中重新加载扩展。在发布构建中,该方法总是失败并返回 LOAD_STATUS_FAILED


LoadStatus unload_extension(path: String) 🔗

按文件路径卸载扩展。path 需要指向已经加载的 GDExtension,否则该方法返回 LOAD_STATUS_NOT_LOADED