Developer(s) | Team Yuzu |
---|---|
Initial release | January 14, 2018 |
Repository | github |
Written in | C++ |
Operating system | |
License | GPL-3.0-or-later |
Website | yuzu-emu |
Yuzu (sometimes stylized in lowercase) is a free and open-source emulator of the Nintendo Switch, developed in C++. Yuzu was announced to be in development on January 14, 2018,[1][2] 10 months after the release of the Nintendo Switch.[3]
The emulator is made by the developers of the Nintendo 3DS emulator Citra, with significant code shared between the projects. Originally, Yuzu only supported test programs and homebrew.
Yuzu used a network service called Boxcat as a replacement for Nintendo's BCAT dynamic content network.[4] This feature was later removed due to being non-functional. The implementation will eventually be replaced with one that allows the use of local BCAT files dumped from a Nintendo Switch.[5]
Yuzu also offers a resolution rescaling feature that simulates docked, undocked and beyond-native resolutions. After initially adding support for beyond-native resolution, the feature was removed again due to stability issues and inconsistent behaviour on different GPU vendors shortly after.[6][7] Two years after the removal, the feature was finally readded under the codename "Project A.R.T".[8]
In December 2019, Yuzu added an experimental Vulkan renderer to its Early Access build and brought it over to its mainline builds.[9] On May 9, 2020, the development team announced an update that included experimental multi-core CPU emulation[10][11] codenamed Prometheus.
In November 2020, Yuzu's developers added online functionality to the emulator but removed it shortly thereafter.[12][13]
In June 2021, Fastmem support was added to early access builds of Yuzu.[14]
In July 2021, Yuzu concluded the "Project Hades", which aimed to rewrite the shader decompiler, bringing an improvement of the overall performance of the emulator.[15]
In a statement to PC Gamer, the developers of Yuzu said that they were interested in potential optimizations to the emulator for use on the Steam Deck.[16]
On May 30, 2023, an Android version was released.[17]
In October 2018, Kotaku published an article noting that Super Mario Odyssey was playable. The author of the article expressed concern with the ability of Yuzu to emulate games that were available commercially at the time.[18]
PC Gamer noted that the emulator was able to run Pokémon: Let's Go, Pikachu! and Let's Go, Eevee! shortly after the games' release, albeit with audio issues.[19]
In October 2019, Gizmodo published an article noting that Yuzu was able to emulate some games at a frame rate roughly on par with the actual console hardware.[20]
Since 2021, various outlets have reported that Yuzu can run on the Steam Deck, enabling play of Nintendo Switch games on the system.[21][22][23][24][25]
Following the publication of a story by Kotaku on October 9, 2021, which covered the ability of both Yuzu and Ryujinx (another Switch emulator) to play Metroid Dread,[26] Nintendo contacted the site's editorial team requesting a revision of the article, which was seen as encouraging piracy of the title. Kotaku responded by updating the article to remove language that was interpreted as such, and apologized to readers for the error. However, in an editorial addendum, they maintained that they believed emulation to be an important part of video game preservation efforts and that their coverage of the emulators did not equate to an encouragement to pirate the game.[27]
After the publicization of Yuzu's ability to run on the Steam Deck, several YouTube videos providing guidance on how to do so were taken down. Though it was not known who had issued the takedowns, outlets reporting on the news believed that it was Nintendo, given their past history of issuing DMCA takedown notices against unofficial content creators.[28][29]
On August 23, 2023, Denuvo Software Solutions GmbH announced that they had developed "Nintendo Switch Emulator Protection", a new digital rights management solution for Nintendo Switch titles which aims to allow developers to block play via emulators such as Yuzu.[30][31][32]