Commit graph

1003 commits

Author SHA1 Message Date
Sebastian Krzyszkowiak
6211dcbf57
precache glyphs in fonts 2019-01-13 18:19:44 +01:00
Sebastian Krzyszkowiak
ef77bedeae
clean up 2019-01-11 15:26:12 +01:00
Sebastian Krzyszkowiak
1334fc6b1d
fix a NULL pointer dereference in ResizeGamestates 2019-01-11 15:25:24 +01:00
Sebastian Krzyszkowiak
996c7e4d8e
FlacToOgg: fix and make more robust 2019-01-11 13:09:55 +01:00
Sebastian Krzyszkowiak
3da81d4388
cmake: fix Debug builds on Emscripten 2019-01-11 12:38:03 +01:00
Sebastian Krzyszkowiak
9006427278
clean up a duplicated framebuffer of the loading gamestate 2019-01-11 12:28:08 +01:00
Sebastian Krzyszkowiak
2333ff1187
emscripten: pause the mainloop during loading
Fixes blinks of a blank screen when async calls are made.
2019-01-11 02:34:22 +01:00
Sebastian Krzyszkowiak
08ee8f142c
loading screen drawing tweaks 2019-01-11 02:33:48 +01:00
Sebastian Krzyszkowiak
0d32d00890
emscripten: detach/attach the voice during loading
Should prevent audio artifacts when the browser is busy...

...when Emscripten gets it fixed, that is :P
2019-01-11 02:33:17 +01:00
Sebastian Krzyszkowiak
f5ce67e6cb
emscripten: export Gamestate_ProgressCount
Turns out there's no other way to export a variable.
Fixes wrong values in the progress bar.
2019-01-11 02:31:43 +01:00
Sebastian Krzyszkowiak
f5604b95fb
emscripten: output wasm submodules to .wasm.so files, so preload plugins can find them 2019-01-10 06:31:28 +01:00
Sebastian Krzyszkowiak
fe9b6f5384
emscripten: use __attribute__(used) in code instead of EXPORTED_FUNCTIONS in cmake 2019-01-10 06:04:29 +01:00
Sebastian Krzyszkowiak
871cdf115e
emscripten: fix a crash when onvisibilitychange fired during loading 2019-01-10 06:03:57 +01:00
Sebastian Krzyszkowiak
8c7068b48d
PrintConsole: use emscripten_log; don't use printf on Android and Emscripten; unify outputs 2019-01-10 02:32:23 +01:00
Sebastian Krzyszkowiak
d55fbebe4d
add more drawing (and sleeping in emscripten) to improve responsiveness around loading 2019-01-08 05:21:41 +01:00
Sebastian Krzyszkowiak
f07b075052
emscripten: install a callback for visibility changes
Fixes an issue where focus blur event was being dispatched only after
the game has been focused again.
2019-01-08 04:57:30 +01:00
Sebastian Krzyszkowiak
2ad77b071f
move autopause feature out of debug events 2019-01-08 04:54:53 +01:00
Sebastian Krzyszkowiak
d0316cd789
don't use timer for ticking; rely on delta instead
Timer was causing an infinite loop in cases where ticking took
more time than 1/60 sec.
2019-01-08 04:53:13 +01:00
Sebastian Krzyszkowiak
8d4ee68936
emscripten: drop STRICT=1 flag, it breaks when SDL2 is self-built 2019-01-08 03:32:49 +01:00
Sebastian Krzyszkowiak
f648d661e6
emscripten: set ALLEGRO_NO_PRESERVE_TEXTURE
Doesn't seem to break anything there despite of using SDL2 backend.
2019-01-07 00:40:01 +01:00
Sebastian Krzyszkowiak
fdb4a29a13
emscripten_seek_audio_stream_secs: return end position after the sample has ended
Samples in Allegro return 0.0 in this case, while streams return the stream length.
2019-01-07 00:39:06 +01:00
Sebastian Krzyszkowiak
5fb99a97f8
emscripten: revise compiler settings and add a pre-js file with audio autoplay workaround 2019-01-07 00:37:34 +01:00
Sebastian Krzyszkowiak
f357d75591
emscripten: use emterpreter for displaying loading screen 2019-01-03 23:22:26 +01:00
Sebastian Krzyszkowiak
7d9adc8d14
emscripten: fix a typo in al_get_audio_stream_length_secs stub 2019-01-03 06:57:26 +01:00
Sebastian Krzyszkowiak
dbd047c64e
emscripten: force fullscreen as off on init 2018-12-22 02:21:46 +01:00
Sebastian Krzyszkowiak
116d190876
cmake: update emscripten flags 2018-12-22 02:17:57 +01:00
Sebastian Krzyszkowiak
d1f98ba267
cmake: require 3.6
This is the lowest version of CMake used by our toolchains now.
2018-12-22 02:16:58 +01:00
Sebastian Krzyszkowiak
cb0f4f6ba7
audio: always try INT16 depth first and use FLOAT32 as a fallback 2018-12-18 20:32:09 +01:00
Sebastian Krzyszkowiak
6e69d5410e
fix building with LIBSUPERDERPY_SINGLE_THREAD 2018-12-18 14:34:27 +01:00
Sebastian Krzyszkowiak
93db442e7b
cmake: disable LTO on MinGW
Crashes the compiler on my machine for some reason.
2018-12-18 14:34:10 +01:00
Sebastian Krzyszkowiak
1b9b16cf15
more member name cleanup 2018-12-18 14:29:48 +01:00
Sebastian Krzyszkowiak
492aa79a6b
cmake: enable -fstack-protector (all builds) and _FORTIFY_SOURCE=2 (release/relwithdebinfo)
_FORTIFY_SOURCE can't be used together with ASan, so it's not enabled for debug builds
2018-12-18 13:58:37 +01:00
Sebastian Krzyszkowiak
d20363e244
cmake: enable link time optimizations 2018-12-18 13:19:58 +01:00
Sebastian Krzyszkowiak
db096e7e97
GetDataFilePath: add "maemo5" directory handling similar to what's already done for android 2018-12-18 13:19:16 +01:00
Sebastian Krzyszkowiak
7cdcb7475a
cmake: set and use LIBSUPERDERPY_DIR variable 2018-12-18 13:18:52 +01:00
Sebastian Krzyszkowiak
4da588cbb2
API consistency tweaks 2018-12-16 15:35:53 +01:00
Sebastian Krzyszkowiak
df1790d242
doxygen tweaks 2018-12-16 15:15:38 +01:00
Sebastian Krzyszkowiak
09e6b321b6
streamline the ability to access internal fields a bit 2018-12-15 05:29:32 +01:00
Sebastian Krzyszkowiak
b9b231a438
put debug config into public config struct 2018-12-15 01:09:44 +01:00
Sebastian Krzyszkowiak
ce66ba8060
reorganize Game structure, deprecate access to _priv fields 2018-12-15 00:59:34 +01:00
Sebastian Krzyszkowiak
23b11b1a5b
cmake: don't set -fsanitize-recover=all, and set other args only when specific sanitizers are requested 2018-12-14 02:26:46 +01:00
Sebastian Krzyszkowiak
d8f975300d
PrintConsole/DrawConsole: guard console data usage with mutexes 2018-12-14 02:18:05 +01:00
Sebastian Krzyszkowiak
edb87bc2fc
cmake: make sanitizer options more streamlined and configurable 2018-12-14 02:17:27 +01:00
Sebastian Krzyszkowiak
4f438400fb
TestDataFilePath: accomodate also QtCreator's build directories 2018-12-13 03:56:23 +01:00
Sebastian Krzyszkowiak
48516aa38c
cmake: enable asan and ubsan on GCC
On Clang it doesn't like -Wl,--no-undefined option, which I don't
really want to disable.
2018-12-13 03:55:17 +01:00
Sebastian Krzyszkowiak
fe23d33273
character: support advanced atlases in spritesheets 2018-12-12 01:46:16 +01:00
Sebastian Krzyszkowiak
f1933fc7ba
GetDataFilePath: support launching straight from the build directory 2018-12-11 01:20:57 +01:00
Sebastian Krzyszkowiak
ee058b439a
more warnings fixed 2018-12-11 00:54:43 +01:00
Sebastian Krzyszkowiak
5fcb55591c
fix cppcheck warnings 2018-12-11 00:26:51 +01:00
Sebastian Krzyszkowiak
d17a927a82
tween: add HasTweenEnded function 2018-12-10 21:24:59 +01:00