Assisted Rolling

I have been working hard to solve the issue of the snoot catching air while rolling on natural terrain. The realistic physics of the snoot rolling means that he will catch air after achieving a high enough velocity, but this makes controlling the character on natural terrain near impossible. There had to be some alternative to create a sense of grip for the snoot, one that feels natural. I began by creating an extended sensor with an array of 8 vectors that the snoot could use to judge how far he was from the ground, and then translate his velocity such that he would hug to the geometry below him by reading a normal vector of the angle of the polygon. From here I created a three other arrays that the snoot could use to detect edges and gradients of approaching slopes, differentiating between ramps and hills within the snoots grip range, to anticipate the topology and act accordingly.
Forgive my fast talking, as I was trying to talk less slowly in my videos, as my shorter videos are seemingly doing better. But here is a video of me explaining the new sensor array and rolling mechanics.