Low resolution combine with a decently fast processor means software rendering is entirely doable. It's a comparable situation to very early PC 3D gaming.
It's especially crazy that a bunch of them look to be rendering legit polygon scenes— this isn't early nineties 2.5D titles like Doom and Wolf3d running on 486 PCs.
Ok you could argue that’s more complex on the GBA.
I would argue otherwise; interfaces to other people’s stuff always are the most difficult parts of programming. When you do it yourself (3D projection etc.) it’s just you and reason and that’s not so bad.