aboutsummaryrefslogtreecommitdiff
path: root/src/video_core
AgeCommit message (Collapse)Author
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.
2021-07-22glasm: Add passthrough geometry shader supportReinUsesLisp
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_graphics_pipeline: Fix assembly shaders check for transform feedbacksReinUsesLisp
2021-07-22gl_graphics_pipeline: Inline hash and operator== key functionsReinUsesLisp
2021-07-22gl_shader_cache: Check previous pipeline before checking hash mapReinUsesLisp
Port optimization from Vulkan.
2021-07-22gl_graphics_pipeline: Port optimizations from Vulkan pipelinesReinUsesLisp
2021-07-22buffer_cache: Fix debugging leftoverReinUsesLisp
2021-07-22buffer_cache: Fix size reductions not having in mind bind sizesReinUsesLisp
A buffer binding can change between shaders without changing the shaders. This lead to outdated bindings on OpenGL.
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: Split profile and runtime info headersReinUsesLisp
2021-07-22shader: Add support for native 16-bit floatsReinUsesLisp
2021-07-22shader: Rename maxwell/program.h to translate_program.hReinUsesLisp
2021-07-22vulkan_device: Blacklist VK_EXT_vertex_input_dynamic_state on IntelReinUsesLisp
2021-07-22glsl: Address rest of feedbackameerj
2021-07-22glsl: Conditionally use fine/coarse derivatives based on device supportameerj
2021-07-22glsl: Cleanup/Address feedbackameerj
2021-07-22gl_shader_cache: Implement async shadersameerj
2021-07-22glsl: Add stubs for sparse queries and variable aoffi when not supportedameerj
2021-07-22gl_shader_cache: Remove const from pipeline source argumentsameerj
2021-07-22gl_shader_cache: Move OGL shader compilation to the respective Pipeline ↵ameerj
constructor
2021-07-22glsl: Address more feedback. Implement indexed texture readsameerj
2021-07-22gl_rasterizer: Add texture fetch barrier for fragmentsameerj
Fixes flicker seen in XC2