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
Morph
9a8db147b2
CMakeLists: Disable C4100 and C4324
...
Disabling C4100 is similar to -Wno-unused-parameter
2022-10-22 15:02:04 -04:00
Liam
6bac6d044f
shader_recompiler: add extended LDC to GLASM backend
2022-10-02 17:32:54 -04:00
Andrea Pappacoda
b1585fed5a
chore: fix some typos
...
Fix some typos reported by Lintian
2022-09-23 13:38:23 +02:00
FengChen
38e9c78843
video_core: Generate mipmap texture by drawing
2022-09-20 11:55:43 +08:00
FengChen
98656c14a8
video_code: support rectangle texture
2022-08-25 12:45:58 +08:00
Kelebek1
9427a0f535
Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan.
2022-07-29 06:12:39 +01:00
Morph
2b87305d31
general: Convert source file copyright comments over to SPDX
...
This formats all copyright comments according to SPDX formatting guidelines.
Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-23 05:55:32 -04:00
Liam
146f1f5ac6
shader_compiler: support const buffer indirect addressing in GLSL
2022-04-01 17:08:40 -04:00
Liam
528cba63b6
shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-V
2022-04-01 11:17:54 -04:00
Billy Laws
ef9b177ecb
Include <bit> header when std::count{r,l}_zero is used
...
Needed for compilation with older libc++ releases
2022-03-22 21:11:24 +00:00
ameerj
0df188787a
shader_recompiler: Reduce unused includes
2022-03-20 02:25:08 -04:00
Liam
83b1c9de37
Address review comments
2022-03-17 14:48:18 -04:00
Liam
95b9f62686
shader_recompiler: Use functions for indirect const buffer accesses
2022-03-17 13:30:21 -04:00
Liam
f3382e6339
Address review comments
2022-03-17 09:30:41 -04:00
Liam
8515dba789
shader: add support for const buffer indirect addressing
2022-03-14 19:43:32 -04:00
ameerj
048522e98b
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
2022-03-12 02:54:33 -05:00
ameerj
092771e9c8
emit_glsl_atomic: Implement 32x2 fallback atomic ops
2022-01-29 19:56:03 -05:00
ameerj
0c5e641757
shaders: Add U64->U32x2 Atomic fallback functions
2022-01-29 19:55:53 -05:00
ameerj
c3d768426c
spirv_atomic: Define U32x2 storage buffers for 64-bit storage atomics
...
Some drivers do not support 64-bit atomics, and fallback to atomically modifying U32x2 vectors. This change ensures that U32x2 storage vectors are defined in the spir-v shader when 64-bit atomics are used.
Fixes a hang on some devices, notably Intel GPUs, when booting Pokemon Legends Arceus
2022-01-28 19:00:04 -05:00
ameerj
712b7883be
emit_spirv: Add Xfb execution mode when transform feedback is used
...
Fixes Transform Feedback on Vulkan AMD drivers.
2022-01-28 16:32:48 -05:00
v1993
970b362ca1
shader_recompiler: fix potential OOB access
...
Found by static analysis with PVS-Studio. Original check wasn't actually checking for OOB and would segfault in case of it.
2022-01-17 21:50:51 +03:00