Controllerの機能は、対象に向けて車を向けてアクセルを踏んだりブレーキを踏んだり、あとは目標地点に到達すると停止するといった機能を提供します。
例えば、クリックした位置へ車を走らせるといった挙動を作りたい場合は、WaypointTargetObjectをCarWaypointBasedから出し、クリックした位置へWaypointTargetObjectを移動させることで実現できます。これは実際楽しいです。
ただし、基本的に直線的に目標へ移動するのみの機能しか有していないので、障害物を回避する事はできません。
障害物を回避するような挙動を期待したい場合、Waypointを使用できます。これの機能は「Carが近づいてきたらWaypointTargetObjectの座標を次のポイントへ移動させる事です。これによって、車は障害物を(事前に指示されたコース通りに)回避しつつ、コースを走り抜けることが出来ます。まるでレーシングゲームです。