Unity XR Interaction Toolkit(四)Tracked Pose Driver和Tracked Pose Driver (Input System)

目录

Tracked Pose Driver作用

Tracked Pose Driver组件详解

Tracked Pose Driver (Input System)作用

Tracked Pose Driver (Input System)组件详解

Trackde Pose Driver与Tracked Pose Driver (Input System)的区别

传统输入系统(Input)与新输入系统(Input System)的区别


Tracked Pose Driver作用

Tracked Pose Driver是基于Input开发的跟踪设备姿态的组件,将虚拟对象与物理设备各个部分对齐

Tracked Pose Driver组件详解

  • Device

        指定要跟踪的姿势类型

Generic XR Device通用XR设备,跟踪HMD和AR移动设备
Generic XR Controller通用XR控制器
Generic XR Remote通用XR遥控器

  • Pose Source

        姿势来源

Left Eye左眼
Right Eye右眼
Center Eye - HMD ReferenceHMD眼部中心位置
Head头部
Color Camera移动端的摄像机
  • Tracking Type

        获取追踪数据的类型

Rotation And Position方向及位置
Rotation Only仅方向
Position Only仅位置
  • Update Type

        获取数据的间隔

Update And Before Render每帧和渲染前都调用
Update每帧调用
Before Render渲染前调用
  • Use Relative Transform

        是否将使用对象的原始Transform作为其基础值

  • Use Pose Provider

        姿势提供者,挂载要跟踪姿势的游戏对象

Tracked Pose Driver (Input System)作用

Tracked Pose Driver (Input System)是基于Input System开发的跟踪设备姿态的组件,将虚拟对象与物理设备各个部分对齐

Tracked Pose Driver (Input System)组件详解

下面是在创建XR Origin后,摄像机上Tracked Pose Driver (Input System)的参数

  • Tracking Type

        获取追踪数据的类型

Rotation And Position方向及位置
Rotation Only仅方向
Position Only仅位置
  • Update Type

        获取数据的间隔

Update And Before Render每帧和渲染前都调用
Update每帧调用
Before Render渲染前调用
  • Ignore Tracking State

        是否忽略跟踪状态,可以在某些情况下暂时忽略追踪设备的位置和方向数据

  • Position Input

        位置输入数据

Use Reference是否使用引用
centerEyePosition [XR HMD]头显中用户眼睛中心的位置
devicePosition [HandheldARInputDevice]设备的位置
  • Rotation Input

        方向输入数据

Use Reference是否使用引用
centerEyeRotation [XR HMD]头显中用户眼睛中心旋转的方向
deviceRotation [HandheldARInputDevice]设备当前的角度
  • Tracking State Input

        追踪状态输入

Use Reference是否使用引用
trackingState [XR HMD]头显的追踪状态

Trackde Pose Driver与Tracked Pose Driver (Input System)的区别

Tracked Pose Driver不同的是,Tracked Pose Driver (Input System)是为了支持新的输入系统Input System而设计的。你可以配置和映射VR/AR设备的姿态数据,以便更轻松的与这些设备进行交互,而且有更高的可扩展性,在多种平台开发更与灵活

传统输入系统(Input)与新输入系统(Input System)的区别

  • 灵活性

        Input的灵活性比较低,除了处理常见的输入设备,比如键鼠等,对于比较复杂的VR/AR设备等,可能需要更多的自定义代码

        Input System除了常见的输入设备以外,还支持VR/XR设备,触摸屏以及其它的传感器设备

  • 配置

        Input通常需要手动编写处理输入事件的代码,比如按键检测,鼠标移动等等。这会导致代码冗长不便于维护

        Input System可以通过配置文件来映射和管理输入设备及输入数据,更方便配置的同时,让增加输入设备和更改输入映射更加容易

  • 性能

        Input通过轮询的方式来检测用户是否输入,需要在每一帧中查询设备的状态,判断按键是否按下、松开或保持按住等

        Input System使用事件驱动模式来处理用户输入。在执行输入时,系统将这个操作视为一个事件,可以注册事件监听器来订阅特定类型的事件,在事件发生时,监听器中的处理函数会被调用,响应输入操作。让程序更具响应性,而不会把事件浪费在无事件的轮询中,况且输入通常情况下是异步的,而轮询并不能准确获取输入。并且还通过更高效的底层数据结构和算法来降低输入处理的开销,可减少输入延迟并提高应用程序的响应速度

  • 平台

        Input在不同的平台的输入设备和事件处理方式有所不同,需要编写特定的输入代码

        Input System可以支持多个平台,比如移动端、PC端、VR/XR等,可以在不同的平台上使用相同的输入代码

  • 6
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值