【背景】
做一个VR投屏工具,希望能够用右手控制器的摇杆,前后控制Canvas距离,左右控制Canvas大小。
【分析】
需要解决几个问题:
- 获取摇杆在横纵轴方向上的输入值
- 需要通过合适的Event触发改变Canvas大小和距离的函数
- 写具体的Canvas改变大小和距离的功能
【技术选型】
VRTK
【具体实现】
- 输入利用VRTK的Input.UnityInputManager.1DAxisAction预制件可以方便地捕捉。
- 需要两个1DAxis预制件,一个捕捉横轴输入,值从-1到1,一个捕捉纵轴输入,值从-1到1。
- 事件就用Input.UnityInputManager.1DAxisAction的Value Changed监听。
- 脚本我单独都挂在一个Script空对象上。
- 垂直1DAxis的设置如下:
- 水平1DAxis的设置如下。
【脚本源码】
using