PS2 Emulation New Massive Update On Android

May 9, 2024 (3 months ago)

How’s it going everyone,

We had a massive update for the AetherSX2 emulator that just went out and it’s kind of flying under the radar, but it has some big important improvements for low-end devices all the way to flagship Android phones and gaming handhelds. In this video, I want to talk about those improvements.

So simply put, this update is going to give us the ability to use fractional resolutions. And I want to first go over what fractional resolutions are. Fractional resolutions on their own are not actually something new.

A lot of the emulators have this ability baked in, but our options on Android are fairly limited compared to PC. For example, on Dreamcast, we have two emulators with Flycast and ReDream. Both the standalone and the RA core for Flycast support fractional resolutions, as well as sub 1x resolutions.

As you can see, they are broken up into .5x increments, but ReDream does not have either of these. When it comes to N64, Mupen has double support. As you can see, our lowest resolution is 160 by 120. These resolutions are not written the same way, but they are actually fractional resolutions.

Other official emulators have full 100% increments of resolutions, but some of the hacked builds have fractional support. If we look at MMJR for example, it has fractional resolutions written out in .5x increments. This is more standard, and very few emulators even go under 1x.

If we want to see something like that on Dolphin, we’d need to use other custom builds that can break down the fractional resolutions even further from 1x to improve performance. And it can and does improve performance. Now, this doesn’t work uniformly across the board, because it is very dependent on your hardware.

Depending on what your emulator supports, you usually do have a benefit on the low end or the high end, or a combination of both. And with today’s update, we do have both for PS2 emulation on Android. I will just state that some emulators don’t benefit from sub-1x resolutions as much as others.

For example, 3DS with this mode has a really small benefit and probably more of a negative impact than anything else because it will break a lot of the 3D aspects of games. But this is an outlier. Mostly, this is a beneficial thing for an emulator to have. CEMU has this with graphics packs, and Yuzu has this built right into the emulator. Skyline is even supposed to get support for this in the future, so we might get to the point where more emulators support this kind of thing compared to those that don’t.

To be able to use what I am going to show off in this video, you are going to need to head on over to the AetherSX2 website and download the latest alpha build of the emulator. If you already have the emulator installed, this should just update your installed version and keep all of your save files. I used ADB for this, but you can just copy the apk to your Android device and install the update. With that done, let’s walk through our first scenario.

Now, if you boot up a game with this emulator using the safe settings, hopefully, you would get to the point where the game can run at 1x resolution with no underclocks. On this Snapdragon 636 phone, that is not possible. You can see by the emulation percentage on the top corner that we are at 64% and there’s no way to improve this performance as is.

Now, my first process for this would usually be to flip the GPU renderer to Vulkan if it was on OpenGL and see if that improves things. And then I would start looking at underclocking. But with this new setting, we have one more option that we can utilize before we use underclocks. So, let’s open up the settings now.

If we go into the per-game settings and then into graphics, we’re going to see the upscale multiplier. Since this game is running so poorly, I’m going to go right to .5x immediately and see if that improves anything. Now, if we look at the percentage here in the corner, we are at 75%. So we got a 10% boost, which is good.

With this improvement, we might be able to get into a situation where we can underclock now and maintain full emulation speed at our reduced frame rate. So let’s go back into the per game settings now and I’m going to go straight to -2 and +3 because I already know that this works with this setting and you will see that we are at 100% FPS.

Now, if we were to go back to how this was before this update and change the resolution back to 1x, you will see that we cannot get 100% speed. It will fluctuate a little bit, but we can’t get there at all if we load up a different save state. We can see that our FPS is really stable under 100%, with no movements up to 100%.

If we go back into the settings and change our upscale multiplier to .5x, you will see that we are able to run at 100% speed. Now our frame rate is 20 FPS, so we are 10 FPS less than normal we’re skipping one-third of our frames, but the emulation speed doesn’t change.

It just helps us maintain good audio and smooth performance. This doesn’t work like this in every game, but it can be a smooth experience on low-end hardware. Obviously, the picture doesn’t look that good, but you can improve things with filters and beggars really can’t be choosers if you are already not able to play at 1x with your device. Sometimes you won’t get a big improvement like 10%.

Let’s take a look at one more example. In DMC2, you can see that we are around 83-85% speed at 1x resolution. After changing this to .5x resolution, we do get an improvement, but it is very minor. So don’t expect that you are always going to get some drastic improvements going under 100% resolution.

The more potato your device is, the bigger the benefit will be. Now that we have covered sub-1x resolutions, let’s look at the flip side of this. This is an example of a game that can run at full speed with the default settings. But one important thing that I want to point out here is that our rendering resolution is a bit smaller than it was before this update.

Because of that, you might find even without changing anything, that you are going to get better performance at 1x resolution than you were on older builds because we’re only rendering at a max height of 448. Before this update, it was 512. So in this game, we are able to run at full speed. Now we can take advantage of the other side of this argument. We can go into our graphics settings and we can increase our resolution.

We can try to do 1.25x. After doing so, we can see that the game is still running at full speed. Let’s go up to 1.5x. So we’re at a 50% increase in resolution now and we’re still at 100%. Let’s go to 1.75. At 1.75x resolution, we’re still at 100%. We’ve got a big boost in resolution now over the 1x setting. But I want to see what happens at 2x on this low-end phone.

You can see this 636 cannot run this game at 2x native resolution. So I think you can see the benefit. There are going to be a lot of phones where you’re not quite powerful enough to get to that next full resolution increase. So these fractional increases are going to get you better picture quality than you could otherwise use.

You’re essentially getting more bang for your buck by lowering the demand on the system while still improving picture fidelity. That’s all fine and good, but what does this look like on the high-end? So here’s our higher-end example. We have Dragon Quest 8 running on the Odin Lite.

And this is going to be more typical if you’ve got a modern phone where you can hit 1x resolutions in demanding games, and around 2x in normal ones, with 3x being just a bit out of reach. So in this example, we are running at 1x and we are at 100% speed. If we were to change this game to 2x resolution, you’re going to see that we are just not at 100%.

And in the old way, you would either have to use 1x or you would have to underclock to be able to maintain a 100% speed. But now we can just go into our settings and just use the next resolution down from the one that you can’t quite hit. In this case, it would be 1.75x. And you can see that we are now at full speed.

We can even maintain this performance if we were to rotate the camera. If we did this at 2x resolution, we would get some dips and our frame pacing would not be as good. I have one more example to show off. Here we’ve got Ratchet and Clank of 1x and we are at 100% speed, no underclocks. Now this game should be able to run up to 2x resolution without issues.

So let’s take that to 2x and you can see we are at 100% speed, but we shouldn’t be able to go to 3x for this game. So if we change this again and change to 3x now, you can see we don’t quite have the power that we need to use 3x resolution. We are 83% speed right now, so we might need to go down more two stops to be able to get this to 100%, but let’s first check out 2.75x to be sure. This gets us 90% speed.

So let’s change it to 2.5x. As you can see, 2.5x gives us full-speed performance. Our resolution is 1280 by 1120, and this panel is 1920 by 1080, so we have just about maxed out the resolution of this screen. Anyway, that’s going to be it for this showcase of the new AetherSX2 update.

Again, every device is going to be different and the amount of performance that you’ll be able to get out of this will also be different. That being said, this should be beneficial to every single Android device out there. Big shout out to the developer for putting up with my requests to do this for the last 8 months.

I was very happy that he decided to take the time to humor me with this and I was even more surprised when he allowed this to go public. I wish more developers would get on board with implementing fractional resolutions and or sub-1x resolutions because they are very powerful tools to get more out of the hardware that you already own. And that is what it is all about at the end of the day. Happy gaming everyone,

Related Posts

Leave a Comment

Your email address will not be published. Required fields are marked *

Please Activate Your Theme

Please Login On APKTEMPLATES To Get Your License Key