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
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
7a8310ae5e
Tiny unification of code. Save the GL shader cache a bit less often.
2018-03-13 13:35:58 +01:00
Henrik Rydgård
d8651fd85b
Combine the lightAngle and spotCoef float uniforms into one float2. Saves 64 bytes from the light uniform buffer, making it an even 512.
...
Probably a very small perf optimization.
2018-03-12 11:17:45 +01:00
Henrik Rydgård
0ed3deabe6
Fix #10692 (crash when starting games from command line). Throw in some minor Vulkan fixes as well.
2018-03-08 16:35:13 +01:00
Henrik Rydgård
87575910df
Oops, fix hardware tess in Vulkan (after removing hw skinning, we need to adjust the binding number)
2018-03-05 00:43:54 +01:00
Henrik Rydgård
6fa9fcefb2
Comment fixes, reindentation.
2018-03-05 00:03:47 +01:00
Henrik Rydgård
40db61a680
Remove further remains of hardware skinning. Fixes #10661
2018-03-05 00:03:47 +01:00
Henrik Rydgård
64ec46e705
Unify FramebufferDirty()/FramebufferReallyDirty() for the hw backends
2018-02-26 11:58:17 +01:00
Henrik Rydgård
78467d6092
Unify FastRunLoop for the hardware backends.
2018-02-26 11:52:16 +01:00
Henrik Rydgård
6a2f45c2e1
Unify UpdateCmdInfo
2018-02-26 11:48:56 +01:00
Henrik Rydgård
8cef1f0f8d
GPU: Unify command table (cmdInfo_)
2018-02-26 11:44:02 +01:00
Henrik Rydgård
a8a34fef9c
Virtualize CheckGPUFeatures
2018-02-26 11:35:37 +01:00
Henrik Rydgård
feb4694acc
Unify DispatchSubmitPrim as much as possible
2018-02-26 11:33:17 +01:00
Henrik Rydgård
967018b7f8
Unify Execute_LoadClut
2018-02-26 11:32:02 +01:00
Henrik Rydgård
c7f8f4c5ca
Unify Execute_Prim
2018-02-26 11:22:27 +01:00
Henrik Rydgård
23980065ba
Unify all the DrawEngine::SubmitPrim
2018-02-26 11:07:30 +01:00
Henrik Rydgård
eb014e8c6b
Try to be more consistent when initializing vulkan structs.
2018-02-25 12:15:29 +01:00
Henrik Rydgård
b7b5c5e211
Follow the spec rules about errors when allocating from descriptor pools
...
See https://www.khronos.org/registry/vulkan/specs/1.0/man/html/vkAllocateDescriptorSets.html
2018-02-25 12:15:29 +01:00
Henrik Rydgård
8e0e5f9aa6
Extract RecreateDescriptorPool()
2018-02-25 12:15:29 +01:00
Henrik Rydgård
5d77c63216
Vulkan: Need to count allocated descsets per frame separately from the map, since tess isn't even in-frame cached.
2018-02-24 12:15:22 +01:00
Henrik Rydgård
d1a8514e72
Vulkan: Dynamically grow descriptor pools as needed. Should help #10641 and similar issues.
2018-02-24 10:24:11 +01:00
Unknown W. Brackets
4b8d8c875d
Qt: Remove old texture debug API.
...
No one's testing it and it's not the best way. We have a better
implemented API and should use it instead.
2018-02-19 09:09:35 -08:00
Unknown W. Brackets
0e2a586c1b
Global: Fix some type comparison/shadow warnings.
2018-02-11 07:03:23 -08:00
Henrik Rydgård
86cfc411a4
Remove the confusing "DisableState" across the codebase
2018-02-08 16:27:36 +01:00
Henrik Rydgård
22e28e218b
Merge pull request #10411 from hrydgard/gl-render-manager
...
GL render manager - new faster GL multithreading
2018-01-31 12:22:07 +01:00
Henrik Rydgård
56eb2b892f
Minor: Make the Vulkan allocator debug visualizer slightly better looking by adding a border.
2018-01-30 19:39:53 +01:00
Henrik Rydgård
3c8e43de2c
Include order fix. Darn X11 headers.
2018-01-29 23:49:55 +01:00
Henrik Rydgård
c60c8ed68a
Debug visualization for the Vulkan memory allocator. Shows some interesting behaviour.
2018-01-29 19:38:10 +01:00
Unknown W. Brackets
22f65500f1
GPU: Fix shader blending recopying.
...
This at least didn't look horrible like GLEs did, but still looked
odd in Lunar.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
db0989a9d0
Debugger: Fix texture preview in GLES.
...
Also, fix issues with the first view of a texture in Vulkan / D3D11.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
7316261eac
Vulkan: Fix alpha clear on stencil upload.
...
We need to do it always, because otherwise alpha is not cleared.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
5798c0cc73
Vulkan: Correct zero stencil upload fast path.
2018-01-27 15:10:17 +01:00
Unknown W. Brackets
3eb6d38d75
Vulkan: Fix stencil-only clear for stencil upload.
...
Fixes stencil issues in Star Ocean.
2018-01-27 15:10:17 +01:00
Henrik Rydgård
d565e23f4c
Stencil copy: Avoid clearing the depth buffer.
2017-12-31 01:06:31 +01:00
Henrik Rydgård
b5e5d72a0a
Complete the separation of depth and stencil renderpass flags
2017-12-30 22:52:22 +01:00
Henrik Rydgård
2dda2bfa78
Dual source blend: Remove bad #ifdef that killed dual src code on Android... oops. Re-enable on nVidia Shield TV/Tablet. Fixes #10136 properly.
2017-12-30 00:53:24 +01:00
Unknown W. Brackets
0151c5e649
GPU: Track stats on uploads.
...
A lot can lead to slowdown, so it's useful when logging frame drops.
2017-12-28 19:27:45 -08:00
Henrik Rydgård
ea50561c80
Merge pull request #10454 from unknownbrackets/gpu-minor
...
Vulkan: Use depth clamping, where available
2017-12-27 11:11:18 +01:00
Henrik Rydgård
c1a23658d1
Merge pull request #10456 from unknownbrackets/gpu-flips
...
Display: Avoid limiting FPS without a clear
2017-12-27 10:14:12 +01:00
Unknown W. Brackets
f9750dd137
Display: Avoid limiting FPS without a clear.
...
A bit of a dirty heuristic to avoid the slowdown in #8538 .
2017-12-26 19:37: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
496b2bff35
Vulkan: Fix fragment depth rounding.
...
Was slightly off in the accurate depth path.
2017-12-26 16:19:11 -08:00
Unknown W. Brackets
d6da758ed3
GPU: Remove duplicate BACKEND constants.
2017-12-26 15:55:24 -08: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
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
dc6a4ea753
Fix annoying name clashes (Status is in X11 headers..)
2017-12-15 16:34:29 +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