Sebastian Krzyszkowiak
f42fca2606
android: Target API 30
2021-07-19 01:57:31 +02:00
Sebastian Krzyszkowiak
ca023d6296
android: Update Gradle to 5.0
...
This brings OpenJDK 11 support in.
2021-07-19 01:56:54 +02:00
Sebastian Krzyszkowiak
446a63693a
Allow to set game window's background (clear) color
2021-07-18 02:11:02 +02:00
Sebastian Krzyszkowiak
d26adecc8e
SetFramebufferAsTarget: Avoid re-setting the same target bitmap
2020-11-11 02:07:28 +01:00
Sebastian Krzyszkowiak
86fef86257
ClearToColor: Avoid re-setting the same target bitmap
2020-11-07 21:38:05 +01:00
Sebastian Krzyszkowiak
4eb91e2f32
params: Add a param to force disable autopause
...
Useful if a game doesn't work well with autopause, of if it's not wanted
due to its nature.
2020-11-07 06:27:11 +01:00
Sebastian Krzyszkowiak
c235d53f1d
Enable autopause by default
...
...and disable live reload, which depends on autopause to work.
2020-11-07 06:26:10 +01:00
Sebastian Krzyszkowiak
ef22a0931f
params: Improve comments and member names
2020-11-07 06:25:25 +01:00
Sebastian Krzyszkowiak
6f22f54f5d
mainloop: React to expose events when the engine is paused
...
When the engine is paused, it doesn't redraw the window content anymore.
On uncomposited environments, this means that the window content can be
lost. Enable expose events and react to them when the engine is paused
(if it's not, the whole window will be repainted soon anyway, so we can
ignore them).
2020-11-07 06:24:28 +01:00
Sebastian Krzyszkowiak
f5eb7b088b
PauseExecution: Redraw the screen after pausing
...
This makes the final console messages visible in the window.
2020-11-07 06:24:27 +01:00
Sebastian Krzyszkowiak
c94acb7fc3
internal: Add RedrawScreen function
2020-11-07 06:24:27 +01:00
Sebastian Krzyszkowiak
d25d7ee5b9
cmake: Fix Allegro include path in embedded Allegro mode
2020-08-18 01:34:37 +02:00
Sebastian Krzyszkowiak
80044b91e3
emscripten: Attach the blur event to window, not document
...
Fixes blur event handling in Blink.
2020-05-11 16:53:04 +02:00
Sebastian Krzyszkowiak
7f8e3b9641
emscripten: Add _main to the list of emterpreted functions
...
This allows to use emscripten_sleep from main.
This also disables an infinite loop emulation in the mainloop, as
emterpreter doesn't catch its exception and we don't really need it
anyway.
2020-05-10 20:56:41 +02:00
Sebastian Krzyszkowiak
55692916e3
emscripten: Check whether window has focus at engine start
2020-05-10 18:52:28 +02:00
Sebastian Krzyszkowiak
8b9c9e5541
emscripten: Listen to "blur" instead of "visibilitychange" event to react to focus change
2020-05-10 18:52:01 +02:00
Sebastian Krzyszkowiak
92d9f1c1bf
cmake: Rework LTO support under emscripten
2020-05-10 18:06:58 +02:00
Sebastian Krzyszkowiak
6b6566d7e4
emscripten: Fix and re-enable dead code elimination by default
2020-05-10 16:57:38 +02:00
Sebastian Krzyszkowiak
bf73da41e6
Update README
2020-05-10 16:55:58 +02:00
Sebastian Krzyszkowiak
6c56bb36b9
emscripten: Destroy and recreate audio voice when in loading routines
...
This prevents awful audio stuttering in Blink based browsers.
2020-05-10 03:01:33 +02:00
Sebastian Krzyszkowiak
e4925f2ecb
cmake: emscripten: Remove --lz4 option
...
It doesn't do anything anyway - it should be -s LZ4=1. However, enabling
lz4 compression breaks preload plugins, which we rely on for asynchronous
WebAssembly compilation of gamestate modules.
2020-05-09 04:37:46 +02:00
Sebastian Krzyszkowiak
c78fead9c5
cmake: emscripten: Enable LTO across modules
...
Appears to work fine from initial testing.
2020-05-09 03:59:13 +02:00
Sebastian Krzyszkowiak
f45abe337c
cmake: emscripten: Pass --emit-symbol-map to the compiler
2020-05-09 03:57:55 +02:00
Sebastian Krzyszkowiak
d71f892140
cmake: emscripten: Use -O3 instead of -Oz in release builds
...
Oz can cause performance hits, and the size savings aren't that big in our
case to be worth it.
2020-05-09 03:57:18 +02:00
Sebastian Krzyszkowiak
50c8049c13
cmake: emscripten: Enable assertions in debug builds
2020-05-09 03:56:26 +02:00
Sebastian Krzyszkowiak
31de1a7d08
cmake: Don't look for Allegro addons on Emscripten
...
We're putting all addons into one object file there.
2020-04-25 19:40:25 +02:00
Sebastian Krzyszkowiak
312ff915f6
Fix warnings reported by clang-tidy
2020-04-25 19:28:47 +02:00
Sebastian Krzyszkowiak
4336b707c5
cmake: Make the variable names match the module name in Allegro packages
2020-04-25 19:28:26 +02:00
Sebastian Krzyszkowiak
0981175a78
Clean up global speed handling and add GetGameSpeed API function
2020-04-19 07:40:39 +02:00
Sebastian Krzyszkowiak
9a2f26c609
Reset getopt state when parsing arguments
...
This lets the application parse some arguments itself.
2020-04-11 00:10:42 +02:00
Sebastian Krzyszkowiak
4fd703f821
emscripten: Don't use WebGL2 contexts by default
...
The only thing it usually brings us is support for bigger texture sizes.
Games that rely on that can enable WebGL2 explicitly.
2020-04-09 05:58:24 +02:00
Sebastian Krzyszkowiak
4980be9e32
utils: BSOD: String tweak
2020-04-04 04:47:54 +02:00
Sebastian Krzyszkowiak
2e15e4d8dc
Use al_store_state and al_restore_state when dealing with threads
...
This lets the active Allegro file interface to be used by the new thread.
2020-04-04 04:47:10 +02:00
Sebastian Krzyszkowiak
5f7c0ff18f
cmake: Put data files into /data directory on emulated emscripten filesystem
2020-04-04 04:45:53 +02:00
Sebastian Krzyszkowiak
e0192420f6
cmake: Add DATA_EXCLUDE_REGEX variable to configure exclusions in data dir installation
2020-03-22 07:49:54 +01:00
Sebastian Krzyszkowiak
6d6112e12e
defines: Add LIBSUPERDERPY_VENDOR to defined variables
2020-03-20 06:00:41 +01:00
Sebastian Krzyszkowiak
5f4f5bafaf
character: Pass current frame number to animation stream callback
...
Without that there's no way to restart an already running animation.
2020-03-19 04:29:33 +01:00
Sebastian Krzyszkowiak
5476be3631
libsuperderpy: Fix compilation failure when using mouse emulation mode
2020-03-19 02:46:25 +01:00
Sebastian Krzyszkowiak
21f7424f89
character: Take ownership of frame bitmaps when preloading streamed spritesheets
...
Since a non-owned frame is valid only until the next invocation of
stream callback, we need to clone it and take ownership.
2020-03-19 02:45:22 +01:00
Sebastian Krzyszkowiak
7cb7c361f0
character: Add ability for a streamed frame bitmap to be owned by API user
...
In such case we won't try to free it.
2020-03-18 06:16:34 +01:00
Sebastian Krzyszkowiak
79bcc96d9b
config: Use localStorage on Emscripten
2020-03-13 03:21:26 +01:00
Sebastian Krzyszkowiak
58f97730db
config: Add DeleteConfigOption function
2020-03-13 03:21:10 +01:00
Sebastian Krzyszkowiak
e57db1d127
Update 3rdparty submodules
2020-03-09 04:07:47 +01:00
Sebastian Krzyszkowiak
d753279764
emscripten-pre-js: remove autoplay workaround
...
It didn't work with recent emscripten versions anyway. A better fix
is coming to emscripten's SDL port.
2020-03-02 03:23:01 +01:00
Sebastian Krzyszkowiak
4fe091d93c
particle: explicitly cast RAND_MAX to float
...
This silences a warning in clang-11
2020-03-01 23:45:42 +01:00
Sebastian Krzyszkowiak
b592a3382f
character: use calloc instead of malloc
2020-01-16 03:02:44 +01:00
Sebastian Krzyszkowiak
11c49a786d
character: fix unset scale when using RegisterSpritesheetFromBitmap
2020-01-16 03:01:58 +01:00
Sebastian Krzyszkowiak
cddb35dd95
emscripten: enable GNU extensions
...
They're needed for some features like EM_ASM
2019-12-10 03:21:22 +01:00
Sebastian Krzyszkowiak
2adbb131e6
emscripten-audio-stream: resume stream from correct position after pausing
2019-12-09 02:50:59 +01:00
Sebastian Krzyszkowiak
4a0e7a77cc
emscripten: enable -Oz size optimization in release modes
2019-12-09 02:03:06 +01:00