lizzie
0e6ea2d9d6
[shader_recompiler] Add IAbs64 to prevent errors when using I2F with a 64-bit packed CBUF variant ( #2918 )
...
- Using I2F cbuf variant (packed 32x2 aka. U64)
- Code will call IAbs() if some conditions are met (signed + abs bit)
- Uh oh we don't have a variant for 64 bits!
- Fuck now we just made BAD ir code :(
Signed-off-by: lizzie <lizzie@eden-emu.dev >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2918
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Reviewed-by: Caio Oliveira <caiooliveirafarias0@gmail.com >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-11-03 20:20:19 +01:00
lizzie
992bae4e2a
[common] replace Common::BitCast with libc++ provided one ( #2774 )
...
Signed-off-by: lizzie <lizzie@eden-emu.dev >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2774
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-10-22 02:56:28 +02:00
lizzie
191e4c75a1
[meta] fix license headers ( #2547 )
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/2547
Reviewed-by: MaranBr <maranbr@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-09-21 21:58:59 +02:00
lizzie
9d2681ecc9
[cmake] enable clang-cl and WoA builds ( #348 )
...
Compilation and CMake fixes for both Windows on ARM and clang-cl, meaning Windows can now be built on both MSVC and clang on both amd64 and aarch64.
Compiling on clang is *dramatically* faster so this should be useful for CI.
Co-authored-by: crueter <crueter@eden-emu.dev >
Co-authored-by: crueter <crueter@crueter.xyz >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/348
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com >
Reviewed-by: crueter <crueter@eden-emu.dev >
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-09-09 20:47:49 +02:00
crueter
09a8fab2a2
[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-08-15 21:40:41 +02:00
crueter
1551387739
[cmake, frontend] feat: CPMUtil + dependency viewer ( #238 )
...
- creates a CPMUtil.cmake module that makes my job 10x easier and removes boilerplate
- also lets us generate dependency names/versions at compiletime, thus letting the frontend display each dependency's versions.
Signed-off-by: crueter <crueter@eden-emu.dev >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/238
2025-08-11 22:27:29 +02:00
crueter
51b170b470
[cmake] refactor: Use CPM over submodules ( #143 )
...
Transfers the majority of submodules and large externals to CPM, using source archives rather than full Git clones. Not only does this save massive amounts of clone and configure time, but dependencies are grabbed on-demand rather than being required by default. Additionally, CPM will (generally) automatically search for system dependencies, though certain dependencies have options to control this.
Testing shows gains ranging from 5x to 10x in terms of overall clone/configure time.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/143
Reviewed-by: CamilleLaVey <camillelavey99@gmail.com >
2025-08-04 04:50:14 +02:00
lizzie
9e0e31132a
[icc] fix intel c++ compiler errors ( #146 )
...
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/146
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-07-30 20:59:28 +02:00
lizzie
7962c81738
[spirv] new castings for int8/int16/etc ( #86 )
...
This commit introduces extended support for low-precision integer casting (int8, int16) in the SPIR-V shader generation pipeline, improving compatibility and performance across both Android and PC platforms.
Co-authored-by: CamilleLaVey <camillelavey99@gmail.com >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/86
Co-authored-by: lizzie <lizzie@eden-emu.dev >
Co-committed-by: lizzie <lizzie@eden-emu.dev >
2025-07-23 01:02:10 +02:00
Gamer64
a002730d68
[VK] Rework SPIRV Shader Optimization ( #238 )
...
The actual SPIRV Shader Optimization option doesn't seem to do anything as long as it isn't vinculed, so let's rework it to make it work
Co-authored-by: Gamer64 <76565986+Gamer64ytb@users.noreply.github.com >
Co-authored-by: echosys <echosys@noreply.localhost >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/238
2025-07-03 01:13:33 +00:00
crueter
94c66f98bf
[frontend, web] refactor: web service frontend rewrite ( #221 )
...
- Automatic verification based on regex
- Token generation button
- Removed unneeded links
- public lobby creation [android]
Signed-off-by: crueter <swurl@swurl.xyz >
Co-authored-by: Aleksandr Popovich <alekpopo@pm.me >
Co-authored-by: Aleksandr Popovich <alekpopo@proton.me >
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/221
Co-authored-by: crueter <swurl@swurl.xyz >
Co-committed-by: crueter <swurl@swurl.xyz >
2025-07-01 01:44:12 +00:00
JPikachu
11b152ab58
[spirv] Avoid NaN when a conversion to f16 is emitted ( #215 )
...
Fixes black squares in Fire Emblem: Three Houses.
And fixes vertex explosions in The Legend of Zelda: Breath of the Wild shrine areas.
These were caused by NaN values from overflowed conversions to float16.
Reviewed-on: https://git.eden-emu.dev/eden-emu/eden/pulls/215
Co-authored-by: JPikachu <jpikachu.eden@gmail.com >
Co-committed-by: JPikachu <jpikachu.eden@gmail.com >
2025-06-29 17:15:46 +00:00
swurl
918d6d3514
proper placement of clip distance init
...
Signed-off-by: swurl <swurl@swurl.xyz >
2025-04-24 11:00:28 -04:00
JPikachu
c64f1994c7
Fix complination issues by making clip_distance_written static
2025-04-21 13:34:28 -04:00
JPikachu
fc1a3b6310
shader compiler: Ensure all clip distances are initialized when used
...
Thank you to Ryujinx (riperiperi specifically) for the pointer towards clip distances
Huge thanks to crueter for finding where the code works and Camille for giving pointers along the way.
2025-04-21 13:34:24 -04:00
EmulationEnjoyer
fcec7995af
feat(shader): implement geometry shader invocation info
...
- Update EmitInvocationInfo in SPIRV backend to handle geometry shader stage
ref: https://git.citron-emu.org/Citron/Citron/commit/1266fad68128b3779dcd9bbb6c5f77ec1055e2e6#diff-4cbf73a98ed4ad649a4a6f38b569bc31fcf68cf7
2025-04-19 18:05:29 -03:00
MrPurple666
44dc152a2b
Add InputTopologyVertices from torzu adapted to eden
2025-04-19 17:56:48 -03:00
crueter
9cef9f5dce
Update fmt to allow for v11
...
Signed-off-by: swurl <swurl@swurl.xyz >
2025-04-10 01:11:22 +02:00
darktux
9f4ef30b55
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 >
2025-04-04 03:40:48 +02:00
Narr the Reg
091abdc5cb
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
749f0564ae
shader_recompiler: throw on missing geometry streams in geometry shaders
2024-02-19 00:34:00 -05:00
Liam
8c5083b014
shader_recompiler: fix non-const offset for arrayed image types
2024-02-15 18:49:23 -05:00
Liam
0466d1dedb
Revert "shader_recompiler: use only ConstOffset for OpImageFetch"
...
This reverts commit d69e462d13 .
2024-02-15 18:38:56 -05:00
Liam
d69e462d13
shader_recompiler: use only ConstOffset for OpImageFetch
2024-02-05 12:01:09 -05:00
liamwhite
ceb8bbc111
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
168f763ee6
Merge remote-tracking branch 'origin/master' into typos3
2024-01-16 00:09:00 +00:00
Viktor Szépe
8f8a15827f
Fix more typos
2024-01-15 23:26:53 +00:00
Liam
9070fbdc09
shader_recompiler: emulate 8-bit and 16-bit storage writes with cas loop
2024-01-11 16:50:59 -05:00
Liam
b51ba38c29
shader_recompiler: fix Offset operand usage for non-OpImage*Gather
2024-01-11 00:56:37 -05:00
liamwhite
8da33ba38a
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
221f2edfb9
shader_recompiler: use default value for clip distances array
2023-12-26 19:32:47 -05:00
Liam
e7b5befdad
shader_recompiler: respect clip distance limits in indexed store
2023-12-26 19:10:25 -05:00
Ameer J
deb6899663
spirv_emit_context: Fix BaseInstance for OGL spirv
2023-12-21 21:53:24 -05:00
Liam
a952270b5c
shader_recompiler: use float image operations on load/store when required
2023-12-21 14:34:46 -05:00
Ameer J
822348997d
emit_glsl_image: Use inlined texelFetch offsets
2023-12-20 19:24:11 -05:00
Liam
3c14f747f9
shader_recompiler: use minimal clip distance array
2023-12-18 22:25:14 -05:00
Liam
6611ba122b
shader_recompiler: ignore clip distances beyond driver support level
2023-12-18 22:25:14 -05:00
liamwhite
5b3522cbe8
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
38449c071d
GLSL: Prefer known used cbuf sizes
2023-11-26 23:25:29 -05:00
Ameer J
a9e011c9c2
Merge branch 'master' into ssbo-align
2023-11-26 21:08:53 -05:00
Liam
a41e57d968
renderer_vulkan: ignore viewport stores on non-supporting drivers
2023-11-19 11:27:12 -05:00
Ameer J
abd400e04f
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2023-11-18 13:39:47 +01:00
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