Показать сообщение отдельно
Старый 31.05.2013, 02:48   #2
dsd
Мастер
 
Аватар для dsd
 
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений
(для 1,836 пользователей)
Ответ: инерция для вращения камеры

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;
}
}

как то так наверно. Типа есть скорость вращения уже. И есть текущее ускорение этой угловой скорости. Когда тормозит то есть курсор не придает ускорения то на скорость вращения действует сила трения, то есть с каждым кадром скорость вращения падает на какую то величину. А если курсор придает ускорение то уменьшаем скорость вокруг старой оси вращения и прибавляем часть от скорости вокруг новой оси вращения каждый кадр.
(Offline)
 
Ответить с цитированием