1. 添加VR预设体,其中包括了玩家视角(OVRCameraRig):位置Assets-Oculus-VR-Prefabs,将其中的OVRPlayerController(拖入Hierachy)
*Prefab, 中文翻译为预设体,在Unity官方的书本《Unity4.X从入门到精通》中的解释是:可以理解为是一个游戏对象及其组件的集合,目的是使游戏对象及资源能够被重复使用。相同的对象可以通过一个预设体来创建,此过程可理解为实例化。
存储在项目文件中(Project视图)的状态时,预设体作为一个资源,可应用在一个项目中的不同场景中。当拖动预设体到场景中就会创建一个实例。该实例与其原始预设体的有关联的,对预设体进行更改,实例会同步修改。Prefab可以提升资源的利用率和开发的效率。
好比某个Prefab是我们创建好的一个标准的房间模型,当我们在场景中需要建立另一个房间的时候,不需要我们再手动的将地板、墙、天花板拼接,而是可以直接拖一个Prefab到Scene视图中,并对这个Prefab进行修改就可以了。
2. 删除MainCamera,因为OVR包中已经带有OVRCameraRig了。
3.观察Game窗口,看视角是否符合游戏设定,否则可以用鼠标拖动,调整OVRPlayerController视角
4. 添加左右手柄:在上面第1步的文件夹中,找到OVRControllerPrefab,将它拖入Hierachy树中,将它分别作为LeftHandAnchor和RightHandAnchor的子对象。
运行场景时,可以在头盔场景中看见手柄,并可以使用手柄操纵杆旋转/移动视角。如果操纵杆无法控制,则需要修改Edit->ProjectSettings...->Player->OtherSettings->ActiveInputHandling,修改为Both。之后Unity自动重启.
5. 修改两个OVRControllerPrefab的属性:分别选中它们,在右边的Inspector属性页中,将Controller下拉菜单中分别改为L Touch和R Touch。
6. 修改玩家的作用半径,使玩家与物体更近:在Hierarchy中选择OVRPlayerController,在右边Inspector中的Character Controller,更改其中Radius属性为0.3或其他更合适的数字(需要测试后决定)。
拓展实践与思考:
- 修改OVRPlayerController的Radius属性大小,观察游戏场景中的变化。
- 将两个OVRControllerPrefab预设体删除,换成LocalAvatar为TrackingSpace的子对象,运行游戏,在头盔中看手柄有何变化。
- 修改LocalAvatar属性中的Show Fist Person、Show Third Person等值,观察游戏场景中的变化。



