Оптимизация больших луа скриптов

Статус
В этой теме нельзя размещать новые ответы.

NEDE7U

Участник
Автор темы
70
19
Версия MoonLoader
.026-beta
Всем привет, пишу большой хелпер, но встретился с ОГРОМНОЙ проблемой.
У всех тестеров, фпс падает очень сильно из за скрипта. Как пример у меня 250 фпс стабильно, ставлю скрипт и у меня 60 фпс...

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

#Northn

Police Helper «Reborn» — уже ШЕСТЬ лет!
Всефорумный модератор
2,635
2,485
добавляю эту функцию в ondrawframe
Эта функция (как и функции мунмонет) должны вызываться только по необходимости, а не постоянно. Вынеси вызов функции из неё куда-то в другое место
 
  • Клоун
  • Нравится
Реакции: Fott и NEDE7U

kyrtion

Известный
659
242
если там рисует в обычном функции, где начинается render..., лучше заменить на новый фрейм MImGui для рендера.
ну и вот там отрисуешь через drawlist

p.s.
сравнил рендеры и фрейм. у рендера не успевает следить кадр и неправильно рендерит (если рисует в большом количестве, фпс немного падает). через фрейма - следит кадров и плавно рисует, почти фпс не падает. если делаешь трейсер, то сначала убираете звуки в игре для сравнения. Из-за звука фпс немного снижается на 1-6 кадр.
p.s.s.
также не использовать цикл если в таблице пустой или переменная равна nil
 
  • Нравится
Реакции: NEDE7U

NEDE7U

Участник
Автор темы
70
19
если там рисует в обычном функции, где начинается render..., лучше заменить на новый фрейм MImGui для рендера.
ну и вот там отрисуешь через drawlist

p.s.
сравнил рендеры и фрейм. у рендера не успевает следить кадр и неправильно рендерит (если рисует в большом количестве, фпс немного падает). через фрейма - следит кадров и плавно рисует, почти фпс не падает. если делаешь трейсер, то сначала убираете звуки в игре для сравнения. Из-за звука фпс немного снижается на 1-6 кадр.
p.s.s.
также не использовать цикл если в таблице пустой или переменная равна nil
у меня не mimgui, а imgui, я с mimgui конфликтую немного :D

Всем хочу выразить огромнейшее спасибо, так как я действительно решил все проблемы практически, по вашим рекомендациям. Скрипт стал снимать не 150фпс, а максимум 5-8 кадров..

Тему можно закрыть. По желанию, можете для таких дэбилов как я сделать отдельную тему и упомянуть эти советы.
Спасибо BH <3
 
Последнее редактирование:
  • Влюблен
  • Нравится
Реакции: kyrtion и DZONE
Статус
В этой теме нельзя размещать новые ответы.