Commit Graph
27117 Commits
Author SHA1 Message Date
Henrik Rydgård da2f83b110 Merge pull request #12951 from unknownbrackets/vulkan-safety
GPU: Never set safe size larger than the buffer
2020-05-23 10:51:09 +02:00
Unknown W. Brackets 3a1bc6a86b GPU: Never set safe size larger than the buffer.
Maybe this indicates the buffer size is wrong, but a safe size larger than
the buffer will make us try to download outside the buffer and lose the
Vulkan device.
2020-05-23 00:12:22 -07:00
Henrik Rydgård bff3c15d6f Merge pull request #12948 from Florin9doi/v4l_jpeg_multi_buf
[Camera/V4L] Add support for jpeg and multiple buffers
2020-05-22 15:43:58 +02:00
Florin9doi 5c552771fc [Camera/V4L] Add support for jpeg and multiple buffers
required for Sony EyeToy
2020-05-22 15:50:01 +03:00
Henrik Rydgård c861bc0d7c Merge pull request #12947 from unknownbrackets/wasapi-format
Windows: Avoid a WASAPI crash for a mono output format
2020-05-22 12:33:45 +02:00
Henrik Rydgård 23bdc40715 Merge pull request #12942 from unknownbrackets/vulkan-debug
When debugging, expose pass tags to RenderDoc
2020-05-22 09:28:09 +02:00
Henrik Rydgård 34b5d531da Merge pull request #12946 from unknownbrackets/ge-minor
Ge: Check stack depth based on args struct size
2020-05-22 09:25:59 +02:00
Unknown W. Brackets 0f1f3507f6 Windows: Ask for a specific device on failure.
In case the new rules make things fail unexpectedly.
2020-05-22 00:19:59 -07:00
Unknown W. Brackets 9d1e31f6a0 Windows: Avoid WASAPI init for a bad format. 2020-05-21 23:39:29 -07:00
Unknown W. Brackets cd90fb4d69 Windows: Avoid crash for a mono output format.
Let's just assume we're only going to get stereo formats.
2020-05-21 23:37:27 -07:00
Unknown W. Brackets 5507116d3f Ge: Check stack depth based on args struct size.
Matches tests against firmware.
2020-05-21 22:16:13 -07:00
Henrik Rydgård 1dec772145 Merge pull request #12944 from unknownbrackets/gpu-minor
GPU: Ignore viewport for scissor of 481
2020-05-21 22:47:42 +02:00
Unknown W. Brackets 6ad9cb9e0c Merge pull request #12941 from hrydgard/vulkan-more-framebuffer-stuff
Vulkan: Deal with the reformat clear better
2020-05-21 15:32:01 -04:00
Unknown W. Brackets cd869d469d GPU: Ignore viewport for scissor of 481.
Assume it's still wrong in this case and take 480x272.  See #12746.
2020-05-21 11:37:36 -07:00
Unknown W. Brackets 2dbb7a598d Vulkan: Label render passes in RenderDoc/etc. 2020-05-21 08:55:36 -07:00
Unknown W. Brackets e9e0ea9d05 Vulkan: Cleanup some duplicate code. 2020-05-21 08:55:36 -07:00
Henrik Rydgård 4aec10d04f Correct an issue where reformat didn't work if no renderpass was active due to the use of clear.
Also instantly convert to a clear when binding the framebuffer in cases
when we know it's the optimal thing. The QueueRunner would have later merged
anyway hopefully, but I like the simplicity of this.
2020-05-21 12:01:15 +02:00
Henrik Rydgård 192164c5f8 Merge pull request #12939 from hrydgard/tag-renderpasses
Add a name tag for all render steps (GL/Vulkan).
2020-05-21 12:01:01 +02:00
Henrik Rydgård 7d10a0c609 Remove a redundant framebuffer bind in CopyDisplayToOutput 2020-05-21 11:54:08 +02:00
Henrik Rydgård fabe987c8f Add a name tag for all render steps (GL/Vulkan). Helps with debugging and should be cheap enough (a single pointer per "step"). 2020-05-21 11:24:05 +02:00
Henrik Rydgård e8b7372263 Merge pull request #12938 from hrydgard/toca-fix-attempt
Move the check from #12908 into the firmware version check.
2020-05-20 12:04:07 +02:00
Henrik Rydgård 52a3c2248d Move the check from #12908 into the firmware version check.
The original change took care of #11660, let's hope it stay fixed. This fixes
Toca (#12936).
2020-05-20 11:47:55 +02:00
Henrik Rydgård 5367cdfdc9 Merge pull request #12935 from unknownbrackets/vulkan-bugs
Cleanup some Vulkan bug checks
2020-05-20 09:13:02 +02:00
Unknown W. Brackets 86bbb447d3 Vulkan: Avoid stencilAction != depthAction.
This is the only place we do it, and apparently there can be bugs on some
drivers when you do that.  Let's not.
2020-05-19 22:14:47 -07:00
Unknown W. Brackets 8d900bb432 Vulkan: Check driver version for Adreno 5xx bug.
It's now fixed at least as of this version (possibly earlier.)
2020-05-19 22:13:15 -07:00
Unknown W. Brackets 2e05d22eb7 Vulkan: Move Harvest Moon fix to Draw::Bugs.
Also, make it so you can skip using ini settings.
2020-05-19 22:12:30 -07:00
Henrik Rydgård 79299e19f9 Merge pull request #12934 from hrydgard/mali-stencil-workaround
Vulkan: Stencil initialization: Use the adreno path for Mali as well.
2020-05-19 23:37:48 +02:00
Henrik Rydgård 3a5e07ad4f Vulkan: Stencil initialization: Use the adreno path for Mali as well.
Appears to fix the Star Ocean issue and maybe more reported in #12890.

Strange though...
2020-05-19 23:29:33 +02:00
Henrik Rydgård b001ca1e06 Merge pull request #12933 from hrydgard/vulkan-32bit-fix
Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932
2020-05-19 21:50:56 +02:00
Henrik Rydgård e64fdfa0c3 Fix a case of pointer truncation in Vulkan on 32-bit. Fixes #12932 2020-05-19 20:53:51 +02:00
Henrik Rydgård 69c092dce1 Vulkan crashfix (pNext was uninitialized) 2020-05-19 20:52:47 +02:00
Henrik Rydgård f1b9943947 Merge pull request #12930 from unknownbrackets/gpu-stencil
GPU: Avoid unnecessary clear on stencil upload
2020-05-19 09:05:58 +02:00
Henrik Rydgård 886fff0990 Merge pull request #12931 from unknownbrackets/vulkan-postshader
Vulkan: Create FB compatible pipelines in Draw
2020-05-19 09:03:41 +02:00
Unknown W. Brackets 966ac4458a Vulkan: Fix leak and remove extra allocator.
The leak was because we restored immediately after initializing, and
therefore leaked several pipelines.

This allocator isn't used right now, so just using up memory.
2020-05-18 23:07:44 -07:00
Unknown W. Brackets cb23c0c01d Vulkan: Create FB compatible pipelines in Draw.
The easiest way is just to create both and support both.  Perhaps we could
optimize out the creation of the framebuffer one.

Fixes #12928.
2020-05-18 22:45:20 -07:00
Unknown W. Brackets 396bf1d1c7 Vulkan: Expand logging of render steps a bit. 2020-05-18 21:38:36 -07:00
Unknown W. Brackets 2a5b465c44 D3D9: Avoid clearing color on stencil upload.
This makes it match Direct3D 9.  We ideally want to clear alpha, but
certainly not RGB.
2020-05-18 21:36:14 -07:00
Unknown W. Brackets 4ef4325fdb GPU: Avoid unnecessary clear on stencil upload.
In this common case, we've typically just bound the buffer to upload a
texture to it.  No need to start a new render pass.

This dodges #12927 but doesn't really fix the underlying issue.
2020-05-18 21:36:06 -07:00
Henrik Rydgård 612fdb957e Revert "Experimental commit that effectively reverts the Vulkan part of #12882."
This reverts commit 29d1f97dd5.
2020-05-19 00:44:42 +02:00
Henrik Rydgård 29d1f97dd5 Experimental commit that effectively reverts the Vulkan part of #12882.
For the #12927 investigation.
2020-05-19 00:42:34 +02:00
Henrik Rydgård 4ffc73bf5b Fix the Windows 32-bit build.
(It was complaining about inline assembly in a lambda, I guess at some
point we moved a call to Crash into a lambda and it became unhappy).
2020-05-19 00:10:39 +02:00
Henrik Rydgård d37893d1ac Track scissors like we track viewports (bugfix?). 2020-05-18 23:21:03 +02:00
Henrik Rydgård 4e00a20c1f Show "debug build" on the splash screen, in debug builds. 2020-05-18 23:16:00 +02:00
Henrik Rydgård 1e6cd11d4e Vulkan: Switch the framebuffer-rebind-to-clear on reformat to, well, a normal clear instead.
Who knows, might be related to #12927 (but in that case we also have more problems).
2020-05-18 22:01:56 +02:00
Henrik Rydgård 6593ff9ff3 Merge pull request #12923 from unknownbrackets/ui-reporting
Fix crash on report feedback screen
2020-05-18 09:11:07 +02:00
Unknown W. Brackets 7fffe1d885 Vulkan: Verify scissor as well.
Vulkan spec requires both are set - we do set both, so let's catch any
mistakes.
2020-05-17 21:23:32 -07:00
Unknown W. Brackets d295feda82 Vulkan: Add asserts to catch no viewport render.
Also assert to prevent a sync outside a frame, which goes badly.

The curRenderStep_ reset on same fb made some debugging easier, but should
not actually be hit in any real case.
2020-05-17 21:01:08 -07:00
Unknown W. Brackets dc7ee54110 UI: Take reporting screenshot at frame end.
If we do it mid frame, we need to rebind the backbuffer and reset
viewport/scissor.  Without viewport, Intel drivers crash.

Doing it at the end of the frame keeps the code simple, although we often
create views an extra time.

Fixes #12897.
2020-05-17 20:37:26 -07:00
Henrik Rydgård e29d79a5ae Merge pull request #12922 from unknownbrackets/gpu-centralize
Centralize a bit, track render pass dependencies better
2020-05-18 00:48:16 +02:00
Henrik Rydgård e216295d32 Vulkan validation: Switch to the new Khronos validation layer shipping with recent SDKs. 2020-05-18 00:40:14 +02:00