Commit graph

124 commits

Author SHA1 Message Date
Henrik Rydgård
cb3ed8f4a1
Merge pull request #13343 from unknownbrackets/xxhash
Switch to XXH3
2020-08-28 12:20:26 +02:00
Unknown W. Brackets
184d4a1fc0 Vulkan: Type comparison warning fix. 2020-08-27 20:01:59 -07:00
Henrik Rydgård
f64d36664e Fix final subpass dependency for depth 2020-08-27 22:59:18 +02:00
Henrik Rydgård
b58f5e46ae Correctly update image layout to the final one after a render pass. 2020-08-27 22:59:18 +02:00
Henrik Rydgård
95a4cd37fc Improve LogSteps further. Break out PreprocessSteps. 2020-08-27 21:50:05 +02:00
Henrik Rydgård
6e9d5ffbd7 VulkanRenderManager: Improve logging. LogSteps output is much better.
More logging improvements
2020-08-27 21:50:05 +02:00
Henrik Rydgård
b323397c54 Vulkan: Minor fix for depth/stencil pretransitions. Used DEPTH_ATTACHMENT_OPTIMAL by mistake in barrier. 2020-08-27 16:46:14 +02:00
Henrik Rydgård
de4778358e AspectMask fix 2020-08-27 16:39:15 +02:00
Henrik Rydgård
3be729bfc5 Vulkan: Silly typo fix in barrier 2020-08-27 14:46:02 +02:00
Henrik Rydgård
ccc0331279 Move timeutil to Common. (Experiment to see how much work it is to move these). 2020-08-15 20:53:08 +02:00
Henrik Rydgård
8835728f87 Replace base/logging.h in VulkanContext and parts of native 2020-08-15 19:08:44 +02:00
Unknown W. Brackets
d90630c263
Merge pull request #13262 from hrydgard/depth-texturing
Implement texturing from depth buffers (Vulkan only so far)
2020-08-10 03:42:17 -04:00
Henrik Rydgård
0aa2ceb372 Address feedback 2020-08-10 09:16:28 +02:00
Henrik Rydgård
dd79d33f14 Minor: Initialize a struct. Decrease logging in sceMt19937. 2020-08-09 21:45:42 +02:00
Henrik Rydgård
ba0d04a142 Vulkan: Implement depth texturing through depal. 2020-08-09 20:31:04 +02:00
Henrik Rydgård
cf122e9333 Vulkan/generic: Initial prep for depth texturing 2020-08-09 19:47:15 +02:00
Henrik Rydgård
2f5de1987e Allow passing in an object name tag when creating framebuffers 2020-08-09 09:36:45 +02:00
Henrik Rydgård
c5e0b799d9 Remove category from _assert_msg_ functions. We don't filter these by category anyway.
Fixes the inconsistency where we _assert_ didn't take a category but
_assert_msg_ did.
2020-07-19 20:33:25 +02:00
Henrik Rydgård
8e7d2109fe VulkanQueueRunner: Fix some uninitialized struct members (not sure if it has any effect) 2020-05-31 19:35:19 +02:00
Unknown W. Brackets
2dbb7a598d Vulkan: Label render passes in RenderDoc/etc. 2020-05-21 08:55:36 -07: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
Unknown W. Brackets
396bf1d1c7 Vulkan: Expand logging of render steps a bit. 2020-05-18 21:38:36 -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
Unknown W. Brackets
059e2e5e16 Vulkan: Stop merge at clear/touched read only.
Before we would merge on a future render after a clear, which can't be
good.  But we can safely ignore a draw to another FB that reads from a
touched FB.
2020-05-17 15:04:21 -07:00
Unknown W. Brackets
112a58cb1a Vulkan: Make merge pass a bit easier to read. 2020-05-17 14:53:37 -07:00
Unknown W. Brackets
47bc11a682 Vulkan: Generalize dependency tracking.
Might as well track on all steps.  We also can know if the dst was fully
written to here.
2020-05-17 11:06:39 -07:00
Unknown W. Brackets
e309712fed Vulkan: Correct missing offsets in Draw.
Was silently ignoring them.  Caused stretch in postshaders.
2020-05-13 18:10:09 -07:00
Henrik Rydgård
a34c773b13 Vulkan: Don't merge render passes where the second one begins with a clear.
God of War optimization survives this check, thankfully.

Force Unleashed doesn't, but meh, it's not as bad there anyway.
2020-05-10 23:10:57 +02:00
Henrik Rydgård
25dcf8dd8d Warning fixes 2020-03-01 14:15:10 +01:00
Henrik Rydgård
26ab81c102 vulkan: The GPU profiler could end up writing massive amounts of text, fix some bugs around that. 2019-11-30 23:03:30 +01:00
Henrik Rydgård
fc34a93ac2 vulkan: ApplyRenderPassMerge; Add copy / blit destinations to touched buffers. 2019-11-30 23:02:08 +01:00
Henrik Rydgård
70c0a12b2b Fix name collision on iOS build 2019-10-13 21:25:16 +02:00
Henrik Rydgård
5adb61a5f2 Move the viewport clamping back to rendermanager to avoid a struct copy in the common case. 2019-10-13 21:25:16 +02:00
Henrik Rydgård
7c0470e061 Fix misplaced break 2019-10-13 21:25:16 +02:00
Henrik Rydgård
87c1ce6fa2 Vulkan: Move viewport/scissor rotation to the QueueRunner instead of RenderManager. Add some checks. 2019-10-13 21:25:16 +02:00
Henrik Rydgård
1e3711ee66 Vulkan blend factor: Bugfix and minor optimization 2019-10-13 21:17:29 +02:00
Henrik Rydgård
2467fddc01 Vulkan GPU profiler: Measure the CPU time spent on the render thread recording command buffers. 2019-09-18 00:16:08 +02:00
Henrik Rydgård
7bb6febc32 Add a few more checks. 2019-08-22 09:23:02 +02:00
Henrik Rydgård
05b2e11c5c Vulkan: Prevent some bad merging of renderpasses. Thanks Unknown for writing it up. 2019-08-21 21:30:36 +02:00
Henrik Rydgård
773cb5fa70 Stop renderpass merging at readbacks. 2019-08-21 21:13:56 +02:00
Henrik Rydgård
597b034b5c Minor optimization 2019-08-21 20:32:23 +02:00
Henrik Rydgård
93412aff3b Vulkan: Automatically merge render passes to the same target when possible.
Should speed things up a bit on mobile in some games that do stupid
things like GoW. Currently only enabled in GoW, but plan to enable this
globally as it should be quite cheap when nothing is detected.
2019-08-21 20:32:23 +02:00
Henrik Rydgård
e3f1e563f2 Improve renderpass profiling descriptions a little 2019-08-21 18:31:01 +02:00
Henrik Rydgård
66609b395f Vulkan: Profile individual render passes/steps. 2019-08-21 16:47:46 +02:00
Henrik Rydgård
d0a3410875 Typo fix 2019-08-13 00:22:47 +02:00
Henrik Rydgård
ddb5208130 Vulkan: Reduce the amount of redundant stencil parameter sets 2019-08-12 23:19:07 +02:00
Henrik Rydgård
213e2ccefc Vulkan: Add missing barrier when rendering to a target that's already in COLOR_OPTIMAL layout.
Fixes #12215
2019-08-08 15:38:09 +02:00
Henrik Rydgård
3b0624ff9f Some changes and asserts. 2019-08-08 14:07:53 +02:00
Henrik Rydgård
ebe64c60e9 Vulkan: Improve the Metal Gear Acid 2 performance hack. 2019-08-08 11:49:35 +02:00