Legacy Documentation: Version 4.5.0

Script language:

  • JS
  • C#
  • Boo
Script language

Select your preferred scripting language. All code snippets will be displayed in this language.

GUIUtility.ScreenToGUIPoint

static function ScreenToGUIPoint(screenPoint: Vector2): Vector2;
static Vector2 ScreenToGUIPoint(Vector2 screenPoint);
static def ScreenToGUIPoint(screenPoint as Vector2) as Vector2

Description

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);
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def OnGUI() as void:
		screenPos as Vector2 = Event.current.mousePosition
		GUI.BeginGroup(Rect(10, 10, 100, 100))
		convertedGUIPos as Vector2 = GUIUtility.ScreenToGUIPoint(screenPos)
		GUI.EndGroup()
		Debug.Log(((('Screen: ' + screenPos) + ' GUI: ') + convertedGUIPos))