Fast WayPoints (не игра)

Проекты в стадии разработки.

Fast WayPoints (не игра)

Сообщение bwolf88 25 июн 2014, 04:23

В верхней записи обновляются только видео и подписи к ним, а также, в последовательности, описание обновлений и fix багов. Остальное написано с первого дня.

Первый собственный инструмент, черновое название FastWayPoints
Теперь есть на ассет сторе https://www.assetstore.unity3d.com/en/#!/content/19302
http://anidory-photo.tk/fastwaypoint/fastwaypoint.html (web демка)

Возможности:
1. Количество путей - теоретически неограниченно.
2. Количество промежуточных точек между пунктом А и Б - теоретически неограниченно.
3. Количество развилок у одной перекретной точки - теоретически неограниченно.
4. Можно построить достаточно сложный путь за несколько минут.
5. Можно соединить несколько путей в одной точке.
6. Редактирование путей, удалив конечную точку можно увеличить длину пути (в видео не показано), также можно удалить ненужные промежуточные точки или весь путь, по мере необходимости перемещать любые точки в пространстве.
Редактируемый путь для удобности подсвечивается.

Video2
Скрытый текст:

Video1
Скрытый текст:



Update 26.06.14
1. Возможность создавать двунаправленные пути. Также двунправленный путь можно превратить в однонаправленный с любой из двух точек.
2. Однонаправленный отрезки обозначены стрелками с направлением движения, двунаправленные - сферами. (Автозамена по ходу).
3. Изменяемая ширина коридора. Изначально равна 0 (то есть точно по линии), либо задается общая перед созданием первой точки в Wpoints. Если необходимо проложить путь другой ширины так же в WPoints можно изменить ширину будущую для всех впоследствии построенных точек.
4. Можно изменять ширину коридора для каждого отрезка индивидуально. Ширина коридора делится через середину пути.
Теперь боты не ходят как солдатики по одной линии

Video3. При записи видео несколько глюков с отображением было (постоянно забываю переключить видюху).
Скрытый текст:


Update 29.06.14
1. Сделал запрет на возврат в последнюю точку - теперь нет хаотичного движения.
2. Возможность создавать несколько траффик путей. То есть разделять к примеру дорога для автомобилей, дорога для пешеходов и т.п.
3. Для удобности можно менять цвет Gizmo Трафика.
4. Теперь боты ищут ближайший перекресток привязанного пути и с него начинают путь (раньше была привязка к первой точке).
5. Возможность останавливать движение по WayPoint для совершения посторонних действий (убегать, гнаться и т.п.) при активации передвижения бот возвращается к последней точке.

Video4 последнее
Скрытый текст:


Update 20.08.14
Пофиксил несколько багов.
1. При удалении Перекрестной точки с одним way некорректно удалялся путь.
2. При удалении CrossPoint со смежного маршрута (не пути, а именно маршрута), к которой CrossPoint не принадлежал (если несколько разных маршрутов соединялось вместе в одной перекрестной точке) он не удалялся из списка.
3. Первый CrossPoint нового пути нельзя было поставить на GameObject кроме ГО с именем Террейн (забыл добавить условие по тегу). С остальными проблем не было. Ошибка не критичная, можно было создать точку на Террейне и перенести в любое место.
4. В одном из Editor скриптов забыл убрать Дебаг условие на проверку коллизий инпута мыши с CrossPoint (использовал для настройки). При нажатии на объект с названием меньше 7 символов вылазила ошибка (хотя на работу Ассета она не влияла).

Обновил версию и отправил.

Update от 21.08.14
Научил ботов ходить по сферическим объектам круглой формы (типа планеты).На сильно сплюснуто-овальных ведут себя неадекватно.
Немного допилю и включу в следующее обновление.


Ниже по теме есть пара тестов производительности.
Последний раз редактировалось bwolf88 21 авг 2014, 01:20, всего редактировалось 28 раз(а).
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение Syberex 25 июн 2014, 07:05

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

Re: Fast WayPoints (не игра)

Сообщение llka 25 июн 2014, 14:56

Syberex писал(а):Привет :) а как ты определяешь точку нажатия в сцене?

Рейкаст в плоскость из SceneView или из любой другой точки что взята за источник?
llka
UNIверсал
 
Сообщения: 359
Зарегистрирован: 08 янв 2014, 05:00

Re: Fast WayPoints (не игра)

Сообщение bwolf88 25 июн 2014, 16:04

Syberex писал(а):Привет :) а как ты определяешь точку нажатия в сцене?


в OnSceneGUI

ray = HandleUtility.GUIPointToWorldRay(Event.current.mousePosition);
а дальше обычным райкастом
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение Woolf 25 июн 2014, 16:31

А где сам инструмент?
Разработчик theFisherOnline - там, где клюёт
Разработчик Atom Fishing II - Первая 3D MMO про рыбалку
Разработчик Atom Fishing - Рыбалка на поплавок, донку, нахлыст, блесну в постъядерный период.
Аватара пользователя
Woolf
Адепт
 
Сообщения: 7179
Зарегистрирован: 02 мар 2009, 16:59

Re: Fast WayPoints (не игра)

Сообщение bwolf88 25 июн 2014, 18:23

Инструмент до ума довести еще нужно. Это пока сырой экспериментальный образец.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение bwolf88 26 июн 2014, 20:40

Жесть, улучшать и исправлять баги времени сжирают не меньше, чем создание с нуля.

Улучшено:
1. Возможность создавать двунаправленные пути. Также двунправленный путь можно превратить в однонаправленный с любой из двух точек.
2. Однонаправленный отрезки обозначены стрелками с направлением движения, двунаправленные - сферами. (Автозамена по ходу).
3. Изменяемая ширина коридора. Изначально равна 0 (то есть точно по линии), либо задается общая перед созданием первой точки в Wpoints. Если необходимо проложить путь другой ширины так же в WPoints можно изменить ширину будущую для всех впоследствии построенных точек.
4. Можно изменять ширину коридора для каждого отрезка индивидуально. Ширина коридора делится через середину пути.
Теперь боты не ходят как солдатики по одной линии :D

С обратным направлением жестоко намучался, но все таки победил. Получилось даже некое подобие трафика :) .
Провел свой любимый критическйи тест в лоб. 300 физических ботов с бокс коллайдерами на интегрированной видеокарте Настоящий муравейник :D :D


Без физики 1000 объектов держат 80 ФПС (если не записывать видео) :) Похоже на систему кровообращения :-?


Следующее в планах:
1. Либо создать общую карту (п4), либо сделать запрет на возврат в последнюю начальную точку (что более практично).
Хотя скорей всего будет и то, и то.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение bwolf88 28 июн 2014, 22:53

Долго думал стоит ли делать общую карту - решил не делать, эта функция больше нужна для Рантайм поиска пути. А тут больше симуляция трафика, ТД, гонки и т.п. то есть путь уже заранее задан, перекрестные точки обозначены.

1. Сделал запрет на возврат в последнюю точку - теперь нет хаотичного движения.
2. Возможность создавать несколько траффик путей. То есть разделять к примеру дорога для автомобилей, дорога для пешеходов и т.п.
3. Для удобности можно менять цвет Gizmo Трафика.
4. Теперь боты ищут ближайший перекресток привязанного пути и с него начинают путь (раньше была привязка к первой точке).
5. Возможность останавливать движение по WayPoint для совершения посторонних действий (убегать, гнаться и т.п.) при активации передвижения бот возвращается к последней точке.

Возможно чего нибудь еще добавлю и буду расширять на рантайм.
Чуть позже будет Video4
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение llka 28 июн 2014, 23:10

Есть пожелание: сложите все объекты в иерархии в один объект или несколько, а то так вся иерархия забита, ну это так для удобства.
llka
UNIверсал
 
Сообщения: 359
Зарегистрирован: 08 янв 2014, 05:00

Re: Fast WayPoints (не игра)

Сообщение bwolf88 28 июн 2014, 23:22

Они сложены, иерархия забита посторонними объектами - ботами, окружением и т.п.
А Точки и пути сложены: Объект всех трафиков -> отдельный трафик -> Контрольные точки траффика.

В последнем 4 видео это видно.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение ASD 03 июл 2014, 13:27

Когда я недавно делал АИ для городского траффика - то отказался от выстраивания пути. Вместо этого поставил вейпоинты на перекрёстках, и боты сами рандомом выбирают куда им не перекрёстке повернуть :) Очень неплохо кстати получилось. Ну и ещё они от вейпоинта к вейпоинту разгоняются, перед вейпоинтом тормозят до заданной скорости чтобы в поворот войти и т.д.
SmartMove Games
ASD
UNIверсал
 
Сообщения: 400
Зарегистрирован: 14 дек 2012, 23:40
Откуда: Харьков
  • ICQ

Re: Fast WayPoints (не игра)

Сообщение bwolf88 03 июл 2014, 18:26

На данный момент это включено в систему :). Стрелочки (или сферы, если с обратным направлением) - это корректирующие путь точки. На перекрестках можно задавать любое количество ответвлений и боты сами выбирают в какую сторону идти. Можно обходиться и без корректирующих точек, тупо ставить перекрестные точки, но тогда путь будет строго прямым до следующего перекрестка, что не всегда удобно. Так же можно задавать ширину коридора чтобы траффик выглядел более естественным, а не солдатским строем по линии :D. Боты рандомно идут в пределах заданной ширины. Я старался сделать насколько можно универсальнее и проще. Можно было еще усложнить, добавив несколько фишек, но тогда системка получится громоздкой, я старался сделать чтобы можно было построить путь максимально быстро. Как видно из видео несложный путь для ТД игры можно за минуту налепить.
Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение ASD 03 июл 2014, 18:35

У разных систем конечно свои плюсы и минусы... У меня добавление бота сводится к установке его на сцену и указыванию одной точки маршрута, дальше он уже сам ))) никаких ответвлений не надо делать. Хотя система конечно тоже далека от идеала, я даже хз каким он должен быть :)
з.ы. Самое главное забыл, у меня боты на вилколлайдерах и имеют полную автомобильную физику, как и машина игрока :) Кривые трения, КПП и т.д.
SmartMove Games
ASD
UNIверсал
 
Сообщения: 400
Зарегистрирован: 14 дек 2012, 23:40
Откуда: Харьков
  • ICQ

Re: Fast WayPoints (не игра)

Сообщение bwolf88 04 июл 2014, 21:34

ASD писал(а):У разных систем конечно свои плюсы и минусы... У меня добавление бота сводится к установке его на сцену и указыванию одной точки маршрута, дальше он уже сам ))) никаких ответвлений не надо делать. Хотя система конечно тоже далека от идеала, я даже хз каким он должен быть :)
з.ы. Самое главное забыл, у меня боты на вилколлайдерах и имеют полную автомобильную физику, как и машина игрока :) Кривые трения, КПП и т.д.



Посмотрите это 2 минутное видео. Трасса проложена меньше чем за 40 сек. Возможность ответвлений я сделал чтобы разнообразить путь. Взять тот же НФС (играл только в undeground) там было несколько путей чтобы прийти к финишу. Или взять игру типа ТД - у ботов так же несколько дорог.

Бот так же просто добавляется на сцену (это может быть любой объект), на него кидаем скрипт движения, задаем дорогу. Он находит ближайший перекресток и от него идет по заданному направлению до финиша. Если бота передвинуть ближе к середине он начнет путь со второго перекрестка. По поводу физики авто или других действий - функция движения простая и написана для демонстрации системки. Ее можно заменить на все что угодно, хоть на автомобильную, хоть с супер физикой - это уже на усмотрение.

Сюда периодически чего нибудь выкладываю https://github.com/LuchunPen
Аватара пользователя
bwolf88
Адепт
 
Сообщения: 2184
Зарегистрирован: 30 апр 2014, 06:40
Skype: bwolf331

Re: Fast WayPoints (не игра)

Сообщение Diab10 04 июл 2014, 21:51

Ну ничё так :)
А при помощи чего синие линии нарисованы?
Аватара пользователя
Diab10
Адепт
 
Сообщения: 3401
Зарегистрирован: 17 мар 2011, 20:42
Откуда: 123 RUS
Skype: diab1023

След.

Вернуться в Кузня

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

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