ReinUsesLisp
7646f2c21d
gl_rasterizer: Mark vertex buffers as dirty after buffer cache invalidation
Vertex buffers bindings become invalid after the stream buffer is
invalidated. We were originally doing this, but it got lost at some
point.
- Fixes Animal Crossing: New Horizons, but it affects everything.
6 years ago
ReinUsesLisp
6e122f0b2c
buffer_cache: Return stream buffer invalidation in Map instead of Unmap
We have to invalidate whatever cache is being used before uploading the
data, hence it makes more sense to return this on Map instead of Unmap.
6 years ago
Rodrigo Locatti
2293e8a11a
Merge pull request #4034 from ReinUsesLisp/storage-texels
vk_rasterizer: Implement storage texels and atomic image operations
6 years ago
bunnei
03fd5aa384
Merge pull request #4055 from ReinUsesLisp/nvidia-443-24
gl_device: Black list NVIDIA 443.24 for fast buffer uploads
6 years ago
ReinUsesLisp
e78d681a6c
gl_device: Black list NVIDIA 443.24 for fast buffer uploads
Skip fast buffer uploads on Nvidia 443.24 Vulkan beta driver on OpenGL.
This driver throws the following error when calling BufferSubData or
BufferData on buffers that are candidates for fast constant buffer
uploads. This is the equivalens to push constants on Vulkan, except that
they can access the full buffer. The error:
Unknown internal debug message. The NVIDIA OpenGL driver has encountered
an out of memory error. This application might
behave inconsistently and fail.
If this error persists on future drivers, we might have to look deeper
into this issue. For now, we can black list it and log it as a temporary
solution.
6 years ago
bunnei
98671b4cfe
Merge pull request #4013 from ReinUsesLisp/skip-no-xfb
vk_rasterizer: Skip transform feedbacks when extension is unavailable
6 years ago
bunnei
22369df357
Merge pull request #4031 from Morph1984/fix-gs-outputs
gl_shader_decompiler: Fix geometry shader outputs on Intel drivers
6 years ago
bunnei
624def4f38
Merge pull request #4044 from ogniK5377/handle-not-signalled-err
Downgrade "handle not signaled" error to trace
6 years ago
bunnei
34d4abc4f9
Merge pull request #4009 from ogniK5377/macro-jit-prod
video_core: Implement Macro JIT
6 years ago
David Marcec
c0d2e3212f
Downgrade "handle not signaled" error to trace
clogs logs quite a bit
6 years ago
David Marcec
eca3d16e54
Default init labels and use initializer list for macro engine
6 years ago
bunnei
1b64fae912
Merge pull request #4039 from FearlessTobi/port-5376
Port citra-emu/citra#5376 : "Actually save the input when clearing/resetting to default"
6 years ago
bunnei
c647999c61
Merge pull request #4012 from ReinUsesLisp/mipmap-overlaps
texture_cache: Handle overlaps with multiple subresources
6 years ago
David Marcec
411f5527d4
Mark parameters as const
6 years ago
FearlessTobi
aaa4822fcb
Actually save the input when clearing/resetting to default
Co-Authored-By: xperia64 <xperiancedapps@gmail.com>
6 years ago
bunnei
623b93a2b3
Merge pull request #4014 from ReinUsesLisp/astc-nvidia
gl_device: Avoid devices with CAVEAT_SUPPORT on ASTC
6 years ago
bunnei
23d3e4a3c4
Merge pull request #4032 from VolcaEM/xpad
hid: Stub GetXpadIDs
6 years ago
bunnei
597d8b4bd4
Merge pull request #4006 from ReinUsesLisp/squash-ubos
glsl: Squash constant buffers into a single SSBO when we hit the limit
6 years ago
LC
9a0c1456e3
Merge pull request #4016 from ReinUsesLisp/invocation-info
shader/other: Fix hardcoded value in S2R INVOCATION_INFO
6 years ago
LC
c5de3c1059
Merge pull request #4033 from ReinUsesLisp/vk-r16ui
maxwell_to_vk: Add R16UI image format
6 years ago
David Marcec
3a20e74f40
Pass by reference instead of copying parameters
6 years ago
ReinUsesLisp
866c1165af
vk_shader_decompiler: Implement atomic image operations
Implement atomic operations on images.
On GLSL these are atomicImage* functions (e.g. atomicImageAdd).
6 years ago
ReinUsesLisp
4a6b9a1a71
vk_rasterizer: Implement storage texels
This is the equivalent of an image buffer on OpenGL.
- Used by Octopath Traveler
6 years ago
ReinUsesLisp
3a59e724c9
maxwell_to_vk: Add R16UI image format
- Used by Octopath Traveler
6 years ago
bunnei
4511502ca6
Merge pull request #4001 from ReinUsesLisp/avoid-copies
buffer_cache: Avoid copying twice on certain cases
6 years ago
bunnei
bb6d93630f
Merge pull request #3998 from ReinUsesLisp/init-3d
maxwell_3d: Initialize more registers to their expected value
6 years ago
Morph
74f2e5f1a4
gl_shader_decompiler: Declare gl_Layer and gl_ViewportIndex within gl_PerVertex for vertex and tessellation shaders
6 years ago
Morph
70188d69b0
gl_shader_decompiler: Fix geometry shader outputs for Intel drivers
On Intel's proprietary drivers, gl_Layer and gl_ViewportIndex are not allowed members of gl_PerVertex block, causing the shader to fail to compile. Fix this by declaring these variables outside of gl_PerVertex.
6 years ago
Rodrigo Locatti
3a6714ab7f
Merge pull request #4005 from ReinUsesLisp/g24r8
format_lookup_table: Implement G24S8 format as S8Z24
6 years ago
bunnei
6c0b1a9ee2
Merge pull request #3996 from ReinUsesLisp/front-faces
fixed_pipeline_state,gl_rasterizer: Swap negative viewport checks for front faces
6 years ago
VolcaEM
8c84a7e7ec
Clang-format
6 years ago
VolcaEM
4d10d3113f
hid: Stub GetXpadIDs
Allows Minecraft: Nintendo Switch Edition (a.k.a. old Minecraft) to boot and go ingame
6 years ago
ReinUsesLisp
0ee310ebdc
gl_device: Avoid devices with CAVEAT_SUPPORT on ASTC
This avoids using Nvidia's ASTC decoder on OpenGL.
The last time it was profiled, it was slower than yuzu's decoder.
While we are at it, fix a bug in the texture cache when native ASTC is
not supported.
6 years ago
ReinUsesLisp
ee21e4ecd3
glsl: Squash constant buffers into a single SSBO when we hit the limit
Avoids compilation errors at the cost of shader build times and runtime
performance when a game hits the limit of uniform buffers we can use.
6 years ago
bunnei
e68ee43a1a
Merge pull request #3930 from ReinUsesLisp/animal-borders
vk_rasterizer: Implement constant attributes
6 years ago
bunnei
104b334e40
Update CMakeLists.txt
6 years ago
bunnei
0ac8848eae
Update CMakeLists.txt
6 years ago
bunnei
edbf3144d2
Merge pull request #3958 from FernandoS27/gl-debug
OpenGL: Enable Debug Context and Synchronous debugging when graphics debugging is enabled
6 years ago
bunnei
f7debcaa04
Merge pull request #3999 from ReinUsesLisp/opt-tex-cache
texture_cache: Optimize GetSurfacesInRegion
6 years ago
Rodrigo Locatti
a280822c82
Merge pull request #4025 from Morph1984/intel-proprietary-compute
gl_device: Enable compute shaders for Intel proprietary drivers
6 years ago
Morph
bb8ef38152
gl_device: Enable compute shaders for Intel proprietary drivers
Previously we were disabling compute shaders on Intel's proprietary driver due to broken compute. This has been fixed in the latest Intel drivers. Re-enable compute for Intel proprietary drivers and remove the check for broken compute.
6 years ago
bunnei
058ec22787
Merge pull request #3982 from ReinUsesLisp/membar-cts
shader/other: Implement MEMBAR.CTS
6 years ago
ReinUsesLisp
f2d1aa97ad
shader/other: Fix hardcoded value in S2R INVOCATION_INFO
Geometry shaders built from Nvidia's compiler check for bits[16:23] to
be less than or equal to 0 with VSETP to default to a "safe" value of
0x8000'0000 (safe from hardware's perspective). To avoid hitting this
path in the shader, return 0x00ff'0000 from S2R INVOCATION_INFO.
This seems to be the maximum number of vertices a geometry shader can
emit in a primitive.
6 years ago
ReinUsesLisp
1ee1a5d3d6
texture_cache: More relaxed reconstruction
Only reupload textures when they've not been modified from the GPU.
6 years ago
David Marcec
8118ea160b
Favor switch case over jump table
Easier to read and will emit a jump table automatically.
6 years ago
David Marcec
b032ebdfee
Implement macro JIT
6 years ago
Fernando Sahmkow
9d9ffe0f94
Merge pull request #4017 from ogniK5377/xbyak
Add xbyak external
6 years ago
David Marcec
d0bdd26c26
Add xbyak external
6 years ago
ReinUsesLisp
e454f7e7a7
texture_cache: Only copy textures that were modified from host
6 years ago
ReinUsesLisp
dd70e097cc
texture_cache: Reload textures when number of resources mismatch
6 years ago