Henrik Rydgård
a0b019d473
Merge pull request #11455 from unknownbrackets/android-resize
...
Android: Fix Vulkan immersive startup
2018-10-08 07:52:47 +02:00
Unknown W. Brackets
9cb471e5bd
Android: Avoid race on surface destroyed.
...
Avoids a segfault in this scenario.
2018-10-07 16:13:34 -07:00
Henrik Rydgård
a3a94bdd33
Avoid calling any GL calls during shutdown on Android. Should help #11063
...
The context is already lost and we're really running shutdown when the process is woken
up again. Additionally, orderly shutdown through the button doesn't happen
on the render thread so remove a couple of asserts that are wrong.
2018-10-06 21:31:52 +02:00
Henrik Rydgård
3c5b2d69f6
Android: When using the hardware scaler, round the size to divisible by 4. Might help #11151
2018-08-26 19:26:54 +02:00
Unknown W. Brackets
b4496f1975
Core: Move config enums to separate file.
...
These are a bit strewn about and there are constants that aren't
consistently used, which just adds confusion.
2018-06-23 10:59:18 -07:00
Unknown W. Brackets
767886c4a3
Android: Fix C++ EGL code path with threaded GLES.
...
Still has the same problems as before.
2018-06-17 21:56:18 -07:00
Henrik Rydgård
343763cf5a
More paranoia from Google Play
2018-05-27 22:16:36 +02:00
Henrik Rydgård
b730d187e8
Add some paranoid checks guided by stack traces from Google Play
2018-05-27 22:12:59 +02:00
Unknown W. Brackets
3f1544612b
Android: Add missing graphics shutdown calls.
...
These were there for graphics restart (like resize) but not for full
shutdown, which was causing crashes during shutdown sometimes.
See #10931 .
2018-04-21 08:33:53 -07:00
Unknown W. Brackets
6ba0a6cdfd
Android: End GLES renderer after emu thread join.
...
This matches other backends, and prevents things from being added to the
deleter after GLES end. Fixes #10849 .
2018-04-08 19:28:15 -07:00
Henrik Rydgård
188ed07d77
Android: Have haptic feedback ignore the global setting, but default to off.
2018-03-25 13:42:57 +02:00
Henrik Rydgård
fb15208777
Android: Reload the config after getting storage permission, and ask immediately. Should help #10670
2018-03-24 12:52:51 +01:00
Henrik Rydgård
08c3e13517
Do more detailed checks for Vulkan availability. Should hopefully solve #10729 .
2018-03-17 11:36:16 +01:00
Henrik Rydgård
9f9903c02e
Fixes to vulkan restart logic on Android. Should help #10696
2018-03-11 17:14:11 +01:00
Henrik Rydgård
f196a877e6
Android: Fix fallback from Vulkan to GL.
2018-03-03 00:00:18 +01:00
Henrik Rydgård
926b3873df
Fix issue with Vulkan task switching and resolution changes on Android.
2018-02-12 17:47:31 +01:00
Unknown W. Brackets
cdf378d20c
GLES: Prevent race condition on shutdown.
...
emuThreadState might become STOPPED before the last frame has been run,
which can cause WaitUntilQueueIdle to hang.
It's simpler just to wait until StopThread() is called, since it now is.
This will line up properly with run_.
2018-02-11 11:40:11 -08:00
Unknown W. Brackets
48b4a5f378
Android: Fix race condition on shutdown.
2018-02-10 16:55:48 -08:00
Henrik Rydgård
ae19c48138
Cleanup the Windows thread stuff to work like the other platforms. Not quite perfect yet.
2018-02-07 16:00:29 +01:00
Henrik Rydgård
7f30037e45
Android: Fix emuthread management to exit cleanly without hanging. Helps with task switching on Android.
2018-02-07 13:11:43 +01:00
Henrik Rydgård
bd3a681fd3
Enough JNI/threading hackery to get it to run on Android! Broken readbacks make it crash alot though.
2018-01-28 17:30:33 +01:00
Henrik Rydgård
7abb8702ce
Work towards threaded GL on Android. Now TextDrawer barfs on wrong JNI context.
2018-01-28 17:29:27 +01:00
Henrik Rydgård
fdca06d208
More work on shutdown, still hanging though.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
062608ad78
Start moving the framebuffer stuff over to the render manager
2018-01-27 15:10:17 +01:00
Henrik Rydgård
5d3c1e7871
Additional header cleanup
2018-01-20 21:55:25 +01:00
Henrik Rydgård
133bef575a
Split Android graphics context implementations into their own files.
2018-01-20 21:47:16 +01:00
Unknown W. Brackets
766b40aad8
GPU: Reset GPUBackend on graphics init.
...
This way, when using a port that doesn't support Vulkan, it doesn't just
silently use upside down GL, etc.
2017-12-26 16:02:55 -08:00
Unknown W. Brackets
d6da758ed3
GPU: Remove duplicate BACKEND constants.
2017-12-26 15:55:24 -08:00
Henrik Rydgård
2250ef799c
Avoid including platform-specific headers in VulkanContext.h
2017-12-18 12:54:25 +01:00
Unknown W. Brackets
2943bbdbfd
UI: Cancel loaders on shutdown.
...
Improves backend switching / locking / etc. performance when the recent
list has games that aren't currently available.
Also, remove unnecessary duplicate gameinfo flush on EGL loop shutdown.
Already happens in NativeShutdownGraphics().
2017-12-09 16:48:38 -08:00
Henrik Rydgård
7d0fc9ce65
Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc.
2017-12-07 15:05:59 +01:00
Unknown W. Brackets
9c046d7518
Android: Fix race condition on lock/unlock.
...
This might be related to the recreate from bad orientation - sometimes, it
was pause/resuming pretty quick, which would get stuck waiting for a join.
2017-12-03 20:32:17 -08:00
Unknown W. Brackets
79f03a0767
Android: Fix crash on shutdown/restart.
...
The text drawing textures needed to be deleted before shutting down their
allocator. Fixes #10244 .
2017-12-03 14:39:00 -08:00
Henrik Rydgård
51a6c67502
Crash in a more appropriate place if missing a drawcontext (happens on really weak devices only)
2017-11-29 19:29:53 +01:00
Henrik Rydgård
6ea669368c
Crash reports from 5% rollout of 1.5: Make some asserts dbg_asserts for now, try to fix an issue with framebuffers when postproc is enabled.
2017-11-29 18:53:52 +01:00
Henrik Rydgård
234f30a372
Minor error checking improvement
2017-11-26 14:52:26 +01:00
Henrik Rydgård
ee759d83e3
Oops, android buildfix
2017-11-22 14:42:01 +01:00
Henrik Rydgård
b1fce1c61a
Android: Fix #9697 where we'd hang if we lacked permission and got a filename as a command.
2017-11-21 13:55:14 +01:00
Henrik Rydgård
27a60f5e58
Fix message asserts on Android. Add more of them to check things in Vulkan code.
2017-11-20 12:11:47 +01:00
Henrik Rydgård
1fb7560a14
Android: When creating shortcuts, put the file path in data, not in Extras.
...
Actually, let's keep extras around now for very limited backwards compatibility but check data first.
2017-11-16 14:45:47 +01:00
Henrik Rydgård
a1e593b6ba
Fix the "vulkan not found" message on android. Fixes #10034
2017-11-16 13:45:15 +01:00
Unknown W. Brackets
b1554ef061
Vulkan: Cut down on asserts during init.
...
In case something is horribly wrong, or our desired settings aren't
compatible, let's try to stumble our way out.
More things can fail, but the goal is to detect failure or at least be
able to render UI settings to swap out of Vulkan.
2017-11-12 21:56:55 -08:00
Henrik Rydgård
1c76d28843
Avoid double-initializing the Vulkan backbuffer on startup.
2017-11-10 13:13:56 +01:00
Henrik Rydgård
ee768ca949
Logging improvements, avoid resetting the Android text drawer unnecessarily
2017-11-10 13:02:24 +01:00
Henrik Rydgård
3cc5d8f40a
More minor vulkan fixes and cleanups. Don't actually call "Resized" if the size stays the same.
2017-11-10 12:41:06 +01:00
Henrik Rydgård
0a2b20bf59
More logging and tweaking
2017-11-10 12:09:42 +01:00
Henrik Rydgård
6eb58b1252
Keep the draw context up to date in a bunch of places. More logging.
2017-11-09 16:28:22 +01:00
Henrik Rydgård
ec504756e0
Vulkan: Improve init/shutdown logging on Android. Fix a bug where we'd not run InitDeviceObjects on GPU_Vulkan sometimes.
2017-11-09 16:02:05 +01:00
Henrik Rydgård
4e04780adc
Upgrade glslang to a fresh version (used to compile Vulkan shaders). Might help #10065 ?)
2017-11-09 13:36:18 +01:00
Henrik Rydgård
c6c90d4cbc
Improve Vulkan device selection mechanism to prefer discrete GPUs
2017-11-09 12:21:20 +01:00