mirror of
https://git.eden-emu.dev/eden-emu/eden
synced 2026-05-14 10:08:01 +00:00
The barrier before the CPU-upload copy was using VK_PIPELINE_STAGE_HOST_BIT. Validation rules only allow HOST as the source stage if you’re also specifying host-side access flags; inside a command buffer the GPU isn’t executing “host work,” so pairing that stage with the usual image layout transition is technically invalid. Switching the source stage to VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT keeps the ordering guarantee we need and satisfies the spec, while the actual host visibility is still handled correctly by the preceding vmaFlushAllocation. Co-authored-by: Ribbit <ribbit@placeholder.com> Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2681 Reviewed-by: MaranBr <maranbr@eden-emu.dev> Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev> Co-authored-by: Ribbit <ribbit@eden-emu.dev> Co-committed-by: Ribbit <ribbit@eden-emu.dev> |
||
|---|---|---|
| .. | ||
| present | ||
| blit_image.cpp | ||
| blit_image.h | ||
| fixed_pipeline_state.cpp | ||
| fixed_pipeline_state.h | ||
| maxwell_to_vk.cpp | ||
| maxwell_to_vk.h | ||
| pipeline_helper.h | ||
| pipeline_statistics.cpp | ||
| pipeline_statistics.h | ||
| renderer_vulkan.cpp | ||
| renderer_vulkan.h | ||
| vk_blit_screen.cpp | ||
| vk_blit_screen.h | ||
| vk_buffer_cache.cpp | ||
| vk_buffer_cache.h | ||
| vk_buffer_cache_base.cpp | ||
| vk_command_pool.cpp | ||
| vk_command_pool.h | ||
| vk_compute_pass.cpp | ||
| vk_compute_pass.h | ||
| vk_compute_pipeline.cpp | ||
| vk_compute_pipeline.h | ||
| vk_descriptor_pool.cpp | ||
| vk_descriptor_pool.h | ||
| vk_fence_manager.cpp | ||
| vk_fence_manager.h | ||
| vk_graphics_pipeline.cpp | ||
| vk_graphics_pipeline.h | ||
| vk_master_semaphore.cpp | ||
| vk_master_semaphore.h | ||
| vk_pipeline_cache.cpp | ||
| vk_pipeline_cache.h | ||
| vk_present_manager.cpp | ||
| vk_present_manager.h | ||
| vk_query_cache.cpp | ||
| vk_query_cache.h | ||
| vk_rasterizer.cpp | ||
| vk_rasterizer.h | ||
| vk_render_pass_cache.cpp | ||
| vk_render_pass_cache.h | ||
| vk_resource_pool.cpp | ||
| vk_resource_pool.h | ||
| vk_scheduler.cpp | ||
| vk_scheduler.h | ||
| vk_shader_util.cpp | ||
| vk_shader_util.h | ||
| vk_staging_buffer_pool.cpp | ||
| vk_staging_buffer_pool.h | ||
| vk_state_tracker.cpp | ||
| vk_state_tracker.h | ||
| vk_swapchain.cpp | ||
| vk_swapchain.h | ||
| vk_texture_cache.cpp | ||
| vk_texture_cache.h | ||
| vk_texture_cache_base.cpp | ||
| vk_texture_manager.cpp | ||
| vk_turbo_mode.cpp | ||
| vk_turbo_mode.h | ||
| vk_update_descriptor.cpp | ||
| vk_update_descriptor.h | ||