前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >HTC VIVE☀️五、手柄与UI碰撞交互,手柄按键高亮、显示文字提示

HTC VIVE☀️五、手柄与UI碰撞交互,手柄按键高亮、显示文字提示

作者头像
星河造梦坊官方
发布2024-08-14 17:06:37
发布2024-08-14 17:06:37
16300
代码可运行
举报
运行总次数:0
代码可运行

🟥 VR中的UI交互

实现效果:

手柄碰到要交互的UI,按下Trigger,执行UI上的方法

实现步骤:

1、新建Canvas,Render Mode改为World Space,缩放0.003,分辨率3

2、新建Button(需有Button组件),Button添加boxcollider、UIElement

3、执行的方法放到UIElement上

🟧 手柄按键高亮、按键文字提示

1、效果展示

2、代码控制

代码语言:javascript
代码运行次数:0
复制
using UnityEngine;
using Valve.VR.InteractionSystem;

public class gameObjectManager : MonoBehaviour
{

    public void ShowHints(Hand hand)
    {
        //高亮显示手柄按钮
        ControllerButtonHints.ShowButtonHint(hand, Valve.VR.EVRButtonId.k_EButton_Grip);                //两侧按键
        ControllerButtonHints.ShowButtonHint(hand, Valve.VR.EVRButtonId.k_EButton_SteamVR_Touchpad);    //圆盘键
        ControllerButtonHints.ShowButtonHint(hand, Valve.VR.EVRButtonId.k_EButton_ApplicationMenu);     //菜单键
        //显示文本信息
        ControllerButtonHints.ShowTextHint(hand, Valve.VR.EVRButtonId.k_EButton_Grip, "换弹夹");
    }

    public void HideHints(Hand hand)
    {
        //单个隐藏手柄高亮按键
        ControllerButtonHints.HideButtonHint(hand, Valve.VR.EVRButtonId.k_EButton_Grip);
        //全部隐藏
        ControllerButtonHints.HideAllButtonHints(hand);

        ControllerButtonHints.HideTextHint(hand, Valve.VR.EVRButtonId.k_EButton_Grip);
        ControllerButtonHints.HideAllTextHints(hand);
    }
}

3、手柄交互颜色控制

即调整手柄交互时,轮廓的颜色。

调整方式如下:

大家还有什么问题,欢迎在下方留言!

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022-09-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 🟥 VR中的UI交互
  • 🟧 手柄按键高亮、按键文字提示
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档