It's great, I love it! It's quite similar to this project on iOS: https://github.com/Baddaboo/ClassicKit
They even went as far as building a fake Internet Explorer app.
Woah, amazing attention to detail there. I love that they include this image in the README [0], buttons were the first thing that hooked me into building this.
There is definitely an impact on the battery. The FFT part is well optimised (thanks to the Accelerate framework). What is costly is mainly the shader... and it really depends on the shader. A very simple shader is usually less than 5% of the GPU usage (according the Xcode Instruments, and on a recent iPhone). However if you do a lot in your shader it's going to be much more costly.
I built a game around this recognizer ("Magic Touch": https://www.youtube.com/watch?v=Ze9k0lseb-8 ).
It's a very neat way to do shape recognition in real time. It's very well suited for mobile devices although it's far from being perfect. The interesting bit was to make the recognition lenient enough but still good enough to recognize the shapes accurately. Think about the difference between a 'V' and a 'U'.
Anyway I would love to see more real world uses of this clever recognizer!
GBA programming was used in my school's class that covered (among other things) introductory C. It's really fun and pretty simple for beginners to write for bitmap mode.
That's exactly how I started programming! It was indeed a lot of fun. I remember being blown away the first time I saw a game/demo I wrote run on the real hardware. It was so rewarding.
It's nice to see teachers using GBA programming as an introduction. It's so much more fascinating for a beginner in comparison to a regular "Hello World" written in a terminal or a basic sorting algorithm in C.
[0]: https://musically.com/2020/05/13/what-are-user-centric-music...