У меня есть функция гоночной игры: когда местный игрок умер, он может наблюдать за удаленным игроком в режиме погони, пока гонка не закончится. Сценарий камеры настроен таким образом, чтобы не было дрожания при следовании за локально управляемым RigidBody. Однако при слежении за RigidBody с дистанционным управлением становится очень нервным, поскольку я не знаю, как мне компенсировать задержку.
Есть ли способ сгладить камеру в этом случае? Вот моя текущая функция отслеживания в сценарии камеры:
private void Start()
{
positionDamping = 10f;
rotationDamping = 10f;
StartCoroutine(LateFixedUpdate());
}
IEnumerator LateFixedUpdate()
{
while(true)
{
yield return new WaitForFixedUpdate();
Follow();
}
}
void Follow()
{
wantedRotation = Quaternion.LookRotation(playerFrontView.position - transform.position);
wantedPosition = target.TransformPoint(0, height, -distance);
transform.rotation = Quaternion.Slerp(transform.rotation, wantedRotation, Time.deltaTime * rotationDamping);
transform.position = Vector3.Lerp(transform.position, wantedPosition, Time.deltaTime * positionDamping);
}
EDIT: GameObject камеры не создается под RigidBody.