aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
2021-08-06vp9: Fix reference frame refreshesameerj
This resolves the artifacting when decoding VP9 streams.
2021-07-30Merge pull request #6759 from ReinUsesLisp/pipeline-statisticsbunnei
renderer_vulkan: Add setting to log pipeline statistics
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-27Merge pull request #6749 from lioncash/rtargetbunnei
render_target: Add missing initializer for size extent
2021-07-27Merge pull request #6748 from lioncash/engine-initRodrigo Locatti
video_core/engine: Consistently initialize rasterizer pointers
2021-07-27Merge pull request #6745 from lioncash/copiesbunnei
video_core: Remove some unused variables
2021-07-27render_target: Add missing initializer for size extentLioncash
Everything else has a default constructor that does the straightforward thing of initializing most members to a default value, except for the size. We explicitly initialize the size (and others, for consistency), to prevent potential uninitialized reads from occurring. Particularly given the largeish surface area that this struct is used in.
2021-07-27video_core/engine: Consistently initialize rasterizer pointersLioncash
Ensures all of the engines have consistent and deterministic initialization of the rasterizer pointers.
2021-07-27vulkan_wrapper: Fix SetObjectName() always indicating objects as imagesLioncash
We should be using the passed in object type instead.
2021-07-27buffer_cache: Remove unused small_vector in CommitAsyncFlushesHigh()Lioncash
Given this is non-trivial, the constructor is required to execute, so this removes a bit of redundant codegen.
2021-07-27gl_shader_cache: Remove unused variableLioncash
2021-07-27vk_compute_pass: Remove unused capturesLioncash
Resolves two compiler warnings.
2021-07-26Merge pull request #6696 from ameerj/speed-limit-renamebunnei
general: Rename "Frame Limit" references to "Speed Limit"
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-25Merge pull request #6585 from ameerj/hadesbunnei
Shader Decompiler Rewrite
2021-07-24Merge pull request #6690 from ReinUsesLisp/dma-clear-fixupsbunnei
buffer_cache: Misc fixups related to buffer clears
2021-07-23renderer_base: Removed redundant settingsameerj
use_framelimiter was not being used internally by the renderers. set_background_color was always set to true as there is no toggle for the renderer background color, instead users directly choose the color of their choice.
2021-07-23general: Rename "Frame Limit" references to "Speed Limit"ameerj
This setting is best referred to as a speed limit, as it involves the limits of all timing based aspects of the emulator, not only framerate. This allows us to differentiate it from the fps unlocker setting.
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-22vulkan_device: Blacklist Volta and older from VK_KHR_push_descriptorReinUsesLisp
Causes crashes on Link's Awakening intro. It's hard to debug if it's our fault due to bugs in validation layers.
2021-07-22Revert "renderers: Disable async shader compilation"ReinUsesLisp
This reverts commit 4a152767286717fa69bfc94846a124a366f70065.
2021-07-22opengl: Fix asynchronous shadersReinUsesLisp
Wait for shader to build before configuring it, and wait for the shader to build before sharing it with other contexts.
2021-07-22shader_environment: Receive cache version from outsideReinUsesLisp
This allows us invalidating OpenGL and Vulkan separately in the future.
2021-07-22shader: Fix disabled attribute default valuesameerj
2021-07-22gl_device: Simplify GLASM setting logicameerj
2021-07-22renderer_opengl: Use ARB_separate_shader_objectsReinUsesLisp
Ensures that states set for a particular stage are not attached to other stages which may not need them.
2021-07-22glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZEameerj
2021-07-22gl_shader_cache: Properly implement asynchronous shadersReinUsesLisp
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-22vulkan_device: Add missing include algorithmlat9nq
2021-07-22vulkan_device: Blacklist ampere devices from float16 mathameerj
2021-07-22gl_shader_cache: Fixes for async shadersameerj
2021-07-22vulkan_device: Enable VK_EXT_extended_dynamic_state on RADV 21.2 onwardReinUsesLisp
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-22shader: Fix disabled and unwritten attributes and varyingsReinUsesLisp
2021-07-22vk_graphics_pipeline: Implement smooth linesReinUsesLisp
2021-07-22vk_graphics_pipeline: Implement line widthReinUsesLisp
2021-07-22video_core: Enable GL SPIR-V shaderslat9nq
2021-07-22general: Add setting shader_backendlat9nq
GLASM is getting good enough that we can move it out of advanced graphics settings. This removes the setting `use_assembly_shaders`, opting for a enum class `shader_backend`. This comes with the benefits that it is extensible for additional shader backends besides GLSL and GLASM, and this will work better with a QComboBox. Qt removes the related assembly shader setting from the Advanced Graphics section and places it as a new QComboBox in the API Settings group. This will replace the Vulkan device selector when OpenGL is selected. Additionally, mark all of the custom anisotropic filtering settings as "WILL BREAK THINGS", as that is the case with a select few games.