Мод оптимизирует процесс генерации структур с использованием Jigsaw-механики и NBT-частей, не изменяя их внешний вид, а лишь ускоряя и повышая эффективность сборки.
Оптимизации и особенности
- Использование BoxOctree вместо стандартных проверок VertexShape
Вместо сравнения всех вершин при проверке пересечений, применяется структура данных BoxOctree, которая проверяет только ближайшие элементы, что значительно ускоряет процесс и уменьшает лаги при генерации больших структур. - Пропуск проверки дочерних элементов, если Jigsaw-блок полностью заблокирован
Если Jigsaw-блок родительской части упирается в границу структуры или соседний элемент, проверка его дочерних элементов пропускается, что снижает нагрузку при большом количестве Jigsaw-блоков. - Оптимизация сопоставления Jigsaw-блоков (для версии 1.26.2 и ниже)
Сокращено количество обращений за свойствами блоков и упрощена логика сравнения, что ускоряет работу с большим числом Jigsaw-блоков. - Ускоренная загрузка больших NBT-структур без StructureProcessor с finalizeProcessing
Ранее весь NBT-файл загружался целиком и проверялся многократно. Теперь происходит ранняя фильтрация позиций вне текущего чанка, что снижает время загрузки больших структур. - Оптимизация выбора и сортировки Jigsaw-блоков в SinglePoolElement (с версии 1.21.1)
Улучшено считывание приоритетов выбора из NBT и применена более быстрая сортировка, что ускоряет обработку структур с большим количеством блоков. - Пропуск повторных проверок SinglePoolElements в одном месте генерации
Если элемент уже проверялся и не подошёл, повторная проверка пропускается, что улучшает производительность при использовании элементов с высоким весом. - Конфигурационная опция
deduplicateShuffledTemplatePoolElementList
Позволяет убрать дубликаты элементов в списках для ещё большей производительности, но при этом меняется порядок генерации, что приводит к отличиям в расположении элементов при одинаковом сидe. - Оптимизация использования памяти для StructureTemplate (с версии 1.21.4 и v1.1.0+)
Список объектов StructureBlockInfo заменён на палитру, что значительно снижает потребление памяти при хранении структуры в кэше. При генерации список восстанавливается временно и затем освобождает память.
Установка и использование
- Установите мод в папку с модификациями Minecraft соответствующей версии.
- При необходимости настройте конфигурацию, в частности опцию
deduplicateShuffledTemplatePoolElementList, учитывая, что она может влиять на расположение структур. - Запускайте игру и проверяйте стабильность работы модификации в своих сборках.





