При создании определенного спецэффекта, нужно ли удалять спецэффекты которые сами исчезают визуально после своего воспроизведения или это происходит автоматически, или все же нужно добавлять триггер на удаление этого эффекта, чтобы в дальнейшем карта не стала тормозить?

После создания эффекта, следующей строчкой делаешь удаление.
Если он он создается на время, то заноси в переменную и когда надо удаляй.
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
21
Да, нужно удалять, если эффект больше не используется.
26
Если не удалить один спецэффект, то будет утечка памяти 11.631 кб

Память очистится от утечек после выхода из карты, если спецэффекты не будут плодиться по сто штук в секунду, а будет сто штук за всю игру, то можно не удалять, так как большой роли не сыграют.
9
После создания эффекта, следующей строчкой делаешь удаление.
Если он он создается на время, то заноси в переменную и когда надо удаляй.
Принятый ответ
16
8gabriel8:
Если не удалить один спецэффект, то будет утечка памяти 11.631 кб

Память очистится от утечек после выхода из карты, если спецэффекты не будут плодиться по сто штук в секунду, а будет сто штук за всю игру, то можно не удалять, так как большой роли не сыграют.
чем вес замерял?
7
call DestroyEffect(create SpecialEffect (special_effect))
такая конструкция приемлема, на луа пока не знаю.
Вроде там не надо ничего обнулять, но насчет эффектов я ничего не слышал пока что. В скором времени думаю выяснится
26
DracoL1ch, это с хайва взял из какой-то темы про систему автоматического удаления утечек. Чем замеряли там вроде не было указано, но рискну предположить, что сравнили память в диспетчере задач до создания 1000 объектов и после.
3
noyl:
После создания эффекта, следующей строчкой делаешь удаление.
Если он он создается на время, то заноси в переменную и когда надо удаляй.
обязательно следующей строкой удалять или можно это делать после нескольких других действий? ну типа wait или любой другой
9
lizzardfyll:
noyl:
После создания эффекта, следующей строчкой делаешь удаление.
Если он он создается на время, то заноси в переменную и когда надо удаляй.
обязательно следующей строкой удалять или можно это делать после нескольких других действий? ну типа wait или любой другой
Если надо удалить позже, то надо его записать в переменную, иначе он удалит самый последний эффект, а не который тебе нужен.
Т.е ты создаешь эффект, записываешь его в переменную(X = последний созданный спец. эффект), а после удаляешь спец. эффект X
3
noyl:
lizzardfyll:
noyl:
После создания эффекта, следующей строчкой делаешь удаление.
Если он он создается на время, то заноси в переменную и когда надо удаляй.
обязательно следующей строкой удалять или можно это делать после нескольких других действий? ну типа wait или любой другой
Если надо удалить позже, то надо его записать в переменную, иначе он удалит самый последний эффект, а не который тебе нужен.
Т.е ты создаешь эффект, записываешь его в переменную(X = последний созданный спец. эффект), а после удаляешь спец. эффект X
а ну понятно, если эффект в действиях всего один, то не обязательно его в переменную записывать

всем спасибо за ответы
26
обязательно если ты хочешь его удалить потом, и не в глобальной а локальную, если там возможен запуск триггера несколько раз за этот период
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.