魔镜VR_按钮切换

如果在场景中需要用到控制器手柄,那么首先要在拖动IntegrateInputManager这个预设体到场景中
魔镜VR_按钮切换_第1张图片


场景中新建几个Button,然后便于管理把这几个button放到一个空对象下面
魔镜VR_按钮切换_第2张图片


选中canvas,添加InputManagerMenu和MenuController这两个脚本组件
魔镜VR_按钮切换_第3张图片


下面我就介绍一下两个脚本各自的存在的意义:
InputManagerMenu:这个脚本中写了一大堆的遥控器控制事件比如下面,在事件开发过程中可以不用这个魔镜的脚本,自己写一个脚本,加入using MojingSample.CrossPlatformInput;这个引用,然后就Unity使用Input输入事件一样,使用很简单

if (CrossPlatformInputManager.GetButtonDown(“OK”))
if (CrossPlatformInputManager.GetButtonDown(“C”))
if (CrossPlatformInputManager.GetButtonDown(“MENU”))
if (CrossPlatformInputManager.GetButton(“UP”))
if (CrossPlatformInputManager.GetButton(“DOWN”))
if (CrossPlatformInputManager.GetButtonDown(“CENTER”))
if (CrossPlatformInputManager.GetButton(“RIGHT”))
if (CrossPlatformInputManager.GetButton(“LEFT”))

下面这段代码意思是:摇杆往上推时,按钮切换到其上个按钮
这里写图片描述

如果你的按钮时单列的,就不用下面这两个
if (CrossPlatformInputManager.GetButton(“RIGHT”))
if (CrossPlatformInputManager.GetButton(“LEFT”))

补充说明一下,每一个按键都有down/press/up三种状态,上面我偷懒,只写了一种


MenuController 这个脚本很重要,按钮的切换以及按钮具体执行的功能都在这里,这个脚本很多地方都要自己重写,毕竟这个脚本自带的内容是为魔镜自带的Demo而设计的,但是这个脚本的主体功能框架是要沿用的


魔镜VR_按钮切换_第4张图片

魔镜VR_按钮切换_第5张图片


魔镜VR_按钮切换_第6张图片


魔镜VR_按钮切换_第7张图片


在按钮切换时,魔镜的作者在代码编写时,把事件控制和事件的具体实现分别各用一个脚本实现,清晰明了,很值得借鉴学习!


备注:
魔镜VR_按钮切换_第8张图片


魔镜VR_按钮切换_第9张图片

FR:徐海涛(Hunk Xu)

你可能感兴趣的:(Unity)