Project

General

Profile

Actions

Emulator Issues #8815

closed

XFB Regression

Added by Bighead.0 almost 9 years ago.

Status:
Duplicate
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Xenoblade Chronicles - SX4E01

Since PR 2731 (Dolphin 4.0-6988), virtual and real XFB have framerate issues in Xenoblade Chronicles. The output fluctuates from smooth to extremely choppy (especially when viewing the distance), but Dolphin never stops reporting 30 FPS. "Jittery" may be a better description.

It can be reproduced simply by enabling virtual or real XFB, and running around Colony 9 (or anywhere for that matter).


Related issues 1 (0 open1 closed)

Is duplicate of Emulator - Emulator Issues #8701: Progressive Scan causes certain games to drop frames with XFB (Virtual or Real) EnabledFixed

Actions
Actions #1

Updated by JMC4789 almost 9 years ago

  • Status changed from New to Duplicate

That's because progressive scan is actually working in Wii games now. Duplicate of another issue. To work around, disable progressive scan (there should be no visual difference in Dolphin.)

Actions #2

Updated by Bighead.0 almost 9 years ago

Hmm, progressive scan is disabled yet it still happens. I tested it a bit more and the only work around I can find is unchecking "Store EFB Copies to Texture Only".

Actions #3

Updated by Bighead.0 almost 9 years ago

Yeah I'm not certain they are related (but I could be wrong!), unless progressive scan is being forced on for this game. It's unchecked and set to false in the ini. Forcing EFB to RAM is the only way I can get the stuttering to stop.

And while I'm on the subject of EFB to Texture/RAM, it seems OpenGL is capable of something D3D is not. When Scaled EFB is enabled and using EFB to RAM in D3D, certain effects are not upscaled correctly, but they are in OpenGL.

D3D + EFB to RAM (or Texture) + Scaled EFB Copy
http://i.imgur.com/5GjCl7l.jpg

OpenGL + EFB to RAM + Scaled EFB Copy
http://i.imgur.com/2klAt6b.jpg

There are two lighting effects here: light from the walls, and light from the Monado III. IR above 1x causes distortion in both backends, but EFB to RAM can correctly upscale it in OpenGL. I'm not sure if this is an actual issue or a limitation in D3D, so I didn't make a report for it until I'm certain.

Actions #4

Updated by JMC4789 almost 9 years ago

I looked up the build that affected it, I'm certain it's the same issue.

Actions #5

Updated by Bighead.0 almost 9 years ago

Alright I'll accept that it's the same issue because it started with the progressive scan "PAL television" change, the behavior appears to be similar between the games, and I don't have any insight into how Dolphin actually works. What I don't understand is why the conditions between Xenoblade and the others seem to be different for some reason.

Xenoblade has the issue with or without progressive scan enabled, and it can only be fixed with EFB to RAM? The stuttering also seems much more intense than the other games affected by this issue, and only happens in intervals, meaning there are periods of "smoothness" where the framerate is correct.

Super Mario Galaxy, System Menu, and Smash Bros Brawl. only has the issue with progressive scan enabled, and it can't be fixed with EFB to RAM. It also doesn't look so much like stuttering as it does the framerate is almost perfectly halved, and there are no periods of "smoothness".

Where I'm confused is why is it affecting Xenoblade when it's disabled (unless it's forced on for this game?). And why does EFB to RAM fix it, but not in the other games? Sorry to ask annoying questions, I'm just curious is all. I imagine when it is ultimately fixed it won't even matter why the conditions differ.

Actions

Also available in: Atom PDF