В общем, делаем с другом карту на GUI, и встал вопрос, что лучше использовать Таймер или Триггер с периодическим событием. Если думать логически, то преимущество периодика в том, что в нем не нужно использовать переменную Таймера, т.е. не засоряется список переменных, к тому же есть проверка:"Триггер включен или выключен" и можно отслеживать работает ли триггер или нет, вот. А вот в таймере не видно преимуществ, хотя его мне советовали. Так вот, мне нужно знать, почему таймер лучше периодических триггеров, для "говномапок" на Gui.
Также есть второй вопрос, почему нельзя ставить периодик/таймер меньше 0.03?

Принятый ответ

Если в триггере много действий, загружающих память, то лучше не использовать малый период. А если в нём ещё утечки памяти, то рано или поздно лаги сделают игру невозможной.
По сути, и таймер, и периодическое событие запускают действия в определённое время, то есть действуют одинаково. Смотри, что тебе удобнее.

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
1
13
7 лет назад
Отредактирован NekoriDes
1
А если в нём ещё утечки памяти
То вообще не важно какая там у тебя переодичность и что ты используешь. x)
1
20
7 лет назад
1
NekoriDes:
А если в нём ещё утечки памяти
То вообще не важно какая там у тебя переодичность и что ты используешь. x)
так-то лучше засорять память реже, чем чаще
1
27
7 лет назад
Отредактирован MpW
1
xgm.guru/forum/showthread.php?t=58784 разницы никакой нет между двумя. только неудобство в том, что это событие, и привязан к триггеру и все. Событие то ловит когда завершает действие таймера. Плюс еще можно условиями юзать, как фильтры.
раскрыть
Еще можно в качестве события нацепить таймер. Да используют в событиях таймеры. Таймеры просто привязаны событием к триггеру. Различие в том, ловим событием завершение таймера, и запускаем триггер.
Или можно сразу запускаем функцию. Через нативку удобно вызвать функцию таймером: создал таймер, запустил - делал действие, удалил таймер и все. В то время, как через триггер: когда удалишь таймер, там остается событие, которое будет бесполезным. Не знаю, считается ли это утечкой (считается незначительной утечкой)
раскрыть
скорее всего есть небольшие различия из-за TriggerSleepAction. недавно пробовал, и узнал, что работает только в функции действия. А если запустить отдельный поток, вроде ForGroup. то не работает слип. Не знаю, если вызвать через нативку таймера функцию, то в функции кажись слип работать не будет. В некоторых случаях, нужно паузу сделать в 0.00 сек. например. Хотя мне привычно юзать таймеры
xgm.guru/forum/showthread.php?t=5678 вот что-то нашел про потоки
Darknessay, человеческий глаз не успевает увидеть изменения меньше чем 0,3 или 0,4 сек. Не увидит движения. Но это не значит, что вредно (просто игрок не увидит ничего. машина быстро работает).
Дело не в том, что лучше. А что плохо иметь одновременно много работающих таймеров.
5
26
7 лет назад
Отредактирован Extremator
5
Периодик продолжает работать всю игру, даже если выключен
проверяется это тем что периодик в 30.00 сек будет срабатывать ровно каждые 30 сек, после начала игры, а не с того момента как будет включен, не вызывая при этом срабатваниый если был отключен (таким образом можно сказать что подсчёт происходит постоянно, и если там время в 0.03 сек - само собой становится понятным что в игре будет работать лишний "таймер", при том что он может за игру даже не понадобиться).
Таймер же работает только тогда, когда ты его САМ запускаешь...
По поводу переменных - не важно сколько у тебя переменных в карте, сами по себе они ничего не весят и не занимают... вот и всё
0
20
7 лет назад
0
Extremator,
сами по себе они ничего не весят и не занимают - ссылку на исследования, пожалуйста.
0
13
7 лет назад
0
DemonoiD, а что за исследования ты хочешь увидеть? Считаешь что пара десятков "пустых" переменных может на что-то повлиять? На что?
0
20
7 лет назад
0
NekoriDes, как минимум на вес карты. Пару сотен пустых переменных должны как-то влиять на работоспособность, так как они занимают ячейку памяти и готовы быть вызваны в любую секунду. Интересны числа, а Вы утверждаете, что они ничего не занимают.
0
13
7 лет назад
0
DemonoiD, я думаю, имелось в виду то, что это существенно ни на что не повлияет. Но если тебе это покоя не дает, возьми любой нормальный завершенный проект (исходники всмысле) и протестируй.
0
20
7 лет назад
0
NekoriDes, ты ужасный зануда :(
0
32
7 лет назад
0
2
NekoriDes, как минимум на вес карты. Пару сотен пустых переменных должны как-то влиять на работоспособность, так к
10 000 + начинают влиять.
6
26
7 лет назад
6
... я представляю себе карту где на первой строке идёт globals
а где то на 10002-й endglobals ...
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.