Vuforia多相机

时间:2015-07-28 03:45:28

标签: unity3d augmented-reality vuforia

我有一个设置,我想透露AR场景的某些部分,所以我的计划是使用常规的AR摄像机,然后添加第二个摄像机作为孩子,使用平面和深度遮罩。

ARCamera
 |
 +- Camera <-- Vuforia Prefab
      |
      +- Background Plane
      |
      +- RevealCamera <- My camera
              |
              +- DepthMask Plane

但是这两个相机并没有保持同步。我的所有场景几何都在一个根节点下,永远不会移动。我看过场景窗口并验证了这一点。我确保两台摄像机都具有相同的平截头体设置。因此,此时唯一可能是相机的移动方式不同。怎么会这样? Vuforia用相机玩弄一些技巧吗?

这是我用来尝试匹配Vuforia相机的代码:

[RequireComponent(typeof(Camera))]

public class FollowMainCamera : MonoBehaviour
{
    public Camera target;
    private Camera _camera;

    void Start()
    {
        _camera = GetComponent<Camera>();
    }

    void Update()
    {
        transform.position = target.transform.position;
        transform.localPosition = target.transform.localPosition;
        transform.rotation = target.transform.rotation;
        transform.localRotation = target.transform.localRotation;

        _camera.fieldOfView = target.fieldOfView;
    }
}

2 个答案:

答案 0 :(得分:1)

Vuforia相机有一个技巧,即在运行时它会更改相机FOV以匹配设备,因此您需要在运行时更新您的RevealCamera以匹配ARCamera的相同。

答案 1 :(得分:0)

问题是“投影矩阵”。似乎Vuforia的AR相机使用自己特定版本的投影矩阵,它定义了“世界”将如何在屏幕上显示。试试这个

then