Version: 2023.1

Camera.WorldToScreenPoint

切换到手册
public Vector3 WorldToScreenPoint (Vector3 position);
public Vector3 WorldToScreenPoint (Vector3 position, Camera.MonoOrStereoscopicEye eye);

参数

position A 3D point in world space.
eye 可选参数,可用于指定要使用的眼睛变换。默认值为 Mono。

描述

position 从世界空间变换为屏幕空间。

Screenspace 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.

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"); } }