如何在我的开发计算机上测试我的 GearVR 游戏,而无需在手机上构建和运行?
我正在寻找使用虚幻引擎或 Unity3D 构建的游戏的答案。
如何在我的开发计算机上测试我的 GearVR 游戏,而无需在手机上构建和运行?
我正在寻找使用虚幻引擎或 Unity3D 构建的游戏的答案。
不要在没有耳机的情况下进行测试
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