summaryrefslogtreecommitdiff
path: root/DeepSky.Haze.Demo/BasicMouseLookControl.cs
diff options
context:
space:
mode:
Diffstat (limited to 'DeepSky.Haze.Demo/BasicMouseLookControl.cs')
-rw-r--r--DeepSky.Haze.Demo/BasicMouseLookControl.cs52
1 files changed, 52 insertions, 0 deletions
diff --git a/DeepSky.Haze.Demo/BasicMouseLookControl.cs b/DeepSky.Haze.Demo/BasicMouseLookControl.cs
new file mode 100644
index 0000000..8ce6d68
--- /dev/null
+++ b/DeepSky.Haze.Demo/BasicMouseLookControl.cs
@@ -0,0 +1,52 @@
+using UnityEngine;
+
+namespace DeepSky.Haze.Demo;
+
+public class BasicMouseLookControl : MonoBehaviour
+{
+ [SerializeField]
+ private float m_XSensitivity = 2.5f;
+
+ [SerializeField]
+ private float m_YSensitivity = 2.5f;
+
+ private Quaternion m_StartRotation;
+
+ private float m_X;
+
+ private float m_Y;
+
+ private void Start()
+ {
+ m_StartRotation = base.transform.localRotation;
+ }
+
+ private void Update()
+ {
+ m_X += Input.GetAxis("Mouse X") * m_XSensitivity;
+ m_Y += Input.GetAxis("Mouse Y") * m_YSensitivity;
+ if (m_X > 360f)
+ {
+ m_X = 0f;
+ }
+ else if (m_X < 0f)
+ {
+ m_X = 360f;
+ }
+ if (m_Y > 60f)
+ {
+ m_Y = 60f;
+ }
+ else if (m_Y < -60f)
+ {
+ m_Y = -60f;
+ }
+ Quaternion quaternion = Quaternion.AngleAxis(m_X, Vector3.up);
+ Quaternion quaternion2 = Quaternion.AngleAxis(m_Y, Vector3.left);
+ base.transform.localRotation = m_StartRotation * quaternion * quaternion2;
+ if (Input.GetKeyUp(KeyCode.Escape))
+ {
+ Application.Quit();
+ }
+ }
+}