Как сделать джойстик в Unity 5

В этом уроке мы разберем, как сделать джойстик в Unity 5, работающий на всех платформах, включая Android и IOS. Для начала имеем: пустой проект и Canvas на нем. Если вы не знаете, что такое Canvas, или не разобрались в нем (например, не знаете как сделать масштабируемость интерфейса), то рекомендую посмотреть урок по созданию главного меню для того, чтоб лучше в этом разобраться.

Canvas мы переименуем как MobileInputCanvas и создадим на нем Image, который назовем JoystickHolder, выберем ему необходимый размер (изменив width и height свойства), а так же поставим его в нужное место. В Image мы выберем нужный спрайт, если у вас есть заготовки для спрайтов под джойстик и место, где от будет кататься, а если нет, то можете выбрать уже готовый круг. Для этого необходимо выбрать нужный нам объект Image и выбрать св-во Source Image. Далее в Unity уже есть картинка Knob, нужно выбрать именно её. Следующим мы создадим в JoystickHolder еще один Image, который назовем Joystick и проделаем с ним те же действия, но поменяем ему размер на более меньший. А так же нужно перекрасить наши круги в необходимые для вас цвета. В конце этих действий получиться что-то похожее на это:

Реализация joystick для Unity3d

Теперь необходимо написать статический класс, который будет хранить в себе все значения из нашего джойстика. Для этого создадим класс AndroinIosInput и напишем в нем:

Далее создадим класс JoystickController, который мы повесим на наш Joystick Holder, чтобы тот начал передавать значения в наш статический класс.

Стоит разобраться с тем что такое IDragHandler и IEndDragHandler, это интерфейсы, которые вызываются при соответствующем событии отностительно курсора. Например, IDragHandler вызывается, когда курсор двигается, а IEndDragHandler когда передвижение заканчивается. Все эти интерфейсы находятся в области имен UnityEngine.EventSystems.

В итоге при нажатии и движении в области джойстика, джойстик автоматически переходит под палец и мы начинаем им управлять, изменяя значения в статическом классе. На этом разбор того, как сделать джойстик в Unity 5 закончен.

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Adblock
detector