在不支持触摸的计算机上统一编程触摸



我有一台触摸屏笔记本电脑(联想IdeaPad Flex 15、Windows 10),但在Unity上,如果我运行代码:

    if (Input.touchSupported)
        print("supported");
    else
        print("not supported");

它打印出它不受支持。我想打乒乓球,但你控制了两个球拍,并试图获得高分。以下是试图克服没有触摸被视为触摸这一事实的代码。该代码应用于向上或向下移动拨杆。

      if (Input.GetMouseButton(0)) {
        if (Input.mousePosition.x < Screen.width / 2)
        {
            //Begin Section: Touch left side
            if (mousePos.y > transform.position.y)
            {
                yPos = gameObject.transform.position.y + (paddleSpeed * Time.deltaTime);
            }
            else
            {
                yPos = gameObject.transform.position.y - (paddleSpeed * Time.deltaTime);
            }
            //End of section
        }
    }

这是可行的,唯一的问题是,划桨必须相互独立地移动。所以我用同样的方式对另一个球拍进行编程。但是,当我运行程序并用两个手指触摸屏幕时,拨片会突然失灵,无法工作。

问题:我需要一种为两个球拍编程触摸支持的方法这可以通过两种方式来回答:告诉我如何在没有触摸支持的情况下编程,或者如何让Unity意识到我确实有触摸支持

如有任何帮助,我们将不胜感激!谢谢

更新:我忘了补充一点,我已经在我的Android上测试了上面的代码,当你用两只手的时候,它会吓坏,否则它是完美的。

您也可以为手机下载Unity Remote 4。这真的帮了我很多:http://docs.unity3d.com/Manual/UnityRemote4.html

编辑

  1. 下载&在您的设备上安装Unity Remote 4
  2. 在您的设备上启用USB调试并将其连接到您的电脑
  3. 启动Unity Remote 4,然后重新启动Unity
  4. 在Unity中,导航到:编辑->项目设置->编辑器
  5. 在Inspector中,您现在可以在"Unity remote"下选择您的设备
  6. 在Unity中点击播放按钮