Mobile 在Unity中一次按多个GUI元素

Mobile 在Unity中一次按多个GUI元素,mobile,unity3d,unityscript,Mobile,Unity3d,Unityscript,我正在为移动平台开发控件;我的GUI占据了屏幕的左、中、右三分之一。当玩家想要跳跃时,他们按下中间的按钮。我的问题是,似乎一次只允许按下一个GUI元素(就像设备只有一个移动的鼠标光标),而不是允许我同时跳转和向右移动。我的代码: // JavaScript #pragma strict static var guiLeft : int = 0; static var guiRight : int = 0; static var guiJump : int = 0; function OnGU

我正在为移动平台开发控件;我的GUI占据了屏幕的左、中、右三分之一。当玩家想要跳跃时,他们按下中间的按钮。我的问题是,似乎一次只允许按下一个GUI元素(就像设备只有一个移动的鼠标光标),而不是允许我同时跳转和向右移动。我的代码:

// JavaScript
#pragma strict

static var guiLeft : int = 0;
static var guiRight : int = 0;
static var guiJump : int = 0;

function OnGUI () {

// leftarrow
if (GUI.RepeatButton (Rect (0,0,Screen.width/3,Screen.height), "", GUIStyle.none)) {
    guiLeft = 1;

    }
    else{
    guiLeft = 0;
    }


// right
if (GUI.RepeatButton (Rect (Screen.width-Screen.width/3,0,Screen.width/3,Screen.height), "", GUIStyle.none)) {
    guiRight = 1;
    }
    else{
    guiRight = 0;
    }

            // jump
if (GUI.RepeatButton (Rect (Screen.width/3,0,(Screen.width/3)+2,Screen.height), "", GUIStyle.none)) {
    guiJump = 1;
    }
    else{
    guiJump = 0;
    }

}

Unity GUI一次只支持一个输入源(例如鼠标左键或鼠标右键)。解决问题的正确方法是使用
Input.touchs
。这确实意味着你必须在比赛中改变很多事情

对于Unity来说,这似乎是一件愚蠢的事情,因为他们很容易将自己打上多平台的烙印。我应该如何设置Input.Touchs?有没有一种方法可以模拟在触摸屏上按下键盘键?@AlexanderLozada我有点了解你的frustation是从哪里来的,但是你必须考虑一个菜单,在这个菜单中你可以同时“点击”多个选项。这毫无意义。除非您打开手机键盘,否则无法在触摸屏上模拟键盘键。关于touch示例,请看这里:我将在哪里应用此代码?在GUI元素上有可能吗?或者我必须通过GUI纹理然后在那里应用脚本吗?@AlexanderLozada我不确定。例如,我要做的是放入一些立方体,并将脚本附加到其中。然后你的菜单将是3D的,这可能是一件好事。但我不确定是否可以使用GUI元素。