Как правильно инициализировать способности и юнитов в массиве?
Например прелоадить все обьекты в карте
и после удалить их? не заметно для игроков
желательно без глобальных переменных

Без ответа.


Просмотров: 125

quq_CCCP #1 - 2 недели назад 0
AntiMage, айсфрог больше не фаворит, не?
Создай их на карте изначально, потом удали при старте удали, время загрузки карты увеличится, зато не будет просадок фпс при выборе нового героя и так далее. Способности прелоадят с помощью preload, постепенно, как только появился герой которому нужны эти способности, то потихонечку подгружаются эффекты скиллов, создаются даммики которым по очереди с некоторым интервалов вручают по 1 скиллу героя + так же все вспомогательные дамми способности.
AntiMage #2 - 2 недели назад 0
quq_CCCP, про способностей preload подробнее
LainMikoroso #3 - 2 недели назад 0
А также эффекты желательно, тоже. Я о том, что прелоадить модель эффекта нужно каждый раз когда запускаешь триггер с этим спеллом, или все же в триггере инициализации карты один раз?
quq_CCCP #4 - 2 недели назад 2
Близзарды сделали способ для ленивых,
call PreloadGenClear()
call PreloadGenStart()
call CreateUnit(Player(0), ваш герой, 0.00, 0.00, 0.00 )
call TriggerSleepAction( 5.00 )
call PreloadGenEnd( "save\\MyData.pld" )
Этот код запишит в файл mydata.pld все что загружает в память движёк при создании этого юнита, далее этот код можно запустить функцией Preloader( путь до *.pld файла ), таким образом мы можем сделать N скриптов погрузки для каждого героя, в тавернах продавать даммиков и при покупке даммиков вызвать этот скрипт, потом через пару секунд создать героя.
Способности можно подгружать таким же способом, только нужно заставить героя выиучить их и пременить, очень быстро (кодом, а не руками) и в файл попадет все что грузил движок.
AntiMage #5 - 2 недели назад 0
quq_CCCP, я спросил про ability preload)
ledoed #6 - 2 недели назад 2
а не легче будет в начале игры таймером создавать юнитов,дамаиков и тдд + ещё создать юнита которому дать все способности ("таймером естественно")а потом всё это дело дружно удалить
главное учитывать что после 'A00Z' нужно делать условие которое сделает так 'A010'
Clamp #7 - 2 недели назад 0
а не легче будет в начале игры таймером создавать юнитов,дамаиков и тдд + ещё создать юнита которому дать все способности ("таймером естественно")а потом всё это дело дружно удалить
Не легче, загрузка карты должна быть достаточно быстрой, иначе второй раз игроки в неё играть уже не пойдут.
Обычно делается так, что предзагрузка данных героя выполняется только тогда, когда он появляется на карте. Для того, чтобы он не был подгружен при запуске карты, достаточно не вызывать в начале игры никаких функций, связанных с героем или его способностями.
DracoL1ch #8 - 2 недели назад 0
если использовать виджетайзер, то это уже достаточная скорость
а уже после загрузки таймером на 0.05 прелоадить всех юнитов и абилки поочередно, и будет вам счастье