Dolphin, the GameCube and Wii emulator - Forums
Ability to change built-in Downscaling? - Printable Version

+- Dolphin, the GameCube and Wii emulator - Forums (https://forums.dolphin-emu.org)
+-- Forum: Dolphin Emulator Discussion and Support (https://forums.dolphin-emu.org/Forum-dolphin-emulator-discussion-and-support)
+--- Forum: General Discussion (https://forums.dolphin-emu.org/Forum-general-discussion)
+--- Thread: Ability to change built-in Downscaling? (/Thread-ability-to-change-built-in-downscaling)



Ability to change built-in Downscaling? - Octopus_Hugger - 05-26-2022

My case is a bit specific, I'm aware Ishiiruka supports this however I'm playing Metroid on the PrimeHack fork so can't switch to Ishiiruka. I don't know what the default downscaler is but it's bad enough that rendering at higher resolutions doesn't really change the amount of aliasing onscreen. Weirdly, increasing the internal resolution barely touches my GPU while using any of the AA modes spikes usage way up. Also I don't want to use AA anyway because Reshade can't access the depth buffer with AA on which I'm using for MXAO.

Beyond my case, is implementing better downscaling not a high priority for Dolphin? It seems like it would be since the multiples of native resolution almost never match up with your screen. So the vast majority of players are downscaling while playing anyway, right? Of course I agree a low quality but fast downscaler should be default to help out everyone using low end systems who don't know what settings are what but I'm surprised no toggle for something higher quality hasn't made its way into main yet.


RE: Ability to change built-in Downscaling? - KHg8m3r - 05-26-2022

Short answer: no, we already have AA for that and Reshade isn't something Dolphin natively supports.

Long answer: (this is a little bit disorganized since I've rewritten this several times now, but here we go)

Have you tried adding Anti-Aliasing in Reshade since you're already using it for MXAO?

I've seen a few people asking about Reshade and Dolphin depth buffer issues in the past. If Reshade can pick up the depth buffer normally, but not when using AA, that sounds like something you should ask the Reshade devs about. Dolphin's depth buffer sees a good amount of work/changes over time and I wouldn't be surprised if something changed where Reshade can't hook into it like they were expecting, since Dolphin isn't like typical PC games that Reshade was made to work with.

Is there a problem with increasing your GPU load when rendering higher resolutions with AA and downscaling? That's the expected behavior when the GPU is doing more work so I'm not seeing what the issue is here. Are you running a high IR (like 6x or higher) and then turning on AA? Cause then you're rendering a virtual screen way bigger than the target IR and then downscaling it, so the rendering load is way higher than 6xIR causing the GPU to struggle or turn into a bottleneck.

Something that might help if you're getting GPU bottlenecks: make sure you're running the latest (or close to latest) Nvidia drivers > go into the Nvidia Control Panel > make a profile for Dolphin > set the Power management mode to "prefer maximum performance". And don't change or force any enhancements from this profile, as Dolphin doesn't play nice like that since it's not a PC game. This will prevent the GPU from trying to "guess" at Dolphin's load incorrectly and dynamically ramp the clockspeed, and instead keeping it at higher clocks and ready for Dolphin's nonstandard GPU workload.

That being said, the Anti-Aliasing option is the officially supported way to get rid of aliasing in Dolphin. Remember that we're tricking GC/Wii games to run at higher resolutions than what they were meant to do originally as they don't have native AA (except for the very few games that had AA - looking at you Factor 5). There is some stuff being worked on in the PR's to make Dolphin's built-in post-processing shader system be better, so maybe you won't need Reshade in the future lol.


RE: Ability to change built-in Downscaling? - iwubcode - 05-26-2022

As far as I know, I'm the only developer on the team that is interested in these sort of graphical enhancements. Personally, I have thought about it a few times but don't want to hack it in, so I'm slowly building up to where it will be easy to put into the software. I don't have any ideas on when I'll even start working on it but it is on my mind.

(05-26-2022, 03:42 PM)KHg8m3r Wrote: I've seen a few people asking about Reshade and Dolphin depth buffer issues in the past. If Reshade can pick up the depth buffer normally, but not when using AA, that sounds like something you should ask the Reshade devs about. Dolphin's depth buffer sees a good amount of work/changes over time and I wouldn't be surprised if something changed where Reshade can't hook into it like they were expecting, since Dolphin isn't like typical PC games that Reshade was made to work with.

As someone who hopes to replace the need for Reshade (at least 4.x version), I do keep an eye on users who talk about using Reshade with Dolphin. In my experience any depth usage is very buggy. I did try the latest to see if things changed (5.1) since they mentioned enhancing depth buffer detection in their release notes. But when I booted Reshade up with a game and turned on MXAO, the depth effect flickered quite a bit (maybe there were some options to fix that). So, it doesn't surprise me that the software has issues in specific scenarios.

EDIT: Whoops, didn't read to the end. You did mention my feature. Sorry KHg8m3r Smile


RE: Ability to change built-in Downscaling? - KHg8m3r - 05-27-2022

Yes, I did quite a lot of reading up last night on your draft and your GraphicsMod and the other PR's last night and they are exactly what I was referring to at the end of my wall of text lol


RE: Ability to change built-in Downscaling? - AnyOldName3 - 05-27-2022

This brings me back to a decade ago when NaturalViolence was always asking for the scaling filter to be improved.


RE: Ability to change built-in Downscaling? - Octopus_Hugger - 05-28-2022

Thanks for the replies!

Removing the need for Reshade would be fantastic. Looking forward to that.

Quote:Have you tried adding Anti-Aliasing in Reshade since you're already using it for MXAO?

Yes, even though I'm not fond of this solution this is probably what I'll settle on for now. It's kind of wonk since here you have to deal with post-process AA artifacts on top of the downscaling filter artifacts. And the downscaling filter sort of introduces more aliasing depending on how much you're downscaling.

Quote:Is there a problem with increasing your GPU load when rendering higher resolutions with AA and downscaling?

After testing again it turns out it's not as big of a difference as I first thought though I was in a different area in the game before so it might've been some weird effect there changing these results:

4xNative->8xNative: 20%GPU->50%GPU, 4xNativeNoAA->4xNative4xSSAA: 20%GPU->60%GPU

Edit: Actually pretty sure I just figured it out, was probably the Ubershaders because changing the AA required a shader recompile while changing the IR didn't, and I hadn't waited long enough for them to finish.


RE: Ability to change built-in Downscaling? - One More Try - 06-08-2022

Apparently you can just write a post processing shader with a custom downscaling algorithm and it should work just fine.


RE: Ability to change built-in Downscaling? - Klemc - 06-11-2022

(05-26-2022, 05:48 AM)Octopus_Hugger Wrote: My case is a bit specific, I'm aware Ishiiruka supports this however I'm playing Metroid on the PrimeHack fork so can't switch to Ishiiruka. I don't know what the default downscaler is but it's bad enough that rendering at higher resolutions doesn't really change the amount of aliasing onscreen. Weirdly, increasing the internal resolution barely touches my GPU while using any of the AA modes spikes usage way up. Also I don't want to use AA anyway because Reshade can't access the depth buffer with AA on which I'm using for MXAO.

Beyond my case, is implementing better downscaling not a high priority for Dolphin? It seems like it would be since the multiples of native resolution almost never match up with your screen. So the vast majority of players are downscaling while playing anyway, right? Of course I agree a low quality but fast downscaler should be default to help out everyone using low end systems who don't know what settings are what but I'm surprised no toggle for something higher quality hasn't made its way into main yet.

Did you try zbuffer unlocked reshade ?

https://github.com/Not-Smelly-Garbage/Reshade-Unlocked

or, an answer for 5.0 versions

https://www.reddit.com/r/ReShade/comments/v8yn80/does_anyone_have_any_5x_versions_with_depth/


RE: Ability to change built-in Downscaling? - vlad54rus - 06-11-2022

(06-11-2022, 12:30 PM)Klemc Wrote: Did you try zbuffer unlocked reshade ?

https://github.com/Not-Smelly-Garbage/Reshade-Unlocked

or, an answer for 5.0 versions

https://www.reddit.com/r/ReShade/comments/v8yn80/does_anyone_have_any_5x_versions_with_depth/
These won't help the OP, in his case the depth buffer is inaccesable due to antialiasing, not the network traffic.
I have to agree that Dolphin needs better rescaling filter.