I love this project a ton, it might finally convince me to do something with my Wii U. Do you think you’ve got a good shot at getting the special stages full speed yet?
Take the USB-C Power Delivery pill. I modded my Wii U to work with power delivery and now I can take that sucker anywhere without needing to lug 2 different power bricks.
There's not much that can be done about it: Mania renders everything on the CPU instead of the GPU, and the Wii U's CPU is really not great. I've already done what I can to optimise the uploading of the framebuffer to the GPU, the sorting of the polygons, and the handling of V-sync during lag, all to squeeze as much performance out of the special stages as the CPU will allow. Converting the game to render with the GPU is not trivial. It's a bad part of Mania clashing with a bad part of the Wii U.
That's probably why it didn't get a Wii U release in the first place. Is that something being considered, or just too much to do?
I'm hoping to get around to it eventually: I've been writing an OpenGL renderer for Doom to refamiliarise myself with 3D rendering in preparation.
v1.0.7 of my Sonic Mania Wii U port is out. Full-speed special stages are finally here! The credit for this goes to Mefiresu, who ported Mania to the Wii. Mefiresu discovered that Mania needlessly clears several large buffers every frame, and that the function which is used to clear these buffers is incredibly slow on the Wii and Wii U. By not clearing these buffers, such a massive performance gain is made that I could play through all 14 special stages and not once notice any lag! Another noteworthy fix is that destroying a Badnik no longer causes the game to momentarily stutter. This had been driving me crazy for the longest time, but I never realised that the fix was so simple: for some reason, the decompilation calls a debug logging function whenever anything stat-related occurs. Because the game tracks how many Badniks are destroyed, the logging function is called every time a Badnik is destroyed. This logging function is expensive, causing it to make the game lag. Since debug logging is useless to players, I've disabled it entirely. Now the game should be as smooth as butter!
Just downloaded the new update... Just amazing. Still a shame that this never saw an official port, since now we know for sure it will run full speed. I guess next up is filters? Oh yeah, I'm trying to use the mod "Wii U Pro Controller" (so it will show fitting graphics for this platform, rather than a Switch/Joycons), but while the mod says it's loaded, it doesn't show in-game. What am I doing wrong?
I'm glad you're enjoying it. That mod replaces the graphics of the Xbox controller instead of the Switch one. You'd have to edit the mod's files to replace the Switch Pro Controller instead.
Must be because I have a data.rsdk file from the Switch version. I'll have to see if I can track down one from an Xbox or Steam dump instead. Edit: At least the Gamepad is recognized as an undocked Switch, so maybe I'll have to just find/create a mod that changes Switch to Wii U.