Unityscript 如何在特定触摸时分离刚体

Unityscript 如何在特定触摸时分离刚体,unityscript,detach,Unityscript,Detach,我在分离单个刚体(小球)时遇到问题,当我接触一个蓝色精灵时,连接到精灵的球应该分离,但当我接触任何一个精灵时,两个球都分离。请帮助我。提前感谢 enter code here var ball : Rigidbody; var Position:Transform; function Update () { for (var i = 0; i < Input.touchCount; i++) { if (Input.GetTouch(

我在分离单个刚体(小球)时遇到问题,当我接触一个蓝色精灵时,连接到精灵的球应该分离,但当我接触任何一个精灵时,两个球都分离。请帮助我。提前感谢

enter code here
var ball : Rigidbody;
var Position:Transform;

function Update () {
        for (var i = 0; i < Input.touchCount; i++)
        {
           if (Input.GetTouch(i).phase == TouchPhase.Began)
            //if (Input.GetButtonDown("Fire1")) 
            {    
                // var touchPos : Vector3 = Input.GetTouch(i).position;

                 var ray = Camera.main.ScreenPointToRay (Input.GetTouch(i).position);
                 var hit : RaycastHit;

                    if (Physics.Raycast (ray, hit)){   
                            move();
                            Debug.Log();
                            //Destroy(hit.rigidbody);
                        }
            }   
        }
    }
function move(){
     //var clone:Rigidbody;
     //clone=Instantiate(ball, transform.position,Quaternion.identity);
     ball.useGravity=false;
     ball.AddForce(transform.TransformDirection(0.0f,10.0f,0.0f)*-20);
     ball.transform.parent=null;
     //Destroy(ball.gameObject,5);
     Debug.Log("button");
}
在此处输入代码
var球:刚体;
var位置:变换;
函数更新(){
对于(变量i=0;i
这是因为只要你用光线投射检测到什么东西,你就会调用“移动”函数

你应该过滤你的光线投射命中,以确保你是用一个特定的触摸调用你的函数

    if (Physics.Raycast (ray, hit)){
                       if(hit.transform.name.equals("BlueBall"))  
                        move();
                        Debug.Log();
                        //Destroy(hit.rigidbody);
                    }
希望你会觉得有用