ReinUsesLisp
be54aad1c4
maxwell_to_vk: Add R16_SNORM
5 years ago
lat9nq
18fb9bdfa8
configure_graphics: Mark SPIR-V as Experimental, Mesa only
5 years ago
ameerj
41c6cb70f9
glsl: Fix tracking of info.uses_shadow_lod
5 years ago
ameerj
11f04f1022
shader: Ignore global memory ops on devices lacking int64 support
5 years ago
lat9nq
55233c2861
vulkan_device: Add missing include algorithm
5 years ago
ameerj
7277d7fe96
vulkan_device: Blacklist ampere devices from float16 math
5 years ago
ameerj
57f222c56e
dual_vertex_pass: Clang format
5 years ago
ameerj
dbee32d302
gl_shader_cache: Fixes for async shaders
5 years ago
ReinUsesLisp
57171b23f9
vulkan_device: Enable VK_EXT_extended_dynamic_state on RADV 21.2 onward
5 years ago
ReinUsesLisp
8722668b3c
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
1b27a2b597
configure_graphics: Re-order vulkan device populating
5 years ago
lat9nq
2e5af95541
shader: GCC fmt 8.0.0 fixes
5 years ago
ameerj
b9069c7891
shader: Account for 33-bit IADD3 scenario
5 years ago
ReinUsesLisp
b21bf79bd2
shader: Only apply shift on register mode for IADD3
5 years ago
ReinUsesLisp
fba6bd92d4
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
5643a909bc
shader: Fix disabled and unwritten attributes and varyings
5 years ago
ameerj
65daec8b75
glsl: Fix shared and local memory declarations
account for the fact that program.*memory_size is in units of bytes.
5 years ago
ameerj
8289eb108f
opengl: Implement LOP.CC
Used by MH:Rise
5 years ago
ReinUsesLisp
f94f0be521
vk_graphics_pipeline: Implement smooth lines
5 years ago
ReinUsesLisp
57a8921e01
vk_graphics_pipeline: Implement line width
5 years ago
ReinUsesLisp
5b2b0634a1
spirv: Fix code emission when descriptor aliasing is unsupported
Fixes OpenGL.
5 years ago
lat9nq
fb9b1787f8
video_core: Enable GL SPIR-V shaders
5 years ago
lat9nq
1152d66ddd
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
00fa09dc45
glsl: Declare local memory in main
5 years ago
ameerj
f7352411f0
glsl: Add passthrough geometry shader support
5 years ago
ReinUsesLisp
8612b5fec5
shader: Use std::bit_cast instead of Common::BitCast for passthrough
5 years ago
ReinUsesLisp
8a3427a4c8
glasm: Add passthrough geometry shader support
5 years ago
ReinUsesLisp
7dafa96ab5
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
4f052a1f39
vk_graphics_pipeline: Implement conservative rendering
5 years ago
ReinUsesLisp
ecd6b4356b
shader: Only verify shader when graphics debugging is enabled
5 years ago
ReinUsesLisp
395bed3a0a
shader: Unify shader stage types
5 years ago
lat9nq
257d2aab74
lower_int64_to_int32: Add missing include
5 years ago
ReinUsesLisp
fb166b5ff4
shader: Emulate 64-bit integers when not supported
Useful for mobile and Intel Xe devices.
5 years ago
ReinUsesLisp
d8d5501459
shader: Add int64 to int32 lowering pass
5 years ago
ReinUsesLisp
04ef2160f9
shader: Teach global memory base tracker to follow vectors
5 years ago
ReinUsesLisp
97e80dda55
shader: Add constant propagation to integer vectors
5 years ago
ameerj
27ca8a0e13
glsl: Better IAdd Overflow CC fix
This ensures the original operand values are not overwritten when being used in the overflow detection.
5 years ago
ReinUsesLisp
4397053d5c
shader: Remove IAbs64
5 years ago
ameerj
bc6e399ae3
glsl: Fix IADD CC
5 years ago
ameerj
a7536825df
shader_recompiler: Fix IADD3 input partitioning
5 years ago
ReinUsesLisp
808ef97a08
shader: Move loop safety tests to code emission
5 years ago
ReinUsesLisp
3877918e96
gl_graphics_pipeline: Fix assembly shaders check for transform feedbacks
5 years ago
ameerj
cbce9ddd4a
glsl: Remove frag color initialization
5 years ago
ameerj
3a2dd1b483
glasm: Implement SetAttribute ViewportMask
5 years ago
ReinUsesLisp
9bd0531384
gl_graphics_pipeline: Inline hash and operator== key functions
5 years ago
ReinUsesLisp
f5db8c7440
gl_shader_cache: Check previous pipeline before checking hash map
Port optimization from Vulkan.
5 years ago
ReinUsesLisp
218dedca1f
gl_graphics_pipeline: Port optimizations from Vulkan pipelines
5 years ago
ameerj
1c648f176c
emit_glsl_special: Skip initialization of frag_color0
Fixes rendering in Devil May Cry without regressing Ori and the Blind Forest.
5 years ago
ReinUsesLisp
1d182fc0f5
shader: Calibrate loop safety threshold
5 years ago
ReinUsesLisp
df9b7e18f5
buffer_cache: Fix debugging leftover
5 years ago