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 shell class reference
I progetti esportati per il Web espongono la classe Engine() all'ambiente JavaScript, che consente di controllare precisamente il processo di avvio del motore.
Questa API è sviluppata in modo asincrono e richiede una conoscenza di base di Promise.
Engine
La classe Engine fornisce metodi per caricare e avviare progetti esportati sul Web. Per le impostazioni di esportazione predefinite, questa classe è già inclusa nella pagina HTML esportata. Per comprendere l'uso pratico della classe Engine, consultare Pagina HTML personalizzata per l'esportazione Web.
Metodi statici
Promise |
|
void |
|
boolean |
|
Metodi di Istanza
Promise |
|
Promise |
|
Promise |
|
Promise |
|
void |
|
void |
|
- class Engine(initConfig)
Crea una nuova istanza del motore con la configurazione specificata.
- Parametri:
initConfig (
EngineConfig()) -- La configurazione iniziale per questa istanza.
Metodi statici
- Engine.load(basePath)
Carica il motore dal percorso base specificato.
- Parametri:
basePath (
string()) -- Percorso base del motore da caricare.
- Ritorna:
Una Promise che si risolve una volta caricato il motore.
- Tipo di ritorno:
Promise
- Engine.unload()
Scarica il motore per liberare memoria.
Questo metodo sarà chiamato automaticamente in base alla configurazione. Vedere
unloadAfterInit.
- Engine.isWebGLAvailable([majorVersion=1])
Verifica se WebGL è disponibile. Facoltativamente, specifica una versione specifica di WebGL da verificare.
- Parametri:
majorVersion (
number()) -- La versione WebGL maggiore da verificare.
- Ritorna:
Se la versione maggiore specificata di WebGL è disponibile.
- Tipo di ritorno:
boolean
Metodi di istanza
- Engine.prototype.init([basePath])
Inizializza l'istanza del motore. Facoltativamente, si può passare il percorso base al motore per caricarlo, se non è ancora stato caricato. Vedere
Engine.load().- Parametri:
basePath (
string()) -- Percorso base del motore da caricare.
- Ritorna:
Una
Promiseche si risolve una volta caricato e inizializzato il motore.- Tipo di ritorno:
Promise
- Engine.prototype.preloadFile(file[, path])
Carica un file in modo che sia disponibile nel file system dell'istanza una volta eseguita. Deve essere chiamato prima di avviare l'istanza.
Se non specificato, il percorso
pathviene derivato dall'URL del file caricato.- Parametri:
file (
string|ArrayBuffer()) -- Il file da precaricare. Se è unastring, il file sarà caricato da quel percorso. Se è unArrayBuffero una vista su di esso, il buffer sarà utilizzato come contenuto del file.path (
string()) -- Percorso tramite il quale il file sarà accessibile. Obbligatorio, sefilenon è una stringa.
- Ritorna:
Una Promise che si risolve una volta caricato il file.
- Tipo di ritorno:
Promise
- Engine.prototype.start(override)
Avvia l'istanza del motore utilizzando la configurazione di sovrascrittura specificata (se presente). In casi tipici è possibile utilizzare invece
startGame.Questo inizializzerà l'istanza se non è già inizializzata. Per l'inizializzazione manuale, vedere
init. Il motore deve essere caricato in precedenza.Fallisce se non è possibile trovare un canvas nella pagina, oppure se non è specificato nella configurazione.
- Parametri:
override (
EngineConfig()) -- Una sovrascrittura di configurazione facoltativa.
- Ritorna:
Una Promise che si risolve una volta avviato il motore.
- Tipo di ritorno:
Promise
- Engine.prototype.startGame(override)
Avvia l'istanza del gioco utilizzando la sovrascrittura di configurazione specificata (se presente).
Questo inizializzerà l'istanza se non è già inizializzata. Per l'inizializzazione manuale, vedere
init.Questo caricherà il motore se non è stato caricato, e precarica il pck principale.
Questo metodo si aspetta che la configurazione iniziale (o la sovrascrittura) abbia entrambe le proprietà
executableemainPackimpostate (normalmente eseguito dall'editor durante l'esportazione).- Parametri:
override (
EngineConfig()) -- Una sovrascrittura di configurazione facoltativa.
- Ritorna:
Una Promise che si risolve una volta avviato il gioco.
- Tipo di ritorno:
Promise
- Engine.prototype.copyToFS(path, buffer)
Crea un file nel percorso
pathcon il valore passato comebuffernel file system dell'istanza.- Parametri:
path (
string()) -- Il percorso in cui verrà creato il file.buffer (
ArrayBuffer()) -- Il contenuto del file.
- Engine.prototype.requestQuit()
Richiede che l'istanza attuale esca.
Questo è come se l'utente premesse il pulsante di chiusura nel gestore delle finestre, e non avrà alcun effetto se il motore ha avuto un crash o è bloccato in un ciclo.
Configurazione del motore
Un oggetto utilizzato per configurare l'istanza del motore in base alle opzioni di esportazione di Godot e per sovrascriverle nei modelli HTML personalizzati, se necessario.
Proprietà
type |
name |
boolean |
|
HTMLCanvasElement |
|
string |
|
string |
|
string |
|
number |
|
Array.<string> |
|
funzione |
|
funzione |
|
funzione |
|
funzione |
|
funzione |
- EngineConfig
L'oggetto di configurazione del motore. Questo è solo un typedef, da creare come un oggetto normale, ad esempio:
const MyConfig = { executable: 'godot', unloadAfterInit: false }Descrizioni di proprietà
- unloadAfterInit
Indica se il motore si deve scaricare automaticamente dopo l'inizializzazione dell'istanza.
- Type:
boolean
- valore:
true
- canvas
L'oggetto DOM canvas di HTML da utilizzare.
Come predefinito, se nessuno ne viene specificato, sarà utilizzato il primo elemento canvas del documento.
- Type:
HTMLCanvasElement
- valore:
null
- executable
Nome del file WASM senza estensione. (Impostato dal processo di esportazione dell'editor Godot).
- Type:
string
- valore:
""
- mainPack
Un nome alternativo per il file PCK di gioco da caricare. Altrimenti, sarà utilizzato il nome dell'eseguibile.
- Type:
string
- valore:
null
- locale
Specifica un codice lingua per selezionare la localizzazione appropriata per il gioco.
Se nessuna ne viene specificata, sarà utilizzata la localizzazione del browser. Consulta l'elenco completo delle localizzazioni supportate.
- Type:
string
- valore:
null
- canvasResizePolicy
La politica di ridimensionamento del canvas determina come il canvas deve essere ridimensionato da Godot.
0significa che Godot non farà alcun ridimensionamento. Questo è utile se si desidera controllare la dimensione del canvas dal codice JavaScript nel proprio modello.1significa che Godot ridimensionerà il canvas all'avvio e quando si modificano le dimensioni della finestra tramite le funzioni del motore.2significa che Godot adatterà le dimensioni del canvas per adattarle all'intera finestra del browser.- Type:
number
- valore:
2
- args
Gli argomenti da passare come argomenti della riga di comando all'avvio.
Consulta tutorial sulla riga di comando.
Nota:
startGameaggiungerà sempre l'argomento--main-pack.- Type:
Array.<string>
- valore:
[]
- onExecute(path, args)
Una funzione di callback per gestire le chiamate di
OS.executedi Godot.Ad esempio, viene utilizzato nel modello dell'editor Web per passare dal Gestore dei progetti all'editor e viceversa, nonché per eseguire il gioco.
- Parametri:
path (
string()) -- Il percorso che Godot vuole eseguire.args (
Array.) -- Gli argomenti del "comando" da eseguire.
- onExit(status_code)
Una funzione di callback per essere notificati quando l'istanza di Godot si chiude.
Nota: questa funzione non verrà richiamata se il motore ha un crash o non risponde più.
- Parametri:
status_code (
number()) -- Il codice di stato restituito da Godot all'uscita.
- onProgress(current, total)
Una funzione di callback per visualizzare l'avanzamento del download.
La funzione viene chiamata una volta per frame durante il download dei file, quindi non è necessario utilizzare
requestAnimationFrame().Se la funzione di callback riceve un numero totale di byte pari a 0, significa che è impossibile calcolarlo. Alcune possibili cause includono:
I file sono ricevuti con compressione a blocchi dal lato server
I file sono ricevuti con compressione su Chromium
Non tutti i download dei file sono stati ancora iniziati (solitamente su server senza multi-threading)
- Parametri:
current (
number()) -- La quantità attuale di byte scaricati fino ad ora.total (
number()) -- La quantità totale di byte da scaricare.
- onPrint([...var_args])
Una funzione di callback per gestire il flusso di output standard. Questo metodo si dovrebbe solitamente utilizzare solo nelle pagine di debug.
Come predefinito,
console.log()è utilizzato.- Parametri:
var_args (
*()) -- Un numero variabile di argomenti da stampare.
- onPrintError([...var_args])
Una funzione di callback per gestire il flusso di errore standard. Questo metodo si dovrebbe solitamente utilizzare solo nelle pagine di debug.
Come predefinito, è utilizzato
console.log().- Parametri:
var_args (
*()) -- Un numero variabile di argomenti da stampare come errori.