Ameer J
b49639e786
shader_recompiler: Align SSBO offsets in GlobalMemory functions
2023-10-31 20:14:18 -04:00
liamwhite
a2342c5acd
Merge pull request #11847 from ameerj/glsl-shfl-fix
...
emit_glsl_warp: Fix shfl_in_bounds conditional
2023-10-23 10:33:24 -04:00
Ameer J
ef8f689761
emit_glsl_warp: Fix shfl_in_bounds conditional
2023-10-22 00:45:23 -04:00
Kelebek1
90d99fbd00
Manually robust on Maxwell and earlier
2023-10-19 19:54:31 +01:00
Liam
445d504f94
ci: fix new codespell errors
2023-10-02 18:03:05 -04:00
Liam
47ea64c9a5
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-22 00:39:09 -04:00
liamwhite
9530b96e5f
shader_recompiler: skip sampler for buffer textures ( #11435 )
2023-09-14 15:23:50 +02:00
Liam
152beedc51
shader_recompiler: always declare image format for image buffers
2023-09-02 17:25:00 -04:00
Liam
024fb4fae9
shader_recompiler: fix emulation of 3D textureGrad
2023-09-01 22:41:01 -04:00
Fernando Sahmkow
01858648d1
Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation
2023-08-18 22:17:02 -04:00
ameerj
a2b344ab9d
emit_glasm: Fix lmem size computation
2023-06-25 18:43:52 -04:00
Kelebek1
c7430e51e3
Remove memory allocations in some hot paths
2023-06-22 08:05:10 +01:00
bunnei
3571f28cde
video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise.
2023-06-03 00:05:58 -07:00
Billy Laws
cfbe4b09eb
Avoid using VectorExtractDynamic for subgroup mask on Adreno GPUs
...
This crashes their shader compiler for some reason.
2023-06-03 00:05:31 -07:00
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.
2023-06-03 00:05:31 -07:00
Kelebek1
2e478a66cf
Fix Tears of the Kingdom flickering clouds and depths.
2023-05-11 19:25:24 +01:00
Kelebek1
dc9546fe26
Define SampleMask as an array
2023-04-30 18:37:37 +01:00
Wollnashorn
d53aa13a33
shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset
...
Should be more efficient and better readable
2023-04-08 16:13:08 +02:00
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 ).
2023-04-08 16:12:30 +02:00
Liam
5be8a74b0c
general: fix spelling mistakes
2023-03-12 11:33:01 -04:00
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
2023-02-08 19:34:39 -05:00
ameerj
bbb60f60d2
spirv: Fix TXQ with MSAA textures
2023-01-29 13:47:30 -05:00
ameerj
13b0feaede
emit_glasm_image: Fix TXQ with MSAA textures
2023-01-29 13:42:34 -05:00
ameerj
2a98e88a3a
emit_glsl_image: Implement TXQ with MSAA textures
...
Also fixes for texture buffers, which do not have mips eithers.
2023-01-29 13:31:47 -05:00
liamwhite
a5bc2444d2
Merge pull request #9694 from ameerj/txq-mips
...
shader_recompiler: TXQ: Skip QueryLevels when possible
2023-01-29 12:27:26 -05:00
bunnei
6fd5d0c3b5
Merge pull request #9687 from ameerj/ogl-shader-ms
...
glasm, glsl: Implement multisampled Image Fetch
2023-01-28 16:32:11 -08:00
bunnei
da76935b7d
Merge pull request #9682 from ameerj/shader-s32
...
shader_recompiler: Remove S32 IR type
2023-01-28 14:00:11 -08:00
ameerj
2d2558797c
shader_recompiler: TXQ: Skip QueryLevels when possible
2023-01-28 16:25:18 -05:00
ameerj
f68ef5b15a
emit_glsl_image: Fix ImageFetch for MSAA textures
2023-01-28 14:39:27 -05:00
ameerj
9f64e023df
glasm: Add MS sampler types
2023-01-27 02:09:18 -05:00
ameerj
6967e3edb9
glsl: Add MS sampler types
2023-01-27 02:09:17 -05:00
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
2023-01-25 22:03:15 -05:00
Liam
ac94832cb6
spirv: fix multisampled image fetch
2023-01-23 12:03:19 -05:00
Billy Laws
535e297ebd
Run clang-format
2023-01-05 22:18:10 +00:00
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.
2023-01-05 22:13:07 +00:00
Billy Laws
3772cfc976
shader_recompiler: SPIRV: Only enable int64 feature when supported
2023-01-05 22:13:07 +00:00
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.
2023-01-05 22:13:07 +00:00
Fernando Sahmkow
1fdf24a081
Video_core: Address feedback
2023-01-04 14:39:42 -05:00
Fernando Sahmkow
f7b16c30f1
MacroHLE: Add OpenGL Support
2023-01-01 16:43:58 -05:00
Fernando Sahmkow
7842543573
MacroHLE: Add HLE replacement for base vertex and base instance.
2023-01-01 16:43:57 -05:00
liamwhite
db106151d7
Merge pull request #7450 from FernandoS27/ndc-vulkan
...
Vulkan: Add support for VK_EXT_depth_clip_control.
2022-12-17 16:08:10 -05:00
FernandoS27
11f29ec173
Vulkan: Add support for VK_EXT_depth_clip_control.
2022-12-13 21:39:18 -05:00
Liam
3b502d3095
spirv_emit_context: declare GroupNonUniform capability for SubgroupLocalInvocationId
2022-12-13 18:25:53 -05:00
Liam
0a077cb467
Vulkan: update initialization
...
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
2022-11-27 14:58:28 -05:00
Liam
4b905e9680
spirv_emit_context: add missing flat decoration
2022-11-18 22:05:28 -05:00
liamwhite
d96606b091
Merge pull request #9253 from vonchenplus/attr_layer
...
shader: Implement miss attribute layer
2022-11-18 22:04:18 -05:00
FengChen
12f2ab01bb
shader: Implement miss attribute layer
2022-11-17 22:45:14 +08:00
FengChen
348c6e5b28
video_core: Fix few issues in Tess stage
2022-11-07 15:42:42 +08:00
Feng Chen
bcf6a7c0dd
video_core: Fix SNORM texture buffer emulating error ( #9001 )
2022-11-04 02:39:42 -04:00
bunnei
7c3bee5601
Merge pull request #8858 from vonchenplus/mipmap
...
video_core: Generate mipmap texture by drawing
2022-11-03 22:21:58 -07:00