DescentDevelopers / Descent3

Descent 3 by Outrage Entertainment
GNU General Public License v3.0
2.73k stars 231 forks source link

[Runtime Issue]: `-aspect` affects the ship selection screen even though it always has the same aspect ratio #446

Closed Jayman2000 closed 1 week ago

Jayman2000 commented 2 weeks ago

Build Version

v1.5 99e8655ffef95cf06403f94e65f0fc9e4d7d1f01

Operating System Environment

CPU Environment

Game Modes Affected

Game Environment

I’m running NixOS 23.11 and using game data from the Windows Dual-Jewel version of Descent 3 v1.4.

Description

I have a 1920x1200 monitor, so I normally run Descent 3 with with -aspect 1.6. It looks like the aspect ratio correction is applied not only to the game itself but also to the 3D part of the ship selection screen. The aspect ratio correction should not be applied to that part of the ship selection screen because the ship selection screen always runs at 640x480. Here’s an exaggerated demonstration of the issue:

Running the game with no -aspect option

The Pyro-GL has normal proportions on the ship select screen.

Running the game with -aspect 0.5

The Pyro-GL is more tall and narrow than it should be on the ship select screen.

Regression Status

I don’t know.

Steps to Reproduce

  1. Start the game without specifying the -aspect option.
  2. Start a new game on Descent 3: Retribution level 7.
  3. Press Esc once in order to get to the ship selection screen.
  4. Take a screenshot.
  5. Quit the game.
  6. Start the game again. This time, run the game with -aspect 0.5. 0.5 isn’t a realistic aspect ratio, but it will make the affect more obvious.
  7. Start a new game on Descent 3: Retribution level 7.
  8. Press Esc once in order to get to the ship selection screen.
  9. Take a screenshot.
  10. Quit the game.
  11. Compare the two screenshots.
0xFADDAD commented 2 weeks ago

I was able to reproduce this, but I don't think this is actually a bug, but the code working as intended. A little background, these switches were never available on the official Loki Entertainment release for Linux, so I can't test it. Not sure about the Mac port, never tried it nor have a Mac to test. I can reproduce this behavior on the last official Windows release, as well as the x32 and x64 open source Windows ports. -aspect only affects the 3D framebuffer, not any of the 2d menu parts.

Jayman2000 commented 2 weeks ago

I was able to reproduce this, but I don't think this is actually a bug, but the code working as intended. A little background, these switches were never available on the official Loki Entertainment release for Linux, so I can't test it. Not sure about the Mac port, never tried it nor have a Mac to test. I can reproduce this behavior on the last official Windows release, as well as the x32 and x64 open source Windows ports. -aspect only affects the 3D framebuffer, not any of the 2d menu parts.

I agree that the code is probably working as intended, but I still think that this is a bug because I think that the intention is flawed. When a user specifies -aspect, they probably just want the game to always use the correct aspect ratio, even if that’s not what -aspect is supposed to do.

Lgt2x commented 2 weeks ago

we don't aim to reproduce the original game bug for bug, and this looks incorrect and worth fixing