aboutsummaryrefslogtreecommitdiff
path: root/src/video_core/renderer_vulkan
AgeCommit message (Collapse)Author
2021-08-01Merge pull request #6720 from ameerj/vk-screenshotFernando S
renderer_vulkan: Implement screenshots
2021-08-01Merge pull request #6765 from ReinUsesLisp/y-negate-vkAmeer J
vk_rasterizer: Flip viewport on Y_NEGATE
2021-08-01astc_decoder: Reduce workgroup sizeameerj
This reduces the amount of over dispatching when there are odd dimensions (i.e. ASTC 8x5), which rarely evenly divide into 32x32.
2021-08-01astc_decoder: Compute offset swizzles in-shaderameerj
Alleviates the dependency on the swizzle table and a uniform which is constant for all ASTC texture sizes.
2021-07-31astc_decoder: Optimize the use EncodingDataameerj
This buffer was a list of EncodingData structures sorted by their bit length, with some duplication from the cpu decoder implementation. We can take advantage of its sorted property to optimize its usage in the shader. Thanks to wwylele for the optimization idea.
2021-07-29vk_rasterizer: Flip viewport on Y_NEGATEReinUsesLisp
Matches OpenGL's behavior. I don't believe this register flips geometry, but we have to try to match behavior on both backends.
2021-07-28renderers: Add explicit invert_y bool to screenshot callbackameerj
OpenGL and Vulkan images render in different coordinate systems. This allows us to specify the coordinate system of the screenshot within each renderer
2021-07-28renderer_vulkan: Implement screenshotsameerj
2021-07-28vk_blit_screen: Add public CreateFramebuffer methodameerj
2021-07-28vk_blit_screen: Make Draw method more genericameerj
Allows specifying the framebuffer and render area dimensions, rather than being hard coded for the render window.
2021-07-27renderer_vulkan: Add setting to log pipeline statisticsReinUsesLisp
Use VK_KHR_pipeline_executable_properties when enabled and available to log statistics about the pipeline cache in a game. For example, this is on Turing GPUs when generating a pipeline cache from Super Smash Bros. Ultimate: Average pipeline statistics ========================================== Code size: 6433.167 Register count: 32.939 More advanced results could be presented, at the moment it's just an average of all 3D and compute pipelines.
2021-07-27vk_compute_pass: Remove unused capturesLioncash
Resolves two compiler warnings.
2021-07-26Merge pull request #6741 from ReinUsesLisp/stream-removeRodrigo Locatti
vk_stream_buffer: Remove unused stream buffer
2021-07-26Merge pull request #6740 from K0bin/hvv-fallbackRodrigo Locatti
Handle allocation failure in Staging buffer
2021-07-26vk_staging_buffer_pool: Fall back to host memory when allocation failsRobin Kertels
2021-07-26Merge pull request #6728 from ReinUsesLisp/null-buffer-usageRodrigo Locatti
vk_buffer_cache: Add transform feedback usage to null buffer
2021-07-26vk_stream_buffer: Remove unused stream bufferReinUsesLisp
Remove unused file.
2021-07-26vk_compute_pass: Fix pipeline barrier for indexed quadsReinUsesLisp
Use an index buffer barrier instead of a vertex input read barrier.
2021-07-26vk_buffer_cache: Add transform feedback usage to null bufferReinUsesLisp
Fixes bad API usages on Vulkan.
2021-07-22vulkan/blit_image: Commit descriptor sets within worker threadReinUsesLisp
Fixes race condition caused. The descriptor pool is not thread safe, so we have to commit descriptor sets within the same thread.
2021-07-22Revert "renderers: Disable async shader compilation"ReinUsesLisp
This reverts commit 4a152767286717fa69bfc94846a124a366f70065.
2021-07-22shader_environment: Receive cache version from outsideReinUsesLisp
This allows us invalidating OpenGL and Vulkan separately in the future.
2021-07-22shader_recompiler, video_core: Resolve clang errorslat9nq
Silences the following warnings-turned-errors: -Wsign-conversion -Wunused-private-field -Wbraced-scalar-init -Wunused-variable And some other errors
2021-07-22renderers: Fix clang formattingameerj
2021-07-22renderers: Disable async shader compilationameerj
The current implementation is prone to causing graphical issues. Disable until a better solution is implemented.
2021-07-22maxwell_to_vk: Add R16_SNORMReinUsesLisp
2021-07-22shader: Ignore global memory ops on devices lacking int64 supportameerj
2021-07-22emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 NvidiaReinUsesLisp
Fix regression on Fire Emblem: Three Houses when using native fp16.
2021-07-22vk_rasterizer: Workaround bug in VK_EXT_vertex_input_dynamic_stateReinUsesLisp
Workaround potential bug on Nvidia's driver where only updating high attributes leaves low attributes out dated.
2021-07-22vk_graphics_pipeline: Implement smooth linesReinUsesLisp
2021-07-22vk_graphics_pipeline: Implement line widthReinUsesLisp
2021-07-22shader: Rework varyings and implement passthrough geometry shadersReinUsesLisp
Put all varyings into a single std::bitset with helpers to access it. Implement passthrough geometry shaders using host's.
2021-07-22vk_graphics_pipeline: Implement conservative renderingReinUsesLisp
2021-07-22shader: Unify shader stage typesReinUsesLisp
2021-07-22shader: Emulate 64-bit integers when not supportedReinUsesLisp
Useful for mobile and Intel Xe devices.
2021-07-22gl_shader_cache: Check previous pipeline before checking hash mapReinUsesLisp
Port optimization from Vulkan.
2021-07-22shaders: Allow shader notify when async shaders is disabledameerj
2021-07-22vk_graphics_pipeline: Use VK_KHR_push_descriptor when availableReinUsesLisp
~51% faster on Nvidia compared to previous method.
2021-07-22shader: Properly manage attributes not written from previous stagesReinUsesLisp
2021-07-22shader: Add support for native 16-bit floatsReinUsesLisp
2021-07-22shader: Rename maxwell/program.h to translate_program.hReinUsesLisp
2021-07-22vk_rasterizer: Exit render passes on fragment barriersReinUsesLisp
2021-07-22vk_graphics_pipeline: Fix path with no VK_EXT_extended_dynamic_stateRodrigo Locatti
2021-07-22vk_pipeline_cache: Skip cached pipelines with different dynamic stateReinUsesLisp
2021-07-22vulkan: Add VK_EXT_vertex_input_dynamic_state supportReinUsesLisp
Reduces the number of total pipelines generated on Vulkan. Tested on Super Smash Bros. Ultimate.
2021-07-22shader: Reorder shader cache directoriesReinUsesLisp
2021-07-22vk_rasterizer: Implement first indexReinUsesLisp
2021-07-22vulkan: Use VK_EXT_provoking_vertex when availableReinUsesLisp
2021-07-22vk_pipeline_cache,shader_notify: Add shader notificationsReinUsesLisp
2021-07-22vk_pipeline_cache: Add asynchronous shadersReinUsesLisp