Convert a point from screen space to GUI position.
Used for reconverting values calculated from GUIToScreenPoint
Note: In Unity the screen space y coordinate varies from zero at the top
edge of the window to a maximum at the bottom edge of the window. This is
different from what you might expect.
See Also: GUIUtility.GUIToScreenPoint.
// Check the difference between the mouse position (Screen) and // the converted GUI positions because of the group.
function OnGUI () { var screenPos : Vector2 = Event.current.mousePosition; GUI.BeginGroup (Rect (10,10,100,100)); var convertedGUIPos : Vector2 = GUIUtility.ScreenToGUIPoint(screenPos); GUI.EndGroup (); Debug.Log("Screen: " + screenPos + " GUI: " + convertedGUIPos); }
using UnityEngine; using System.Collections;
public class ExampleClass : MonoBehaviour { void OnGUI() { Vector2 screenPos = Event.current.mousePosition; GUI.BeginGroup(new Rect(10, 10, 100, 100)); Vector2 convertedGUIPos = GUIUtility.ScreenToGUIPoint(screenPos); GUI.EndGroup(); Debug.Log("Screen: " + screenPos + " GUI: " + convertedGUIPos); } }