Чанки

Визуализация одного чанка.

На снегу нанесены границы отдельных чанков

Чанки (от англ. Chunk — ячейка, кусок, осколок) — метод, который использует игра для разделения бесконечных карт на части.

Генерация

Размеры одного чанка — 16 блоков в ширину, 16 блоков в длину и 384 блока в высоту, что составляет 98 304 блока. При прогрузке новой области карты, генерируется и становится активным 441 чанк вокруг игрока, или больше, если была установлена дальность прорисовки свыше 10 чанков. Чанки генерируются с помощью зерна карты, а это означает, что они будут всегда одинаковыми если вы будете использовать одно и то же зерно снова.

Прогрузка чанков

Количество активных чанков вокруг игрока в одиночной игре определяется дальностью прорисовки: от 25 на минимальной (2 чанка) до 4225 на максимальной (32 чанка). В многопользовательском режиме чанки по умолчанию загружаются в радиусе 10 от игрока (21*21 чанк). Радиус может быть сконфигурирован от 2 до 16, в зависимости от мощности оборудования и скорости подключения. На этих чанках могут появляться мобы, деревья, вода, предметы и прочее, когда активность на всех других чанках на карте остановлена и они являются полностью статичными. Если игрок переместится на область уже сгенерированных чанков, то эти чанки восстановятся и наполнятся динамическими объектами. С 20 декабря 2010 года сервер сохраняет чанки реже, чем раньше. Чанки не пересохраняются, если они уже были сохранены 30 секунд назад.

В некоторых версиях игры существует ошибка, в связи с которой один или несколько чанков на сервере не загружается, и игрок видит перед собой огромную пропасть до дна, но не может в неё упасть. Для ликвидации этой ошибки нужно переподключиться к серверу, изменить дальность прорисовки (F3+F), перезагрузить чанки без изменения дистанции прорисовки (F3+A), или установить факел неподалеку от этой дыры.

Спаун чанков

Чанки в области, непосредственно окружающей точку появления мира, являются особыми чанками, которые никогда не выгружаются из памяти, пока хотя бы один игрок находится в обычном мире. Это означает, что такие вещи, как механизмы из красного камня и мобофермы продолжают работать, даже когда все игроки находятся далеко.

Влияние на производительность

Чанки обычно загружаются в энергозависимую память только тогда, когда они необходимы для отображения. Это управление памятью «до тех пор, пока оно не понадобится» обычно используется в играх с процедурно-генерируемым ландшафтом, чтобы компьютерам игроков не приходилось одновременно отслеживать и обновлять сотни растений и мобов.

Механизм рендеринга Minecraft использует функцию отображения списка OpenGL, чтобы разделить мировой блок на шестнадцать больших списков отображения 16×16×16 блоков, чтобы значительно ускорить рендеринг. Их необходимо перестраивать каждый раз, когда блок внутри них изменяется, и их можно визуализировать несколько раз, например, для достижений, прозрачности.[1]

Чанки со слизнями

Слизни могут спауниться только на чанках, определяемых расчетами его координат, а также на чанках болота и в плоском мире. Существуют специальные программы и модификации, которые позволяют указать, где они могут спауниться.

Нахождение краев чанков

Chunkf32.png

Сочетание клавиш F3+G может использоваться для отображения границ чанка.

Кроме того, нажатие кнопки «F3» открывает экран «Отладка», который показывает координаты X, Y и Z игрока в дополнение к переменной «c». Эти координаты меняются по мере перемещения игрока. Игрок может узнать блок, в котором он находится, по переменной «c», которая находится рядом с переменными «x» и «z». Число в скобках указывает, как далеко игрок находится от северо-западного угла чанка, поэтому, если «с» рядом с Х было 3 (5), а «с» рядом с Z было 2 (4), то игрок находится на чанке (3, 2) и в блоке (5, 4) с северо-западного угла.

Координаты X и Z, которые делятся на 16, представляют границы между кусками. EG.: (96, −32) — это угол, где встречаются четыре чанка. Один из этих фрагментов находится между координатами X от 80 до 96 и координатами Z от −48 до −32. Другой находится между координатами X 96-112 и координатами Z-32-16, и так далее. Когда X или Z пересекают кратное 16, игрок перемещается через куски.

По сути, игрок находится в верхнем левом углу (северо-запад) чанка, когда обе координаты x и z делятся на 16.

Кроме того, игрок может узнать чанк, в котором он находится, по следующей формуле:
Х чанка — Floor(Х / 16),
Z чанка — Floor(Z / 16),
Где Floor[N] — целая часть числа N. Например, Floor[27.9561] = 27.
Другими словами, если X было 27, Z было 15, то координаты чанка — это (Floor(27/16), Floor(-15/16)), что означает, что игрок находится в чанке (1, −1)
Также игрок может узнать, как далеко он находится от северо-западного угла по формуле:
(координата X или Z) И 15

В Bedrock Edition, при переключении причудливой графики, мир рендерится снова, загружая только часть, в которой находится игрок, в течение доли секунды, кратко показывая границы фрагментов.

История

Это заготовка раздела статьи.
Вы можете помочь проекту, дополнив и оформив его.
Pre-classic-версия Java Edition
Cave game tech testПредшественники чанков демонстрируются.
Infdev-версия Java Edition
20100227Высота карты больше не настраивается. Высота чанка изменена на 128..
Официальный выпуск Java Edition
1.2.112w07aВысота чанка была увеличена до 256 в рамках перехода от региона к формату.
1.1016w20aF3+G теперь переключает видимые границы чанков вокруг игрока.
1.14?Изменился способ загрузки чанка..

Интересные факты

  • Полностью сгенерированный игровой мир теоретически может содержать до 14 062 500 000 000 (14 триллионов) действительных чанков. На практике это означает, что игровой мир Minecraft не может быть полностью исследован за время человеческой жизни. Вес такого мира составил бы свыше 70 петабайт.
  • На данный момент существует около 10244,700 всех возможных вариаций чанков, не считая сущности. Это значение можно рассчитать, возведя количество видов блоков в Minecraft в степень 65536. По мере добавления новых блоков в игру это число растёт. Однако, некоторые блоки требуют непосредственной взаимной связи, например, кактус может расти только на песке, и к нему не должны примыкать другие блоки.
  • Возможно создание четырнадцати триллионов (14 062 500 000 000) реальных чанков. Есть 7,46×10244,700 возможных чанков, исключая сущности.
  • Размещение или уничтожение блока в незагруженном чанке обычно перезагружает его.
  • В Bedrock Edition, если в одной из шестнадцати секций фрагмента 16×16×16 нет блоков, размещение там блока показывает ту же анимацию, что и загрузка фрагмента. Эта ошибка приводит к тому, что блок, который поместил игрок, поворачивается к тому же цвету неба в направлении, на которое игрок смотрит в течение примерно 1 секунды, и начинает исчезать в обычной текстуре блока. Если время восхода или захода солнца, и игрок размещает там блок, он фактически постоянно меняет цвет в течение 1 секунды, если игрок продолжает качать головой вверх и вниз. Блок также делает так, что блоки позади него кажутся невидимыми.

См. также

Примечания

В данной статье используются материалы из статьи «Чанки» с вики-сайта Minecraft Wiki, расположенного на Фэндоме, и они распространяются согласно лицензии Creative Commons Attribution-NonCommercial-ShareAlike 3.0. Авторы статьи.