Structure Layout Optimizer avatar

Structure Layout Optimizer [1.21.5] [1.20.1] [1.19.2]

Оптимизирована генерация Jigsaw-структур. Ниже приведены детали внесённых улучшений. Сообщайте о конфликтах или проблемах при использовании мода в сборках!

  • Замена неоптимизированных вызовов VertexShape на BoxOctree для проверки пересечений только с соседними элементами.

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

  • Пропуск проверки дочерних элементов при блокировке Jigsaw Block.

Если Jigsaw Block родительского элемента заблокирован границей структуры или другим элементом, проверка совместимости с дочерними элементами пропускается. Это уменьшает количество дорогостоящих операций проверки.

  • Оптимизация процедуры сопоставления Jigsaw Block.

Сокращено количество обращений к свойствам блоков, упрощена проверка данных соединений. Улучшения заметны в структурах с большим количеством Jigsaw Blocks.

  • Ускорение загрузки крупных NBT-структур.

Ранняя проверка границ позволяет отсечь ненужные позиции до обработки StructureProcessors. Оптимизация не применяется для структур с переопределённым методом finalizeProcessing (например, Trail Ruins).

  • Оптимизация логики приоритезации Jigsaw Block (1.21.1+).

Ускорено получение данных selection_priority и изменена система сортировки. Может влиять на воспроизводимость seed в редких случаях.

  • Пропуск повторных проверок неудачных SinglePoolElements.

Исключаются повторные проверки элементов, которые ранее не прошли условия размещения. Опция deduplicateShuffledTemplatePoolElementList дополнительно ускоряет работу за счёт изменения логики формирования структур (нарушает seed-параметричность).

  • Оптимизация памяти через палитру StructureBlockInfo (1.21.4+).

Замена списка позиций на палитру сокращает потребление памяти. Полный список генерируется только при необходимости и удаляется сборщиком мусора.

Требуемые зависимости

Resourceful Config avatarResourceful ConfigThatGravyBoat

Скачать Structure Layout Optimizer

 
Тип Скачать Версия Загрузчик Обновлено Размер
ReleaseStructure Layout Optimizer v1.1.1 (1.21.4 Fabric)1.21.4Fabric27 марта 202569,1 КБ
ReleaseStructure Layout Optimizer v1.1.1 (1.21.4 Neoforge)1.21.4NeoForge27 марта 202568,2 КБ
ReleaseStructure Layout Optimizer v1.1.1 (1.21.5 Fabric)1.21.5Fabric27 марта 202569,1 КБ
ReleaseStructure Layout Optimizer v1.1.1 (1.21.5 Neoforge)1.21.5NeoForge27 марта 202568,2 КБ
ReleaseStructure Layout Optimizer v1.0.10 (forge 1.16.1)1.16.1Forge26 января 2025278,1 КБ
ReleaseStructure Layout Optimizer v1.0.10 (fabric 1.16.1)1.16.1Fabric26 января 202560,8 КБ
ReleaseStructure Layout Optimizer v1.0.10 (forge 1.16.5)1.16.5Forge26 января 2025273,6 КБ
ReleaseStructure Layout Optimizer v1.0.10 (fabric 1.16.5)1.16.5Fabric26 января 202555,8 КБ
ReleaseStructure Layout Optimizer v1.0.10 (forge 1.18.2)1.18.2Forge26 января 2025236,5 КБ
ReleaseStructure Layout Optimizer v1.0.10 (fabric 1.18.2)1.18.2Fabric26 января 202555,7 КБ
Пожалуйста авторизуйтесь, чтобы оставить свой комментарий.