Commit Graph

122 Commits

Author SHA1 Message Date
Unknown W. Brackets
0dee041002 D3D11: Change state caches to DenseHashMaps. 2017-12-02 18:55:02 -08:00
Unknown W. Brackets
243304a5e8 Hashmaps: Fix missing maintain calls in non-GLES.
Should only matter if vertex cache is enabled.
2017-12-02 18:27:18 -08:00
Henrik Rydgård
734d9c494c Fix bug in Vulkan non-buffered where clears could extend outside the frame, since Vulkan clears do not respect scissors. 2017-12-02 11:05:10 +01:00
Henrik Rydgård
713afdfe49 Refactor: Unify DecodeVerts and move ComputeNumVertsToDecode to Common 2017-11-19 12:39:09 +01:00
Henrik Rydgård
35437e6b62 Kill off more unused duplicate code 2017-11-13 16:50:45 +01:00
Henrik Rydgård
4a09289056 D3D11: Similarly to the last vulkan commit, don't create lots of dupe vertex input layouts 2017-11-13 12:26:52 +01:00
Henrik Rydgård
3e749a94ce Vulkan: Fix bug where we ended up creating duplicate pipelines even if vertices decoded to the same format, if they were created from different formats.
This can cut down the number of pipelines to a third or less in some
games. However, benefit is likely smaller since Vulkan drivers will
deduplicate shaders inside each vkPipelineCache object.

Helps #10106 while not actually implementing any of the suggestions inside.
2017-11-13 11:22:33 +01:00
Henrik Rydgård
b886efe8f5 Another minor cleanup (DescribeCodePtr) 2017-10-20 11:06:12 +02:00
Henrik Rydgård
e0e13e191f Replace the most critical unordered_maps and maps with two new maps: FastHashMap and PrehashMap. 2017-08-20 11:30:19 +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
14a80968cf Unify transformed arrays 2017-06-03 18:05:21 +02:00
Henrik Rydgård
1abb8792ab Unify ComputeMiniHash 2017-06-03 18:05:18 +02:00
Henrik Rydgård
3032240916 Unify DecodeVertsStep 2017-06-03 18:04:46 +02:00
Henrik Rydgård
240e058b3b Some unification in DrawEngine 2017-06-03 18:03:56 +02:00
Henrik Rydgård
665a2c04cb Implement software skinning for the Vulkan backend. Fixes #9753 2017-06-02 11:47:14 +02:00
Unknown W. Brackets
70d17d1bc7 Track flags to reduce unnecessary VRAM zeroing.
If we haven't downloaded to RAM since the last zero, no need to zero
again.  This is the most common case.
2017-04-09 15:10:07 -07:00
Henrik Rydgard
22d5acb40e Depal: Use the full CLUT mode setting as the depal shader key. Fixes #9550 for both D3D11 and D3D9. 2017-04-04 11:09:29 +02:00
xebra
e6af91f1b0 [spline/bezier]Trying to fix a problem that wrong texture format causes a crash. 2017-03-23 23:57:03 +09:00
Henrik Rydgard
032c340f50 Revert "Vertexcache ComputeMiniHashRange: Doesn't make sense to hash more data than the step size."
This reverts commit 0bbb61e5d2.
2017-03-19 12:47:12 +01:00
Henrik Rydgard
0bbb61e5d2 Vertexcache ComputeMiniHashRange: Doesn't make sense to hash more data than the step size. 2017-03-19 12:08:21 +01:00
Henrik Rydgård
94f16e3b7c GPU: Move "if (resized_)" to BeginHostFrame to avoid desynchronized settings.
Also wipe the input layout cache on D3D11 on resize.

Fixes #9438.
2017-03-17 11:26:11 +01:00
Henrik Rydgård
17a250df7a Always trigger gpu->Resized when exiting GameSettingsScreen.
Strangely, this does NOT help #9438.
2017-03-17 10:27:49 +01:00
Henrik Rydgard
a04e24c300 Further D3D11 on mobile fixes 2017-03-05 14:05:04 +01:00
Henrik Rydgard
9d116505cf D3D11: Add a large amounts of asserts 2017-03-05 10:34:44 +01:00
xebra
7364dbea3b [spline/bezier]Implement hardware tessellation on D3D11. 2017-03-04 22:53:40 +09:00