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

[VU Rounding Bug] Only backgrounds appear in Sonic Gems Collection - Sonic R's multiplayer modes. #1759

Closed
Aced14 opened this issue Jan 11, 2017 · 18 comments

Comments

Projects
None yet
4 participants
@Aced14
Copy link
Contributor

commented Jan 11, 2017

PCSX2 version:
v1.5.0-dev-1777-gb02cc6e (2017-01-09; b02cc6e).

PCSX2 options:
Defaults.

Plugins used:
Defaults (GSdx32-AVX, LilyPad, SPU2-X, cdvdGigaherz, USBnull, FWnull and DEV9ghzdrk).

Non-default plugin settings:

  • GSdx: All Direct3D11/OpenGL software and hardware modes.
  • LilyPad: Player 2's X button is mapped to a keyboard key.

Description of the issue:
In Sonic Gems Collection, Sonic R's multiplayer modes suffer from a GSdx bug that makes them unplayable. The bug is present in all of GSdx's Direct3D11/OpenGL hardware and software renderers.

Specifically, in all levels, only the background appears in both players' viewports. No foreground objects (such as the level's 3D geometry, player characters, HUDs or pause menus) appear. It should be noted that all of them appear properly in single player.

Any chance GSdx's software and hardware modes could be enhanced to resolve this bug?

GS dump:
Sonic Gems Collection - Sonic R in v1.5.0-dev-1777-gb02cc6e (OpenGL software)

Screenshots:

How to reproduce the issue:

  1. Launch PCSX2.
  2. Open GSdx's plugin settings and select OpenGL's software renderer.
  3. If a second controller isn't connected, open LilyPad's plugin settings and add a keyboard button mapping to allow player 2 to press X.
  4. Full boot the game (its menus are set to the same language as the PS2's BIOS).
  5. From the title screen, press start, decline both memory card setup screens (if they appear), select "GAMES", "SONIC R", press X at the controls screen, press start at the title screen, select "MULTI-PLAYER", "RACE", Sonic as player 1, Knuckles as player 2 and "RESORT ISLAND" as the level.
  6. Once the level has loaded, look for the level's 3D geometry, player characters and HUDs in both players' viewports.
  7. Press start to pause the game.
  8. Look for a pause menu.
  9. Steps 6 and 8 didn't work as expected. In step 6, only the level's background appeared. In step 8, no pause menu appeared.

Last known version to work:

PC specifications:
CPU: Intel Core i7 2600K @ 3.4GHz; GPU: XFX Radeon HD 6970 2GB; GPU driver: Crimson 16.2.1 Beta; OS: Windows 7 SP1.

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

There's a chance that it might not be a GSDX bug if it happens in all modes. Can you try ZeroGS? We should at least see if there's the track appearing the GS through the GSDump.

@trostboot

This comment has been minimized.

Copy link
Contributor

commented Jan 11, 2017

Can confirm it also happens with ZeroGS.

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

it might potentially be a core issue then. Can you try changing the VU's to SuperVU or playing with the rounding and clamping modes for both EE and VU?

@trostboot

This comment has been minimized.

Copy link
Contributor

commented Jan 11, 2017

Fixed with EE round mode Positive or Nearest. Edit: Also fixed with VU round mode either Positive or Nearest independently of EE settings.

Edit: How likely are these to break other things? Given that Sonic R is part of a collection of games on the same disc.

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 11, 2017

try them and find out ;) If you find a setting that fixes it but not the other games, then we can make a gameDB entry to solve the issue.

I'd prefer the "Nearest" option to Positive, if you can.

@ssakash ssakash changed the title [GSdx software/hardware bug] Only backgrounds appear in Sonic Gems Collection - Sonic R's multiplayer modes. [Bug] Only backgrounds appear in Sonic Gems Collection - Sonic R's multiplayer modes. Jan 11, 2017

@refractionpcsx2 refractionpcsx2 changed the title [Bug] Only backgrounds appear in Sonic Gems Collection - Sonic R's multiplayer modes. [VU Rounding Bug] Only backgrounds appear in Sonic Gems Collection - Sonic R's multiplayer modes. Jan 11, 2017

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Jan 12, 2017

@refractionpcsx2 What would you prefer between EE and VU round modes (since @trostboot mentioned adjusting either on their own helps)? Is one generally a better/safer bet to adjust than the other?

Regarding using gameDB entries to target specific ELFs in multi-ELF games, just out of curiosity, is there already a precedent for that?

When I skimmed through GameIndex.dbf just now, the following entry was the closest thing I found to a pre-existing example. But it seems to only produce a disc-wide console warning rather than an automatically-applied fix for the specific ELF it's needed for.

Serial = SCED-51657
Name   = Official Playstation Magazine - Demo Disc 33
Region = PAL-Unk
Compat = 5
[patches = 90C0E5F1]
	comment=Must enable FPU Negative Div Hack gamefix for Dakar 2 Demo
[/patches]
@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 12, 2017

I prefer VU if possible, having the VU modified is more likely to cause graphical glitches and less likely to crash :P

interesting how setting either one to nearest fixes it, unless it transfers a value from the EE to the VU's somewhere.

Just concentrate on the main elf files, as you are only going to run those directly and the emulator will ignore any subsequent ones :)

@trostboot

This comment has been minimized.

Copy link
Contributor

commented Jan 12, 2017

Just concentrate on the main elf files, as you are only going to run those directly and the emulator will ignore any subsequent ones :)

That's the problem, there's 16 full games in this collection, plus another 13 demos. Testing this will be a nightmare and take a while. I don't have any real experience with any of these games outside of Sonic R (because let's be real, when you can play Sonic R, you don't need other Sonic games :p).

@Aced14 If you have spent any time with any of the other games and want to test them, could you note which ones?

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 12, 2017

well as long as the games don't look to be freaking out, we can live with it, if there is founding to be a game later on that has problems, whoever is playing it can disable the automatic fixes :P

So just try the vu rounding set to nearest and go quickly through all the games testing each one for about 5 mins and make sure they seem to work okay, we will call it at that.

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Jan 13, 2017

@trostboot I'm pretty much in the same boat as you with regards to Sonic R vs everything else lol.

@refractionpcsx2 Within the coming days, I'll try quickly going over all of the collection's games for a few minutes apiece (probably with a bigger focus on 3D games) to see if anything seems blatantly wrong in any of them with VU rounding on nearest. If things seem ok, I'll send over a PR to update the gameDB.

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 13, 2017

Awesome, thank you :)

Don't forget any of the other versions of the gems collections (of that's what you have)

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Jan 17, 2017

I ended up testing out VU rounding on nearest in every single game/demo in the NTSC-J version of the collection for a few minutes apiece. Things seemed ok to me.

I did run into a handful of minor graphics bugs in 2-3 games, but they don't appear to have been related to VU rounding. I believe they were bugs in the original games and/or issues with the collection's own emulators (not PCSX2's problem).

@refractionpcsx2 @trostboot Thanks so much for your help :)!

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 17, 2017

Excellent :) good work! I will go through adding vu rounding to "nearest" tonight :)

It is the sonic gems collection, right?

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Jan 18, 2017

@refractionpcsx2 You definitely already know this by now, but I opened PR #1778 just before posting my previous comment in this issue. The game in question is Sonic Gems Collection.

@refractionpcsx2

This comment has been minimized.

Copy link
Member

commented Jan 18, 2017

You are a star, thank you for doing that :)

@dizzzy77

This comment has been minimized.

Copy link

commented Mar 21, 2019

@Aced14 , what region is SCED-51657 from? It seems to be a regional OPS2M variant we're trying to find and preserve at redump.org

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Mar 24, 2019

@dizzzy77 Not sure since I don't own that demo disc. I presume it's a regional variant of Official PlayStation 2 Magazine Demo 33.

The only reason I brought it up was because I was looking through GameDB (GameIndex.dbf) for examples of multi-ELF games with patches that appeared to be intended for a specific ELF. The only relevant entry I found was for that demo disc.

Maybe @refractionpcsx2 would know? Looks like he initially added SCED-51657 to the GameDB in commit 42a4c7d.

@Aced14

This comment has been minimized.

Copy link
Contributor Author

commented Mar 27, 2019

@dizzzy77 Here's the PCSX2 forum thread that lead to commit 42a4c7d:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.