Commit graph

5039 commits

Author SHA1 Message Date
Unknown W. Brackets
e8ca467bc9 Vulkan: Allow full depth range with depth clamp. 2017-12-26 16:54:40 -08:00
Unknown W. Brackets
b94ca6e75e Vulkan: Use depth clamping, where available.
This fixes, for example, Shadow of Destiny, even without the hack.
2017-12-26 16:54:39 -08:00
Unknown W. Brackets
f263d207b3 GPU: Match GE saved context better.
Just in case some game stores it somewhere, but also makes it simpler to
write tests against hardware.
2017-12-26 16:20:11 -08:00
Unknown W. Brackets
496b2bff35 Vulkan: Fix fragment depth rounding.
Was slightly off in the accurate depth path.
2017-12-26 16:19:11 -08:00
Henrik Rydgård
43166c47e6
Merge pull request #10450 from unknownbrackets/bone-matrix
GPU: Avoid memory corruption on bone matrix > 96
2017-12-26 10:36:16 +01:00
Unknown W. Brackets
93a712660c GPU: Avoid memory corruption on bone matrix > 96.
See #9574.  Seen in Zill O'll Infinite, thanks to Kitsu-neechan for
tracking this down.
2017-12-26 01:09:23 -08:00
Henrik Rydgård
ffa48cb4fc
Merge pull request #10447 from unknownbrackets/update-vram
Remove "read framebuffers to memory" FBO auto-download
2017-12-25 22:37:48 +01:00
Unknown W. Brackets
ebce6da223 UI: Remove auto-download options.
See previous commit removing actual functionality.
2017-12-25 11:20:26 -08:00
Unknown W. Brackets
025a806ab4 GPU: Remove FBO auto-download hack.
See #6261.  This should be replaced now with block transfer detection,
which is faster and doesn't cause crashes.

Games that previously required this setting should use block transfer
instead.  If that doesn't work, it's a bug.
2017-12-25 11:17:59 -08:00
Unknown W. Brackets
a37a8ca4f0 GPU: Add quick method for debugging.
Helps when you want to bail out to the debugger quickly.
2017-12-24 18:05:44 -08:00
Henrik Rydgård
1c9e970b37
Merge pull request #10441 from unknownbrackets/softgpu-bbox
Software: Execute bounding box tests
2017-12-24 22:53:04 +01:00
Henrik Rydgård
138cd9e851
Merge pull request #10442 from unknownbrackets/depth-clear
GPU: Reduce depth blits when not updated
2017-12-24 22:52:35 +01:00
Unknown W. Brackets
0956fa3ff6 GPU: Reduce depth blits when not updated.
If the game initially clears the depth in a buffer, but then never uses
that depth again, don't keep blitting depth.

Improves #8538, by preventing the depth blits in this case.
2017-12-24 11:52:15 -08:00
Unknown W. Brackets
206979fed6 Software: Execute bounding box tests.
Fixes #10148.
2017-12-24 11:05:52 -08:00
Unknown W. Brackets
2031b2ef98 GE Debugger: Fix some crashes while stepping.
Mostly on Vulkan, but possibly on other backends.
2017-12-22 12:29:08 -08:00
Henrik Rydgård
c3ac0659bd
Merge pull request #10430 from unknownbrackets/hwtess
Add another restriction for GL HW tessellation
2017-12-22 08:11:38 +01:00
Unknown W. Brackets
c5897a1c5c GPU: Cleanup some feature flags usage. 2017-12-21 18:50:41 -08:00
Unknown W. Brackets
510f9652a0 GLES: Improve HW tess requirements validation.
We also need texelFetch of some kind, seen in reporting.
2017-12-21 18:44:47 -08:00
Unknown W. Brackets
8e2682d93c GLES: Reduce conversion buf size if possible.
No need to use the stride for the temp buf.  May avoid issues if the
driver crashes when reading outside the FBO.
2017-12-21 12:02:45 -08:00
Unknown W. Brackets
30871bfcd1 GLES: Avoid buffer on GLES2 for h=1 / CLUT. 2017-12-21 11:52:11 -08:00
Unknown W. Brackets
75aa65908c GLES: Pack without stride where possible.
This may possibly help #10425 in case the behavior is different when going
over width when reading pixels.
2017-12-21 11:41:53 -08:00
Henrik Rydgård
7f758d52dc Statically link a vulkan loader on Linux. Use to to init vulkan on X11. Unfortunately, it's broken. 2017-12-21 11:02:11 +01:00
Henrik Rydgård
5c1dad9909 Remove more obsolete ifdefs 2017-12-19 17:59:00 +01:00
Henrik Rydgård
dc6a4ea753 Fix annoying name clashes (Status is in X11 headers..) 2017-12-15 16:34:29 +01:00
Henrik Rydgård
da3a7fbc5f
Merge pull request #10385 from unknownbrackets/ui-tween
UI: Add a soft fade when selecting choices / etc.
2017-12-10 23:11:37 +01:00
Henrik Rydgård
be1806e6cf Another driver version check change, should help Galaxy A5 2017 on issue #10361 2017-12-10 19:35:47 +01:00
Henrik Rydgård
2b1f8d36f1 Force AccurateDepth on, on older Mali drivers which don't handle reverse Z viewports. Should help #10361 2017-12-10 19:20:36 +01:00
Unknown W. Brackets
cd2dfd5c9a UI: Show a few more flags in build config. 2017-12-10 09:00:51 -08:00
Henrik Rydgård
b10b24feea GLES device lost/store fixes 2017-12-10 02:05:25 +01:00
Henrik Rydgård
299cb007c2 Add a comment, revert a reporting change. 2017-12-10 02:05:25 +01:00
Henrik Rydgård
6e3cb0cd48 Add missing IF statement for instance rendering check.. 2017-12-08 15:53:33 +01:00
Henrik Rydgård
4a0c2ad683 Minor uniform cleanup 2017-12-08 11:54:49 +01:00
Henrik Rydgård
b895f944ff SPIRV-Cross should build on Android now, so remove another platform check. 2017-12-08 10:25:42 +01:00
Henrik Rydgård
99b34c7b45 Use glslang to translate GLSL 1.x postshaders to GLSL 3.0 or later to appease strict GL Core drivers. Should fix #10362
Fixed small bugs, now tested and working on mac.

Add spirv-cross to cmake build
2017-12-08 10:25:42 +01:00
Henrik Rydgård
3eda310009
Merge pull request #10366 from hrydgard/gl-lost-device-rework
Rework GL lost-device to work more like Vulkan. Gets rid of gl_lost manager etc.
2017-12-07 22:48:43 +01:00
Henrik Rydgård
b75c8b72c6 Fix another little inconsistency (two uniforms were merged for bad reasons) 2017-12-07 21:39:09 +01:00
Henrik Rydgård
fb74c9dfeb Clean up a small inconsistency 2017-12-07 21:09:09 +01: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
Henrik Rydgård
2ebae034a4 Vulkan: Show samplers in "shader debug" 2017-12-07 09:28:18 +01:00
Henrik Rydgård
cf5ede493b
Merge pull request #10247 from unknownbrackets/ui-tween
UI: Show a loading message during shader preload
2017-12-06 14:24:21 +01:00
Henrik Rydgård
cb835fb17d
Merge pull request #10240 from unknownbrackets/vertdec
arm64: Use LDRUH instead of two LDRBs
2017-12-06 14:09:26 +01:00
Henrik Rydgård
20af8264c2 Also disable dualsrc blend on Tegra K1. Should help #10208 2017-12-05 08:24:20 +01:00
Henrik Rydgård
ca6865b323 GE Record: After recording a frame, log the filename of the output file. 2017-12-04 15:15:55 +01:00
Unknown W. Brackets
715a7b7318 Global: Silence some unused declaration warnings.
These things aren't used on Android.
2017-12-03 19:22:03 -08:00
Unknown W. Brackets
9f000ddf35 GLES: Avoid hanging while precompiling shaders.
We want to continue updating the screen so it doesn't seem frozen.
2017-12-03 11:30:00 -08:00
Unknown W. Brackets
60c4ac58f0 System: Allow GPU to have delayed loading. 2017-12-03 11:29:07 -08:00
Unknown W. Brackets
5788e33b2f arm64: Use LDRUH instead of two LDRBs.
Small boost - 5.66x instead of 5x steps.
2017-12-03 06:35:44 -08:00
Henrik Rydgård
aa0cc6712f Clip block transfer destinations. Should fix crash in #10011. Stats: Invent some sort of usage metric for device memory allocators. 2017-12-03 15:00:25 +01:00
Henrik Rydgård
1bf44b7ca3 Shutdown fix. 2017-12-03 11:02:49 +01:00
Henrik Rydgård
d0c248368d Use a VulkanDeviceAllocator for thin3d textures. Many devices have a hard limit on the total number of allocs and it's unnecessary to have the UI put pressure on that. 2017-12-03 10:29:41 +01:00