Select your preferred scripting language. All code snippets will be displayed in this language.
Transforms position
from world space into viewport space.
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.
// Finds out whether target
is on the left or right side of the screen
var target : Transform;
function Update () {
var viewPos : Vector3 = camera.WorldToViewportPoint (target.position);
// viewport coordinates range from zero to one
if( viewPos.x > 0.5 )
print ("target is on the right side!");
else
print ("target is on the left side!");
}
using UnityEngine; using System.Collections; public class ExampleClass : MonoBehaviour { public Transform target; void Update() { Vector3 viewPos = camera.WorldToViewportPoint(target.position); if (viewPos.x > 0.5F) print("target is on the right side!"); else print("target is on the left side!"); } }
import UnityEngine import System.Collections public class ExampleClass(MonoBehaviour): public target as Transform def Update() as void: viewPos as Vector3 = camera.WorldToViewportPoint(target.position) if viewPos.x > 0.5F: print('target is on the right side!') else: print('target is on the left side!')