Вы можете получить направление, вычтя оба вектора и затем нормализовав его.
let direction = new THREE.Vector3().subVectors(destination.position, object.position).normalize();
Затем в вашей функции рендеринга обновите положение объекта на каждом кадре в этом направлении.Значение переменной скорости зависит от вас (по умолчанию 1).
object.position.x += direction.x * speed;
object.position.y += direction.y * speed;
object.position.z += direction.z * speed;
Вам потребуется логическое значение, например isMoving
или расстояние между объектами, чтобы знать, когда начинать и останавливать.
object.position.distanceTo( destination.position );
https://threejs.org/docs/#api/en/math/Vector3.distanceTo
Что касается анимации, я думаю, что вы просто хотите вызвать animation.play () при запуске и animation.stop (), когда достигнете места назначения.