yuzu
yuzu copied to clipboard
Add New Window Scaling Filters
Is there an existing issue for this?
- [X] I have searched the existing issues
What feature are you suggesting?
My request has two components: adding new filters, and giving users more choice in how they're used.
Similar to Cemu, I think it would be helpful if users could select a separate filter for upscaling and downscaling. Different filters are better for scaling different content. For example, hermite is good when downscaling (no ringing / aliasing) but produces blocking artifacts when upscaling. Letting users switch between different scalers in the status bar makes this easier, but I think there would still be utility in allowing users to separately choose the default upscaler and downscaler in the graphics settings.
There don't seem to have been any additions to the list of window scaling filters since project ART was merged (#7219). I think this is a shame, since many of the currently implemented filters sacrifice image quality for speed.
Hermite (a variant of bicubic, b=0, c=0) is a good option for downscaling 2D games. As mentioned before, it has no ringing and aliasing but is less sharp. Mitchell (another variant of bicubic, b=1/3, c=1/3) is a good general upscaler and downscaler. It produces limited ringing, handles moire well, and is also sharper than hermite.
These are just two examples, but there are more resampling algorithms that should be looked at.
Why would this feature be useful?
Easy way to significantly improve image quality when rendering at a non-native resolution. I'm not familiar with yuzu's codebase so I can't say this too confidently, but I imagine this wouldn't be that difficult to implement either.