[Experimental] Shaders compile while playing game, implemented Boost mode
Pre-releaseOkay, so Switch already comes with a Boost mode built-in that a lot of games use. It basically temporarily overclocks the CPU to 1.7 GHz while the GPU is downclocked to less than 100 MHz. This lets the CPU do most of the heavy lifting while its needed and GPU isn't necessary. Since shader compilation is a CPU-intensive task, I was like - hey, lets let the CPU boost itself while it compiles shaders. Turns out it does work. Really, really well. Only downside I see right now is that you'd get slightly worser battery life since the overclocking, but I've made it so that it downclocks to your normal clock speeds as soon as the shaders are done compiling. Lemme know how it works for y'all.
Also:
- Added a small GUI indicator on top-left portion of the screen that shows if shaders are compiling and how many are left. Similar to how you see in CEMU and other emus.
- Divided the shader compilation to 3 cores (0, 2, 3). This takes the load off core 3, which was otherwise the backbone for shader compilation (I know I said it was core 2 in my previous release, it's apparently core 3. OR AS FAR AS I KNOW, I AM DUMB OK).
If I had to compare, this makes Dekopon shader compilation much similar to how Tico does it, but with less stutters? Expect to see a bunch of shader explosions and bad renders while the shaders compile though.
Have fun, y'all.