Then of course you can add on GPS for absolute position and route planning in 3 dimensions, and a ground height sensor for auto-landing, then you can add distance sensors on the sides for obstacle avoidance... it's all incredibly intuitive from a game programmer perspective. Then you can add in some signal filtering to mask out the range of vibrations from the motors and props being imperfectly balanced.
The hard part seems to be smooth rapid vertical descent. It's impossible to predict how the prop wash will interact with the wind and push the drone around as it descends into its own turbulence. I was tracking betaflight development for a while and was wondering if we'd ever see some kind of prop-wash calibration. Is there some adjustment of PID gains while descending through prop wash that could improve stability?