RawDataTool 组件
RawDataTool 组件介绍
RawDataTool(原始数据工具)组件用于创建多种不同的工具,它允许获取装备该工具的手部的相关动作数据。该组件关联了一个 ProtoFlux 节点(RawDataTool Events)。Resonite组件如图所示。
字段
| 属性名称 | 类型 | 描述 |
|---|---|---|
| _equipLink | LinkTarget<ITool> | (ITool 内部引用) |
| TipReference (末端参考点) |
Slot | (ITool 标准字段:工具作用点的参考 Slot) |
| BlockGripEquip (阻止握柄装备) |
Bool | (ITool 标准字段:禁止通过握柄键装备) |
| BlockRemoteEquip (阻止远程装备) |
Bool | (ITool 标准字段:禁止远程激光装备) |
| EquipName (装备名称) |
String | 工具的名称。 |
| _overrideActiveTool (覆盖活跃工具) |
InteractionHandler | (内部使用) |
| _gripPosesGenerated | Bool | (内部使用:是否已生成握持姿态) |
| LocalTipOffset (本地末端偏移) |
Float3 | 工具及其激光的偏移量。 |
| LocalTipReference (本地末端参考点) |
Slot | 用作激光源和末端位置的 Slot。 |
| UseLaser (使用激光) |
Bool | 是否启用激光功能及其视觉效果。 |
| BlockPrimaryWhenTouching (接触时阻止主按键) |
Bool | 当工具接触墙壁时,阻止使用主按键(Primary)。 |
| UseSecondary (使用副按键) |
Bool | 允许使用副按键(Secondary)。 注意:在 Quest 上禁用此项会关闭“坦克式控制(Tank Controls)”模式(这是 Resonite 社区中许多 Quest 用户不喜欢的移动模式)。 |
| AllowUseWhenHolding (允许握持时使用) |
Bool | 允许用户在仅“握住”(Holding)工具而不是“装备”(Equipped)工具时使用它。 |
| Equipped (已装备) |
Bool | 工具是否处于已装备状态。如果用户握住工具末端,此项也会返回 True。通常被称为“软装备(Soft Equipping)”或“伪装备”。 |
| ControllerType (控制器类型) |
SyncType | 持有此工具的控制器的 Type(C# 类)。 |
| ControllerSide (控制器侧) |
Chirality | 持有此工具的是左手、右手还是无控制器。 |
| PrimaryStrength (主按键力度) |
RawOutput<Float> | 该手主按键的实时更新力度值。适用于 VR 控制器或游戏手柄类控制器。 |
| SecondaryAxis (副按键轴) |
RawOutput<Float2> | 该手用于副按键操作的触控板上的拇指位置。 |
| Primary (主按键) |
RawOutput<Bool> | 用户是否按下了该手的主按键(Primary)。参见 Controls。 |
| Secondary (副按键) |
RawOutput<Bool> | 用户是否按下了该手的副按键(Secondary)。参见 Controls。 |
| _primaryStrengthStream | ValueStream<Float> | 主按键力度的数据流。源自用户的数据流,可通过 User Inspector 查看。 |
| _secondaryAxisStream | ValueStream<Float2> | 副按键轴的数据流。源自用户的数据流,可通过 User Inspector 查看。 |
| _primaryStream | ValueStream<Bool> | 主按键按下状态的数据流。源自用户的数据流,可通过 User Inspector 查看。 |
| _secondaryStream | ValueStream<Bool> | 副按键按下状态的数据流。源自用户的数据流,可通过 User Inspector 查看。 |
| _rawStrength | Float | 主按键力度的原始未过滤值。 |
| _rawAxis | Float2 | 副按键轴的原始未过滤值。 |
| _rawPrimary | Bool | 主按键按下状态的原始未过滤值。 |
| _rawSecondary | Bool | 副按键按下状态的原始未过滤值。 |
| PrimaryActionDescription (主动作描述) |
String | 设置标签,告知用户此工具的主按键(Primary)是做什么的。 |
| SecondaryActionDescription (副动作描述) |
String | 设置标签,告知用户此工具的副按键(Secondary)是做什么的。 |
用法
将此组件附加到一个 Slot 上,它将生成该工具工作所需的子 Slot。
该组件需要在其 Slot 层级中包含一个 Collider(碰撞体),以便工具可以被抓取和使用。通常需要将此工具与 ProtoFlux 或其他组件结合使用,以添加自定义行为逻辑。
示例
RawDataTool一般情况下,是给PC这些无法直接抓握而存在的。因此,一般情况下是要搭配着RawDataaToolEvents来一起使用。

