Le Philousophe
c9b4949746
AMIGAOS: Improve shader compatibility
...
OGLES2 doesn't support uniform booleans so we use macros to make it use
integers in this case. For other platforms, this change should be a
noop.
OGLES2 doesn't like float suffix for constants, remove it as well.
2022-04-17 12:34:38 +02:00
Donovan Watteau
f6641e18b2
BUILD: Remove support for ancient SGI MIPSpro
...
This very old compiler has no C++11 support, so we're now sure that
its support (and workarounds) can be removed.
2022-04-15 22:43:57 +02:00
Le Philousophe
8ec10f5892
GRAPHICS: Create a dynamic list of available renderers
...
This allows us to not offer a renderer which is not available on the
platform.
2022-04-10 18:11:46 +02:00
Le Philousophe
1cf0b7d1b3
OPENGL: Unbind array buffer after using it
...
This avoids to mangle state for engines
2022-04-09 21:46:09 +02:00
Thierry Crozat
43acda0c9a
GRAPHICS: Add override for TTFont class
2022-04-05 23:18:05 +01:00
Le Philousophe
1e4696f6d0
OPENGL: Rework renderer selection code
...
Add a class to group all renderer related (static) functions.
This allows to have getBestMatchingAvailableType inline in all engines.
The matching code is now shared between all engines but allows
customization for engines needing it (Grim, WME3D).
The new code takes runtime availability of features to select the
best renderer.
It avoid crashes when user choosed OpenGL but GLES2 is used.
2022-04-03 22:17:19 +02:00
Le Philousophe
b978cd1caa
OPENGL: Allow engines to detect OpenGL info without switching
...
For now only OpenGL type and shaders support are available
2022-04-03 22:17:19 +02:00
Le Philousophe
89cfc283ab
OPENGL: Use correct function to debug program linking
2022-04-03 09:40:51 +02:00
Torbjörn Andersson
29a6b30ec3
GRAPHICS: Fix build
2022-03-29 09:01:47 +02:00
Paul Gilbert
3989d2652b
AGS: Compilation fix
2022-03-28 22:45:52 -07:00
Paul Gilbert
accd508b9c
GRAPHICS: Create set of wrapper functions for accessing FreeType directly
2022-03-28 20:29:36 -07:00
Misty De Meo
8558276dd9
DIRECTOR: additional RearWindow methods
2022-03-22 12:27:13 +01:00
Misty De Meo
c2daf29bb2
DIRECTOR: implement RearWindow methods
2022-03-21 11:44:32 +01:00
Paul Gilbert
15704239b8
AGS: Properly implement alfont_get_name
2022-03-14 22:12:40 -07:00
Paul Gilbert
a2a33b8f19
GRAPHICS: Added getFontName method to TTFFont
2022-03-14 21:57:14 -07:00
Paweł Kołodziejski
de67c1ae54
TINYGL: Latest TinyGL 0.4.1 is relicensed under MIT license.
2022-03-08 15:47:20 +01:00
Cameron Cawley
460bc32cd9
OPENGL: Fix OpenGL ES v1 builds without GLAD
2022-03-07 17:40:01 +01:00
Paweł Kołodziejski
ee11c85f85
IOS: Added support for GLAD
2022-03-06 21:44:19 +01:00
Paweł Kołodziejski
710dac8029
OPENGL: Improve error handling for GL compiler by using dynamic allocated buffers.
2022-03-06 09:03:36 +01:00
Paweł Kołodziejski
786800e831
OPENGL: Skip adding suffix 'shaders' for iOS app, it has flatten tree.
2022-03-06 09:00:21 +01:00
Paul Gilbert
276e83ffee
CHEWY: Fix drawing boxes and lines
2022-03-03 18:35:11 -08:00
Thunderforge
fd129ebc0c
JANITORIAL: "Mac OS X" and "OS X" to "macOS" in comments
...
Apple's desktop operating system was formerly called "Mac OS X" and "OS X", but since 2016 it has been called "macOS" (starting with version 10.12).
Changing across all comments and documentation to use this current terminology, except in cases where the historical versions are explicitly referenced. No code changes are made; we should consider changing those in future PRs.
2022-01-29 14:15:05 +01:00
Le Philousophe
1c18c269dc
ANDROID: Add GLAD support
2022-01-18 16:49:03 +01:00
Le Philousophe
a9418f8f63
GRAPHICS: Rework OpenGL detection
...
With GLAD it's not needed anymore to link against OpenGL libraries.
As configure knows better whether a platform supports GLAD, detection is
moved here.
To allow platforms where OpenGL should be linked at build time, the
tests are kept. Android uses them for now.
The OpenGL for Games was completely decoupled from the OpenGL for 2D
engines. This not the case anymore.
2022-01-18 16:49:03 +01:00
Le Philousophe
d9b4e457e8
ALL: Remove USE_GLES2 define
...
Replace it with USE_FORCED_GLES2
2022-01-18 16:49:03 +01:00
D G Turner
bcf6054c3a
GRAPHICS: Fix GCC Duplicated Branch Warnings in LarryScale
...
These are flagged by GCC if -Wduplicated-branches is enabled.
2022-01-12 08:26:39 +00:00
D G Turner
42f3fb2e93
GRAPHICS: Fix GCC Compiler Duplicated Branch Warnings in Nano SVG
...
These are emitted if the build is compiled with -Wduplicated-branches.
2022-01-12 04:59:23 +00:00
Paweł Kołodziejski
4f0e5ed3c0
GRAPHICS: Moved shader code where it's actually used
2022-01-10 03:34:48 +01:00
Paweł Kołodziejski
3dd3e76bc2
BACKENDS3D: Shader code files shouldn't be moved
2022-01-10 02:38:44 +01:00
Paweł Kołodziejski
d1d77f887e
BACKENDS3D: Moved Surfaces and Texture specific backend code to backends
2022-01-10 01:21:49 +01:00
Le Philousophe
faa16c9023
GRAPHICS: Fix UB when bytesPerPixel == 4
...
It doesn't even work on x86(_64) as 1 is not shifted
2022-01-06 19:39:05 +02:00
Le Philousophe
a110714141
GRAPHICS: Remove superfluous memset
...
Surface::create already initialized memory to 0 and getPixels can be
nullptr if bitmap size is 0. In this case memset gets called with
nullptr which is undefined behaviour.
2022-01-06 19:39:05 +02:00
Le Philousophe
5f86c391ec
GRAPHICS: Remove global variables of HQ scaler
...
This allows multiple instances to run in parallel
2022-01-03 10:52:11 +01:00
Le Philousophe
2b549a763a
GRAPHICS: Make HQx ASM scalers relocations free
...
This is considered as a good practice to not have relocations in text
segment.
The binary is now completely PIC and can easily be relocated at any
address (ASLR).
2022-01-03 10:52:11 +01:00
Paweł Kołodziejski
a37fdcf2f1
TINYGL: Move gl_vertex_transform to GLContext
2022-01-02 10:43:29 +01:00
Paweł Kołodziejski
8ae516bd52
TINYGL: Janitorial
2022-01-02 09:22:49 +01:00
Paweł Kołodziejski
a4ec998a51
TINYGL: Small corrections for params type
2022-01-02 09:20:34 +01:00
Paweł Kołodziejski
cf8b3cc1f9
TINYGL: Move function to GLContext
2022-01-01 17:42:32 +01:00
Paweł Kołodziejski
c3a73efa8d
TINYGL: No need to check for current_texture
2022-01-01 17:38:48 +01:00
Paweł Kołodziejski
a70168e416
TINYGL: Split/move functions to API and internal implementation.
2022-01-01 17:21:42 +01:00
Paweł Kołodziejski
af399f0a50
TINYGL: Janitorial
2022-01-01 17:16:10 +01:00
Paweł Kołodziejski
69198d5d30
TINYGL: Corrected variable type
2022-01-01 14:07:07 +01:00
Paweł Kołodziejski
fef0e04cb7
TINYGL: No need to check for current_texture
2022-01-01 14:06:45 +01:00
Paweł Kołodziejski
04b13dc61a
TINYGL: Split/move functions to API and internal implementation.
2022-01-01 14:06:10 +01:00
Paweł Kołodziejski
25c4e89b7a
TINYGL: Janitorial
2022-01-01 12:00:38 +01:00
Cameron Cawley
010dfbff18
GRAPHICS: Remove manual OpenGL function loading
2021-12-30 14:57:11 +01:00
Cameron Cawley
21b0d6ded1
BACKENDS: Replace GLEW with GLAD, part of PR #3463
2021-12-30 14:53:48 +01:00
Paweł Kołodziejski
25c63234e4
TINYGL: Corrected cases for unsigned types arrays
2021-12-27 13:38:05 +01:00
Paweł Kołodziejski
6e6696271e
TINYGL: Cleanup function arguments
2021-12-27 13:22:38 +01:00
Paweł Kołodziejski
7cc90c7d44
TINYGL: Added few tglTextCoord combinations
2021-12-27 11:26:44 +01:00