title: Unity global mouse events
body: <p>Most Unity tutorials suggest using Mouse events within the Update function, like this:</p>
  
  <pre><code>function Update () {
  
     if (UnityEngine.Input.GetMouseButton(1)) { 
  
     } 
  
  }
  </code></pre>
  
  <p>This strikes me as really inefficient though, similar to using onEnterFrame in AS or setInterval in JS to power the whole application - I'd really prefer to use an events based system. </p>
  
  <p>the OnMouseDown() method is useful, but is only fired when the MouseDown is on the object, not anywhere in the scene.</p>
  
  <p>So here's the question: Is there a MouseEvent in Unity for detecting if the mouse button is down globally, or is the Update solution the recommended option?</p>