2xBRZ shader for RetroArch?

this xbrz will never be correct because it is not true xbrz

wat? the numbered xbrz shaders in RetroArch are direct ports from C/++ to shader code.

After removing the linear filter from the slangp file it is identical to the 2xBRZ shader as seen in SNES9X standalone. I got exactly what I needed. ScaleFX is an entirely different algorithm if I’m not mistaken. That’s great for people who prefer that, but I still find xBRZ to look the best from what I’ve seen. Though I don’t apply other effects like scanlines or CRT either, so that may be why some find better results in ScaleFX if they’re mixing it with other combos.

xbrz is a cpu based scaler. sure, code was copied but it does not look the same as standalone emu’s internally coded xbrz. also, it lags behind by covering the image by a small amount not usually noticed but real xbrz it’s always covering the image. low level shader xbrz looks different from hardcoded xbrz and scalefx 9x where the later look the exact same but low level shader xbrz looks more like xbr. Retroarch nor Reshade can support real xbrz yet as it was intended.

if i remember correctly, this was the xbrz shader in retroarch: https://i.postimg.cc/SxpFppd3/retroarch_2016-12-09_09-24-43.png

and this was scalefx 9x: https://i.postimg.cc/nhbj0xpj/retroarch-2016-11-24-08-46-39.png

xbrz looks identical to the 2nd pic, not the first, when it is hardcoded. xbrz shader in retroarch doesn’t make straight lines like the 2nd pic like hardcoded xbrz and scalefx9x does.

ok, pop quiz: which of these is snes9x standalone with 2xbrz filter and which is RetroArch with 2xbrz shader (with the bicubic passes removed, just to be fair):

oh boo, I forgot to turn off the framecounter in RetroArch. But nevertheless, you can see they look identical.

2 Likes

do it again with the maximum. 6xbrz my sayings come from me trying it when it was first released. so unless it was improved, the shader version never removed the jaggies on the lettering like the standalone and scalefx9x

Only goes up to 4x here:

whelp, that’s probably why i went to that conclusion. so because the retroarch shader is limited by 2 passes, we dont get to see what it can achieve compared to the full version. so technically is it not as good as the comparisons. if the emu already had xbrz, one should use the real version and not the shader. but if the emu limits the xbrz to 4, 2 passes from the shader will help it achieve close to what it’s supposed to look like

that’s snes9x standalone there in the screenshot. The xbrz shaders are all single-pass (except for xbrz-freescale-multipass, but the passes only affect the speed/performance, not the visual fidelity)

Why is that even relevant to this thread? I’m not using 6xbrz and I think that aggressive of pixel smoothing looks worse, personally. Usually when the settings are turned on that high, sure you have smoother edges but it also results in aggressive warping around sprites and shapes any time two or more intersect in movement since the algorithm cannot distinguish between where one sprite ends and another begins, so the edges start to “wobble” a lot as they cross over each other. It’s a pretty distracting effect, IMO. Not to mention that some sprites that might have finer details start to lose those distinct details when they are smoothed out that much, losing aspects of the game’s original art style.

@kut: that’s xbr you’re referring to with the ‘wobble’. porting the xbrz filter when already having something that looks just like the real thing i never understood xD. and with that logic, how does scalefx x2 not look like what was posted?

I don’t know what logic you’re going on about. You’re the one that insisted that you need to crank it up to 6x to really notice the differences. If xbrz and scalefx are comparable in quality at 2x then what difference does it make for me to switch?

why do you interpret just because i said the world logic that im being negative? is the word logic a negative word or just a word? go ahead, post a shot of 2xbrz vs 2x scalefx.

“You’re the one that insisted that you need to crank it up to 6x” not once did i tell YOU to crank it up to six. Me and hunter were having a convo

OK, I think we’re speaking a little past each other here. You originally came into this thread insisting that I should switch to ScaleFX because it is notably better than xBRZ, especially because xBRZ’s implementation in RetroArch is flawed somehow as opposed to SNES9X standalone. Hunter countered by posting a comparison shot of 2xBRZ for both emulators demonstrating the differences are negligible. You followed up by saying “but now crank it to 6x and notice the difference”, but at that point it’s irrelevant because I don’t play at 6x so those supposed benefits are useless to me. Is ScaleFX really that dramatically better than xBRZ at the 2x setting?

that’s why i requested that you post a pic of your 2xbrz and post a pic of your 2xscalefx so we all can see. I don’t have my external hooked up to my win3 right now so I can’t do it for you.

also, are you saying that the pics i posted above fit your qualification of losing fidelity?

Alright … Alright … You two up there… cut it out… before some one gets hurt… :face_with_thermometer:

I can’t find a 2x version of ScaleFX in RetroArch’s slang presets. I also don’t understand the algorithm enough to make my own because it looks like it uses multiple shader passes to create the final effect. What I can say is that testing what actually was there definitely still has the wobble effect I spoke of, so ScaleFX is certainly not immune to it. Though perhaps if I could find a 2x version maybe it is less noticeable at the same intensity, which could still be beneficial over xBRZ if true.

I would say for a game like Mario Kart where the aesthetic is very “flat” and low-detail, using a stronger smoothness setting is fine with respect to fidelity and level of detail. Some games I think can benefit from a higher intensity filter if they already have a sort of cel-shaded aesthetic that lends itself to that. Yoshi’s Island would be another good example. But for a game like say, Super Metroid? I think it negatively impacts fidelity. Super Metroid is not meant to look like a Flash game. The nice thing about 2xBRZ to me is that while there might be some specific instances where a few other shaders might look better for certain games, 2xBRZ is a nice all-arounder that I think will improve virtually any 16-bit game, no fine-tuning required.

a scalefx x2 should be in there. if you can’t see it, you can adjust the number via the shader options for scalefx 9x if i remember correctly. i hear theories with no proof my son. go ahead and load up super metroid with it xD. Your hatred for it on that game may be due to the small amount of passes that you say you like. but you can’t prove your hypothesis unless you try right?

What’s wrong with it? looks fine to me. and im on intel. no slowdowns.

Matter of taste I suppose. I don’t like the look of it personally. Looks too over-processed and blurry to me, at least in this particular instance. It’s also a bit of a bait and switch here by adding scanlines and CRT effects to cover up the Flash game look I described earlier. It blends in better with Super Metroid’s aesthetic as a result, but we’re no longer strictly evaluating the merits of ScaleFX and high scale factors anymore as I was originally referring to, but taking into account other added visual effects.

I understand that a lot of people like the CRT aesthetic; I personally don’t. The best way I can describe my perspective is give me an 80s movie like Back to the Future with the choice to watch it on VHS versus 4K blu-ray, and I’ll choose the 4K blu-ray every time; even if the VHS is technically the “original”, retro experience. I don’t have any interest in intentionally distorting the image quality out of some sense of nostalgia. I prefer it to look as clean and sharp as possible.

I saw the 9x scale in there but when I open it up in text editor there is no clear modifier to edit. As I mentioned before, it has multiple shader passes and none of them are clearly labeled as to which one lets me set the scale factor, so I’m unable to create a 2x version.

CRT look is not just a way to get imperfections or softness, crt can be sharp and clear and give a better rendition of 240p content not in a nostalgia way. It is obviously a matter of taste, of course, but the connection between a soft/distorted image and CRT is not always correct and not the only way to use a CRT shader.

1 Like

harikirri is spot ON :smile: :ok_hand: .
Furthermore, scanlines takes away the → rough pixelated edges ← in old console games… :metal::star_struck: :ok_hand:

That’s one of the reason images on CRT tubes in the past looked so great, just because of the scanline gaps in →→ LOW RESOLUTION ←← content you know…

Or is dizzz duck WRONG :flushed: ??

cheers, TD