-
Notifications
You must be signed in to change notification settings - Fork 2.6k
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
Game INI updates #10247
Game INI updates #10247
Conversation
Updated settings for Eternal Darkness, Epic Mickey 2 and earlier Just Dance games. Added missing settings for Just Dance spin-offs and compilations.
Ping |
Are we okay with disabling FastTextureSampling since it'll have a performance impact? Are these games that improve with FastTextureSampling throughout the game or only on intro FMVs? |
Just dance uses FMVs throughout the game for the dancers. That said, only the first few Just Dance titles use Bink Video if I recall correctly, and those are the ones where manual texture sampling doesn't necessarily fix everything, so it might not necessarily be helpful. |
There are 8 Just Dance games that are affected by FastTextureSampling. From those 8, 5 becomes flawless, the remaining 3 aren't completely fixed but the issue is greatly reduced, so I think it's worth enabling that setting by default... |
I took a look through my notes, and yeah, that does seem to be consistent with what I found. That said, I did not find Just Dance Disney Party 2 or Just Dance Kids 2014 to use Bink Video (it's not on the box), so I wouldn't expect Force Texture Filtering to do anything for them. Same deal with Epic Mickey 2 (and the original): I didn't see Bink Video on the box, so Force Texture Filtering shouldn't do anything. I would also expect any game where Force Texture Filtering does cause problems with FMVs to also be improved by Manual Texture Sampling, so it's odd that you only are enabling it for some. (It's possible that e.g. Just Dance Kids 2014 needs safe texture cache only, and force texture filtering has no effect on it.) Also, you're missing a very important game: The Smurfs: Dance Party apparently uses Bink Video too (it's even explicitly noted in the list), and presumably The Smurfs: Party Pack is also affected since it bundles Dance Party. |
If you're assuming that only FMVs from games that uses Bink video breaks with Force Texture Filtering, please don't, that's definitely not the case. I've tested every game referenced on this PR separately and only disabled Force Texture Filtering or enabled Manual Texture Sampling when required. I didn't touch the INIs from Smurfs Dance Party and the bundle because I couldn't test those games, but they likely requires Force Texture Filtering disabled as well. FMVs from Epic Mickey 2 are completely broken when Force Texture Filtering is enabled, same deal with the first Epic Mickey, but it already has Force Texture Filtering disabled on its INI on master. I haven't digged through the filesystem of the game discs so I can't confirm if they really use Bink video or not, but Force Texture Filtering definitely affects the FMVs of both. About the Just Dance franchise, the Wii games run on 3 different engines (4 if you consider Just Dance 2014 and up, but it's out of the scope of this PR as they're not affected neither by Force Texture Filtering nor Manual Texture Sampling):
My test methodology was starting a fresh portable copy of Dolphin with the bundled Game INIs (Sys\GameSettings) removed, then enabling the settings touched by this PR one by one until the issues were gone. I've also tested Safe Texture Cache separately of Force Texture Filtering and only enabled both when required. Hope this clears up the raised points... |
No, there are definitely other ones (EA titles, e.g. those using VP6 (though other codecs also have issues)), I know that. But if Force Texture Filtering is causing issues, then that usually means it's doing something with indirect textures where precision matters and filtering/interpolating textures breaks it. On the other hand, I remembered one other aspect to this: with Bink (or at least some revisions of Bink), the issue only happens if the video's resolution does not match the resolution the video is being played at. For instance, Shrek the Third's intro video is 640 by 360, but is played back at 640 by 480, which causes lines in some places on Nvidia only (no lines appear on Intel); however, the logo videos (e.g. activision's logo) are at the correct resolution and thus no lines appear on them. In all cases, force texture filtering causes issues. So that's probably the cause of force texture filtering but not manual texture sampling being needed (and that same thing might also apply to mobiclip?) If you've actually gone through and tested it, that's probably better than the approach I would have taken of just applying the safest settings to all games with the bink logo on the box or that I have another reason to think uses bink (since there are several hundred of them, though note that only games released after about 2006 are affected since before then color conversion was done on the CPU instead of the GPU). |
Is there anything else I can do to move this PR forward? Kinda puzzled on how long a few Game INI changes are taking to get approved... |
Probably because it's 15ish different games and no one actually has all of them* to check if the changes are appropriate. And GitHub's UI is not great for signalling partial approvals. (*okay maybe JMC does but you know what I'm saying, right?) |
I think all of the changes make sense, but long term I really want to change how gamesettings are applied. A lot of these decision are 100% correct, but I'm not sure if they're right for Android, or users that are on AMD that don't need manual sampling, etc. I don't see a better solution right now. |
This is also somewhat the case with gamesettings applied in the past too, where there is often a tradeoff being made between accuracy and performance. Without the settings being able to be conditionally set, I'd also say this is positive change on balance. |
I'm writing up a proposal to potentially address this long term, but for now I say we just get the games rendering as correctly as possible. |
This PR provides a small batch of Game INI updates:
ABBA: You Can Dance and Michael Jackson: The Experience: removed Anisotropic Filtering override as it doesn't cause visual glitches anymore.
Epic Mickey 2, Just Dance Kids, The Black Eyed Peas Experience, The Hip Hop Dance Experience: disabled "Force Texture Filtering" to avoid FMV corruption.
Eternal Darkness: replaced Deterministic GPU with Single Core mode and disabled "Store XFB Copies to Texture Only". Single Core fixes both the game hang after the Edgar Allan Poe quote as well as the aspect ratio distortion when entering/exiting the pause menu (Determinist GPU only prevented the hang), while "Store XFB Copies to Texture Only" fixes the purple transitions at the start/end of a chapter.
Just Dance 1, 2, 3, Best Of, Greatest Hits, Summer Party, Wii and Wii 2: removed Safe Texture Cache and Anisotropic Filtering overrides as they don't cause visual glitches anymore. Enabled "Manual Texture Sampling" as it fixes vertical lines on dancers and loading screens (Just Dance 2, Wii and Summer Party are still affected but this option makes the lines less noticeable).
Just Dance Disney Party, Disney Party 2, Kids 2 and Kids 2014: disabled "Force Texture Filtering" to avoid FMV corruption and enabled Safe Texture Cache to fix missing text and stuttery video playback.