Référence de classe shell HTML5¶
Les projets exportés pour le Web exposent la classe Engine()
à l'environnement JavaScript, ce qui permet un contrôle fin du processus de démarrage du moteur.
Cette API est construite de manière asynchrone et nécessite une compréhension de base des Promises.
Engine¶
La classe Engine
fournit des méthodes pour charger et démarrer des projets exportés sur le Web. Pour les paramètres d'exportation par défaut, elle fait déjà partie de la page HTML exportée. Pour comprendre l'utilisation pratique de la classe Engine
, voir Custom HTML page for Web export.
Méthodes statiques¶
Promesse |
|
vide |
|
booléen |
|
Méthodes d'instance¶
Promesse |
|
Promesse |
|
Promesse |
|
Promesse |
|
vide |
|
vide |
|
- class Engine(initConfig)¶
Crée une nouvelle instance de moteur avec la configuration donnée.
- Arguments
initConfig (
EngineConfig()
) -- La configuration initiale de cette instance.
Static Methods
- Engine.load(basePath)¶
Charge le moteur à partir du chemin de base spécifiée.
- Arguments
basePath (
string()
) -- Chemin de base du moteur à charger.
- Renvoie
Promesse qui se résout une fois que le moteur est chargé.
- Type renvoyé
Promesse
- Engine.unload()¶
Déchargez le moteur pour libérer de la mémoire.
Cette méthode sera appelée automatiquement en fonction de la configuration. Voir
unloadAfterInit
.
- Engine.isWebGLAvailable([majorVersion=1])¶
Vérifie si WebGL est disponible. Si nécessaire, indiquez une version particulière de WebGL à vérifier.
- Arguments
majorVersion (
number()
) -- La version majeure de WebGL à vérifier.
- Renvoie
Si la version majeure de WebGL indiquée est disponible.
- Type renvoyé
booléen
Instance Methods
- Engine.prototype.init([basePath])¶
Initialisez l'instance du moteur. Si vous le souhaitez, passez le chemin de base au moteur pour le charger, s'il n'a pas encore été chargé. Voir la méthode
Engine.load()
.- Arguments
basePath (
string()
) -- Chemin de base du moteur à charger.
- Renvoie
Une
Promise
qui se résout une fois que le moteur est chargé et initialisé.- Type renvoyé
Promesse
- Engine.prototype.preloadFile(file[, path])¶
Chargez un fichier pour qu'il soit disponible dans le système de fichiers une fois l'instance lancée. Doit être appelé avant de démarrer l'instance.
S'il n'est pas fourni, le
path
est dérivé de l'URL du fichier chargé.- Arguments
file (
string|ArrayBuffer()
) -- Le fichier à précharger. Si c'est unstring
, le fichier sera chargé depuis ce chemin. Si c'est unArrayBuffer
ou une vue sur un, le tampon sera utilisé comme contenu du fichier.path (
string()
) -- Chemin par lequel le fichier sera accessible. Obligatoire, sifile
n'est pas une chaîne.
- Renvoie
Une promesse qui se résout une fois que le fichier est chargé.
- Type renvoyé
Promesse
- Engine.prototype.start(override)¶
Démarre l'instance du moteur en utilisant la configuration de surcharge donnée (s'il y en a une).
startGame
peut être utilisé dans les cas typiques à la place.Cela permettra d'initialiser l'instance si elle n'est pas initialisée. Pour l'initialisation manuelle, voir
init
. Le moteur doit être chargé au préalable.Échec si un canevas ne peut être trouvé sur la page, ou s'il n'est pas spécifié dans la configuration.
- Arguments
override (
EngineConfig()
) -- Une surcharge facultative de la configuration.
- Renvoie
Promesse qui se résout une fois le moteur démarré.
- Type renvoyé
Promesse
- Engine.prototype.startGame(override)¶
Démarre l'instance de jeu en utilisant la configuration donnée (le cas échéant).
Cela permettra d'initialiser l'instance si elle n'est pas initialisée. Pour l'initialisation manuelle, voir
init
.Cela va charger le moteur s'il n'est pas chargé, et précharger le pck principal.
Cette méthode attend de la configuration initiale (ou de la surcharge) que les propriétés
executable
etmainPack
soient définies (ce qui est normalement fait par l'éditeur lors de l'exportation).- Arguments
override (
EngineConfig()
) -- Une surcharge facultative de la configuration.
- Renvoie
Promesse qui se résout une fois le jeu démarré.
- Type renvoyé
Promesse
- Engine.prototype.copyToFS(path, buffer)¶
Crée un fichier au
path
spécifié avec lebuffer
passé dans le système de fichiers de l'instance.- Arguments
path (
string()
) -- L'emplacement où le fichier sera créé.buffer (
ArrayBuffer()
) -- Le contenu du fichier.
- Engine.prototype.requestQuit()¶
Demande que l'instance actuelle quitte.
C'est comme si l'utilisateur appuyait sur le bouton de fermeture dans le gestionnaire de fenêtres, et cela n'aura aucun effet si le moteur a planté ou est bloqué dans une boucle.
Configuration du moteur¶
Un objet utilisé pour configurer l'instance du moteur en fonction des options d'exportation de godot, et pour les remplacer dans les modèles HTML personnalisés si nécessaire.
Propriétés¶
type |
name |
booléen |
|
HTMLCanvasElement |
|
chaîne |
|
chaîne |
|
chaîne |
|
nombre (valeur), numéro (de ligne) |
|
Array.<string> |
|
function |
|
function |
|
function |
|
function |
|
function |
- EngineConfig¶
L'objet de configuration du moteur. Est juste un typedef, créez-le comme un objet normal, par exemple :
const MyConfig = { executable: 'godot', unloadAfterInit: false }
Description des propriétés
- unloadAfterInit¶
Si le moteur est déchargé automatiquement après l'initialisation de l'instance.
- Type
booléen
- valeur
true
- canvas¶
L'objet HTML DOM Canvas à utiliser.
Par défaut, le premier élément de canevas du document sera utilisé si aucun n'est spécifié.
- Type
HTMLCanvasElement
- valeur
null
- executable¶
Le nom du fichier WASM sans l'extension. (Défini par le processus d'exportation de l'éditeur Godot).
- Type
chaîne
- valeur
""
- mainPack¶
Un autre nom pour le pck de jeu à charger. Le nom de l’exécutable est utilisé dans le cas contraire.
- Type
chaîne
- valeur
null
- locale¶
Indiquez un code de langue pour sélectionner la localisation appropriée pour le jeu.
La localisation du navigateur sera utilisée si aucune n'est spécifiée. Voir la liste complète des supported locales.
- Type
chaîne
- valeur
null
- canvasResizePolicy¶
La politique de redimensionnement du canevas détermine comment le canevas doit être redimensionné par Godot.
0
signifie que Godot ne fera aucun redimensionnement. Ceci est utile si vous souhaitez contrôler la taille du canevas à partir du code javascript de votre modèle.1
signifie que Godot redimensionnera le caneva au démarrage, et lors du changement de taille de la fenêtre via les fonctions du moteur.2
signifie que Godot adaptera la taille du canvas pour qu'elle corresponde à la totalité de la fenêtre du navigateur.- Type
nombre (valeur), numéro (de ligne)
- valeur
2
- args¶
Les arguments à passer comme arguments de ligne de commande au démarrage.
Voir command line tutorial.
Note :
startGame
ajoutera toujours l'argument--main-pack
.- Type
Array.<string>
- valeur
[]
- onExecute(path, args)¶
Une fonction de rappel pour gérer les appels
OS.execute
de Godot.Cette fonction est par exemple utilisée dans le modèle de l'éditeur Web pour passer du gestionnaire de projet à l'éditeur, et pour lancer le jeu.
- Arguments
path (
string()
) -- Le chemin que Godot veut exécuter.args (
Array.
) -- Les arguments de la "commande" à exécuter.
- onExit(status_code)¶
Une fonction de rappel pour être notifié lorsque l'instance Godot quitte.
Note : Cette fonction ne sera pas appelée si le moteur plante ou ne répond plus.
- Arguments
status_code (
number()
) -- Le code d'état renvoyé par Godot à la sortie.
- onProgress(current, total)¶
Fonction de rappel permettant d’afficher la progression du téléchargement.
La fonction est appelée une fois par image pendant le téléchargement des fichiers, donc l'utilisation de
requestAnimationFrame()
n'est pas nécessaire.Si la fonction de rappel reçoit une quantité totale de bytes de 0, ça signifie que le calcul est impossible, les raisons possibles peuvent être les suivantes :
Les fichiers sont délivrés avec une compression par tronçons réalisée par le serveur
Les fichiers sont délivrés avec une compression côté serveur sur Chromium
Les téléchargements de fichiers n'ont pas encore tous démarré (en général sur des serveurs sans multi-threading)
- Arguments
current (
number()
) -- La quantité actuelle d'octets téléchargés jusqu'à présent.total (
number()
) -- La quantité totale d'octets à télécharger.
- onPrint([...var_args])¶
Une fonction de rappel pour gérer le flux de sortie standard. Cette méthode ne doit généralement être utilisée que dans les pages de débogage.
Par défaut,
console.log()`
est utilisé.- Arguments
var_args (
*()
) -- Un nombre variable d'arguments à imprimer.
- onPrintError([...var_args])¶
Une fonction de rappel pour gérer le flux d'erreur standard. Cette méthode ne doit généralement être utilisée que dans les pages de débogage.
Par défaut,
console.error()
est utilisé.- Arguments
var_args (
*()
) -- Un nombre variable d'arguments à imprimer comme erreurs.