如何修复对象旋转并使其在 Vuforia 中垂直?

How to fix object rotation and make it vertical in Vuforia?

我正在 Unity 中开发 Vuforia 应用程序。

如何制作一个 3D 对象,附加到 ImageTarget 以在标记识别期间始终垂直

这样一来,如果我旋转标记,模型就不会上下颠倒,而是保持垂直。它应该以某种方式 "understand" 是世界的 z 轴,也许使用 iPhone.

的传感器

这是我的意思的说明(灰色方块是标记,绿色小人是 3D 对象,附在上面)。

目前,如果我旋转标记,模型也会旋转:

我需要修复模型沿 z 轴的旋转,使其始终保持垂直:

你可以使用Transfrom.LookAt()来确保物体始终面向相机,Vector.Up作为第二个参数:

using UnityEngine;
using System.Collections;

public class CameraFacing : MonoBehaviour
{
    public Camera m_Camera;

    void Update()
    {
        transform.LookAt(transform.position + m_Camera.transform.rotation * Vector3.forward,
        m_Camera.transform.rotation * Vector3.up);
    }
}

将此脚本附加到图像目标的子项(将在找到跟踪时显示)。摄像头就是你在场景中添加的AR摄像头。