Henrik Rydgård
8f87a9f5c5
Vulkan: De-duplicate pipelines when storing cache
...
The new variety of renderpasses with different transitions causes
duplication. Hopefully drivers are smart enough to re-use work
between similar pipelines as much as possible...
2018-03-19 11:18:37 +01:00
Henrik Rydgård
1dabccb453
Vulkan: Minor logic fixes in the transition elimination
2018-03-18 13:14:20 +01:00
Henrik Rydgård
ce18364a15
Merge pull request #10743 from hrydgard/vulkan-renderpass-barrier-2
...
Vulkan: Further barrier optimizations
2018-03-18 13:02:08 +01:00
Henrik Rydgård
452e299473
Merge pull request #10740 from hrydgard/vulkan-renderpass-barrier
...
Vulkan: Merge some barriers into "subpass dependencies".
2018-03-18 12:29:21 +01:00
Henrik Rydgård
3e7723ea6d
Vulkan: Use finalLayout to optimize away barriers before framebuffer copies.
2018-03-18 12:09:02 +01:00
Henrik Rydgård
2d3655ea23
Vulkan: Get rid of more explicit barriers by merging the finalLayout color transitions into renderpasses.
2018-03-18 12:03:23 +01:00
crocket
b7fa253192
Map SDL controller's back
button to Sony DualShock 4 V2's share button
...
It turns out that `back` button is actually `select` button on PSP.
I confirmed this by clicking touchpad in a game.
`select` button maps to `share` button on Sony DualShock 4 V2.
2018-03-18 19:52:08 +09:00
Henrik Rydgård
6d5f0665fe
Add a super focused workaround for the Mali bug, see #10723
...
Minimizes the performance penalty.
2018-03-18 11:20:45 +01:00
Henrik Rydgård
216bab8a4a
Vulkan: Fix a barrier to be more permissive, there's no outstanding writes from the GPU to wait for.
2018-03-18 09:57:17 +01:00
Henrik Rydgård
f43935b030
Merge framebuffer layout pre-transitions into render pass subpass dependencies.
...
With this, drivers should be able to completely get rid of layout
transitions into render passes that use CLEAR, at least.
2018-03-18 09:55:36 +01:00
Henrik Rydgård
33a1e6a080
Vulkan Clear-renderpass merging: If a copy step is found that reads from the affected buffer, don't merge the clear into the later renderpass.
2018-03-18 09:44:00 +01:00
Henrik Rydgård
648b4eac51
Shrink the vertexCount field in DeferredDrawCall to the 16 bits required.
2018-03-18 09:42:05 +01:00
Unknown W. Brackets
5020182660
SaveState: Default undo slots off on mobile.
...
It's still a pretty useful feature on mobile (considering mistaps), but
it also eats a bunch of storage so it can always be turned back on.
2018-03-17 23:18:26 -07:00
Unknown W. Brackets
862b553c66
SaveState: Show undos in save data manager.
2018-03-17 23:18:25 -07:00
Unknown W. Brackets
2ee8dd7752
SaveState: Keep an undo for each slot by default.
2018-03-17 23:18:25 -07:00
Henrik Rydgård
ad42ec5473
Inner interpreter: Add support for the Gran Turismo hack.
2018-03-17 23:57:50 +01:00
Henrik Rydgård
a966403def
Add another SDL game controller config, fixing #10724
2018-03-17 23:42:10 +01:00
Henrik Rydgård
0ee058320a
Pass new vulkan validation layers. Fix math in FindTransferFramebuffers.
2018-03-17 23:39:02 +01:00
Henrik Rydgård
778beb6cd9
Merge pull request #10736 from unknownbrackets/loading
...
Module: Hash functions only once during loading
2018-03-17 22:24:58 +01:00
Unknown W. Brackets
892c439fcf
Module: Clarify insertSymbols usage.
2018-03-17 13:58:56 -07:00
Unknown W. Brackets
f14f2efa79
Module: Hash functions only once during loading.
...
This fixes the loading speed regression from #10501 .
2018-03-17 13:36:37 -07:00
Henrik Rydgård
473c87273f
Maybe slightly safer vulkan detection code. Might help #10732
2018-03-17 19:22:59 +01:00
Henrik Rydgård
d5b123f10d
Merge pull request #10733 from unknownbrackets/loading
...
Vulkan: Load shaders/pipelines on thread
2018-03-17 16:12:06 +01:00
Unknown W. Brackets
7ae4a9e977
Vulkan: Load shaders/pipelines on thread.
...
In case it's slow when not reading raw cache data.
2018-03-17 07:42:07 -07:00
Henrik Rydgård
99af1d58ad
OpenGL task switching fix
2018-03-17 13:45:12 +01:00
Henrik Rydgård
940d8b4589
Merge pull request #10731 from hrydgard/improve-vulkan-detection
...
Improve Vulkan detection
2018-03-17 13:05:03 +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
1bb7be489f
Remove some unused tracking of whether lighting is used by a shader
2018-03-17 10:33:50 +01:00
Henrik Rydgård
31de74c56c
Merge pull request #10730 from hrydgard/update-vulkan-headers
...
Update Vulkan headers to 1.1. Might as well keep up.
2018-03-17 10:12:30 +01:00
Henrik Rydgård
71630b81cf
Update Vulkan headers to 1.1. Might as well keep up.
2018-03-17 09:55:14 +01:00
Henrik Rydgård
9761d8930d
Bump GL shader cache version
2018-03-17 02:01:11 +01:00
Henrik Rydgård
6858c77612
Don't allow wrapping on framebuffer textures. Fixes GTA on old NV Shield
2018-03-17 01:54:11 +01:00
Henrik Rydgård
d72d710714
Merge pull request #10727 from hrydgard/vulkan-shader-cache
...
Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
2018-03-16 23:20:51 +01:00
Henrik Rydgård
763ece593a
Merge pull request #10728 from hrydgard/update-glslang
...
Update glslang to the latest version
2018-03-16 23:17:39 +01:00
Henrik Rydgård
d4a4844bff
Update glslang to the latest version
2018-03-16 21:29:16 +01:00
Henrik Rydgård
614cabb115
Implement pipeline/shader cache for Vulkan, to avoid shader compile stutters on second and subsequent runs.
...
The raw pipeline cache got pretty large. Instead, store IDs like GL.
There's still a disabled option to store the pipeline cache objects.
2018-03-16 21:03:03 +01:00
Henrik Rydgård
2d33d526b8
Remove some remains of software skinning
2018-03-16 20:38:05 +01:00
Henrik Rydgård
8dc85c1a60
Vulkan pipeline: Merge a few property fields to a flags field.
...
To make saving/loading them easier.
2018-03-16 17:38:02 +01:00
Henrik Rydgård
45464896d2
Update lang submodule
2018-03-16 16:45:27 +01:00
Henrik Rydgård
4ee941dab1
Vulkan: Fix bug where we didn't always reset dynamic state after readbacks.
2018-03-16 15:52:43 +01:00
Henrik Rydgård
c5ebb2d73f
Oops, remove logging
2018-03-16 14:58:45 +01:00
Henrik Rydgård
a08464eb77
Vulkan: Also check for empty clearing renderpasses later in the frame.
2018-03-16 14:57:41 +01:00
Henrik Rydgård
17eca3e2dd
Merge pull request #10725 from hrydgard/renderpass-merge-clear
...
Vulkan: If the first renderpass is an empty clear, merge it into the next one touching the same framebuffer.
2018-03-16 14:36:35 +01:00
Henrik Rydgård
df8dac4aae
If the first renderpass is an empty clear, merge it into the next one that touches the same framebuffer. Works around #10723 in Wipeout.
2018-03-16 13:44:56 +01:00
Henrik Rydgård
3cd92b4d90
Vulkan: Add a (disabled) facility to force image layouts to GENERAL, for debugging barrier issues
2018-03-15 16:23:23 +01:00
Henrik Rydgård
26966d4655
Merge pull request #10719 from hrydgard/fix-gl-buffer-crash
...
GL: Fix bug where we could crash if a readback happened at the same time as a buffer expansion.
2018-03-14 00:52:24 +01:00
Henrik Rydgård
ba5208efaa
GL: Fix bug where we could crash if a readback happened at the same time as a buffer expansion.
2018-03-14 00:06:38 +01:00
Henrik Rydgård
7ef749b667
Merge pull request #10718 from mrcmunir/patch-1
...
Fix a typo extra " in some header
2018-03-13 20:23:15 +01:00
Carlos Estrague / Mrc_munir
f3040949a3
Fix a typo extra " in some header
...
Fix a typo introduced in https://github.com/hrydgard/ppsspp/pull/10715
2018-03-13 20:16:41 +01:00
Henrik Rydgård
7a8310ae5e
Tiny unification of code. Save the GL shader cache a bit less often.
2018-03-13 13:35:58 +01:00