ReinUsesLisp
67209b8d43
cmake: Remove unused code in GenerateSCMRev.cmake
Remove shader code hash generation code as it's no longer used.
4 years ago
ReinUsesLisp
4ae6c023df
qt: Remove "experimental" from asynchronous shader building UI
4 years ago
ReinUsesLisp
c29f2c9507
Revert "renderers: Disable async shader compilation"
This reverts commit 4a15276728 .
4 years ago
ReinUsesLisp
8a74a2c895
opengl: Fix asynchronous shaders
Wait for shader to build before configuring it, and wait for the shader
to build before sharing it with other contexts.
4 years ago
ReinUsesLisp
a97c0ccabd
shader_environment: Receive cache version from outside
This allows us invalidating OpenGL and Vulkan separately in the future.
4 years ago
ReinUsesLisp
2e6acac647
cmake: Remove shader cache version
4 years ago
ameerj
3927809a63
shader: Fix disabled attribute default values
4 years ago
ameerj
a7fe20e636
gl_device: Simplify GLASM setting logic
4 years ago
ameerj
e6d3a301f2
glsl: Simplify FCMP emission
4 years ago
ameerj
4f3e869dd0
glsl: Update TessellationControl gl_in
Adheres to GL_ARB_separate_shader_objects requirements
5 years ago
ReinUsesLisp
4f84ef1f2b
renderer_opengl: Use ARB_separate_shader_objects
Ensures that states set for a particular stage are not attached to other
stages which may not need them.
5 years ago
ameerj
ffe72f8d37
shader: Implement ISETP.X
5 years ago
ReinUsesLisp
2321666580
shader: Avoid usage of C++20 ranges to build in clang
5 years ago
ameerj
a23f05c215
glsl: Clamp shared mem size to GL_MAX_COMPUTE_SHARED_MEMORY_SIZE
5 years ago
ReinUsesLisp
ac0c2f8edc
gl_shader_cache: Properly implement asynchronous shaders
5 years ago
lat9nq
b557314001
shader_recompiler, video_core: Resolve clang errors
Silences the following warnings-turned-errors:
-Wsign-conversion
-Wunused-private-field
-Wbraced-scalar-init
-Wunused-variable
And some other errors
5 years ago
ameerj
779288c071
main: Update Shader Cache menu options
This change adds two new context menu items to remove either the OpenGL or the Vulkan shader caches individually, and the provides the option to remove all caches for the selected title.
This also changes the behavior of the open shader cache option. Now it creates the shader cache directory for the title if it does not yet exist.
5 years ago
ameerj
2cde6c5708
renderers: Fix clang formatting
5 years ago
ReinUsesLisp
cdb3837085
shader: Manually convert from array<u32> to bitset instead of using bit_cast
5 years ago
ameerj
e45e458b17
renderers: Disable async shader compilation
The current implementation is prone to causing graphical issues. Disable until a better solution is implemented.
5 years ago
ReinUsesLisp
b654537f0f
maxwell_to_vk: Add R16_SNORM
5 years ago
lat9nq
df62bcd9cb
configure_graphics: Mark SPIR-V as Experimental, Mesa only
5 years ago
ameerj
f2f16e3a1d
glsl: Fix tracking of info.uses_shadow_lod
5 years ago
ameerj
508e41777b
shader: Ignore global memory ops on devices lacking int64 support
5 years ago
lat9nq
52f2fe7b52
vulkan_device: Add missing include algorithm
5 years ago
ameerj
d965b7200a
vulkan_device: Blacklist ampere devices from float16 math
5 years ago
ameerj
d54c4880d1
dual_vertex_pass: Clang format
5 years ago
ameerj
472f9fcb18
gl_shader_cache: Fixes for async shaders
5 years ago
ReinUsesLisp
e8d458a81d
vulkan_device: Enable VK_EXT_extended_dynamic_state on RADV 21.2 onward
5 years ago
ReinUsesLisp
ff35ef8ec1
emit_spirv: Workaround VK_KHR_shader_float_controls on fp16 Nvidia
Fix regression on Fire Emblem: Three Houses when using native fp16.
5 years ago
lat9nq
84bc5be7a1
configure_graphics: Re-order vulkan device populating
5 years ago
lat9nq
c969f6e678
shader: GCC fmt 8.0.0 fixes
5 years ago
ameerj
79e317ad7d
shader: Account for 33-bit IADD3 scenario
5 years ago
ReinUsesLisp
611797a7c6
shader: Only apply shift on register mode for IADD3
5 years ago
ReinUsesLisp
934b23ab85
vk_rasterizer: Workaround bug in VK_EXT_vertex_input_dynamic_state
Workaround potential bug on Nvidia's driver where only updating high
attributes leaves low attributes out dated.
5 years ago
ReinUsesLisp
b48b4b0600
shader: Fix disabled and unwritten attributes and varyings
5 years ago
ameerj
d77dc5919c
glsl: Fix shared and local memory declarations
account for the fact that program.*memory_size is in units of bytes.
5 years ago
ameerj
33d21ac2db
opengl: Implement LOP.CC
Used by MH:Rise
5 years ago
ReinUsesLisp
1c7c65087d
vk_graphics_pipeline: Implement smooth lines
5 years ago
ReinUsesLisp
bd0796d52f
vk_graphics_pipeline: Implement line width
5 years ago
ReinUsesLisp
7dc8577529
spirv: Fix code emission when descriptor aliasing is unsupported
Fixes OpenGL.
5 years ago
lat9nq
5443d4bd9c
video_core: Enable GL SPIR-V shaders
5 years ago
lat9nq
ddd4720fe4
general: Add setting shader_backend
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.
5 years ago
ameerj
c446ada33e
glsl: Declare local memory in main
5 years ago
ameerj
0810714e46
glsl: Add passthrough geometry shader support
5 years ago
ReinUsesLisp
41b2a991c4
shader: Use std::bit_cast instead of Common::BitCast for passthrough
5 years ago
ReinUsesLisp
362888dcb0
glasm: Add passthrough geometry shader support
5 years ago
ReinUsesLisp
b1df436cef
shader: Rework varyings and implement passthrough geometry shaders
Put all varyings into a single std::bitset with helpers to access it.
Implement passthrough geometry shaders using host's.
5 years ago
ReinUsesLisp
649c9cca0f
vk_graphics_pipeline: Implement conservative rendering
5 years ago
ReinUsesLisp
6db3ba6542
shader: Only verify shader when graphics debugging is enabled
5 years ago