что то не понялДобавлено (16.05.2012, 17:43)
---------------------------------------------
Если ты имел ввиду это
Code
Event e = Event.current;
float xp = e.mousePosition.x;
float yp = e.mousePosition.y;
Vector3 target= new Vector3(xp, yp,12.36975f);
myTransform.rotation = Quaternion.Slerp(myTransform.rotation,
Quaternion.LookRotation(target - myTransform.position),
2 * Time.deltaTime);
то этот способ работатет не корректноДобавлено (16.05.2012, 23:26)
---------------------------------------------
Наконец-то получилось.Вот с компоновал демку.
Управление:
R - Увеличить скорость (осторожнее)
F - Уменьшить скорость
A - Поворот по оси Z влево( если нужно развернуть корабль)
D - Поворот по оси Z вправо
Мышь - Управление кораблем
Web Demo
P.S. Как уменьшить чувствительность мыши? Просто отнимать определенную величину?
Добавлено (17.05.2012, 18:43)
---------------------------------------------
Почему при использовании такой конструкции
Code
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
Unity выдает ошибку :
NullReferenceException
UnityEngine.Camera.ScreenPointToRay (Vector3 position) (at C:/BuildAgent/work/b0bcff80449a48aa/Runtime/ExportGenerated/Editor/UnityEngineCamera.cs:276)