【发布时间】:2016-12-13 00:20:26
【问题描述】:
我正在尝试在我的 Unity VR 应用中使用 LookToWalk 脚本,该脚本应该在我的 Daydream 视图上运行。在“游戏”模式下预览更改,一切都按预期工作(我将脚本配置为在用户相机向下 30.0 度或更大时运行forward。
但是,当我尝试构建 Daydream 应用程序并将其安装在我的 Google Pixel 上时,CharacterController.SimpleMove 似乎不再起作用。
日志显示 30.0 度的东西已按预期触发,但在白日梦中没有看到任何动作。
您知道为什么会发生这种情况吗?它在“模拟器”而不是“真实”设备上运行似乎真的很奇怪。
using UnityEngine;
using System.Collections;
public class GVRLookWalk : MonoBehaviour {
public Transform vrCamera;
public float toggleAngle = 30.0f;
public float speed = 3.0f;
private bool shouldWalk;
private CharacterController cc;
// Use this for initialization
void Start () {
cc = GetComponent<CharacterController>();
}
// Update is called once per frame
void Update () {
if (vrCamera.eulerAngles.x >= toggleAngle && vrCamera.eulerAngles.x < 90.0f){
shouldWalk = true;
} else {
shouldWalk = false;
}
if (shouldWalk) {
Vector3 forward = vrCamera.TransformDirection (Vector3.forward);
cc.SimpleMove (forward * speed);
}
}
【问题讨论】:
-
似乎所有使用 CharacterController 的动作似乎都有缺陷或无法在 Daydream 视图上运行,有人有在 VR 和 Daydream VR 中移动的经验吗?这是如何解决的?
-
如果我想猜的话,我会说你的相机没有附在你的角色上。
标签: android unity3d unity5 google-vr daydream