Unity,如何获得相机角度宽度

时间:2017-08-20 03:04:38

标签: c# unity3d camera width

我正在制作游戏,必须在屏幕上设置所有敌人的目标号码 我很难找到像IsInsideCameraView(gameObject)

这样的功能

现在我正在尝试扫描相机看起来的区域。 为此,我需要摄像机角度宽度,角度高度。 As described in this emage(我的声誉不足以直接显示图片)

我的问题是这个问题的问题,How to get angles value of perspective camera in Three.js?但是对于Unity来说。

如果你知道 如何计算摄像机宽度和高度(在统一开始时遵循屏幕尺寸)或
IsInsideCameraView(相机,游戏对象)有多好的功能
任何答案都会受到欢迎。

2 个答案:

答案 0 :(得分:1)

[未测试。 Javascript]您可以使用renderer.isVisible来确定对象是否在相机视锥内。

答案 1 :(得分:1)

  

我很难找到像IsInsideCameraView(gameObject)

这样的功能

您可以使用:

object.Renderer.isVisible

...检查对象在任何相机中是否可见。

要测试特定相机,请使用:

Vector3 screenPos = camera.WorldToScreenPoint(target.position);

然后检查XY坐标是否在(0,0)和Screen.width之间,Screen.height

  

如何计算相机宽度和高度

这是Camera.pixelWidthCamera.pixelHeight的用途,您可以将Screen.widthScreen.height用于代表整个屏幕的相机。

无论如何,这可以说是一个XY问题,请参考我的答案的开头直接解决。

告诉我更多