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

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

Закрытая тема
 
_Duke

offline
Опыт: 611
Активность:
Вопрос по использованию хеш-таблицы.
Доброго времени суток дамы и господа.
Итак, насколько я понимаю, для сопоставления какой либо переменной с каким либо объектом в варкрафте сейчас используются хеш таблицы, исходя из этого появляется ряд вопросов.
Для реализации одной из моих идей мне необходимо чтобы к юниту было привязано 4-5 числовых значений, таких юнитов в игре предполагается около 3-4х сотен. Обращение к переменным будет как периодическое (~ раз в 30 секунд) так и ивинтовое (при применении заклинаний в определённом радиусе e.t.c)
Вопросы: Насколько рентабельно реализовывать подобную систему? Не вызовет ли хранение такого количества переменных и обращение к ним жутчайших лагов или зависаний? Одним словом годится ли использование хеш-таблицы для работы с данными в таких масштабах?
Старый 17.03.2013, 12:29
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
используй структуры, люк
Старый 17.03.2013, 12:37
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,485
Активность:
Hate:
Вопросы: Насколько рентабельно реализовывать подобную систему? Не вызовет ли хранение такого количества переменных и обращение к ним жутчайших лагов или зависаний? Одним словом годится ли использование хеш-таблицы для работы с данными в таких масштабах?
Нет, нехрена страшного не будет от таблицы, но будет от юнитов....
Старый 17.03.2013, 12:47
_Duke

offline
Опыт: 611
Активность:
Hate:
используй структуры, люк
Буду признателен если расскажешь подробнее или кинешь ссылку на статью по структурам. Ибо не очень понял, что ты имеешь ввиду. Это как альтернатива хеш-таблице или как правильное её использование?
Вопрос то у меня возник именно потому что ранее я подобное не реализовывал и с хеш-таблицами не работал. Вот мне и захотелось узнать есть ли смысл вообще в это соваться, чтобы реализовать описанные выше потребности.
_Duke добавил:
quq_CCCP:
Вопросы: Насколько рентабельно реализовывать подобную систему? Не вызовет ли хранение такого количества переменных и обращение к ним жутчайших лагов или зависаний? Одним словом годится ли использование хеш-таблицы для работы с данными в таких масштабах?
Нет, нехрена страшного не будет от таблицы, но будет от юнитов....
В смысле? Разве 400 юнитов на карте это слишком много? В разных зомби сурвайвлах по моему даже ещё больше бывает.
Старый 17.03.2013, 12:51
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
про структуры описано в документации по vjass, по хештаблице есть статья на сайте
Старый 17.03.2013, 12:52
_Duke

offline
Опыт: 611
Активность:
Hate:
про структуры описано в документации по vjass, по хештаблице есть статья на сайте
А, понял. Спасибо. Ну по хештаблице я статью нашёл ещё до того как тему создал. Значит таки есть смысл пытаться реализовать через неё. vjass звучит для меня несколько пугающе потому как очень много курить придётся.
Теперь меня больше настораживает насчёт юнитов. Конечно кол-во юнитов в 400 вовсе не обязательно должно быть достигнуто во время игры, но я предполагал лимитировать кол-во юнитов на карте именно этим значением, потому что был уверен что 400 движок спокойно прожуёт. Если нет, тогда вопрос, с каким максимально кол-вом юнитов на мапе не будет сильно лагать?
Чуть подробнее опишу свои запросы.
Предполагается, что кол-во юнитов на карте будет динамическим. На старте это будет что-то около 60-80 юнитов, за каждым из которых должно быть закреплено 4 переменных каждая из которых может принимать значение от 0 до 100. Затем эти злобные крестьяне могут умирать или размножаться (и соответственно за каждым новым юнитом тоже должны закрепляться эти значения, а умерший юнит должен удаляться из игры вместе со всеми значениями). И я подумал, что для того чтобы их не наплодилось через чур много, стоит выключать их размножение при достижении какого-то лимита. Вот я и пытаюсь выяснить, какие цифры в таком случае будут оптимальными. Простите уж за назойливость.

Отредактировано _Duke, 17.03.2013 в 13:15.
Старый 17.03.2013, 13:01
Hate
конь вакуумный
offline
Опыт: 43,033
Активность:
по ~60 на игрока, а там уже по ресурсам компьютера и офигенности моделек
vjass не так страшен как кажется, если есть желание, то ничего сложного нету, тем более что документации полно, знающих хватает.
Старый 17.03.2013, 13:09
quq_CCCP
Я белый и пушистый!
offline
Опыт: 93,485
Активность:
_Duke:
Теперь меня больше настораживает насчёт юнитов. Конечно кол-во юнитов в 400 вовсе не обязательно должно быть достигнуто во время игры, но я предполагал лимитировать кол-во юнитов на карте именно этим значением, потому что был уверен что 400 движок спокойно прожуёт. Если нет, тогда вопрос, с каким максимально кол-вом юнитов на мапе не будет сильно лагать?
Если их всех увидит 1 игрок, или грубо говоря они будут у него одного - то это однозначно дикие лаги,...
Потом любые эффекты на такой толпе, нехорошо, смысл такую толпу делать?
Старый 17.03.2013, 13:14
_Duke

offline
Опыт: 611
Активность:
Нет, всех разом один игрок вряд ли увидит. И эффекты на всех разом накладывать я не собираюсь. 400 это предполагаемый лимит суммарного населения деревень рандомно раскиданных на карте. ^_^
Спасибо за ответы.
Старый 17.03.2013, 13:19
agentex

offline
Опыт: 34,834
Активность:
при большом количестве данных хеш таблица > массива
Старый 17.03.2013, 14:39
Закрытая тема

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

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

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

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



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