Henrik Rydgård
ba0d04a142
Vulkan: Implement depth texturing through depal.
2020-08-09 20:31:04 +02:00
Henrik Rydgård
882cc6295e
Rename FramebufferVulkan.cpp/h to FramebufferManagerVulkan.cpp/h
2020-08-03 23:22:11 +02:00
Henrik Rydgård
c5e0b799d9
Remove category from _assert_msg_ functions. We don't filter these by category anyway.
...
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Unknown W. Brackets
ac60e2ecd4
GPU: Track HW tess at start of frame too.
...
This also makes it so we don't force the setting off when you change
backends, and just ignore it if unsupported.
2020-04-04 11:52:32 -07:00
Unknown W. Brackets
c42fb72419
GPU: Update uniforms w/ consistent render mode too.
2020-04-04 11:03:07 -07:00
Henrik Rydgård
974095ac10
Log shader contents to VERBOSE instead of DEBUG.
2020-02-29 10:46:04 +01:00
Henrik Rydgård
3445f39f3f
Survive pipeline creation failure on Vulkan. Makes Burnout playable on Pocophone... Sigh.
...
Minor cleanups.
2019-03-11 16:40:10 +01:00
Henrik Rydgard
8e1a5ef3d6
Minor refactor of physical device property/feature detection, to allow for more extension use.
2019-02-05 18:07:17 +01:00
Henrik Rydgard
fdd0d7acb4
More Vulkan validation fixes
...
NVIDIA no longer uses nVidia capitalization.
2019-02-05 18:07:11 +01:00
Henrik Rydgard
128c0adc39
Vulkan: Fix typo, bump shader cache version.
2019-02-04 14:22:19 +01:00
Unknown W. Brackets
f8ce9b08ba
Vulkan: Limit stencil workaround to Adreno 5xx.
2018-12-23 14:11:57 -08:00
Unknown W. Brackets
1f594f3fb5
GPU: Track draw in shader manager.
...
With device restore etc. everywhere.
2018-12-23 12:55:37 -08:00
Henrik Rydgård
d9cfa3a8fa
Bump shader caches
2018-12-02 21:49:20 +01:00
Henrik Rydgård
5975f471e2
Vulkan: Only apply the depth workaround on Qualcomm devices (adreno)
...
We've seen issues, and the validation layer still doesn't like them very much...
2018-09-18 23:46:45 +02:00
Henrik Rydgård
b037efdb55
If there are multiple Vulkan devices, show a setting to allow the user to choose.
2018-06-06 10:20:12 +02:00
Henrik Rydgård
011e57c0e7
Always specify GLSL version 450 when compiling Vulkan shaders.
...
Bit of a risky change so late in the game but it's wrong, it needs fixing.
See for example the comments to fb7a63bd11
2018-05-13 20:42:17 +02:00
Henrik Rydgård
03c2292ae9
Merge pull request #10915 from unknownbrackets/warnings
...
Warning fixes
2018-04-14 20:30:26 +02:00
Unknown W. Brackets
cddc7b5dc5
Vulkan: Fix cache file error handling warnings.
2018-04-14 10:59:41 -07:00
Henrik Rydgård
81276c8862
Fix various bugs.
2018-04-13 14:19:05 +02:00
Henrik Rydgård
29c41c6a35
Implement shader depal for Vulkan. See #10908 . Bilinear filter not yet implemented.
2018-04-13 14:19:01 +02:00
Henrik Rydgård
163350bbcd
Vulkan/D3D11: Make some space in the base uniform buffer by consolidating the spline parameters into one variable.
2018-04-13 08:58:05 +02:00
Henrik Rydgård
36fd2711d6
Revert "Remove further remains of hardware skinning."
...
This reverts commit 40db61a680
.
2018-04-10 12:22:41 +02:00
Henrik Rydgård
1c99ebcbcc
Fix DecFmt bug
2018-04-10 12:12:47 +02:00
Henrik Rydgård
6a90b8fbb4
Revert "Further cleanup after the removal of hardware skinning."
...
This reverts commit f086a0915f
.
Increment the shader cache version. Restore some more.
2018-04-10 11:38:02 +02:00
Henrik Rydgård
d160292f54
Include renderpass definition in Vulkan shader cache entries, should make it more effective again.
2018-03-29 14:36:04 +02:00
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
1bb7be489f
Remove some unused tracking of whether lighting is used by a shader
2018-03-17 10:33:50 +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
40db61a680
Remove further remains of hardware skinning. Fixes #10661
2018-03-05 00:03:47 +01:00
Unknown W. Brackets
4731a2918c
GPU: Use more typesafe shader IDs.
...
Since they really are fairly distinct, let's make sure we can't mix them
accidentally.
2017-12-02 09:07:27 -08:00
Henrik Rydgård
7b2ad5fe72
Add some debug asserts, useful for debugging shader mismatches locally (though haven't found any..)
2017-12-01 00:28:07 +01:00
Henrik Rydgård
ce1bc7fc3f
Fixes problem switching between non-through triangles and rects. Helps a small part of #6554
2017-11-14 09:27:03 +01:00
Henrik Rydgård
d5f8d484dd
Tiny cleanups.
2017-11-04 10:08:53 +01:00
Unknown W. Brackets
72e0a24724
GPU: Reset shader state on shader reset.
...
Was ending up with lastFSID being -1, but being used.
Seen in gpu/commands/blend test.
2017-09-20 08:37:54 -07:00
Henrik Rydgård
2f85e6516e
Minor optimizations (use the new hashmap in a few more places)
2017-08-20 19:18:46 +02:00
Henrik Rydgård
b9b2656e93
More vulkan microoptimizations. Add more profiler scopes.
2017-08-18 13:48:11 +02:00
Henrik Rydgård
4e7099bf47
Vulkan: Fix some more state dirtying issues.
2017-08-15 10:51:44 +02:00
Henrik Rydgard
078e1151f9
Dirty-flag the fragment shader ID.
2017-08-14 11:36:07 +02:00
Henrik Rydgard
56cd991833
All: Only recompute the vertex shader ID when dirty
2017-08-14 11:36:06 +02:00
Henrik Rydgård
c173da49d3
Fix a number of bugs and stuff affecting Vulkan on Mali
2017-05-30 09:36:17 +02:00
Henrik Rydgard
3f4e14f504
D3D11: Lumines is now playable in non-buffered, with reverse colors.
2017-02-10 11:25:24 +01:00
Henrik Rydgard
175b97ef34
Start stubbing out a new D3D11 backend
2017-02-08 17:35:41 +01:00
Henrik Rydgard
e17d3e1e7a
Vulkan: Forgot to extend a few more dirtyflag variables to 64-bit. Avoid a warning.
2017-01-24 20:19:06 +01:00
Henrik Rydgard
d85888dc2b
Table-driven dirty-flags for Vulkan and D3D9. Minor Vulkan optimization.
2017-01-24 18:12:20 +01:00
Henrik Rydgard
e4cb44c243
Merge the texture flags into the dirty flags
2017-01-24 18:12:20 +01:00
Henrik Rydgard
b423998c36
Move uniform dirty-flag to gstate_c, opening up for other uses.
2017-01-24 18:12:20 +01:00
Henrik Rydgard
0a3bb4a720
Vulkan: Increase size of per-frame descriptor pool, move uniform to right place
2017-01-24 18:11:48 +01:00
Henrik Rydgard
3c221a7ebd
Extract the dirty flag from the shader managers so code that dirties uniform flags can be shared.
2017-01-23 21:11:39 +01:00
Henrik Rydgard
0fa2f2c7ae
Remove more now-unused code
2016-12-20 13:50:07 +01:00
Henrik Rydgard
9d7983eee8
Remove the ability to turn off prescaleUV entirely. It's simply better to do it in the vertex decoder.
2016-12-20 13:27:44 +01:00