2

我从 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已弃用。有没有人找到找到头位的替代方法?

4

1 回答 1

2

每当有新的插件更新时,请在更新前阅读发行说明。发行说明提到许多东西已被重命名。

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

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

于 2016-07-07T04:02:18.480 回答