#ScreenShotSaturday: PID Controller rolling a Rigidbody along AStar under BT!?

Continuing from yesterday’s short one, today is Saturday so hope for a biggie with lots of awesomeness … and definitely not getting tangented creating a #ScreenShotSaturday since I did that earlier in the week ūüėõ


The picture is the PID Controller successfully controlling the rolling Rigidbody along an A* path including a section ramped sideways to the direction of travel (to show it compensating for the disturbance caused). ¬†Of course, the whole thing is under the control of a Behavior Designer behaviour tree. ¬†The cyan line is the current move vector and red line that hovers, growing and twisting above it, is the force vector it’s trying to apply (along with a fading history). ¬†The purple cross on the floor is its current waypoint along the path. ¬†The yellow or green wire sphere is its range it will accept to that waypoint. ¬†Sadly GifCam got some oddity on the third section of the path where the screen went all green but I think it’s still quite cool to watch ūüôā

For context, this is the development view of my Snowman AI needing more health. ¬†In Snowman Scuffle, the snowmen fuel the snowballs they throw with¬†their own health = snow! ¬†Obviously injury also results in their losing snow health. ¬†To regain snow, Snowmen need to roll in some snow that’s appropriately smooth, deep, etc. ¬†I have developed an A* path generator that determines where is ‘good snow’ (perhaps I’ll go into detail on that some time if I need to work on it more or by request). ¬†Once the AI gets the path from that system, this aspect then is responsible for getting the Snowman rolling along it at a speed appropriate to gain the snow health it needs.

In fact, this is a blog post not a tweet, why don’t we push the boat out and have… another animation!


Here you can see (again in development view), the snowman shooting at a target dummy (which turns red when hit — I’ve since fixed the missing seen here).

And, when in-game, we get


(Note, most¬†of my animated GIF lacks image effects that usually run — GIFs just don’t like all the extra colours, etc!)

Y’know what? ¬†Per my “post more often” resolution, I’m gonna post this to link from my¬†#ScreenShotSaturday tweet then continue my devlog post separately.

P.s. Hmm… so that whole “definitely not getting tangented creating a #ScreenShotSaturday” thing kind’a didn’t work, huh! ¬†A morning of finding old screenshots, tweaking WordPress and creating a new header image. ¬†Still, at least the devblog is semi public now! ¬†Gulp. ¬†Right, tunes on, fresh coffee in-hand — definitely back to applying the PIDController path-following logic to non-rolling … by first diagnosing that weird Behavior Designer bug!


One thought on “#ScreenShotSaturday: PID Controller rolling a Rigidbody along AStar under BT!?

  1. Pingback: AI getting stuck, part 3 | Snwscf Dev Blog

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s