Параллельно подготовке к поиску работы я учусь делать механики которые всегда хотел реализовать😏
Механика передвижения от первого лица самая часто встречающаяся, поэтому очень важно иметь её у себя в пуле готовых механик🧩
😎Ведь как говорил Илья Яковлев:
Геймплей это часть отдельной игры которую тоже надо прорабатывать и уметь делать. Если ты умеешь делать отдельные геймплейные механики, это еще не значит что ты сможешь довести целую игру до конца. Но в то же время ты не сможешь сделать игру не умея делать отдельные геймплейные механики.
🤓 Реализацию выполнил используя компонентный подход.
Вместо единого
PlayerController раздел логику на три компонента PlayerCameraLook, PlayerJump, PlayerMovement, каждый из которых может использоваться независимо друг от друга, что позволяет на лету отключать какой-то функционал или легко расширять существующий.❗️Из интересного:
*️⃣Когда я показал механику другу, он заметил интересный баг при котором персонаж мгновенного падал с платформы любой высоты, а при прыжке падание было плавным.
*️⃣Оказалось баг заключался в том что гравитация постепенно накапливалась когда персонаж стоял на земле и при сходе с платформы из-за огромной накопленной прижимной силы он мгновенно оказывался на земле. А при прыжке накопленная гравитация сбрасывалась и всё было нормально.