summaryrefslogtreecommitdiff
path: root/Assets/SampleUI/Scripts/TiltWindow.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Assets/SampleUI/Scripts/TiltWindow.cs')
-rwxr-xr-xAssets/SampleUI/Scripts/TiltWindow.cs29
1 files changed, 29 insertions, 0 deletions
diff --git a/Assets/SampleUI/Scripts/TiltWindow.cs b/Assets/SampleUI/Scripts/TiltWindow.cs
new file mode 100755
index 0000000..8325504
--- /dev/null
+++ b/Assets/SampleUI/Scripts/TiltWindow.cs
@@ -0,0 +1,29 @@
+using UnityEngine;
+
+public class TiltWindow : MonoBehaviour
+{
+ public Vector2 range = new Vector2(5f, 3f);
+
+ Transform mTrans;
+ Quaternion mStart;
+ Vector2 mRot = Vector2.zero;
+
+ void Start ()
+ {
+ mTrans = transform;
+ mStart = mTrans.localRotation;
+ }
+
+ void Update ()
+ {
+ Vector3 pos = Input.mousePosition;
+
+ float halfWidth = Screen.width * 0.5f;
+ float halfHeight = Screen.height * 0.5f;
+ float x = Mathf.Clamp((pos.x - halfWidth) / halfWidth, -1f, 1f);
+ float y = Mathf.Clamp((pos.y - halfHeight) / halfHeight, -1f, 1f);
+ mRot = Vector2.Lerp(mRot, new Vector2(x, y), Time.deltaTime * 5f);
+
+ mTrans.localRotation = mStart * Quaternion.Euler(-mRot.y * range.y, mRot.x * range.x, 0f);
+ }
+}