Sebastian Krzyszkowiak
|
f701df6100
|
imgui: fix clang-analyzer warnings
|
2019-06-06 02:49:52 +02:00 |
|
Sebastian Krzyszkowiak
|
0f3a5ca25e
|
character: add RegisterSpritesheetFromBitmap helper
|
2019-06-03 03:43:35 +02:00 |
|
Sebastian Krzyszkowiak
|
b0ec8ef683
|
imgui: synchronize platform code with upstream allegro5 example
|
2019-05-31 02:52:29 +02:00 |
|
Sebastian Krzyszkowiak
|
7ade9ee1aa
|
3rdparty: use cimgui with patched version of imgui to fix building for Nintendo Switch
|
2019-05-31 01:47:00 +02:00 |
|
Sebastian Krzyszkowiak
|
afc60d96d0
|
cmake: adjust order of dependencies to link with
The order is important when linking statically.
|
2019-05-31 01:26:39 +02:00 |
|
Sebastian Krzyszkowiak
|
c6ef4a6199
|
support static linking the whole game into one binary
|
2019-05-17 02:31:17 +02:00 |
|
Sebastian Krzyszkowiak
|
c724a490fb
|
formal Pocket C.H.I.P support
|
2019-05-13 23:51:07 +02:00 |
|
Sebastian Krzyszkowiak
|
3b3253ab6f
|
move freeing the gamestate's name outside of CloseGamestate
...and fixup the last commit
|
2019-05-11 00:44:45 +02:00 |
|
Sebastian Krzyszkowiak
|
6e8670bf12
|
fix a memory leak happening when there's no loading gamestate registered
|
2019-05-11 00:05:40 +02:00 |
|
Sebastian Krzyszkowiak
|
2b3a2e3d72
|
fix a potential division by zero in GetDefaultWindow(Width|Height)
|
2019-05-10 23:42:35 +02:00 |
|
Sebastian Krzyszkowiak
|
a4147d2e61
|
character: transparently support ImgToWebp scaling factor
|
2019-05-06 04:06:58 +02:00 |
|
Sebastian Krzyszkowiak
|
7c94d31d66
|
call al_unref_user_event in event loop on user events
|
2019-05-05 04:24:30 +02:00 |
|
Sebastian Krzyszkowiak
|
29f9484a6b
|
cmake: don't install libsuperderpy library when it's being built as a static lib
|
2019-04-30 00:23:37 +02:00 |
|
Sebastian Krzyszkowiak
|
264ef2b86d
|
cmake: link to allegro-color addon
|
2019-04-29 13:17:56 +02:00 |
|
Sebastian Krzyszkowiak
|
c480289123
|
cmake: rework asset compression pipeline a bit
|
2019-04-29 03:11:55 +02:00 |
|
Sebastian Krzyszkowiak
|
ddfe7cc50a
|
properly unset default mixer on engine destroy
fixes a segfault/broken assertion that could happen right before quiting
|
2019-04-22 01:34:53 +02:00 |
|
Sebastian Krzyszkowiak
|
26089d86e6
|
move SUPPRESS_WARNING macros to public header
|
2019-04-21 15:46:03 +02:00 |
|
Sebastian Krzyszkowiak
|
d93e1a1aca
|
imgui: scale the whole UI by factor from configuration
|
2019-04-07 23:26:54 +02:00 |
|
Sebastian Krzyszkowiak
|
6aedf685b6
|
update imgui to 1.69
|
2019-04-06 20:45:32 +02:00 |
|
Sebastian Krzyszkowiak
|
472ed0a1b4
|
timeline: fine-tune semantics and fix bugs shown by tests
|
2019-04-03 03:00:14 +02:00 |
|
Sebastian Krzyszkowiak
|
1e7fe215c4
|
timeline: gracefullly handle out of bounds indexes in TM_GetArg
|
2019-03-30 04:06:40 +01:00 |
|
Sebastian Krzyszkowiak
|
9706f61116
|
don't abort when there's no loading screen available
|
2019-03-30 03:34:55 +01:00 |
|
Sebastian Krzyszkowiak
|
44bee57f55
|
fix an endless loop on platforms where "char" is unsigned by default
|
2019-03-30 00:26:21 +01:00 |
|
Sebastian Krzyszkowiak
|
834b1028f5
|
support a case where width, height and ratio in params are all zeros
|
2019-03-29 21:26:25 +01:00 |
|
Sebastian Krzyszkowiak
|
deb38e778c
|
don't fail on missing icon file
|
2019-03-29 20:54:14 +01:00 |
|
Sebastian Krzyszkowiak
|
db0d8da708
|
utils: add FindDataFilePath, which just returns NULL on failure
|
2019-03-29 20:53:45 +01:00 |
|
Sebastian Krzyszkowiak
|
993e9884e6
|
adjust to clang-tidy 8.0
|
2019-03-29 03:24:36 +01:00 |
|
Sebastian Krzyszkowiak
|
d54b311a3c
|
fix a case where SetupViewport wasn't called when it should after a display resize
|
2019-03-28 16:58:15 +01:00 |
|
Sebastian Krzyszkowiak
|
a309b8cb2b
|
support a command line switch "--debug" (or "-d") to enable debug mode
|
2019-03-28 15:33:21 +01:00 |
|
Sebastian Krzyszkowiak
|
6d7007b39e
|
don't rely on the game name string pointer to be valid for a whole lifetime
|
2019-03-28 15:25:37 +01:00 |
|
Sebastian Krzyszkowiak
|
cdc99444e0
|
fix clang-analyzer warnings and reformat
|
2019-03-26 04:31:24 +01:00 |
|
Sebastian Krzyszkowiak
|
1350fe9437
|
timeline: use floating-point seconds instead of integer miliseconds for delays in API
|
2019-03-16 01:58:28 +01:00 |
|
Sebastian Krzyszkowiak
|
6e07719beb
|
timeline: add STOP action state
|
2019-03-16 01:44:02 +01:00 |
|
Sebastian Krzyszkowiak
|
52e128ed28
|
make sure to clear the screen completely on initial flips
|
2019-03-12 15:16:50 +01:00 |
|
Sebastian Krzyszkowiak
|
6899ea5f52
|
resize event handling tweaks
Fixes Android and somehow optimizes resizing with lots of gamestates
|
2019-03-09 03:18:42 +01:00 |
|
Sebastian Krzyszkowiak
|
f375b6f0b1
|
use 48kHz as a default audio sample rate
|
2019-03-05 03:48:39 +01:00 |
|
Sebastian Krzyszkowiak
|
5a6e212de1
|
make sure to redraw the gamestates after a resize
Also affects compositor toggling
|
2019-03-05 03:48:11 +01:00 |
|
Sebastian Krzyszkowiak
|
c7ebc51f16
|
move SetupViewport to internal functions
|
2019-03-05 03:42:59 +01:00 |
|
Sebastian Krzyszkowiak
|
151e11d371
|
utils: add ToggleFullscreen and ToggleMute
|
2019-03-05 03:42:25 +01:00 |
|
Sebastian Krzyszkowiak
|
c93c22cf04
|
make Gamestate structure private and add API for accessing it
|
2019-03-05 03:20:06 +01:00 |
|
Sebastian Krzyszkowiak
|
ae9cf19778
|
utils: Push/PopTransform functions for easier transforming
|
2019-02-26 18:14:19 +01:00 |
|
Sebastian Krzyszkowiak
|
b84727bff0
|
utils: add transform-aware clipping rectangle functions
|
2019-02-26 01:59:49 +01:00 |
|
Sebastian Krzyszkowiak
|
43c830bf99
|
drop "libsuperderpy-" prefix from game-specific shared libraries
|
2019-02-26 01:42:16 +01:00 |
|
Sebastian Krzyszkowiak
|
d05e683171
|
add a hack for window size correction at launch
|
2019-02-24 04:20:36 +01:00 |
|
Sebastian Krzyszkowiak
|
c80a3c5717
|
report Allegro version and better format the OpenGL version
|
2019-02-23 13:36:27 +01:00 |
|
Sebastian Krzyszkowiak
|
7c89ef74e2
|
don't react to ALLEGRO_EVENT_DISPLAY_RESIZE if the new size is the same as the old one
|
2019-02-19 03:49:53 +01:00 |
|
Sebastian Krzyszkowiak
|
199ad64bac
|
ReloadGamestates: also reload loading gamestate
|
2019-02-14 05:35:17 +01:00 |
|
Sebastian Krzyszkowiak
|
0ba9c7bbae
|
move first al_flip_display() way earlier
|
2019-02-13 23:00:33 +01:00 |
|
Sebastian Krzyszkowiak
|
f8306f80c1
|
ReloadShaders: actually don't reload already loaded stuff unless forced
|
2019-02-13 22:59:45 +01:00 |
|
Sebastian Krzyszkowiak
|
d9dd73bfc8
|
make sure shaders are loaded in-between Load and PostLoad calls + call PostLoad for loading
|
2019-02-13 22:59:11 +01:00 |
|
Sebastian Krzyszkowiak
|
886034e596
|
use ALLEGRO_NO_PRESERVE_TEXTURE on SDL2
seems there's no reason not to; it even fixes some stuff
|
2019-02-13 22:54:49 +01:00 |
|
Sebastian Krzyszkowiak
|
26a32fd083
|
destroy and recreate voice on suspend and resume
|
2019-02-07 04:11:40 +01:00 |
|
Sebastian Krzyszkowiak
|
9e0a1ddb36
|
IsOnCharacter: properly support subbitmaps (for instance spritesheets)
|
2019-02-01 05:45:26 +01:00 |
|
Sebastian Krzyszkowiak
|
10164293ba
|
add ability to enable multisampling via init params
|
2019-02-01 03:37:15 +01:00 |
|
Sebastian Krzyszkowiak
|
45d36870ad
|
PrintConsole: print current time when in verbose mode
|
2019-01-17 02:42:33 +01:00 |
|
Sebastian Krzyszkowiak
|
a6b6062be4
|
recompress flac to opus and images to lossy webp for emscripten and android builds, with asset cache
|
2019-01-13 18:45:17 +01:00 |
|
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
|
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
|
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
|
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
|
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
|
1b9b16cf15
|
more member name cleanup
|
2018-12-18 14:29:48 +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
|
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
|
d8f975300d
|
PrintConsole/DrawConsole: guard console data usage with mutexes
|
2018-12-14 02:18:05 +01:00 |
|
Sebastian Krzyszkowiak
|
4f438400fb
|
TestDataFilePath: accomodate also QtCreator's build directories
|
2018-12-13 03:56:23 +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 |
|
Sebastian Krzyszkowiak
|
f82dc24a88
|
don't use warning suppression on Maemo
"#pragma GCC diagnostic not allowed inside functions"
|
2018-12-08 06:27:51 +01:00 |
|
Sebastian Krzyszkowiak
|
b737d64ce8
|
improve SUPPRESS_WARNING macro
|
2018-12-08 05:50:27 +01:00 |
|
Sebastian Krzyszkowiak
|
d42955789c
|
clean up cmake files and import include templates into the engine
|
2018-12-08 03:30:09 +01:00 |
|
Sebastian Krzyszkowiak
|
37bf1ca1c6
|
particle: remove the destructor concept from FaderParticle, it's unnecessary
|
2018-12-07 07:11:18 +01:00 |
|
Sebastian Krzyszkowiak
|
3faa50165c
|
update imgui and clean up the allegro5 impl
|
2018-12-07 07:11:00 +01:00 |
|
Sebastian Krzyszkowiak
|
ad26fe14ad
|
add a separate flag to indicate that the loading screen is being shown
|
2018-12-07 06:14:52 +01:00 |
|
Sebastian Krzyszkowiak
|
0ebb85a660
|
make audio sample rate configurable
|
2018-12-06 05:37:51 +01:00 |
|