我正在使用 Unity3d 和 Google Cardboard sdk 开发一个应用程序。我一直在尝试获取各个纸板相机的视野属性。这在编辑器中工作正常,但是,当我将其构建到 Android 时,相机的 fieldOfView 属性似乎返回错误的值。
Camera cam = GameObject.FindWithTag("Camera_Left").GetComponent<Camera>();
float fov = cam.fieldOfView;
这是访问此内容的正确方法吗?
非常感谢任何建议!
编辑
澄清一下,我不需要更改 FOV。我只需要获得相当准确的垂直 FOV 值。我正在尝试使用 FOV 计算游戏对象在相机中显示的大小。
最佳答案
使用 VR 时,有许多值决定 fieldOfView
。它只是不再是那个 Camera.fieldOfView
属性了。应该使用 StereoController 类来获取此信息。
StereoController stereoCtrl = GvrViewer.Controller;
Debug.Log("Fov: "+stereoCtrl.matchMonoFOV);
还有其他变量需要查看,例如 stereoCtrl.stereoMultiplier
和 stereoCtrl.matchByZoom
。
关于c# - 如何获得 google-cardboard 相机 FOV?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40469183/