Project

General

Profile

Actions

Emulator Issues #9024

closed

Add an option to override correct aspect ratio/enable square pixels

Added by BFG1992 about 9 years ago. Updated 9 months ago.

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

0%

Operating system:
N/A
Issue type:
Feature request
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:
5.0-20785

Description

Game Name?

Any

Game ID? (right click the game in the game list, properties, info tab)

Any

MD5 Hash? (right click the game in the game list, properties, info tab, MD5 Hash: Compute)

N/A

What's the problem? Describe what went wrong.

As the title says. The main reason to do this is that some games were not correctly configured/not meant to be played with correct AR. Example is Mario Strikers Charged, see attached screenshot. Though these stretches are pretty subtle (in comparison to what was in SSBM before the AR fix) and may not be seen with naked eye, they are still wrong game-wise, no matter how accurately they are emulated.

What steps will reproduce the problem?

Launch a game like Mario Strikers Charged or some other games with such a "right-wrong" AR.

Which versions of Dolphin did you test on? Does using an older version of Dolphin solve your issue? If yes, which versions of Dolphin used to work?

All of them after 4.0-7138 are affected.

What are your PC specifications? (CPU, GPU, Operating System, more)

Intel Core i3-3120M
NVIDIA GeForce GT645M
6 GB of RAM

Is there any other relevant information? (e.g. logs, screenshots,
configuration files)

You guys have an open PR here: https://github.com/dolphin-emu/dolphin/pull/2791
You can merge it, right? Please? :)


Files

Screenshot.png (982 KB) Screenshot.png Mario Strikers charged incorrect AR BFG1992, 10/09/2015 12:14 AM
IMG_20210921_125956.jpg (1.93 KB) IMG_20210921_125956.jpg ShadyGuyJose, 09/23/2021 10:36 AM
IMG_20210921_130016.jpg (2.25 KB) IMG_20210921_130016.jpg ShadyGuyJose, 09/23/2021 10:36 AM
GSNE8P_2021-09-21_13-04-35.png (13 KB) GSNE8P_2021-09-21_13-04-35.png ShadyGuyJose, 09/23/2021 10:36 AM
tex1_128x128_44cea5eaabf42269_14.png (14 KB) tex1_128x128_44cea5eaabf42269_14.png ShadyGuyJose, 09/23/2021 10:36 AM

Related issues 2 (0 open2 closed)

Has duplicate Emulator - Emulator Issues #11609: Aspect ratio switching problem. Duplicate

Actions
Has duplicate Emulator - Emulator Issues #13040: GameCube games don't properly render at 4:3 on the Steam DeckDuplicate

Actions
Actions #1

Updated by JosJuice about 9 years ago

  • Status changed from New to Questionable
  • Issue type changed from Bug to Feature request
Actions #2

Updated by JMC4789 about 9 years ago

You want this: https://github.com/dolphin-emu/dolphin/pull/2796

I see no reason why not to merge it, but other people disagree with me. It fixes your issue as well as acts a full enhancement, always displaying the aspect ratio the game wants, rather than "correct"

Actions #3

Updated by BFG1992 about 9 years ago

Wow, that looks wonderful. I wonder how exactly that heuristics part is working though.

I've read through comments, and I kinda understand phire's point, but I'm still thinking that this option should be implemented, because that would eliminate a lot of hassle of manually switching AR modes while changing games. Just not make this on by default, I guess. In any case, most users won't notice this - as very few ones noticed incorrect AR in many games in old pre-4.0-7138 builds.

Actions #4

Updated by phire about 9 years ago

The game, is being emulated correctly.

If we add this option people are just going to have holy wars over what is the more correct way to play the game. The way the developer (potentially) intended when they wrote the code, or the result they saw on the screen when they tested that code (which is also what QA approved)

It's not like Nindendo didn't give the developers extensive documentation describing the correct aspect ratio.

Actions #5

Updated by BFG1992 about 9 years ago

Well, holy wars is possible, so what? Anyone has their opinions on everything.

I still don't get how wrong could it be to give people choice between those AR modes, and to make a "smart" option which will be off by default and not recommended because of it's questionable nature.

Actions #6

Updated by phire about 9 years ago

For all we know, the developers of Super Mario Strikers drew a circle, realized they had the wrong aspect ratio, decided it actually looked quite nice as an oval and never fixed the aspect ratio problem.
I really doubt the QA team missed the mistake. The game was probably signed of for release with much larger known issues.

A bug fix is not an "Enhancement" as the console hardware was completely capable at getting this right. It's a mod at best, hack at worst and dolphin should not have an option to automatically mod/hack games.

Dolphin does need better modding support, things like disk overlays, function hooking, shader overrides and texture replacement by filename so groups of people can make and distribute mod packages for dolphin. That would be the proper place for such a bug fix.

Actions #7

Updated by BFG1992 about 9 years ago

dolphin should not have an option to automatically mod/hack games

Ok, so let's remove: non-native resolutions and EFB scaling, anisotropic filtering, antialiasing, post-processing effects, per-pixel lighting, widescreen hack... Hell, we can even remove hardware video backends - they are not accurate enough!

I'm exaggerating it now, of course. But you do understand (better than me) that Dolphin is already full of hacks. Nice, useful hacks which makes it more enjoyable to play games in Dolphin rather than on a real console! How different is a smart AR from a widescreen hack? The latter is actually worse - in many games it stretches interface and reveals clipping!

Dolphin isn't an experimental cycle-accurate emu (like XEBRA, Exodus or higan/bsnes are), but the only emu that can play GC/Wii games really good, and it's really popular among people who just want to play games - so why to pursue such an accuracy to THAT extent?

What do I want is to have a nice, useful and optional tool to make games look in the right AR, where circles are circles, and not ovals. And if this will be done in a smart way for the most games - I double want it! I'm sure I'm not only one who wants that.

Actions #8

Updated by phire about 9 years ago

Some people (mostly neobrain) would love nothing better but to remove all enhancements like EFB scaling, anisotropic filtering, antialiasing etc.

Enhancements make coding accuracy improvements hard. Because when you make an accuracy improvement, you have to make sure it breaks none of the enhancements, which might have relied on an assumption that is no longer true.
An enhancement may take a few minutes to implement now, but it can cost hours and hours of maintenance time later. So we need to be careful about what enhancements we add.

For the sake of the sanity of current and future dolphin developers, the line has to be drawn somewhere, and I'm drawing it here. Right between "enhancements that were simply not possible on the original hardware (like everything you mentioned)" and "automatic bug fixes for things which the developers could have taken an hour to read the manual and tweak their settings to get it correct."

If you want, I could definitely see your point that widescreen hack is on the wrong side of that line and remove it.

Actions #9

Updated by BFG1992 about 9 years ago

when you make an accuracy improvement, you have to make sure it breaks none of the enhancements
But why? If an accuracy improvement is important, why couldn't you just leave enhancements to be fixed by someone who cares about them? That's the power of open development, no?

I could definitely see your point that widescreen hack is on the wrong side of that line and remove it

That's the thing you should discuss with other developers, not me :) But if you do that, people will probably become really upset :)

Actions #10

Updated by BFG1992 about 9 years ago

Ah, forgot to press Enter a couple of times. Too bad there's no comments editing.

Actions #11

Updated by JMC4789 about 9 years ago

There is comments editing on our new issue tracker at least for me. IF you want to tell me what you want edited, I can go ahead and chagne it for you.

Actions #12

Updated by BFG1992 about 9 years ago

Umm... I can't find it. Can you point it out for me, please?

Actions #13

Updated by JMC4789 about 9 years ago

It may not be enabled for regular users (due to people deleting evidence/etc. that could be considered harassment, etc. Legendary double etc. right there.) I can edit it for you, though.

Actions #14

Updated by BFG1992 about 9 years ago

Ah, I understand.
I messed up with quotes in my last response to phire, so I wanted to fix it. But I guess it is understandable anyway, a fix will only make my message properly looking. Fix it, if you want :)

Actions #15

Updated by JMC4789 about 9 years ago

Fixed. Anyway, to add to the discussion, the user side of me is heavily in favor of smart aspect ratios someday. The dev side of me says they need to be implemented in a more harmless way to ease phire's fears. But, I definitely want the feature.

Actions #16

Updated by BFG1992 about 9 years ago

Thanks, but my first indent (beginned by "But why? If an accuracy..." and on) needs to be unquoted too.
Also, given the fact that you can edit messages, maybe you could delete our offtopic conversation about this comments thing (and my "forgot to press Enter message" too)? :)

As of an issue - I totally agree with you.

Actions #17

Updated by eckso almost 9 years ago

I second this addition. It's a simple "AR Ratio" text with a float checkbox. Implementation is also very simple. I certainly want to play games the "correct way", rather than screwed up. As shown here (https://forums.dolphin-emu.org/Thread-correct-aspect-ratio-option?pid=380580#pid380580) there are MANY games that don't play fine even with "SmartAR". This is in my opinion a feature as relevant as "IR", because it affects/improve gameplay (perspective, depth...) in a major way.

Actions #18

Updated by JosJuice over 4 years ago

Actions #19

Updated by vlad54rus about 3 years ago

Sonic Adventure 2: Battle also affected by wrong aspect ratio when running in 60 Hz mode:
https://i.imgur.com/IAJrABb.png
https://i.imgur.com/XDyGiDH.png
50 Hz mode displays correctly, as well as Dreamcast and PC versions seem to do.
Even if we assume that Dolphin behavior is correct and it's a game developers mistake, adding a custom aspect ratio option shouldn't be hard, should it (where we can define aspect ratio as a float value, for example)?

Actions #20

Updated by ShadyGuyJose about 3 years ago

vlad54rus wrote:

Sonic Adventure 2: Battle also affected by wrong aspect ratio when running in 60 Hz mode:
https://i.imgur.com/IAJrABb.png
https://i.imgur.com/XDyGiDH.png
50 Hz mode displays correctly, as well as Dreamcast and PC versions seem to do.
Even if we assume that Dolphin behavior is correct and it's a game developers mistake, adding a custom aspect ratio option shouldn't be hard, should it (where we can define aspect ratio as a float value, for example)?

It's not even a dev mistake. The developers purposely and correctly took into account that a CRT would stretch the internal resolution they were rendering at to 4:3 (or very, very close). In my forum thread regarding this issue, we can see that the menu circles are circles when the textures are dumped, circles when I take a photo of the game running on a CRT, and ovals in Dolphin. The developers got it right. Dolphin just isn't taking into account the fact that they were actively compensating for an expected stretch on CRT displays. That detail should be emulated (with a toggle for people who'd rather have square pixels regardless).
https://forums.dolphin-emu.org/Thread-feature-request-aspect-ratio-options

Actions #21

Updated by phire about 3 years ago

The developers purposely and correctly took into account that a CRT would stretch the internal resolution they were rendering at to 4:3 (or very, very close).

Dolphin has gone to extreme lengths to correctly emulate the natural stretching that CRT monitors do. This whole feature request is asking for a way to bypass that and make a game show up differently to a real CRT.

If you have a found a game which provably shows up with a different aspect ratio on a real CRT (or even a modern LCD TV) to how it appears in dolphin, please file a separate bug report.

If you just want to fix a mistake that a game developer made, it would be better to develop a cheat-code.

Updated by ShadyGuyJose about 3 years ago

Please read the topic I linked to. Nevertheless, here's the texture dump, Dolphin screenshot, and CRT photo:

Actions #23

Updated by ShadyGuyJose about 3 years ago

I'd also like to add that this is not an isolated case. I've tested 3 games that, to varying amounts, look squished in Dolphin. "Sonic Adventure 2: Battle" is the most egregious example, but "Medabots Infinity" has it too, to a noticeable degree, and "Pokémon Colosseum" has an slight squish. All look right when stretched to 4:3 with a custom shader @vlad54rus gave me (or when screenshots are stretched to 4:3 by any image editing app).

Actions #24

Updated by phire about 3 years ago

Not in this issue report, a new one. With exact details of how to replicate, titled something like:

"Sonic Adventure 2 PAL has an incorrect aspect ratio in dolphin when compared to a real TV when both are set 60HZ mode"

Also, the attached images are too small?

Actions #25

Updated by ShadyGuyJose about 3 years ago

Sorry, I saved them from the icons and not the actual pictures in the other topic. I'll open a new issue and post the correct ones. However, I'd like to stress that this is not limited to SA2B, nor to the PAL version (I'm using NTSC). It affects any and every game I've tested that renders with non-square pixels. I've also noticed that, when run on a Wii, connected through component cables to my LCD and set to "Original" aspect ratio (which, in my TV, means square pixels), I get the same result as Dolphin, which means this really is up to CRT stretch. I'll post everything on a new issue.

Actions #26

Updated by eckso about 3 years ago

phire wrote:

Not in this issue report, a new one. With exact details of how to replicate, titled something like:

"Sonic Adventure 2 PAL has an incorrect aspect ratio in dolphin when compared to a real TV when both are set 60HZ mode"

Also, the attached images are too small?

Add Sonic Adventure DX and Star Fox: Assault to the list. link[https://forums.dolphin-emu.org/Thread-game-configuration-ini-s?pid=491723#pid491723] and link[https://forums.dolphin-emu.org/Thread-correct-aspect-ratio-option?pid=380580#pid380580]. They were bad ports. Shows correct at 10:6 ratio.

Actions #27

Updated by phire about 3 years ago

Add Sonic Adventure DX and Star Fox: Assault to the list

They were bad ports

To be clear: Are we adding these to the list of games which have the wrong aspect ratio in some situations, even on real hardware?

Or the list of games which dolphin displays the pixel aspect ratio significantly different to real hardware?

Actions #28

Updated by eckso about 3 years ago

First one. They are bad ports, display wrong on real hardware and Dolphin (globally, not in some situations). Typo, correct aspect ratio for these games are 14:9. I will make a shader to fix them for the time being.

Actions #29

Updated by phire about 3 years ago

A shader is a decent solution for now.

Once dolphin has a scripting API, it might be possible to create a script that tries to automatically fix mistakes in the original game like this.

But I don't think it's worth adding complexity to dolphin itself to solve this type of issue.

Actions #30

Updated by ShadyGuyJose about 3 years ago

eckso wrote:

First one. They are bad ports, display wrong on real hardware and Dolphin (globally, not in some situations). Typo, correct aspect ratio for these games are 14:9. I will make a shader to fix them for the time being.

I've already created a new issue for this. I assume those cases aren't the exact same, since Sonic looks fine on real hardware (unless played on an LCD that uses 1:1 pixels when set to Original aspect ratio, as I've said earlier).

https://bugs.dolphin-emu.org/issues/12684

Actions #31

Updated by JosJuice about 2 years ago

Actions #32

Updated by JosJuice 9 months ago

  • Status changed from Questionable to Fixed
  • Fixed in set to 5.0-20785
Actions

Also available in: Atom PDF