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.

Camera.ScreenToViewportPoint

Switch to Manual
ScreenToViewportPoint(position: Vector3): Vector3;
Vector3 ScreenToViewportPoint(Vector3 position);
def ScreenToViewportPoint(position as Vector3) as Vector3

Description

Transforms position from screen space into viewport space.

Screenspace is defined in pixels. The bottom-left of the screen is (0,0); the right-top is (pixelWidth,pixelHeight). The z position is in world units from the camera.

Viewport space is normalized and relative to the camera. The bottom-left of the camera is (0,0); the top-right is (1,1). The z position is in world units from the camera.

	// When attached to a GUITexture object, this will
	// move the texture around with the mouse.

	function Update () {
		transform.position = Camera.main.ScreenToViewportPoint(Input.mousePosition);
	}
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour {
    void Update() {
        transform.position = Camera.main.ScreenToViewportPoint(Input.mousePosition);
    }
}
import UnityEngine
import System.Collections

public class ExampleClass(MonoBehaviour):

	def Update() as void:
		transform.position = Camera.main.ScreenToViewportPoint(Input.mousePosition)