logo
ИнКО "Сайт педагога ДО"

 

Player Error 3D

Назначение компонента

Контроллер движения обрабатывает нажатие клавиш на клавиатуре или кнопок на игровом джойстике.

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

Например, для передвижения игрока вверх/влево/вниз/вправо часто используются клавиши w/a/s/d.

Для того, чтобы опросить клавиатуру в движке Unity 6-й версии, необходимо использовать класс Keyboard. В классе Keyboard перечислены все клавиши клавиатуры, а для того, чтобы определить нажата ли клавиша, используется метод isPressed().

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

 

public class Player : MonoBehaviour

{

   Animator player_animator;

   Keyboard keyboard = Keyboard.current;

   

   void Start()

   {

       player_animator= GetComponent<Animator>();

       player_animator.SetTrigger("stay");

   }

   

   void Update()

   {

       if (keyboard.wKey.isPressed)

       {

           player_animator.SetTrigger("walk");

       }

       else

       {

           player_animator.SetTrigger("stay");

       }

   }

}

 

Скрипт работает таким образом, что если клавиша w нажата, то устанавливается триггер аниматора walk, а если не нажата, тогда включается триггер stay.

Контроллер движения