WorldToScreenPoint
Transforms position from world space into screen space.
Read time 2 minutesLast updated 4 days ago
Definition
- Type: Method
- Namespace: UnityEngine
- Assembly: UnityEngine.CoreModule
WorldToScreenPoint(Vector3, MonoOrStereoscopicEye)
Transforms position from world space into screen space.
public Vector3 WorldToScreenPoint(Vector3 position, Camera.MonoOrStereoscopicEye eye)
Parameters
A 3D point in world space.
Optional argument that can be used to specify which eye transform to use. Default is Mono.
Returns
Type | Description |
|---|---|
| Vector3 |
Remarks
Screen space is defined in pixels. The lower left pixel of the screen is (0,0). The upper right pixel of the screen is (screen width in pixels - 1, screen height in pixels - 1).
The z coordinate is the distance from the camera in world units.
If position is outside the Camera's viewing volume, Unity returns a screen position that's off-screen.
Examples
using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour{ public Transform target; Camera cam; void Start() { cam = GetComponent<Camera>(); } void Update() { Vector3 screenPos = cam.WorldToScreenPoint(target.position); Debug.Log("target is " + screenPos.x + " pixels from the left"); }}
WorldToScreenPoint(Vector3)
Transforms position from world space into screen space.
public Vector3 WorldToScreenPoint(Vector3 position)
Parameters
A 3D point in world space.
Returns
Type | Description |
|---|---|
| Vector3 |
Remarks
Screen space is defined in pixels. The lower left pixel of the screen is (0,0). The upper right pixel of the screen is (screen width in pixels - 1, screen height in pixels - 1).
The z coordinate is the distance from the camera in world units.
If position is outside the Camera's viewing volume, Unity returns a screen position that's off-screen.
Examples
using UnityEngine;using System.Collections;public class ExampleClass : MonoBehaviour{ public Transform target; Camera cam; void Start() { cam = GetComponent<Camera>(); } void Update() { Vector3 screenPos = cam.WorldToScreenPoint(target.position); Debug.Log("target is " + screenPos.x + " pixels from the left"); }}