---
title: "WorldToScreenPoint获取到的屏幕坐标异常"
author: "石心.Yong"
published_by: "Perrin Yong"
canonical: https://www.pystone.net/notes/uwa-answer-world-to-screen-point-invalid-coordinate/
type: note
content_role: source
source_type: "source"
visibility: public
id_stability: rename-stable
source_path: "10-计算机、信息技术与工程/05-游戏图形与运行时/我的UWA问答/2021-05-26 - WorldToScreenPoint获取到的屏幕坐标异常.md"
content_hash: 8f90fadfdfe24a73bb08aba85a81de511f457548b17aa47dde885ff9aea1484f
knowledge_version: 224c990773de.5fa8af6e39fa
site_commit: 224c990773de166d23a886306577dd90379529ce
notes_commit: 5fa8af6e39fa3891d1b9b4832bfa6c4e0ecaaf0a
---
# WorldToScreenPoint获取到的屏幕坐标异常

> **note · 我的 UWA 问答**
> 本文收录我在 UWA 问答发表的公开回答。问题内容归原提问者；回答保留当时语境，技术结论可能受 Unity 版本、平台和项目条件限制。

## 问题

![1.gif](/media/74176487a4853263120f.gif)

![20181220230428406.png](/media/cb278cf6884da0881287.png)

用Camera.WorldToScreenPoint做屏幕映射的时候发现一个问题，当摄像机有旋转的时候，当摄像机移动到特殊位置时，返回值vector3.z值会从正变为负，而且x或y值也会发生正负突变

请教各位大神，这个该如何解决？

- 提问者：路人甲
- 提问时间：2021-05-25 23:46:37

## 我的回答

给个解决方案哈：

![image.png](/media/e79783f01ae466e6befd.png)

原理要自己慢慢悟了，不是BUG：相机的z轴方向上，物体在相机后面时，物体的坐标转换到裁剪空间后，x、y方向上，下面的会跑到上面，上面的会跑到下面。 想一下小孔成像的原理，或许能帮助理解。

- 回答时间：2021-05-26 21:25:22
- 最后更新：2021-05-28 08:45:03
- 采纳状态：已采纳

## 来源与关系

- 上位集合：[我的 UWA 问答](https://www.pystone.net/notes/my-uwa-answers/)
- UWA 标签：终端平台、GPU
- 原始问题：[WorldToScreenPoint获取到的屏幕坐标异常](https://answer.uwa4d.com/question/60acab5d6bb31032f979189d)
- 源页最后更新：2022-10-19 04:24:05
