FidelityFX-SPD
FidelityFX-SPD copied to clipboard
Single Pass Downsampler (SPD)
Hi! I just have a minor concern/question regarding the memory barriers in the HLSL and GLSL versions. In HLSL, you call GroupMemoryBarrierWithGroupSync(), but in GLSL you only call barrier(). I...
Newer versions of DXC warn if the first operand of a bitshift operation is missing a suffix that indicates the sign (e.g. `l`, or `u`).
To be able to use ffx_spd in C I put the overload of the SpdSetup with fewer parameters inside a __cplusplus preprocessor block. This way it compiles correctly in C...
In file "CSDownsampler.hlsl" ![image](https://user-images.githubusercontent.com/28799474/187626689-ac3f91a2-bfbb-483e-bbc5-44bd9052740e.png) The constant 0.0031308 should be 0.04045 This problem is not visually detectable
https://github.com/GPUOpen-Effects/FidelityFX-SPD/blob/7c796c6d9fa6a9439e3610478148cfd742d97daf/sample/src/VK/SPDIntegration.glsl#L50 It works for cubemaps, but when using with regular texture arrays it should use unbound buffer: `uint counter[];` And CPU must create either worst case buffer size (2K slices...
I think it would be better to move ``` struct SpdConstants { int mips; int numWorkGroupsPerSlice; int workGroupOffset[2]; }; struct SpdLinearSamplerConstants { int mips; int numWorkGroupsPerSlice; int workGroupOffset[2]; float invInputSize[2];...
This is more of a question than an issue since functionally, all the samples will operate correctly, but I noticed that the invocation to `SpdResetAtomicCounter` will issue an uncached write...