Commit Graph

16 Commits

Author SHA1 Message Date
Zaven Muradyan
61d5513525 Add comments to javascript wrapper parts.
The code in pre.js and engine.js is a bit confusing to see in isolation,
since the files aren't valid JS files by themselves. This just adds some
explanatory text to both files.

Fixes #22937.
2018-10-15 08:56:44 -07:00
Rémi Verschelde
a415efa4b7
Merge pull request #18765 from eska014/enginejs-extalt
Facilitate using non-default filename extensions in HTML5 platform
2018-05-10 21:57:07 +02:00
Leon Krause
96f907c023 Accept non-default main packs in engine.js startGame()
Allows using startGame() with main packs exported as .zip, but also any
other custom extension, for example if a web game host does not allow
the .pck filename extension.
2018-05-10 15:08:19 +02:00
Leon Krause
32eb3e1b7d Add Engine.setWebAssemblyFilenameExtension()
Some web game hosts only allow certain filename extensions. If .wasm is
not allowed, this function allows overriding the WebAssembly filename
extension to work around that restriction.
2018-05-10 14:50:34 +02:00
Leon Krause
9080e96bc8 Fix keyboard focus lock-out with HTML5 canvas in iframe 2018-05-10 02:42:47 +02:00
Leon Krause
3014e48ec5 Fix engine.js startGame() when loading from directory 2018-03-27 11:26:34 +02:00
Leon Krause
d373029382 Allow custom path when using engine.js preloadFile() with URL 2018-03-27 11:26:29 +02:00
Leon Krause
6f1bddf4b5 Fix engine.js preloadFile() with directories 2018-03-27 11:26:25 +02:00
Leon Krause
63c7fc6358 Expose Emscripten libs to engine.js discreetly 2018-03-27 09:12:08 +02:00
Leon Krause
e06a56eac8 Fix typo in engine.js 2018-03-16 15:40:00 +01:00
Leon Krause
61026e62bf Check only for WebGL 1.0, move test to HTML file
Whether to use WebGL 1.0 or 2.0 can only be determined at runtime after
reading project settings, so check for the lower version.

The test is now in the HTML file, so if desired WebGL 2.0 can be
checked early by changing the behaviour there.
2018-03-15 04:04:24 +01:00
Leon Krause
2dbf8251bc Initialize WebGL context in OS 2018-01-07 15:49:48 +01:00
Leon Krause
35adf718cf Change HTML5 start-up API
Rename engine.start() to startGame(), new start() takes string arguments
handed directly to main(). Rename Engine.loadEngine() to load().

Add setLocale(), setResizeCanvasOnStart(), setExecutableName() and
preloadFile().
2017-11-19 15:39:57 +01:00
Leon Krause
ddf21ca016 Remove asm.js support from HTML5 platform
Since WebGL 2.0 is required, requiring WebAssembly support as well has
little impact on compatibility.
2017-11-18 05:52:14 +01:00
Leon Krause
11ab7b6efc Use primary WebAssembly.instantiate overload
Previously WebAssembly.compile was used along with the secondary
WebAssembly.instantiate overload. Using only the primary overload is
recommended to get best performance.
2017-10-02 13:09:59 +02:00
Leon Krause
4db801aaea HTML5 start-up overhaul
- Implement promise-based JS interface for custom HTML page
   integration
 - Add download progress callback
 - Add progress bar and indeterminate spinner to default HTML page
 - Try downloading files multiple times when failing
 - Get rid of godotfs.js
 - Separate steps for engine initialization, game initialization and game
   start
 - Allow multiple games on one HTML page
 - Substitution placeholders only used in .html file
 - Placeholders renamed: $GODOT_BASE => $GODOT_BASENAME,
   $GODOT_TMEM -> $GODOT_TOTAL_MEMORY
 - Emscripten Module is now Engine.RuntimeEnvironment (no longer a global)
2017-09-11 20:56:29 +02:00