Tylko dlatego, że odpowiedź była najwyższa, gdy wyszukiwałem "Libgdx Move to Point", zamieszczę tutaj rozwiązanie.
Oto rozwiązanie, nie specjalnie dla aktorów:
Definiowanie ci zmiennych Vector2 w klasie, które zostaną wykorzystane do położenia obiektu:
protected Vector2 v2Position;
protected Vector2 v2Velocity;
Pozycja jest ustawiony w konstruktor lub gdziekolwiek indziej. Aby uzyskać prędkość obiektu i przesunąć go w danym punkcie:
public void setVelocity (float toX, float toY) {
// The .set() is setting the distance from the starting position to end position
v2Velocity.set(toX - v2Position.x, toY - v2Position.y);
v2Velocity.nor(); // Normalizes the value to be used
v2Velocity.x *= speed; // Set speed of the object
v2Velocity.y *= speed;
}
Teraz wystarczy dodać prędkości do pozycji i obiekt zostanie przeniesiony na punkcie danej
@Override public void update() {
v2Position.add (v2Velocity); // Update position
}
Można użyj również [Universal Tween Engine] (https://github.com/AurelienRibon/universal-tween-engine). Działa również dla sprite'ów i ma wiele funkcji. – trinity420