Commit Graph
5790 Commits
Author SHA1 Message Date
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
Henrik Rydgård 3a0804a7dd Start slowly migrating from macros 2019-10-27 20:54:36 +01:00
Henrik Rydgård 3924e457be Also rename the config setting to make sure it starts out off. 2019-10-25 16:03:00 +02:00
Henrik Rydgård 9b8533c936 Revert "Remove Google Cardboard support. Fixes #11668"
This reverts commit e284d9f00d.
2019-10-25 16:03:00 +02:00