我从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
。有人找到头位置吗?
最佳答案
每当有新的插件更新时,请在更新之前阅读发行说明。 release note提到许多东西已经重命名。
您实际上是想得到namespace
错误而不是警告。这意味着您未按照建议的方式安装更新。请按照说明删除旧的cardbaord目录,然后下载并导入GoogleVRForUnity.unitypackage
中的所有内容。
它提到Cardboard.SDK
现在是GvrViewer.Instance
。所以Cardboard.SDK.HeadPose.Orientation
现在应该是GvrViewer.Instance.HeadPose.Orientation;
关于c# - 另一种获取当前纸板头位置的方法,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38235031/