Commit Graph
1203 Commits
Author SHA1 Message Date
Vladimir Serbinenko 1bc4fe5279 SDL: Move RS90-specific code to opendingux directory 2023-01-17 13:48:50 +03:00
Vladimir Serbinenko 5bdabeed7e SURFACESDL: Make getDefaultResolution overideable by custom backends 2023-01-17 13:48:50 +03:00
Vladimir Serbinenko 81fdd308cf SURFACESDL: Extract initing of graphics surface into a separate method. 2023-01-17 13:48:50 +03:00
Vladimir Serbinenko 4a0d9c2665 SDL: Add missing init of _prevCursorNeedsRedraw 2023-01-17 13:48:20 +03:00
Cameron Cawley 40f797fdef SDL: Support VSync with OpenGL in SDL1 builds 2023-01-16 18:09:53 +01:00
Cameron Cawley 138a983d80 COMMON: Refactor VSync handling to match the other options 2023-01-16 18:09:53 +01:00
Christophe Branchereau 2994ab025d OPENDINGUX: force 320x240 for the RG99
The device has a 320x480 screen and aspect of gui is wrong if we use
the full resolution

Signed-off-by: Christophe Branchereau <cbranchereau@gmail.com>
2023-01-16 10:31:14 +01:00
Vladimir Serbinenko 4e4c652433 SDL: Properly restore gfx mode if several parameters have changed
Currently we have bunch of else-if and only one of them triggered. When
e.g. aspect ratio correction and resolution changes only aspect ratio is
covered by restoration. If this fails the code retries the same mode endlessly
2023-01-12 16:39:38 +03:00
Vladimir Serbinenko 74336c5411 SDL: Fix potential buffer overflow
This causes a segmentation error on Miyoo Mini but is not specific to it
2023-01-12 14:01:45 +01:00
Le Philousophe 4f626159a1 SDL: Delete mouse scaler to avoid memory leak 2023-01-12 08:44:38 +01:00
Vladimir Serbinenko 30d9976a1c SDL: Use hardware palette on RS90 and scale 1 2023-01-12 10:27:20 +03:00
Vladimir Serbinenko 70b174bca5 SDL: Disable fullscreen on RS90
Fullscreen flag causes an error in SetVideoMode.
2023-01-12 10:27:20 +03:00
Vladimir Serbinenko 3f6691dc6d RS90: Workaround for unusual SDL_PixelFormat
SDL_PixelFormat returns 0xff/0xff/0xff as pixel format for paletted HWSURFACE.
2023-01-12 10:27:20 +03:00
Vladimir Serbinenko b91d873df6 SDL: Support auto-detection of GUI resolution. 2023-01-12 10:27:20 +03:00
Vladimir Serbinenko 47ab3fe4fc SDL: Support double-buffering on SDL1. 2023-01-12 10:27:20 +03:00
Vladimir Serbinenko 462be38081 SDL: Support rendering to 8-bit graphics 2023-01-12 10:27:20 +03:00
Cameron Cawley cf70814cbd SURFACESDL: Initial support for 32-bit screen output 2023-01-11 12:57:53 +00:00
Eugene Sandulenko aa14d59447 BACKENDS: OPENGL: Switch shaders to SearchSet 2023-01-08 01:15:51 +01:00
Eugene Sandulenko ef65534250 BACKENDS: SHADERS: Make possibility to load shaders from SearchMan 2023-01-08 01:15:44 +01:00
Cameron Cawley 7f2d9fd0fd GRAPHICS: Split conversion.cpp into multiple files 2022-12-22 23:45:14 +01:00
elasota 3496e82abc BACKENDS: Add 1-pixel border to cursors to ensure linear interpolation of edge pixels doesn't get cut off half-way. 2022-11-29 00:48:00 +01:00
Le Philousophe 77fce6614e BACKENDS: OPENGL: Disable scissor test when overlay is for games
WIthout this, the game cannot draw outside its area for subtitles.
This is exhibited when scaling is set to center.
2022-11-20 17:18:38 +01:00
Le Philousophe 17498383ee BACKENDS: Fix typo in WindowedGraphicsManager
This was the opposite of what was needed.
2022-11-13 09:14:25 +01:00
Le Philousophe 970ea34905 ANDROID: Fix build 2022-11-12 20:49:20 +01:00
Le Philousophe 87bad2cc7d COMMON: Allow games to use overlay for something else than GUI
This can be used for subtitles without changing the mouse coordinates.
2022-11-12 19:12:05 +01:00
Le Philousophe 6fa7a6f30f BACKENDS: OPENGL: Check if libretro is here before loading shader 2022-11-11 13:24:55 +01:00
Le Philousophe e5c1a4249a BACKENDS: OPENGL: When no shader is selected, close 2022-11-06 20:02:59 +01:00
Le Philousophe 52903aff8a BACKENDS: OPENGL: Close old preset before opening a new one 2022-11-06 20:02:59 +01:00
Le Philousophe a6dd037079 BACKENDS: OPENGL: Add support for previous frames in LibRetro 2022-11-06 20:02:59 +01:00
Le Philousophe 9d1910854b BACKENDS: OPENGL: Match vertex coordinates with RetroArch
This makes work shaders which ignore them.
A flip is done when rendering to output pipeline because RetroArch
renders directly on the back buffer
2022-11-06 20:02:59 +01:00
Le Philousophe 5484ebffae BACKENDS: OPENGL: Rework LibRetro pipeline
This makes LibRetro behave almost like other pipelines and make the code
in OpenGLGraphicsManager somewhat simpler.
2022-11-06 20:02:59 +01:00
Le Philousophe f9005454bd BACKENDS: OPENGL: Allow to copy render settings between framebuffers 2022-11-06 20:02:59 +01:00
Le Philousophe 70cf4e9e3e BACKENDS: OPENGL: Move framebuffer out of common activate code
This allows more control over activation process.
2022-11-06 20:02:59 +01:00
Le Philousophe 6632e909da BACKENDS: OPENGL: Hide active pipeline and activate it as needed
This removes the idea of global pipeline.
The activePipeline is kept for pipeline lifecycle management only.
2022-11-06 20:02:59 +01:00
Le Philousophe 239c115249 BACKENDS: OPENGL: Rename drawTexture override
This prevents name hiding when using directly a subclass of Pipeline
2022-11-06 20:02:59 +01:00
Le Philousophe 769fe03a4b BACKENDS: OPENGL: Use override keyword 2022-11-06 20:02:59 +01:00
Le Philousophe 9b951944bc BACKENDS: OPENGL: Activate framebuffer with a specific pipeline 2022-11-06 20:02:59 +01:00
Le Philousophe 29c25ed566 BACKENDS: OPENGL: Store projection matrix as a Matrix4
This avoids extraneous copies when dealing with Shader class.
2022-11-06 20:02:59 +01:00
Le Philousophe 2d910e353b BACKENDS: OPENGL: When closing reset _isAnimated to keep performace 2022-11-06 20:02:59 +01:00
Le Philousophe b329308b7a BACKENDS: OPENGL: Don't load a preset with no pass 2022-11-06 20:02:59 +01:00
Le Philousophe 479ef6a851 BACKENDS: OPENGL: Simplify size logic 2022-11-06 20:02:59 +01:00
Le Philousophe 96fd0b8418 BACKENDS: OPENGL: Fix missing default case 2022-11-06 20:02:59 +01:00
Le Philousophe 06c38bbf3f OPENGLSDL: Redraw screen when receiving an expose event
Without this, the window is not refreshed when it is recovered or
minimized and restored.
2022-10-30 12:34:23 +01:00
Le Philousophe 1859cf455d OPENGL: Use texture size of cursor instead of computing it
Computation was not correct and resulted in corrupted cursor
2022-10-29 18:08:39 +02:00
Le Philousophe 3f08b71d85 BACKENDS: OPENGL: With animated LibRetro shaders, always update screen 2022-10-22 16:51:08 +02:00
Le Philousophe 86ea6f581c BACKENDS: OPENGL: Fix cursor scaling with LibRetro 2022-10-22 16:51:08 +02:00
Eugene Sandulenko 81462fd56f Revert "GRAPHICS: Add a mechanism to get the game and overlay display rects"
This reverts commit 60b43e4f52.

The commit is incomplete: the relevant methods have to be exposed via the
base OSystem class.
2022-10-19 00:53:17 +02:00
elasota 60b43e4f52 GRAPHICS: Add a mechanism to get the game and overlay display rects 2022-10-19 00:29:01 +02:00
Le Philousophe c756415388 BACKENDS: OPENGL: Don't fail if parameter is not present in preset
RetroArch doesn't use this parameters value and looks up directly for
entries so it would never fail on this.
2022-10-17 22:19:26 +02:00
Le Philousophe ef9eb436a0 BACKENDS: OPENGL: Apply parameters globally and load the preset ones 2022-10-17 22:09:35 +02:00