Commit Graph
69 Commits
Author SHA1 Message Date
Cameron Cawley 26a2e738fd ANDROID: Fix build after FrameBuffer class changes 2024-11-30 23:36:34 +01:00
Le Philousophe c8c3a316d6 ANDROID: Properly apply touch settings when starting a game
The 2D graphics backend is recycled from the GUI when starting a game.
As a consequence, touch settings were never applied.
2024-09-14 16:51:19 +02:00
Le Philousophe a98df4e445 ANDROID: Rework the virtual gamepad controller
- Use a SVG asset to allow for better scalability
- Make the controller visible when touching the screen
- Allow for oblique moving by placing finger between two directions
- Add more buttons on the center area of the screen (GUIDE, START, LEFT
  STICK, RIGHT STICK) and simplify right area (only four buttons)
- Don't track all fingers, only the ones needed
- Cleanup now unused code
2024-08-31 16:45:32 +02:00
Le Philousophe 678a8fe4cb ANDROID: Add alpha setting to textures in 3D backend
This allows to tune the transparency of the texture easily.
2024-08-31 16:45:32 +02:00
Le Philousophe 85509bd428 ANDROID: Use float constants
This avoids promotion to double
2024-06-22 11:52:21 +02:00
Le Philousophe 27c7572bd7 ANDROID: Get HiDPI density from Android metrics 2024-01-24 21:53:07 +01:00
Le Philousophe 2097e32e3d ANDROID: Check for initSurface failures
Without a surface we can't do anything, so error out
2023-12-10 17:39:46 +01:00
Cameron Cawley bcc9259382 BACKENDS: Report if the backend supports cursors with alpha channels 2023-10-29 02:02:11 +02:00
antoniou79 525d4ae46c ANDROID: GRAPHICS3D: Fix typo for virtual method 2023-08-07 08:52:15 +03:00
Cameron Cawley d8cca29783 BACKENDS: Allow filling part of the screen with OSystem::fillScreen 2023-08-06 23:03:46 +02:00
Le Philousophe e3877d2606 ANDROID: Move game at the top of screen when keyboard is shown 2023-07-09 11:48:27 +02:00
Le Philousophe ce5427960c ANDROID: Remove leftover declaration 2023-07-01 17:52:30 +02:00
Le Philousophe d371b50d30 ANDROID: Add setting to to disable screen rotation 2023-07-01 16:26:19 +02:00
Le Philousophe 3a838c99f9 ANDROID: Various small fixes
- Comment and space fixes
- Remove outdated setting
2023-07-01 16:26:19 +02:00
Le Philousophe 1cffb9c86a ANDROID: Don't make GL calls when there is not context
This is forbidden by EGL specification
2023-06-26 15:25:27 +03:00
Le Philousophe 79da015e8f ANDROID: Various fixes to textures
- Don't create texture in constructor: it's called before the context is
  created
- Don't leak texture names when calling reinit()
- Fix allocBuffer return condition
- Don't call GL if there is no texture object
- Make sure all textures are released and inited
2023-06-26 15:25:27 +03:00
Le Philousophe bc438d078a ANDROID: When resizing don't reset everything
Only reinitialize the needed bits.
EGLSurface needs to be reset to take the new size into account.
GLSurfaceView in AOSP does the same thing.
2023-06-26 15:25:27 +03:00
Le Philousophe 560793e571 ANDROID: Don't warp mouse when showing overlay in game 2023-06-26 15:25:27 +03:00
Le Philousophe 14d57b2b61 ANDROID: Don't use a framebuffer when it's not needed
This also fixes a bug in frame buffer placement in vertical aspect ratio
2023-06-26 15:25:27 +03:00
Le Philousophe c04313ba9f ANDROID: Fix overlay background capture
In GLES2, only RGBA8888 support is guaranteed.
Texture needs to be recreated on GPU before use and is already flipped.
2023-06-26 15:25:27 +03:00
Le Philousophe 6ee040ee55 ANDROID: Fix glClearColor call
This function takes floats between 0 and 1 and not integers
2023-06-04 18:22:59 +02:00
Antoniou Athanasios 8ce6a32ac2 ANDROID: Clean up log code and use Backends::Log 2023-03-26 12:05:12 +03:00
elasota 0a32f23bd6 BACKENDS: ANDROID: Update log message for setMouseCursor 2023-02-19 23:51:09 +01:00
elasota 3db67a33ac GRAPHICS: Add support for pixels with masks and inverted pixels 2023-02-19 23:51:09 +01:00
Cameron Cawley 7f2d9fd0fd GRAPHICS: Split conversion.cpp into multiple files 2022-12-22 23:45:14 +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 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
Le Philousophe 98c306376f OPENGL: Merge both OpenGL shaders objects 2022-06-26 18:32:10 +02:00
Le Philousophe 4ab044a254 OPENGL: Merge both OpenGL contexts 2022-06-26 18:32:10 +02:00
Le Philousophe 57e27dcf12 ANDROID: Let user customize its preferred touch modes
There are 3 settings: in menus, in 2D games, in 3D games
2022-06-14 00:08:04 +03:00
Le Philousophe 1c18c269dc ANDROID: Add GLAD support 2022-01-18 16:49:03 +01:00
Paweł Kołodziejski 4f0e5ed3c0 GRAPHICS: Moved shader code where it's actually used 2022-01-10 03:34:48 +01:00
Paweł Kołodziejski 27773309b7 BACKENDS: Corrected include paths for Android 2022-01-10 02:23:17 +01:00
Le Philousophe 92dd9c0911 ANDROID: Keep last touch mode when displaying overlay 2022-01-02 17:45:32 +01:00
Le Philousophe b6c0a1c6c8 ANDROID: Refactor touch controls to be graphics backend agnostic 2022-01-02 17:45:32 +01:00
Le Philousophe 7b36b56925 ANDROID: Rework Android 3D texture interfaces 2022-01-02 17:45:32 +01:00
Paweł Kołodziejski 20cb0ae228 ALL: Cleanup ResidualVM -> ScummVM 2021-12-26 21:19:38 +01:00
Eugene Sandulenko abea37c9bb ALL: Update ScummVM project license to GPLv3+ 2021-12-26 18:48:43 +01:00
Le Philousophe 6aea08860f ANDROID: Chooose the best surface formats offered by the system 2021-12-16 00:09:25 +01:00
Le Philousophe 24565a5bd8 ANDROID: Rework 3D GLES textures
The abstraction added will allow the backend to allow surface
customization
2021-12-16 00:09:25 +01:00
Le Philousophe 35fff1ab79 ANDROID: Add cursor scaling to 3D backend 2021-12-16 00:09:25 +01:00
Le Philousophe 8094b77d21 ANDROID: Simplify 3D backend 2021-12-16 00:09:25 +01:00
Le Philousophe 04e05e7a5f ANDROID: Sync 3D backend HiDPI with 2D one 2021-12-05 16:43:30 +01:00
Le Philousophe f12409d321 ANDROID: Simplify texture setup in 3D
There is no specific format for the game texture, use 16-bit one
2021-12-05 16:43:30 +01:00
Le Philousophe 30baf0e599 ANDROID: Unbind everything to ensure engine don't use our stuff 2021-12-05 16:43:30 +01:00
Le Philousophe 05e5e10dec ANDROID: Rework 3D backend to not mangle game GL state
We don't need scissor test in 3D, it was a leftover from 2D.
Don't split code in multiple functions when it's not needed.
2021-12-05 16:43:30 +01:00
Le Philousophe 91cf76aa64 ANDROID: Reset the framebuffer when initializing back the surfaces
It's needed when application is paused and resumed
2021-12-05 16:43:30 +01:00
Le Philousophe d6f37a161b ANDROID: Remove again updateEventScale
It was removed in android in #1695 but not in android3d in ResidualVM.
2021-11-29 00:04:45 +01:00
Le Philousophe 5b62141b8f ANDROID: Fix code style 2021-11-29 00:04:45 +01:00
Le Philousophe 2bb9d5f3df ANDROID: Remove outdated piece of code 2021-11-29 00:04:45 +01:00