Commit Graph
496 Commits
Author SHA1 Message Date
Colin Snover e49cf11275 OPENGLSDL: Fix signed/unsigned comparison 2016-11-20 16:13:51 -06:00
Eugene Sandulenko 43438fbe13 CHEWY: Plug memory leaks 2016-11-13 16:36:43 +01:00
Thierry Crozat cbfa598446 OPENGL: Remove hack to avoid issues with OSD messages from other threads 2016-10-29 15:13:32 +01:00
Ori Avtalion fc85eb461d SDL: Fix typo in function name 2016-10-18 19:24:51 +03:00
Thierry Crozat aa39a6ce4b SURFACESDL: Improve toggling filtering on/off
We don't need to recreate the window when turning filtering on or off.
Only the texture needs to be recreated.
2016-10-13 01:46:27 +01:00
Thierry Crozat fd77916f86 SURFACESDL: Add hotkey to enable/disable filtering 2016-10-13 01:46:26 +01:00
Thierry Crozat 529a7ca26c OPENGLSDL: Add hotkey to enable/disable filtering
Crtl-Alt-f now enables/disables filtering instead of changing the
graphics mode. Since there is only one graphics mode now, a hotkey
to change it is a bit useless.
2016-10-13 01:46:26 +01:00
Thierry Crozat 3a69898729 SURFACESDL: Add support for filtering feature when using SDL2
This implements the request from ticket #9573: SDL1/2: Different
rendering/filtering?
2016-10-13 01:45:01 +01:00
Thierry Crozat c6ce1c8002 OPENGL: Add support for filtering feature
This replaces the two graphics modes "OpenGL (No filtering)" and
"OpenGL". Now there is a single "OpenGL" mode and filtering is
controlled by the kFeatureFilteringMode.
2016-10-13 01:45:01 +01:00
Thierry Crozat d0b2770243 OPENGLSDL: Make some OSD messages translatable
Also change some OSD messages to be the same or similar to
messages used by the Surface SDL code.
2016-10-13 01:15:38 +01:00
Bastien Bouclet 7941e5d530 SDL: Switch to full screen updates when the OSD is transparent
Previous releases also did full screen updates for transparent OSD messages.
There should be no performance regression with that regard.

Computing smaller update rects is non trivial, but should be looked into if
performance is an issue for OSD icons.

Fixes #9598
2016-10-03 07:31:18 +02:00
Bastien Bouclet 5e133cdd34 OPENGL: Make sure the cloud icon is cleared immediatly after it is hidden 2016-09-18 17:55:09 +02:00
Bastien Bouclet 0f9583e4ca SDL: Make sure the cloud icon is cleared immediatly after it is hidden 2016-09-18 17:55:09 +02:00
Bastien Bouclet 75599a4c25 OPENGL: Remove multithread support from displayActivityIconOnOSD
It is no longer being called by another thread.
2016-09-18 17:55:09 +02:00
Thierry Crozat 1fd4dbfdce SDL: Ignore outdated SDL resize event in OpenGL mode
Those outdated resize events are sent from SDL_DestroyWindow when the
window is fullscreen and doesn't have the SDL_WINDOW_FULLSCREEN_DESKTOP
flag (thus Surface SDL is not affected). Switching resolutions in fullscreen, or
switching from fullscreen to windowed will therefore cause a resize event to
be received with the former fullscreen resolution after we have already setup
the window to use the new resolution. If we don't ignore this event we end up
with a texture size and a window size that are not consistent and for example
see only a part of the texture (if the old resolution is bigger than the new one.
2016-09-18 04:23:37 +01:00
Thierry Crozat 2d651fd0f4 OPENGL: Fix dereferencing null pointer in OpenGLGraphicsManager
This fixes a crash when calling displayActivityIconOnOSD with a
NULL icon, which is used to remove the current activity icon.
2016-09-13 22:58:13 +01:00
Bastien Bouclet 0802bbd8ee OSYSTEM: Remove the API allowing to draw to the OSD surface directly 2016-09-13 20:41:26 +02:00
Bastien Bouclet 9cbaad6140 SDL: Switch the OpenGL renderer to use small textures to draw the OSD 2016-09-13 20:41:26 +02:00
Bastien Bouclet 05bc82b622 SDL: Switch the surface renderer to use small surfaces for OSD drawing 2016-09-13 20:33:42 +02:00
Bastien Bouclet 521ba2cb8a OSYSTEM: Introduce a method allowing to draw a background activity icon 2016-09-13 20:25:13 +02:00
Thierry Crozat a8cb3c8404 OPENGL: Implement getOSDFormat and copyRectToOSD 2016-09-05 21:40:45 +01:00
Thierry Crozat 65d3c15b01 OPENGL: Add missing USE_OSD defined checks around OSD code 2016-09-05 21:21:32 +01:00
Eugene Sandulenko 8e8199f6af LINUXMOTO: Fix OSD performance when OSD is not drawn 2016-09-03 21:30:55 +02:00
Eugene Sandulenko 57ae1cb89d GPH: Fix OSD performance when OSD is not drawn 2016-09-03 21:30:40 +02:00
Eugene Sandulenko c2f5c48068 DINGUX: Fix OSD performance when OSD is not drawn 2016-09-03 21:30:04 +02:00
Eugene Sandulenko b8ee5322f4 JANITORIAL: Remove trailing whitespaces 2016-09-03 21:20:16 +02:00
Eugene Sandulenko 7910123446 SDL: Optimize OSD drawing 2016-09-03 21:20:02 +02:00
Eugene Sandulenko e93b52416f LINUXMOTO: Adapt to OSD changes 2016-09-03 10:18:47 +02:00
Eugene Sandulenko 58096d909f GPH: Fix formatting 2016-09-03 10:18:47 +02:00
Eugene Sandulenko 2fa97f20e8 DINGUX: Adapt to new OSD changes 2016-09-03 10:18:47 +02:00
Eugene Sandulenko 2d39f75b7d GPH: Attempt to fix OSD 2016-09-02 23:57:13 +02:00
Willem Jan Palenstijn d60879b535 SDL: Fix const cast 2016-08-30 21:52:27 +02:00
Alexander Tkachev 91f75efa99 GUI: Fix copyRectOnOSD()
Now it doesn't require full redraw, but asks to redraw the area which is
copied to.
2016-08-24 16:07:55 +06:00
Alexander Tkachev de84701aea GUI: Separate OSD message alpha from OSD surface
Now OSD is always drawn.
2016-08-24 16:07:55 +06:00
Alexander Tkachev 1b9987ddc9 GUI: Add getOSDFormat() and make OSD 32 bpp 2016-08-24 16:07:55 +06:00
Alexander Tkachev 2a15b8b280 GUI: Add clearOSD() method
So one can erase everything from OSD and then blit something on it.
2016-08-24 16:07:55 +06:00
Alexander Tkachev 7ff1f91808 GUI: Add copyRectToOSD()
I was lazy to implement that in OpenGLGraphicsManager and I'm not sure
it's implemented correctly in SurfaceSdlGraphicsManager, but it works
for me.
2016-08-24 16:07:55 +06:00
Ori Avtalion 4d120800fa ALL: Don't use 'defined' in macro definitions
This is undefined behavior and clang warns about it.
See <http://lists.llvm.org/pipermail/cfe-commits/Week-of-Mon-20160118/147239.html>.
2016-07-23 16:18:51 +03:00
Ben Castricum da55658a80 SDL: Fix mouse trailing part of bug #7141
Overlays are shown with _currentShakePos offset too, so no need to
compensate the mousepointer position for overlays. This compensation
was done inconsistently in draw/undraw mouse causing the mouse trails.
2016-07-01 08:26:03 +02:00
lubomyr 961976f17e ANDROIDSDL: add androidsdl backend 2016-05-19 20:33:27 +02:00
Johannes Schickel 8ff5329b49 OPENGL: Assure color attributes for shader pipeline are always set. 2016-05-03 20:43:18 +02:00
Eugene Sandulenko 050a1cd605 OPENGL: Fix potential crash 2016-05-02 15:19:07 +02:00
Eugene Sandulenko 3e568910c8 GCW0: Disable triple buffering.
Too many artifacts. It is not possible with current ScummVM
drawing approaches.
2016-04-10 16:36:42 +02:00
Eugene Sandulenko a7930f2af7 GCW0: Enable triple buffering 2016-04-10 15:09:14 +02:00
Eugene Sandulenko 39dc1dd2e1 GCW0: Enable building with all scalers disabled 2016-04-10 14:06:34 +02:00
Johannes Schickel 8161effc68 OPENGL: Add assertions to check for valid attribute state. 2016-03-23 22:37:16 +01:00
Johannes Schickel 2ebffd2da5 OPENGL: Fix black screen for some GL implementations with shaders.
For compatibility location 0 is used to decide whether fixed function style
vertex information is used in old GL contexts. In some cases drivers might
assign the color information to be passed through attribute 0. This caused
the array attribute status for location 0 to be disabled and resulted in
wrong vertex data to be used.
2016-03-23 22:30:25 +01:00
Johannes Schickel 6b2424b635 OPENGL: Log extensions available on debuglevel 5+. 2016-03-16 21:03:43 +01:00
Johannes Schickel b7a269947f OPENGL: Flag texture dirty on allocation. 2016-03-16 20:29:31 +01:00
Johannes Schickel 17b1124a5a OPENGL: Do not keep uniform state for nonexistent uniforms. 2016-03-16 20:29:31 +01:00