ameerj
|
00fa09dc45
|
glsl: Declare local memory in main
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
f7352411f0
|
glsl: Add passthrough geometry shader support
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
8612b5fec5
|
shader: Use std::bit_cast instead of Common::BitCast for passthrough
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
8a3427a4c8
|
glasm: Add passthrough geometry shader support
|
2021-07-22 21:51:39 -04:00 |
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.
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
4f052a1f39
|
vk_graphics_pipeline: Implement conservative rendering
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
ecd6b4356b
|
shader: Only verify shader when graphics debugging is enabled
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
395bed3a0a
|
shader: Unify shader stage types
|
2021-07-22 21:51:39 -04:00 |
lat9nq
|
257d2aab74
|
lower_int64_to_int32: Add missing include
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
fb166b5ff4
|
shader: Emulate 64-bit integers when not supported
Useful for mobile and Intel Xe devices.
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
d8d5501459
|
shader: Add int64 to int32 lowering pass
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
04ef2160f9
|
shader: Teach global memory base tracker to follow vectors
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
97e80dda55
|
shader: Add constant propagation to integer vectors
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
27ca8a0e13
|
glsl: Better IAdd Overflow CC fix
This ensures the original operand values are not overwritten when being used in the overflow detection.
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
4397053d5c
|
shader: Remove IAbs64
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
bc6e399ae3
|
glsl: Fix IADD CC
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
a7536825df
|
shader_recompiler: Fix IADD3 input partitioning
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
808ef97a08
|
shader: Move loop safety tests to code emission
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
3877918e96
|
gl_graphics_pipeline: Fix assembly shaders check for transform feedbacks
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
cbce9ddd4a
|
glsl: Remove frag color initialization
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
3a2dd1b483
|
glasm: Implement SetAttribute ViewportMask
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
9bd0531384
|
gl_graphics_pipeline: Inline hash and operator== key functions
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
f5db8c7440
|
gl_shader_cache: Check previous pipeline before checking hash map
Port optimization from Vulkan.
|
2021-07-22 21:51:39 -04:00 |
ReinUsesLisp
|
218dedca1f
|
gl_graphics_pipeline: Port optimizations from Vulkan pipelines
|
2021-07-22 21:51:39 -04:00 |
ameerj
|
1c648f176c
|
emit_glsl_special: Skip initialization of frag_color0
Fixes rendering in Devil May Cry without regressing Ori and the Blind Forest.
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
1d182fc0f5
|
shader: Calibrate loop safety threshold
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
df9b7e18f5
|
buffer_cache: Fix debugging leftover
|
2021-07-22 21:51:38 -04:00 |
Morph
|
cfbc85839d
|
glsl: Add missing ; in EmitSetSampleMask
Fixes shader compilation in Okami HD
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
838d7e4ca5
|
buffer_cache: Fix size reductions not having in mind bind sizes
A buffer binding can change between shaders without changing the
shaders. This lead to outdated bindings on OpenGL.
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
9e066dcb15
|
glsl: Fix output varying initialization when transform feedback is used
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
fcff19e0fa
|
shaders: Allow shader notify when async shaders is disabled
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
a0365217f5
|
texture_pass: Fix is_read image qualification
Atomic operations are considered to have both read and write access. This was not being accounted for.
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
0cd08b3e72
|
shader: Align constant buffer sizes to 16 bytes
WAR for AMD reading zeroes on uniform buffers of size 2.
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
59fead3a47
|
spirv: Properly handle devices without int8 and int16
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
b5e78607ad
|
spirv: Handle small storage buffer loads on devices with no support
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
ca67077ca8
|
vk_graphics_pipeline: Use VK_KHR_push_descriptor when available
~51% faster on Nvidia compared to previous method.
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
ccbd24fe00
|
glsl: Fix cbuf component indexing bug falback
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
1091995f8e
|
shader: Simplify MergeDualVertexPrograms
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
374eeda1a3
|
shader: Properly manage attributes not written from previous stages
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
892b8aa2ad
|
glsl: Only declare fragment outputs on fragment shaders
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
0ffea97e2e
|
shader: Split profile and runtime info headers
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
cbbca26d18
|
shader: Add support for native 16-bit floats
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
376aa94819
|
shader: Rename maxwell/program.h to translate_program.h
|
2021-07-22 21:51:38 -04:00 |
ReinUsesLisp
|
69f9b97e7e
|
vulkan_device: Blacklist VK_EXT_vertex_input_dynamic_state on Intel
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
12ef06ba8b
|
glsl: Obey need_declared_frag_colors to declare and initialize all frag_color
Fixes Ori and the blind forest title screen
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
d36f667bc0
|
glsl: Address rest of feedback
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
c5dfa0b630
|
glsl: Move gl_Position/generic attribute initialization to EmitProlgue
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
3b339fbbf6
|
glsl: Conditionally use fine/coarse derivatives based on device support
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
6eea88d614
|
glsl: Cleanup/Address feedback
|
2021-07-22 21:51:38 -04:00 |
ameerj
|
74f683787e
|
gl_shader_cache: Implement async shaders
|
2021-07-22 21:51:38 -04:00 |