eden/src/video_core/renderer_vulkan
MaranBr de449d2caa
[video_core] Fix missing draws caused by implicit render pass state (#3355)
Some blit paths could be recorded while a render pass was still active, which is undefined behavior in Vulkan.

Depending on driver behavior and timing, this could result in intermittent visual artifacts, incomplete frames being presented, or issues with capture paths.

Explicitly request an outside render pass operation context before issuing blit commands, ensuring all rendering has fully completed before presentation or readback.

This does not change intended rendering output, but fixes a class of synchronization and command buffer state issues.

Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/3355
Reviewed-by: DraVee <dravee@eden-emu.dev>
Co-authored-by: MaranBr <maranbr@outlook.com>
Co-committed-by: MaranBr <maranbr@outlook.com>
2026-01-23 00:23:02 +01:00
..
present [vk, ogl/IR, dynarmic/IR] friendlier IR identity pointer chasing, inline AA passes (#3250) 2026-01-20 02:36:24 +01:00
blit_image.cpp [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
blit_image.h [vk] Implement Shader Read Barrier (#2671) 2025-10-04 23:58:08 +02:00
fixed_pipeline_state.cpp [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
fixed_pipeline_state.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
maxwell_to_vk.cpp [vk, opengl] macro-ify PixelSurface and SurfaceFormat lists (#3060) 2025-12-30 21:30:34 +01:00
maxwell_to_vk.h [dynarmic, common] pagetable clustering (#3215) 2026-01-13 00:27:31 +01:00
pipeline_helper.h Vulkan 1.4 and New Extensions (#93) 2025-05-09 14:19:51 +00:00
pipeline_statistics.cpp Update fmt to allow for v11 2025-04-10 01:11:22 +02:00
pipeline_statistics.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
renderer_vulkan.cpp [video_core] Fix missing draws caused by implicit render pass state (#3355) 2026-01-23 00:23:02 +01:00
renderer_vulkan.h [vk] Unify RAII in Vulkan (#2679) 2025-10-08 04:01:24 +02:00
vk_blit_screen.cpp [vk, ogl] Add VK_QCOM ZTC, Bspline, Mitchell filter weights, add MMPX filter (#2577) 2025-10-07 06:35:57 +02:00
vk_blit_screen.h gpu: dependency-inject scaling/antialiasing filter state for capture layers 2024-02-09 09:20:53 -05:00
vk_buffer_cache.cpp [tests] fix compile+linking issues with PlayTime (#3345) 2026-01-19 16:27:18 +01:00
vk_buffer_cache.h [clang, opengl] fix opengl build on PGO build and clang-cl on windows (#3332) 2026-01-18 02:35:57 +01:00
vk_buffer_cache_base.cpp Buffer Cache: Fully rework the buffer cache. 2023-04-29 00:46:31 +02:00
vk_command_pool.cpp general: fix spelling mistakes 2023-03-12 11:33:01 -04:00
vk_command_pool.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
vk_compute_pass.cpp [clang, opengl] fix opengl build on PGO build and clang-cl on windows (#3332) 2026-01-18 02:35:57 +01:00
vk_compute_pass.h [video_core] Implement GPU-accelerated texture unswizzling and optimize sparse texture handling (#3246) 2026-01-13 19:18:08 +01:00
vk_compute_pipeline.cpp [vk] only enable statistics bit if graphics debugging is enabled (#243) 2025-08-13 19:25:52 +02:00
vk_compute_pipeline.h renderer_vulkan: separate guest and host compute descriptor queues 2023-05-10 13:46:48 -04:00
vk_descriptor_pool.cpp [Vulkan] Descriptor Pool bug fix (#2564) 2025-09-26 04:58:09 +02:00
vk_descriptor_pool.h Rework time service to fix time passing offline. 2024-01-24 04:26:55 +00:00
vk_fence_manager.cpp Clang format and ddress feedback 2023-04-24 12:38:47 +02:00
vk_fence_manager.h Query Cache: address issues 2023-09-23 23:05:30 +02:00
vk_graphics_pipeline.cpp [vk, settings] Disable VIDS on Android and Ungate Advanced EDS (#3281) 2026-01-08 00:51:26 +01:00
vk_graphics_pipeline.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_master_semaphore.cpp [video_core] Rework GPU Accuracy levels and remove Early Release Fences toggle (#3129) 2025-12-09 18:11:05 +01:00
vk_master_semaphore.h renderer_vulkan: Introduce separate cmd buffer for uploads 2023-11-12 20:27:39 +01:00
vk_pipeline_cache.cpp [vk, qcom] Memory, Samplers, BindingBuffers and UniformBufferAlignment set by hardware capabilities for QCOM. (#3280) 2026-01-11 05:31:23 +01:00
vk_pipeline_cache.h Optimize SpiriV output 2025-04-12 22:54:32 -03:00
vk_present_manager.cpp [vk] use boost::container::deque instead of std::queue for presentation swapchain of frames (#3120) 2025-12-18 11:29:38 +01:00
vk_present_manager.h [vk] use boost::container::deque instead of std::queue for presentation swapchain of frames (#3120) 2025-12-18 11:29:38 +01:00
vk_query_cache.cpp [vk] Remove UniformRing and vkCmdResetQueryPool (#3270) 2026-01-07 06:52:17 +01:00
vk_query_cache.h [vk] Bring Vulkan closer to Spec (#180) 2025-08-13 18:02:05 +02:00
vk_rasterizer.cpp [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
vk_rasterizer.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_render_pass_cache.cpp [Vk] Improve Stencil Handling and Fix Read-After-Write Hazard (#235) 2025-08-23 20:04:48 +02:00
vk_render_pass_cache.h general: fix compile for Apple Clang 2022-11-22 22:22:28 -05:00
vk_resource_pool.cpp general: fix spelling mistakes 2023-03-12 11:33:01 -04:00
vk_resource_pool.h general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
vk_scheduler.cpp [video_core] Implement GPU-accelerated texture unswizzling and optimize sparse texture handling (#3246) 2026-01-13 19:18:08 +01:00
vk_scheduler.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_shader_util.cpp Revert some wip changes 2025-04-28 16:14:42 -03:00
vk_shader_util.h Revert some wip changes 2025-04-28 16:14:42 -03:00
vk_staging_buffer_pool.cpp revert [vk] StreamBuffer Changes (#2684) (#2707) 2025-10-10 01:55:43 +02:00
vk_staging_buffer_pool.h revert [vk] Fast UBO: fix tracking, resize heuristics, add debug guard (#2695) (#2706) 2025-10-09 21:37:27 +02:00
vk_state_tracker.cpp [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_state_tracker.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_swapchain.cpp [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_swapchain.h [refactor, vk] DynamicState, ExtendedDynamicState and VertexInputDynamicState (#3074) 2026-01-07 06:49:32 +01:00
vk_texture_cache.cpp [tests] fix compile+linking issues with PlayTime (#3345) 2026-01-19 16:27:18 +01:00
vk_texture_cache.h [common, core] remove uneeded memory indirection overhead at startup (#3306) 2026-01-16 23:39:16 +01:00
vk_texture_cache_base.cpp general: Convert source file copyright comments over to SPDX 2022-04-23 05:55:32 -04:00
vk_texture_manager.cpp Some fixes before Release (#92) 2025-05-08 23:03:52 +00:00
vk_turbo_mode.cpp [common] use libc++ provided jthread instead of in-house one (which deadlocks on FBSD 14) (#351) 2025-10-01 06:59:35 +02:00
vk_turbo_mode.h android: vk_turbo_mode: Remove unnecessary device recreation. 2023-06-03 00:06:08 -07:00
vk_update_descriptor.cpp renderer_vulkan: Fix crashing when updating descriptors 2023-05-01 23:13:24 +03:00
vk_update_descriptor.h renderer_vulkan: allow up to 7 swapchain images 2023-12-16 18:59:44 -05:00