You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MRTK2 Interactable接收器选择:OnPress、ButtonPressed与OnClick的区别

OnClick、OnPressReceiver 与 ButtonPressed 的核心差异(MRTK2 + HoloLens2)

1. 设计定位与触发场景

  • OnPressReceiver(Interactable内置)
    是MRTK为全息交互量身定制的按压接收器,专门区分远距离AirTap和近距离触摸按压两种核心交互场景。它和Interactable的状态机深度绑定,会根据交互类型自动匹配对应的反馈逻辑,所以内置了两种音效选项,分别对应AirTap触发和触摸按压触发的音效。

  • PressableButtonHololens2.ButtonPressed
    是针对HoloLens2触摸硬件优化的专属事件,聚焦于物理触摸交互的细分阶段——它的两种音效选项分别对应“触摸按下开始”和“按压到位触发按钮动作”两个节点,完全贴合HoloLens2的触摸触感反馈逻辑,只响应触摸输入。

  • OnClick事件
    本质是Unity UI系统的通用点击事件,MRTK将其集成到Interactable中是为了兼容Unity原生工作流。它不区分交互类型,不管是AirTap、触摸、甚至键盘输入,只要触发了按钮的“点击”动作就会统一触发,因此仅提供一种通用音效选项,没有针对全息交互的场景细分。

2. 音效差异的根源

前两者(OnPressReceiver、ButtonPressed)都是为HoloLens2的特定全息交互场景设计的,需要匹配不同交互的用户体验需求,所以提供多音效选项;而OnClick是通用化设计,追求的是跨交互方式的统一触发逻辑,因此不做音效细分。

3. 实践建议

如果需要保持AirTap和触摸交互的音效差异化,继续使用**OnPressReceiver(处理AirTap)+ PressableButtonHololens2.ButtonPressed(处理触摸)**的组合是最优解;如果你的场景不需要区分交互方式,只需要统一的点击反馈,再考虑使用OnClick事件。

内容的提问来源于stack exchange,提问作者DumbQuestionsAnyway

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 20:12:10