It proves impossible to type notes for Computational Models of Speech, there are too many squiggly lines, too many omegas, too much supertext. So much for that.
Basic physics engine (second milestone) doesn't have to be fancy, "bells and whistles" can be added later. Updating state iteratively with accelerations, rotations, positions, et cetera. First-level behaviors, basically.
First milestone ( design document ) pushed back one class. Is the second (physics) also pushed back? His answer is unclear.
physics takes a state and a control, returns a state.
v = target.pos - self.pos
return (maxAccel * normalized(v), 0)
t = pathParamClosest (self.pos)
targetPos = path(t +Dt)
predictive path following
find where your headed
find the point on the path closest to that
aim for that instead
targetPos = self.pos + Dt * velocity
param = pathParamClosest (target.pos)
He just said "Catmull-Rom Splines" again.
Approaches to steering:
eg. "arriving" steering
weights associated with steering behaviors
w.i , s.i
s = sum.i(w.i * s.i(target))
but situations exist where weights can balance out
separation (not too close to neighbors)
cohesion (not too far away from neighbors)
alignment (with the velocity and direction of the flock)
Priority Based Combination
blended groups ordered by priority
find the highest priority behavior that provides "meaningful steering"
(high, collision avoidance)
(med, enemy avoidance)
(low, path following)