xemu-project / xemu

Original Xbox Emulator for Windows, macOS, and Linux (Active Development)
https://xemu.app
Other
2.78k stars 279 forks source link

Timesplitters: Future Perfect - Gun on First Story Mission Causing FPS drop. #418

Closed nrgst183 closed 2 years ago

nrgst183 commented 3 years ago

Bug Description

The first gun you get in Timesplitters: Future Perfect causes FPS drops.

  1. Open Timesplitters: Future Perfect and navigate to the "Story" menu option.
  2. Select the first level: "Time To Split."
  3. When the marine gives you the gun, your fps will drop if you have res scale turned on.

Expected Behavior

The FPS should stay solid.

xemu Version

0.5.4-39-gedf3735718

System Information

OS: Windows 10 Pro CPU: AMD Ryzen 9 5950X GPU: NVIDIA 3090 GPU Driver: 4.0.0 NVIDIA 471.41

Additional Context

Here's some screenshots and video clips showcasing the issue: https://cdn.discordapp.com/attachments/434287963619459072/867262434687451176/unknown.png https://cdn.discordapp.com/attachments/434287963619459072/867262525426368542/unknown.png https://cdn.discordapp.com/attachments/680488810429153315/867250614605053982/2021-07-20_20-32-28.webm https://cdn.discordapp.com/attachments/680488810429153315/867254723488383007/2021-07-20_20-53-17.webm

jpenalbae commented 2 years ago

Either there is a regression or this was never fixed properly as I'm hitting the exact same bug.

Bug Description

Whenever you use the first gun you get in the game the FPS drop.

  1. Open Timesplitters: Future Perfect and navigate to the "Story" menu option.
  2. Select the first level: "Time To Split."
  3. When the marine gives you the gun, your fps will drop
  4. Press left on the D-pad to use fists and fps return to normal
  5. Press right on the D-pad to use the gun again, fps will drop again

Depending on your hardware if you turn down internal resolution scale back to 1x it might be enough to make the game playable. When using less powerful hardware such as the steam deck this bug causes the game to crawl at 4 fps rendering it unplayable although the game runs at solid 60 fps even at 2x when the gun is not being used.

Expected Behavior

The FPS should stay solid.

Screenshots

SteamOS, Steam deck, Internal Scale x1. With and without gun 20220607213918_1 20220607213934_1

Win 10, Nvidia RTX 2070, Internal Scale x3. With and without gun 20220607220654_1 20220607220701_1

Additional info

I do not have any experience with 3d development, but my educated guess is that this bug is related to the gun scope. The scope draws the current screen scaled down and applies some glass distortion effect as can be seen here:

scope

So my guess is that the screen is rendered twice, something weird happens when applying the distortion effect, or the gun is included in the scope view itself and some infinite recursion is triggered. Just guessing...

System Information

Field Value
OS Windows 10
CPU AMD Ryzen 7 2700X Eight-Core Processor
Graphics Device NVIDIA GeForce RTX 2070
Graphics Driver 4.0.0 NVIDIA 512.95
Steam deck: Field Value
OS SteamOS 3.2 (Linux)
CPU AMD Custom APU 0405
Graphics Device AMD Custom GPU 0405
Graphics Driver 4.6 (Compatibility Profile) Mesa 22.0.0-devel (git-74a3f4e63a)

xemu Version

Tested on first and last release available on github in order to check if this was a regression as this bug was marked as closed.

Version: v0.7.28 Branch: master Commit: https://github.com/mborgerson/xemu/commit/176b574403e0f4a08bfb1f8ab58e0f819a45cf81

and

Version: v0.6.5 Branch: master Commit: https://github.com/mborgerson/xemu/commit/a809d8557d48005f9e88145d398b87851b76e8fa

jpenalbae commented 2 years ago

As this is issue has been closed and probably nobody is gonna see the reply I have created a new issue #1042