Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Visual glitch after loading savestate after crash (GTA Vice City Stories) #14583

Open
1 of 4 tasks
NABN00B opened this issue Jul 3, 2021 · 12 comments
Open
1 of 4 tasks
Milestone

Comments

@NABN00B
Copy link
Contributor

NABN00B commented Jul 3, 2021

Reproduction Steps:

  1. Restart PPSSPP and launch GTA Vice City Stories (has to be a fresh start to get it consistently)
  2. Crash the game in a way that the Resume button is presented on the crash screen
  3. Load a save state, then press Resume
  4. Pause and unpause the game
  5. Visual glitch happens
  6. Launching GE Debugger gets rid of the visual glitch

ppsspp_stateglitch
Dump (from a different occasion):
ppsspp_stateglitch.zip

What are you using?

What hardware / device and operating system?

Win10 x64

What graphics card (GPU) or mobile phone model?

GeForce GTX 1060 3GB
driver: 27.21.14.5709

What PPSSPP version (standalone/official), and did it work before?

PPSSPPWindows64.exe
v1.11.3
OpenGL backend

Which game or games?

Only tested GTA VCS so far because I can crash it on demand.

Other members of GTA speedrunning community have also been experiencing this glitch in v1.11.3.

Checklist

  • Test in the latest git build in case it's already fixed.
  • Search for other reports of the same issue.
  • Try resetting settings or older versions and include if the issue is related.
  • Include logs or screenshots of issue.
@anr2me
Copy link
Collaborator

anr2me commented Jul 4, 2021

How do you make the game crashed? i think that crash is an important issue to be fixed

@NABN00B
Copy link
Contributor Author

NABN00B commented Jul 4, 2021

How do you make the game crashed? i think that crash is an important issue to be fixed

Simply abuse any ingame mechanic (such as starting 2 different missions) to cause the game to crash.

For this screenshot and dump, I changed the player handle to an invalid value (such as 0 or -1) with Cheat Engine in order to intentionally cause a crash with the "Resume" button appearing on the crash screen. The "Resume" button is important so that the game can be continued from a previous savestate. Otherwise we would have to quit to the main menu of PPSSPP and load the game again from the startup screen.

The crash is the game's fault. That is not the problem. The problem is the emulator producing the above visual glitch after loading a savestate from a crash screen, and then using the ingame pause feature.

@anr2me
Copy link
Collaborator

anr2me commented Jul 4, 2021

I see, if it crashed because you intentionally tampering the memory i guess it wasn't an issue.

Regarding the resume button, i also noticed it a while back while testing some games that had in-game crash issue (blue screen), and as i remembered an alternative way to resume it (if the resume button didn't shows up or grayed out) is by pressing ESC (or Back button) and then click "Continue", this will resume the emulation.
But, yeah, this "Resume" button and the visual glitches need to be fixed.

@NABN00B
Copy link
Contributor Author

NABN00B commented Mar 12, 2022

Can't reproduce this in v1.12.3.

@unknownbrackets
Copy link
Collaborator

Okay, it may be this was fixed then. I know we changed some things in shaders.

I'm going to mark this as closed, in that case. Thanks for the update.

-[Unknown]

@unknownbrackets unknownbrackets added this to the v1.12.3 milestone Apr 2, 2022
@NABN00B
Copy link
Contributor Author

NABN00B commented Dec 4, 2022

I've encountered the same rendering glitch again. No game crash involved this time.
image

@unknownbrackets
Copy link
Collaborator

Is this using Vulkan and MSAA? Seems slightly like the Jeanne d'Arc issue.

-[Unknown]

@NABN00B
Copy link
Contributor Author

NABN00B commented Dec 4, 2022

It's using OpenGL and I don't see an option for MSAA anywhere.

@hrydgard hrydgard reopened this Jan 30, 2023
@NABN00B NABN00B changed the title Visual Glitch After Loading Savestate from Bluescreen Visual Glitch After Loading Savestate Jan 31, 2023
@ghost
Copy link

ghost commented Jan 31, 2023

This isn't the same as #13529? We all know sometimes savestate can cause glitches 🤔

@anr2me
Copy link
Collaborator

anr2me commented Jan 31, 2023

This isn't the same as #13529? We all know sometimes savestate can cause glitches 🤔

Could be related, but if this trick still worked:

  1. Launching GE Debugger gets rid of the visual glitch

and able to fix the glitch, that mean there is a way to prevent it from glitching after loading from savestate.

I wondered why simply bringing out GE Debugger could fix the glitch 🤔 did it flushed the cache or something?

@hrydgard hrydgard modified the milestones: v1.12.3, v1.16.0 May 9, 2023
@unknownbrackets
Copy link
Collaborator

The GE debugger will change a few things when it's active:

  • It prevents the multiple prim calls in a row optimization.
  • It skips "fast load" bone matrix optimizations.
  • It prevents the matrix skip-load optimizations.
  • It uses the slow run-loop which should be the same but is technically different code than the fast run-loop.

So mostly it turns off optimizations that interfere with stepping. If it affects the game here in current versions, either we're misdetecting a fast-load matrix situation, or something about reading the prims all in a row is going wrong, I guess.

-[Unknown]

@hrydgard hrydgard changed the title Visual Glitch After Loading Savestate Visual glitch after loading savestate after crash (GTA Vice City Stories) Aug 30, 2023
@hrydgard hrydgard modified the milestones: v1.16.0, v1.17.0 Aug 30, 2023
@NABN00B
Copy link
Contributor Author

NABN00B commented Dec 1, 2023

I'm not sure how to feel about this issue.
I am noticing that sometimes I have the same problem with other apps that use GPU acceleration, with a similar pattern of the exact same visual artifact. The difference is that the artifacts only appear in other apps while switching tasks to them, and they automatically disappear like half a second later.
I have updated my driver several times since I'd opened the issue (new OBS Studio releases force me to update it from time to time)

@hrydgard hrydgard modified the milestones: v1.17.0, Future-Prio Dec 30, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants