Android 游戏对象的多点触摸检测

Android 游戏对象的多点触摸检测,android,unity3d,touch,Android,Unity3d,Touch,我对Unity中的多点触摸功能有问题。我目前正在制作一个2d手机游戏,2到6名玩家必须将手指放在一个手机屏幕上的圆圈上。当所有参与者都在触摸一个圆圈时,圆圈和背景必须改变颜色,然后开始随机倒计时。当背景再次改变颜色时,关键是不要成为最后一个移开手指的人 所以我想在触摸游戏对象时改变它的颜色,并且能够为一定数量的游戏对象改变颜色。我无法让游戏对象改变颜色,因此我想知道如何检测游戏对象是否被触摸 这是我到目前为止检测触摸的代码: void Update() { var touchCount

我对Unity中的多点触摸功能有问题。我目前正在制作一个2d手机游戏,2到6名玩家必须将手指放在一个手机屏幕上的圆圈上。当所有参与者都在触摸一个圆圈时,圆圈和背景必须改变颜色,然后开始随机倒计时。当背景再次改变颜色时,关键是不要成为最后一个移开手指的人

所以我想在触摸游戏对象时改变它的颜色,并且能够为一定数量的游戏对象改变颜色。我无法让游戏对象改变颜色,因此我想知道如何检测游戏对象是否被触摸

这是我到目前为止检测触摸的代码:

void Update()
{
    var touchCount = Input.touchCount;
    for (int i = 0; i < touchCount; i++)
    {
        Touch touch = Input.GetTouch(i);
        Ray ray = Camera.main.ScreenPointToRay(GetComponent<Camera>().ScreenToWorldPoint(new Vector3(touch.position.x, touch.position.y, transform.position.z)));
        RaycastHit info;
        if (Physics.Raycast(ray, out info))
        {
            var spriteRend = info.collider.GetComponent<SpriteRenderer>();
            if (touch.phase == TouchPhase.Began && spriteRend != null)
            {
                ChangeColor(spriteRend);
                fingers.Add(touch);
            }
            else if (touch.phase == TouchPhase.Ended)
            {
                ChangeColor(spriteRend);
                fingers.Remove(touch);
            }
        }
    }
    if (fingers.Count == players)
        ready = true;
    else
        ready = false;
}
void Update()
{
var touchCount=Input.touchCount;
对于(int i=0;i
为了理解:一个显示器上有多个播放器?您将如何确保
玩家触摸自己的游戏对象?他们可以碰任何人,对吗?我想我们需要更多关于你剧本的背景知识,并了解问题的具体内容;)