在做手游的时候,80%时间是在PC调试的,例如业务逻辑、AI算法、核心玩法等。
拿到魔镜提供的demo,晕了,必须得安装到Android机器上,才能调试,究其原因,有三:
- 需要用到手机陀螺仪
- 需要用到蓝牙手柄
- 需要用到魔镜的凸透镜
这些都是客观原因,但是每次打包后,安装Android,再戴到头上,Debug、log啥的都看不清,呵呵。
故就着手改造一下输入快捷键,从而可以方便的模拟手机陀螺仪输入、模拟蓝牙输入、模拟非VR Mode切换。
1 模拟手机陀螺仪输入
这个在mojing.cs有现成隐藏代码,在UpdateState()函数中。
- 快捷键F: ok键
- 快捷键Alt:按住,鼠标模拟GazePostion位移
- 快捷键Ctrl:按住,鼠标模拟GazePostion旋转
2 模拟蓝牙输入
在学习了MojingInputManager.OnButtonDown\OnButtonUp后,知道只要传递过去string即可,其中用/分隔,第一位暂时不用,第二位用MojingKeyCode预定定义的数字。
- 快捷键WASD:模拟蓝牙
- 快捷键Q:模拟蓝牙OK
3 模拟非VR Mode切换
VR Mode切换,是通过设置Mojing.SDK.VRModeEnabled实现的,原理是对Left、Right Camera和Center Camera可见性进行隐藏或者显示实现切换,找到了Demo.cs脚本中,已经封装好了切换和返回主菜单函数,调用即可:GameObject.FindObjectOfType<Demo>().ToggleVRMode();
- 快捷键R:模拟切换VR Mode
- 快捷键B:模拟回到主菜单
借用网络一句话:VR开发,比App开发,多一个Camera。 搭建好调试环境,就会好很多。
源码下载:MojingInputManagerEditor.cs
使用:在MojingInputManager.prefab添加MojingInputManagerEditor脚本,然后点击Apply即可。