arades79
683019878f
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
45e13b03f3
add static lifetime to constexpr values to force compile time evaluation where possible
Signed-off-by: arades79 <scravers@protonmail.com>
3 years ago
ameerj
04139cb3ed
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
a63e17566a
spirv: Fix TXQ with MSAA textures
3 years ago
ameerj
a1d8306bfd
emit_glasm_image: Fix TXQ with MSAA textures
3 years ago
ameerj
08feba2b56
emit_glsl_image: Implement TXQ with MSAA textures
Also fixes for texture buffers, which do not have mips eithers.
3 years ago
ameerj
2c2e019a44
shader_recompiler: TXQ: Skip QueryLevels when possible
3 years ago
ameerj
c0cedbae94
emit_glsl_image: Fix ImageFetch for MSAA textures
3 years ago
ameerj
0f795603fc
glasm: Add MS sampler types
3 years ago
ameerj
5710e90150
glsl: Add MS sampler types
3 years ago
ameerj
93cc6e4d99
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
76a4356e55
spirv: fix multisampled image fetch
3 years ago
Billy Laws
58fec43768
Run clang-format
3 years ago
Billy Laws
68ed60cee4
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
3f0985c7b0
shader_recompiler: SPIRV: Only enable int64 feature when supported
4 years ago
Billy Laws
bbfad79c89
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
a0c697124c
Video_core: Address feedback
3 years ago
Fernando Sahmkow
8d694701bc
MacroHLE: Add OpenGL Support
3 years ago
Fernando Sahmkow
aad0cbf024
MacroHLE: Add HLE replacement for base vertex and base instance.
4 years ago
FernandoS27
0104e28fe4
Vulkan: Add support for VK_EXT_depth_clip_control.
5 years ago
Liam
77b0d01639
spirv_emit_context: declare GroupNonUniform capability for SubgroupLocalInvocationId
3 years ago
Liam
2956a33463
Vulkan: update initialization
Co-authored-by: bylaws <bylaws@users.noreply.github.com>
4 years ago
Liam
0d033e6b45
spirv_emit_context: add missing flat decoration
4 years ago
FengChen
60e0d4a177
shader: Implement miss attribute layer
4 years ago
FengChen
a4472b5526
video_core: Fix few issues in Tess stage
4 years ago
Feng Chen
75596c07e0
video_core: Fix SNORM texture buffer emulating error ( #9001 )
4 years ago
Morph
3822e31323
CMakeLists: Disable C4100 and C4324
Disabling C4100 is similar to -Wno-unused-parameter
4 years ago
Liam
ae7062d522
shader_recompiler: add extended LDC to GLASM backend
4 years ago
Andrea Pappacoda
4a493cb10f
chore: fix some typos
Fix some typos reported by Lintian
4 years ago
FengChen
9a95c7fa14
video_core: Generate mipmap texture by drawing
4 years ago
FengChen
b2a6dde438
video_code: support rectangle texture
4 years ago
Kelebek1
f580946b0d
Add missed shader defines. Fixes Xenoblade Chronicles 3 booting with Vulkan.
4 years ago
Morph
99ceb03a1c
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.
4 years ago
Liam
7d5a38ea6c
shader_compiler: support const buffer indirect addressing in GLSL
4 years ago
Liam
a45baa0e78
shader_recompiler: support const buffer indirect addressing on OpenGL SPIR-V
4 years ago
Billy Laws
dd862dff66
Include <bit> header when std::count{r,l}_zero is used
Needed for compilation with older libc++ releases
4 years ago
ameerj
574a2c4b77
shader_recompiler: Reduce unused includes
4 years ago
Liam
3009d0bd7d
Address review comments
4 years ago
Liam
e228a40db8
shader_recompiler: Use functions for indirect const buffer accesses
4 years ago
Liam
3ac522ba41
Address review comments
4 years ago
Liam
52895fab67
shader: add support for const buffer indirect addressing
4 years ago
ameerj
e8c50e709e
emit_spirv, vk_compute_pass: Resolve VS2022 compiler errors
4 years ago
ameerj
e394e1ecc4
emit_glsl_atomic: Implement 32x2 fallback atomic ops
4 years ago
ameerj
ad58d7eae7
shaders: Add U64->U32x2 Atomic fallback functions
4 years ago
ameerj
4790ba7839
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
4 years ago
ameerj
beaf7654bb
emit_spirv: Add Xfb execution mode when transform feedback is used
Fixes Transform Feedback on Vulkan AMD drivers.
4 years ago
v1993
a943600019
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.
4 years ago
liushuyu
09f4f3f23b
logging/log.h: move enum class formatter to a separate file ...
... to common/logging/formatter.h
4 years ago
liushuyu
42f653ab6f
logging: adapt to changes in fmt 8.1
4 years ago
Narr the Reg
524674aafc
glsl: Remove unreachable return
4 years ago