Joystick for mobile (NGUI)

Части и запчасти к проектам, дополнительное программное обеспечение.

Joystick for mobile (NGUI)

Сообщение Syberex 07 июн 2012, 22:35

Выложил свою поделку в Ассет-стор :)

Пригодиться многим я думаю, цена демократичная, демка внутри и инструкция.

Изображение

Изображение

Как просто использовать:

Изображение

HTML код для вашего блога :
Код: Выделить всё
<script language='javascript' type="text/javascript"> document.write("<iframe marginheight='0' src='http://unity3d.ru/distribution/player.php?url=http://dl.dropbox.com/u/73172170/Joystick/WebPlayer/WebPlayer.unity3d&w=480&h=320&t=false&preview=1' height='"+(320+30)+"' width='480' frameborder='0' scrolling='no'></iframe>"); </script>
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение Foxster 10 июн 2012, 02:55

Здравствуйте. есть мысль ,что NGUI не целесообразно(затратно) использовать для очень активно юзающих моментов в геймплее,по крайней мере на ios(проскоки FPS можно видеть сделав соответствующие замеры в профайлере ) :-? .так как некоторые моменты в NGUI реализованы крайне не рациональны.Может джойстик вынести в отдельную структуру??А в целом джойстик штука нужная)
Foxster
UNец
 
Сообщения: 13
Зарегистрирован: 03 фев 2012, 00:55
Откуда: Минск
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение Syberex 10 июн 2012, 11:00

Я сделал так, по быстродействию меня устраивает на дроидах, на ифонах хз, кто хочет пусть сделает сам в отдельную структуру B-)
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение akkelman 13 июл 2012, 17:56

А джойстик для FPS с управлением драгом по экрану делать не планируете?
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Joystick for mobile (NGUI)

Сообщение Syberex 13 июл 2012, 18:08

Ниче не понял, расшифруйте :) ... Сейчас разве не так?
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение akkelman 13 июл 2012, 18:56

ну по-моему не совсем. Хочу как в большинстве шутеров: слева джойстик как у вас- вперёд-назад, шаг влево-шаг вправо. А вот направление ходьбы менять и головой вертеть во все стороны- драгом по правой половине экрана.
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Joystick for mobile (NGUI)

Сообщение akkelman 13 июл 2012, 19:03

И кстате здесь в демке джойстик не совсем корректно себя ведёт. Нельзя добиться плавного поворота и передвежения одновременно. Танк либо крутится на месте. либо едет вперёд-назад. Скажем если стик находится на 10 минутах, то логичней транспортному средству при этом двигаться вперёд и одновременно поворачивая вправо по дуге. А тут он либо делает разворот на месте по часовой, либо движется чётко прямой
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Joystick for mobile (NGUI)

Сообщение Syberex 13 июл 2012, 23:57

akkelman писал(а):ну по-моему не совсем. Хочу как в большинстве шутеров: слева джойстик как у вас- вперёд-назад, шаг влево-шаг вправо. А вот направление ходьбы менять и головой вертеть во все стороны- драгом по правой половине экрана.

На самом деле это конечно есть, но я хотел выложить чистый скрипт джойстика :) Хотя вероятно вы правы! Многие хотели бы получить сразу готовое полноценное управление: джойстик + управление камерой + кнопка огонь. Я подумаю над этим ...

akkelman писал(а):И кстате здесь в демке джойстик не совсем корректно себя ведёт. Нельзя добиться плавного поворота и передвежения одновременно. Танк либо крутится на месте. либо едет вперёд-назад. Скажем если стик находится на 10 минутах, то логичней транспортному средству при этом двигаться вперёд и одновременно поворачивая вправо по дуге. А тут он либо делает разворот на месте по часовой, либо движется чётко прямой

Дело не в скрипте джойстика, он позволяет реализовать любое свое управление. А дело в скрипте контроллера танка, он упрощен и в зависимости от того какая координата x или y больше, выполняется движение вперед или поворот. В своих проектах вы сделаете как надо вам ;)
Синтаксис:
Используется csharp
public class TankController : MonoBehaviour
{
              ...
        public void Move (float x, float y)
        {
                if (Mathf.Abs(y) >= Mathf.Abs(x))
                {
                        // Move forward
                }
                else
                {
                        // Rotate
                        if (x > 0)
                        {
                                // right
                        }
                        else if (x < 0)
                        {
                                // left
                        }
               
 
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение akkelman 28 сен 2012, 20:28

Слухай, ну вот приобрёл я сие чудо в надежде подсмотреть как в нгуи подстроить размер гуи-элементов в зависимости от разрешения экрана(ну наподобие тех же pixelInset = Rect (8,-Screen.height*0.235-8,Screen.height*0.21, Screen.height*0.218+8);
А оно оказывается у вас и этого не умеет? т.е. на телефоне огромные невлазящиеся в экран бздемины закрывающие экран напроч. А на планшете 2 малюсенькие фигушечки где-то почти по центру экрана. Не, ну это халтура, сэр! Ни позиции по высоте экрана, ни скейла по тем же пропорциям.
Прошу настоятельно допилить, чтобы хотя бы пользоваться таким было можно. А то спрайт как тупо вставить в НГУИ можно понять и из 3х- минутного ролика туториала. А тут собственно сделано не многим больше. По крайней мере полноценным джойстиком для мобильных устройств эта поделка не является.
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Joystick for mobile (NGUI)

Сообщение Syberex 28 сен 2012, 21:59

akkelman писал(а):Слухай, ну вот приобрёл я сие чудо в надежде подсмотреть как в нгуи подстроить размер гуи-элементов в зависимости от разрешения экрана(ну наподобие тех же pixelInset = Rect (8,-Screen.height*0.235-8,Screen.height*0.21, Screen.height*0.218+8);

В надежде только на это, странный выбор :-?
И почему оно должно это уметь? Я выкладывал чистый скрипт джойстика, демка прилагается бесплатно - правильных настроек NGUI интерфейса я вроде не обещал, разве нет?

Масштабирование в NGUI можно сделать 1 галкой - UI Root > Automatic.
Привязка к углам экрана есть, с помощью UIAnchor, если вы внимательно посмотрите вы это увидите ...

А на планшете это не тестировалось, выложите скрины - посмотрим ;;)

akkelman писал(а):По крайней мере полноценным джойстиком для мобильных устройств эта поделка не является.

Как раз джойстиком это и является, а полноценным ГУЙ на все случаи жизни - нет.
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение akkelman 30 сен 2012, 00:50

Всё, спасибо, разобрался. Теперь стало всё проще. За это я 10 баксов и заплатил. Разбирался бы по туторам - потерял времени гораздо больше. А демку я бы на вашем месте всё же допилил. Чтобы у салаг типо меня вопросов и претензий возникало поменьше. Тем более что львиная часть этого допила делается одной галкой. Всё-таки одна из основных функций "джойстика" да ещё и не просто скрипта, как вы говорите. Чисто скрипт джойстика для новичков вполне приемлимо взять и бесплатно в стандартных мобильных пакаджах. Основное, что цепляет- это именно НГУИ- а значит внешний вид. А по-умолчанию, получается, внешний вид на разных устройствах-то и хромает. Тем же, кто без лишних "б" способен "понять" и "запилить под себя" вообще проще сэкономить десятку и всё сделать самому (даже я, после того, как препарировал вашу поделку и во всём разобрался собрал с нуля аналогичный джой за пару часов, правда кнопок у меня ещё и в 5 раз больше. Именно с нуля собрал для себя и под себя, а не переделал ваш- так было проще). Исходить надо из целевой аудитории и конечный продукт стараться делать с учётом её специфики, я так считаю.
akkelman
UNIт
 
Сообщения: 67
Зарегистрирован: 10 мар 2012, 17:21

Re: Joystick for mobile (NGUI)

Сообщение Syberex 30 сен 2012, 15:38

Спасибо вам за комментарии!

Ставить галку или не ставить, вопрос спорный :) вот обсуждение

akkelman писал(а):(даже я, после того, как препарировал вашу поделку и во всём разобрался собрал с нуля аналогичный джой за пару часов, правда кнопок у меня ещё и в 5 раз больше. Именно с нуля собрал для себя и под себя, а не переделал ваш- так было проще)

Ну значит я добился результата \m/
В прилагаемой инструкции (на корявом инглише правда 8-} ) как раз и описывается, как сделать с нуля и правильно навесить скрипт ...

akkelman писал(а):Исходить надо из целевой аудитории и конечный продукт стараться делать с учётом её специфики, я так считаю.

Полностью согласен, но сделать идеальный товар не так то просто, я старался B-)

Допилить мысли есть, но руки не доходят, встанет основной проект, а времени и так мало :|
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение Syberex 28 фев 2013, 21:39

Вот наконец у меня и дошли руки, чтобы допилить джойстик!
Встречайте - Joystick for mobile 2.0! :ymparty:

Новое в версии 2.0:
Добавлен скрипт плавающего джойстика (JoystickFloat). Также с помощью джойстика теперь можно управлять вращающимися объектами, например башней танка (или поворотом и стрельбой персонажа), скрипт будет возвращать значение поворота от -Pi до Pi (см. рисунок). Добавлен пример подключения управления камерой на мобильных устройствах.
Новые стильные текстуры для джойстиков. Пофиксены найденные баги, оптимизирован код джойстика.
Обновлен NGUI, сборка джойстика стала проще!

Видео:
Демонстрация работы джойстиков.
Как собрать джойстик управления движением.
Как собрать джойстик управления поворотом.
Как настроить управление камерой.

Картинки с пояснениями:
Изображение

Изображение

Ссылка: Joystick for mobile 2.0
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

Re: Joystick for mobile (NGUI)

Сообщение camelot10 14 июл 2013, 12:02

у меня планшетик андроид 2048 х 1536.
поставил два флоатинг джойстика.
они почему то не скейлятся под разрешение.

для демонстрации добавил ngui anchor на низ-лево и низ-право, ngui скейлится правильно.
а вот джойстики - нет.
сделал два cube c прозрачными текстурами которые подстраиваются под размеры коллайдеров джойстиков.

тоесть джойстики работают только внутри синего или зеленого квадрата

update:
вот так не работает Scaling Style = PixelPerfect : Изображение
если Scaling Style = FixedSize или Scaling Style = FixedSizeOnMobiles - то всё работает как надо

Скриншот удалён администратором из-за плохого качества и несуразно большого размера. Не будьте безсмысленно расточительны - HDD форума не бесконечен.
camelot10
UNец
 
Сообщения: 18
Зарегистрирован: 28 мар 2010, 22:14

Re: Joystick for mobile (NGUI)

Сообщение Syberex 15 июл 2013, 23:14

Как я понял обновился пакет NGUI-я и в связи с этим, не все работает. В течении 2-3 дней постараюсь разобраться с этим.
Аватара пользователя
Syberex
Адепт
 
Сообщения: 2292
Зарегистрирован: 14 янв 2011, 20:35
Откуда: Кострома
  • Сайт

След.

Вернуться в Компоненты (Копилка)

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1