Skip to content

XeSS FG Flickering Issue #24

Description

@KrakenFuego

I'm not sure if this is a "bug", "feature" or general feedback.

When using XeSS + FG on non intel hardware (specifically RTX 2060 and 3070 were the test cards, with lumen (software rt rather than hw rt)), we noticed in motion we got a lot of texture artifacts in dark scenes, where black areas would flicker in and out of existence. It was present on most graphics settings and resolutions.

This didnt happen on a 5090 or on those cards if FG was not selected.

Activity

  1. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    Would you please help to dump files with XeSS Inspector? https://github.com/GameTechDev/XeSSInspector/releases/tag/release%2Fv2.1.0

  2. KrakenFuego commented on Aug 26, 2025

    @KrakenFuego
    Author

    I'll have a word with our QA and see, is there a way to send you them over email if they can.

    Regards

  3. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    Normally, the dump file size will be much larger than our email limitation. You could share the files via any network storage service you're using.

  4. KrakenFuego commented on Aug 26, 2025

    @KrakenFuego
    Author

    Another one we ran into on the same vein:

    If you set XeSS FG and then Try to Swap to DLSS FG, You get a crash.

    the Blueprint UXeFGBlueprintLibrary::SetXeFGMode - appears to leave something running that causes reflex to barf when using the NV DLSS Plugin.

  5. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    Which version of the plugin you're using? Please share the log file if any.

    Please note that: switching one FG to another in Unreal requires a restart to make it work, for all FG techniques use the same swap chain provider API, only one could take effect. It will be like:

    1. Set XeSS-FG off
    2. Disable swap chain overriding via saving following context in Engine.ini
    [SystemSettings]
    r.XeFG.OverrideSwapChain=0
    
    1. Enable DLSS-FG
    2. Restart the game

    There's a Blueprint API IfRelaunchRequiredByXeFG() used to check if a restart is required to make XeSS-FG take effect (XeSS-FG is on but no swap chain created by XeSS-FG)

  6. KrakenFuego commented on Aug 26, 2025

    @KrakenFuego
    Author

    XeSS 2.1.1
    FSR 3.1.4a
    DLSS4 (plugin ver "VersionName": "8.1.0-NGX310.2.1.0",) - its the one from early July when they first added 5.6 support with a bunch of fixes to make it work for us.

    interestingly the AMD plugin seems to coexist correctly,we can seemingly swap between XeSS FG And FSR FG but as soon as XeFG touches DLSSG it blows up.

    This is the error part of the log: Its actually showing issues on Reflex, but reflex shows as enabled (And DLSSG works as expected on reboot - per the swap chain) - We were having a go at trying to make it work without restarting to see if its possible (as it appears to work with AMD/Nvidia)

    [2025.08.26-13.46.58:696][235]LogStreamlineAPI: [Info]: [14-46-58][streamline][info][tid:163376][60s:537ms:177us]dlfgPresent.cpp:1964[operator ()] Engaging WAR4639162
    [2025.08.26-13.46.58:697][235]LogStreamlineAPI: Error: [Error]: [14-46-58][streamline][error][tid:163376][60s:537ms:214us]dlfgPresent.cpp:126[updateStatus] eDLSSGStatusFailReflexNotDetectedAtRuntime - sl.reflex must be enabled and active 13848 != 14236
    [2025.08.26-13.46.58:697][235]LogStreamlineAPI: Warning: [Warn]: [14-46-58][streamline][warn][tid:163376][60s:538ms:120us]thread.h:87[getContext] Thread id over 65536 detected, switching to thread map
    [2025.08.26-13.46.58:708][235]LogWindows: Error: appError called: Assertion failed: State.status == sl::DLSSGStatus::eOk [File:W:\Engine\Engine\Plugins\Marketplace\Nvidia\StreamlineCore\Source\StreamlineCore\Private\StreamlineDLSSG.cpp] [Line: 622]
    DLSS-FG failed at runtime with DLSSGStatus::eFailReflexNotDetectedAtRuntime (2). This runtime check can be disabled with the r.Streamline.DLSSG.CheckStatusPerFrame console variable
    
  7. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    FSR may work without overriding swap chain (not 100% sure), for it offers 2 modes, one relies on swap chain overriding, while the other doesn't.

    To make it simple, you need to restart the game after switching FG techniques before Epic supports non-restart switching.

  8. KrakenFuego commented on Aug 26, 2025

    @KrakenFuego
    Author

    Roger that,

    We just did some quick testing, FSR and DLSS Seem to work without restart (as does swapping from DLSS/FSR FG -> XeSS FG), but then to switch away from XeSS FG to either FSR FG or DLSS FG Seems to need a restart

  9. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    You'd better check the log for which swap chain provider is taking effect.

  10. KrakenFuego commented on Aug 26, 2025

    @KrakenFuego
    Author

    We will do, thank you for confirming the issue is indeed swap chain, even if the log sends you in a different direction.

  11. xessgamedev commented on Aug 26, 2025

    @xessgamedev
    Collaborator

    No problem, feedbacks are always welcome here.

  12. KrakenFuego commented on Aug 27, 2025

    @KrakenFuego
    Author

    Do you have an email I can share the logs/dumps with you?

  13. xessgamedev commented on Aug 27, 2025

    @xessgamedev
    Collaborator
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions