der erste vector von vec_diff, also die differenz zwischen 1 und 2 - ist das ergebnis ein abstand oder ein winkel? Ich blick da nicht ganz durch ...
vec_diff gibt die Richtung an, genau genommen, ist es eine Strecke im Raum, die Strecke zwischen 1 und 2. Das Ergebnis ist also ein Vector mit 3 Werten.
vec_dist (!) gibt den Abstand wieder - das Ergebnis ist ein Wert (nicht 3 wie in einem Vector)
Also:
vec_diff(temp.x, my.x, you.x);//berechnet die Strecke zwischen my und you mit der Blickrichtung zu my
vec_normalize(temp.x, speed);//Setzt die Streckenlänge auf den Wert von "speed"
vec_add(my.x, temp.x);//Addiert die resultierende Strecke zur Position von my hinzu