wheremyfoodat
aad7bb817e
Add setting for ubershaders
2024-07-17 02:25:38 +03:00
wheremyfoodat
219a560cbe
Merge branch 'master' into specialized-shaders-2
2024-07-17 00:10:09 +03:00
wheremyfoodat
967d9398ce
Fix arm64 build
2024-07-16 22:28:20 +03:00
wheremyfoodat
0ecdf00e64
Add accurate shader multiplication option
2024-07-16 22:14:01 +03:00
wheremyfoodat
441aa2346c
Shadergen: Add clipping
2024-07-16 02:20:37 +03:00
wheremyfoodat
c02b382262
Perform alpha test with integers instead of floats
2024-07-16 00:58:52 +03:00
wheremyfoodat
db80131213
Shadergen: Previous buffer should be able to be set even for passthrough TEV stages
2024-07-15 18:27:22 +03:00
wheremyfoodat
b8a186d5cd
Shadergen: Fix add-multiply
2024-07-15 16:34:33 +03:00
wheremyfoodat
a2649ffb76
Simplify TEV code
2024-07-15 15:38:15 +03:00
wheremyfoodat
c535ae43ee
Shader recompiler: Fix dot3 RGBA
2024-07-15 14:34:59 +03:00
wheremyfoodat
11c9279329
Properly flush shader cache
2024-07-15 14:30:21 +03:00
wheremyfoodat
fe53214c86
Shader recompiler: Finish alpha test and stub lighting
2024-07-15 04:51:08 +03:00
wheremyfoodat
0878474e01
Shader recompiler: Add depth mapping
2024-07-15 04:30:04 +03:00
wheremyfoodat
c8eb1c1128
Shader recompiler: Add UBO
2024-07-15 04:10:55 +03:00
wheremyfoodat
fe4bbea2ef
Merge branch 'master' into specialized-shaders-2
2024-07-15 02:53:32 +03:00
wheremyfoodat
133082c232
x64 shader rec: Add support for PICA non-IEEE multiplication
2024-07-15 02:12:04 +03:00
wheremyfoodat
ea59933b18
Simplify alpha test code
2024-07-15 00:46:15 +03:00
wheremyfoodat
c73758959b
Merge branch 'master' into specialized-shaders-2
2024-07-14 23:57:12 +03:00
wheremyfoodat
0e4079f304
a64 shader recompiler: Add DPH/DPHI
2024-07-03 16:23:43 +03:00
wheremyfoodat
842943fa4c
GLSL shader gen: Add alpha test (...half of it I guess)
2024-05-13 00:51:40 +03:00
wheremyfoodat
798c651a17
Merge branch 'specialized-shaderz' into specialized-shaders-2
2024-05-12 23:20:12 +03:00
wheremyfoodat
f004aa6021
Implement GPUREG_VSH_OUTMAP_MASK
2024-04-29 23:02:33 +03:00
Wunk
5284109fd4
Implement shader-interpreter relative MOVA
addressing ( #471 )
...
* Add shader uniform-read unit test
* Add unit test f24 vector formatter
* Add Address Register Offset shader unit test
* Implement float-uniform out-of-bound return value
In the case that the resulting float-uniform index is greater than the 96 slots that it has, a result of `{1,1,1,1}` is to be returned.
* Implement shader relative addressing
Fails on the negative unit tests at the moment but passes all of the
others.
* Fix `MOVA` source register indexing
2024-03-22 18:48:03 +02:00
Wunkolo
40e2774b7f
Implement arm64 LG2
/EX2
2024-03-19 21:26:13 -07:00
Wunkolo
2b34ef4a89
Implement PICA200 compliant arm64 MUL
...
Adds `emitSafeMUL` to implement a PICA200 compliant multiplication that
handles the special `0 * inf = 0` case.
2024-03-14 12:30:42 -07:00
Wunk
c89fe05b8a
Fix shader-interpreter non-IEEE outputs ( #459 )
...
* Re-enable non-IEEE shader test
* Fix shader-interpreter RCP/RSQ output
Handle the `-0.0` special-case
* Fix shader-interpreter MIN/MAX output
Takes advantage of min/max's properties regarding non-finites to return
NaN depending on its input position:
```
max(NaN, 2.f) -> NaN
max(2.f, NaN) -> 2
min(NaN, 2.f) -> NaN
min(2.f, NaN) -> 2
```
* Fix shader-interpreter FLR indexing bug
`3 - 1` should be `3 - i`
2024-03-12 08:34:02 +02:00
wheremyfoodat
25d8e5807f
Fix dynarmic submodule ( #446 )
...
* Remove dynarmic submodule
* Add dynarmic mirror
* Update oaknut
* Update shader JIT to work with latest oaknut
* Maybe fix oaknut finally
* hlep
* More arm64 shader derps
* Fixing more shader JIT brokenness
* aaaaaaaaaaaa
* Update shader_rec_emitter_arm64.hpp
* Update shader_rec_emitter_arm64.cpp
2024-03-07 19:47:21 +02:00
wheremyfoodat
5ba773a393
Add GLES detection to fragment shader recompiler
2024-03-03 21:04:12 +02:00
wheremyfoodat
67fe3214fe
Add shader cache
2024-03-02 20:41:23 +02:00
wheremyfoodat
ddc14cea09
Fix shader compilation errors
2024-02-29 00:56:24 +02:00
wheremyfoodat
10654ce1ca
GLSL generator: Add textures and alpha operations
2024-02-04 18:54:29 +02:00
wheremyfoodat
0be8c45e37
Fragment shader gen: Properly track TEV outputs
2024-02-02 01:51:37 +02:00
wheremyfoodat
7e77af0de8
GLSL Fragment Generator: Working color operations
2024-02-02 01:34:33 +02:00
wheremyfoodat
45ae6bd3a8
Getting TEV operations working
2024-02-02 01:16:45 +02:00
wheremyfoodat
ef2467bc60
TEV definitions for shader generator
2024-01-18 02:59:29 +02:00
wheremyfoodat
6f3c7d358b
Add GLSL shader gen files
2024-01-18 00:27:17 +02:00
wheremyfoodat
6d78750824
Merge pull request #362 from wheremyfoodat/arm64-jot
...
WIP arm64 shader recompiler
2024-01-12 19:03:40 +02:00
wheremyfoodat
aaef3b66f9
Moar arm64 shader ops
2024-01-09 23:50:57 +02:00
wheremyfoodat
6c2e0be07d
[arm64 shader JIT] Booting OoT now
2024-01-04 23:25:46 +02:00
wheremyfoodat
745da35324
Fix cmp in x64 shader JIT
2024-01-04 03:19:31 +02:00
wheremyfoodat
fe01df588b
Get some demos running on a64 shader JIT
2024-01-03 22:00:16 +02:00
wheremyfoodat
c0621d0760
WIP arm64 shader recompiler
2024-01-03 00:39:36 +02:00
wheremyfoodat
1f8194dfa3
ShaderJIT: Make BREAK(C) emit a warning instead of crashing until implemented
2023-09-16 18:07:07 +03:00
wheremyfoodat
ccdf8f7722
Shader Interpreter: implement SGE
2023-08-12 23:46:42 +03:00
wheremyfoodat
85c586b3d0
[Shader JIT] Add DPHI
2023-08-12 23:36:56 +03:00
wheremyfoodat
0f973a4ae4
Fix immediate mode vertex submission
2023-08-12 17:52:50 +03:00
wheremyfoodat
9695b57bf5
[PICA] Rework how external registers work, format
2023-08-04 00:42:11 +03:00
wheremyfoodat
f84935142a
Merge remote-tracking branch 'upstream/master' into moar-gpu
2023-08-03 20:26:12 +03:00
GPUCode
58383ee431
Address review comments
2023-08-03 16:42:01 +03:00
GPUCode
f75a23b5a9
code: Better screen support
2023-08-02 22:26:08 +03:00