CamilleLaVey
d9db45913c
[spir-v, emit] SPV Image Missmatch
1 month ago
Liam
8c5083b014
shader_recompiler: fix non-const offset for arrayed image types
2 years ago
Liam
0466d1dedb
Revert "shader_recompiler: use only ConstOffset for OpImageFetch"
This reverts commit d69e462d13 .
2 years ago
Liam
d69e462d13
shader_recompiler: use only ConstOffset for OpImageFetch
2 years ago
Liam
b51ba38c29
shader_recompiler: fix Offset operand usage for non-OpImage*Gather
2 years ago
Liam
a952270b5c
shader_recompiler: use float image operations on load/store when required
2 years ago
Ameer J
abd400e04f
shader_recompiler: Fix spelling of "derivate" ( #12067 )
2 years ago
liamwhite
9530b96e5f
shader_recompiler: skip sampler for buffer textures ( #11435 )
2 years ago
Liam
024fb4fae9
shader_recompiler: fix emulation of 3D textureGrad
2 years ago
Wollnashorn
d53aa13a33
shader_recompiler: Use vector arithmetic rather than component-wise in ImageGatherSubpixelOffset
Should be more efficient and better readable
3 years ago
Wollnashorn
45fb154f0d
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 ).
3 years ago
ameerj
bbb60f60d2
spirv: Fix TXQ with MSAA textures
3 years ago
ameerj
2d2558797c
shader_recompiler: TXQ: Skip QueryLevels when possible
3 years ago
Liam
ac94832cb6
spirv: fix multisampled image fetch
3 years ago
FengChen
98656c14a8
video_code: support rectangle texture
3 years ago
Morph
2b87305d31
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
ameerj
3f06a447fb
emit_spirv: Reduce emit_spirv.h include overhead
emit_spirv.h is included in video_core, which was propagating further includes that video_core did not depend on.
4 years ago
ameerj
02f27b1992
shader, video_core: Fix GCC build errors
4 years ago
ReinUsesLisp
d04e2dac6c
shader: Properly scale image reads and add GL SPIR-V support
Thanks for everything!
4 years ago
ReinUsesLisp
e63fc7a4bb
spirv: Implement rescaling patching
4 years ago
ReinUsesLisp
7f88938d72
shader: Add IsTextureScaled opcode
4 years ago
ameerj
f69d094b14
emit_spirv_image: Fix depth image implicit lod sample in compute
Ensures all drivers behave the same way in this case.
4 years ago
lat9nq
b557314001
shader_recompiler, video_core: Resolve clang errors
Silences the following warnings-turned-errors:
-Wsign-conversion
-Wunused-private-field
-Wbraced-scalar-init
-Wunused-variable
And some other errors
5 years ago
ReinUsesLisp
f40daa777e
shader: Add logging
5 years ago
ReinUsesLisp
f7508aa014
spirv: Fix image and image buffer descriptor index usage
5 years ago
ReinUsesLisp
0b3a3f35e8
glasm: Implement TEX and TEXS instructions
Remove lod clamp from texture instructions with lod, as this is not
needed (nor supported).
5 years ago
ReinUsesLisp
055db41f19
Move SPIR-V emission functions to their own header
5 years ago
ReinUsesLisp
f6c09c27b1
spirv: Only add image operands mask when needed
5 years ago
ReinUsesLisp
59668831b7
spirv: Workaround image unsigned offset bug
Workaround bug on Nvidia's OpenGL SPIR-V compiler when using unsigned
texture offsets.
5 years ago
ReinUsesLisp
052317e748
shader: Implement indexed textures
5 years ago
ameerj
688c89590c
spirv: Replace Constant/ConstantComposite with Const helper
5 years ago
ReinUsesLisp
0623915e2e
spirv: Fix implicit lod type
5 years ago
ReinUsesLisp
b597da7f2a
spirv: Use explicit lods outside of fragment shaders
5 years ago
ReinUsesLisp
f771d1fc52
spirv: Use ConstOffset instead of Offset when possible
5 years ago
ReinUsesLisp
03c16b085a
spirv: Implement image buffers
5 years ago
ReinUsesLisp
480ce24b7e
spirv: Guard against typeless image reads on unsupported devices
5 years ago
ReinUsesLisp
5ab1ac4f29
shader: Implement SULD and SUST
5 years ago
lat9nq
5b95114cd4
shader: Address feedback + clang format
5 years ago
lat9nq
a4e7a41e7f
shader_recompiler,video_core: Cleanup some GCC and Clang errors
Mostly fixing unused *, implicit conversion, braced scalar init,
fpermissive, and some others.
Some Clang errors likely remain in video_core, and std::ranges is still
a pertinent issue in shader_recompiler
shader_recompiler: cmake: Force bracket depth to 1024 on Clang
Increases the maximum fold expression depth
thread_worker: Include condition_variable
Don't use list initializers in control flow
Co-authored-by: ReinUsesLisp <reinuseslisp@airmail.cc>
5 years ago
ReinUsesLisp
d07e15fcf6
shader: Fix TextureGrad
5 years ago
ReinUsesLisp
96da029a74
shader: Implement texture buffers
5 years ago
FernandoS27
c7ed439bbc
shader: Stub TLD4's PTP when it isn't constant
5 years ago
FernandoS27
8f2238dc3d
shader: Fix TXD
5 years ago
FernandoS27
7d40446b99
shader: Address feedback
5 years ago
FernandoS27
be5936dea2
shader: Implement ImageGradient
5 years ago
FernandoS27
d523cd563c
shader: Implement TMML partially
5 years ago
FernandoS27
56c8c42cf8
shader,spirv: Implement ImageQueryLod.
5 years ago
FernandoS27
8232c10ed1
shader: Implement TLD
5 years ago
ReinUsesLisp
e4ba306750
shader: Implement TXQ and fix FragDepth
5 years ago
ReinUsesLisp
4cd2c1588b
shader: Refactor PTP and other minor changes
5 years ago