
1.22.7 / 02-03-2021
Cemu
Cemu is a closed source emulator which is considered to be in experimental state, yet it's able to play a handful of games quite smoothly. Please check compatibility list for more details.
Extensions:
GamePad input source override for cemu, including full motion sensing support (requires additional software, see the guide)
Adds code/data patching to your games at load-time, which you can activate and share the same way you do graphic packs!
Think of it like a pcsx2 plugin, implementing something not in the core
Community Graphic Packs which is used to upscale and change your Wii U games
- Allows the Nintendo Switch Pro Controller, Joycons and SNES controller to be used with the Cemu Emulator and System-Wide
Accuracy
Performance
Features
--
Windows: 7+
Other requirements
OpenGL 4.1 minimum (4.6 is used, if available)
RAM: 4 GB minimum, 8 GB or more recommended
Microsoft Visual C++ 2017 X64 Redistributable
Most Recent Changes
New in 1.22.7
general: The default vsync frequency (emulated refresh rate) is now 59.94 to match the actual console
Graphic packs can still set it to a flat 60
general: Fixed various small memory leaks
Vulkan: Revised internal swapchain management and fixed some synchronization bugs in the process
Double-buffered vsync should no longer cause graphical artifacts
Vulkan: Added a new experimental vsync mode
If enabled, Cemu will match the vblank event timing of the emulated display to the physical monitor on which Cemu is displayed
This reduces latency and avoids tearing by piggybacking on the emulated game's vsync implementation
For *perfect* results, the vsync rate in Cemu should be equal or slightly higher than the monitor refresh rate
As an example: When playing BotW on a 60 Hz monitor you want to set FPS++ to either 60 FPS or the next higher option. This is assuming stable 60 FPS can be maintained.
Alternatively, any integer ratio (1:2, 1:3, 1:4...) should give good results as well. E.g. 30 FPS on 60 Hz, 36/72 FPS on 144 Hz
Even for non-integer ratios (30 FPS on 144 Hz) this mode of vsync should perform at least as well as the Vulkan-native double buffered vsync mode
While this is only available for Vulkan right now, we plan on adding this to OpenGL in the near future
Vulkan: Cemu's internal shaders no longer show up in the overlay statistic ('Compiled x shaders'). Unlike game shaders they do not get cached and also do not cause any stutter
H264/DXVA2: Fixed incorrect handling of mismatching frame pitch
This should fix broken video playback in Mario Party 10 and Pikmin 3 on some GPUs
GX2: Fetch shaders with a size of zero won't cause a crash anymore (regression introduced with 1.22.6)
Resolves Minecraft crashing on launch
Previous Update Changes
New in 1.22.6c
general: Made command line parameter parsing more robust
Short name option for fullscreen (-f) should work again
New in 1.22.6b
GX2: Fixed a graphic regression that was introduced by the fetch shader rewrite
New in 1.22.6
coreinit: More potential fixes for a mystery crash related to file operations and callbacks
The crash can most often be observed when loading saves in BotW but also can happen randomly during gameplay
coreinit: Avoid a race condition in thread deallocators
Fixes random crashes in various games
coreinit: Added a safeguard to prevent a state corruption when a game uses MPTaskQ improperly
Fixes Tokyo Mirage Sessions freezing or crashing shortly after launch (#472)
coreinit: Fixed a race condition in spinlock implementation
Improves stability of Tokyo Mirage Sessions and likely some other games
coreinit: Fixed OSScreenClearBufferEx() clearing a much larger data area than it should
This change should fix flickering and random crashes due to memory corruption in some homebrew titles
coreinit: Fixed an issue where the priority of default core threads was too high, leading to CPU starvation of other threads
Fixes random softlocks in Yoshi's Woolly World
GX2: Reworked GX2 event queue implementation to match behavior of actual console more closely
This resolves random softlocks in games that rely on GX2 events
GX2: Reworked fetch shader generation (GX2InitFetchShaderEx) to match behavior of actual console more closely
Improves compatibility with games that are picky about correct shader size. E.g. The Fall is now playable and no longer crashes on boot
Shader caches and graphic packs are not affected by this change
OpenGL/Vulkan: Fixed generation of invalid shader code when accessing integer texture samplers with certain parameters
Fixes an issue where the game screen was invisible in Virtual Console DS titles
debugging: wxWidgets errors are now written to log.txt instead of showing an error message box
debugging: Added --force-interpreter command line parameter to always force interpreter regardless of any game profile settings