1、获取手柄的引用:目前没有区分左右手柄
private SteamVR_TrackedObject trackedobj;
private SteamVR_Controller.Device device;
trackedobj = GetComponent<SteamVR_TrackedObject>();
device = SteamVR_Controller.Input((int)trackedobj.index);
之后应该是可以通过判断这个index来判断是哪一个手柄吧。SteamVR中把所有可以追踪的设备都保存在了这个TrackedObject类里,通过GetComponet方法,就能获取到当前追踪到的物体,并获取到手柄的输入(在Update方法中进行,这样才能一直更新,否则如果是在Start方法中获取的输入,就只有第一次保存的device可以来与物体进行交互)。之后的操作都是基于这个device来做了。
2、获取touch pad的坐标
device.GetAxis().x
device.GetAxis().y
3、监听Trigger有没有被按下,或松开
if (device.GetPressDown