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.

EditorExportPlatformExtension

Успадковує: EditorExportPlatform < RefCounted < Object

Базовий клас для користувацьких імплементацій EditorExportPlatform (плагінів).

Опис

Зовнішні реалізації EditorExportPlatform мають успадковувати цей клас.

Щоб використовувати EditorExportPlatform, спочатку зареєструйте його за допомогою методу EditorPlugin.add_export_platform().

Методи

bool

_can_export(preset: EditorExportPreset, debug: bool) virtual const

void

_cleanup() virtual

Error

_export_pack(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual

Error

_export_pack_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual

Error

_export_project(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual required

Error

_export_zip(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual

Error

_export_zip_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual

PackedStringArray

_get_binary_extensions(preset: EditorExportPreset) virtual required const

String

_get_debug_protocol() virtual const

String

_get_device_architecture(device: int) virtual const

bool

_get_export_option_visibility(preset: EditorExportPreset, option: String) virtual const

String

_get_export_option_warning(preset: EditorExportPreset, option: StringName) virtual const

Array[Dictionary]

_get_export_options() virtual const

Texture2D

_get_logo() virtual required const

String

_get_name() virtual required const

Texture2D

_get_option_icon(device: int) virtual const

String

_get_option_label(device: int) virtual const

String

_get_option_tooltip(device: int) virtual const

int

_get_options_count() virtual const

String

_get_options_tooltip() virtual const

String

_get_os_name() virtual required const

PackedStringArray

_get_platform_features() virtual required const

PackedStringArray

_get_preset_features(preset: EditorExportPreset) virtual required const

Texture2D

_get_run_icon() virtual const

bool

_has_valid_export_configuration(preset: EditorExportPreset, debug: bool) virtual required const

bool

_has_valid_project_configuration(preset: EditorExportPreset) virtual required const

void

_initialize() virtual

bool

_is_executable(path: String) virtual const

bool

_poll_export() virtual

Error

_run(preset: EditorExportPreset, device: int, debug_flags: BitField[DebugFlags]) virtual

bool

_should_update_export_options() virtual

String

get_config_error() const

bool

get_config_missing_templates() const

void

set_config_error(error_text: String) const

void

set_config_missing_templates(missing_templates: bool) const


Описи методів

bool _can_export(preset: EditorExportPreset, debug: bool) virtual const 🔗

Повертає true, якщо вказаний preset є дійсним і його можна експортувати. Використовуйте 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 🔗

Створює архів PCK за адресою path для вказаного preset.

Цей метод викликається, коли в діалоговому вікні експорту натиснуто кнопку «Експортувати PCK/ZIP», при вимкненому параметрі «Експортувати як патч» і вибрано PCK як тип файлу.


Error _export_pack_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual 🔗

Створює архів PCK патчів за адресою path для вказаного preset, що містить лише файли, що змінилися з моменту останнього патча.

Цей метод викликається, коли в діалоговому вікні експорту натиснуто кнопку «Експортувати PCK/ZIP», при цьому ввімкнено опцію «Експортувати як патч», а тип файлу вибрано PCK.

Примітка: Патчі, надані в patches, вже завантажені на момент виклику цього методу та надаються лише як контекст. Якщо порожній, замість них завантажуються патчі, визначені в пресеті експорту.


Error _export_project(preset: EditorExportPreset, debug: bool, path: String, flags: BitField[DebugFlags]) virtual required 🔗

Створює повний проєкт за адресою 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 🔗

Створити ZIP-архів за адресою path для вказаного preset.

Цей метод викликається, коли в діалоговому вікні експорту натиснуто кнопку «Експортувати PCK/ZIP», при вимкненому параметрі «Експортувати як патч» і вибрано ZIP як тип файлу.


Error _export_zip_patch(preset: EditorExportPreset, debug: bool, path: String, patches: PackedStringArray, flags: BitField[DebugFlags]) virtual 🔗

Створити ZIP-архів за адресою path для вказаного preset, що містить лише файли, що змінилися з моменту останнього патча.

Цей метод викликається, коли в діалоговому вікні експорту натиснуто кнопку «Експортувати PCK/ZIP», увімкнено опцію «Експортувати як патч», а тип файлу вибрано ZIP.

Примітка: Патчі, надані в patches, вже завантажено на момент виклику цього методу та надаються лише як контекст. Якщо порожній, замість них завантажено патчі, визначені в пресеті експорту.


PackedStringArray _get_binary_extensions(preset: EditorExportPreset) virtual required 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: PropertyHint

  • hint_string: String

  • usage: PropertyUsageFlags

  • class_name: StringName

  • default_value: Variant, значення властивості за замовчуванням.

  • update_visibility: bool, якщо встановлено значення true, _get_export_option_visibility() викликається для кожної властивості, коли ця властивість змінюється.

  • required: bool, якщо встановлено значення true, попередження цієї властивості є критичними та мають бути вирішені, щоб зробити експорт можливим. Це значення є підказкою для реалізації _has_valid_export_configuration() і не використовується рушієм безпосередньо.

Див. також Object._get_property_list().


Повертає логотип платформи, що відображається у діалоговому вікні експорту. Розмір логотипу має бути 32×32 пікселі, скоригований відповідно до поточного масштабу редактора (див. EditorInterface.get_editor_scale()).


String _get_name() virtual required const 🔗

Повертає назву платформи експорту.


Texture2D _get_option_icon(device: int) virtual const 🔗

Повертає піктограму елемента для вказаного device в меню розгортання одним кліком. Піктограма має бути розміром 16×16 пікселів, скоригована відповідно до поточного масштабу редактора (див. 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 required const 🔗

Повертає назву цільової ОС.


PackedStringArray _get_platform_features() virtual required const 🔗

Повертає масив функцій, специфічних для платформи.


PackedStringArray _get_preset_features(preset: EditorExportPreset) virtual required const 🔗

Повертає масив специфічних для платформи функцій для зазначеного preset.


Texture2D _get_run_icon() virtual const 🔗

Повертає піктограму кнопки меню розгортання одним кліком. Піктограма має бути розміром 16×16 пікселів, скоригована відповідно до поточного масштабу редактора (див. EditorInterface.get_editor_scale()).


bool _has_valid_export_configuration(preset: EditorExportPreset, debug: bool) virtual required const 🔗

Повертає true, якщо конфігурація експорту дійсна.


bool _has_valid_project_configuration(preset: EditorExportPreset) virtual required const 🔗

Повертає true, якщо конфігурація проекту дійсна.


void _initialize() virtual 🔗

Ініціалізує плагін. Викликається редактором під час реєстрації платформи.


bool _is_executable(path: String) virtual const 🔗

Повертає true, якщо вказаний файл є дійсним виконуваним файлом (власним виконуваним файлом або скриптом) для цільової платформи.


bool _poll_export() virtual 🔗

Повертає 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().