Движение камеры в unity/C#
Здравствуйте, я работаю над своей первой 2D-игрой в Unity. И у меня есть некоторые проблемы с камерой, которая кажется отстающей. Это похоже на микро-лаги, когда камера иногда следует за игроками. Должно ли это быть, потому что я использовал его в методе обновления?
Мой код выглядит примерно так:
void Update() { playerPosition = new Vector3(player.transform.position.x, player.transform.position.y, transform.position.z); if (player.transform.localScale.x > 0f) { playerPosition = new Vector3(playerPosition.x + offset, playerPosition.y, playerPosition.z); } else { playerPosition = new Vector3(playerPosition.x - offset, playerPosition.y, playerPosition.z); } transform.position = Vector3.Lerp(transform.position, playerPosition, offsetSmoothing * Time.deltaTime); }
Что я уже пробовал:
Таковы мои мысли. Этот метод обновления будет выполнять некоторые действия каждый следующий кадр. Так что если это 110 кадров в секунду, камера перемещается 110 раз. Должен ли я сделать это на более низком fps или поместить код где-то еще, просто не в методе обновления? Спасибо.