# Reynold's Steering Behaviors

So I read Reynold's 1999 paper, [Steering Behaviors For Autonomous Characters][1], and I presume something went over my head, because it doesn't seem to make any sense to me.

steering_force = truncate (steering_direction, max_force)
acceleration = steering_force / mass
velocity = truncate (velocity + acceleration, max_speed)
position = position + velocity


Not sure how this makes any sense. Unless there's a constant time step of 1s, this integration (a forward Euler, which is bad in it's own right), doesn't make much sense to me.

The behaviors themselves don't seem to make much sense either:

Seek:

desired_velocity = normalize (position - target) * max_speed
steering = desired_velocity - velocity


The desired_velocity is in the wrong direction? Should be (target - position)? It also doesn't return a force - it returns a difference of velocities. It doesn't scale at all with mass.

Arrival

target_offset = target - position
distance = length (target_offset)
ramped_speed = max_speed * (distance / slowing_distance)
clipped_speed = minimum (ramped_speed, max_speed)
desired_velocity = (clipped_speed / distance) * target_offset
steering = desired_velocity - velocity


This just doesn't make any sense to me. This will flat out not work. Sure, you'll eventually get a vector pointing away from the target, but depending on the vehicle's mass, may not be able to stop it in time. It's also dependent on an arbitrary slowing radius not tied to the objects max thrust, max speed, or mass. Like Seek, it also doesn't actually return a force.

I stopped reading after that. Clearly there is something I am missing here..

• Did you have an issue you were trying to resolve? How about a specific question? Sounds like you're trying to start a discussion over a 17 year old paper. There are other resources out there if you're looking to implement steering. – MichaelHouse May 7 '16 at 3:10
• @Byte56 Clearly I'm missing something big and obvious in the paper. There are tons of tutorials and books that reference this paper - so they can't all be wrong. I just don't understand what I'm missing here. Like every steering reference I've come across has been based on this paper. – user78331 May 7 '16 at 15:13