【问题标题】:Make AR targeted object always stand upright AND rotate around worldUp vector使 AR 目标对象始终直立并围绕 worldUp 矢量旋转
【发布时间】:2019-04-26 18:39:39
【问题描述】:

标题可能有点混乱。我在 Unity 中有一个简单的 Vuforia 项目,我在 QR 码上渲染了几个块。我想做的是让这些块(或任何 3D 模型)始终直立在世界上,独立于目标的 或相机的(智能手机)位置,然后也以恒定的速度旋转绕着那个轴走动。

我所做的是将设备的加速度计读数通过一个低通滤波器,这给了我一个指向重力的向量。然后我对其进行归一化并乘以 -1 以获得始终指向上方的单位向量。每帧执行一次。

我遇到的问题是如何处理这个向量;到目前为止,我尝试在 Update 函数中将其简单地设置为模型的 transform.up,这样可以正确地使模型始终直立,但也可以防止任何类型的旋转我尝试使用 transform.Rotate 给对象。

是否有正确的方法来设置模型的 Y 轴,仍然允许它围绕所述轴旋转?

【问题讨论】:

    标签: c# unity3d augmented-reality vuforia


    【解决方案1】:

    我有一个可行的想法。创建一个Empty 作为二维码的子代,并将您的块添加为Empty 的子代。现在您可以更新您的Empty 每一帧以直立并让里面的块相对于它们的父级旋转。

    通过将这两个动作分离为单独的游戏对象,您应该能够避免一个命令覆盖另一个命令的问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-09-13
      • 1970-01-01
      • 2010-10-11
      • 2019-03-21
      • 1970-01-01
      • 2017-05-23
      相关资源
      最近更新 更多