lazyyyyy
Известно, что все мы склонны к лени. Естественно, игры и компьютеры также проявляют лень.
Данный мод реализует подход «lazyyyyy» для оптимизации их работы.
Основной подход — использование асинхронной и ленивой загрузки, чтобы избыточная логика не замедляла запуск игры.
Используется индексирование для компенсации процессорного времени за счет памяти и дисковых операций.
Особенности
- Ускоренная загрузка mixin-конфигураций. Требует Sinytra Connector или Mixin Booster для работы на Forge.
- (YACL) Ленивая и асинхронная загрузка графических ресурсов YACL
- Загрузка происходит при рендеринге. Отображение отсутствует до завершения загрузки
- (Kiwi) Оптимизация поиска манифестов
- Манифест должен находиться в JAR-файле самого мода. Исключена возможность конфликтов с чужими манифестами.
- Ленивая инициализация рендереров сущностей/блоков/игроков
- Инициализация происходит при первом рендеринге. Отображение отсутствует до завершения
- (Entity Sound Features) Асинхронная загрузка звуковых событий
- Загрузка происходит при воспроизведении. Звук отсутствует до завершения
- (MoreMcmeta) Оптимизация использования памяти
- Кэширование ресурсов пакетов
- Аналогично реализации в ModernFix, но поддерживает больше типов пакетов. Автоматически отключает дублирующий функционал ModernFix.
- Ускоренная конфигурация модулей
- Бэкпорт оптимизаций https://github.com/openjdk/jdk/pull/16818 с Java 22 на Java 17. Требуется JVM с поддержкой runtime agent. Рекомендуется использование OpenJDK.
- https://github.com/openjdk/jdk/pull/15926 для справки