Yuzu Nintendo Switch emulator details latest features in September progress report

2A518489-4165-48FE-8253-5C9A4CD6F53B.jpeg

Are you curious about how one of the two major Nintendo Switch emulators is doing? Lucky day for you then, as the development team behind Yuzu has put out their latest progress report. Published this week, it details all the new features and improvements made to the emulator throughout September. Many hardware specific problems were ironed out, and if you were prone to crashes, then this update might fix performance for you. You can check out the full changelog below.

Hi yuz-ers! Welcome to the latest entry of our monthly progress reports. We have even more GPU rendering fixes, TAS support, 8 player mayhem, input and UI changes, some preliminary work for future big changes, and more!

Yet more AMD specific changes and other graphical fixes​

Certain AMD and Intel GPUs were unable to utilize yuzu’s unlock FPS feature with the Vulkan API, due to the lack of driver support for the VK_PRESENT_MODE_MAILBOX_KHRpresentation mode. They, however, support VK_PRESENT_MODE_IMMEDIATE_KHR, another mode that allows Vulkan to present at a higher framerate than the screen refresh rate, so epicboy made the necessary changes in order to unlock the FPS on these GPUs. Due to the nature of this presentation mode, this may cause visible tearing on the screen, so bear that in mind if you try this out.

 And this is with just an RX 550 (Metroid Dread)
And this is with just an RX 550 (Metroid Dread)
Booting a title in Linux with the Vulkan API using the Intel Mesa driver resulted in a crash due to a device loss error. The problem was in the synchronization between the rendering and subsequent presentation of frames.

Previously, yuzu would issue the Vulkan Present command, then wait for the frame to be rendered before continuing with the process. While this was fine for other drivers and vendors, ANV (Intel’s Vulkan driver) expected to have the frame already rendered before this command, causing this error.

epicboy fixed the synchronization behaviour so that yuzu now waits until the frame is fully rendered and ready before presenting it.

With the release of AMD’s Windows driver version 21.9.1, and its equivalent AMDVLK and AMDGPU-PRO Vulkan Linux counterparts, users started noticing crashes in most games right at boot. We rushed once again to blame AMD for breaking another extension, as it wouldn’t be the first time. We even singled out Int8Float16 as the culprit, providing an alternative path that reduced performance on all AMD GPUs running non-RADV drivers.

We were wrong.

Turns out, it was our fault. epicboy found out that during the process of initializing Vulkan, the emulator assigned Int8Float16’s values after its memory was freed. Surprisingly, this only started affecting official AMD drivers recently, after their periodical Vulkan version update. So we had to lay down the pitchforks, this time. Performance returned to normal after the introduction of this PR.

AMD Windows users are also familiar with certain stages in Super Smash Bros. Ultimate turning completely white or ghosting, akin to when applications would freeze back in the Windows XP era. Those were the good days.

Ahem, anyway, AMD Radeon GPUs lack support for fixed point 24-bit depth textures, or D24 for short, a relatively common texture format. To bypass this hardware limitation, yuzu uses D32 textures instead, which can cause precision issues during the conversion process. By adjusting the Depth Bias and Polygon Offset of yuzu’s D24 emulation,Blinkhawk solves the issue for good.

Fair play, please (Super Smash Bros. Ultimate)
Fair play, please (Super Smash Bros. Ultimate)
Fair play, please (Super Smash Bros. Ultimate)

Yet another AMD Radeon specific issue is visible when playing The Legend of Zelda: Breath of the Wild. Terrain textures were colourful and corrupted, like when a PC gamer dials up the RGB to 11.

This issue affected our regular suspects, GCN4 devices (Polaris, RX 400/500 series) and older, running on the Windows and Linux proprietary Vulkan drivers. GCN5 (Vega), RDNA1, and RDNA2 devices were unaffected. The problem resided in how we guessed the textures were being handled by the game.

Some information first: there are several ways to handle textures, and in this particular example we need to focus on two, Cube Maps and Texture Arrays.

Cube maps are a cube with its six faces filled with different textures. The coordinate used to fetch the data, unlike the regular X and Y values, is a single versor originating from the center and pointing to the surface of the cube.



Texture arrays on the other hand are just as the name implies, an ordered array of textures one after the other, with X and Y used for positioning information inside the texture, and a Z axis used to determine which texture of the array is in use.



TL;DR, one is a sphere and the other is a list.

Vulkan allows for textures to be marked for conversion into cube maps if later needed, but the sampling (reading) is determined by the texture type specified by the game’s shader instructions. This type is then passed to the graphics API. We do just this and the game decides to keep its textures as arrays, which is its own decision. However, the AMD driver decides that the textures should be sampled as cube maps, ignoring what the texture view determined just before.

While this should not be a problem on its own, as coordinates can still be pulled out from the wrong texture type, the driver can end up reading the wrong texel. This can result in happy rainbow ground in The Legend of Zelda: Breath of the Wild, or as dark and evil terrain in Hyrule Warriors: Age of Calamity.

By disabling Cube Compatibility on GCN4 and older devices running the official AMD proprietary drivers, epicboy returned proper sense to the devastated land of Hyrule.

:arrow: Source
 

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
30,805
Trophies
2
Age
36
Location
Dr. Wahwee's castle
XP
18,205
Country
United States
I'm waiting until I get Metroid Dread to emulate it since I don't want to get ahead of my dad, but my pc can just about run Dread at about 62 FPS at 1080p on Yuzu and I don't think my pc is a 1500 dollar PC, but I wasn't the one to build it, it was my dad who did, but if you know the specs are GTX 970, AMD FX-6300, ASUS 970 Pro Gaming/aura, 16 gigabytes of DDR3 RAM, and I would have to check my PSU once I'm home.
That's not really an upgrade over the real version: that also runs 60 fps and 1080p *shrug*
 

mugwort

Well-Known Member
Newcomer
Joined
Mar 9, 2020
Messages
53
Trophies
0
Age
50
XP
163
Country
United States
YouTube seems to have become very draconian in its deleting of posts using a word or subject filter.(or policy). I named a couple Switch emulators in a post and that got removed. Then again, once I couldn’t keep a post on this board from auto-deleting because it had the word “fittnesss” in it. I had to do a lot of trial and error to figure that one out. Two “t”s and three “s”s fixed it “.
 
  • Like
Reactions: Subtle Demise

ChibiMofo

NPC Chibi-Robo for Wii needs a fan translation
Member
Joined
Jan 29, 2019
Messages
458
Trophies
0
XP
1,759
Country
Canada
Eh, there's really no metric by which Switch could be considered current gen. Eighth gen maybe, since it was meant to serve as a replacement for the failed WiiU, but in terms of power it's more akin to seventh generation consoles (just as WiiU was).
So I guess the Wii should be considered sixth generation, even though it dominated the seventh?

LOL! You don't understand the term. "Generation" has nothing whatsoever to do with graphics power.
Never did.
 

Xzi

Arm Cannon Enthusiast
Member
Joined
Dec 26, 2013
Messages
13,373
Trophies
2
Location
Spiraling Out
Website
gbatemp.net
XP
13,534
Country
United States
So I guess the Wii should be considered sixth generation, even though it dominated the seventh?

LOL! You don't understand the term. "Generation" has nothing whatsoever to do with graphics power.
Never did.
No, Wii was seventh gen. I'm well aware it's based on release date rather than graphics power, but that doesn't stop me from making power comparisons.
 

HRudyPlayZ

The panda god that does everything
Member
Joined
Dec 29, 2016
Messages
338
Trophies
0
Age
54
XP
1,598
Country
France
The emulator is pretty great, a significant update over even the original console.

I've seen in this comment section a small debate about the generation of the Switch, let me participate in.
I, myself, consider the Switch to be an 8th gen console, because it of course has a low powered hardware, but not only that, the Switch library consists majoritarily of Wii U ports and cross-platform releases. When you think about it, the Switch has a few number of new and fresh games.
Where the generation gap is clearly marked for Sony and Microsoft, it's a bit harder for Nintendo.
But based on the facts mentionned above, i consider the Switch to be an 8th gen console, just like the Wii U.
"Next-gen" (since it's still too early to call them current-gen, judging at their poor library), would be the PS5, XSeries, or the console after the Switch.
 
  • Like
Reactions: 64bitmodels

64bitmodels

Well-Known Member
Member
Joined
Aug 1, 2019
Messages
921
Trophies
0
Age
15
XP
1,416
Country
United States
Yeah that's crossing a line I'd say. Even GBAtemp news posts don't encourage piracy, low-key or otherwise. OTOH it does potentially open up those outlets to lawsuits from Nintendo, so ¯\_(ツ)_/¯.
Meh not really
they're just saying "hey you can emulate these games the option is available" they're not directly giving you the links to the emulator or showing where you can get the game for free. As far as im concerned theyre good articles for encouraging you to find an alternative, better way to play these games
 
  • Like
Reactions: Subtle Demise

the_randomizer

The Temp's official fox whisperer
Member
Joined
Apr 29, 2011
Messages
30,805
Trophies
2
Age
36
Location
Dr. Wahwee's castle
XP
18,205
Country
United States
Meh not really
they're just saying "hey you can emulate these games the option is available" they're not directly giving you the links to the emulator or showing where you can get the game for free. As far as im concerned theyre good articles for encouraging you to find an alternative, better way to play these games

If all you're going to do is respond to my opinions with angry reacts, then I should just block you. I have enough shit to deal with without having to deal with negativity. Thanks.

Either respect the fact I have different opinions or get the hell over the fact that people don't agree with your stance on Yuzu.
 

Drak0rex

Well-Known Member
Member
Joined
Oct 12, 2014
Messages
2,162
Trophies
0
XP
2,701
Country
United States
Again, I'm not saying piracy has or will kill any company, and I'm all for game preservation, but what pisses me off is that people bitch about the Switch being pricey or the games when people can clearly afford a powerful gaming rig to emulate said games. Like, I don't get it.

And then we have PC Gamer and Kotaku encouraging people to pirate games still being made two days after Dread launches.
You seem to be conflating someone having a nice PC with them having alot of money. I work minimum wage and saved up for about a year getting my PC together piece by piece. I also have several bills that I have to save up for throughout the year not to mention other weekly expenses. Plus, with the way the economy is collapsing, with food and gas going through the roof, Not everyone has money they can just throw around on a $300 console, and a library of games when there are more important things to put money toward. I've only ever bought one Switch game, and that was when I preordered Smash. And I don't even own a Switch! Planned on it, just can't seem to justify it now.
 

The Real Jdbye

*is birb*
Member
Joined
Mar 17, 2010
Messages
21,344
Trophies
3
Location
Space
XP
10,229
Country
Norway
Eh, there's really no metric by which Switch could be considered current gen. Eighth gen maybe, since it was meant to serve as a replacement for the failed WiiU, but in terms of power it's more akin to seventh generation consoles (just as WiiU was).
What? It's not about performance. The 8th generation was the Wii U, PS4 and Xbox One. The Switch is the successor to both the Wii U and 3DS, the PS5 and XSX are the successors to the PS4 and Xbox One. That makes them part of the same generation. Those are the facts.
Also keep in mind that the Switch is primarily a handheld so the specs should be considered with that in mind. It just doesn't really have any direct competition because Sony gave up on handhelds so there is no way to compare it fairly.
 

Xzi

Arm Cannon Enthusiast
Member
Joined
Dec 26, 2013
Messages
13,373
Trophies
2
Location
Spiraling Out
Website
gbatemp.net
XP
13,534
Country
United States
What? It's not about performance. The 8th generation was the Wii U, PS4 and Xbox One. The Switch is the successor to both the Wii U and 3DS, the PS5 and XSX are the successors to the PS4 and Xbox One. That makes them part of the same generation. Those are the facts.
Switch's release date puts it in the eighth generation alongside Wii U, as the ninth gen clearly didn't start in 2017. That also means Switch is solely responsible for extending the lifespan of eighth gen, as it's currently overlapping with ninth gen consoles. Basically I agree with the way Wikipedia has things ordered:

https://en.wikipedia.org/wiki/Home_video_game_console_generations
 
  • Like
Reactions: Obveron
General chit-chat
Help Users
    KennieDaMeanie @ KennieDaMeanie: Red rover red rover send deeze nuts on over