Lyall / MGSHDFix

A fix that adds custom resolutions, ultrawide support and much more to the Metal Gear Solid Master Collection.
MIT License
380 stars 8 forks source link

Letterboxing still present in MGS2 & MGS3 - 1440p #2

Closed ShizCalev closed 8 months ago

ShizCalev commented 8 months ago

2023-10-25_19-39-38-METAL_GEAR_SOLID2-METAL_GEAR_SOLID_2_SONS_OF_LIBERTY MGSHDFix.log

2023-10-25_19-32-22-METAL_GEAR_SOLID3-METAL_GEAR_SOLID_3_SNAKE_EATER 2023-10-25_19-30-07-METAL_GEAR_SOLID3-METAL_GEAR_SOLID_3_SNAKE_EATER MGSHDFix.log

Noticed someone else reported the same issue on this forum too https://www.resetera.com/threads/metal-gear-solid-master-collection-vol-1-pc-performance-thread.777830/page-5#post-113930219

Lyall commented 8 months ago

Hmm, I'm not getting that issue on my end. I think there's some odd things going on with the framebuffer setup. Or the game is displaying incorrectly in fullscreen. You could try running SpecialK with the game, it might let it display correctly. Either way I'll look into this further when I can.

Here's a 1440p shot on my end. 1440p

emoose commented 8 months ago

The game does a strange thing where it checks the resolutions your display supports, then seems to scale the 1280x720 width/height to match the ratio of the largest resolution reported from it, which caused black bars for 4K users before: https://steamcommunity.com/app/2131650/discussions/0/3878221733380149058/

It might be a similar issue here too, I added a patch for that in the generic resolution mod, maybe worth testing if it goes away with that: https://steamcommunity.com/sharedfiles/filedetails/?id=3059974819 (happy for that to be added here too, or maybe it's worth looking into a better way for it)

Lyall commented 8 months ago

The game does a strange thing where it checks the resolutions your display supports, then seems to scale the 1280x720 width/height to match the ratio of the largest resolution reported from it, which caused black bars for 4K users before: https://steamcommunity.com/app/2131650/discussions/0/3878221733380149058/

It might be a similar issue here too, I added a patch for that in the generic resolution mod, maybe worth testing if it goes away with that: https://steamcommunity.com/sharedfiles/filedetails/?id=3059974819 (happy for that to be added here too, or maybe it's worth looking into a better way for it)

That's some great info, thanks @emoose. I wonder if at 4K it's maybe users with TVs that have a max resolution of 4096x2160.

When looking further on my end, when I set my desktop res to 2560x1440 and run the game at that forced resolution, the framebuffer resolution reads as 3440x1440 (my max resolution) in SpecialK. With the instruction from your mod NOPd, the framebuffer resolution in SpecialK reports as 2560x1440.

ShizCalev commented 8 months ago

The game does a strange thing where it checks the resolutions your display supports, then seems to scale the 1280x720 width/height to match the ratio of the largest resolution reported from it, which caused black bars for 4K users before: https://steamcommunity.com/app/2131650/discussions/0/3878221733380149058/

It might be a similar issue here too, I added a patch for that in the generic resolution mod, maybe worth testing if it goes away with that: https://steamcommunity.com/sharedfiles/filedetails/?id=3059974819 (happy for that to be added here too, or maybe it's worth looking into a better way for it)

You ABSOLUTE chad, that fixed the issue. SpecialK was reporting that my framebuffer resolution was 1365x720. Looks like yours works fine for MG1/MG2 & MGS3, but MGS2 crashes when it's applied.

Yes, I do have a TV, and yes, its max res is 4096x2160 (17:9) while I'm set to 2560x1440(16:9). Hit the nail on the head. image I rock it in 1440 though for 120Hz refresh rate vs 60Hz at 4k. image

ShizCalev commented 8 months ago

To note, in addition to MGS2 & MGS3, the issue also affects MG1/MG2SS (the MSX games.)

MGS1 and the NES games do NOT have this issue.

curryking3 commented 8 months ago

I have the same issue.

The game is likely picking the aspect ratio based on the highest supported resolution aspect ratio, in the case of my 4K TVs with native aspect ratio of 16:9 and 3840x2160p native resolution, the highest resolution supported is actually above this with a slightly wider aspect ratio with 4096x2160p.

image

ShizCalev commented 8 months ago

I have the same issue.

The game is likely picking the aspect ratio based on the highest supported resolution aspect ratio, in the case of my 4K TVs with native aspect ratio of 16:9 and 3840x2160p native resolution, the highest resolution supported is actually above this with a slightly wider aspect ratio with 4096x2160p.

Someone shared this steam guide over on Reddit to override what resolutions your monitor reports to the display drivers, it fixed the issue outright for me and also corrected issues in a few other games I have. Now I can go back to using MGSHDFix without any other patches needed. :) https://steamcommunity.com/sharedfiles/filedetails/806615157

curryking3 commented 8 months ago

I have the same issue. The game is likely picking the aspect ratio based on the highest supported resolution aspect ratio, in the case of my 4K TVs with native aspect ratio of 16:9 and 3840x2160p native resolution, the highest resolution supported is actually above this with a slightly wider aspect ratio with 4096x2160p.

Someone shared this steam guide over on Reddit to override what resolutions your monitor reports to the display drivers, it fixed the issue outright for me and also corrected issues in a few other games I have. Now I can go back to using MGSHDFix without any other patches needed. :) https://steamcommunity.com/sharedfiles/filedetails/806615157

It is a good possible fix and I'm sure works on most, but CRU sometimes causes display problems too, at least it just did for me, I had to reset the changes to even get my display to show anything again!

Just having a forced aspect ratio in the mod would be best really, that way it wouldn't require playing with EDID of displays.

Lyall commented 8 months ago

Okay I've added a framebuffer fix thanks to @emoose kindly sharing their hard work. I'll be doing a bit more testing with it and then the fix for this issue should come in the next build. It also addresses issue #6.

Lyall commented 8 months ago

Since this is related to the other issue can @ShizCalev and/or @curryking3 try out this test build of v0.6? It includes @emoose's fixes and should theoretically address the issue.

Reonu commented 8 months ago

@Lyall Not sure where to ask this: Am I supposed to enable "Fix Aspect Ratio" and "Fix FMVs" if playing on a non-ultrawide resolution, such as 2560x1440?

ShizCalev commented 8 months ago

Since this is related to the other issue can @ShizCalev and/or @curryking3 try out this test build of v0.6? It includes @emoose's fixes and should theoretically address the issue.

Confirming that it is fixed in 0.6. Thanks for implementing that!

Lyall commented 8 months ago

@Lyall Not sure where to ask this: Am I supposed to enable "Fix Aspect Ratio" and "Fix FMVs" if playing on a non-ultrawide resolution, such as 2560x1440?

In the next build they will be automatically disabled if the fix detects that you're running at 16:9. So basically you won't need to worry about editing those settings.

ShizCalev commented 8 months ago

Resolved by https://github.com/Lyall/MGSHDFix/commit/ffbfbb2e1c76b1fd0f315e63f47a6eec24d1ef1d

curryking3 commented 8 months ago

Working great, appreciate your work, nice fix!

20231027190829_1 20231027190921_1 20231027190932_1 20231027190934_1

ShizCalev commented 8 months ago

@Lyall If it's not too much of a bother, MG1 / MG2 (the MSX games) also have the same exact aspect ratio issue - it also does benefit from having a high resolution patch (rendering at native resolution works with MGSResolutionPatch currently), would love to see a fix implemented for it too with your mod so I can just symlink the files in a single folder to update all 3 games' ASI's at a single time. ♥

curryking3 commented 8 months ago

Tried to play this on 16:10, looking really good, I think the aspect ratio is preserved with the full 16:10 window, the only thing that is stretched out to 16:10 are the UI elements and HUD and subtitles and credits for example, overall it looks excellent, but would be cool if there were 3 different possible options:

  1. preserved 16:9 viewport (no fix needed for UI elements)
  2. 16:10 viewport with 16:9 scaled HUD
  3. 16:10 viewport with 16:10 stretched HUD (what is currently present)

Lastly probably is more of a feature request, but a custom internal resolution setting would be amazing, high end PCs can probably run this at 8K internal resolution or higher 😎