Henrik Rydgård
21eaef04fc
Vulkan: Pick shaders after calling ConvertStateToVulkanKey because it may end up disabling shader blending
...
(due to too many copies, see DrawEngineCommon::ApplyShaderBlending).
(So much state leaking all over the place ... I want to redesign the
whole thing).
Typo fix in comment
2020-03-29 15:02:40 +02:00
Unknown W. Brackets
4a0109d273
GPU: Treat negative light exp same as 0.
...
Based on #12507 and some tests, seems like negative exponents are also
fixed to a 1.0f result.
2020-03-22 22:28:05 -07:00
Unknown W. Brackets
a95f3111cf
GPU: Assume a scissor of 481x273 is a mistake.
...
We already do this for viewport, and only when region is still a correct
size. Helps flicker in Everybody's Golf.
2020-03-21 23:47:50 -07:00
Unknown W. Brackets
4a8839c99d
GPU: Avoid divide by zero in garbage displaylist.
2020-03-19 20:56:24 -07:00
Unknown W. Brackets
c7a27ed9af
GPU: Fix memory corruption with bufw > w.
...
Seen for example in Mecho Wars.
2020-03-19 20:56:02 -07:00
Henrik Rydgård
01165e7277
Merge pull request #12699 from unknownbrackets/softgpu-minor
...
softgpu: Correct clear/solid rect BR corner
2020-03-10 07:34:15 +01:00
Unknown W. Brackets
f1dfb25427
softgpu: Correct clear/solid rect BR corner.
...
The scissor is inclusive, not exclusive.
2020-03-09 18:57:55 -07:00
Henrik Rydgård
a19ba6d472
New heuristic for getting rid of unnecessary "antialias-lines".
...
Should fix #12558 , while keeping the other aa line issues also fixed.
Heuristic derived from discussions in #12558 and #6483 .
2020-03-10 00:49:16 +01:00
Henrik Rydgård
2eaa1db046
Vulkan: Track down another one of those minor resource leaks.
...
Also no need to zero, queue for delete does it already.
2020-03-09 00:48:00 +01:00
Unknown W. Brackets
ac909d2192
Vulkan: Ensure scaling happens in cached RAM.
...
There's a non-trivial performance impact to using uncached coherent
memory, which is usually what we get for the push buffer.
2020-03-08 12:02:46 -07:00
Unknown W. Brackets
3ce9483d24
Headless: Prevent crash running graphics tests.
2020-03-08 11:10:16 -07:00
Henrik Rydgård
f8a0ba3b86
Update the glslang submodule, fix the build afterwards.
2020-03-03 22:19:32 +01:00
Unknown W. Brackets
051a84e9bd
GPU: Restart when changing inflight frames setting.
...
We need to keep the push and pull in step, so changing at runtime is
messy.
2020-03-02 19:21:15 -08:00
Henrik Rydgård
fa8968f5c6
Merge pull request #12660 from unknownbrackets/frame-latency
...
GPU: Add setting to control inflight frame usage
2020-03-02 00:16:48 +01:00
Henrik Rydgård
c363c16af9
Merge pull request #12665 from unknownbrackets/frameskip
...
GPU: Use old frame when presenting a skip
2020-03-01 23:35:01 +01:00
Unknown W. Brackets
cebcfb1bbd
GPU: Use old frame when presenting a skip.
...
If we flip using a skipped frame, we may show an even older frame causing
weird flickering.
2020-03-01 13:55:28 -08:00
Henrik Rydgård
63f06cdd91
Address some feedback, thanks unknown
2020-03-01 18:41:09 +01:00
Unknown W. Brackets
98df4bbec3
GPU: Allow choosing number of inflight frames.
2020-03-01 08:53:46 -08:00
Unknown W. Brackets
a91e206926
GPU: Add setting to control inflight frame usage.
2020-03-01 06:21:27 -08:00
Henrik Rydgård
25dcf8dd8d
Warning fixes
2020-03-01 14:15:10 +01:00
Henrik Rydgård
0da04f3694
Vulkan: Support devices that don't properly support 16-bit texture (like MoltenVK).
...
Fixes #12615 .
Will make finishing #10654 worthwhile.
2020-03-01 14:07:13 +01:00
Henrik Rydgård
2ec82951a0
Merge pull request #12659 from unknownbrackets/vsync
...
Support vsync in all hardware backends, support runtime update
2020-03-01 09:52:14 +01:00
Unknown W. Brackets
3c1e8abcfe
GPU: Centralize vsync interval logic.
...
We already do unthrottle checking here.
2020-02-29 22:27:00 -08:00
Henrik Rydgård
974095ac10
Log shader contents to VERBOSE instead of DEBUG.
2020-02-29 10:46:04 +01:00
Unknown W. Brackets
5009698cc0
Core: Use a shared_ptr for i18n categories.
...
This does not make them thread safe, but it reduces the chances of a crash
a bit (see #12594.)
2020-02-09 07:35:16 -08:00
Henrik Rydgård
41a6b97023
DX9: Simplify some expressions
2020-01-26 16:34:46 +01:00
Henrik Rydgård
118e927b86
GPU: Only GL uses a flipped buffer in non-buffered, reflect that in the SW transform code.
2020-01-26 15:54:51 +01:00
Henrik Rydgård
92a1395cd0
Apply viewport before SoftwareTransform so flipping can be checked
2020-01-26 15:30:20 +01:00
Henrik Rydgård
3aa575daef
OpenGL: Call ApplyDrawState before SoftwareTransform
2020-01-26 15:29:45 +01:00
Henrik Rydgård
e4f9f3b120
DrawEngineDX9: Rename lookup table, cleanup
2020-01-26 15:28:54 +01:00
Unknown W. Brackets
072041a63d
SoftGPU: Convert from 16-bit if unsupported.
...
Should help #12455 , but not actually tested on an affected device.
2019-12-24 11:08:44 -08:00
Henrik Rydgård
714205d699
Vulkan: Enable renderpass merging for all games (was introduced in 1.9 for GoW games). A number of other games can also benefit.
2019-11-30 22:44:59 +01:00
Henrik Rydgård
54823a87cc
Oops
2019-10-28 13:13:52 +01:00
Henrik Rydgård
970adfbcc9
Isolate most of the softgpu specialization code to RasterizerRectangle.
...
See comments.
2019-10-28 09:33:30 +01:00
Henrik Rydgård
1966c8fe75
Fix a backwards check
2019-10-27 20:55:32 +01:00
Henrik Rydgård
6c8186d046
Remove unused textureswizzle support (we use shaders instead). Universally support presenting 5551 format directly.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
86c781e434
Hack around most of the problems with the save/load dialog. Software stretch gets enabled in non-wide mode, so wallpapers work at a cost of speed.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
102a70b4a5
Scissor fix
2019-10-27 20:55:32 +01:00
Henrik Rydgård
a84f4a0caa
Even more speed.
2019-10-27 20:55:32 +01:00
Henrik Rydgård
eb53609cb0
More speed
2019-10-27 20:55:32 +01:00
Henrik Rydgård
bbbd7f8acc
Buildfix
2019-10-27 20:55:32 +01:00
Henrik Rydgård
714f83f614
Further specialization.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
290e9971a7
More specialization work.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
4f7c23fe79
DarkStalkers: Fix display on OpenGL ES.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
796539ad7f
DarkStalkers: Fix display in the D3D backends. Still broken in OpenGL.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
9099441973
Darkstalkers: Gross hack to avoid the game's own stretch, and present the raw buffer instead for a sharper image.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
2dd7a9aa12
More darkstalkers work
2019-10-27 20:54:36 +01:00
Henrik Rydgård
c7f6724f7e
Detect sprite drawing (1:1 texture mapping), run a simpler function without the triangle state tracking.
...
This will allow further simplification and specialization.
2019-10-27 20:54:36 +01:00
Henrik Rydgård
510229b68b
SoftGPU: Detect through-mode rectangles from triangle strips
2019-10-27 20:54:36 +01:00
Henrik Rydgård
58568632e8
Software renderer: Use hardware color conversion on Vulkan in 5551 16-bit mode
2019-10-27 20:54:36 +01:00