Commit Graph
3428 Commits
Author SHA1 Message Date
elasota 95fd7dcffc GRAPHICS: Fix alpha blend on 16-bit targets treating the destination pixel as black 2022-06-13 20:14:36 +03:00
elasota 8c560fe94f GRAPHICS: Fix redundant color loads 2022-06-13 15:09:08 +02:00
elasota 709175d835 GRAPHICS: Optimized managed surface blit in transparent/opaque pixel case 2022-06-13 15:09:08 +02:00
antoniou79 9e96c12fc6 GRAPHICS: Fix segmentation fault for thumbnail from incomplete fill
Common::fill fills up to but not including the address of the last item

Previously the last item of array v was not filled with 0, so if the rest of the code in the scaleLine() method did not update it, it would have a random init value which could cause segmentation fault when using the scale() method.
2022-06-12 15:09:25 +02:00
elasota 27f5d32ace GRAPHICS: Remove false positive warning from Win cursor group parser 2022-06-12 14:06:59 +02:00
Pragyansh Chaturvedi (r41k0u) 8409314414 DIRECTOR: LINGO: Implement MacText::enforceFontSlant() and implement kTheTextStyle STUB in TextCastMember::setField() 2022-06-06 18:32:14 +02:00
Pragyansh Chaturvedi (r41k0u) 334bbd11a3 DIRECTOR: LINGO: Implement MacText::enforceTextFont() and use it to implement STUB kTheTextFont in TextCastMember::setField() 2022-06-06 18:32:14 +02:00
Pragyansh Chaturvedi (r41k0u) 26779bbd1d DIRECTOR: Revert _ptext change check omission in TextCastMember::setText(), remove unnecessary initialisation of string in MacText::getPlainText() 2022-06-06 18:32:14 +02:00
Pragyansh Chaturvedi (r41k0u) f241bdefd3 DIRECTOR: LINGO: Implement kTheTextFont, kTheTextStyle, kTheTextHeight and kTheTextSize in Lingo::setField() 2022-06-06 18:32:14 +02:00
Pragyansh Chaturvedi (r41k0u) 0a95714cac DIRECTOR: GRAPHICS: Add getPlainText() function to MacText 2022-06-06 18:32:14 +02:00
Eugene Sandulenko 502d171fc3 GRAPHICS: Improved error message on surface conversion 2022-06-06 01:55:58 +02:00
Paweł Kołodziejski 4a05ea9eda TINYGL: Remove left over macro use 2022-06-05 23:58:05 +02:00
Paweł Kołodziejski ffe7bee81e TINYGL: Switch profiling to runtime condition 2022-06-05 23:40:35 +02:00
Paweł Kołodziejski 00086d34ab TINYGL: No need to have changelog file anymore. 2022-06-05 23:20:34 +02:00
Paweł Kołodziejski cdaec9de8d TINYGL: Added fog support. 2022-06-05 20:59:38 +02:00
Cameron Cawley 07498687bd GRAPHICS: Add Surface::copyRectToSurfaceWithKey() 2022-06-05 17:28:28 +03:00
Cameron Cawley 085130c6da GRAPHICS: Move ManagedSurface::clip() to the Surface class 2022-06-03 16:00:46 +01:00
Le Philousophe 8569296384 OPENGL: Detect framebuffer support using GL_ARB_framebuffer_object
We use functions from GL_ARB_framebuffer_object extension and not from
GL_EXT_framebuffer_object where functions are suffixed by EXT.
This avoids crashes on implementations supporting only the EXT version.
2022-05-27 18:13:10 +02:00
Donovan Watteau 5b1ec56f96 JANITORIAL: Fix some lost or outdated URLs in comments 2022-05-19 07:57:31 +03:00
elasota 1ea57c994c GRAPHICS: Add support for loading oversized Mac CURS resources 2022-05-07 20:51:44 +03:00
Paweł Kołodziejski ce97902769 TINYGL: Initialise _enableScissor for case when dirty rects are off. 2022-05-02 10:01:08 +02:00
Quote58 9d4ac18be5 COMMON: macText::plainByteMode() accounts for Mac Roman. 2022-04-18 16:26:57 +03:00
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