Commit graph

1394 commits

Author SHA1 Message Date
Clownacy
6456649e11 Pre-process audio in the software mixer
This should improve performance slightly
2020-04-06 19:52:53 +01:00
Clownacy
5daea02ac6 Change the audio backend API
Removes locking and unlocking: instead, samples are passed to Create.
2020-04-06 19:44:45 +01:00
Clownacy
40d0cf14f1 Remove invalid comments
These issues are fixed in this branch
2020-04-06 13:57:54 +01:00
Clownacy
12e4be58ac
Merge pull request #101 from GabrielRavier/fixPortableBugs2
Fixed a bunch of npc->cond = 0 bugs
2020-04-06 13:55:58 +01:00
Clownacy
10f389b52e Merge branch 'accurate' into portable 2020-04-06 13:53:22 +01:00
Clownacy
ae66ede214
Merge pull request #105 from GabrielRavier/accuratePortableBugs2SisterPR
Noted a bunch of npc->cond = 0 bugs and gTS.data-related crashes
2020-04-06 13:51:52 +01:00
Clownacy
9fd95e720c Whoops, remove a leftover std:: 2020-04-06 13:49:57 +01:00
Clownacy
ba9ccec945 Change double to float
A quick test with godbolt shows this produces smaller (and presumably
faster) code.
2020-04-06 13:48:44 +01:00
Clownacy
545948584a Different optimisation for software-mixer
`trunc` can resolve to a library call, while a cast-to-int doesn't
appear to. Since the mixer already does a cast-to-int when retrieving
samples, I can kill two birds with one stone.
2020-04-06 13:40:39 +01:00
Clownacy
1016411fa4 Cleanup 2020-04-06 13:37:53 +01:00
Gabriel Ravier
81e3259535 Backends/Audio/SoftwareMixer: Optimized fmod(x, 1.0) to x - trunc(x)
Signed-off-by: Gabriel Ravier <gabravier@gmail.com>
2020-04-05 23:04:59 +02:00
Gabriel Ravier
1cf4200051 Merge branch 'portable' into improvePerformance2 2020-04-05 19:33:13 +02:00
Clownacy
fbf9332c9a Fix compiler error with DEBUG_SAVE enabled 2020-04-05 18:25:35 +01:00
Clownacy
bcd883e767 Fix weird buzzing in the software mixer
Not really sure why this causes it, but apparently it does.
2020-04-05 18:17:38 +01:00
Clownacy
eaef25d5da Change how backend keyboard status stuff works 2020-04-05 13:26:08 +01:00
Clownacy
aef0f81f28 Offload keyboard tracker to the engine
Centralising it in the backend breaks the enhanced branch's rebinding
menu.
2020-04-05 04:31:11 +01:00
Clownacy
d62ca286f6 Merge branch 'accurate' into portable 2020-04-05 04:18:02 +01:00
Clownacy
f75859b759 Change constant ordering
This was bugging the hell out of me
2020-04-05 03:35:43 +01:00
Clownacy
393359e63f Add some sanity checks 2020-04-05 03:27:04 +01:00
Clownacy
80091c4be5 Simplify some logic 2020-04-05 03:25:58 +01:00
Clownacy
b6398c58b4 Disable GLFW hats in <3.3
Doesn't exist - causes Travis to fail
2020-04-05 03:24:55 +01:00
Clownacy
ee1e7aed11 Fix unfreed memory 2020-04-05 00:58:56 +01:00
Clownacy
67765fd0ad Fix 2020-04-05 00:54:45 +01:00
Clownacy
26de0b6043 Improve the SDL2 controller backend too 2020-04-05 00:31:17 +01:00
Clownacy
c187660904 Hat cleanup 2020-04-05 00:20:41 +01:00
Clownacy
8fdaea5d8b More cleanup and fixes 2020-04-05 00:16:19 +01:00
Gabriel Ravier
1d9048c8a6 Merge branch 'portable' into improvePerformance2
# Conflicts:
#	src/Backends/Rendering/Software.cpp
2020-04-05 01:16:09 +02:00
Clownacy
6bb240d335 Fixes 2020-04-05 00:11:52 +01:00
Clownacy
e0674d8f54 Restore support for joystick axes neutrals
These are useful for PS3 analogue triggers, which are -1.0f by
default, and go up to 1.0f when pressed.
2020-04-05 00:08:29 +01:00
Clownacy
ac533cb35e Add support to the GLFW3 backends as well
Also fix the SDL2 backend wow
2020-04-04 23:22:22 +01:00
Clownacy
08bd2e1e78 Cleanup 2020-04-04 22:57:32 +01:00
Clownacy
2aeda93aeb SDL2 controller backend - support axes and hats
These are now mapped to buttons - will have more of a use in the
enhanced branch.
2020-04-04 22:54:58 +01:00
Clownacy
7c729af36f Add a comment 2020-04-04 20:58:12 +01:00
Clownacy
6ea58290f4 Set SDL2 audio backend to 48000Hz 2020-04-04 20:57:34 +01:00
Clownacy
b3e40b0475 Fix SDL2 audio backend 2020-04-04 20:52:24 +01:00
Clownacy
1ae63bea96 Move window ownership to the window backend 2020-04-04 20:51:07 +01:00
Clownacy
cdd69496c4 Fixes 2020-04-04 20:34:51 +01:00
Clownacy
135035bb1a Change 'PlatformBackend' namespace to 'Backend' 2020-04-04 20:31:27 +01:00
Clownacy
daf5d3cc7e Add missing file 2020-04-04 20:25:12 +01:00
Clownacy
4d322be866 Change render backend namespace to RenderBackend_ 2020-04-04 20:24:34 +01:00
Clownacy
8acdcface4 Update CMakeLists.txt 2020-04-04 19:56:57 +01:00
Clownacy
4568d58c77 Cleanup 2020-04-04 19:53:16 +01:00
Clownacy
65325e2b34 Add hotplugging support to SDL2 backend 2020-04-04 19:50:52 +01:00
Clownacy
87e8a75df4 Rename GLFW3.h/SDL2.h 2020-04-04 19:18:46 +01:00
Clownacy
7f6574117d Clean-up SDL2 controller backend 2020-04-04 19:14:40 +01:00
Clownacy
e00ad1cd78 Shuffle code 2020-04-04 19:04:56 +01:00
Clownacy
d957c40649 Fix bug 2020-04-04 19:04:20 +01:00
Clownacy
659f89ea85 Cleanup and proper deinitialisation 2020-04-04 19:03:19 +01:00
Clownacy
e874b75357 Comment GLFW3 code, restore some vanilla behaviour 2020-04-04 18:55:44 +01:00
Clownacy
0cf1a781b7 Add hotplugging support to the GLFW3 backend
The GLFW windowing backend supports window-resizing, so I don't think
it's wrong to add enhancements to the backend code. It's not like the
SDL2 backend emulates DirectDraw's unstable framerate or anything.
2020-04-04 18:38:56 +01:00