Unity XR Interaction Toolkit 组件解析(二)Select Action Trigger 参数(State,State Change,Toggle, Sticky)

XR Direct Interactor 脚本和 XR Ray Interactor 脚本中有个名叫 Select Action Trigger 的参数。

在这里插入图片描述

在这里插入图片描述

它决定了 XR Controller 的 Select Action 要如何被触发。

在这里插入图片描述

每个参数的意思可以参考官方文档:https://docs.unity3d.com/Packages/[email protected]/manual/xr-direct-interactor.html

在这里插入图片描述

但是官方的解释可能有些难懂,我这里就配合图文,讲一下我个人的理解。

首先讲一下 Toggle 和 Sticky,这两个相对而言比较好理解。我们就以抓取这个交互为例,抓取的 Select Action 绑定的是 “按下手柄抓取键” 这个动作。

如果选择了 Toggle,靠近物体按下手柄抓取键,物体会被抓在手上,但是这时候即使松开了抓取键,物体还是会被抓在手上,只有等到下一次按下抓取键,物体才会被释放。如果选择了 Sticky,靠近物体按下手柄抓取键,物体会被抓在手上,即使松开了抓取键,物体还是会被抓在手上,但是只有等到下一次按下抓取键并松开抓取键,物体才会被释放

Toggle:

在这里插入图片描述

Sticky:

在这里插入图片描述

接下来说一说 State 和 State Change 的区别。官方的解释看起来可能不大好理解。从实际使用体验上来看,在可抓取物体的 Select Mode 选择了 Single, 也就是只允许单手抓取的前提下,对这个物体进行左右手切换抓取,就能看出显著的区别。

在这里插入图片描述

如果选择了 State,会有一只手无法接管另一只手的抓取权,可能出现在左手,也可能出现在右手。举个例子,可能右手柄按着抓取键将物体抓在手中的时候,左手柄按下抓取键无法接管抓取权,也就是无法切换到左手进行抓取,这种情况下只有先松开右手手柄抓取键才会进行切换抓取。

如果选择了 State Change,则可以随意切换抓取。因为推荐大家在抓取功能上使用 State Change。

State:

在这里插入图片描述

State Change:

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_46044366/article/details/131744050