Чанки

Материал из Minecraft Wiki
(перенаправлено с «Чанк»)
Перейти к: навигация, поиск
Визуализация одного чанка.
На снегу нанесены границы отдельных чанков

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

Генерация[править | править код]

Размеры одного чанка — 16 блоков в ширину, 16 блоков в длину и 256 блоков в глубину. Это составляет 65 536 блоков. При открытии нового куска карты генерируется и становится активным 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.

Кроме того, игрок может узнать чанк, на котором он находится, по следующей формуле:
Х чанка — этаж (координата Х /16)
Z чанка Этаж (Z координата /16)
Где этаж — наибольшее предыдущее целое число. Например. Этаж (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.1 Высота чанка теперь увеличена до 256.

Интересные факты[править | править код]

  • Полностью сгенерированный игровой мир теоретически может содержать до 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 секунды, если игрок продолжает качать головой вверх и вниз. Блок также делает блоки позади него кажутся невидимыми.

См. также[править | править код]

Примечания[править | править код]