Изменить смещение в C # с клавиатуры? - PullRequest
0 голосов
/ 27 сентября 2018

Как изменить смещение игрового объекта с помощью клавиатуры на C # для единства?Я пытался использовать это, но ничего не происходит:

if (Input.GetKey(KeyCode.W))
   platform[i, j].transform.position = 
       new Vector3(platform[i, j].transform.position.x, 
                   y *= y,
                   platform[i, j].transform.position.z);

Ответы [ 2 ]

0 голосов
/ 28 сентября 2018

Используйте метод Translate в вашем преобразовании:

if (Input.GetKey(KeyCode.W))
    platform[i, j].transform.Translate(0,1,0);

Этот пример очень быстро переместит объект вверх.Вы можете использовать platform[i, j].transform.forward в качестве вектора, если хотите двигаться вперед.

См. Документы по Translate .Также обратите внимание на параметр relativeTo.Полезно для локального против мирового космического движения.Также обратите внимание на использование deltaTime в примерах.

Также обратите внимание на комментарий @ csblo, чтобы поместить этот код в метод Update().

0 голосов
/ 27 сентября 2018

хорошо, ваш код кажется нормальным, но, если ваш 'y' равен 1 или 0, то y * = y не сможет перемещать ваш gameObject только по оси Y.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...