VR里操作UI,用手柄点击的时候,小手随便一抖就点击失败了,因为手柄射线放大了移动,导致点击指令被判断为移动指令。
在Stage.cs的1570行
if (Mathf.Abs(x - downX) > 50 || Mathf.Abs(y - downY) > 50) clickCancelled = true;
其中50代表在 touchbegin 后 UI的射线头移动多少像素会取消本次点击
还有_clickTestThreshold这个变量,也要改一下。
这底层代码感觉有问题,50是像素距离,也就是说2k的UI和4k的用的是同一个标准,那4k的ui会更容易点击失败。(不过如果4k用的是适配的方式进行放大,那就和2k的没有区别,因为fairygui放大的是scale值,像素值不会变)