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...
Referência da classe shell HTML5
Os projetos exportados para a Web expõem a classe Engine() ao ambiente JavaScript, que permite um controle fino sobre o processo de partida do motor.
Este API é construído de uma maneira assíncrona e requer conhecimento básico sobre Promises.
Engine
A classe Engine fornece métodos para carregar e inicializar projetos exportados na Web. Para configurações de exportação padrão, isto já é parte da página HTML exportada. Para entender o uso prático da classe Engine, veja Personalizar página HTML para exportação Web.
Métodos Estáticos
Promesa |
|
void |
|
booleano |
|
Métodos de Instância
Promesa |
|
Promesa |
|
Promesa |
|
Promesa |
|
void |
|
void |
|
- class Engine(initConfig)
Criar uma nova instância de Engine com a configuração dada.
- Argumentos:
initConfig (
EngineConfig()) -- A configuração inicial para esta instância.
Métodos Estáticos
- Engine.load(basePath)
Carrega o motor a partir do caminho base especificado.
- Argumentos:
basePath (
string()) -- O caminho base do motor a ser carregado.
- Retorna:
Uma Promise que se resolve assim que o motor for carregado.
- Tipo de retorno:
Promesa
- Engine.unload()
Descarrega o motor para liberar memória.
Este método será chamado automaticamente dependendo da configuração. Veja
unloadAfterInit.
- Engine.isWebGLAvailable([majorVersion=1])
Verifica se o WebGL está disponível. Opcionalmente, especifique uma versão específica do WebGL para verificar.
- Argumentos:
majorVersion (
number()) -- A versão principal do WebGL a ser verificada.
- Retorna:
Se a versão principal especificada do WebGL estiver disponível.
- Tipo de retorno:
booleano
Métodos de instância
- Engine.prototype.init([basePath])
Inicializa a instância do motor. Opcionalmente, passe o caminho base para o motor para carregá-lo, caso ainda não tenha sido carregado. Veja
Engine.load().- Argumentos:
basePath (
string()) -- O caminho base do motor a ser carregado.
- Retorna:
A Promise that resolves once the engine is loaded and initialized.
- Tipo de retorno:
Promesa
- Engine.prototype.preloadFile(file[, path])
Carrega previamente um arquivo para que ele esteja disponível no sistema de arquivos da instância assim que ela for executada. Deve ser chamado antes de iniciar a instância.
Se não for fornecido, o
path(caminho) é derivado da URL do arquivo carregado.- Argumentos:
file (
string|ArrayBuffer()) -- O arquivo a ser pré-carregado. Se for umastring, o arquivo será carregado a partir daquele caminho. Se for umArrayBufferou uma visão de um, o buffer será usado como o conteúdo do arquivo.path (
string()) -- Caminho pelo qual o arquivo estará acessível. Obrigatório, searquivonão for uma string.
- Retorna:
Uma Promise que se resolve assim que o arquivo for carregado.
- Tipo de retorno:
Promesa
- Engine.prototype.start(override)
Inicie a instância da engine usando a configuração de substituição fornecida (se houver).
startGamepode ser usado em casos típicos.Isso inicializará a instância caso ela não esteja inicializada. Para inicialização manual, veja
init. O motor deve ser carregado previamente.Falha se um canvas não puder ser encontrado na página ou se não for especificado na configuração.
- Argumentos:
override (
EngineConfig()) -- Uma substituição opcional de configuração.
- Retorna:
A Promise that resolves once the engine started.
- Tipo de retorno:
Promesa
- Engine.prototype.startGame(override)
Inicia a instância do jogo usando a substituição de configuração fornecida (se houver).
Isso inicializará a instância caso ela não esteja inicializada. Para inicialização manual, veja
init.Isso carregará o motor caso ele não esteja carregado e pré-carregará o pck principal.
Este método espera que a configuração inicial (ou a substituição) tenha as propriedades
executableemainPackdefinidas (normalmente feito pelo editor durante a exportação).- Argumentos:
override (
EngineConfig()) -- Uma substituição opcional de configuração.
- Retorna:
A Promise that resolves once the game started.
- Tipo de retorno:
Promesa
- Engine.prototype.copyToFS(path, buffer)
Cria um arquivo no
pathespecificado com o conteúdo passado comobufferno sistema de arquivos da instância.- Argumentos:
path (
string()) -- O local onde o arquivo será criado.buffer (
ArrayBuffer()) -- O conteúdo do arquivo.
- Engine.prototype.requestQuit()
Solicite que a instância atual seja encerrada.
Isso é semelhante ao usuário pressionar o botão de fechar no gerenciador de janelas e não terá efeito se o motor tiver travado ou estiver travado em um loop.
Configuração da engine
Um objeto usado para configurar a instância do Engine com base nas opções de exportação do Godot e para substituir essas opções em modelos HTML personalizados, se necessário.
Propriedades
tipo |
name |
booleano |
|
HTMLCanvasElement |
|
string |
|
string |
|
string |
|
número |
|
Matriz.<string> |
|
função |
|
função |
|
função |
|
função |
|
função |
- EngineConfig
O objeto de configuração do Engine. Isso é apenas um typedef, crie-o como um objeto regular, por exemplo:
const MyConfig = { executable: 'godot', unloadAfterInit: false }Descrições de propriedade
- unloadAfterInit
Se o motor deve ser descarregado automaticamente após a instância ser inicializada.
- tipo:
booleano
- Valor:
true
- canvas
O objeto HTML DOM Canvas a ser usado.
Por padrão, o primeiro elemento canvas no documento será usado se nenhum for especificado.
- tipo:
HTMLCanvasElement
- Valor:
null
- executable
O nome do arquivo WASM sem a extensão. (Definido pelo processo de exportação do Editor Godot).
- tipo:
string
- Valor:
""
- mainPack
Um nome alternativo para o pck do jogo a ser carregado. Caso contrário, o nome do executável será usado.
- tipo:
string
- Valor:
null
- locale
Especifica um código de idioma para selecionar a localização apropriada para o jogo.
O local de navegação será usado se nenhum for especificado. Veja a lista completa de locais suportados.
- tipo:
string
- Valor:
null
- canvasResizePolicy
A política de redimensionamento do canvas determina como o canvas deve ser redimensionado pelo Godot.
0means Godot won't do any resizing. This is useful if you want to control the canvas size from JavaScript code in your template.1significa que o Godot redimensionará o canvas no início e ao alterar o tamanho da janela por meio de funções do motor.2significa que o Godot adaptará o tamanho do canvas para corresponder a toda a janela do navegador.- tipo:
número
- Valor:
2
- args
Os argumentos a serem passados como argumentos de linha de comando na inicialização.
Veja o tutorial de linha de comando.
Nota:
startGamesempre adicionará o argumento--main-pack.- tipo:
Matriz.<string>
- Valor:
[]
- onExecute(path, args)
Uma função de callback para lidar com chamadas
OS.executedo Godot.Isso é usado, por exemplo, no modelo do Editor Web para alternar entre o Gerenciador de Projetos e o editor, e para executar o jogo.
- Argumentos:
path (
string()) -- O caminho que o Godot deseja que seja executado.args (
Array.) -- Os argumentos do "comando" a ser executado.
- onExit(status_code)
Uma função de callback para ser notificado quando a instância do Godot for encerrada.
Nota: Esta função não será chamada se o motor travar ou parar de responder.
- Argumentos:
status_code (
number()) -- O código de status retornado pelo Godot ao sair.
- onProgress(current, total)
Uma função de callback para exibir o progresso do download.
A função é chamada uma vez por quadro durante o download dos arquivos, portanto, o uso de
requestAnimationFrame()não é necessário.Se a função de callback receber uma quantidade total de bytes igual a 0, isso significa que é impossível calcular. Os motivos possíveis incluem:
Os arquivos são entregues com compressão fragmentada do lado do servidor
Os arquivos são entregues com compactação do lado do servidor no Chromium
Nem todos os downloads de arquivos foram iniciados ainda (geralmente em servidores sem multi-threading)
- Argumentos:
current (
number()) -- A quantidade atual de bytes baixados até o momento.total (
number()) -- A quantidade total de bytes a serem baixados.
- onPrint([...var_args])
Uma função de callback para lidar com o fluxo de saída padrão (stdout). Este método geralmente só deve ser usado em páginas de depuração.
Por padrão,
console.log()é usado.- Argumentos:
var_args (
*()) -- Um número variado de argumentos a serem exibidos.
- onPrintError([...var_args])
Uma função de callback para lidar com o fluxo de erros padrão (stderr). Este método geralmente só deve ser usado em páginas de depuração.
Por padrão,
console.error()é usado.- Argumentos:
var_args (
*()) -- Um número variado de argumentos a serem exibidos como erros.