Unity 3D: Определение свайпа на мобильных устройствах

unity_android_ios

Всякий раз, когда вы разрабатываете игру для устройств с сенсорным экраном, один из самых важных элементов управления, который вы могли бы использовать это свайп (swipe). В этом уроке мы узнаем как распознать свайп на экране.

Примечание: Вы можете установить Unity Remote на вашем Android устройстве, чтобы проверить данный код.

Чтобы начать работу, создайте новый проект, сохраните его как вам удобно. У вас будет новая сцена по умолчанию, вы можете сохранить её, нажав ctrl+s и назовите её, скажем swipeinput.

Добавим новый скрипт C# щёлкнув правой кнопкой мыши по папке Assets и выбрав Create->C# Script и назовите его SwipeControl. Привяжите его к объекту Main Camera.

В первую очередь мы откроем скрипт и добавим несколько переменных:

После того, как переменные будут добавлены, мы установим минимальное расстояние свайпа, который пользователь должен будет сделать:

В функции Update мы добавим логику для обнаружения направления свайпа следующим образом:

Обратите внимание, что вы должны использовать пространство имен System.Collections.Generic.

Я верю, что комментарии выше были достаточно подробными, и я надеюсь, что мне не придётся объяснять это снова.

После того как вы добавите этот код в ваш скрипт, переключитесь обратно в Unity. Теперь подключите Android устройство к компьютеру. После того, как устройство подключено, запустите приложение Unity Remote в вашем мобильном устройстве и запустить игру в редакторе. Теперь попробуйте делать свайпы в разных направлениях и проверить вывод консоли.

Оригинал.