SupSuper
8f6935a263
GRAPHICS: Add option to use FrameLimiter without vsync
2024-12-06 10:51:17 +00:00
Cameron Cawley
0881cc6e45
GRAPHICS: MACGUI: Use a const pointer for MacPatterns arrays
2024-11-27 12:57:02 +02:00
Torbjörn Andersson
f4567290f6
SCUMM: MACGUI: Optimize Mac palette handling (bug #15492 )
...
Previously, every palette change in a game get passed on to the Mac
Window Manager, which would then have to look up new colors for drawing
Mac GUI stuff. This was fine for some games, but later ones do a lot of
palette animations, which could slow things down.
Now the Mac Window Manager gets the new palette only when it's about to
draw the Mac menu, or when it's about to draw a dialog (since those can
be triggered outside of the menu).
Additionally, the Mac Window Manager now triggers the auto-opening of
the menu in the event handler, not in the drawing code. Otherwise the
menu would be drawn once before the SCUMM Mac GUI could notice that the
menu was visible, causing an ugly color glitch.
2024-11-21 19:50:05 +01:00
Miro Kropacek
f18147a08a
BACKENDS: ATARI: Remove move16 code
...
There's no evidence of that code being faster than the already optimized
memcpy().
2024-11-21 11:33:11 +01:00
Le Philousophe
aa23b106b9
GRAPHICS: OPENGL: Add back ARB_fragment extensions
...
These extensions were removed in PR #5683 but they are still used by
Grim Fandango.
The following API were enabled:
- GL 3.3 compatibility
- GLES1 1.0 common
- GLES2 2.0
The following extensions have been selected:
- GL_ARB_fragment_program
- GL_ARB_fragment_shader
- GL_ARB_shading_language_100
- GL_ARB_texture_non_power_of_two
- GL_EXT_color_subtable
- GL_EXT_convolution
- GL_EXT_histogram
- GL_EXT_packed_depth_stencil
- GL_EXT_packed_pixels
- GL_EXT_paletted_texture
- GL_EXT_texture_compression_s3tc
- GL_EXT_unpack_subimage
- GL_KHR_debug
- GL_OES_depth24
- GL_OES_packed_depth_stencil
- GL_OES_texture_npot
- GL_SGI_color_table
- GL_SGIS_texture_edge_clamp
The header only, aliasing and merge options were chosen.
The permalink is this one:
https://gen.glad.sh/#generator=c&api=gl%3D3.3%2Cgles1%3D1.0%2Cgles2%3D2.0&profile=gl%3Dcompatibility%2Cgles1%3Dcommon&extensions=GL_ARB_fragment_program%2CGL_ARB_fragment_shader%2CGL_ARB_shading_language_100%2CGL_ARB_texture_non_power_of_two%2CGL_EXT_color_subtable%2CGL_EXT_convolution%2CGL_EXT_histogram%2CGL_EXT_packed_depth_stencil%2CGL_EXT_packed_pixels%2CGL_EXT_paletted_texture%2CGL_EXT_texture_compression_s3tc%2CGL_EXT_unpack_subimage%2CGL_KHR_debug%2CGL_OES_depth24%2CGL_OES_packed_depth_stencil%2CGL_OES_texture_npot%2CGL_SGI_color_table%2CGL_SGIS_texture_edge_clamp&options=ALIAS%2CALIAS%2CHEADER_ONLY%2CMERGE%2CMERGE%2CMERGE
2024-11-16 10:30:23 +01:00
Scott Percival
a205480946
MACGUI: Fix getBorderFlags for titleless window types
...
Fixes rendering of game viewport in Zeddas: Servant of Sheol.
2024-11-11 20:40:06 +01:00
Le Philousophe
dea9f5f33e
GRAPHICS: OPENGL: Fix typo in comment
2024-11-11 14:05:56 +01:00
Niv Baehr
2a5602f34d
GRAPHICS: MACGUI: Fix blank characters on forced Win95 mode
2024-11-05 20:18:50 +01:00
AndywinXp
90b5a73825
GRAPHICS: MACGUI: Add kWMModeForceMacFonts flag
...
This flag prevents Mac fonts substitutions with equivalent TTF fonts.
Of course, being this a flag, it will not impact any previous game using
this. It will only impact whichever engine will decide to set it to active
(in our case, SCUMM).
2024-10-28 08:24:59 +01:00
AndywinXp
7d3a3532cc
SCUMM: Implement gamma correction for Mac games
2024-10-28 08:24:59 +01:00
Matthew Duggan
8bc2db262f
GRAPHICS: Add wrapping mode that ignores trailing space
...
The DGDS engine word wrapping algorithm appends any amount of whitepsace on the
end of the line before wrapping, allowing the nominal line length to go beyond
the limit specified. The drawn length will still be within the limit.
Add a WordWrapMode flag that does the same.
2024-10-26 10:08:56 +03:00
Eugene Sandulenko
56565c65e7
GRAPHICS: MACGUI: Fix regression after ManagedSurface usage changes
2024-10-25 23:12:53 +02:00
Eugene Sandulenko
c191ea24fa
GRAPHICS: MACGUI: Fix usage of deprecated ManagedSurface methods
2024-10-24 15:07:01 +02:00
Cameron Cawley
ec53c5ea87
GRAPHICS: Simplify the generic blending routines
2024-09-29 02:19:42 +03:00
Cameron Cawley
c41edfd2e5
GRAPHICS: Some optimisations for the alpha blending routines
2024-09-29 02:19:42 +03:00
Cameron Cawley
433d6804f7
GRAPHICS: Make the blend structs into objects on the stack
2024-09-29 02:19:42 +03:00
Cameron Cawley
b987fe3573
GRAPHICS: Reduce complexity of the crossBlit() code
2024-09-27 03:48:52 +03:00
sluicebox
b4f8be5174
GRAPHICS: Fix memory leak in WinFont when reloading
...
Occurs during Hugo 1 introduction
2024-09-18 12:41:01 -07:00
Hubert Maier
1a816a5978
JANITORIAL: GRAPHICS: Fix typos
2024-09-16 09:41:26 +03:00
Le Philousophe
8b26ce1c16
GRAPHICS: Add target specifiers for Clang
...
This allows to enable back SIMD support when compiling with it
2024-09-05 07:24:29 +03:00
elasota
e2fccfe581
GRAPHICS: Normalize PixelFormat shift amounts to 0 for empty channels.
...
This fixes fromScummvmPixelFormat in the JPEG decoder not selecting the correct output format due to the comparisons failing.
2024-09-04 08:32:16 +03:00
sluicebox
cd755fc663
GRAPHICS: Fix memory leak in TTF font
2024-08-25 12:26:47 -07:00
Eugene Sandulenko
5a3a131b09
GRAPHICS: Added an arrow cursor to CursorMan
...
It is meant to be used as a sane cursor when the game is relying on
system cursor, like some Windows titles.
If you want to improve the cursor graphics, you are welcome.
2024-08-09 14:17:52 +02:00
Cameron Cawley
bdd164e551
GRAPHICS: Add missing addDirtyRect calls to ManagedSurface wrappers
2024-07-31 02:50:43 +03:00
Cameron Cawley
89c57d29ef
COMMON: Move more maths functions into the Math namespace
2024-07-27 14:00:48 +03:00
Cameron Cawley
7e0dfe0081
GRAPHICS: Use custom stream callbacks for loading TTF fonts
2024-07-23 15:33:43 +01:00
Matthew Duggan
a5067e783c
GRAPHICS: Remove erroneously added temp file
2024-07-16 13:52:49 +10:00
Matthew Duggan
4c78530c72
GRAPHICS: Constify object references in primitives API
...
This makes usage of the API a bit clearer - they are inputs only, not outputs.
2024-07-16 13:48:44 +10:00
Cameron Cawley
a8221621e6
GRAPHICS: Explicitly handle matching formats in ManagedSurface::simpleBlitFrom
2024-07-05 08:38:08 +03:00
Cameron Cawley
3676b39194
GRAPHICS: Deprecate the ManagedSurface copy constructor
...
Also reverted the changes from commit 81f566a
.
2024-07-04 22:54:21 +03:00
Cameron Cawley
4bbcf77f70
GRAPHICS: Add move constructors to ManagedSurface
2024-07-04 22:54:21 +03:00
Misty De Meo
81f566a71b
GRAPHICS: replace deprecated operator
2024-07-03 09:27:11 +03:00
Cameron Cawley
ff530edcb1
GRAPHICS: Deprecate ManagedSurface methods that implicitly copy pixel data
2024-07-02 13:31:18 +01:00
Cameron Cawley
224f5bb9d3
GRAPHICS: Add scaling and conversion wrappers to ManagedSurface
2024-07-02 13:31:18 +01:00
Cameron Cawley
86f9731bae
GRAPHICS: Only invalidate the updated area of the screen in ManagedSurface::blitFrom
2024-06-30 16:35:41 +03:00
Cameron Cawley
1357bfe672
COMMON: Avoid including engine headers in common code for DebugChannelDef
2024-06-20 20:15:57 +01:00
Cameron Cawley
96f9569790
GUI: Make use of simple blitting routines where possible
2024-06-19 02:36:17 +02:00
Cameron Cawley
3da558fc96
GRAPHICS: Add a common function for detecting transparent surfaces
2024-06-19 02:36:17 +02:00
Cameron Cawley
49ca5c3a0e
GRAPHICS: Add simplified blitting routines to ManagedSurface
2024-06-19 02:36:17 +02:00
Scott Percival
e1f2418c17
GRAPHICS: MACGUI: Fix MacMenu to support 32-bit graphics
2024-06-18 18:24:08 +08:00
Paul Gilbert
7559ecdf84
GRAPHICS: Copy fields, not surface itself, in ManagedSurface constructor
2024-06-06 20:31:03 -07:00
Paul Gilbert
6136c20a35
GRAPHICS: Fix setting _disposeAfterUse in ManagedSurface constructor
...
The copyFrom method called in the constructor always sets
_disposeAfterUse to true, so in the case we call the constructor
with DisposeAfterUse::NO, we need to set the field value after
the call to prevent it being overwritten.
I'm also not entirely happy that the DisposeAfterUse::YES case
automatically deletes the passed surface immediately, it seems
like it'll be prone to nasty side effects. But I'm leaving as is,
because I'm not sure which code, if any, currently relies on it
to prevent a memory leak.
2024-06-05 21:54:05 -07:00
Krish
1c1ed2e61e
GRAPHICS: MACGUI: Fix compilation with DEBUG enabled
2024-06-03 14:01:15 +02:00
Krish
a51e33f1de
GRAPHICS: MACGUl: Handle empty text in selection logic
...
Fixes crash in The Apartment version D4, movie "editableText"
./scummvm --start-movie=editableText theapartment4
2024-06-03 14:01:15 +02:00
Paul Gilbert
1f65be27d9
GRAPHICS: Palette constants cleanup, added Palette methods to ManagedSurface
2024-06-02 10:55:01 -07:00
Paul Gilbert
80e83c1a4b
GRAPHICS: Support Graphics::Palette in PaletteManager
2024-06-01 11:38:27 -07:00
Paul Gilbert
2027813d67
GRAPHICS: Added Palette::createEGAPalette method
2024-06-01 11:26:17 -07:00
neuromancer
e49387f0c8
TINYGL: revert previous commit and correct number of elements for polygon offset ADD_OP
2024-06-01 15:33:50 +02:00
neuromancer
d22cffbcba
TINYGL: correct number of elements for polygon offset ADD_OP
2024-06-01 15:33:50 +02:00
neuromancer
7ac37265f9
TINYGL: correct initialization of the stipple pattern buffer
2024-06-01 15:33:50 +02:00