输入触摸屏手机

时间:2019-07-24 09:59:55

标签: c# unity3d mobile

我在底部有四个按钮,笔记会从屏幕顶部掉下来,我不确定如何为移动设备编写触摸屏部分,我是否可以将其用于PC格式,但是我不确定我要做什么需要进行更改才能正常工作。

我有2个脚本,一个用于按钮,然后一个用于每个落下的音符。

这是我目前所拥有的: 对于按钮:

void Update()
    {
        if(Input.GetKeyDown(keyToPress))
        {
            theSR.sprite = pressedImage;
        }

        if(Input.GetKeyUp(keyToPress))
        {
            theSR.sprite = defaultImage;
        }
    }

对于注释: void Update()

 {
        if(Input.GetKeyDown(keyToPress))
        {
            if(canBePressed)
            {
                gameObject.SetActive(false);

                //GameManager.instance.NoteHit();


                //Determine if player hits the note normal, good, perfect
                if (Mathf.Abs(transform.position.y) > 0.25)
                {
                    GameManager.instance.NormalHit();
                    Instantiate(hitEffect, transform.position, hitEffect.transform.rotation);
                }
                else if (Mathf.Abs(transform.position.y) > 0.05f)
                {
                    GameManager.instance.GoodHit();
                    Instantiate(goodEffect, transform.position, goodEffect.transform.rotation);

                }
                else
                {
                    GameManager.instance.PerfectHit();
                    Instantiate(perfectEffect, transform.position, perfectEffect.transform.rotation);
                }
            }
        }
    }

如果仅是PC,这将非常有效,但我只是不知道将其更改为按钮,以使其在移动设备中的反应方式与在PC上完全相同

1 个答案:

答案 0 :(得分:0)

好答案取决于您打算如何在移动设备上获得用户输入。如果我不介意的话,有两种方法可以做到这一点。

第一个方法是获取触摸屏的输入位置,并检查x轴上的位置是否在4个隔间之一中。您可以使用this

第二,您实际上可以使用Unity中的UI按钮,它们适用于所有平台。因此,您可以在PC上进行测试,然后将其上传到手机上,以使其工作方式相同。

希望这对您有帮助!