В Unity для перемещения объекта вдоль определенной оси вы можете использовать преобразование.Переведите метод и передайте в направлении оси, вдоль которой вы хотите двигаться. Например, чтобы переместить объект вдоль оси Z, вы можете использовать следующий код:
transform.Translate(Vector3.forward * Time.deltaTime);
Это приведет к перемещению объекта вперед по оси Z на расстояние в единицах времени.deltaTime за кадр.
Если объект повернут, и вы хотите переместить его только вдоль оси Z, вам необходимо повернуть объект обратно в исходное положение, прежде чем перемещать его.
Quaternion originalRotation = transform.rotation;
transform.rotation = Quaternion.Euler(0, 0, 0);
transform.Translate(Vector3.forward * Time.deltaTime);
transform.rotation = originalRotation;
Это вернет объект к исходному вращению, переместит его вдоль оси Z, а затем вернет его к предыдущему вращению.
Другой способ - переместить объект вдоль оси мирового пространства, используя transform.position += Vector3.forward * Time.deltaTime; вместо transform.Перевести(Vector3.forward * Time.deltaTime);
В обоих случаях вам следует заменить Vector3.forward на направление, в котором вы хотите двигаться в мировом пространстве.