Ответ: инерция для вращения камеры
if (Vector3.Distance(Input.mousePosition,centr)>Radiu s)
{
speed=0.95*speed +0.05* ((Input.mousePosition.x/Screen.width)-0.5f)* sensitivityX;
transform.Rotate(0,(speed), 0);
}
else
{
speed=0,95*speed;
}
}
как то так наверно. Типа есть скорость вращения уже. И есть текущее ускорение этой угловой скорости. Когда тормозит то есть курсор не придает ускорения то на скорость вращения действует сила трения, то есть с каждым кадром скорость вращения падает на какую то величину. А если курсор придает ускорение то уменьшаем скорость вокруг старой оси вращения и прибавляем часть от скорости вокруг новой оси вращения каждый кадр.
|