关于 XR Rig 的所有
🎮
输入系统
使用基于action的头显👉 Floor
添加locomotion组件
给玩家添加provider(并把locomotion添加到provider的system里面)
新建一个空物体起名叫Input Action Manager
并为它添加Input Action Manager 这个脚本 ,在menu输入1,并选取默认的配置文件 default那个
移动
先给地面添加area
然后添加碰撞盒 👉然后添加传送标记⚪(并设置图层,可以提升一下传送区域的Y值:高度,可以解决有时传送失败的问题)
连续移动
给XR Rig(基于action)添加一个locomotion
并将XR Rig组件拖拽进 locomotion的XR Rig框框内
👆图是新的输入系统,我记得在项目设置里需要设置兼容两种输入 有个both英文
返回到XR Rig 👉 添加一个组件(continues move provider)
然后把刚刚创建的locomotion拖拽进continues move provider的system中
把XR Rig的主相机拖拽进continues move provider的forward source中
Use Reference决定哪个🎮生效
Move Speed决定了移动速度
转身
给XR Rig添加个continuous turn provider(action-based)
并把locomotion推拽进continuous turn provider(action-based)的system公共变量内
Use Reference决定哪个🎮生效
turn speed决定的时候转的速度
传送
给 XR Rig 加一个 teleportation provider 脚本
locomotion拖拽进 system里
teleport parent
然后对于基本控制器在添加 XR direct interactor 和 sphere collider👈这个允许🎮跟物体交互
选中RightHand Teleport Controller 将他的射线类型改成曲线
这个是上摇杆传送的核心
然后需要修改一个键位 (很重要!!!)
搜索teleport sele ,因为教程里是右手所以选择 带right teleport 的,
还提供了一个通用开源项目,这对XR项目非常的实用
用来切换 传送控制器 和 基础控制器
我上传到我的阿里网盘了👇
https://www.aliyundrive.com/s/2o9AvvvkWRj
应当把这个脚本附加到折叠框(right hand parent)上
有许多变量需要赋值👇
传送区
是地板 确保有个碰撞盒
为它添加一个area脚本,并指定碰撞盒子
这个element0就是自己的碰撞盒
一般来说还要地板的图层 添加图层起名叫Teleport
在area脚本和右上角Tag右边的Layer 都选择Teleport
最后最后
回到传送控制器,选择没被勾选的那个射线组件 将它的交互图层也选Teleport(先noting取消所有,然后再选择Teleport,到这一步射线只会与传送区交互,确保XR Rig的主相机culling mask勾选Teleport,否则将不会在画面里显示)
准心
是一个prefab,拖拽到area的 custom reticle
挂载的模型随头显运动
这里用到了一个通用开源项目,应当挂载到 XR Rig 上
https://www.aliyundrive.com/s/Un2RTzJyEdX
它有许多需要变量赋值如图
红框内的头应该在的某个地方的高度 用以正常表达这些零散模型
默认左右手控制器设定
随后要去 project settings 里的 preset manager 栏下的(它应该有两个预设)
还需要过滤词👇
最后一步
添加个空物体 改名为 input action manager 并挂载 input action manager 这个默认组件
并添加默认的输入方案
此后在添加的 XR Rig(action) 会拥有默认的输入系统了
👇🎮键位设置比较符合直觉
关于 XR Rig 的所有