在开发计算机上玩测试GearVR游戏

时间:2015-03-16 17:08:12

标签: testing unity3d oculus unreal-engine4

如何在我的开发计算机上测试我的GearVR游戏,而无需在手机上构建和运行?

我正在寻找使用虚幻引擎或Unity3D构建的游戏的答案。

1 个答案:

答案 0 :(得分:2)

没有耳机不玩游戏

"游戏测试"在PC上完全错过了游戏测试的常规意义。

测试VR应用程序很重要,必须使用耳机进行。设计VR游戏的最大挑战之一是确保舒适(而不是令人作呕)的体验和准确,直观的输入/控制。如果您在装有WSAD /鼠标二重奏的PC上运行您的应用程序,那么您的游戏测试将毫无价值。

廉价替代

如果你有一个像样的智能手机,谷歌纸板是最便宜的选择。这种体验不会像使用Gear VR那样好,但它会比使用PC更接近现实。它可以让你按照预期测试实际的游戏玩法。

如果你真的需要mouselook

我发现测试一些功能(不是游戏本身!)如果我从工作流程中减少部署到设备的速度要快得多,所以我实际上实现了你要求的功能。

我现在手头没有Unity,但这很容易做到。在初始化脚本中,您可以检查是否在Gear VR或PC上运行,并启用相应的控制脚本。它看起来像这样:

void Start() {
    #if UNITY_ANDROID && !UNITY_EDITOR
    setAndroidCameraRig();
    #endif
    #if UNITY_EDITOR
    setEditorCameraRig ();
    #endif
}

您的SetEditorCameraRig看起来像这样:

    pcRotateHead pcHead = gameObject.GetComponentInChildren<pcRotateHead> ();
    pcHead.enabled = true;

pcRotateHead是一个脚本,根据鼠标移动每帧更新它的对象方向:

public class pcRotateHead : MonoBehaviour {
  public float XSensitivity = 5f;
  public float YSensitivity = 5f;

  public void Update()
  {
    float yRot = Input.GetAxis("Mouse X") * XSensitivity;
    float xRot = Input.GetAxis("Mouse Y") * YSensitivity;
    Vector3 baseRotation = transform.rotation.eulerAngles;
    Vector3 newRotation = new Vector3(-xRot + baseRotation.x, yRot + baseRotation.y, baseRotation.z);
    Quaternion newQuatRotation = Quaternion.Euler (newRotation);
    transform.rotation = newQuatRotation;
  }
}

查看Unity手册:http://docs.unity3d.com/Manual/PlatformDependentCompilation.html