Clownacy
b274c3af6a
Fix window icon in Windows builds
2020-01-23 12:29:22 +00:00
Clownacy
78b41a5ced
Merge branch 'accurate' into portable
2020-01-23 01:50:42 +00:00
Clownacy
0237844e14
Actually, this fix doesn't seem right
2020-01-23 01:50:03 +00:00
Clownacy
e8edc42d07
Merge branch 'accurate' into portable
2020-01-23 01:37:03 +00:00
Clownacy
4091d152ee
Minor style tweak
2020-01-23 01:36:19 +00:00
Clownacy
a65c4bc1e3
Added bugfix to Organya
2020-01-23 01:34:55 +00:00
Clownacy
1fe73f9aab
Explicitly compare pointers in Font.cpp to NULL
2020-01-23 01:05:29 +00:00
Clownacy
413fe560e4
Add LTO toggle to DoConfig CMakeLists.txt
2020-01-23 01:00:07 +00:00
Clownacy
c45e888b74
Improve CMake style consistency
2020-01-23 00:59:27 +00:00
Clownacy
d2a514161b
Remove two dummied-out dependencies from Travis
...
One isn't used anymore, and the other isn't relevant to this branch
2020-01-23 00:13:56 +00:00
Clownacy
76a71d703b
Merge branch 'accurate' into portable
2020-01-23 00:04:42 +00:00
Clownacy
ede9fa213d
Fix compilation with FIX_BUGS enabled
2020-01-23 00:03:54 +00:00
Clownacy
8798a7cc19
Add the RGB macro to the windows.h wrapper
2020-01-22 23:53:14 +00:00
Clownacy
2f4eb464a5
Merge branch 'accurate' into portable
2020-01-22 23:51:42 +00:00
Clownacy
f687c5f68b
Remove the RGB macro
...
This is a leftover part of the window.h emulator in that got moved to
the portable branch
2020-01-22 23:50:27 +00:00
Clownacy
2c3a4a3620
Fix Makefile LTO
...
Now applies to CFLAGS as well
2020-01-22 23:39:52 +00:00
Clownacy
db9350bdb9
Add LTO option to CMakeLists.txt
2020-01-22 23:39:05 +00:00
Clownacy
3263668156
Merge branch 'accurate' into portable
2020-01-22 23:35:49 +00:00
Clownacy
867af9f090
Add option to the Makefile to enable LTO
2020-01-22 23:34:12 +00:00
Clownacy
4ebfe064ff
Fix compilation
2020-01-22 23:33:59 +00:00
Clownacy
87b296c513
Converted SDLSurface renderer
2020-01-22 22:33:34 +00:00
Clownacy
f6f3c26a3b
Converted SDLTexture renderer
2020-01-22 22:31:19 +00:00
Clownacy
48b7a878ba
Convert software renderer
2020-01-22 22:24:23 +00:00
Clownacy
6dac8254e2
Begin merge of Backend_Init/Backend_CreateWindow
...
OpenGL3+OpenGLES2 backend done so far
2020-01-22 22:19:55 +00:00
Clownacy
3baba6a727
Make FlushVertexBuffer bail when buffer is empty
2020-01-22 21:56:11 +00:00
Clownacy
88c30442c5
Force SDL2's render-batching
...
SDL2 will implicitly disable batching if we force a specific
rendering driver (apparently the user setting SDL_RENDER_DRIVER
counts too) for backwards-compatibility with older programs that use
their own rendering side-by-side with SDL2's. We don't do that,
though, so this commit forces SDL2 to use batching if it's available
(2.0.10 and onwards).
2020-01-21 23:39:49 +00:00
Clownacy
2fec50ff4e
Use constants for attribute locations
2020-01-21 20:16:38 +00:00
Clownacy
8d92bf2004
Double-buffer the OpenGL VBO
...
This should reduce stalling when the OpenGL driver is still
processing the buffer when we're about to upload to it.
Hopefully, this is what was making the OpenGL ES 2.0 renderer so much
slower than the SDLTexture renderer on the Raspberry Pi 3B (SDL uses
*8* buffers). Unfortunately, I don't have access to it right now, so
I can't test this.
2020-01-21 16:43:21 +00:00
Clownacy
f8a40318a2
OpenGL fixes and optimisations
...
Now the VBO isn't resized constantly, and CreateSurface preserves
the currently-bound texture.
2020-01-21 15:52:33 +00:00
Clownacy
73de1adc45
Fix a memory leak
2020-01-21 13:24:30 +00:00
Clownacy
cd7ef93f5e
We don't need to initialise the VBO here
2020-01-21 13:23:33 +00:00
Clownacy
63d5d766b2
Add debug print for enumerating controllers
2020-01-21 12:30:54 +00:00
Clownacy
4c7726221e
...Actually fix controller support
2020-01-21 12:27:50 +00:00
Clownacy
5d2bcb856b
Merge branch 'accurate' into portable
2020-01-21 12:20:03 +00:00
Clownacy
fdbaa4e8e9
Fix controller support
...
WTF is wrong with me why did I do cffc3af45e
2020-01-21 12:17:45 +00:00
Clownacy
d50c012446
Input.cpp corrections
...
Typical Microsoft: make the return type a BOOL, but the make the
actual values some random enum.
2020-01-21 11:58:29 +00:00
Clownacy
976e2425fc
Use native window/taskbar icons on Windows
...
This used to be a feature before the accurate-portable split, I'm
just restoring it.
Previously, while the EXE itself had a unique icon, the window and
taskbar both used the generic 'small' icon, which the original EXE
only used for the window.
SDL2 gives us a way to assign separate icons to each, but it's a
little clunky: it's Windows-only, requires the icons be in .ico
format, and needs them to be embedded in the EXE as resource files.
Also, for some reason, SDL2 doesn't let us refer to them by name - we
have to use their numerical ID.
2020-01-21 11:27:32 +00:00
Clownacy
ad9e3c3e3b
Upscale the window icon
...
Using a 16x16 icon looks terrible on Raspbian's Pixel desktop (it
upscales with blurry filtering).
2020-01-21 10:54:54 +00:00
Clownacy
be533e2f55
Remove FRAMERATE constant
...
I don't see the point in it.
2020-01-20 23:54:46 +00:00
Clownacy
d04bd94649
Use SDL_TICKS_PASSED for frame-limiting
...
This probably works-around overflow
2020-01-20 23:53:41 +00:00
Clownacy
2b34cf7965
Typedef BOOL to bool
...
Since we're not converting to C anymore, it should be fine to rely
on this standard C++ type.
2020-01-20 23:47:33 +00:00
Clownacy
92e5647f11
More CMake capitalisation
2020-01-20 22:06:52 +00:00
Clownacy
a74bfd4b6d
Remove a duplicate lib from OPENGLES2_LIBRARIES
2020-01-20 15:41:54 +00:00
Clownacy
79886f5ae4
Add debug prints for listing SDL2 drivers
...
These list what video/render/audio backends are available, and which
are currently being used.
SDL2 allows you to choose a specific video/audio driver with the
SDL_VIDEODRIVER and SDL_AUDIODRIVER environment variables,
respectively, but there's no such option for the render driver.
2020-01-20 15:27:05 +00:00
Clownacy
1cf5df2d72
Remove a debug print
2020-01-20 14:49:18 +00:00
Clownacy
767262ed8c
Handle a malloc failure better
...
No memory leak
2020-01-20 14:48:12 +00:00
Clownacy
23eed95ff4
Fix CMake build script not finding FindOpenGLES2.cmake
2020-01-20 14:01:22 +00:00
Clownacy
0423614dca
More-efficient OpenGL ES 2.0 font textures
2020-01-20 13:52:50 +00:00
Clownacy
ede541db0a
Clean up the OpenGL shaders a bit
2020-01-20 13:51:32 +00:00
Clownacy
4cbc56e272
Add OpenGL ES 2.0 renderer
2020-01-20 13:49:30 +00:00