suyu/src/video_core/renderer_opengl
echosys 7e27e6476d Add option to only optimize SPIRV during load (#13)
Adds a new option "On Load" to the "Optimize SPIRV output" option that turns on optimizations during the loading of the shader cache from disk, but turns it off after that.
The previous checkbox states have been named "Never" for unchecked and "Always" for checked.

The idea is that once the shader cache has most of the shaders in a game cached they can be optimized during initial game startup (where a performance hit matters less) and the few shaders that get compiled during runtime are not optimized to reduce performance hits.

Most of the commit is adding the setting to the Android app, the main logic is in the `gl_shader_cache.cpp` and `vk_pipeline_cache.cpp` files.

Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/13
Co-authored-by: echosys <echosys@noreply.localhost>
Co-committed-by: echosys <echosys@noreply.localhost>
2024-07-19 19:14:19 +00:00
..
present gpu: dependency-inject scaling/antialiasing filter state for capture layers 2024-02-09 09:20:53 -05:00
blit_image.cpp video_core: Fix ogl status error when draw_texture 2023-03-12 13:33:31 +08:00
blit_image.h
gl_blit_screen.cpp gpu: dependency-inject scaling/antialiasing filter state for capture layers 2024-02-09 09:20:53 -05:00
gl_blit_screen.h gpu: dependency-inject scaling/antialiasing filter state for capture layers 2024-02-09 09:20:53 -05:00
gl_buffer_cache_base.cpp Buffer Cache: Fully rework the buffer cache. 2023-04-29 00:46:31 +02:00
gl_buffer_cache.cpp SMMU: Initial adaptation to video_core. 2024-01-18 21:12:30 -05:00
gl_buffer_cache.h Buffer Cache: Refactor to use Range sets instead 2024-02-05 11:06:52 +01:00
gl_compute_pipeline.cpp settings,general: Rename non-confirming enums 2023-07-21 10:56:54 -04:00
gl_compute_pipeline.h shaders: Track local memory usage 2023-06-25 18:59:33 -04:00
gl_device.cpp gl_device: Remove AMD blacklists that are no longer applicable 2023-12-20 18:19:15 -05:00
gl_device.h gl_buffer_cache: Reintroduce NV_vertex_buffer_unified_memory 2023-12-19 17:13:23 -05:00
gl_fence_manager.cpp OpenGL: Prefer glClientWaitSync for OGLSync objects 2023-03-08 20:29:25 -05:00
gl_fence_manager.h Fence Manager: implement async fence management in a sepparate thread. 2023-04-23 04:48:50 +02:00
gl_graphics_pipeline.cpp gl_graphics_pipeline: GLASM: Fix transform feedback attribs buffer mode 2023-11-18 00:44:05 -05:00
gl_graphics_pipeline.h gl_graphics_pipeline: GLASM: Fix transform feedback attribs buffer mode 2023-11-18 00:44:05 -05:00
gl_query_cache.cpp Core: Clang format and other small issues. 2024-01-18 21:12:30 -05:00
gl_query_cache.h Core: Clang format and other small issues. 2024-01-18 21:12:30 -05:00
gl_rasterizer.cpp Ran clang-format 2024-05-31 10:19:41 +02:00
gl_rasterizer.h renderer_opengl: isolate core presentation code 2024-01-31 11:27:20 -05:00
gl_resource_manager.cpp gl_rasterizer: Implement DrawTransformFeedback macro 2023-12-19 19:54:57 -05:00
gl_resource_manager.h gl_rasterizer: Implement DrawTransformFeedback macro 2023-12-19 19:54:57 -05:00
gl_shader_cache.cpp Add option to only optimize SPIRV during load (#13) 2024-07-19 19:14:19 +00:00
gl_shader_cache.h Add option to only optimize SPIRV during load (#13) 2024-07-19 19:14:19 +00:00
gl_shader_context.h video_core: preallocate fewer IR blocks 2023-06-14 21:37:57 -04:00
gl_shader_manager.cpp OpenGL: Limit lmem warmup to NVIDIA 2023-06-25 19:06:51 -04:00
gl_shader_manager.h OpenGL: Add Local Memory warmup shader 2023-06-25 18:43:23 -04:00
gl_shader_util.cpp
gl_shader_util.h
gl_staging_buffer_pool.cpp gl_texture_cache: Enable async downloads 2023-08-13 23:17:59 -05:00
gl_staging_buffer_pool.h gl_texture_cache: Enable async downloads 2023-08-13 23:17:59 -05:00
gl_state_tracker.cpp
gl_state_tracker.h
gl_texture_cache_base.cpp
gl_texture_cache.cpp video_core: consistently account for resolution scaling when rendering 2024-01-31 11:27:20 -05:00
gl_texture_cache.h VideoCore: Move Slot Vector to Common 2024-02-04 20:01:47 +01:00
maxwell_to_gl.h Implement X8_D24 format 2023-10-06 00:58:30 +01:00
renderer_opengl.cpp Updated copyright headers 2024-04-05 01:58:30 +02:00
renderer_opengl.h Updated copyright headers 2024-04-05 01:58:30 +02:00
util_shaders.cpp gl 2023-08-06 14:54:57 -04:00
util_shaders.h OpenGL: Make use of persistent buffer maps in buffer cache downloads 2023-05-28 00:38:46 -04:00