9.3.4 在播放模式下抓取和移动虚拟对象
MRTK提供了虚拟调试功能,在Unity中即可模拟MR环境。单击Play按钮,视图切换到Game面板。此时可以单击Game面板右上角的三点按钮,在菜单中选择Maximize选项,将Game窗口最大化。
首先测试虚拟手的触碰功能。按住空格键,此时模拟右手会显示在视图中。朝着“near_gift”方向移动模拟手,直到触碰到礼物盒的任意部位,如图9.21所示。
图9.21 虚拟手的触碰功能
其次测试虚拟手的抓取功能。在按住空格键触碰到礼物盒的同时,按住鼠标左键,此时虚拟手会呈现抓取姿势,尝试移动鼠标,可以看见虚拟手能够抓取礼物盒,如图9.22所示。
图9.22 抓取近处物体
然后测试模拟手对较远处物体的触碰和抓取功能,此时将用到模拟手附带的远指针功能。再次按下空格键,显示出模拟右手,此时会从其食指末端延伸出远指针。朝盘子方向移动手,直到远指针末端移到盘子上。注意此过程可能需要多次移动尝试,才能将指针末端触碰到盘子上,如图9.23所示。
图9.23 操控远处物体
如前所述,Unity内提供了测试全息对象行为的虚拟MR环境,结合使用键盘和鼠标即可实现操控测试。测试行为主要包括以下方法。
1.模拟手输入控制
(1)启用模拟右手:按住空格键。松开空格键可以移除模拟手。(2)启用模拟左手:按住左Shift键。
(3)移动左手或右手:按住空格键/左Shift键的同时,移动鼠标。(4)向前或向后移动手:滑动鼠标滑轮。
(5)模拟收缩手势:单击鼠标左键。
(6)旋转手:按住空格键/左Shift键+Ctrl键的同时移动鼠标,可以实现右手/左手旋转。
(7)将模拟手显示并停留在场景中:按T键/Y键可以分别启用左手或右手的显示停留,再次按这些键可以移除显示。
2.调整场景中的视图
(1)向前/左/后/右方向移动摄像机:按W/A/S/D键。
(2)垂直移动相机:按Q和E键。
(3)旋转相机:按住鼠标右键并拖动。
生成并部署Holo Lens2应用程序