使用Leap Motion Orion开发酷炫的手势识别VR/AR应用-02
本篇文章要介绍的是使用Leap Motion Orion开发酷炫的手势识别VR/AR应用第二篇,具体开发步骤如下:
使用Leap Motion Orion开发酷炫的手势识别VR/AR应用-01
备注:所有的示例项目源代码都会传到Github上:
GitHub -eseedo/VRCourse: VR开发入门教程(HTCVive,Google Daydream VR, Oculus等)
在下载了UnityCore Assets和其它模块或示例后,就可以在Unity3d中实际进行测试了。
具体步骤如下:
Step 1安装LeapMotion Orion 软件
Step 2如果是Oculus,请提前安装Oculus1.3 runtime,如果是HTCVive,请安装对应的软件环境,这里不再赘述。
Step 3下载UnityCore Assets(上一节中已经提到过)
Step 4在Unity中创建一个新的项目
Step 5 在窗口菜单中点击Assets,选择ImportPackage,CustomPackage…
Step 6 找到我们下载的CoreUnity package,然后将其导入。
其中Plugins目录中有x86和x86-64两个子目录,其中有LeapC,是对项目的设置。而在LeapMotion目录中则包含了与LeapMotion开发相关的所有Prefabs,Scripts和Scenes。
体验测试场景
1.在LeapMotion/Scenes目录下有三个场景,分别是AR,VR和桌面环境下的测试场景。
2.其中Leap_Hands_Demo_VR是基本的VR测试场景,运行这个场景就可以实际体验了。
不过需要特别强调的是,在运行场景前,需要先进入PlayerSettings,然后找到OtherSettings,勾选VirtualReality Supported,如果是HTC Vive设备,还需要在Virtual Reality SDKS的下面添加OpenVR。
从零搭建自己的LeapMotion VR场景
1. 首先别忘了在PlayerSettings中进行相关的操作,也就是勾选VirtualReality Suppported,以及在必要的时候添加OpenVR。
2. 新建一个新的场景,在Assets中找到LeapMotion/Prefabs目录
3. 将LMHeadMoutedRig拖到场景中
4. 在LMHeadMoutedRig的层级中找到LeapHandController
5. 创建一个新的GameObject,命名为HandModels,使其成为LMHeadMountedRig的子物体, 从LeapMotion/Prefabs/HandModelsNonhuman目录中,将CapsuleHand_L和CapsuleHand_R拖到场景的hierarchy窗口中,并使其成为HandModels的子物体。
6. 从LeapMotion/Prefabs/HandModelsPhysical目录中,将RigidRoundHand_L和RigidRoundHand_R拖到场景的hierarchy窗口中,并使其成为HandModels的子物体。
7. 在LeapHandController的组件中找到HandPool脚本组件,将这里的ModelPool的size设置为2.然后将手的显示模型和物理模型从Hierarchy视图中拖到对应的空槽中。此外,还需要将ModelsParent设置为刚才创建的HandModels
8. 添加一个cube,并给其添加Rigidbody刚体组件,这样就可以体验跟物体交互的感觉了。当然,为了方便交互,可以把cube的Rigidbody组件中的UseGravity禁用,这样可以模拟在失重环境下的太空飞船或空间站中操控物体。
本节的示例项目参考源代码: