I’m a little surprised this hasn’t been implemented into UPBGE/Blender 3.0x, it’s been years since 2018. You can actually add a metarig cat and the moment you click on any bone, it will cause a like 50% chance of a crash due to the fact its done entirely on CPU, not GPU.
Even on a powerhouse computer like the M1 iMac, the chance of crashing due to rigging is still the same as on a PC. Blender and UPBGE are both great pieces of modelling software, but the CPU-skinned armatures are what holds them back from being truly great for animators and people who design rigged models and game designers.
This is why I have also come to dread rigging in Blender/UPBGE because of the crashes that are associated with it because there is no GPU hardware skinning that patches out the crashing - the crashes are caused by the app simply running out of memory due to CPU-drawn armatures that eat up a lot of RAM and use a high amount of CPU power. GPU hardware skinning would reduce these crashes a tremendous amount by making the workload be on the GPU’s side, while the CPU handles something else related to bones. Currently, the workload is entirely shoved on the CPU, constantly draining the RAM of the app, and this leads to a crash.
I don’t design apps, but I think UPBGE/Blender definitely both need this feature of GPU hardware skinning. It’s version 0.3.6 of UPBGE and we still have no sign of the feature really, just a few prototypes.
It would be nice to see it being implemented kind of soon, and it has been marked as a high priority feature, indicating it could be in version 4.0, I guess.
The reason I prefer UPBGE over other game engines is because its free, easy to learn, easy to master, efficient, and has an internal player and you don’t have to build the game - you can just press P, or use Blenderplayer to launch an external window to test, which is useful if UPBGE starts crashing in a certain part and you need to fix it without crashing the main app, or running out of RAM in the internal player.
The only disadvantages to UPBGE are the random crashes that may occur when editing (I have seen a few of these get ironed out over time), and the CPU-skinning of armatures, which is where the real issue lies, as it breaks the modelling process of rigs.
If UPBGE didn’t autosave every couple of seconds (or minutes), you would lose everything since your last save. This used to happen in versions before 2.5, so UPBGE and Blender have both come a very long way.
GPU skinning would be the cherry on top to stabilising an app that is nearly out of the alpha phase, as UPBGE has been in alpha for a very long time ever since 2.8, which depreciated the entire legacy BGE and threw it in the graveyard, which disappointed me, since I love UPBGE and want to see it expand.
The future does look bright for both Blender and UPBGE as a whole. I have seen Blender go from being a crash-prone Windows XP app in 2.45a to being an app that is actually really good for special effects and making your own animated GiFs and animations in 3.3 LTS. While UPBGE is still rather like a rickety bridge in terms of stability, it is slowly getting better over time. The only issues that really stand out now are occasional crashes and the CPU-based rigging that can really make UPBGE and Blender freak out and crash due to running out of memory. It’s not lines of code that you may think at first, but CPU and RAM, so placing this into the task of the GPU would prove to be a massive benefit to both the user and the app in terms of stability and internal/external player speed. It’s a win-win for Blender and UPBGE. I hope UPBGE excels in the future.