背景
在引入OpenVR模块后,发现在StartUp时接收Inputdevice信息竟然失灵了。得到的device list count竟然一直是零。
原因
考虑是生命周期的问题,也就是说OpenVR模块下,进入应用时还无法感应device,需要在进入应用后持续感知。
虽然StartUp时拿inputDevice,获得的Device数是零,但在进入游戏后手柄的交互动作是生效的,这也可以印证我之前的判断。
解决方法
在Update层面持续感应Device,获得后给相应变量赋值就可以开始用自己定义的Controller实例感应动作了:
void Update()
{
//获取控制器信息
if (rightController.isValid)