В моей игре у меня есть камера, и я хочу иметь FPS как поворот, прикрепленный к этой камере.
Итак, если я перемещаю курсор влево, я хочу, чтобы моя камера вращалась влево. Если я перемещаю свой курсор вверх, то кулачок должен смотреть вверх и т.д.
В настоящее время я частично работаю. Я могу смотреть влево и вправо, вверх и вниз. Проблема возникает, когда я смотрю вниз, а затем перемещаю курсор влево и вправо. Затем он дает эффект "Roll".
Посмотрите это видео, чтобы увидеть, что я имею в виду: http://www.screencast.com/t/Phedh8H0K13
Очевидно, когда я смотрю вниз, я все же хочу иметь эффект "Яр" вместо эффекта "Ролл". Кто-нибудь знает, как это сделать? Это то, что я до сих пор:
// Update is called once per frame
public override void update ()
{
this.camera.transform.rotation *=
Quaternion.AngleAxis( Time.deltaTime * sensitivityRoll * Input.GetAxis("Vertical"), Vector3.forward );
this.camera.transform.rotation *=
Quaternion.AngleAxis( Time.deltaTime * sensitivityYaw * Input.GetAxis("Mouse X"), Vector3.up );
this.camera.transform.rotation *=
Quaternion.AngleAxis( Time.deltaTime * sensitivityPitch * Input.GetAxis("Mouse Y"), Vector3.left );
}