Work in progress
The content of this page was not yet updated for Godot
4.4
and may be outdated. If you know how to improve this page or you can confirm
that it's up to date, feel free to open a pull request.
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.
This API is built in an asynchronous manner and requires basic understanding of Promises.
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])
Load a file so it is available in the instance's file system once it runs. Must be called before starting the instance.
If not provided, the
pathis derived from the URL of the loaded file.- Parametri:
file (
string|ArrayBuffer()) --Il file da precaricare.
If a
stringthe file will be loaded from that path.If an
ArrayBufferor a view on one, the buffer will used as the content of the 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)
Start the engine instance using the given override configuration (if any).
startGamecan be used in typical cases instead.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()) -- An optional configuration override.
- Ritorna:
Una Promise che si risolve una volta avviato il motore.
- Tipo di ritorno:
Promise
- Engine.prototype.startGame(override)
Start the game instance using the given configuration override (if any).
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.
This method expects the initial config (or the override) to have both the
executableandmainPackproperties set (normally done by the editor during export).- Parametri:
override (
EngineConfig()) -- An optional configuration override.
- Ritorna:
Una Promise che si risolve una volta avviato il gioco.
- Tipo di ritorno:
Promise
- Engine.prototype.copyToFS(path, buffer)
Create a file at the specified
pathwith the passed asbufferin the instance's file system.- 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,
console.log()è utilizzato.- Parametri:
var_args (
*()) -- Un numero variabile di argomenti da stampare come errori.