XGM Forum
Сайт - Статьи - Проекты - Ресурсы - Блоги

Форуме в режиме ТОЛЬКО ЧТЕНИЕ. Вы можете задать вопросы в Q/A на сайте, либо создать свой проект или ресурс.
Вернуться   XGM Forum > Warcraft> Академия: форум для вопросов
Ник
Пароль
Войти через VK в один клик
Сайт использует только имя.

Ответ
 
ScorpioT1000
Работаем
online
Опыт: отключен
можно, но на юнитах это всё затратно
какой гуи, какой варкрафт в 2014)
Старый 24.04.2014, 17:42
Nemezid

offline
Опыт: 8,077
Активность:
ScorpioT1000, уловил суть. Вот только, как я понял, придется делать проверку для каждого из юнитов (в моем случае для 10ти). Опять же будет неизбежное торможение. Словом лучше ограничить кол-во возможных "растяжек" до 3-х например и сделать для каждой пары отдельный триггер)
Nemezid26rus добавил:
ScorpioT1000:
какой гуи, какой варкрафт в 2014)
ахах) жаль, что варкрафт умирает
Старый 24.04.2014, 17:45
God_of_light
http://xgm.ru/p/ps
offline
Опыт: 7,949
Активность:
ScorpioT1000, я по детски влюблен в вк3)
Старый 25.04.2014, 08:25
God_of_light
http://xgm.ru/p/ps
offline
Опыт: 7,949
Активность:
ScorpioT1000, я по детски влюблен в вк3)
God_of_light добавил:
Nemezid26rus, попробую на гуях изобразить это на выходных, потом напишу тебе
Старый 25.04.2014, 08:26
nvc123
new status
offline
Опыт: 59,284
Активность:
Nemezid26rus, можно до 50 растяжек
и даже калькулятор не будет сильно лагать
nvc123 добавил:
если делать отдельные триггеры для каждой растяжки то лаги будут ужасные
Старый 25.04.2014, 09:40
DioD

offline
Опыт: 45,134
Активность:
вы неправильно подходите к решению задачи, это источник лагов, а не отдельные триггеры.
  1. Это возможно описать математически и хранить снапшоты описания
  2. ???
3 ) Профит
протип никто не запрещает округлять, изменять точность или применять иные методики расчёта или сортированные списки, ровно как никто не запрещает сделать растяжки только для героев и проверять героев а не растяжки, так как растяжек может быть 100500 штук, а вот героев как правило 10.
Старый 25.04.2014, 10:05
nvc123
new status
offline
Опыт: 59,284
Активность:
DioD, если они должны действовать не только на героев но и на обычных юнитов то твой вариант не подходит
я бы сверял координаты юнитов с координатами растяжек а потом сверял углы у совпавших
так же если карта большая и растяжек довольно много то можно делить карту на области и сделать стек областей в которых есть растяжки
nvc123 добавил:
короче надо сокращать список юнитов начиная с менее ресурсозатратных проверок и заканчивая проверкой по углам
Старый 25.04.2014, 10:25
Берги
Нет, ты!
offline
Опыт: 102,136
Активность:
А я бы вот как сделал:
На 1 единственном периоде скажем 0.04 чекал бы области (чёрные) между двумя юнитами, количество областей увеличивается с расстоянием, области не накладываются друг на друга и проверка привязана к двум юнитам между которыми связь. Как только кто-то появился в этих областях то делаем наши действия действия
Миниатюры
Кликните на картинку для увеличения
Название:  00000.jpg
Просмотров: 16
Размер:  6.6 Кбайт  
Старый 27.04.2014, 00:07
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
Про мою карту все забыли? Код индусский офк, я ипользовал уравнение прямой для получения Y координаты на линии заданной двумя точками и сравнивал - више\ниже она чем Y нашего юнита...
Buulichkaa добавил:
Кстати, там баг, который я нашел через день после отправления карты :D скорость затягиваемых в дыру юнитов не обнуляется, но суть реализации ясна.
Buulichkaa добавил:
Я думаю...
Прикрепленные файлы
Тип файла: w3x xgmsc4_Buulichkaa_Bow.w3x (30.4 Кбайт, 4 просмотров )
Старый 27.04.2014, 00:24
HolyMoon
Hly shit!
offline
Опыт: 6,986
Активность:
Buulichkaa:
я ипользовал уравнение прямой для получения Y координаты на линии заданной двумя точками и сравнивал - више\ниже она чем Y нашего юнита...
хоть один адекват :D
Старый 27.04.2014, 04:13
DioD

offline
Опыт: 45,134
Активность:
Это возможно описать математически и хранить снапшоты описания
для тех кто в танке - нет смысла брать 100500 выборов на линии между растяжками, мы берём выборку вокруг одной из точек ратяжки (изначально растяжка будет иметь master & slave точки), размером на 10% выше предельной длины растяжки.
Чтобы не проверять растяжки рядом с которыми гарантированно нет юнитов в принципе, можно как справедливо указано выше делить карту на чанки и активировать\деактивировать их при необходимости.
Так кстати все крупные игры делают.
растяжки никуда не бегают, мы можем заранее расчитать границы координат которые будут проходить по условию (снапшоты) и хранить их в памяти чтобы не считать каждый раз
Если скрестить чанки и снапшоты, то мы можем проверять ловушки не индивидуально, а все сразу в некотором чанке, что даст очень существенный выигрыш в производительности, особенно если мы сортируем координаты юнитов и ведём список.
Старый 27.04.2014, 05:23
Buulichkaa
Делаю спеллы за еду
offline
Опыт: 20,146
Активность:
DioD, ну так нам пик вообще не нужен, растяжка как вы её называете, прикреплена к двум точкам, эти точки являются крайними точками ректа. Как только нужный юнит(ы) заходит в рект - заносим его в группу и проверяем юнитов этой группы в периодике, пересекли они линию или нет...
Но тут же появляются некоторые траблы, это крайне не производительно если растяжки будут очень длинными, если скорость входящего юнита будет больше чем расстояние между границами ректа, то в некоторых случаях мы не сможем засечь что юнит вошел, т. е. придется расширить рект на нужное количество едениц... и т. д.
Старый 27.04.2014, 13:49
nvc123
new status
offline
Опыт: 59,284
Активность:
Buulichkaa, по триггеру и группе к каждой растяжке не кул
лучше проводить сортировку поэтапно как делают во всех норм играх
Старый 27.04.2014, 19:13
ScorpioT1000
Работаем
online
Опыт: отключен
надеюсь, никто не воспримет слова Buulichkaa всерьёз =)
Старый 28.04.2014, 14:51
Msey
????
offline
Опыт: 67,346
Активность:
лол. раздули из банальной темы такой холивар....
это вроде через проверку углов между юнитами в нном радиусе делается. срать на ресурсозатратность при таком убер движке

Отредактировано Msey, 28.04.2014 в 20:49.
Старый 28.04.2014, 20:50
Violencegame

offline
Опыт: 52
Активность:
На гуи: юнит входит в регион регионом выставляем прямоугольник с координатами юнитов между которыми пролетает. Но это крайний вариант.
Старый 10.05.2014, 11:14
Ответ

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы можете скачивать файлы

BB-коды Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход



Часовой пояс GMT +3, время: 01:11.