Commit Graph

5303 Commits

Author SHA1 Message Date
Henrik Rydgård
f9cfb05895
Merge pull request #10987 from unknownbrackets/debugger-core
Improve debugger threadsafety and consistency
2018-06-06 21:10:14 +02:00
Henrik Rydgård
9f1125ae33
Merge pull request #11078 from unknownbrackets/debugger-spline
GE Debugger: Show bezier/spline in preview
2018-06-06 20:40:10 +02:00
Henrik Rydgård
347721f200
Merge pull request #10981 from unknownbrackets/flat-shade
Use software transform for flat shading and fix colors
2018-06-06 19:05:54 +02:00
Unknown W. Brackets
9aad4dc848 GE Debugger: Cleaned repetition in spline preview. 2018-06-06 05:59:14 -07:00
Unknown W. Brackets
1829902171 GE Debugger: Show bezier/spline in preview.
Ignoring some things about normals and colors since they don't matter.
2018-06-06 05:59:14 -07:00
Unknown W. Brackets
e313a9bf6c Debugger: Lock startup/shutdown for threadsafety.
Otherwise things can get freed while we're trying to inspect them.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
e9cc1ee463 Debugger: Allow multiple clients more properly.
Otherwise we lose wakeups and hang.
2018-06-06 05:58:49 -07:00
Unknown W. Brackets
28cabd578a Qt Debugger: Remove display list debugger.
Being replaced with WebSocket based debugger.  Was disabled and not
working anyway, and hardcoded some GL so a barrier to Vulkan.
2018-06-06 05:58:10 -07:00
Unknown W. Brackets
2606365ba4 GPU: Use software transform for flat shading.
Except on GLES where it works fine with the default provoking index.

This fixes #10969 so that it works everywhere.
2018-06-06 05:53:50 -07:00
Unknown W. Brackets
dca159c47e GPU: Correct sw flat shading color on Vulkan/D3D.
It was only correct on GLES before.  This only fixes software transform.
2018-06-06 05:53:50 -07:00
Unknown W. Brackets
5b62c8afb8 D3D9: Implement flat shading via state. 2018-06-06 05:53:50 -07:00
Unknown W. Brackets
b845278d7d D3D11: Implement flat shading in shader. 2018-06-06 05:53:49 -07: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
zhang wei
3380bbb0c6 save cache before clear 2018-06-04 22:00:29 +08:00
Unknown W. Brackets
e6af167cd9
Merge pull request #11119 from hrydgard/vk-nulltexture
Never bind a NULL image view in Vulkan, not even through thin3d
2018-06-01 23:53:18 -04:00
Henrik Rydgård
c1d113e0e9 When creating temp framebuffers for download, size them using bufferWidth/Height instead of width/height.
Or maybe we should make sure to only download within the width/height by
adding more clamps at the beginning of ReadFramebufferToMemory but seems
more dangerous.

Plus some minor things.

Should help #11113
2018-06-01 21:16:07 +02:00
Henrik Rydgård
9485b04914 Never bind a NULL image view in Vulkan no matter what. 2018-06-01 18:51:37 +02:00
Henrik Rydgård
30de8194a5
Merge pull request #11111 from weihuoya/gles-int-highp
depal shader use high int precision for opengl es
2018-06-01 08:41:25 +02:00
weihuoya
e01e77e025 fx depal int precision for opengl es 2018-06-01 00:58:44 +08:00
Henrik Rydgård
c964bc4ba2 Fix another of these pesky GL task switching bugs. 2018-05-30 19:29:26 +02:00
Henrik Rydgård
1c17373039 GLES: Properly restore the pointer to the render manager in more places 2018-05-29 23:07:22 +02:00
Henrik Rydgård
79f8388e65
Merge pull request #11088 from unknownbrackets/vulkan-state
Vulkan: Update shaders/state when dirty properly
2018-05-28 08:34:11 +02:00
Unknown W. Brackets
e7d07aff71 Vulkan: Update shaders/state when dirty properly.
Can't have been right before.
2018-05-27 22:28:09 -07:00
Henrik Rydgård
0d6be3a476 GLES: Refresh the draw context in DrawEngineGLES on DeviceRestore. How did we miss this? 2018-05-27 22:25:15 +02:00
Henrik Rydgård
b730d187e8 Add some paranoid checks guided by stack traces from Google Play 2018-05-27 22:12:59 +02:00
Henrik Rydgård
ab65c5210c GLES shader depal fix. Again, this is disabled by default so should not affect anything. 2018-05-14 21:20:51 +02:00
Henrik Rydgård
061f92c177 Minor code simplification 2018-05-14 21:19:48 +02:00
Henrik Rydgård
4ba9fe3e0e GLES depal (currently disabled): Use high int precision.
Should fix issue mentioned in fb7a63bd11
2018-05-13 20:51:20 +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
b64841e8cc Minor optimization 2018-05-07 00:05:35 +02:00
Henrik Rydgård
ed52d9f9fb Shader depal (VUlkan): Apply a half-texel offset when bilinear filtering, fixing #11008
Also skip three texture samples if all indices are equal.
2018-05-06 22:30:20 +02:00
Unknown W. Brackets
abbab23814 D3D11: Use a dedicated slot for the depal texture.
Otherwise it affects shader blending.
2018-05-06 08:58:54 -07:00
Unknown W. Brackets
8d07e6d985 GPU: Prevent temp FBOs from overwriting each other.
Sometimes we'd use two temp FBOs in the same draw (e.g. shader blending +
depal.)  This could cause the same temp FBO to get used for two purposes,
causing weird behavior.
2018-05-06 08:57:44 -07:00
Henrik Rydgård
77e574ccc6 Buildfix. 2018-05-04 22:57:13 +02:00
Henrik Rydgård
698bd75209 Fix regression caused by the new depal code for Vulkan. Fixes #10993 2018-05-04 22:24:11 +02:00
aliaspider
17259b87ea softgpu: remove RIP addressing from SamplerX86 2018-05-04 17:37:46 +01:00
Unknown W. Brackets
3eb0450998 Depal: Reapply texture when bounds change.
Since we need each slice of the texture when we use bounds to reduce the
size.  Fixes #10951.
2018-04-22 10:43:46 -07:00
Unknown W. Brackets
3f3dd6b3bb Vulkan: Fix shutdown crash when device lost called.
Fixes #10917.
2018-04-14 13:14:20 -07: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
f17890623c Shader depal: fix bilinear filter coord 2018-04-13 20:57:36 +02:00
Henrik Rydgård
fb7a63bd11 Implement shader depal for GL as well, but disabled by default. 2018-04-13 20:00:14 +02:00
Henrik Rydgård
0ac6cea34d Add a queue processing hack for Sonic Rivals too. Now it's fast. 2018-04-13 18:05:04 +02:00
Henrik Rydgård
413a204138 Vulkan: Semi-gross hack that massively improves the perf of MGS2:Acid. 2018-04-13 17:32:56 +02:00
Henrik Rydgård
81276c8862 Fix various bugs. 2018-04-13 14:19:05 +02:00
Henrik Rydgård
69bd427ca2 Shader depal: Implement bilinear filtering. 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
117dad8a48 Just add some constants for the GL texture slots. 2018-04-13 09:11:08 +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
a3ed87bca5 Some comment fixes and cleanup.
Not much point warning for those MIPS instructions - if games use them,
they use them carefully because games can't catch that exception anyway.
2018-04-12 12:00:19 +02:00