HTC VIVE开发笔记(四)Interaction System插件手柄交互基础

本文介绍了在HTC VIVE开发中,如何使用Unity的Interactable组件实现手柄与物体的交互。通过添加Interactable组件,物体可以响应手柄的悬停和触摸事件,实现高亮、震动效果。同时,详细讲解了如何配置物体的交互行为,如切换材质、响应抓取和放下,并讨论了通过脚本动态设置交互事件以及添加必要的组件以避免错误的方法。
摘要由CSDN通过智能技术生成

(1)交互的基础——Interactable组件

给一个物体,或者UI添加Interactbale组件后,标记这个物体是可以和手柄进行交互的。

给Cube添加Interactable组件后,cube即被标记为可以进行交互。当手柄接触到可交互物体时,手柄会高亮,并震动一下。

手柄高亮:

这一部分是在Player组件下的StreamVRObjects-Hand-ControllerHoverHighlight脚本进行控制的。高亮材质:HoverHighlight,使用的是Shader:Valve/VR/Sihouette 这一个,其他需要高亮的也可以用这个shader

手柄震动:

StreamVRObjects-Hand-ControllerHoverHighlight  属性:Fire Haptics OnHightlight来控制震动。

hand.controller.TriggerHapticPulse( 500 );

 (2)物体响应Hand交互事件:如手柄碰到物体时,物体更换材质等;可以根据实际情况来做出想要的操作

对物体进行相应的交互设置:

添加Interactable后可以添加Interactable Hover Events悬停事件,就会出现四个可以选事件在属性面板上。太令人吃惊了,居然不需要写一行代码就可以实现这些操作。

一共有4个事件:

On Hand Hover Begin() : 手柄碰到了物体

On Hand Hover End() : 手柄离开物体

On Attached To Hand() : 响应抓取   

On Detached From Han

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值