XR Interaction ToolKit

一、简介

XR Interaction Toolkit是unity官方的XR交互工具包。

官方XRI示例地址:https://github.com/Unity-Technologies/XR-Interaction-Toolkit-Examples

2023.3.14官方博客,XRIT v2.3
https://blog.unity.com/engine-platform/whats-new-in-xr-interaction-toolkit-2-3

注:本文基于Unity2021.3.29f1。

二、包安装

1) XR Plugin Management

每一个平台有对应的厂商SDK, 先安装XR插件管理器,更方便安装对应的平台SDK。
请添加图片描述
安装完后,会自动在Assets下创建XR/XRGeneralSettingsPerBuildTarget.asset文件。
请添加图片描述
此文件会包含当前Unity默认平台Providers和Settings。
请添加图片描述
如果不小心误删了该文件或者XR文件夹,Project Settings面板点击XR Plug-in Management条目则会自动生成。
请添加图片描述
如果想添加其他平台到PerBuildTarget,则在XR Plug-in management面板点击对应平台图标。
注意:只有Unity添加过platform的才可以添加。

2) Open XR

官方文档:https://docs.unity3d.com/Packages/com.unity.xr.openxr@1.8/manual/index.html

我们可以通过1)中安装的XR Plugin Management进行安装,或者通过PackageManager进行安装。
请添加图片描述
OpenXR包会自动创建Loaders和Settings。XR插件管理器下会出现其分页。
请添加图片描述
点击Fix All对这两个Warning项进行验证修复。

  • 使用InputSystem.XR.PoseControl代替OpenXR.Input.PoseControl,后者将来会被弃用。
  • 至少一个Interaction Profile必须被添加,请在Features菜单选择要测试的控制器。
    请添加图片描述
    项目需要哪些Feature,则勾选对应功能。
    问号图标可查看文档。齿轮图标可进行功能的参数设置。
    • D-Pad Binding:方向键绑定。
    • Hand Interaction Poses:手部交互姿势。
    • Mock Runtime:模拟运行时。
    • Palm Pose:手掌姿势。
    • Runtime Debugger:运行时调试器。

3) XR Interaction Toolkit

请添加图片描述
XR Interaction Toolkit包会自动创建XRI文件夹,Settings文件夹包含一个XRInteractionEditorSettings.asset文件和一个Resources文件夹。
后者中包含InteractionLayerSettings.asset文件,可以设置交互层的名称,用于继承自XRBaseInteractable基类的InteractionLayerMask设置,比如我们的grab、click、hold等业务行为;
包含XRDeviceSimulatorSettings.asset,勾选或反选决定是否在场景中使用XR设备模拟器。如果Samples中的XR Device Simulator包未安装,勾选Use XR Device Simulator in scenes则会安装该包。
请添加图片描述

  • Starter Assets:初始资产。
  • XR Device Simulator:XR设备模拟器。
  • Tunneling Vignette:隧道片段。
  • Meta Gaze Adapter:Meta凝视适配器。
  • Hands Interaction Demo:手部交互Demo。

三、Samples学习

1) Starter Assets

请添加图片描述
InteractionColorAffordanceTheme:交互颜色营造主题。
默认有7个交互颜色,均包含有Animation State Start Value和Animation State End Value。
Prefabs文件夹下的预制件可以复用官方的。
请添加图片描述
XRI Default Input Actions.inputactions:XR交互默认输入动作。
Assets下右键Create → Input Actions可创建该类型的文件。

  • Actions Maps:动作集合。
    • Actions:定义的各种动作。
      • Action Properties:动作的属性。
        • Action:Action Type、Control Type
        • Interactions:Hold、Press、Slow Tap、Tap
        • Processors:Invert Vector3、Normalize Vector3、Scale Vector3
      • Binding Properties:绑定的属性。
        • Binding
        • Interactions:Hold、Press、Slow Tap、Tap
        • Processors:Invert Vector3、Normalize Vector3、Scale Vector3

请添加图片描述

定义好Aciton之后,展开该文件,前面的是Action Maps名称,后面的是Actions名称。
请添加图片描述
这些文件称为:预设。
这些默认预设是XR交互动作的预设,使用我们在inputactions文件中定义的Action绑定到预设。
预设在Inspector面板顶部可以Add/Remove to xxx default,即设置为xxx的默认类型或者移除默认。
查看官方文档学习如何创建、应用、部分应用、编辑、导出预设。

https://docs.unity3d.com/cn/2021.3/Manual/Presets.html#:~:text=单击 Inspector 窗口右上角的预设选择器(滑动条图标)。 在 Select Preset 窗口中,单击 Save,。 显示一个 File Save 对话框。 选择新预设的位置,输入其名称,然后单击 Save 。

2) XR Device Simulator

请添加图片描述
把XR Device Simulator预制件放入Starter ASsets文件夹下的DemoScene场景。
请添加图片描述
运行程序。左下角的XR Device Simulator面板可以模拟HDM和Hand Controller。
方便无设备时的模拟测试。

  • 鼠标右键旋转
  • 键盘G键 → 手柄的Trigger键
  • 通过Tab键或后面标识的按键切换XR Input Methods

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/179067.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Windows Server 2008安装

1.典型 2.稍后安装操作系统 3.Microsoft Windows 4.尽量虚拟机名称也改一下,我忘记改了 5. 默认40G差不多了,不用修改了 6.直接点完成 7.配置处理器和镜像 8.中文简体 9.现在安装 10.第一个就行(完全安装) 11.我接受&#xff0c…

基于stm32F4的智能宠物喂食器的设计:LVGL界面、定时喂食喂水通风

宠物喂食器 一、功能设计二、元器件选型三、UI设计四、原理图设计五、源代码设计六、成品展示 实物链接:https://m.tb.cn/h.5iCUX6H?tkPL65WXCEipQ CZ3457 一、功能设计 1、设计一个触摸屏作为人机交互 2、通过触摸屏设置时间定时喂食喂水通风 3、获取当前水槽的…

PlantSimulation安装帮助文档端口被占用的解决办法

PlantSimulation安装帮助文档端口被占用的解决办法 从PlantSimulaiton(TPS)2201开始帮助文档开始使用在线,如果使用本地则需要安装本地文档服务器。但是在安装过程中你可能会遇到,5000断开被占用的情况。解决办法如下&#xff1a…

axios 实现请求 loading 效果

前景提要: ts 简易封装 axios,统一 API 实现在 config 中配置开关拦截器 loading 分为全屏 loading 和局部 loading。 axios 中设置 loading 只能设置全屏 loading,因为局部 loading 需要当前局部的 dom,在 axios 中显然拿不到发…

取消Excel打开密码的两种方法

Excel设置了打开密码,想要取消打开密码是由两种方法的,今天分享这两种方法给大家。 想要取消密码是需要直到正确密码的,因为只有打开文件才能进行取消密码的操作 方法一: 是大家常见的取消方法,打开excel文件之后&a…

c++装饰器模式

前言 装饰器模式,就是可以对一个对象无限装饰一些东西,而且可以没有顺序。比如一个人可能只会说出他的名字,但是可以让他再说哈哈,可以说完哈哈之后再说哇哇。如何后面又不想装饰了,不需要改类原来的代码,…

IS200EPSMG1AED 使用Lua创建逻辑脚本或完整程序

IS200EPSMG1AED 使用Lua创建逻辑脚本或完整程序 IS200EPSMG1AED 是一种支持网络的I/O控制器,它执行类似于可编程逻辑控制器(PLC)的控制、逻辑和监控功能。然而,与PLC不同,X-600M是为基于网络的应用而设计的。X-600M可以使用内置网络服务器和…

【256MB+256MB】起,含税低至88元!飞凌嵌入式FET113i-S全国产核心板上市

超低价、超灵活、超全能!飞凌嵌入式FET113i-S全国产核心板正式发布!整板采用100%国产工业级元器件,含税价最低仅需88元! FET113i-S核心板基于全志T113-i工业级处理器开发设计,主频1.2GHz,配备多核多架构&a…

如何开始开发一个跑腿App系统?

1. 确定需求和功能规划 开始开发之前,需明确系统所需的基本功能,包括用户注册、登录、下单、配送员匹配、订单跟踪等。这些功能需要在系统设计之初明确。 2. 技术选型 选择适合的技术栈。前端可以使用框架如React、Vue.js,后端可选择Node…

智慧财务的未来

信息化时代,财务管理不再局限于传统的手工操作,而是借助RPA技术实现了自动化、智能化的转型。智慧财务作为财务管理的一种新模式,将为企业提供更加高效、便捷的服务,使企业能够更好地适应市场需求的变化,在瞬息万变的市…

史上最详细注释,用flask写一个博客系统

文本用flask写个博客系统,源码带有详细注释,通俗易懂,拿去就能用。博客效果如下,博客首页: 这个博客麻雀虽小,但五脏俱全。有如下功能: 博客文章浏览用户注册用户登录/登出发文章/修改文章/删除…

vue:js中合并对象的方法

目前比较常用的一共有三种 1、使用object.assign() 它可以将一个或多个对象的属性复制到目标对象中&#xff0c;第一个参数就是目标对象&#xff0c;这里举个例子&#xff1a; <template><div>{{data}}</div> </template> <script> export de…

陪诊接单系统|陪诊系统助力您获取更好的服务

为了解决陪诊过程中的种种瓶颈和问题&#xff0c;我们开发了一款创新的陪诊接单系统&#xff0c;旨在为客户提供更加高效、专业的陪诊服务。该系统凭借其独特的功能和特点&#xff0c;助力您获取更好的陪诊服务体验。 陪诊系统功能&#xff1a; 1、诊前约号&#xff1a;人工带…

MySql优化经验分享

一条sql的具体执行过程 连接 我们怎么查看MySQL当前有多少个连接&#xff1f; 可以用show status命令&#xff0c;模糊匹配Thread&#xff0c; Show global status like "Thread%" show global variables like wait timeout;—非交互式超时时间&#xff0c;如JDBC…

【数据结构】树家族

目录 树的相关术语树家族二叉树霍夫曼树二叉查找树 BST平衡二叉树 AVL红黑树伸展树替罪羊树 B树B树B* 树 当谈到数据结构中的树时&#xff0c;我们通常指的是一种分层的数据结构&#xff0c;它由节点&#xff08;nodes&#xff09;组成&#xff0c;这些节点之间以边&#xff08…

记一次大数据事故@用了很久的虚拟机环境突然不能联网了

记一次大数据事故用了很久的虚拟机环境突然不能联网了 背景 今天打开自己电脑上的虚拟机环境打算练习一下flink&#xff0c;结果发现vmware里虚拟机能正常开机&#xff0c;也能正常进图os&#xff0c;但是就是不能ping通主机&#xff0c;主机也不能ping通虚拟机 探查 1、…

@Tag和@Operation标签失效问题。SpringDoc 2.2.0(OpenApi 3)和Spring Boot 3.1.1集成

问题 Tag和Operation标签失效 但是Schema标签有效 pom依赖 <!-- 接口文档--><!--引入openapi支持--><dependency><groupId>org.springdoc</groupId><artifactId>springdoc-openapi-starter-webmvc-ui</artifactId><vers…

c语言练习(9周)(16~20)

输入12个一位整数&#xff0c;创建二维数组a[3][4]&#xff0c;显示二维数组及各列的平均值&#xff0c;平均值四舍五入到小数点后一位。 题干输入12个一位整数&#xff0c;创建二维数组a[3][4]&#xff0c;显示二维数组及各列的平均值&#xff0c;平均值四舍五入到小数点后一…

RIP路由配置

RIP路由配置步骤与命令&#xff1a; 1.启用RIP路由&#xff1a;router rip 2.通告直连网络&#xff1a;network 直连网络 3.启用RIPv2版本&#xff1a;version 2 4.禁用自动汇总&#xff1a;no auto-summary 注意&#xff1a;静态路由通告远程网络&#xff0c;动态路由通告…

Web - Servlet详解

目录 前言 一 . Servlet简介 1.1 动态资源和静态资源 1.2 Servlet简介 二 . Servlet开发流程 2.1 目标 2.2 开发过程 三 . Servlet注解方式配置 ​编辑 四 . servlet生命周期 4.1 生命周期简介 4.2 生命周期测试 4.3 生命周期总结 五 . servlet继承结构 5.1 ser…