Я работаю над проектом со студией ind ie, и меня попросили внести изменения в работу камеры, когда игрок смотрит вверх, камера приближается и когда игрок смотрит уменьшить масштаб камеры.
Мое решение работает, но оно слишком быстрое. Камера будет увеличиваться, но в одно мгновение. Я пытался добавить больше лаппинга или сглаживания, но это не помогло. Я уверен, что есть более элегантный способ сделать это. Рад, что кто-нибудь может помочь.
float currentPitch = Values.pitch;
if(currentPitch > lastFramPitch){
Values.runTimeDistanceFromTarget.z += Values.zoomSensitivity;
Values.runTimeDistanceFromTarget.z = Mathf.Lerp(Values.runTimeDistanceFromTarget.z , Values.zoomIn , Values.zoomSensitivity);
}
else{
Values.runTimeDistanceFromTarget.z -= Values.zoomSensitivity;
Values.runTimeDistanceFromTarget.z = Mathf.Lerp(Values.runTimeDistanceFromTarget.z , Values.zoomOut , Values.zoomSensitivity);
}
lastFramPitch = currentPitch ;