Unknown W. Brackets
f087b87b0c
TexCache: Simplify CheckAlpha funcs and SIMD.
...
Only check for full alpha now, which is simpler.
2017-11-12 16:41:19 -08:00
Unknown W. Brackets
e3b3828b15
TexCache: Check alpha before scaling.
...
This will be faster when scaling. We no longer need to wait, since we
only care about full alpha now.
2017-11-12 16:19:28 -08:00
Unknown W. Brackets
9fbcc01afa
TexCache: Remove simple 0/1 alpha check.
...
No practical optimizations have come of this, so it's a waste of time.
Slows down Vulkan too.
2017-11-12 16:17:46 -08:00
Unknown W. Brackets
fb65c7b87b
Vulkan: Avoid checking texture alpha after scale.
...
Since we're decoding to mapped memory, we don't want to read from it if
possible, especially not a large amount of data like an upscaled texture.
2017-11-12 15:53:59 -08:00
Henrik Rydgård
3dd08b84fe
Fix bug where readback buffers would be created too small sometimes. Should help #10098
2017-11-12 21:14:53 +01:00
Unknown W. Brackets
d4c345c870
Vulkan: Tweak stencil value from clears.
...
Both changes fix graphical artifacts in Final Fantasy 4.
2017-11-12 10:51:32 -08:00
Henrik Rydgård
232e30f4db
Vulkan: When deriving stencilref from color, don't forget to update the value.
...
Plus minor cleanups.
2017-11-12 19:33:21 +01:00
Unknown W. Brackets
ac78b908d3
UI: Typo fix.
2017-11-12 09:34:22 -08:00
Henrik Rydgård
190f363be1
Merge pull request #10096 from hrydgard/vulkan-postproc
...
Vulkan: Implement post-processing.
2017-11-12 17:17:27 +01:00
Henrik Rydgård
b8dc4d1fb8
Buildfixes for Android
2017-11-12 16:55:36 +01:00
Henrik Rydgård
93e148fed6
Vulkan: Implement post-processing. The Vulkan backend is now "feature-complete", and GL is now legacy :P
...
Bit hacky but works.
2017-11-12 16:12:26 +01:00
Henrik Rydgård
406ef92a74
Merge pull request #10094 from hrydgard/hwtess-perf
...
Vulkan: Speed up and simplify hardware tesselation by using shader storage buffers
2017-11-12 14:30:28 +01:00
Henrik Rydgård
4346a54eb7
Vulkan: Speed up and simplify hardware tesselation by using storage buffers.
2017-11-12 13:55:42 +01:00
Henrik Rydgård
c05fe8382a
hwtess: Shrink Vulkan UV textures
2017-11-12 11:04:17 +01:00
Henrik Rydgård
da09e10aa3
Make the interface to hw tess slightly more flexible.
2017-11-12 11:04:13 +01:00
Henrik Rydgård
ebac0143e0
Vulkan: Use a device allocator for tesselation data textures. Add comment about better solutions.
2017-11-12 10:28:55 +01:00
Henrik Rydgård
525cb40f84
Vulkan: Support wide lines if available on the GPU.
2017-11-12 10:17:49 +01:00
Henrik Rydgård
afa5b23abb
Vulkan readback: Resize the readback buffer dynamically as necessary.
2017-11-12 09:54:30 +01:00
Henrik Rydgård
98191f0f29
Merge pull request #10093 from unknownbrackets/softgpu
...
Speed up software clears, softgpu crash fix
2017-11-12 08:11:53 +01:00
Unknown W. Brackets
ed34cf06b8
SoftGPU: Add a clear mode fast path.
...
This skips a lot of extra work for clears, which are pretty common.
2017-11-11 21:04:32 -08:00
Unknown W. Brackets
2b194d30bf
Debugger: Prevent clear while stepping.
...
So it's easier to see what's going on.
2017-11-11 18:31:13 -08:00
Unknown W. Brackets
176283c3f1
SoftGPU: Thread by width for wide polygons.
...
This improves performance a little in some areas.
2017-11-11 18:16:55 -08:00
Unknown W. Brackets
ffbdb15975
SoftGPU: Fix crash when stride is 0.
...
This happens in Star Ocean 1.
2017-11-11 17:45:47 -08:00
Henrik Rydgård
4f001901e2
Merge pull request #10092 from hrydgard/vulkan-hwtess-fixes
...
Vulkan hardware tesselation fixes
2017-11-11 21:53:13 +01:00
Henrik Rydgård
8d7bcd9d61
Vulkan hw tess: Assorted minor fixes. Works on Mali now.
2017-11-11 21:51:05 +01:00
Henrik Rydgård
9cd4db5f18
Vulkan hw tess: Use pushbuffers instead of temp images to upload data.
2017-11-11 20:39:19 +01:00
Henrik Rydgård
5d6a830288
Vulkan hw tess: Don't reuse the same dynamic texture for multiple draws, not safe.
2017-11-11 20:39:19 +01:00
Henrik Rydgård
9f77d48719
Merge pull request #10091 from hrydgard/vulkan-remove-refcounts
...
Vulkan: Remove refcounts on VKRFramebuffer.
2017-11-11 20:38:56 +01:00
Henrik Rydgård
edfea7aed3
Remove unused pointer.
2017-11-11 20:22:45 +01:00
Henrik Rydgård
e18a023ce8
Vulkan: Noticed a framebuffer refcount leak, and changed my mind regarding those :) Let's do it this way instead.
2017-11-11 19:41:43 +01:00
Henrik Rydgård
bd8067a631
Reduce a ERROR_LOG_REPORT to a warning (vfpu branches in delay slots)
2017-11-11 19:39:44 +01:00
Henrik Rydgård
83e1cfb283
Merge pull request #10088 from unknownbrackets/d3d11-savestate
...
Avoid clearing shaders on load state
2017-11-11 18:19:29 +01:00
Unknown W. Brackets
7041341d1a
SaveState: Avoid clearing shaders in all backends.
2017-11-11 08:17:04 -08:00
Unknown W. Brackets
9cf17d9288
D3D11: Clear input layouts on shader clear.
...
When we do clear shaders, make sure to also clear input layouts so we
don't have corrupt keys.
2017-11-11 08:11:10 -08:00
Unknown W. Brackets
f93ef92960
D3D11: Avoid clearing shaders on load state.
...
They don't need to be cleared (unlike FBOs), and clearing them requires
clearing even more things. Fixes #9637 .
2017-11-11 08:09:56 -08:00
Unknown W. Brackets
039c69f031
SaveState: Fix use-after-resize iterator.
...
Only on older save states.
2017-11-11 08:08:59 -08:00
Henrik Rydgård
74a8aa5a91
Merge pull request #10086 from hrydgard/vulkan-accurate-depth
...
Vulkan: Enable the "accurate depth" codepath, using the same formula as D3D9.
2017-11-11 12:16:10 +01:00
Henrik Rydgård
47c06b9633
Vulkan: Enable the "accurate depth" codepath, using the same formula as D3D9.
...
As a side effect, this should fix #10082 since backwards depth is no
longer used.
2017-11-11 11:36:26 +01:00
Henrik Rydgård
e6681a443d
Android: Cleaner way to avoid double-resizing the backbuffer.
2017-11-11 11:18:38 +01:00
Henrik Rydgård
08041d8775
Fix blackscreen when resolution is set to auto. Fixes #10081
2017-11-10 22:33:00 +01:00
Henrik Rydgård
9519b89056
Experimenally disable dual source blending on AMD too for Vulkan, see #10065
2017-11-10 18:28:38 +01:00
Henrik Rydgård
05930ea32e
MotoGP: Compat hack to disable framebuffer readbacks.
...
This is the only known game to copy its framebufer to RAM before display on every frame and we already have a
hack so we can display the high resolution framebuffer, but we still did the readback for no good reason.
This eliminates the readback.
2017-11-10 16:32:56 +01:00
Henrik Rydgård
f014735ebf
Merge pull request #10079 from hrydgard/vulkan-android-fixes
...
Vulkan lost-device fixes
2017-11-10 16:11:58 +01:00
Henrik Rydgård
3e7d913967
Buildfix 32-bit
2017-11-10 16:11:23 +01:00
Henrik Rydgård
17d624d311
Ditch a silly vertex count limit that only makes sense for GLES, so move it there.
2017-11-10 15:59:36 +01:00
Henrik Rydgård
c32f505b58
Fix race condition.
2017-11-10 15:45:14 +01:00
Henrik Rydgård
378e01625c
Fix a few more device-loss bugs.
2017-11-10 15:10:36 +01: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