Henrik Rydgård
fabd50b178
Move FrameData out of VulkanRenderManager
2022-09-17 01:34:38 +02:00
Henrik Rydgård
415a795b11
Move back buffer rendering to a separate "present" command buffer
2022-09-17 01:11:41 +02:00
Henrik Rydgård
242efba6f7
Remove splitSubmit setting. Now we submit init commands before the acquire.
2022-09-17 01:07:30 +02:00
Henrik Rydgård
262a306b9a
Flag shader blending as broken on Adreno for now.
2022-09-16 19:19:42 +02:00
Henrik Rydgård
a0f7a4ee2f
Remove logspam
2022-09-16 19:19:42 +02:00
Henrik Rydgård
eadb144cc4
Show render pass types in GPU profiler
2022-09-16 19:19:42 +02:00
Henrik Rydgård
ce82fce8de
Use subpass dependencies to implement shader framebuffer read in Vulkan.
2022-09-16 19:19:42 +02:00
Henrik Rydgård
30e3f3b47a
Add two more extensions to device extension lookup
2022-09-16 19:19:42 +02:00
Henrik Rydgård
ac9677dcc0
Ah, need to enable the Mali workaround for Outrun's water, too.
2022-09-16 13:14:44 +02:00
Lubos
f98381fb57
Merge branch 'master' into feature_openxr_vulkan
2022-09-15 00:22:46 +02:00
Henrik Rydgård
d6d7a15d25
Get depal-from-dynamic-CLUT working
2022-09-14 22:18:35 +02:00
Henrik Rydgård
f745e94899
Allow binding "native" texture objects to thin3d
2022-09-14 22:18:35 +02:00
Henrik Rydgård
a52e62a187
Enable depth uploads on render-to-clut-buffer. Esoteric but needed for #11100 . Compat flag for now.
2022-09-14 22:18:34 +02:00
Unknown W. Brackets
56e30495aa
Common: Fix some type compare warnings on 32-bit.
2022-09-12 22:14:48 -07:00
Lubos
fea2ace548
OpenXR - Initial work on Vulkan support
2022-09-13 01:39:44 +02:00
Unknown W. Brackets
6c6d817ce7
Vulkan: Avoid crash if large texture attempted.
...
Doesn't do the clamp/wrap thing, but at least this won't crash.
2022-09-10 20:14:37 -07:00
Unknown W. Brackets
54fe342f4b
Vulkan: Wake compile thread when enqueued.
...
Previously was being woken up every frame unconditionally, causing some
logspam.
2022-09-10 08:30:09 -07:00
Henrik Rydgård
974cd38b1f
Some more debug names to vulkan objects
2022-09-08 09:16:40 +02:00
Henrik Rydgård
58a7f0cf21
Assorted cleanup
2022-09-08 01:26:01 +02:00
Henrik Rydgård
68dd329d95
Fix for desc struct
2022-09-08 01:24:04 +02:00
Henrik Rydgård
347f7c4e5a
Vulkan: Improve tagging of pipelines for debugging purposes
2022-09-08 00:47:22 +02:00
Henrik Rydgård
cddc612f6d
Extend lifetime of ShaderModule objects since we might need to recreate pipelines for different render passes
2022-09-08 00:38:32 +02:00
Henrik Rydgård
14b5a1a7cd
Fix pipeline lifetime issue, misc.
2022-09-08 00:38:32 +02:00
Henrik Rydgård
caff2ea573
Correct merging of render passes. However, we have lifetime issues.
2022-09-08 00:38:32 +02:00
Henrik Rydgård
77819c6f80
Lifetime fixes, cleanups
2022-09-08 00:38:32 +02:00
Henrik Rydgård
befcfb470c
Fix shader caching.
2022-09-08 00:38:32 +02:00
Henrik Rydgård
7ab7440475
Also create renderpass variants on demand
2022-09-08 00:38:32 +02:00
Henrik Rydgård
80ca822bf2
Create framebuffer variants on demand
2022-09-08 00:38:28 +02:00
Henrik Rydgård
e828df9f25
Split each renderpass/framebuffer into multiple "compatibility classes" (RenderPassType).
2022-09-08 00:32:03 +02:00
Lubos
3a0e6c7232
Merge branch 'master' into feature_openxr_stereo
2022-09-05 19:11:52 +02:00
Unknown W. Brackets
3c9f63e297
Vulkan: Update to latest VMA.
2022-09-04 23:54:15 -07:00
Lubos
5be6665df8
Merge branch 'master' into feature_openxr_stereo
2022-09-04 12:37:41 +02:00
Henrik Rydgård
5f1ffeae70
Correct LogicOp API support detection
2022-09-04 00:08:40 +02:00
Henrik Rydgård
d3309dd8e9
Minor refactor with pipelines in QueueRunner (makes more information available for easier debugging)
2022-09-03 23:08:02 +02:00
Henrik Rydgård
fb3f417e77
Fix lying comment, log level reduction
2022-09-03 16:15:46 +02:00
Henrik Rydgård
c06cf8efaa
Switch Vulkan pipelines to use promises for synchronization
...
Slightly more expensive I guess but shouldn't be much of a bottleneck.
2022-09-03 15:21:08 +02:00
Henrik Rydgård
93422f6dea
Don't block on shader creation until it's time to create the pipeline.
2022-09-03 15:21:07 +02:00
Henrik Rydgård
ec0586ba50
Use promises to hold shader modules, for later asyncification
2022-09-03 15:21:07 +02:00
Lubos
00aaf9e1a6
Merge branch 'master' into feature_openxr_stereo
2022-09-01 18:09:21 +02:00
Henrik Rydgård
9097fdaae6
Shrink VkRenderData from 88 to 64 bytes.
2022-09-01 14:21:34 +02:00
Henrik Rydgård
24d674d2bc
Shrink the TransitionRequest struct, use TinySet
2022-09-01 10:59:27 +02:00
Henrik Rydgård
670c31e746
Add support for reading depth buffers to the PackFramebufferSync function.
...
Also adds D16 conversion code (though, could probably get away with just
creating a 16-bit depth buffer on the GPU and blit to it, where depth
blit is available).
Not yet used, just getting it in separately.
2022-08-30 00:00:59 +02:00
Lubos
94968c3075
Merge branch 'master' into feature_openxr_stereo
2022-08-29 21:32:59 +02:00
Henrik Rydgård
34ed960a72
Use better pattern for enum switches
2022-08-28 23:57:01 +02:00
Henrik Rydgård
b447092742
Some Vulkan renderpass load/store optimizations.
2022-08-28 23:16:48 +02:00
Lubos
c2c0561be2
OpenXR - OPENXR ifdef removal
2022-08-27 17:33:37 +02:00
Henrik Rydgård
d459eac891
Fix checks for depth texture support, GLES syntax errors
2022-08-24 11:26:07 +02:00
Henrik Rydgård
fc81b76b98
Vulkan: Very minor chnages after checking Best Practices with new validation layer
2022-08-23 23:55:53 +02:00
Unknown W. Brackets
c13f57e64f
Vulkan: Cleanup minor logging.
2022-08-21 19:40:02 -07:00
Henrik Rydgård
3a0d43ae1e
Remove deprecated function (mostly)
2022-08-16 11:47:38 +02:00