Commit Graph
39166 Commits
Author SHA1 Message Date
Unknown W. Brackets 89aeb2484e UI: Fix right analog with single button.
Release first, then press so that we press when the opposing direction is
mapped to the same button.
2022-11-27 15:32:56 -08:00
Unknown W. Brackets d09b2e4ce8 Merge pull request #16448 from hrydgard/cull-fix
Empirical attempt at fixing #15661
2022-11-27 15:16:45 -08:00
Henrik Rydgård 21647cd3c1 Blind workaround for Shining Ark circle button problem
Seems the game might not handle the case of confirm button being set to
cross properly, so force it to circle if this game is running.

Fixes #15663 (hopefully..)
2022-11-27 23:32:43 +01:00
Henrik Rydgård 72029b678a Empirical attempt at fixing #15661
Basically, software culling fails in some configuration, like the one we
end up with on Mali.

As noted by unknownbrackets in #15661, the viewport Z scale, offset is -0.0, 0.0.

We end up with CalcCullParams computing minZValue == maxZValue == 1.0f,
and with the vertices ending up with z,w == 1.0, 1.0.
and as a result, the inside/outside calculations will always decide that
it's outside.

Changing the comparisons from >= / <= to > / < fixes the problem, but I
don't know if this might break something else.

Anyhow, here's the simple way to repro on PC:

Change the ending of GPU_Vulkan::CheckFeatures to:

```c
	return GPU_USE_LIGHT_UBERSHADER | GPU_USE_BLEND_MINMAX | GPU_USE_TEXTURE_NPOT | GPU_USE_INSTANCE_RENDERING |
		GPU_USE_VERTEX_TEXTURE_FETCH | GPU_USE_TEXTURE_FLOAT | GPU_USE_16BIT_FORMATS | GPU_USE_TEXTURE_LOD_CONTROL |
		GPU_USE_DEPTH_TEXTURE | GPU_USE_ACCURATE_DEPTH;
```
2022-11-27 23:16:16 +01:00
Henrik Rydgård 200e2f26c4 OffsetY fix for non-vulkan backends 2022-11-27 22:58:49 +01:00
Henrik Rydgård c2d54ea0aa Merge pull request #16446 from hrydgard/aspect-fix
Aspect ratio configuration fixes
2022-11-27 22:55:04 +01:00
Henrik Rydgård e02db20a2d Some more UI fixes. Live update for the aspect slider 2022-11-27 21:59:04 +01:00
Henrik Rydgård 72ec865f7e Fix for the aspect ratio plugin variable. Disable aspect ratio control in stretch mode. 2022-11-27 21:55:22 +01:00
Henrik Rydgård 7c72fa06ee Fix issue where render resolution wasn't applied correctly. 2022-11-27 21:34:51 +01:00
Henrik Rydgård 11c1b539e0 Merge pull request #16445 from hrydgard/new-screen-size-controls
New screen size controls on Display Layout & Effects screen
2022-11-27 20:04:32 +01:00
Henrik Rydgård 973eec5b42 Another tweak to the OpenGL adreno bug detection.
See #16015
2022-11-27 20:02:06 +01:00
Henrik Rydgård dbd799bce3 Add new translation key "Aspect Ratio" 2022-11-27 19:44:45 +01:00
Henrik Rydgård a0f10141ab lang; Stretching->stretch 2022-11-27 19:35:13 +01:00
Henrik Rydgård 981a8778a4 Lang: Remove old stuff, add missing lines 2022-11-27 19:32:41 +01:00
Henrik Rydgård 689860b3a0 Qt buildfix, apply feedback 2022-11-27 17:33:15 +01:00
Henrik Rydgård 0a3d78221e Fix drag-background-through-buttons problem by adding "touch exclusive" mode to viewgroups.
Not using universally because I don't want to debug all the issues...
2022-11-27 16:16:18 +01:00
Henrik Rydgård d310636eb4 Break out the background into a separate view. 2022-11-27 16:16:18 +01:00
Henrik Rydgård d8ff6876cd Rework UI a bit (first step, will clean up more). 2022-11-27 16:16:18 +01:00
Henrik Rydgård d667bd84a3 Add back the old stretch-if-close-to-16:9 hack 2022-11-27 16:16:18 +01:00
Henrik Rydgård bdfde4cbac Implement the new screen sizing parameters 2022-11-27 16:16:04 +01:00
Henrik Rydgård 71410f2cb7 Merge pull request #16443 from hrydgard/minor-vulkan-refactor
Break out VKRFramebuffer/VKRRenderpass from VulkanRenderManager
2022-11-27 11:30:04 +01:00
Henrik Rydgård 31af24a230 Break out VKRFramebuffer/VKRRenderpass from VulkanRenderManager 2022-11-27 10:22:37 +01:00
Henrik Rydgård e4998ade6f Merge pull request #16442 from unknownbrackets/vulkan-geometry-safety
Vulkan: Only use geometry shaders with accurate depth
2022-11-27 09:02:57 +01:00
Unknown W. Brackets 1d00824528 Vulkan: Only use geometry shaders with accurate z.
Just to be safe, since that's what it's most well tested with.
2022-11-26 23:28:57 -08:00
Henrik Rydgård 767a877ab9 Merge pull request #16441 from ThirteenAG/master
Exposed more emulator things to devctl api
2022-11-27 00:02:32 +01:00
Henrik Rydgård a4b4d4ae2f Merge pull request #16439 from unknownbrackets/ppge-512
PPGe: Respect 512 texture limit
2022-11-27 00:01:58 +01:00
Henrik Rydgård 8952110486 Merge pull request #16440 from unknownbrackets/softgpu-inversion
softgpu: Allow inversions when w >= -1.0
2022-11-26 23:01:19 +01:00
ThirteenAG 223ca5888e exposed more emulator things to devctl api
added
EMULATOR_DEVCTL__TOGGLE_FASTFORWARD
EMULATOR_DEVCTL__GET_ASPECT_RATIO
EMULATOR_DEVCTL__GET_SCALE
2022-11-27 00:26:57 +03:00
Unknown W. Brackets 909f3feaea softgpu: Allow inversions when w >= -1.0.
This seems to match desired cases well, see #16131.  Likely still
inaccurate to what hardware actually does.
2022-11-26 12:11:56 -08:00
Unknown W. Brackets 2e1e11f116 PPGe: Respect 512 texture limit.
If a message ends up rendering wider than 512 (which can happen because we
use higher quality fonts than 1x), draw in tiles to avoid accessing texels
outside 512.

Fixes an issue in Sakura Taisen in the software renderer.
2022-11-26 12:03:21 -08:00
Henrik Rydgård 0b375bb357 Colin McRae: Use compat flag to avoid GPU readbacks for VRAM->VRAM copies.
Improves performance when the sun is visible, see #7810
2022-11-26 18:53:13 +01:00
Henrik Rydgård f4b78bacd7 MacOSX: Apply potential fix for #16376
See #16376.

Tested not to break anything on MacOS Mojave. Unfortunately I can't test on Ventura on my x64 mac, it's too old.
2022-11-26 10:38:23 +01:00
Henrik Rydgård 9c033fb57c Merge pull request #16437 from lvonasek/feature_openxr_hud_improvement
OpenXR - HUD improvements
2022-11-25 21:21:57 +01:00
Henrik Rydgård 612ad59e20 Merge pull request #16435 from hrydgard/more-ui-cleanups
More post-shader UI improvements
2022-11-25 18:29:44 +01:00
Henrik Rydgård b7a594ed94 Merge pull request #16436 from hrydgard/basic-vr-ci
Add basic CI support for build-testing the Android-based VR build.
2022-11-25 18:29:21 +01:00
Lubos aa66b93124 MOve VR heuristics into a standalone method 2022-11-25 16:05:30 +01:00
Lubos b2d809f4cd typos fixed 2022-11-25 15:58:51 +01:00
Lubos 1ef036d07c OpenXR - Farplane distance limit adjusted 2022-11-25 13:33:53 +01:00
Lubos 390ee28cd9 OpenXR - HUD fixes 2022-11-25 12:01:51 +01:00
Lubos 0b089dd1e5 OpenXR - HUD support improved 2022-11-25 11:08:49 +01:00
Henrik Rydgård d38019ee6a Add basic CI support for build-testing the Android-based VR build.
Note: Doesn't do APK generation, to keep things simple, instead using
the old NDK build.

Later should run gradle on github CI too, I guess.

Fixes #15981
2022-11-25 10:49:59 +01:00
Henrik Rydgård 8c31625fdc Make post-shader parameter values update live 2022-11-25 10:28:03 +01:00
Henrik Rydgård 23ba0d0515 Fix layout issues in AbstractChoiceWithValueDisplay. Remove title text from post shaders to fit. 2022-11-25 10:23:59 +01:00
Henrik Rydgård d97035fffc Merge pull request #16434 from unknownbrackets/stencil-opt
Vulkan: Use stencil export when available
2022-11-25 10:06:41 +01:00
Henrik Rydgård 8f141d1872 Merge pull request #16431 from iota97/grid-center
Snap from screen center
2022-11-25 10:03:45 +01:00
Lubos 38fa30b42d OpenXR - Camera adjust reset fixed 2022-11-25 09:43:12 +01:00
Lubos 3aae47c331 OpenXR - Add a TODO for follow-up PR 2022-11-25 09:31:44 +01:00
iota97 e4234bcfaf Solve easy exercise left to the reader 2022-11-25 09:31:30 +01:00
Lubos 08432dd4e1 OpenXR - Camera controls adjust HUD instead of FOV 2022-11-25 09:25:23 +01:00
Lubos a58ea86318 OpenXR - HUD scale option added 2022-11-25 09:18:16 +01:00