Fixes #81758 DisplayServerWeb::process_joypads handles buttons 6 and 7 of the HTML5 Standard Gamepad as a special case by doing: `input->joy_axis(idx, (JoyAxis)b, s_btns[b]);` This doesn't work because there is no JoyAxis 6 or 7 in the enum To fix this we use JoyAxis::TRIGGER_LEFT and TRIGGER_RIGHT for button 6 and 7 However since we are now lying to input->joy_axis we also need to lie in the mappings for the standard gamepad in godotcontrollersdb.txt, otherwise input->joy_axis will try to find a mapping to axis 4(LT) and axis 5(RT) that's not defined. Therefore we set lefttrigger to +a4 and righttrigger to +a5 in the mapping, to match what we are actually sending. A cleaner, and more involved fix to this would be modifying input->joy_button so that it can handle analog buttons and map them to axes preserving their value instead of converting to boolean
Web platform port
This folder contains the C++ and JavaScript code for the Web platform port, compiled using Emscripten.
It also contains a ESLint linting setup (see package.json).
See also misc/dist/html folder for additional files used by
this platform such as the html shell (web page).
Documentation
- Compiling for the Web
- Instructions on building this platform port from source.
- Exporting for the Web
- Instructions on using the compiled export templates to export a project.
Artwork license
logo.png and run_icon.png are licensed under
Creative Commons Attribution 3.0 Unported
per the HTML5 logo usage guidelines.