Understand Oculus Integration Package Components

Understand Oculus Integration Package Components | Oculus Developers

Understand Oculus Integration Package Components

Oculus集成软件包OculusIntegration.unitypackage是一组核心VR功能,组件,脚本和插件的集合,可简化和增强Unity中的Oculus应用开发过程。 它提供与Unity的无缝集成,并捆绑了一组SDK,以利用渲染功能,社交和社区构建,示例框架,音频和头像开发支持。

下载包

Download the package from either Unity Asset Store or from the Unity Integration Archive page. For instructions about integrating the package in Unity, go to the Import Oculus Integration Package topic.

功能包内容

Oculus Integration包是资产包。 导入软件包时,Unity会将其添加到Assets文件夹中,并维护软件包的原始目录结构。 这包括:

VR文件夹包含资产,可帮助您创建沉浸式VR应用程序。

AudioClips:在开发过程中可以使用的音频剪辑的集合。

Editor:用于向Unity编辑器添加功能并增强其他C#组件脚本的脚本。

Materials:包中用于图形组件的材料,例如主GUI显示。

某些OVR脚本(例如TrackerBounds)所需的网格。

包含一个实用程序插件OVRPlugin,它提供内置的编辑器支持和一些核心VR功能。 它还包含OVRGamepad.dll,它使脚本能够与Windows(32位和64位版本)上的Xbox游戏手柄以及用于macOS的OVRGamepad.bundle进行通信。

在场景中提供VR支持的预制件的集合,例如OVRCameraRig,OVRHandPrefab和OVRPlayerController。

您可以在运行时使用的着色器的集合。

示例场景说明了常见概念。

将VR框架和Unity组件联系在一起的C#文件。

在开发过程中可以使用的着色器集合。

一些脚本组件所需的图像资产。

第三方API的集合。

Locomotion Sample Scene

Unity Locomotion示例场景演示了各种移动方案,这些示例说明了如何在自己的应用程序中实现运动。

该场景将您放置在具有静态结构和建筑物的广阔区域中。 有几种移动方案可供您探索这种环境。 这些运动方案着重于隐形传送,这减少了用户不适的风险,有几种使用指尖走路和转身。

当示例场景开始时,B,Y和菜单按钮将调出(然后关闭)菜单,您可以在其中使用A或X按钮选择一种控制方案。 请注意,一旦选择了要使所选方案正常运行,就必须关闭菜单。 控制方案如下:

Node teleport w/ A button

用右指尖指向并按A按钮在地图上的静态节点之间传送。 按住A,您可以瞄准节点并在节点之间进行选择,仅在释放按钮时才能进行传送。 启用了捕捉转弯。

Dual-stick teleport 

向前按压指尖,然后在准备好后松开指尖,即可将其传送到任何有效位置(在NavMesh上的任何位置)。 向前移动操纵杆开始瞄准后,您可以旋转任一指尖来控制传送后面对的方向。 不瞄准时,可使用拇指摇杆旋转您的头像。

L Strafe R Teleport

像双摇杆传送一样,向前按压可使用左拇指杆向任何方向移动,右拇指杆进行传送。 定位后,可以通过旋转右摇杆来控制后移动方向。

Walk only 

使用左指杆可向任何方向移动,而右指杆可旋转。

本主题的目的是帮助您了解使此功能起作用的预制件,游戏对象,组件和属性。 您也可以将此示例场景用作自己的应用程序的起点。

Scene Walkthrough

本节描述了使该场景的核心功能正常工作的关键预制件和游戏对象。 本主题涵盖以下内容:

PlayerController游戏对象–修改为与LocalAvatar预制件一起使用的Oculus OVRPlayerController预制件。 如果开发人员希望将化身与OVRPlayerControllers一起使用,则可以以此为指导。

LocomotionController Game Object :PlayerController的子级,它控制和集中各种类型的隐形传送的功能。

TeleportPoint Prefabs:节点传送运动方案中使用的静态传送点。 除了位置,每个点都是相同的。 每个点都需要一个TeleportPoint脚本实例和一个碰撞器,该碰撞器位于TeleportTargetHandler.AimCollisionLayerMask指定的层中。 玩家碰撞也应忽略该层。

TeleportDestination Prefab :用于在基于指尖的远距传输控制方案中跟踪和更新目的地。 这也是用户传送时的视觉指示器。 使用后将其隐藏,并且每当传送系统需要一个新实例时,就会实例化一个新实例。

PlayerController Game Object

 

posted @ 2021-01-24 19:48  feifanren  阅读(294)  评论(0编辑  收藏  举报