C# 以编程方式设置Unity中的视野会导致错误的值

C# 以编程方式设置Unity中的视野会导致错误的值,c#,unity3d,fieldofview,C#,Unity3d,Fieldofview,我在Unity中玩相机,通过脚本改变它的属性。其中一个变化是摄像机.fieldOfView。该特性取决于焦距和传感器尺寸 对于固定焦距,我计算所需视场的传感器尺寸。当我指定传感器尺寸和焦距时,Unity计算的视野与预期的不匹配 我的计算与之相似,似乎是正确的 Unity的相机是否使用了Pinholde以外的其他型号?差异从何而来?如果我仔细阅读,我会知道Camera.fieldOfView的定义如下: 这是垂直视野;水平视野因视口的纵横比而异 我的计算是针对水平视野的,我没有意识到我是在为相机的

我在Unity中玩相机,通过脚本改变它的属性。其中一个变化是
摄像机.fieldOfView
。该特性取决于焦距和传感器尺寸

对于固定焦距,我计算所需视场的传感器尺寸。当我指定传感器尺寸和焦距时,Unity计算的视野与预期的不匹配

我的计算与之相似,似乎是正确的

Unity的相机是否使用了Pinholde以外的其他型号?差异从何而来?

如果我仔细阅读,我会知道
Camera.fieldOfView
的定义如下:

这是垂直视野;水平视野因视口的纵横比而异

我的计算是针对水平视野的,我没有意识到我是在为相机的垂直视野赋值。因此,显示的视场始终处于关闭状态,其系数等于传感器纵横比

在Unity中,您需要

您可能正在使用,而不是。