Open Felipefpl opened 1 year ago
Yup, the texture scaler stuff definitely needs some UI work and improvements.
I think the general idea currently for automatic algorithms is to prioritize hardware texture scaler which is better, more open(done via external *.csh files) and actually runs on the hardware designed to do graphics making it way faster and free of software texture scaling limitations, so maybe this issue isn't going anywhere, but I have a bit of time, so...
Here's a little info about what we have hardcoded as software texture filters, in case of performance it pretty much goes in just slightly different order they're listed:
Edit: I wrote about performance off memory, but tried to test it and for some reason Hybrid was slower than Hybrid+Bicubic, not by much as they're roughtly the same, but changed the wording. xBRZ continues to be fastest and Bicubic goes in the middle.
Description of each:
Hybrid + Bicubic is just a slightly blurrier hybrid, similary to just Hybrid I'm pretty sure there are people out there who would pick it purely because it's very demanding, but it's not really that great.
They all can cause really nasty glitches in some rare tiled 2D graphics like in Street Fighter game where I'd personally just recommend post process instead.
Deposterize option pretty much does what the "Hybrid" algorithm does, but on a different scale, being much lighter and can work with any other algorithm, it says it fixes banding glitches, but xBRZ creates banding as a feature, so it's really more about preference than fixing anything consider turning it on as making things a bit less sharp and just try with and without it before you decide. About it being faster or slower, obviously doing something is heavier than not doing it, however it's not a heavy option.
I'd rather recommend AI texture scalers with texture replacement as nowadays automatic real-time algorithms are all ugly compared to what we can easily scale or generate from 0 via various styles of trained models, through creating such texture packs on your own requires quite powerful hardware and isn't always problem free.
When being limited to automatic algorithms, especially to weaker hardware I'd probably just stick to xBRZ and if you don't like the style, use Bicubic, the other two are too heavy and not all that beneficial, also avoid using very high multiplication. It's not all that useful especially on smaller screens like in case of mobiles. I know some people really wanted even higher multiplier than what we have, but from my personal experience of having up to x6 in my custom build, the difference between x5 and x6 is very superficial and hard to notice even on static screenshots and that's on 4k 55 inch TV.
@LunaMoo - Thanks for the nice detailed explanation, it was surely a nice bit of info. :+1:
What should happen
The upscale type and texture filtering settings dont have descriptions showing which one is the heavier for the system and which one is lighter. It would be good to see those descriptions so ppl with weak computers like me could choose them. There are several other options where you can see if they are fast or slower for the computer.
Nothing is said about what the deposterize option does, neither if it's fast or slower.
It would be nice if aside XBRz filter there were other filters such as Scale2x, 3x, 4x - HQ2x, 3x, 4x - 2XSai, Super2XSai, Super4xSai, there are optimized versions of filters around including the XBRz ones.
Who would this benefit
Everyone with a weak computer.
Platform (if relevant)
None
Games this would be useful in
All games
Other emulators or software with a similar feature
No response
Checklist