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.
Checking the stable version of the documentation...
Посилання на клас оболонки HTML5
Проекти, експортовані для Інтернету, надають клас Engine() середовищу JavaScript, що дозволяє точно контролювати процес запуску двигуна.
Цей API створено асинхронним способом і вимагає базового розуміння Promises.
Двигун
Клас Engine надає методи для завантаження та запуску експортованих проектів в Інтернеті. Для параметрів експорту за замовчуванням це вже є частиною експортованої сторінки HTML. Щоб зрозуміти практичне використання класу Engine, перегляньте Custom HTML page for Web export.
Статичні методи
Обіцяю |
|
Void |
|
логічний |
|
Методи екземплярів
Обіцяю |
|
Обіцяю |
|
Обіцяю |
|
Обіцяю |
|
Void |
|
Void |
|
- class Engine(initConfig)
Створіть новий екземпляр Engine із заданою конфігурацією.
- Аргументи:
initConfig (
EngineConfig()) -- Початкова конфігурація для цього екземпляра.
Статичні методи
- Engine.load(basePath)
Завантажте двигун із зазначеного базового шляху.
- Аргументи:
basePath (
string()) -- Базовий шлях двигуна до завантаження.
- Повертає:
Обіцянка, яка вирішується після завантаження двигуна.
- Тип повернення:
Обіцяю
- Engine.unload()
Розвантажте двигун, щоб звільнити пам'ять.
Цей метод буде викликатися автоматично залежно від конфігурації. Перегляньте
unloadAfterInit.
- Engine.isWebGLAvailable([majorVersion=1])
Перевірте, чи доступний WebGL. За бажанням можна вказати конкретну версію WebGL, яку потрібно перевірити.
- Аргументи:
majorVersion (
number()) -- Основна версія WebGL, яку потрібно перевірити.
- Повертає:
Якщо дана основна версія WebGL доступна.
- Тип повернення:
логічний
Методи екземплярів
- Engine.prototype.init([basePath])
Ініціалізуйте екземпляр двигуна. За бажанням передайте базовий шлях механізму, щоб завантажити його, якщо він ще не завантажений. Перегляньте
Engine.load().- Аргументи:
basePath (
string()) -- Базовий шлях двигуна до завантаження.
- Повертає:
Promise, який вирішується після завантаження та ініціалізації двигуна.- Тип повернення:
Обіцяю
- Engine.prototype.preloadFile(file[, path])
Завантажте файл, щоб він був доступний у файловій системі примірника після його запуску. Потрібно викликати перед запуском примірника.
Якщо не вказано,
шляхотримується з URL-адреси завантаженого файлу.- Аргументи:
file (
string|ArrayBuffer()) -- Файл для попереднього завантаження. Якщорядок, файл буде завантажено з цього шляху. ЯкщоArrayBufferабо перегляд на одному, буфер використовуватиметься як вміст файлу.path (
string()) -- Шлях, за яким буде доступний файл. Обов’язковий, якщофайлне є рядком.
- Повертає:
Обіцянка, яка вирішується після завантаження файлу.
- Тип повернення:
Обіцяю
- Engine.prototype.start(override)
Запустіть екземпляр двигуна, використовуючи задану конфігурацію перевизначення (якщо є).
startGameможна використовувати в типових випадках.Це ініціалізує примірник, якщо він не ініціалізований. Для ініціалізації вручну див.
init. Двигун необхідно попередньо завантажити.Помилка, якщо полотно не знайдено на сторінці або не вказано в конфігурації.
- Аргументи:
override (
EngineConfig()) -- Додаткова зміна конфігурації.
- Повертає:
Обіцянка, яка вирішується після запуску двигуна.
- Тип повернення:
Обіцяю
- Engine.prototype.startGame(override)
Запустіть екземпляр гри, використовуючи перевизначення заданої конфігурації (якщо є).
Це ініціалізує примірник, якщо він не ініціалізований. Для ініціалізації вручну див.
init.Це завантажить двигун, якщо він не завантажений, і попередньо завантажить основний pck.
Цей метод очікує, що початкова конфігурація (або перевизначення) матиме обидві властивості:
executableіmainPack(зазвичай робиться редактором під час експорту).- Аргументи:
override (
EngineConfig()) -- Додаткова зміна конфігурації.
- Повертає:
Обіцянка, яка вирішується після початку гри.
- Тип повернення:
Обіцяю
- Engine.prototype.copyToFS(path, buffer)
Створіть файл за вказаним
шляхоміз переданимбуферому файловій системі примірника.- Аргументи:
path (
string()) -- Місце, де буде створено файл.buffer (
ArrayBuffer()) -- Вміст файлу.
- Engine.prototype.requestQuit()
Запит на вихід поточного екземпляра.
Це схоже на натискання користувачем кнопки закриття в диспетчері вікон і не матиме жодного ефекту, якщо система вийшла з ладу або застрягла в циклі.
Конфігурація движка
Об’єкт, який використовується для налаштування екземпляра Engine на основі параметрів експорту godot і для заміни цих параметрів у власних шаблонах HTML, якщо це необхідно.
Властивості
типу |
name |
логічний |
|
Елемент HTML Canvas |
|
текст |
|
текст |
|
текст |
|
номер |
|
Array.<string> |
|
функція |
|
функція |
|
функція |
|
функція |
|
функція |
- EngineConfig
Об'єкт конфігурації Engine. Це лише визначення типу, створіть його як звичайний об’єкт, наприклад:
const MyConfig = { executable: 'godot', unloadAfterInit: false }Опис нерухомості
- unloadAfterInit
Чи розвантажувати механізм автоматично після ініціалізації екземпляра.
- типу:
логічний
- значення:
ture
- canvas
Об’єкт HTML DOM Canvas для використання.
За замовчуванням буде використано перший елемент canvas у документі, якщо не вказано жодного.
- типу:
Елемент HTML Canvas
- значення:
null
- executable
Ім'я файлу WASM без розширення. (Встановлено процесом експорту редактора Godot).
- типу:
текст
- значення:
""
- mainPack
Альтернативна назва гри, яку потрібно завантажити. В іншому випадку використовується назва виконуваного файлу.
- типу:
текст
- значення:
null
- locale
Вкажіть код мови, щоб вибрати правильну локалізацію для гри.
Мова браузера буде використана, якщо її не вказано. Перегляньте повний список supported locales.
- типу:
текст
- значення:
null
- canvasResizePolicy
Політика зміни розміру полотна визначає, як Godot має змінити розмір полотна.
0означає, що Godot не змінюватиме розмір. Це корисно, якщо ви хочете керувати розміром полотна з коду javascript у вашому шаблоні.1означає, що Godot змінить розмір полотна під час запуску та під час зміни розміру вікна за допомогою функцій двигуна.2означає, що Godot адаптує розмір полотна до всього вікна браузера.- типу:
номер
- значення:
2
- args
Аргументи, які передаються як аргументи командного рядка під час запуску.
Див. command line tutorial.
Примітка:
startGameзавжди додаватиме аргумент--main-pack.- типу:
Array.<string>
- значення:
[]
- onExecute(path, args)
Функція зворотного виклику для обробки викликів
OS.executeGodot.Це, наприклад, використовується в шаблоні веб-редактора для перемикання між менеджером проекту та редактором, а також для запуску гри.
- Аргументи:
path (
string()) -- Шлях, який Godot хоче здійснити.args (
Array.) -- Аргументи «команди» для виконання.
- onExit(status_code)
Функція зворотного виклику для отримання сповіщень, коли примірник Godot завершує роботу.
Примітка: ця функція не буде викликана, якщо двигун виходить з ладу або перестає реагувати.
- Аргументи:
status_code (
number()) -- Код стану, який повертає Godot при виході.
- onProgress(current, total)
Функція зворотного виклику для відображення прогресу завантаження.
Функція викликається один раз для кожного кадру під час завантаження файлів, тому використовувати
requestAnimationFrame()не потрібно.Якщо функція зворотного виклику отримує загальну кількість байтів як 0, це означає, що її неможливо обчислити. Можливі причини:
Файли доставляються з частковим стисненням на стороні сервера
Файли доставляються зі стисненням на стороні сервера в Chromium
Ще не всі завантаження файлів почалися (зазвичай на серверах без багатопоточності)
- Аргументи:
current (
number()) -- Поточний обсяг завантажених байтів на даний момент.total (
number()) -- Загальна кількість байтів для завантаження.
- onPrint([...var_args])
Функція зворотного виклику для обробки стандартного потоку виводу. Зазвичай цей метод слід використовувати лише на сторінках налагодження.
За замовчуванням використовується
console.log().- Аргументи:
var_args (
*()) -- Різна кількість аргументів для друку.
- onPrintError([...var_args])
Функція зворотного виклику для обробки стандартного потоку помилок. Зазвичай цей метод слід використовувати лише на сторінках налагодження.
За замовчуванням використовується
console.error().- Аргументи:
var_args (
*()) -- Різна кількість аргументів, які будуть надруковані як помилки.