【问题标题】:Alternative to get current Cardboard head position获取当前 Cardboard 头部位置的替代方法
【发布时间】:2016-07-06 22:47:35
【问题描述】:

我从 Cardboard 更新到 GoogleVR,所以一些代码被弃用了。

我得到玩家当前的头部位置来计算以下用户旋转。所以我只需要将播放器放在图像前面 自动地。这是一个例子:

将播放器移近图片

Vector3 spawnPos = hitObjectPos + hitObjectDirection * spawnDistance;
spawnPos = new Vector3 (spawnPos.x, transform.position.y, spawnPos.z);    
player.transform.position = spawnPos;

计算旋转

var headRotation = Cardboard.SDK.HeadPose.Orientation;
Quaternion lookAt = Quaternion.LookRotation (hitObject.transform.position - transform.position);

根据需要进行旋转

Vector3 rot = new Vector3 (0, lookAt.eulerAngles.y - headRotation.eulerAngles.y, 0);
player.transform.rotation = Quaternion.Euler (rot);

但现在 Cardboard.SDK.HeadPose.Orientation 已被弃用。 有没有人找到找到头位的替代方法?

【问题讨论】:

标签: c# unity3d google-cardboard google-vr


【解决方案1】:

每当有新的插件更新时,请在更新前阅读发行说明。 release note 提到很多东西都改名了。

您实际上应该得到namespace 错误而不是警告。这意味着您以推荐的方式安装更新。请按照说明删除旧的cardbaord目录,然后下载并导入GoogleVRForUnity.unitypackage中的所有内容。

它提到Cardboard.SDK,现在是GvrViewer.Instance。所以Cardboard.SDK.HeadPose.Orientation 现在应该是GvrViewer.Instance.HeadPose.Orientation;

【讨论】:

  • 谢谢,有帮助!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-01
  • 2014-05-31
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多