Camera.ViewportToWorldPoint 视窗转世界位置

function ViewportToWorldPoint (position : Vector3) : Vector3

Description描述

Transforms position from viewport space into world 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.

视口空间是归一化的并相对于相机的,相机的左下为(0,0);右上是(1,1);Z的位置是以世界单位衡量的到相机的距离。

Note that it transforms a x-y screen position, into a x-y-z position in 3D space.

请注意它是变换一个x-y屏幕位置到一个3D空间的x-y-z位置。

You provide the function with a vector where the x-y components of the vector are the screen coordinates and the z component is the distance of the resulting plane from the camera.

这个函数带有在屏幕坐标的x-y组件向量,并且z组件是在从相机产生的平面的距离。

using UnityEngine;
using System.Collections;

public class example : MonoBehaviour {
	void OnDrawGizmosSelected() {
		Vector3 p = camera.ViewportToWorldPoint(new Vector3(1, 1, camera.nearClipPlane));
		Gizmos.color = Color.yellow;
		Gizmos.DrawSphere(p, 0.1F);
	}
}
// Draw a yellow sphere at top-right corner of the near plane
// for the selected camera in the scene view.
//在近裁剪面的右上角绘制一个黄色的球,针对在场景视图中选中的相机
function OnDrawGizmosSelected () {
	var p : Vector3 = camera.ViewportToWorldPoint (Vector3 (1,1, camera.nearClipPlane));
	Gizmos.color = Color.yellow;
	Gizmos.DrawSphere (p, 0.1);
}
最后修改:2011年3月7日 Monday 11:07

本脚本参考基于Unity 3.4.1f5

英文部分版权属©Unity公司所有,中文部分© Unity圣典 版权所有,未经许可,严禁转载 。