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
Henrik Rydgard
26a2d42731
Big mutex overhaul - remove our custom ones, make them non-recursive where possible
2017-02-28 11:40:29 +01:00
Henrik Rydgard
8eb668ea59
D3D11: Enable pixel depth rounding. GL: Fix a crash bug
2017-02-23 20:40:53 +01:00
Henrik Rydgard
3713f4e6e6
D3D11: implement support for logic op blending when available
2017-02-18 02:14:26 +01:00
Henrik Rydgard
b807442641
Fix another resource leak, and fix one of the last leak fixes :P
2017-02-17 19:41:06 +01:00
Henrik Rydgard
2fabe3e1c5
Fix a number of resource leaks, both D3D11-only and general.
...
Additionally, fix D3D11 BlitFramebuffer
2017-02-17 19:23:01 +01:00
Henrik Rydgard
4538edad14
Work towards enabling shader blending on D3D11
2017-02-17 12:21:18 +01:00
Henrik Rydgard
5c918da774
Minor cleanups (combined two identical enums, misc)
2017-02-15 11:06:59 +01:00
Henrik Rydgard
94860b6636
Additional D3D11 fixes
2017-02-13 01:38:52 +01:00
Henrik Rydgård
6033b1ee05
D3D11: Some cleanup. Fix backface culling. Wipeout still looks weird...
2017-02-12 18:29:58 +01:00
Henrik Rydgård
cb407a4019
Minor tweaks
2017-02-12 16:21:24 +01:00
Henrik Rydgård
4f2fb10347
Further D3D11 fixes
2017-02-12 16:14:14 +01:00
Henrik Rydgård
bbdb0ee195
Fix the stencil buffer initialization stuff (not sure it's 100% working et)
2017-02-12 13:55:49 +01:00
Henrik Rydgård
6efdde9ea4
D3D11: Fix build issue in Release mode. Triangle fan workaround.
2017-02-12 12:12:36 +01:00
Henrik Rydgård
4fbb537c92
Assorted D3D11 fixes
2017-02-12 12:02:13 +01: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
a8dc9360f0
D3D11: Fix clears
2017-02-10 10:32:32 +01:00
Henrik Rydgard
5ee3b534ed
More D3D11 improvements
2017-02-10 10:26:18 +01:00
Henrik Rydgard
a7ea169797
cube.elf now runs in D3D11 mode, still blackscreen
2017-02-10 00:07:23 +01:00
Henrik Rydgard
f9b840dbfd
More D3D11 progress
2017-02-10 00:01:56 +01:00
Henrik Rydgard
01f46e7a5d
Make the first generated D3D11 shaders compile, fix various warnings
2017-02-09 15:04:21 +01:00
Henrik Rydgard
ba95e0f4d9
Initial stab at porting the DX9 backend to D3D11. Not working yet.
2017-02-09 13:28:40 +01:00
Henrik Rydgard
01e11c6437
Some mostly empty files for D3D11
2017-02-08 17:47:07 +01:00