EditorExportPlatformExtension¶
继承: EditorExportPlatform < RefCounted < Object
自定义EditorExportPlatform实现(插件)的基类。
描述¶
外部EditorExportPlatform实现应继承自此类。
要使用EditorExportPlatform,首先使用EditorPlugin.add_export_platform()方法注册它。
方法¶
方法说明¶
bool _can_export(preset: EditorExportPreset, debug: bool) virtual const 🔗
可选。
如果指定的preset有效并且可以导出,则返回true。使用set_config_error()和set_config_missing_templates()设置错误详细信息。
通常的实现可以调用_has_valid_export_configuration()和_has_valid_project_configuration()来确定是否可以导出。
void _cleanup() virtual 🔗
可选。
在平台未注册之前由编辑器调用。
Error _export_pack(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual 🔗
可选。
在path处为指定的preset创建PCK存档。
在导出对话框中按下“导出PCK/ZIP”按钮时调用此方法,禁用“导出为补丁”,并选择PCK作为文件类型。
Error _export_pack_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual 🔗
可选。
为指定的preset在path处创建补丁PCK存档,仅包含自上次补丁以来已更改的文件。
在导出对话框中按下“导出PCK/ZIP”按钮时调用此方法,启用“导出为补丁”,并选择PCK作为文件类型。
注意:patches中提供的补丁在调用此方法时已经加载,并且仅作为上下文提供。当清空时,导出预设中定义的补丁已被加载。
Error _export_project(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual 🔗
必填。
在path为指定的preset创建一个完整的项目。
在导出对话框中按下“导出”按钮时调用此方法。
这个方法实现可以调用EditorExportPlatform.save_pack()或EditorExportPlatform.save_zip()来使用默认的PCK/ZIP导出过程,或者调用EditorExportPlatform.export_project_files()并实现自定义回调来处理每个导出的文件。
Error _export_zip(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual 🔗
可选。
在path为指定的preset创建ZIP存档。
在导出对话框中按下“导出PCK/ZIP”按钮时调用此方法,禁用“导出为补丁”,并选择ZIP作为文件类型。
Error _export_zip_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual 🔗
可选。
为指定的preset在path处创建一个ZIP存档,仅包含自上次补丁以来更改的文件。
在导出对话框中按下“导出PCK/ZIP”按钮时调用此方法,启用“导出为补丁”,并选择ZIP作为文件类型。
注意:patches中提供的补丁在调用此方法时已经加载,并且仅作为上下文提供。当清空时,导出预设中定义的补丁已被加载。
PackedStringArray _get_binary_extensions(preset: EditorExportPreset) virtual const 🔗
必填。
返回完整项目导出的受支持二进制扩展数组。
String _get_debug_protocol() virtual const 🔗
可选。
返回用于远程调试的协议。默认实现返回tcp://。
String _get_device_architecture(device: int) virtual const 🔗
可选。
返回一键部署的设备架构。
bool _get_export_option_visibility(preset: EditorExportPreset, option: String) virtual const 🔗
可选。
验证option并返回指定preset的可见性。所有选项的默认实现返回true。
String _get_export_option_warning(preset: EditorExportPreset, option: StringName) virtual const 🔗
可选。
验证option并返回指定preset的警告消息。默认实现为所有选项返回空字符串。
Array[Dictionary] _get_export_options() virtual const 🔗
可选。
返回一个属性列表,作为字典的Array。每个Dictionary必须至少包含name: StringName和type:Variant.Type条目。
此外,还支持以下键:
-提示:属性提示
-hint_string:字符串
-用法:属性UsageFlags
-class_name: StringName
-default_value:Variant,属性的默认值。
-update_visibility:bool,如果设置为true,则在更改此属性时为每个属性调用_get_export_option_visibility()。
-必需:bool,如果设置为true,则此属性警告至关重要,应解析以使导出成为可能。此值是_has_valid_export_configuration()实现的提示,不被引擎直接使用。
另请参见Object._get_property_list()。
Texture2D _get_logo() virtual const 🔗
必填。
返回导出对话框中显示的平台徽标,徽标应为32x32调整为当前编辑器比例,参见EditorInterface.get_editor_scale()。
String _get_name() virtual const 🔗
必填。
返回导出平台名称。
ImageTexture _get_option_icon(device: int) virtual const 🔗
可选。
返回指定device的一键部署菜单项图标,图标应16x16调整为当前编辑器比例,参见EditorInterface.get_editor_scale()。
String _get_option_label(device: int) virtual const 🔗
可选。
返回指定device的一键部署菜单项标签。
String _get_option_tooltip(device: int) virtual const 🔗
可选。
返回指定device的一键部署菜单项工具提示。
int _get_options_count() virtual const 🔗
可选。
返回数字一键部署设备(或菜单中显示的其他一键选项)。
String _get_options_tooltip() virtual const 🔗
可选。
返回一键部署菜单按钮的工具提示。
String _get_os_name() virtual const 🔗
必填。
返回目标操作系统名称。
PackedStringArray _get_platform_features() virtual const 🔗
必填。
返回平台特定功能的数组。
PackedStringArray _get_preset_features(preset: EditorExportPreset) virtual const 🔗
必填。
返回指定preset的平台特定功能数组。
Texture2D _get_run_icon() virtual const 🔗
可选。
返回一键部署菜单按钮的图标,图标应16x16调整为当前编辑器比例,参见EditorInterface.get_editor_scale()。
bool _has_valid_export_configuration(preset: EditorExportPreset, debug: bool) virtual const 🔗
必填。
如果导出配置有效,则返回true。
bool _has_valid_project_configuration(preset: EditorExportPreset) virtual const 🔗
必填。
如果项目配置有效,则返回true。
bool _is_executable(path: String) virtual const 🔗
可选。
如果指定的文件是目标平台的有效可执行文件(本机可执行文件或脚本),则返回true。
可选。
如果更改了一键部署选项并且应该更新编辑器界面,则返回true。
Error _run(preset: EditorExportPreset, device: int, debug_flags: BitField[DebugFlags]) virtual 🔗
可选。
选择device一键部署菜单选项时调用此方法。
实现应将项目导出到临时位置,上传并在特定的device上运行它,或执行与菜单项关联的其他操作。
bool _should_update_export_options() virtual 🔗
可选。
如果导出选项列表已更改并且应更新预设,则返回true。
String get_config_error() const 🔗
返回当前配置错误消息文本。此方法只能从_can_export()、_has_valid_export_configuration()或_has_valid_project_configuration()实现中调用。
bool get_config_missing_templates() const 🔗
返回true是当前配置中缺少导出模板。此方法应仅从_can_export()、_has_valid_export_configuration()或_has_valid_project_configuration()实现中调用。
void set_config_error(error_text: String) const 🔗
设置当前配置错误消息文本。只能从_can_export()、_has_valid_export_configuration()或_has_valid_project_configuration()实现调用此方法。
void set_config_missing_templates(missing_templates: bool) const 🔗
设置为true是当前配置中缺少导出模板。此方法应仅从_can_export()、_has_valid_export_configuration()或_has_valid_project_configuration()实现中调用。