Мод для ускорения генерации джигсо-структур без изменения их внешнего вида.
Скачать
Версия игры
1.21.10
1.21.11
1.21.5
1.21.6
1.21.7
1.21.8
1.21.9
26.1
26.1.1
26.1.2
26.2
26.3
Категория
Последние файлы
structure_layout_optimizer-1.1.4+26.3-neoforge.jar
26.3 | neoforge
16.09.2026
Ссылка на сайт
modrinth.com
Скачиваний:
0
Обновлено:
22.09.2026
ID:
Мод Structure Layout Optimizer для Minecraft 1.21.11
Structure Layout Optimizer — это мод, направленный исключительно на ускорение и оптимизацию процесса генерации джигсо-структур (Jigsaw structures) и NBT-фрагментов. Автор подчёркивает, что внешний вид генерируемых построек не меняется: мод работает «под капотом», устраняя узкие места в алгоритмах проверки пересечений и обработки данных. Основная цель — обеспечить плавную генерацию даже в мирах с огромным количеством блоков и сложных рекурсивных структур.
Основная цель оптимизации
Structure Layout Optimizer — это утилита, направленная исключительно на повышение скорости и эффективности генерации структур типа Jigsaw и обработки NBT-фрагментов. Ключевая особенность мода заключается в том, что он не меняет визуальный результат генерации: постройки выглядят точно так же, как в ванильной версии Minecraft. Вся работа происходит «под капотом», устраняя узкие места в алгоритмах проверки пересечений и обработки данных, что особенно важно для миров с огромным количеством блоков и сложных рекурсивных структур.
Оптимизация проверки пересечений через BoxOctree
В стандартной реализации Minecraft для определения границ блоков используется объект VoxelShape. При попытке разместить новый блок система проверяет его пересечение со всеми уже существующими блоками. Проблема заключается в том, что проверка пересечения двух VoxelShape требует сравнения всех вершин, что становится крайне медленным при наличии большого количества элементов. Это часто вызывает сильные скачки задержки (lag spikes) при генерации сложных структур.
Structure Layout Optimizer решает эту проблему, заменяя стандартный VoxelShape на псевдо-объект, содержащий внутри реализацию BoxOctree. Это структура данных, которая позволяет системе проверять пересечения только с соседними блоками, игнорируя те, которые находятся слишком далеко. Благодаря этому время проверки перестает расти экспоненциально, а генерация становится значительно быстрее.
Умное пропускание неактивных блоков
В обычном режиме каждый блок-джигсо в родительском элементе проверяет каждый блок-джигсо в дочернем элементе, пытаясь найти место для соединения. Однако, если блок-джигсо в родительском элементе смотрит на границу мира или на другой отдельный кусок структуры, он физически не может принять в себя ни один блок из дочернего элемента. Мод определяет такие ситуации и пропускает дорогостоящие проверки соответствия блоков, сразу переходя к следующему кандидату. Это особенно заметно в структурах с огромным количеством блоков-джигсо.
Ускорение обработки NBT и памяти
При генерации чанка из большого NBT-файла структура загружается полностью в память, после чего система многократно перебирает все позиции, чтобы применить к ним обработчики (StructureProcessors), а затем игнорирует позиции, выходящие за пределы текущего чанка. Это крайне неэффективно.
Мод вводит раннюю проверку границ, чтобы удалить из памяти все ненужные позиции до передачи их в обработчики. Единственное исключение составляют структуры, использующие Capped StructureProcessor (например, Ruins of the End), так как им требуется полный список позиций. Также для версий 1.21.4+ мод заменяет список объектов StructureBlockInfo на палитру данных, что значительно снижает потребление памяти при кэшировании шаблонов структур.
Оптимизация выбора и приоритизации блоков
В стандартной реализации логика выбора блоков из пула (SinglePoolElement) дублируется: данные о приоритете извлекаются дважды, чтобы сначала проверить тип данных, а затем вернуть значение. Мод исправляет это, извлекая данные один раз. Кроме того, мод оптимизирует логику перемешивания и приоритизации списка элементов, что дает прирост производительности для структур с очень большим количеством блоков-джигсо, таких как Палаты испытаний (Trial Chambers).
Также реализована логика пропуска элементов, которые уже проверялись и не подошли для текущей позиции. В стандартном пуле элементы с высоким весом дублируются много раз, и при генерации система заново проверяет одни и те же неподходящие варианты. Мод запоминает неудачные попытки и пропускает их в следующий раз.
Влияние на стабильность семян (Seed Parity)
Важно понимать, как эти оптимизации влияют на стабильность генерации. По умолчанию, если вы используете один и тот же семя (например, 777), генерация будет идентичной при каждом запуске. Однако, если включить опцию deduplicateShuffledTemplatePoolElementList, которая отключает повторную проверку дубликатов элементов с высоким весом, внешний вид структуры может измениться (например, в деревне останется только одна кузница вместо двух).
Несмотря на это, расположение деревни на карте останется прежним. Генерация остается детерминированной (стабильной по локации), но конкретный набор блоков внутри может отличаться от ванильного. Это делается специально для получения дополнительного прироста производительности.
Совместимость с другими модами
Мод отлично сочетается с ModernFix, который использует мягкие ссылки (SoftReference) для выгрузки кэша структур из памяти. Оптимизация Structure Layout Optimizer уменьшает объем памяти, занимаемый каждым шаблоном, что позволяет ModernFix держать больше структур в кэше, не выгружая их полностью. Это теоретически увеличивает количество попаданий в кэш (cache hits) в долгосрочной игре.
Также стоит отметить, что для версий 26.2 и ниже мод заменяет логику сопоставления целей и направлений блоков-джигсо на более эффективную версию, сокращая количество вызовов получения свойств блоков вдвое.
Ограничения и обратная связь
Автор проекта отмечает, что для структур, использующих Capped StructureProcessor (например, Trail Ruins), оптимизация ранней проверки границ отключается, так как им требуется полный список позиций для корректной работы. Также упоминается, что в некоторых случаях мод может нарушить паритет семян в отношении порядка обработки блоков, хотя прямых доказательств этого на данный момент не найдено. Рекомендуется сообщать о любых конфликтах или проблемах, возникающих при запуске мода в модапакетах.
Связанные материалы
- Chunky — похожий мод
- Iris Shaders — похожий мод
Войдите, чтобы поставить оценку и оставить отзыв.
| Канал | Файл | Игра | Модлоадер | Язык | Скачиваний | Загружен | |
|---|---|---|---|---|---|---|---|
| Релиз | structure_layout_optimizer-1.1.4+26.3-fabric.jar 68.1 KB | 26.3 |
|
|
0 | 16.09.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+26.3-neoforge.jar 67.5 KB | 26.3 |
|
|
0 | 16.09.2026 | |
| Релиз | structure_layout_optimizer-1.1.5+1.21.9-neoforge.jar 68.2 KB | 1.21.10, 1.21.9 |
|
|
0 | 18.06.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+26.1-fabric.jar 69.8 KB | 26.2, 26.1.2, 26.1.1, 26.1 |
|
|
0 | 25.03.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+26.1-neoforge.jar 68.3 KB | 26.2, 26.1.2, 26.1.1, 26.1 |
|
|
0 | 25.03.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.11-fabric.jar 68.8 KB | 1.21.11 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.11-neoforge.jar 68.2 KB | 1.21.11 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.5-fabric.jar 69 KB | 1.21.5 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.5-neoforge.jar 68.1 KB | 1.21.5 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.6-fabric.jar 69 KB | 1.21.8, 1.21.7, 1.21.6 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.6-neoforge.jar 68.1 KB | 1.21.8, 1.21.7, 1.21.6 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.4+1.21.9-fabric.jar 69 KB | 1.21.10, 1.21.9 |
|
|
0 | 10.01.2026 | |
| Релиз | structure_layout_optimizer-1.1.3+1.21.9-fabric.jar 69 KB | 1.21.10, 1.21.9 |
|
|
0 | 23.10.2025 | |
| Релиз | structure_layout_optimizer-1.1.1+1.21.6-fabric.jar 69 KB | 1.21.9, 1.21.8, 1.21.7, 1.21.6 |
|
|
0 | 18.06.2025 | |
| Релиз | structure_layout_optimizer-fabric-1.1.1.jar 69.1 KB | 1.21.5 |
|
|
0 | 27.03.2025 |
Скачать
Версия игры
1.21.10
1.21.11
1.21.5
1.21.6
1.21.7
1.21.8
1.21.9
26.1
26.1.1
26.1.2
26.2
26.3
Категория
Последние файлы
structure_layout_optimizer-1.1.4+26.3-neoforge.jar
26.3 | neoforge
16.09.2026
Ссылка на сайт
modrinth.com
Скачиваний:
0
Обновлено:
22.09.2026
ID: