virtualx-engine/platform/javascript
Fabio Alessandrelli 4ed1d977fc [OS] Add ThreadWorkPool default size to OS.
Some platforms (*cough* web *cough*) have hard limits on the number of
threads that can be spawned.

Currently, ThreadPoolWork (mostly used in rendering/physics servers)
will spawn as many threads as CPUs available causing exception on
machines with high CPU count.

This commit adds a new overridable method to OS that returns the default
thread pool size (still the CPU count by default), and overrides it for
the JavaScript platform so it always allocate only one thread.

We can likely improve the whole ThreadPoolWork in the future to always
allocate X amount of threads, and assign jobs to them on the fly, but
that will require some more architectural changes.
2021-11-02 04:16:00 +01:00
..
api Merge pull request #52711 from m4gr3d/provide_getter_for_project_data_dir_master 2021-10-05 21:02:27 +02:00
export Fix new projects always being created with OpenGL 2021-11-01 22:04:36 +01:00
js [HTML5] Refactor JS library listeners to OS. 2021-10-05 14:15:07 +02:00
.eslintrc.engine.js [HTML5] Document Engine and EngineConfig (jsdoc). 2021-02-26 11:33:59 +01:00
.eslintrc.js HTML5: Fix minification error with Emscripten 1.39.9 2021-09-29 09:11:11 +02:00
.eslintrc.libs.js [HTML5] Refactor JS library listeners to OS. 2021-10-05 14:15:07 +02:00
audio_driver_javascript.cpp Fix some LGTM errors of "Multiplication result converted to larger type" 2021-10-12 00:17:27 -05:00
audio_driver_javascript.h [HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads. 2021-09-15 20:48:49 +02:00
detect.py SCons: Set DEBUG_ENABLED and DEV_ENABLED in SConstruct 2021-10-15 10:26:58 +02:00
display_server_javascript.cpp Use OpenGL 3.3 core profile instead of compatibility profile 2021-10-31 15:56:45 +01:00
display_server_javascript.h [HTML5] Implement window blur in JS library. 2021-10-05 14:15:07 +02:00
dom_keys.inc Use Key enum instead of plain integers 2021-08-10 16:26:55 -05:00
emscripten_helpers.py HTML5: Handle GODOT_VERSION_STATUS env var in @GODOT_VERSION@ 2021-08-19 15:01:30 +02:00
godot_audio.h [HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads. 2021-09-15 20:48:49 +02:00
godot_js.h [HTML5] Refactor display/input JS library code. 2021-10-05 14:15:07 +02:00
http_client_javascript.cpp [Net] Makes HTTPClient a custom instance class. 2021-06-23 14:10:45 +02:00
http_client_javascript.h [Net] Makes HTTPClient a custom instance class. 2021-06-23 14:10:45 +02:00
javascript_main.cpp Optimize StringName usage 2021-07-18 21:20:02 -03:00
javascript_runtime.cpp Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
javascript_singleton.cpp [HTML5] Fix JavaScript string parsing with new interface. 2021-07-07 15:44:29 +02:00
logo.png Optimize images losslessly using oxipng -o6 --strip all --zopfli 2019-10-12 23:23:33 +02:00
os_javascript.cpp [HTML5] Refactor audio drivers. Implement AudioWorklet w/o threads. 2021-09-15 20:48:49 +02:00
os_javascript.h [OS] Add ThreadWorkPool default size to OS. 2021-11-02 04:16:00 +01:00
package-lock.json JS: Bump ansi-regex version for linter 2021-10-22 23:35:51 +02:00
package.json [HTML5] Update eslint and jsdoc dependencies. 2021-06-14 13:42:03 +02:00
platform_config.h Update copyright statements to 2021 2021-01-01 20:19:21 +01:00
README.md Add logo attribution for Android, HTML5 and Linux platform icons 2021-09-11 19:34:10 +02:00
run_icon.png Optimize images losslessly using oxipng -o6 --strip all --zopfli 2018-06-28 19:17:41 +02:00
SCsub [HTML5] Implement mouse/touch/key events in JS library. 2021-10-05 14:15:07 +02:00

HTML5 platform port

This folder contains the C++ and JavaScript code for the HTML5/WebAssembly platform port, compiled using Emscripten.

It also contains a ESLint linting setup (see package.json).

See also misc/dist/html folder for files used by this platform such as the HTML5 shell.

Artwork license

logo.png and run_icon.png are licensed under Creative Commons Attribution 3.0 Unported per the HTML5 logo usage guidelines.