Arrastar e mover o jogo 2DObject

como mostram meus tópicos anteriores, estou criando umgameObject de imagens de sprites em tempo de execução usando este código:

 tex = Resources.Load<Texture2D>("pig") as Texture2D;
 Sprite sprite = new Sprite();
 sprite = Sprite.Create(tex, new Rect(0, 0, 250, 150), new Vector2(0.5f, 0.5f));
 GameObject newSprite = new GameObject();
 newSprite.AddComponent<Rigidbody2D>();
 newSprite.GetComponent<Rigidbody2D>().gravityScale = 0f;
 newSprite.AddComponent<ObjectMovement>();
 newSprite.AddComponent<SpriteRenderer>();
 SR = newSprite.GetComponent<SpriteRenderer>();
 SR.sprite = sprite;

Como você vê, adicionei um script "ObjectMovement", Quero verificar neste script se alguém estiver arrastando esse item em particulargameObject e se assim for, faça-o seguir a posição de toque, apenas para mencionar - este jogo é 2D. Eu nunca useiRaysouRaycast então não tenho certeza de onde errei. Enfim, aqui está o meu código de script:

public SpriteRenderer selection=null;
    void Update()
    {
        if (Input.touchCount >= 1)
        {
            foreach (Touch touch in Input.touches)
            {
                Ray ray = Camera.main.ScreenPointToRay(touch.position);
                RaycastHit hit;
                switch (touch.phase)
                {
                    case TouchPhase.Began:
                        if (Physics.Raycast(ray, out hit, 100))
                            selection = hit.transform.gameObject.GetComponent<SpriteRenderer>();
                        break;
                    case TouchPhase.Moved:
                        selection.transform.position = new Vector2(selection.transform.position.x + touch.position.x / 10, selection.transform.position.y + touch.position.y / 10);
                        break;
                    case TouchPhase.Ended:
                        selection = null;
                        break;
                }
            }
        }
    }

Então, basicamente - ao tocar na tela, dispare umray e verifique qualgameObject está nesta posição, ao mover o dedo, faça-o segui-lo. Arraste e solte. Obrigado.

EDITAR: Notei que o script está anexado a todosgameObject o que não é eficaz, alguma idéia?

questionAnswers(1)

yourAnswerToTheQuestion