Падает фпс когда копаю блоки быстро. Помогите пожалуйста почему так
Конфигурация системы
Ну слишком много частиц падает после разрушения блоков от этого начинает лагать
Потому что слишком много данных нужно обработать компу. Как бы. Чего ты ожидал
Резкие кратковременные пролаги при размещении/ломании блоков напрямую связаны с проблемами в скорости работы алгоритмов расчёта освещения (так называемого «светового движка»).
͟К͟а͟к͟ ͟э͟т͟о͟ ͟р͟а͟б͟о͟т͟а͟е͟т͟?
Дело в том, что при ломании блока, прежде чем изменить визуальную картину, Майнкрафт должен прассчитать освещение новой сцены, основываясь на окружающих условиях света, а также обновить освещение рядом стоящих блоков. Пока процесс расчёта не завершён, кадр не обновляется. Отсюда возникают характерные пролаги, если расчёт света занимает много времени.
Примечательно, что довольно тяжёлым в этих расчётах является расчёт освещения неба. Если упростить, то каждый раз при изменении блоков Майнкрафт запускает условный «луч» с 272 высоты вертикально вниз (на 16 блоков выше максимальной высоты мира), рассчитывая освещение для каждого блока, рядом с которым он пройдёт. Чем длиннее путь луча, тем дольше по времени происходят вычисления. Если прекратить его дорогу, заслонив большой горизонтальной платформой на максимальной высоте территорию, где размещается/разрушается блок, то можно будет заметить, что пролаги прекратятся. А единовременное размещение такой платформы (например, командой /fill ~-15 255 ~-15 ~15 255 ~15 minecraft: stone), напротив, вызовет сильнейшее зависание.
͟Ч͟т͟о͟ ͟с͟ ͟э͟т͟и͟м͟ ͟д͟е͟л͟а͟т͟ь͟?
Как мы выяснили, причиной является слишком долгий процесс расчёта освещения. Увы, проблема находится на уровне кода игры, и сами мы (игроки) ничего с этим сделать не можем. К счастью, сообществом модмейкеров сейчас активно разрабатывается сразу два более оптимизированных алгоритма освещения, входящих в состав модов https://goo.su/6Mw4 и https://modrinth.com/mod/phosphor. Достаточно просто установить один из этих модов, используя загрузчик https://goo.su/6MW7 (), чтобы устранить проблему. В сравнении с ванильным световым движком они позволяют получить ощутимый прирост в скорости вычислений, который можно наблюдать на этих графиках:
Общая производительность Phosphor:
Сравнение скоростей генерации чанков с использованием различных движков:
Сравнение скоростей расчёта света для блоков без учёта небесных «лучей»:
Сравнение скоростей расчёта света от блока-источника:
Из этих диаграмм видно, что самым эффективным световым движком является Starlight. Однако он до сих пор находится в бета-тестировании и доступен для скачивания только со https://goo.su/6Mw4 на GitHub.