-
Notifications
You must be signed in to change notification settings - Fork 119
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
Ultrawide support #259
Ultrawide support #259
Conversation
According to [Wikipedia](https://wikipedia.org/wiki/21:9_aspect_ratio) 21:9 is just a marketing term. The real aspect ratio I wanted is 64:27, so terminology was changed accordingly. A few messages were added to explain this to the final user.
I dont like this PR (and its not your fault). |
Also btw a change like 043c679 would need to happen upstream |
I also think that this should be implemented differently, but I tried make the change respecting the way it was already implemented.
Oh, you're right, I'll see what can I do there. |
Ye, I noticed that ;) |
And what about just leaving a "4:3 Resolution" selector and a The The |
Add resolutions other than 16:9 to this option, specifying the aspect ratio on it's label. Also change "16:9 adjusted" for "Widescreen adjusted" in the "Aspect ratio" setting. Selecting this will infer the aspect ratio based on the selected widescreen resolution.
I like that more, Will gather some opinions |
Something like this? I undid the settings change, so it has the same options, but it still provides compatibility with wider screens. |
I think they are correct, but I can remove them if you prefer it. |
Yea please do i think they ruin the pacing of the sentence. |
Done. Do you suggest any more changes? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be good to go otherwise, I will push it to a branch tomorrow and let a few ppl test. if all works out I will merge.
Not sure if i missed some behaviour.
Done both changed. Anything else? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
See topic
Did a gliden rebase that I am gonna push later and also added this PR on top of it on a branch https://git.libretro.com/libretro/mupen64plus-libretro-nx/-/pipelines/2831 |
I tested the artifact in that page, and also I compiled and tested that code myself in my machine, just to be sure. Both works without problems for me. |
@AngheloAlf a bug i found, if you select 16:9 aspect (non adjusted) you dont calculate the aspect ratio leading to a 4:3 like image output https://git.libretro.com/libretro/mupen64plus-libretro-nx/-/blob/develop/libretro/libretro_core_options.h#L134-139 All the settings I have hooked up under the hood so u just need to set it right (as you found out ;-)) |
That's weird, it should be calculated here:
Yeah, you're right. I don't know how I didn't think about that. I'll change it.
I have been playing with this enabled (6x I think) with no problem, but I'll test it anyway and look up for some side effect.
Oh. Why? I thought the cached interpreter were slower. I remember reading somewhere about changing the TLB exceptions option when playing rando, so I'll look up that option too. Thanks |
Thats 16:9 tho and its a ultrawide resolution ;) Dont forget this is the "wide" option yet, so we need to calc it.
On PC? Shouldnt be significant and yea, because of the dynarec Issues, the TLB option is just a hack so you can basically save & restart (read: close content and start, otherwise it wont fix itself) |
Btw for reference, this is the libretro aspect ratio.
So my suggestion now is remove the "forced 16:9" (== 2) and replace with "Stretch" (== 0), as seen here mupen64plus-libretro-nx/GLideN64/src/Config.h Lines 94 to 100 in 8a92a86
Keep 4:3 what it is and then keep how it is for "adjusted" |
For visual reference, this is how I see the game in "16:9" aspect ratio with "1920x1080" selected:
That could explain the problem. I'll test that in a moment. |
Also might as well call "16:9" now "Wide (Stretched)" |
Also I guess it might be confusing with how it was named before for you, but 16:9 always meant set resolution, stretched and adjusted always means widescreen hack. |
A bit 😅. I think the naming was fine if we only consider there were mainly two aspect ratios. |
Scaling the aspect ratio further would be frontend business IMO. (Instead of "Core provided" in RA) |
But why someone would use it with ultrawide... good question xD |
Works with no issues for me (both artifact and compiling myself). |
There can be a few nits for documentation that i can think of, like annotating the types i quoted but this looks good to me and testing passes. |
By annotating the types, you mean change some magic numbers for something less "magic"? For example, use this enum: mupen64plus-libretro-nx/GLideN64/src/Config.h Lines 94 to 100 in 8a92a86
Like this: ![]() (i know it wont work because it is c++ code, but that is the idea)
Besides that detail, I think I'm ready. |
Yes, just |
Remove the Config:: |
Ups. Fixed 😅 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this backfires, blame the beer :P
Thanks for this |
Thanks to you! Have a great day :3 |
@AngheloAlf I totally forgot, the stretch thing is to support widescreen via game patches ;) |
Ohh, that make sense. |
http://www.gamepilgrimage.com/content/games-widescreen-support-standard-definition |
Hi!
This change adds support for 64:27 aspect ratio, oftenly labeled as 21:9 as a marketing term.
Add the
64:27 adjusted
option to theAspect Ratio
in-menu option, and adds a64:27 Resolution
in-menu option to let the user select the resolution for this aspect ratio.Some comparison screenshots:
More comparison screenshots can be seen here.
Tested on RetroArch 1.9.0, Pop!_OS 20.04, using a Zelda OoT randomized rom.