我制作了一个脚本并将其附加到主摄像头,并且在游戏场景的任何位置都没有检测到多点触摸。控制台在每一帧记录更新,但输入触摸不会在任何地方记录。没有任何 print 语句在 if 语句内运行。任何帮助将不胜感激。
void Update() {
print("update");
if (Input.touchCount > 0){
print("touch detected");
print(Input.touchCount);
print(Input.touchCount.toString());
}
}
最佳答案
可触摸设备不仅仅只有一个“触摸”二字。触摸 Action 有多种类型,例如单点触摸、多点触摸、滑动、捏合等。
首先请删除更新中的打印功能,这是不必要且愚蠢的操作。
对于单次触摸,(如 Hamza 所说),您可以使用 Input.GetMouseButton
或 Input.GetTouch
。
如果你想计算多点触摸的次数,你的用法是正确的。尝试将脚本附加到场景中的另一个游戏对象。请参阅this有关 Unity 官方页面的更多示例。
关于touch - 未在任何游戏对象上检测到多点触控,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34869421/