February 2020 Progress Update (Patreon)
Content
A good day to you all yuzers out there! It has been a while since we put out a report, but if you've been following us closely on GitHub or Discord, you definitely know that progress hasn't ceased. The year has been off to a great start – we've had over 100 Early Access updates so far in 2020!
While our Early Access builds have become widely popular, we received feedback that it wasn't clear as to "What's new?" with so many updates. To address this, we will be doing mini-reports with more regularity, which will contain brief details on the progress we've made.
Now, we'll be going over the progress that has been made over the past few months to give you a better grasp on what has been improved in the emulator.
Since releasing the new Vulkan renderer in Early Access, we've been slowly updating and upgrading the this graphics backend to achieve feature and performance parity with our existing OpenGL renderer. The Vulkan renderer, while bringing greatly improved performance for AMD GPU users, also brought in fixes and improvements to its OpenGL counterpart. We've tracked and fixed graphical bugs in games like Pokémon: Sword & Shield, The Legend of Zelda: Link's Awakening, and many more.
Later, we made some improvements to both the performance and game compatibility of the emulator. With these changes, games like Mario Tennis Aces, Crash Team Racing, and Astral Chain now run very much better than before, with just minor graphical glitches here and there. We've fixed many graphical glitches and transparency issues in Luigi's Mansion 3. We've also fixed many bugs with shadows in Pokémon: Sword & Shield, Pokémon: Let's Go, Eevee! and Let's Go, Pikachu!
The new year brought new energy to our developers and they delivered many game compatibility improvements. If you've used yuzu (even on a high-end PC), you likely would have noticed that many games still stutter a lot. This was mainly due to performance issues with our audio emulation. In mid-January, we introduced a new and improved Audio Interpolation algorithm, which fixed most of these stuttering issues. In addition to this, we also implemented a basic voice mixing system which currently only supports stereo mixing. This fixes many of the audio issues with Super Mario Odyssey and The Legend of Zelda: Breath of the Wild.
We received many requests from users, asking us to fix audio speed and timing issues. As a direct result of these, we added an experimental Real Time Audio setting which when enabled, played audio at normal speed irrespective of what speed the game was running at. We also managed to fix various issues affecting newer Unity games like Terraria, Pokémon Mystery Dungeon Demo and others.
In February, we fixed bugs in various games and also managed to improve their overall compatibility:
- The graphics issues related to interactions with fog, water, etc in Super Mario Odyssey are now completely fixed.
- In Breath of the Wild, the graphical glitches with grass rendering have now been fixed.
- Luigi's Mansion 3's analog input is fixed and both visuals and performance have improved.
- Mario & Sonic At Olympic Games Tokyo 2020, which didn't even render properly before, and Crash Bandicoot N'sane Trilogy, which had graphical issues, now render almost perfectly with near full speed performance.
- Mario Tennis Aces now runs much better compared to the graphical mess it was before.
- Splatoon 2's paint interactions are now fixed too, as well as the fonts in the menus.
In the past week, we've had great help from a first time contributor to the project - NamKazt, who fixed many graphical issues in Luigi's Mansion 3 and Kirby Star Allies. Our resident bunny rabbit - bunnei, managed to fully investigate and properly fix the remaining audio issues that were affecting games like Crash Team Racing (audio crackling). Apart from these, many minor fixes and updates were made to the frontend (GUI), core and GPU emulation of yuzu.
That was a quick peek into what improvements and fixes we've made over the past few months. We thank each of you for your constant support and encouragement, without which all this wouldn't have been possible. Until next time, keep playing on yuzu!