Emulation: A look at Ryujinx’s Spring 2020 Progress Report – 600 Playable games and fixes in many popular titles like Super Mario Maker 2 and SSBU!

Last month, Ryujinx’s playable games list was at 500 titles but now, it’s at a staggering 600 with new additions being made almost daily. Obviously, a good deal of work went behind such high compatibility numbers and in this article, we’ll be looking at Ryujinx’s Spring 2020 Progress Report published yesterday!

Summary of the Spring 2020 Progress Report

The last 3 months were exceptionally long due to the coronavirus situation and with many folks staying at home, there’s no doubt that more effort went into emulator development. As a result, Ryujinx is now much better at emulating the Switch than it was in March with its aforementioned compatibility list having grown significantly.

While there were many improvements, Disagea 4’s issue stands out as being pretty odd with its floor geometry being inside-out!

In view of this, the folks behind the emulator decided to write a progress report to detail what went on in spring with gdkchan being the one behind it and while it’s a fun read, a lot of information is given so a point-based summary will be given that focuses on the most important stuff!

The Progress Report, which was split into 3 primary sections includes:

  • Improvements to GPU emulation
    • The SSBU T-Pose bug was fixed which allows character animation to work correctly
    • Some titles like Astral Chain now display more nicely thanks to texture mipmap levels being calculated properly for all levels – this eliminates issues such as odd colours in affected titles
    • Texture buffers have been implemented which allow animated models to work in Unreal Engine 4-based games such as The Caligula Effect: Overdose
    • Conditional rendering, which deals with allowing/disallowing rendering based on GPU conditions, has been implemented with it fixing stuff in Super Mario Maker 2 and other titles while improving performance in others like Super Mario Odyssey
    • Depth clamping was introduced together with shader interpolation which fixes issues in some popular titles by Nintendo and others

      However, the floor’s geometry is now rendered properly!

    • Geometry is no longer inside-out in some titles like Xenoblade Chronicles 2 thanks to the implementation of face culling with Bindless textures also being introduced which allows games that use them like Metro 2033 Redux to actually render something
    • Shadow clipping was also introduced which makes shadows render better in Super Mario Odyssey and ARMS together with some game-specific fixes
  • CPU Emulation Improvements
    • An instruction called FXAXNMV which has to do with vector calculations has been implemented thus making some titles like World of Final Fantasy Maxima playable
    • Profiled Persistent Translation Cache (PPTC) has been implemented which saves ARM (Switch CPU) –> x86_64 (your PC’s CPU) translations to disk which eliminates the need of a recompliation/retranslation the next time you run a game – More can be read about it here
  • HLE (High Level Emulation) Improvements
    • An issue relating to kernel memory allocation was fixed which now lets older versions of SSBU to get in-game
    • GPU syncpoints which are used to regulate synchronisation with itself or with the CPU have been implemented while the surface flinger service has been re-written which fixes flickering in some titles
    • Updates and DLC are now supported letting you play more content
    • HID (input devices) support was improved
  • Multiple controllers are now supported in the GUI which makes life significantly easier
  • Three ‘Game of the month’ entries about which more information is given which is quite pleasant to read – these include Picross S4, Xenoblade Chronicles: Definitive Edition and Burnout: Paradise Remastered

Notable games that have seen improvements

Various first-party titles saw improvement during the spring with Kirby Star Allies earning playable status!

While improvements to emulators are very important, the bottom line is always which games work better and the Ryujinx folks took care to include various titles which were improved by their changes. These titles, most of which are pretty popular, include:

  • Yo-kai Watch 4 – unknown
  • Tokyo Mirage Session FE #Encore – ingame
  • World of Final Fantasy Maxima – playable
  • GRID – playable
  • Taiko no Tatsujin – not playable due to lack of motion control support
  • The Legend of Zelda: Breath of the Wild – ingame
  • Dragon Marked For Death – ingame
  • Kirby Star Allies – playable
  • Sega Ages: Phantasy Star – playable
  • Hyrule Warriors – ingame
  • Undertale – playable
  • Super Mario Maker 2 – playable
  • Animal Crossing: New Horizons – ingame

Through testing conducted by some community members such as EmulationFanatic and SeraUX, the Ryujinx playable games list has increased by over 450 games between March 21st and June 21st

Conclusion

As of right now, the Ryujinx compatibility list contains 565 titles that are in-game with 601 titles considered playable which are pretty significant numbers considering the Switch is only under 3.5 years old! As usual, a pretty capable PC is needed to emulate Switch games at playable frame rates and downloading Switch games ROMs online is illegal especially considering that most games are still being sold.



You may read the progress report by following the link below and support Ryujinx’s development on Patreon.

Ryujinx’s Spring 2020 Progress Report: https://blog.ryujinx.org/spring-2020-progress-report/

Ryujinx’s Patreon (monetary support): https://www.patreon.com/ryujinx

Ryujinx’s Compatibility List: https://github.com/Ryujinx/Ryujinx-Games-List/issues