Commit Graph
8933 Commits
Author SHA1 Message Date
Eugene Sandulenko cc0740685f OPENGL: Disable kFeatureFilteringMode because it conflicts with shaders 2022-10-08 23:39:18 +02:00
Eugene Sandulenko 6d3eb64398 OPENGL: Do not error() on shader compilation failure 2022-10-08 23:39:18 +02:00
Eugene Sandulenko b67c4c0047 OPENGL: Gracefully restore previous graphics mode on shader failure 2022-10-08 23:39:18 +02:00
Eugene Sandulenko 1ac8fde03f JANITORIAL: Whitespace fixes 2022-10-08 23:39:18 +02:00
Eugene Sandulenko 8d61963716 OPENGL: Return error when shader did not work 2022-10-08 23:39:18 +02:00
Cameron Cawley f6e071e99a OPENGL: Handle LibRetro shaders containing version directives 2022-10-08 23:39:18 +02:00
Cameron Cawley 1b2a73c62a OPENGL: Implement selecting shaders from the GUI 2022-10-08 23:39:18 +02:00
Cameron Cawley 79fff69231 COMMON: Use Common::String for OSystem::setShader 2022-10-08 23:39:18 +02:00
Cameron Cawley 64c359b5cb GUI: Replace the options for selecting shaders 2022-10-08 23:39:18 +02:00
Cameron Cawley c5705561b0 OPENGL: Add compatibility checks for LibRetro shader support 2022-10-08 23:39:18 +02:00
Cameron Cawley cdbb0fa32f OPENGL: Better path lookup and error handling 2022-10-08 23:39:18 +02:00
Cameron Cawley 5e4aaf5757 OPENGL: Render the screen and cursor to a target before applying shaders 2022-10-08 23:39:18 +02:00
Cameron Cawley 851b17affa OPENGL: Fix compilation after recent changes 2022-10-08 23:39:18 +02:00
Lothar Serra Mari 93b46ec40d BACKENDS: OPENGL: Resolve merge conflicts 2022-10-08 23:39:18 +02:00
Lothar Serra Mari 133341adf5 BACKENDS: OPENGL: Fix shader prefix path 2022-10-08 23:39:18 +02:00
Lothar Serra Mari 4f4f0b82a8 BACKENDS: OPENGL: Add very basic stock.glsl shader as fallback option 2022-10-08 23:39:18 +02:00
Lothar Serra Mari daeda92d3e BACKENDS: OPENGL: Add stub for loading shader preset from config file 2022-10-08 23:39:18 +02:00
Lothar Serra Mari 203af422d4 BACKENDS: OPENGL: Use simpler shader as test case 2022-10-08 23:39:18 +02:00
Johannes Schickel 9f3249286f BACKENDS: OPENGL: Initial WIP import for shader support 2022-10-08 23:39:18 +02:00
Donovan Watteau 7c92832db9 VKEYBD: Fix euro symbol description in keycodeDescTable
This was encoded in Windows-1252 and it triggered a
-Winvalid-source-encoding warning. Just use ASCII, as for the other
descriptions.
2022-10-07 12:45:40 +02:00
Donovan Watteau 4be173fc49 VKEYBD: Repair the apostrophe key in the virtual keyboard
The `target` and `name` attributes for this key didn't use the same
character, so they never matched and the key had no effect.
2022-10-07 12:45:40 +02:00
Donovan Watteau eacd30cceb VKEYBD: Use compresslevel=9 if available in vkeybdpack.py
So that the .zip files don't get too big.
2022-10-07 12:45:40 +02:00
Le Philousophe 42ff7120dc SDL: Fix missing replacement for enginesShadersSupported 2022-10-06 19:53:52 +02:00
Cameron Cawley 252d9f20e3 OPENGL: Fix crash in forced GLES2 mode 2022-09-24 09:14:08 +02:00
Roland van Laar 76da8b7f3a JANITORIAL: BACKENDS: MIDI: Add override keywords
Mark MidiDriver_Sndio and MidiDriver_ALSA overridden methods
with override.

Removes compile warnings:
`overrides a member function but is not marked 'override'`
when building with clang.
2022-09-20 21:12:35 +02:00
Donovan Watteau bf5e489567 JANITORIAL: Fix "to to" and "if if" typos in some comments 2022-09-11 17:45:25 +02:00
Cameron Cawley 350e21ba58 SDL: Better workaround for enabling the system cursor 2022-08-26 21:47:49 +01:00
Cameron Cawley 4f8962bff9 OPENGL3D: Restore support for aspect ratio correction 2022-08-26 21:47:11 +01:00
Le Philousophe cecd5b3385 SDL: OPENGL: Remove useless #if guard
The code was already guarded by the same condition
2022-08-25 17:57:38 +02:00
SupSuper af8e07b943 BACKENDS: Move isDataAndCDAudioReadFromSameCD() to AudioCDManager 2022-08-24 23:37:33 +03:00
Le Philousophe 111d259015 ALL: Add limits.h for all codebase 2022-08-22 15:38:10 +02:00
Le Philousophe a0f02d93c5 JANITORIAL: Refresh all portdefs
Make sure all needed includes are really included
2022-08-22 15:38:10 +02:00
Le Philousophe a13d0879f2 ANDROID: Convert mouse coordinates between screen ones and virtual ones
In 2D graphical backend it's handled in the WindowedGraphicsManager
which we inherit from through OpenGLGraphicsManager
2022-08-15 20:19:08 +02:00
Carlo Bramini bdd2fb61d1 BACKENDS: OPENGLSDL: Fix corrupted graphics.
Size of the alpha channel is not set to its default value and this caused totally corrupted graphics on my PC.
See:
https://bugs.scummvm.org/ticket/13712
2022-08-12 00:30:05 +03:00
Lars Sundström f9e1806b14 IOS7: Update README.md with support for external devices 2022-08-08 21:08:56 +01:00
Lars Sundström e7759ac0ef IOS7: Implement getHardwareInputSet to get connected devices
Trigger EVENT_INPUT_CHANGED when devices connects to make the ScummVM
engine update the hardware input set.
2022-08-08 21:08:56 +01:00
Lars Sundström d76bc708c0 IOS7: Add isConnected property to GameControllers 2022-08-08 21:08:56 +01:00
Lars Sundström 8d395fd790 IOS7: Add support for Extended Gamepad controllers
Add support for Extended Gamepad controllers. What defines extended
gamepad controllers can be found here:
https://developer.apple.com/documentation/gamecontroller/gcextendedgamepad

Support has been added for controlling the pointer position using the
left thumbstick, left clicks using the A-button and right clicks using
the B-button. Also the Main menu can be accessed using the Home/Menu
button.

The thumbstick values are received when changed, however if holding the
thumbstick in the same position the valueChangedHandler will not be
called. Therefore store the X- and Y-axis values and begin to poll
readings of the stored values for as long as the thumbstick is out of
the center position.
2022-08-08 21:08:56 +01:00
Lars Sundström f18305e715 IOS7: Add support for Joystick actions in GameController
Joystick actions are suitable for joysticks and gamepads where the
movements are updated by a controller stick. On gamepads that's usually
a thumbstick.

Add joystick events which can be triggered by each implemented
controller that should utilize the ScummVM Joystick events.
2022-08-08 21:08:56 +01:00
Lars Sundström c3513a151e IOS7: Add Mouse support using GameController framework
Add support for mouses using the GameController framework. This requires
iOS 14 and up. The trackpad on the magic keyboard to iPads is connected
as a mouse and of course other connected mouses.

The mouse movements triggers calls to the mouseMovedHandler code
block. The calls delivers delta movements on the X and Y axis from the
last pointer position. It doesn't keep track on where the pointer is in
the view. That's where pointerPosition property in the iPhoneView comes
into place.
2022-08-08 21:08:56 +01:00
Lars Sundström db2e15b3f1 IOS7: Factor out touch pointer handling to TouchController class
Move touch inputs to a TouchController class to move some logic from the
iPhoneView class. Only do this for touches on screen since connected
trackpads can generate touches as well. The latter ones are of type
UITouchTypeIndirectPointer while touches on screen are of type
UITouchTypeDirect. They are separated thanks to the preference key
UIApplicationSupportsIndirectInputEvents set to YES in Info.plist.
Without the preference above, there is no way to distinguish touches
from screen from a trackpad.
2022-08-08 21:08:56 +01:00
Lars Sundström 15507ebc50 IOS7: Add GameController base class
Add a GameController base class which handles user inputs from a
controller. The input is either a pointer move or a button action.
If the input is a pointer move, make sure that the move is within
valid coordinates in the game (respecting the resolution which is
most probably lower than the view resolution).
2022-08-08 21:08:56 +01:00
Lars Sundström 877d1ffa67 IOS7: Add pointerPosition property to iPhoneView class
Let the view keep the current pointer position as a property, allowing
it to be modified by controllers.
2022-08-08 21:08:56 +01:00
Lars Sundström 6387046666 IOS7: Make iPhoneView addEvent and getMouseCoords functions public
Squash with the one above
2022-08-08 21:08:56 +01:00
Lars Sundström f8604faf41 IOS7: Set view controller's preference to lock the pointer
Setting this property to true indicates the view controller’s preference
to lock the pointer, although the system may not honor the request.

For the system to consider locking the pointer:
The scene must be full screen, not in Split View or Slide Over, with no
other apps in Slide Over.
The scene must be in the UISceneActivationStateForegroundActive state.

The ScummVM iOS7 client fulfills the above so the pointer is locked.
Locking the pointer hides the OS cursor (the dot), however that's wanted
since the ScummVM engine draws its own pointer.
2022-08-08 21:08:56 +01:00
Le Philousophe 8829a9b4c0 VITA: Remove the now useless alternative targets 2022-08-07 18:15:09 +02:00
Le Philousophe 2a84d3e988 VITA: Add plugins support 2022-08-07 18:15:09 +02:00
Hubert Maier 01cb613cee AMIGAOS: Fix target installation 2022-08-05 14:12:04 +02:00
Alexander Tkachev 09639e7f23 GUI: Add files amount to SaveLoadCloudSyncProgressDialog
Also adds Cloud::Storage::SyncDownloadingInfo struct to pass around a bunch of numbers instead of having 3 methods for each number (in CloudManager, Storage and SavesSyncRequest).
2022-08-02 22:08:19 +02:00
Alexander Tkachev 85739018fe GUI: Show bytes sizes in saves sync dialog
And also makes percentage calculated based on bytes sizes, not files count.
2022-08-02 22:08:19 +02:00