yuzu/src/video_core/renderer_opengl
Ameer J 370e480c8c
gl_graphics_pipeline: Improve shader builder synchronization using fences (#7969)
* gl_graphics_pipeline: Improve shader builder synchronization

Make use of GLsync objects to ensure better synchronization between shader builder threads and the main context

* gl_graphics_pipeline: Make built_fence access threadsafe

* gl_graphics_pipeline: Use GLsync objects only when building in parallel

* gl_graphics_pipeline: Replace GetSync calls with non-blocking waits

The spec states that a ClientWait on a Fence object ensures the changes propagate to the calling context
2022-03-06 16:46:49 +01:00
..
gl_buffer_cache.cpp shader: Properly scale image reads and add GL SPIR-V support 2021-11-16 22:11:29 +01:00
gl_buffer_cache.h buffer_cache: Fix copy based uniform bindings tracking 2021-07-22 21:51:35 -04:00
gl_compute_pipeline.cpp shader, video_core: Fix GCC build errors 2021-11-16 22:11:29 +01:00
gl_compute_pipeline.h video_core: Enable GL SPIR-V shaders 2021-07-22 21:51:39 -04:00
gl_device.cpp glsl: Add boolean reference workaround 2021-12-29 19:03:50 -05:00
gl_device.h glsl: Add boolean reference workaround 2021-12-29 19:03:50 -05:00
gl_fence_manager.cpp gl_fence_manager: Minor optimization to signal querying 2022-02-27 17:57:33 -05:00
gl_fence_manager.h video_core: Reimplement the buffer cache 2021-02-13 02:17:22 -03:00
gl_graphics_pipeline.cpp gl_graphics_pipeline: Improve shader builder synchronization using fences (#7969) 2022-03-06 16:46:49 +01:00
gl_graphics_pipeline.h gl_graphics_pipeline: Improve shader builder synchronization using fences (#7969) 2022-03-06 16:46:49 +01:00
gl_query_cache.cpp video_core: Resolve more variable shadowing scenarios pt.3 2020-12-05 16:02:23 -05:00
gl_query_cache.h video_core: Resolve more variable shadowing scenarios pt.3 2020-12-05 16:02:23 -05:00
gl_rasterizer.cpp Rasterizer: Refactor inlineToMemory. 2022-02-01 01:47:28 +01:00
gl_rasterizer.h Rasterizer: Refactor inlineToMemory. 2022-02-01 01:47:28 +01:00
gl_resource_manager.cpp gl_resource_manager: Ensure non EXT_framebuffer objects are created 2021-11-16 22:11:33 +01:00
gl_resource_manager.h general: Replace NonCopyable struct with equivalents 2022-02-02 13:17:12 -05:00
gl_shader_cache.cpp ShaderDecompiler: Add a debug option to dump the game's shaders. 2022-01-04 02:39:00 +01:00
gl_shader_cache.h gl_shader_cache: Fixes for async shaders 2021-07-22 21:51:40 -04:00
gl_shader_context.h gl_shader_cache: Implement async shaders 2021-07-22 21:51:38 -04:00
gl_shader_manager.cpp shader: Initial OpenGL implementation 2021-07-22 21:51:30 -04:00
gl_shader_manager.h renderer_opengl: Use ARB_separate_shader_objects 2021-07-22 21:51:40 -04:00
gl_shader_util.cpp renderer_opengl: Use ARB_separate_shader_objects 2021-07-22 21:51:40 -04:00
gl_shader_util.h renderer_opengl: Use ARB_separate_shader_objects 2021-07-22 21:51:40 -04:00
gl_state_tracker.cpp shader: Accelerate pipeline transitions and use dirty flags for shaders 2021-07-22 21:51:29 -04:00
gl_state_tracker.h shader: Accelerate pipeline transitions and use dirty flags for shaders 2021-07-22 21:51:29 -04:00
gl_stream_buffer.cpp gl_stream_buffer/vk_staging_buffer_pool: Fix size check 2021-02-13 05:11:48 -03:00
gl_stream_buffer.h common: Replace common_sizes into user-literals 2021-06-24 09:27:40 -07:00
gl_texture_cache_base.cpp texture_cache: Address ameerj's review 2021-08-05 20:46:24 +00:00
gl_texture_cache.cpp vk_texture_cache: Fix invalidated pointer access 2021-12-23 20:55:48 -05:00
gl_texture_cache.h vk_texture_cache: Fix invalidated pointer access 2021-12-23 20:55:48 -05:00
maxwell_to_gl.h maxwell_to_(gl/vk): Add 11_11_10 float vertex format 2022-02-25 17:11:17 -05:00
renderer_opengl.cpp renderer_opengl: Minor refactoring of filter selection 2021-12-05 15:42:45 -05:00
renderer_opengl.h OpenGL: fix FXAA with scaling 2021-11-16 22:11:32 +01:00
util_shaders.cpp host_shaders: Remove opengl_copy_bgra.comp 2021-09-16 19:49:13 -04:00
util_shaders.h host_shaders: Remove opengl_copy_bgra.comp 2021-09-16 19:49:13 -04:00