Viktor Szépe
8f8a15827f
Fix more typos
2 years ago
Liam
9070fbdc09
shader_recompiler: emulate 8-bit and 16-bit storage writes with cas loop
2 years ago
Liam
b51ba38c29
shader_recompiler: fix Offset operand usage for non-OpImage*Gather
2 years ago
Liam
221f2edfb9
shader_recompiler: use default value for clip distances array
2 years ago
Liam
e7b5befdad
shader_recompiler: respect clip distance limits in indexed store
2 years ago
Ameer J
deb6899663
spirv_emit_context: Fix BaseInstance for OGL spirv
2 years ago
Liam
a952270b5c
shader_recompiler: use float image operations on load/store when required
2 years ago
Ameer J
822348997d
emit_glsl_image: Use inlined texelFetch offsets
2 years ago
Liam
3c14f747f9
shader_recompiler: use minimal clip distance array
2 years ago
Liam
6611ba122b
shader_recompiler: ignore clip distances beyond driver support level
2 years ago
Ameer J
38449c071d
GLSL: Prefer known used cbuf sizes
2 years ago
Liam
a41e57d968
renderer_vulkan: ignore viewport stores on non-supporting drivers
2 years ago
Ameer J
abd400e04f
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2 years ago
Ameer J
b49639e786
shader_recompiler: Align SSBO offsets in GlobalMemory functions
2 years ago
Ameer J
ef8f689761
emit_glsl_warp: Fix shfl_in_bounds conditional
3 years ago
Kelebek1
90d99fbd00
Manually robust on Maxwell and earlier
3 years ago
Liam
445d504f94
ci: fix new codespell errors
3 years ago
Liam
47ea64c9a5
emit_spirv: fix incorrect use of descriptor index in image atomics
3 years ago
liamwhite
9530b96e5f
shader_recompiler: skip sampler for buffer textures ( #11435 )
3 years ago
Liam
152beedc51
shader_recompiler: always declare image format for image buffers
3 years ago
Liam
024fb4fae9
shader_recompiler: fix emulation of 3D textureGrad
3 years ago
Fernando Sahmkow
01858648d1
Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation
3 years ago
ameerj
a2b344ab9d
emit_glasm: Fix lmem size computation
3 years ago
Kelebek1
c7430e51e3
Remove memory allocations in some hot paths
3 years ago
bunnei
3571f28cde
video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise.
3 years ago
Billy Laws
cfbe4b09eb
Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs
This crashes their shader compiler for some reason.
3 years ago
Billy Laws
2beb3051c1
Implement scaled vertex buffer format emulation
These formats are unsupported by mobile GPUs so they need to be emulated in shaders instead.
3 years ago
Kelebek1
2e478a66cf
Fix Tears of the Kingdom flickering clouds and depths.
3 years ago
Kelebek1
dc9546fe26
Define SampleMask as an array
3 years ago
Wollnashorn
d53aa13a33
shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset
Should be more efficient and better readable
3 years ago
Wollnashorn
45fb154f0d
shader_recompiler: Add subpixel offset for correct rounding at `ImageGather`
On AMD a subpixel offset of 1/512 of the texel size is applied to the texture coordinates at a ImageGather call to ensure the rounding at the texel centers is done the same way as in Maxwell or other Nvidia architectures.
See https://www.reedbeta.com/blog/texture-gathers-and-coordinate-precision/ for more details why this might be necessary.
This should fix shadow artifacts at object edges in Zelda: Breath of the Wild (#9957 , #6956 ).
3 years ago
Liam
5be8a74b0c
general: fix spelling mistakes
3 years ago
arades79
60a68839ee
remove static from pointer sized or smaller types for aesthetics, change constexpr static to static constexpr for consistency
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
arades79
adcef452e0
add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
ameerj
a6405c4890
glsl_emit_context: Remove redeclarations of gl_SampleID and gl_SampleMask
These built-ins seem to be available without needing to be declared for fragment shaders, similar i.e. to gl_FragDepth
3 years ago
ameerj
bbb60f60d2
spirv: Fix TXQ with MSAA textures
3 years ago
ameerj
13b0feaede
emit_glasm_image: Fix TXQ with MSAA textures
3 years ago
ameerj
2a98e88a3a
emit_glsl_image: Implement TXQ with MSAA textures
Also fixes for texture buffers, which do not have mips eithers.
3 years ago
ameerj
2d2558797c
shader_recompiler: TXQ: Skip QueryLevels when possible
3 years ago
ameerj
f68ef5b15a
emit_glsl_image: Fix ImageFetch for MSAA textures
3 years ago
ameerj
9f64e023df
glasm: Add MS sampler types
3 years ago
ameerj
6967e3edb9
glsl: Add MS sampler types
3 years ago
ameerj
382717743a
shader_recompiler: Remove S32 IR type
The frontend IR opcodes do not distinguish between signed and unsigned integer types.
Fixes broken shaders when IR validation/graphics debugging is enabled for shaders that used BitCastS32F32
3 years ago
Liam
ac94832cb6
spirv: fix multisampled image fetch
3 years ago
Billy Laws
535e297ebd
Run clang-format
3 years ago
Billy Laws
c7c901dd63
shader_recompiler: Fix shuffle partitioning for >64 invoc-per-subgroup GPUs
The existing implementation only supports 64 invoc-per-subgroup GPUs, and misbehaves on adreno when invocations need to be split into 4 emulated subgroups.
3 years ago
Billy Laws
3772cfc976
shader_recompiler: SPIRV: Only enable int64 feature when supported
3 years ago
Billy Laws
77aea7e2b4
Vulkan: Add a workaround for input_position on Adreno drivers
Adreno drivers will crash compiling geometry shaders if the input position is not wrapped in a gl_in struct.
4 years ago
Fernando Sahmkow
1fdf24a081
Video_core: Address feedback
3 years ago
Fernando Sahmkow
f7b16c30f1
MacroHLE: Add OpenGL Support
3 years ago