Вы пытались добавить некоторые ограничения на вашу камеру? Если он должен поворачиваться, чтобы следовать за мячом, вы можете заморозить положение двух осей (x и z) и позволить камере вращаться только вокруг оси y шара.
Вы можете поиграться с ограничениями в Инспекторе или использовать GetComponent<Rigidbody>().constraints = RigidbodyConstraints.FreezeRotationX;
в скрипте камеры.
(РЕДАКТИРОВАТЬ) Извините, это то, что вы сделали бы, если gameObject имееттвердое тело, но идея та же, если у него его нет.
Когда вы устанавливаете положение или поворот камеры, подумайте, какие компоненты положения / вращения вы действительно хотите изменить (х, у, г). Используйте offset = new Vector3 (offset.x, offset.y, offset.z)
и замените все, что не должно изменяться, на постоянную.
Кроме того, когда вы сделали камеру дочерним элементом мяча, вы могли бы установить ее так, чтобы каждый кадр обновлялся камерой таким образом. способ, которым это не катится с шаром. Вы можете сделать это, поместив код в метод обновления камеры, который устанавливает компонент x, y или z равным некоторой константе. Независимо от того, на какой оси находится наземная плоскость, это, вероятно, правильный выбор.