[UPDATE] mGBA adds high-res scaling in its latest development builds

hqrenderer.png

'Tis the season for emulator enhancement projects. First, we've seen bsnes adding a high-definition Mode 7 upscaling feature, then a widescreen Game Boy emulator got released, and now it looks like mGBA will be receiving something fancy too!

One of the planned features for its next release is a high-res OpenGL renderer, which will allow for a variety of graphical improvements. Like the previously mentioned bsnes-hd, you can expect games using a Mode 7-like perspective effect (for example, F-ZERO ones and Mario Kart: Super Circuit) to look less pixelated when scaled. However, this time it doesn't just end there: sprite rotations and transformations have also been enhanced, as well as other display modes and miscellaneous graphical features! This means a good number of games will look noticeably better, as seen in some screenshots posted by mGBA's developer (endrift). A video has also been uploaded, showing the feature in action while playing F-Zero Climax (13x scaling, 3120x2080):



The high-resolution renderer is not yet available in stable mGBA builds, however it can be found in development ones (PC & Switch only, see update below). It's completely optional and will not be enabled by default: you can do so by looking at the "Enhancements" section in the settings (remember to set the renderer to OpenGL!). Keep in mind that by using a development build, you could find unexpected issues and poor performance, so it's still recommended to wait until a new stable version will be released unless you really want to stay on the bleeding edge.

UPDATE (27/5/19): Hi-res scaling has been added to the latest Switch builds. The feature is highly experimental on this platform and it could suffer from both graphical glitches and slowdowns. Code optimization is still being worked on: due to this, the developer kindly asks all users to not file bug reports related to poor performance.


:arrow: Source
 

regnad

Button Masher
Member
Joined
May 19, 2008
Messages
2,513
Trophies
1
Age
53
XP
3,670
Country
Japan
Jeez, this thing is stuttery as crap for me even at x1 enhancement using OpenGL.

My computer isn't top of the line, but it's by no means terrible. Any suggestions?
 
Last edited by regnad,

spectral

Well-Known Member
Member
Joined
Nov 10, 2012
Messages
626
Trophies
1
Age
42
XP
2,477
Country
Hard to say for sure without knowing your PC spec but likely the only solution is a more powerful PC, although it's possible as the features are developed they'll be further optimised.
 

Edgarska

Conjurer of cheap tricks
Member
Joined
Oct 24, 2011
Messages
797
Trophies
0
Age
34
XP
2,084
Country
United States
Edit: wrong thread, but while I'm here I would just say I tried this with a few games and it's very impressive.
 
Last edited by Edgarska,

Issac

Iᔕᔕᗩᑕ
Supervisor
Joined
Apr 10, 2004
Messages
7,025
Trophies
3
Location
Sweden
XP
7,342
Country
Sweden
So exciting to see this! Would love to see a big bunch of comparison screenshots. Granted I haven't looked that much for them, but the SNES ones had pretty clear before and after images, while I've only seen the after images for this one. So it's difficult to really appreciate the improvement :P

Gonna have to look for some more screenshots :P
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,285
Country
United Kingdom
I've gotta say if my PC struggles with this, I can't imagine the Switch is going to have an easy time of it.
It depends.

The general idea behind these sorts of mods is 3d is all about manipulating points in space. Being maths then multiplying it by arbitrary numbers, and maybe adding some smoothing, anti aliasing, precision in the "texture", precision in "shadows", an additional subsurf render or something, is trivial. Most 2d based consoles don't have such reference systems and instead are dancing pixels on a flat plane, and some 3d ones have their own quirks like using things for reference points (see some of the GC widescreen stuff from the Wii) but we can skip that one for the moment. However things like the SNES' mode7 graphics and the GBA's similar take on the matter then you do still have points in space and maths done upon them rather than sliding and flipping set size sprites on top of backgrounds.
If you take the "obvious" route of rendering each frame out and doing maths on each of them rather than the more tedious but likely quicker method (and still just as valid) of creating a 3d model and keeping it updated with changes then you will see it nail resources. A modern machine of some potency should be able to handle the former though, and the end result will be nice to look at as a proof of concept. Spend the time to make the latter and it will run on far more modest machines. Not sure where that will end up -- probably not the same sort of demands as the likes of the 2x super sai filters we have seen for years but maybe more in line with those of the more exotic stuff like XBRZ we saw in more recent years.
 

regnad

Button Masher
Member
Joined
May 19, 2008
Messages
2,513
Trophies
1
Age
53
XP
3,670
Country
Japan
It depends.

The general idea behind these sorts of mods is 3d is all about manipulating points in space. Being maths then multiplying it by arbitrary numbers, and maybe adding some smoothing, anti aliasing, precision in the "texture", precision in "shadows", an additional subsurf render or something, is trivial. Most 2d based consoles don't have such reference systems and instead are dancing pixels on a flat plane, and some 3d ones have their own quirks like using things for reference points (see some of the GC widescreen stuff from the Wii) but we can skip that one for the moment. However things like the SNES' mode7 graphics and the GBA's similar take on the matter then you do still have points in space and maths done upon them rather than sliding and flipping set size sprites on top of backgrounds.
If you take the "obvious" route of rendering each frame out and doing maths on each of them rather than the more tedious but likely quicker method (and still just as valid) of creating a 3d model and keeping it updated with changes then you will see it nail resources. A modern machine of some potency should be able to handle the former though, and the end result will be nice to look at as a proof of concept. Spend the time to make the latter and it will run on far more modest machines. Not sure where that will end up -- probably not the same sort of demands as the likes of the 2x super sai filters we have seen for years but maybe more in line with those of the more exotic stuff like XBRZ we saw in more recent years.

But wouldn't the same "tricks" used to speed things up yield the same results for both Switch and PC? I guess my point is my PC is more powerful than a switch and still struggles with both this and bsnes-HD
 

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,285
Country
United Kingdom
Haven't looked at what bsnes does at this point so will have to skip that for now. As far as the quoted post is concerned it is not as much tricks if you are thinking speedhacks of yesteryear but a fundamentally different approach, or at least one that builds massively off the simpler and slower approach you can knock out as an experiment.
The simple approach takes the data in the emulated system's memory every frame and does what it does to it (presumably rather than looking at it like a jumble of pixels like every other filter it looks at their positions in "space" and does the maths to scale it and smooth things out). As far as a general flow of operations is concerned that is nothing major. Doing it every frame (60 of them a second remember, though some drop down to 30) is however quite demanding, especially if you also have to do the rest of the stuff that the emulated system does.
Building a model and kicking that to a graphics card, and then sending updates every frame (or every time it is changed, possibly also detecting when the whole "model" is changed), and allowing it to do anti aliasing and all that stuff they are designed for takes far more code and fiddling to accomplish but will yield the same results for far less demand on a CPU.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • No one is chatting at the moment.
  • Xdqwerty @ Xdqwerty:
    also gonna install twilight menu in my r4 flashcard
  • Psionic Roshambo @ Psionic Roshambo:
    One thing that just occurred to me.... The sound on the 2600 sucked less back then the harsh sound we hear now is from infinitely better speakers we have now, back when the 2600 was new speakers produced a almost muffled sound, like CRTs made old graphics look slightly better.
  • Psionic Roshambo @ Psionic Roshambo:
    I wonder if I could recommend that to some emulation devs that perhaps the sound could use some smoothing out to simulate those old TVs
  • Psionic Roshambo @ Psionic Roshambo:
    I think a few of the early systems could benefit from that, at least up to the 8 bit generation, by the 16 bit generation I think TVs had gotten a lot better in almost every way
  • Xdqwerty @ Xdqwerty:
    i dont have an sd card adapter but I have an usb sd card adapter
  • K3Nv2 @ K3Nv2:
    Old people games
  • Xdqwerty @ Xdqwerty:
    its not the one that comes with the r4
  • Xdqwerty @ Xdqwerty:
    doesnt work (my flashcard is from r4isdhc.com)
  • Xdqwerty @ Xdqwerty:
    might install ysmenu first
  • Psionic Roshambo @ Psionic Roshambo:
    Try Wood firmware
  • Psionic Roshambo @ Psionic Roshambo:
    For your R4
  • Psionic Roshambo @ Psionic Roshambo:
    It's old but it's the best firmware out for DS stuff
  • Xdqwerty @ Xdqwerty:
    it says it only works for the original R4, R4i Gold (r4ids.cn), R4iDSN (r4idsn.com) and Acekard R.P.G.
  • Xdqwerty @ Xdqwerty:
    nvm it does support mine
  • Xdqwerty @ Xdqwerty:
    but why choose it over ysmenu @Psionic Roshambo?
  • Xdqwerty @ Xdqwerty:
    bc im stupid?
  • Xdqwerty @ Xdqwerty:
    yea ik im stupid
  • Xdqwerty @ Xdqwerty:
    good night
  • Psionic Roshambo @ Psionic Roshambo:
    Just give it a try, but honestly if you have a 3DS you can play DS games without a card just off the internal SD card
  • Psionic Roshambo @ Psionic Roshambo:
    Slightly slower loading but a bit more convenient
  • BakerMan @ BakerMan:
    guys, my fuckin headphones have an out of place speaker
  • K3Nv2 @ K3Nv2:
    Did you try wearing them?
    B @ btjunior: @Xdqwerty 16