yuzu/src/video_core/renderer_vulkan
ReinUsesLisp 53acdda772 vk_scheduler: Allow command submission on worker thread
This changes how Scheduler::Flush works. It queues the current command
buffer to be sent to the GPU but does not do it immediately. The Vulkan
worker thread takes care of that. Users will have to use
Scheduler::Flush + Scheduler::WaitWorker to get the previous behavior.

Scheduler::Finish is unchanged.

To avoid waiting on work never queued, Scheduler::Wait sends the current
command buffer if that's what the caller wants to wait.
2021-07-22 21:51:29 -04:00
..
blit_image.cpp vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
blit_image.h vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
fixed_pipeline_state.cpp shader: Implement SR_Y_DIRECTION 2021-07-22 21:51:28 -04:00
fixed_pipeline_state.h shader: Implement SR_Y_DIRECTION 2021-07-22 21:51:28 -04:00
maxwell_to_vk.cpp shader: Implement tessellation shaders, polygon mode and invocation id 2021-07-22 21:51:27 -04:00
maxwell_to_vk.h shader: Implement tessellation shaders, polygon mode and invocation id 2021-07-22 21:51:27 -04:00
pipeline_helper.h shader: Implement indexed textures 2021-07-22 21:51:28 -04:00
renderer_vulkan.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
renderer_vulkan.h video_core: Add GPU vendor name to window title bar 2021-06-20 23:04:07 -04:00
vk_blit_screen.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_blit_screen.h gpu: Report renderer errors with exceptions 2021-02-13 02:16:19 -03:00
vk_buffer_cache.cpp vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
vk_buffer_cache.h vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
vk_command_pool.cpp vk_command_pool: Reduce the command pool size from 4096 to 4 2021-02-23 19:08:24 -03:00
vk_command_pool.h renderer_vulkan: Rename VKDevice to Device 2021-01-03 17:51:48 -03:00
vk_compute_pass.cpp vk_compute_pass: Fix -Wshadow warning 2021-07-22 21:51:29 -04:00
vk_compute_pass.h vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00
vk_compute_pipeline.cpp vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00
vk_compute_pipeline.h vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00
vk_descriptor_pool.cpp vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
vk_descriptor_pool.h vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
vk_fence_manager.cpp video_core: Reimplement the buffer cache 2021-02-13 02:17:22 -03:00
vk_fence_manager.h video_core: Reimplement the buffer cache 2021-02-13 02:17:22 -03:00
vk_graphics_pipeline.cpp vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00
vk_graphics_pipeline.h shader: Move pipeline cache logic to separate files 2021-07-22 21:51:29 -04:00
vk_master_semaphore.cpp vk_master_semaphore: Use jthread for debug thread 2021-06-21 19:56:07 -03:00
vk_master_semaphore.h vk_master_semaphore: Use jthread for debug thread 2021-06-21 19:56:07 -03:00
vk_pipeline_cache.cpp shader: Move pipeline cache logic to separate files 2021-07-22 21:51:29 -04:00
vk_pipeline_cache.h shader: Move pipeline cache logic to separate files 2021-07-22 21:51:29 -04:00
vk_query_cache.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_query_cache.h renderer_vulkan: Rename VKDevice to Device 2021-01-03 17:51:48 -03:00
vk_rasterizer.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_rasterizer.h vulkan: Rework descriptor allocation algorithm 2021-07-22 21:51:29 -04:00
vk_render_pass_cache.cpp shader: Fix render targets with null attachments 2021-07-22 21:51:29 -04:00
vk_render_pass_cache.h vk_pipeline_cache: Add pipeline cache 2021-07-22 21:51:24 -04:00
vk_resource_pool.cpp shader: Primitive Vulkan integration 2021-07-22 21:51:22 -04:00
vk_resource_pool.h shader: Primitive Vulkan integration 2021-07-22 21:51:22 -04:00
vk_scheduler.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_scheduler.h vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_shader_util.cpp renderer_vulkan: Move device abstraction to vulkan_common 2021-01-04 02:22:22 -03:00
vk_shader_util.h renderer_vulkan: Rename VKDevice to Device 2021-01-03 17:51:48 -03:00
vk_staging_buffer_pool.cpp shader: Implement tessellation shaders, polygon mode and invocation id 2021-07-22 21:51:27 -04:00
vk_staging_buffer_pool.h vk_staging_buffer_pool: Fix softlock when stream buffer overflows 2021-02-13 02:18:38 -03:00
vk_state_tracker.cpp fixed_pipeline_cache: Use dirty flags to lazily update key 2021-02-13 17:44:47 -03:00
vk_state_tracker.h fixed_pipeline_cache: Use dirty flags to lazily update key 2021-02-13 17:44:47 -03:00
vk_stream_buffer.cpp common: Replace common_sizes into user-literals 2021-06-24 09:27:40 -07:00
vk_stream_buffer.h renderer_vulkan: Rename VKDevice to Device 2021-01-03 17:51:48 -03:00
vk_swapchain.cpp vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_swapchain.h vk_scheduler: Allow command submission on worker thread 2021-07-22 21:51:29 -04:00
vk_texture_cache.cpp shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
vk_texture_cache.h shader: Implement SULD and SUST 2021-07-22 21:51:26 -04:00
vk_update_descriptor.cpp vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00
vk_update_descriptor.h vulkan: Defer descriptor set work to the Vulkan thread 2021-07-22 21:51:29 -04:00