crueter
47d0fa312b
[spirv] improved spir-v shader opt ( #239 )
...
increases speed ~tenfold for Spir-V output optimization when using it on load.
Co-authored-by: wildcard <nubieluv@gmail.com >
Signed-off-by: crueter <crueter@eden-emu.dev >
Co-authored-by: wildcard <nubieluv@gmail.com >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/239
Reviewed-by: Shinmegumi <shinmegumi@eden-emu.dev >
2025-10-16 11:54:52 +02:00
EmulationEnjoyer
154aab7c4b
feat(shader): implement geometry shader invocation info
...
- Update EmitInvocationInfo in SPIRV backend to handle geometry shader stage
ref: 1266fad681 (diff-4cbf73a98ed4ad649a4a6f38b569bc31fcf68cf7)
2024-11-15 12:16:49 +00:00
lui
9efce71072
externals: update fmt to 11.0.2 and vcpkg to 2024.09.30 ( #68 )
...
Updated to fmt 11 with the required source changes for it to work.
Also updated vcpkg for this, and as an added benefit it fixes the `Unable to find a valid Visual Studio instance` error, and the VS 2019 build tools are no longer required. Just make sure to delete the existing downloaded vcpkg tool and binaries in `externals/vcpkg` if you have compiled before, or else it will continue to use the old version and give the error.
Reviewed-on: http://vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion/torzu-emu/torzu/pulls/68
Co-authored-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion >
Co-committed-by: lui <lui@vub63vv26q6v27xzv2dtcd25xumubshogm67yrpaz2rculqxs7jlfqad.onion >
2024-11-03 12:25:47 +00:00
darktux
fac1dbc7e6
Optionally optimize generated SPIRV with spirv-opt ( #10 )
...
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/10
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion >
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion >
2024-04-10 22:04:09 +00:00
darktux
69a4d26b1e
Add SR_WScaleFactorXY/SR_WScaleFactorZ stubs for Prince of Persia ( #5 )
...
Pulled in and cleaned up from Sudachi
Reviewed-on: http://y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion/darktux/torzu/pulls/5
Co-authored-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion >
Co-committed-by: darktux <darktux@y2nlvhmmk5jnsvechppxnbyzmmv3vbl7dvzn6ltwcdbpgxixp3clkgqd.onion >
2024-04-05 23:04:37 +00:00
darktux
5fdce35a27
Added support for Princess Peach: Showtime!
2024-04-05 01:58:30 +02:00
Narr the Reg
4f95ee5209
Merge pull request #13075 from liamwhite/mali-having-a-bad-time
...
shader_recompiler: throw on missing geometry streams in geometry shaders
2024-02-22 11:30:26 -06:00
Liam
f46dc31683
shader_recompiler: throw on missing geometry streams in geometry shaders
2024-02-19 00:34:00 -05:00
Liam
462ea921e3
shader_recompiler: fix non-const offset for arrayed image types
2024-02-15 18:49:23 -05:00
Liam
cb29aa0473
Revert "shader_recompiler: use only ConstOffset for OpImageFetch"
...
This reverts commit f296a9ce9a .
2024-02-15 18:38:56 -05:00
Liam
f296a9ce9a
shader_recompiler: use only ConstOffset for OpImageFetch
2024-02-05 12:01:09 -05:00
liamwhite
97c8b49444
Merge pull request #12644 from liamwhite/vkspec-image-offset
...
shader_recompiler: fix Offset operand usage for non-OpImage*Gather
2024-01-18 21:18:19 -05:00
Viktor Szépe
90ab89a0b0
Merge remote-tracking branch 'origin/master' into typos3
2024-01-16 00:09:00 +00:00
Viktor Szépe
2044ae6b3a
Fix more typos
2024-01-15 23:26:53 +00:00
Liam
2a0d707ce1
shader_recompiler: emulate 8-bit and 16-bit storage writes with cas loop
2024-01-11 16:50:59 -05:00
Liam
2044a289f8
shader_recompiler: fix Offset operand usage for non-OpImage*Gather
2024-01-11 00:56:37 -05:00
liamwhite
92a331af76
Merge pull request #12437 from ameerj/gl-amd-fixes
...
OpenGL: Fixes and workaround updates for AMD
2024-01-04 15:53:44 -05:00
Liam
d0c60605ab
shader_recompiler: use default value for clip distances array
2023-12-26 19:32:47 -05:00
Liam
6697b665ca
shader_recompiler: respect clip distance limits in indexed store
2023-12-26 19:10:25 -05:00
Ameer J
d5d0d2cb0e
spirv_emit_context: Fix BaseInstance for OGL spirv
2023-12-21 21:53:24 -05:00
Liam
9e9aed41be
shader_recompiler: use float image operations on load/store when required
2023-12-21 14:34:46 -05:00
Ameer J
a5b2b8b91b
emit_glsl_image: Use inlined texelFetch offsets
2023-12-20 19:24:11 -05:00
Liam
fcfa8b680b
shader_recompiler: use minimal clip distance array
2023-12-18 22:25:14 -05:00
Liam
94244437de
shader_recompiler: ignore clip distances beyond driver support level
2023-12-18 22:25:14 -05:00
liamwhite
6da8301773
Merge pull request #12196 from ameerj/glsl-cbuf-sizes
...
GLSL: Use known cbuf sizes when possible
2023-12-03 16:27:07 -05:00
Ameer J
db1d32485e
GLSL: Prefer known used cbuf sizes
2023-11-26 23:25:29 -05:00
Ameer J
1d11fe00a3
Merge branch 'master' into ssbo-align
2023-11-26 21:08:53 -05:00
Liam
473caaff5b
renderer_vulkan: ignore viewport stores on non-supporting drivers
2023-11-19 11:27:12 -05:00
Ameer J
feb60de5c3
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2023-11-18 13:39:47 +01:00
Ameer J
75c5be55af
shader_recompiler: Align SSBO offsets in GlobalMemory functions
2023-10-31 20:14:18 -04:00
liamwhite
da5c49f22d
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
cfe73af6f2
emit_glsl_warp: Fix shfl_in_bounds conditional
2023-10-22 00:45:23 -04:00
Kelebek1
e02ee8e59d
Manually robust on Maxwell and earlier
2023-10-19 19:54:31 +01:00
Liam
0448eb6f0f
ci: fix new codespell errors
2023-10-02 18:03:05 -04:00
Liam
1e24d02434
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-22 00:39:09 -04:00
liamwhite
eb4ddb2868
shader_recompiler: skip sampler for buffer textures ( #11435 )
2023-09-14 15:23:50 +02:00
Liam
ba4b65e4bc
shader_recompiler: always declare image format for image buffers
2023-09-02 17:25:00 -04:00
Liam
9245b426e3
shader_recompiler: fix emulation of 3D textureGrad
2023-09-01 22:41:01 -04:00
Fernando Sahmkow
c03f0b3c89
Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation
2023-08-18 22:17:02 -04:00
ameerj
b198339580
emit_glasm: Fix lmem size computation
2023-06-25 18:43:52 -04:00
Kelebek1
5da70f7197
Remove memory allocations in some hot paths
2023-06-22 08:05:10 +01:00
bunnei
ca4bf3844e
video_core: Enable support_descriptor_aliasing on Turnip, disable storage atomic otherwise.
2023-06-03 00:05:58 -07:00
Billy Laws
b4a12b889e
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
158a1896ec
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
e42b4a16b6
Fix Tears of the Kingdom flickering clouds and depths.
2023-05-11 19:25:24 +01:00
Kelebek1
b566c98258
Define SampleMask as an array
2023-04-30 18:37:37 +01:00
Wollnashorn
82b78cde73
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
780240e697
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
600f325d87
general: fix spelling mistakes
2023-03-12 11:33:01 -04:00
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
2023-02-08 19:34:39 -05:00