Repository navigation
VR (OpenXR): after minimizing/restoring the game window, DLSS stops processing the eye views (mirrors keep working) until restart #9
Description
Title: VR (OpenXR): after minimizing/restoring the game window, DLSS stops processing the eye views (mirrors keep working) until restart
Environment
- Game (ETS2 / ATS) and game version: Euro Truck Simulator 2, 1.61.1.1001 (Steam)
- Mod version:
=== ETS2/ATS DLAA injector v0.10.3 loaded (pid=33588) === - Flat or VR: VR —
launch mode: VR (from the launch options) - Game launch options:
-openxr -nointro - VR headset and runtime: Meta Quest 3 via Virtual Desktop / VDXR (
VirtualDesktopXR 1.0.10), 72 Hz, SSW on. The log also shows the API layeropenxr-oculus-compatibility.dllin the chain. - GPU and driver version: NVIDIA GeForce RTX 4080 SUPER, driver 32.0.16.1714 (CPU Ryzen 7 9800X3D, Windows 11 Pro 10.0.26300)
nvngx_dlss.dllversion: 310.9.1.0- Mode in use and model: DLSS (2 beeps,
mode = 2,dlss_upscale = 1), preset E (fromperf_profile = medium, model not changed manually). Mode key rebound toCtrl+Q(key_mode_cycle = Ctrl+Q, the log confirmsmode_cycle=Ctrl+Q). - Other mods / injectors in the folder: none (no ReShade, no other dinput8/dxgi DLL). Only the game's own DLLs are in
bin\win_x64\. Around 250 game mods (maps, traffic, graphics), no injectors among them. OFXR Bridge not installed. - Steam overlay on or off: on
Attachments
-
dlaa_inject.log(debug = 1) -
dlaa.ini -
dlaa_trace.txt -
dlaa_selftest\ -
dlaa_snap\ - Screenshot / short video
-
config.cfglines:r_scale_x "0.75",r_scale_y "0.75",r_manual_stereo_buffer_scale "1.25"→ DLSS 2344x2520 → 3120x3360 per eye (Virtual Desktop recommends 2496x2688)
Non-default dlaa.ini keys: mode = 2, dlss_upscale = 1, tex_lod_bias = -0.50, tex_lod_bias_auto = 1, tex_lod_bias_cutout = -0.50, perf_profile = medium, debug = 1, key_mode_cycle = Ctrl+Q.
Steps to reproduce
- Start the game in VR with
-openxr(Virtual Desktop), load a save, DLSS active. The eye views are anti-aliased. - On the desktop, minimize the game window and restore it (Alt+Tab).
- Look in the headset: the eye views are now aliased ("staircase" edges), as if DLSS/DLAA were off. The mirrors are still anti-aliased.
Expected behavior
DLSS keeps processing the eye views after the window is restored, or picks them up again.
Actual behavior
From the minimize/restore on (between 23:13:50 and 23:13:54 in the attached log), the eye views are no longer processed until the game is restarted. The mod still reports dlaa=on dlaa-mode=DLSS ngx-feature=1.
In the log, passes= and dlaa frames e0= stop growing, while blits, scene depth discards seen and the mirror counters keep growing. fifo underflow grows by 600 every window (every blit), and every pass section "never reached a blit". eye-map-entries stays at 6 (no new eye RT is picked up):
[23:13:44.938] FIFO stats @blit 46800: passes=46476 blits=46800 depth snapshot used=46475 live used=0 fifo underflow=324 ... mirror views handled=44547 ... (scene depth discards seen=46477) | eye map: RT map entries=6 ... | dlaa frames e0=23294
[23:13:50.822] FIFO stats @blit 47400: passes=46685 blits=47400 depth snapshot used=46684 live used=1 fifo underflow=714 ... mirror views handled=45147 ... (scene depth discards seen=46881) | eye map: RT map entries=6 ... | dlaa frames e0=23399
[23:13:54.989] FIFO stats @blit 48000: passes=46685 blits=48000 depth snapshot used=46684 live used=1 fifo underflow=1314 ... mirror views handled=45747 ... (scene depth discards seen=47181) | eye map: RT map entries=6 ... | dlaa frames e0=23399
[23:13:59.181] FIFO stats @blit 48600: passes=46685 blits=48600 depth snapshot used=46684 live used=1 fifo underflow=1914 ... mirror views handled=46347 ... (scene depth discards seen=47481) | eye map: RT map entries=6 ... | dlaa frames e0=23399
[23:13:50.822] perf @blit 47400: 386 sections of passes that never reached a blit (not in the eye lines), 0 sections not timed
[23:13:54.989] perf @blit 48000: 600 sections of passes that never reached a blit (not in the eye lines), 0 sections not timed
[23:13:59.181] perf @blit 48600: 600 sections of passes that never reached a blit (not in the eye lines), 0 sections not timed
[23:13:44.211] Present #27770: passes=46370 blits=46694 outstanding=0 mode=VR eye-map-entries=6 | dlaa=on dlaa-mode=DLSS ngx-feature=1
[23:13:54.207] Present #28366: passes=46685 blits=47886 outstanding=0 mode=VR eye-map-entries=6 | dlaa=on dlaa-mode=DLSS ngx-feature=1
[23:14:04.204] Present #29084: passes=46685 blits=49322 outstanding=0 mode=VR eye-map-entries=6 | dlaa=on dlaa-mode=DLSS ngx-feature=1
The state stays the same until the end of the session (23:15+). It looks like after the window is restored, the scene passes are no longer matched to the eye blits (maybe the game recreates render targets on restore and the eye map keeps the old ones?).
Activity
Romellie commentedon Oct 11, 2026
Update: the trigger is not the window minimize.
A second session (game restarted, driving only, no minimize/Alt+Tab) shows the same failure with the same signature. In both sessions, in the same millisecond as a
scene depth G-buffer passchange, the pre-tonemap stage logs a forward-colour re-entry warning. Right after thatpasses=/dlaa frames e0=freeze for the rest of the session, while mirrors keep being processed.Session 1 (the log attached to the issue):
Session 2 (driving, no minimize):
So the pass that hits the forward-leave / re-entry path (
s=46684/s=11305) seems to be the last one ever matched to a blit. Every later pass "never reached a blit". Both failures happened 4–7 minutes after game start. Settings:dlaa_pre_tonemap = 1(default), DLSS upscaling in VR.Pressing Alt+F7 after the failure does not recover it. The log shows
[23:40:02.575] DLAA pre-tonemap OFF (Alt+F7, Present #23785)andstage=post-tonemap, butpasses=11306/dlaa frames e0=5269stay frozen until the game is closed.Next I'm testing
dlaa_pre_tonemap = 0indlaa.inifrom game start and will report back. I can attach the session 2 log too (debug = 1).JRDevo commentedon Oct 11, 2026
yes please, as many logs as possible
Issue #9: scene depth aliases (per-eye D32S8 depths after a VR minimi…
v0.11.0-rc1: version 0.11.0, changelog labels, README status line (te…
JRDevo commentedon Oct 11, 2026
can you check the latest dev build? : https://github.com/JRDevo/ETS2-ATS-DLAA-DLSS-Injection-Mod/releases/tag/v0.11.0-rc1
Romellie commentedon Oct 11, 2026
Tested v0.11.0-rc1: it works, the bug is fixed. Thank you for the quick fix!
Same setup as before: VR,
-openxrvia Virtual Desktop (VDXR), Quest 3, DLSS 2344x2520 → 3120x3360 per eye,perf_profile = medium,log_level = 4. I played ~25 minutes, including the situations that used to break it. The eye views stayed anti-aliased the whole time.From the log (
=== ETS2/ATS DLAA injector v0.11.0 loaded ===):dlaa frames e0kept growing for the whole drive, from 00:34:53 to 00:58:16 (e0=92756, e1=90431 at the end). It never froze.re-entrywarnings. 13scene depth G-buffer passchanges, none of them broke anything.Minor thing: with
log_level = 4, a few normal messages at startup are tagged asERROR, for example:There are 9 such lines in total, all at startup. Looks like a log-level tag mix-up, nothing functional.
JRDevo commentedon Oct 12, 2026
Log bug in the next release, thanks for the feedback!!!