NVIDIAGameWorks / rtx-remix

Combined repo for the RTX-Remix runtime
https://www.nvidia.com/en-us/geforce/rtx-remix/
MIT License
1.31k stars 68 forks source link

Infinitely Expanding Window, Potential BSoD on Hook - Xuan-Yuan Sword: The Gate of Firmament (Steam) #178

Open anchorlightforge opened 1 year ago

anchorlightforge commented 1 year ago

Bug:

Environment:

Logs:

To Reproduce Steps to reproduce the behavior:

  1. Open the game and make sure that Windowed mode is enabled in the settings.
  2. Set up Bridge and DXVK Remix in the game's EXE folder.
  3. Open the application.
  4. The window initializes successfully at a default resolution of 1280x720, then grows by 50 px in width and height incrementally on repeat until the application or the system crashes.
    • In some cases, the application will stop early and begin normal operation at its larger-than-intended resolution.

The log (example from Shadowrun Returns) will report an infinite loop of the following functions:

d3d9_device.cpp:7513: D3D9DeviceEx::ResetSwapChain ->

D3D9DeviceEx::ResetSwapChain:
  Requested Presentation Parameters
    - Width:              2900
    - Height:             1071
    - Format:             D3D9Format::A8R8G8B8
    - Auto Depth Stencil: false
                ^ Format: D3D9Format::D24S8
    - Windowed:           true

Render resolution changed, recreating rendering resources

Target resolution changed, recreating target resources

D3D9DeviceEx::ResetSwapChain:
  Requested Presentation Parameters
    - Width:              2910
    - Height:             1071
    - Format:             D3D9Format::A8R8G8B8
    - Auto Depth Stencil: false
                ^ Format: D3D9Format::D24S8
    - Windowed:           true

Expected behavior The window should initialize at the selected resolution and maintain this resolution.

anchorlightforge commented 1 year ago

I've now confirmed that this behavior also occurs with XYS: The Clouds Faraway if you attempt to change resolution in-game.

anchorlightforge commented 1 year ago

This bug can also be reproduced in Shadowrun Returns (GOG). It manifests differently with only width affected instead of width and height, and at a slower rate-- but the log references the same functions that were returned in the original bug report.

Aelthien commented 1 year ago

Also occurs with Unity projects built in 2017.2.5f1

NV-LL commented 2 months ago

Hello! Will you please test this on the latest release and let us know if the issue persists? Thank you!

anchorlightforge commented 1 month ago

@NV-LL I can confirm that with 0.5.0 release this bug still occurs. I noticed that it did not occur on launch this time, so I can't guarantee that it's not a different bug with the same impact. To reproduce:

  1. Open an affected game-- the one above will work, any Unity game where the window is not resizable will also work.
  2. Change the resolution in-game.
  3. The window will infinitely expand, though some games eventually stop growing and begin to function again at a higher-than-intended resolution.

For convenience I have also included a video @Kim2091 created of a Kerbal Space Program alpha build where this issue occurs. This is a much earlier version of Remix and a different title in the engine, but the issue is identical in impact.

https://github.com/NVIDIAGameWorks/rtx-remix/assets/55258193/359e7342-9af7-4eca-96eb-b37c631d29e1

nv-ajaus commented 1 month ago

Hi @anchorlightforge , is this issue distinct from issue #499 at this point, or are they duplicates of each other?

anchorlightforge commented 1 month ago

@nv-ajaus It's somewhat related and most likely the same issue. I posted separate issues because we were instructed to do so for a similar cascading issue that affected multiple titles. If desired I can close the latter of the tickets.

The main difference is that in this ticket, the engine's built-in behavior for resolution switching and initialization in windowed mode will fail without certain flags enabled in-editor, while with the latter tickets the developers' implementation of resolution toggles in windowed mode triggers the same issue.

NV-LL commented 3 weeks ago

REMIX-3160 for tracking