本文主要是介绍HoloLens按键Button系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
HoloLens按键Button系统
- 按键类型
- 事件触发
- 触摸触发
- 点击触发
- 非按键触发事件
- 开发Menu系统
- 创建Menu及布局
- Menu拖动
按键类型
MRTK中包含多种形状的按键,大体如下:
查看所有种类请参考链接:Button
事件触发
事件触发包括触摸触发以及点击触发。
触摸触发即将按键按下或释放按键均可触发不同的时间。例如要做一个玩具车遥控器,那么可以把按下按键设置对应为汽车的前进,将释放按键设置为汽车停止。
点击触发即将按键点击动作完成后,才触发的事件,仅将按键按下不释放无法触发事件。
触摸触发
触摸触发的事件在按键的Events中的Button Pressed和Button Released中设置。
点击触发
触摸触发的事件在按键的Evebts中的OnClick中设置。
值得一提的是,事件触发是有顺序的,如果事件A和B想要在点击后都触发,并且事件B的触发需要用到事件A的结果,那么事件A应放在事件B前面。如下图中红框中的事件需要依赖于绿框中事件执行的结果,因此绿框在红框前:
非按键触发事件
在某些项目中。我们不想依赖按键触发世间,比如触摸物体来改变物体的颜色等等,这时候需要用到MRTK的空间交互,具体参考:MRTK 101: How to use Mixed Reality Toolkit Unity for common spatial interactions
开发Menu系统
创建Menu及布局
自己创建菜单以及布局:
Near menu
Menu拖动
如果直接在菜单的父物体上添加ObjectManipulator
脚本拖动物体,那么当点击按键的时候也会拖动物体。正确的做法是在父物体下添加一个背景板:
它在场景中就是蓝色的背景:
然后在板上添加NearInteractionGrabbable
和ObjectManipulator
,设置ObjectManipulator
中的Host Transform
为父物体即可:
这篇关于HoloLens按键Button系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!