Skip to content

SSSR NaNs and Vulkan fixes #186

Description

@IceLuna

Hi! There are a few vulkan bugs in SSSR library that I fixed in my fork. Because SSSR is not in the main branch, I can't really create a PR. So, you can find fixes here in my fork: IceLuna@a441134. Feel free to just copy my changes to your fork

I thought it could be useful to someone.

Also, there are NaNs on Vulkan that are being propagated by the denoiser. It gets fixed if you set IBLFactor to 0 and resize the window (force resource reinitialization). It seems like it's the sample app bug, not SSSR itself. So, I didn't bother trying to fix it.

Upd:
Seems like FP16 is overflowing and gets into inf state which at some point during calculations turns into NaN.
You can varifiy it by doing radiance = clamp(radiance, FfxFloat16x3(0), FfxFloat16x3(50, 50, 50)); inside FFX_DNSR_Reflections_StoreInGroupSharedMemory before saving it into shared memory, and then increasing the clamp max value from 50 to 200 (which will result in NaNs). Here's my fix: IceLuna@faa6de0
Image

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions