Version: 2018.2

Camera.WorldToViewportPoint

Switch to Manual
public Vector3 WorldToViewportPoint (Vector3 position);
public Vector3 WorldToViewportPoint (Vector3 position, Camera.MonoOrStereoscopicEye eye);

Parameters

eyeOptional argument that can be used to specify which eye transform to use. Default is Mono.

Description

Преобразует position (позицию) из мирового пространства в пространство окна просмотра.

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
using UnityEngine;
using System.Collections;

public class ExampleClass : MonoBehaviour { public Transform target; Camera cam;

void Start() { cam = GetComponent<Camera>(); }

void Update() { Vector3 viewPos = cam.WorldToViewportPoint(target.position); if (viewPos.x > 0.5F) print("target is on the right side!"); else print("target is on the left side!"); } }