Перемещение объекта за пальцем игрока

задаюсь вопросом одним долгое время и не могу найти на него правильный ответ. Игра на 2D Android. Как зажатием по экрану пальцем перетаскивать объект где находиться палец?


Ответы (1 шт):

Автор решения: Mr.AntonDer

В Unity для подобных действий есть класс Input

Благодаря этому классу, вы можете отслеживать нажатие мышки, а так-же получать координаты клика.

Код для решения вашей проблемы будет выглядеть так:

    private float posX;
    private float posY;
    [SerializeField] private GameObject player;

    void Update()
    {
        if (Input.GetMouseButton(0)) //0 - левая кнопка мыши, а на телефонах обычный клик
        {
            posX = Input.mousePosition.x; //x
            posY = Input.mousePosition.y; //y

            player.transform.position =
                Camera.main.ScreenToWorldPoint(new Vector3(posX,posY,0)); // конвертируем экранные координаты в мировые
            player.transform.position = new Vector3(player.transform.position.x, player.transform.position.y, 0); //строчка выше координату z указывала как -10, поэтому вот так фиксю
        }
    }
→ Ссылка