Referencia de la clase HTML5

Projects exported for the Web expose the Engine class to the JavaScript environment, that allows fine control over the engine's start-up process.

Esta API está construida de modo asíncrono y requiere comprensión básica de Promesas.

Engine

The Engine class provides methods for loading and starting exported projects on the Web. For default export settings, this is already part of the exported HTML page. To understand practical use of the Engine class, see Custom HTML page for Web export.

Métodos estáticos

Promise Engine.load ( string basePath )
void Engine.unload ( )
boolean Engine.isWebGLAvailable ( [ number majorVersion=1 ] )
void Engine.setWebAssemblyFilenameExtension ( string extension )

Propiedades de instancia

Módulo Emscripten engine.rtenv

Métodos de Instancia

Engine Engine ( )
Promise engine.init ( [ string basePath ] )
Promise engine.preloadFile ( string|ArrayBuffer file [, string path ] )
Promise engine.start ( [ string arg1, string arg2, … ] )
Promise engine.startGame ( string execName, string mainPack )
void engine.setUnloadAfterInit ( boolean enabled )
void engine.setCanvas ( HTMLCanvasElement canvasElem )
void engine.setCanvasResizedOnStart ( boolean enabled )
void engine.setLocale ( string locale )
void engine.setExecutableName ( string execName )
void engine.setProgressFunc ( function callback )
void engine.setStdoutFunc ( function callback )
void engine.setStderrFunc ( function callback )

Descripciones de Métodos Estáticos

Engine.load(basePath)

Carga el motor desde la ruta base indicada.

Argumentos:
  • basePath (string) -- Base path of the engine to load.
Devuelve:

Una promesa de que resolverá una vez cargado el motor.

Engine.unload()

Unload the engine to free memory.

Esto es llamado automáticamente una vez que el motor ha comenzado a menos que sea deshabilitado explícitamente usando engine.setUnloadAfterInit().

Engine.isWebGLAvailable([majorVersion = 1])

Check whether WebGL is available. Optionally, specify a particular version of WebGL to check for.

Argumentos:
  • majorVersion (number) -- The major WebGL version to check for. Defaults to 1 for WebGL 1.0.
Devuelve:

Devuelve true si la versión mayor de WebGL dada está disponible, false falso de otro modo.

Engine.setWebAssemblyFilenameExtension(extension)

Set an alternative filename extension for the WebAssembly module. By default it is assumed to be wasm.

Argumentos:
  • extension (string) -- Filename extension without preceding dot.

Instance Property Descriptions

engine.rtenv

The runtime environment provided by Emscripten's Module. For more information refer to the official documentation on Emscripten.

Instance Method Descriptions

class Engine()

Crear una nueva instancia de la clase Engine.

engine.init([basePath])

Initialize the engine instance. Optionally, pass the base path to the engine to load it, if it hasn't been loaded yet. See Engine.load().

Argumentos:
  • basePath (string) -- Base path of the engine to load.
Devuelve:

Devuelve una promesa de que resolverá una vez que el motor es cargado e inicializado.

engine.preloadFile(file[, path])

Carga un archivo para que esté disponible en el sistema de archivos una vez que la instancia es ejecutada. Debe llamarse antes de iniciar la instancia.

Argumentos:
  • file (string|ArrayBuffer) -- Si type es string, el archivo será cargado desde esa ruta. Si type es un ArrayBuffer o una vista de uno, el buffer será usado como el contenido del archivo.
  • path (string) -- Ruta en la cual el archivo está disponible. Es mandatorio si file no es una cadena. De otro modo, la ruta será derivada desde la URL del archivo cargado.
Devuelve:

Promesa que resolverá una vez que el archivo es cargado.

engine.start([arg1, arg2, ])

Comienza la instancia del motor, pasando la cadena indicada como argumento. Se puede usar engine.startGame() en casos comunes.

This will initialize the instance if it is not initialized. For manual initialization, see engine.init(). The engine must be loaded beforehand.

Fails if a canvas cannot be found on the page.

Argumentos:
  • variadic (string) -- Parámetros de la línea de comandos.
Devuelve:

Devuelve una promesa de que resolverá una vez que el motor ha iniciado.

engine.startGame(execName, mainPack)

Start the game instance using the given executable URL and main pack URL.

This will initialize the instance if it is not initialized. For manual initialization, see engine.init().

Esto cargará el motor si no está cargado todavía. La ruta base de la URL del ejecutable será usada como ruta base del motor.

Argumentos:
  • execName (string) -- Executable name in a form of URL, omitting filename extension.
  • mainPack (string) -- URL of the main pack to start the game.
Devuelve:

Devuelve una promesa de que resolverá una vez que el juego ha arrancado.

engine.setUnloadAfterInit(enabled)

Specify whether the engine will be unloaded automatically after the instance is initialized. Enabled by default.

Argumentos:
  • enabled (boolean) -- true si el motor deberá ser eliminado de memoria después de inicializar, false en caso contrario.
engine.setCanvas(canvasElem)

Especifica un elemento canvas HTML para utilizar. Por defecto, el primer elemento canvas de la página se utiliza para el renderizado.

Argumentos:
  • canvasElem (HTMLCanvasElement) -- The canvas element to use.
engine.setCanvasResizedOnStart(enabled)

Especifica si el canvas se redimensionará a la anchura y la altura especificadas en la configuración del proyecto al inicio. Habilitado por defecto.

Argumentos:
  • enabled (boolean) -- true si el canvas debe redimensionarse al comenzar, false en caso contrario.
engine.setLocale(locale)

Specify a language code to select the proper localization for the game.

Ver también

Complete list of supported locales.

Argumentos:
  • locale (string) -- Código del lenguaje.
engine.setExecutableName(execName)

Specify the virtual filename of the executable. By default, the base name of the loaded engine files is used.

This affects the output of OS.get_executable_path() and sets the automatically started main pack to ExecutableName.pck.

Argumentos:
  • execName (string) -- Executable name.
engine.setProgressFunc(callback)

Specify a callback function for displaying download progress. The callback function is called once per frame, so that the usage of requestAnimationFrame() is not necessary.

If the callback function receives a total amount of bytes as 0, this means that it is impossible to calculate. Possible reasons include:

  • Los archivos son distribuidos con chunked compression del lado del servidor
  • Los archivos son distribuidos con compresión del lado del servidor en Chromium
  • Algunas descargas no han iniciado todavía (usualmente en servidores sin multi-threading)
Argumentos:
  • callback (function) -- La función callback debe aceptar dos parámetros numéricos: la cantidad de bytes cargados y el total de bytes a cargar.
engine.setStdoutFunc(callback)

Specify a callback function for handling the standard output stream. This method should usually only be used in debug pages. By default, console.log() is used.

Argumentos:
  • callback (function) -- The callback function must accept one string argument: the message to print.
engine.setStderrFunc(callback)

Specify a callback function for handling the standard error stream. This method should usually only be used in debug pages. By default, console.warn() is used.

Argumentos:
  • callback (function) -- The callback function must accept one string argument: the message to print.