AI - Einführung, Suche & Exploration, Steering & Control, Path Finding  

Steering Algorithmen

Wie funktioniert der Steering Algorithmus Arrive?

1. Bestimme Bewegungsrichtung und Abstand zum Ziel
        d = target.pos (t) - agent.pos (a)
 
2. Wenn Agentenposition im Toleranzradius liegt (|d| < rs) beende Arrive (success)
 
3. Wenn Agentenposition außerhalb der Annäherungsdistanz liegt (|d| > rp) setze
        targetSpeed := maxSpeed
andernfalls
        targetSpeed := maxSpeed * (| d | / rp)
dann tatsächliche Richtung festlegen
        v = norm(d) * targetSpeed
 
4. Bestimme Beschleunigung (steering.linear)
        s = (v - agent.v) / δ
Wenn abs(s) > maxAcceleration begrenze die Beschleunigung
        s = s / abs(s) * maxAcceleration

Diskussion