Commit graph

280 commits

Author SHA1 Message Date
Henrik Rydgård
4a30aedc53 Unify and move around code to cleanup some debug accessors 2017-10-18 13:10:05 +02:00
Henrik Rydgård
3757070fe2 Extra safety when switching GPU backends, fix possible Vulkan shutdown issue. Should help #10005 2017-10-09 12:17:54 +02:00
Henrik Rydgård
2f85e6516e Minor optimizations (use the new hashmap in a few more places) 2017-08-20 19:18:46 +02:00
Unknown W. Brackets
f66ffb9ffe GPU: Fix negative mip levels with const workaround.
Might've crashed if it hit a negative level before.
2017-05-31 21:42:07 -07:00
Unknown W. Brackets
b6375638f5 GPU: Block mipmap autogen for matching size.
If the mips don't get smaller, we can't autogen - the bias in that case is
used to select a different texture.  Fixes #9731.

This also may improve a minor performance issue on PowerVR in some games.
2017-05-31 21:23:20 -07:00
Henrik Rydgård
44423f3ba2 Vulkan: Implement BlitFramebuffer 2017-05-30 09:38:09 +02:00
Henrik Rydgård
137b79c708 Fix more review comments. 2017-05-30 09:38:05 +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 Rydgård
f49384ca73 Vulkan: Fix binding framebuffers as textures 2017-05-30 09:36:17 +02:00
Henrik Rydgard
32728553bd Further steps towards Vulkan framebuffer support 2017-05-30 09:36:17 +02:00
Henrik Rydgård
1b05a54800 Remove the Mipmap setting. One step forward for #8171 2017-05-26 10:21:20 +02:00
Unknown W. Brackets
c4d1863ded GPU: Consistently bias const mip levels.
Since SLOPE is just a more complicated CONST, we can treat them the same.
2017-05-12 20:30:47 -07:00
Henrik Rydgård
5a8e9c4f71 Port some accessors over from #9255 to be able to catch these changes and dirty state later. 2017-04-03 17:04:58 +02:00
Henrik Rydgard
97058b4db7 Apply the D3D11 loco roco fix identically to the other backends
To make centralization easier, and this should be a problem for the
other backends as well.
2017-04-01 21:17:58 +02:00
Unknown W. Brackets
7fb7a4877d Texcache: Cleanup last bound tex invalidation.
When we're deleting, we're always about to bind a new tex.
2017-03-25 11:42:24 -07:00
Henrik Rydgard
b0bd7e3c6f Minor changes for compatibility with VS2017 2017-03-12 17:33:00 +01:00
Henrik Rydgard
5d4700ae7e Sprinkle calls to CHECK_GL_ERROR_IF_DEBUG all over the place, disabled by default. 2017-03-03 14:18:40 +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
900539e200 Fix #9340 (touch controls not always getting repositioned correctly) 2017-02-23 09:31:45 +01:00
Henrik Rydgard
f24b1495ba Assorted texture format cleanup, prep for supporting D3D11 on Win7 2017-02-22 16:23:04 +01:00
Henrik Rydgard
f772066c54 Remove some unnecessary error handling paths 2017-02-21 11:29:51 +01:00
Henrik Rydgard
ca9050af12 These should be deleted too. 2017-02-20 00:36:37 +01:00
Henrik Rydgard
4c897ff853 Forgot to delete CheckFullHash duplicates 2017-02-20 00:21:54 +01:00
Henrik Rydgard
4652c6af28 Some member variable renaming to match the convention 2017-02-20 00:19:58 +01:00
Henrik Rydgard
f753573332 Unify HandleTextureChange 2017-02-20 00:13:21 +01:00
Henrik Rydgard
f15e25c4b5 Centralize SetTexture 2017-02-20 00:05:23 +01:00
Henrik Rydgard
aae2030a14 Unify Decimate() 2017-02-19 23:39:35 +01:00
Henrik Rydgard
d9c20fbaff Unify ApplyTexture 2017-02-19 23:25:09 +01:00
Henrik Rydgard
7890b61cc5 More work towards unifying ApplyTexture 2017-02-19 23:19:55 +01:00
Henrik Rydgard
f839f1944e Work towards unifying ApplyTexture 2017-02-19 23:07:00 +01:00
Henrik Rydgard
665ffe34ab Centralize DeleteTexture 2017-02-19 22:50:04 +01:00
Henrik Rydgard
dbafc6ef95 Centralize Texcache::Clear 2017-02-19 22:31:07 +01:00
Henrik Rydgard
4364569cf4 Move TexCacheEntry outside the TextureCacheCommon class. Nested structs are annoying. 2017-02-19 18:53:30 +01:00
xebra
e2f9dc8f28 Add support compat to fake mipmap hacks. 2017-02-15 01:02:51 +09:00
xebra
945e603072 Fix fake mipmap issue related #5350 2017-02-15 01:02:50 +09: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
9f00b355ca Unify DownloadFramebufferForClut 2017-02-08 15:58:46 +01:00
Henrik Rydgard
454f2cf4bf Unify "SetOffsetTexture" 2017-02-08 15:48:36 +01:00
Henrik Rydgard
346b9d0c51 Texcache: Unify SetTextureFramebuffer 2017-02-08 15:44:01 +01:00
Henrik Rydgard
096018a163 Texcache: Unify AttachFramebuffer, misc 2017-02-08 15:37:40 +01:00
Henrik Rydgard
3b18f4452f TexCache: Unify Invalidate, InvalidateAll, ClearNextFrame 2017-02-08 15:24:33 +01:00
Henrik Rydgard
29b30c197b Unify CheckFullHash 2017-02-08 15:24:27 +01:00
Henrik Rydgard
f1c96c056d Move all the GL/D3D9 FBO code into thin3d. 2017-02-06 11:40:16 +01:00
Henrik Rydgard
d05ef4a859 Pass through the DrawContext to texturecaches and fb managers.
This is preparation for sharing more framebuffer code between the
backends.
2017-02-05 19:51:50 +01:00
Henrik Rydgard
e4cb44c243 Merge the texture flags into the dirty flags 2017-01-24 18:12:20 +01:00
Julian
c92ec20811 Fixed Inconsistent texture filtering in Disgaea 2 #4235 2016-12-16 22:53:55 +02:00
Unknown W. Brackets
a6ff7c6711 Vulkan: Setup texture/sampler cache for restore. 2016-10-09 11:28:11 -07:00
Unknown W. Brackets
f0ed9a9915 Vulkan: Correct CheckAlpha on scaled textures. 2016-06-25 09:10:55 -07:00
Unknown W. Brackets
4c94cd764d Scale directly into the buffer if possible.
This will be possible in the majority of cases, and avoid an extra copy.
A small cost compared to scaling, but even so.
2016-06-25 08:40:45 -07:00
Unknown W. Brackets
5962093ef5 Centralize the majority of texture decode. 2016-06-19 08:05:54 -07:00