之前的文章有介绍使用SteamVR_LaserPointer来直接实现UGUI交互,相信各位同学也会发现这种方式比较难受,还是摆脱不了UI要挂载Collider,不是完整的UGUI交互系统。
一、下载资源并导入Unity中 UGUI交互系统
二、前期准备 新建场景,删除默认相机,将Player拖拽进入场景内
文章图片
新建Plane,修改为Floor,上一个黑色材质球,Transform信息如下:
文章图片
三、添加UI及组件 结构如下,添加画布、面板、按钮、Slider、ScrollView
![在这里插入图片描述](https://img-blog.csdnimg.cn/f3f29aab78c74bdab671f25f40c83a80.png
文章图片
文章图片
Canvas/画布信息
文章图片
其他UI组件按照正常UGUI添加即可,此方式GUI不需要添加碰撞器和其他不必要的组件。
四、挂载UI交互组件 【VR|SteamVR 2.x UGUI交互系统(7)】在前面下载的资源中,包含四个脚本
文章图片
1、RightHand上挂载Kvr_UIPointer组件
2、InputModule上挂载Kvr_InputModule组件
3、Canvas/画布上挂载Kvr_UICanvas组件
以上操作后,开始游戏,即可体验完整的UGUI系统
此系统与SteamVR的射线系统都为独立系统,原有的射线系统保留,方便SteamVR版本更新和后续射线与实体交互等功能实现,所以该系统只是在SteamVR原有的基础上,增加了UGUI交互系统,只需要挂载几个组件,即可实现整套UGUI交互。
推荐阅读
- unity|Unity-虚方法&密封方法&抽象方法&接口
- unity|Unity-常量&数组&构造函数
- 设计模式|生成器模式 - Unity
- 前端|cocos恭喜喜庆粒子特效
- unity|Unity笔记之Color转换为16进制颜色
- 游戏|UGUI游戏界面
- 在Unity中掌握2D摄像机(游戏开发人员教程)
- UnityEditor|Unity Gizmos使用绘制
- Unity|【案例设计】UGUI空间 与 世界空间 的联动体系设计