The Ryujinx Nintendo Switch emulator has made great strides in recent months, improving audio rendering, loading times, and even adding ‘local wireless multiplayer’ support.
Now, the developers of Ryujinx have announced a brand new feature: disk-based shader cache. This should greatly reduce frame drops and/or stutters, apparently.
With today’s update, delivered by Ryujinx developer Thog (who also implemented the complete audio renderer rewrite Amadeus earlier this year), the shaders you’ve compiled are now written to disk where they safely reside until being loaded into RAM on the next boot of the game. This means that even after you close and reopen the emulator, reboot your PC or update your GPU driver, Ryujinx will pre-load the appropriate game’s shaders for you in just a few seconds. All this nets a significant reduction—or complete elimination—of FPS drops and stutters in your favorite game. And there’s one more thing: the shader compilation process itself has been optimized, noticeably reducing stutters & FPS drops during initial gameplay.
Will I ever have to rebuild my shader cache/will it ever be invalidated?
Thanks to this clever implementation, the shader cache will rebuild itself on boot if an invalidating event occurs i.e. updating your GPU drivers or if Ryujinx releases an update that affects shader code. This rebuild process takes a few minutes but surely beats having to play the game with stutters again just to build up your cache. Upgrading your PC? No problem! You can even transfer your shader cache files to the new hard drive when it’s time; the shaders will be rebuilt for you on the first boot of the associated game.
Going forward, the new disk-based shader cache should also help LDN/local wireless multiplayer connections in the shader-heavy games. A new LDN preview build is on the way and will likely be available first to Patreon supporters.