Здравствуйте. Я занимаюсь дальнейшим развитием карты LTD x10 4k и столкнулся со следующей проблемой. Когда начинается волна и юниты вступают в бой, наблюдается серъёзная просадка фпс, вплоть до полного зависания у слабых компов. Так же в некоторых случаях ( именно когда начинается бой ) у людей критует варик всегда с одной и той же ошибкой ( недостаточно памяти для обработки команды, \cmemblock.cpp Line:372 ). После фикса утечек объектов в память критовать людей стало в разы реже, но фпс всё так же падает. Ради эксперемента, пробовал отключать перед самым началом боя все триггеры на GET_ATTACKED , но на ситуацию это не очень то и повлияло. Можно ли как то оптимизировать этот момент и почему вообще так сильно падает фпс при драке юнитов?

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

Не больше 60 юнитов на игрока, иначе капут. Не рассчитан варик на такое кол-во юнитов, еще и одновременно что то делающих.
Обзор юнитам на минимум, как и поиск целей для автоатаки. Вовсе юнитов нужно создавать небольшими порциями и отправлять.
`
ОЖИДАНИЕ РЕКЛАМЫ...
2
32
5 лет назад
2
Не больше 60 юнитов на игрока, иначе капут. Не рассчитан варик на такое кол-во юнитов, еще и одновременно что то делающих.
Обзор юнитам на минимум, как и поиск целей для автоатаки. Вовсе юнитов нужно создавать небольшими порциями и отправлять.
Принятый ответ
0
28
5 лет назад
0
quq_CCCP, Если память не имзеняет это с многопоточностью связано?
0
15
5 лет назад
0
PrincePhoenix, с многоядерностью. Которой нет. Попробуй на 1.30
0
2
5 лет назад
0
quq_CCCP, Если это поможет, то есть ещё такой момент. Юнитов - мобов ( которые идут как волны ) относительно одинаковое количество на карте в момент боя ( около 300-350 ) всегда при каждой волне, но просадки начинаются только с увеличением количества юнитов-башен, причём с определённого момента, такое ощущение, что просадка начинает увеличиваться экспонентально.
3
32
5 лет назад
3
Gremlin222, Все ищут цель атаки, а это нагрузка, движок на такие баталии не рассчтан.
1
23
5 лет назад
1
чтобы было много армии делай все в базе волны если в карте деруться более 30 врагов и союзников если из 1 союзник или врага умер спавним пока не закончит все количество 350 юнитов... такая механика у меня реализовано. Что не лагает и быстро!
а также скрывать юнитов или декорации если камера на него не смотрит. Увеличивает fps
0
2
5 лет назад
0
Спасибо большое за ответы. Буду пробовать, экспериментировать, смотреть на результат.
2
17
5 лет назад
2
Лагает из-за того, что расчет анимаций загружает процессор (даже если на 100% проц не загружен, то лишь потому, что вар не оптимизирован для раскрытия современных процов на 100%). Тебе поможет упрощение анимаций или вовсе полное их удаление. В общем думай.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.