Поскольку мы рассмотрели, как создать проект Unity в нашей предыдущей статье, мы настроим простую сцену для демонстрации движения и взаимодействия.
Цель: настроить наши игровые объекты с помощью компонентов, чтобы обеспечить взаимодействие и движение.
Мы можем настроить Floor и Player Character нашего GameObject с соответствующими компонентами.
Мы заменяем Mesh Collider по умолчанию на примитивный Box Collider, это дешевле с точки зрения производительности, чем использование Mesh Collider для простой формы.
Затем мы добавим компонент Rigidbody к нашему игровому персонажу в Инспекторе. Это позволяет нам использовать движок PhysX.
Присоединение Rigidbody к нашему игровому персонажу также может повлиять на дочерние компоненты внутри родительского объекта.
Включение Gravity на нашем Rigidbody добавит гравитацию, и мы можем включать и выключать ее по желанию.
Мы можем заставить нашего игрового персонажа двигаться с помощью компонента Rigidbody, связанного с силами и наклонами. Кроме того, мы можем перемещаться внутри Script’s.
Мы создадим новый скрипт с именем PlayerController.
Наш класс PlayerController отвечает за информацию Player Character, которая должна храниться для нашей игровой логики.
Теперь, когда у нас есть доступ к нашему Rigidbody или 'rB', мы можем проверить значение null, чтобы увидеть, было ли оно уничтожено или отсутствует, поэтому мы не не сталкиваться с частыми ошибками в будущем.
Мы можем просто вернуть условие, если Rigidbody не равно нулю.
Перемещение нашего Персонажа игрока в Обновление.
Консоль будет выведена, если мы удерживаем клавишу «W» (GetKey) / (GetKeyDown) одним нажатием.
Применение движения с нашим Rigidbody.
В настоящее время у нас есть базовая реализация для применения движения с нашим Rigidbody, и нам нужно задать величину скорости, чтобы он работал правильно.
Мы можем настроить нашу переменную скорости в Инспекторе.
Итак, теперь у нас есть Rigidbodyдвижение в направлении вперед, когда удерживается клавиша W.
Задание: заполните входные значения, чтобы отразить окончательный результат ниже.
Окончательный результат движения Rigidbody ‘rB’.