2013-05-01 2 views
0

Я разрабатываю игру, в которой я хочу бесконечную дорогу. Поэтому я создал 40 экземпляров дороги, которые я хочу повторять снова и снова.transform.Translate не работает должным образом в Unity

Я пишу следующий код, чтобы изменить положение дороги, которая не видна в камере сейчас и может быть повторен

roadPaths[currentRoad].transform.Translate(Vector3(0,0,startPositionValue)); 

Но я получаю следующее бревно

Log

В приведенном выше журнале вы можете видеть, когда startPositionValue равно 42, текущая позиция становится 43. Такая же проблема связана с другими значениями.

Помощь будет высоко оценена.

+0

Тег единства предназначен для Microsoft Unity. Не злоупотребляйте им. –

+0

Привет, Лекс, я сожалею об этом. –

ответ

1

Перевести относительное движение в GameObject в трехмерном пространстве. Он буквально переводит его с текущей позиции на относительное значение на новую позицию, которая является смещением от оригинала.

Явная установка вектора положения объекта преобразования GameObject устанавливает его в абсолютную позицию в мире.

+0

Да, вы правы! Спасибо за вашу помощь –

1

Наконец-то я могу решить проблему.

Следующий код работы

roadPaths[currentRoad].transform.position=Vector3(0,0,startPositionValue); 
Смежные вопросы