Как осветить территорию в майнкрафт
Недавно я публиковал небольшой гайд о новых возможностях командных блоков. Как я в нём упоминал, ничего особенно нового введено не было, но зато разработка механизмов теперь выполняется намного проще и быстрей. Пообещав рассмотреть примеры, я, в общем-то, не соврал. Сегодня мы посмотрим на разобранный мной пример системы автоматического управления светом, которая понадобилась мне при создании одного из моих проектов. Знакома ли Вам система освещения в современных подъездах? Когда свет включается только при чьём-либо движении, после некоторое время остаётся включённым, а при прекращении движения через определённое количество времени отключается. Полагаю, да. Именно этот механизм мы и попытаемся создать с помощью новых возможностей Minecraft 1.9.
Для начала стоит задуматься о том, какие статистики нам потребуются для реализации предложенной задачи. Напомню, что нам придётся отслеживать (а) движение игрока и (б) то время, через которое перестанет работать освещение. Посмотрим, как можно лаконично создать соответствующие ранее обозначенные статистики:
-
(а) Создадим статистику перемещений «AutoLight» с критерием «stat.walkOneCm», которая будет изменяться тогда, когда игрок пройдёт некоторое расстояние;
Отлично! Теперь нам нужно задуматься: всегда ли мы должны ориентироваться лишь на движение игрока? Разумеется, нет. Нам необходимо также знать, находится ли игрок на той территории, где его будет обнаруживать «камера движения». Для этого, на два блока ниже нужного нам пространства установим лазуритовые блоки. Они будут для нас ориентиром. Также стоит отметить, что виртуальное освещение будет включаться путём установки в определённое место блока из красного камня (его координаты определим условно как 1 2 3).
Приступим к детальному изучению механизма. Командные блоки следует располагать: (а) в предложенном порядке, чтобы стрелка каждого предыдущего командного блока направлялась в следующий; (б) предложенного типа; (в) с предложенными вариациями модификаторов. Если соблюдать предложенные условия, подготовить место (установив на необходимой глубине лазуритовые блоки), а также создать необходимые статистики, то всё будет прекрасно работать.
Проблемы [ ]
Отчёты об ошибках, связанных с «Свет», поддерживаются в системе отслеживания ошибок Mojira. Сообщайте о найденных ошибках там (на английском языке).
Эффекты света [ ]
Блоки [ ]
Уровень 0-3 | Уровень 4-7 | Уровень 8 | Уровень 9 | Уровень 10 | Уровень 11 | Уровень 12 | Уровень 13-15 | |
---|---|---|---|---|---|---|---|---|
Снег и лёд | Появляются, не растают | Появляются и растают | Появляются | |||||
Грибы | Распространяются | Выпадают, если не на мицелие или подзоле | ||||||
Саженцы , Стебель тыквы и Стебель арбуза , бамбук | Не растёт | Растёт | ||||||
Пшеница , морковь , картофель и свёкла | Выпадают | Не растёт | Растёт | |||||
Дёрн и мицелий | Станет землёй, если непрозрачный блок или частично прозрачный блок сверху | Не распространяются | Распространяются на соседнюю землю (смотри ниже) | |||||
Земля | Не принимает распространение | Принимает распространения, если нет прозрачного или частично прозрачного блока сверху | ||||||
Подмороженный лёд | Посмотрите на ссылку |
Другое [ ]
Уровень 0-3 | Уровень 4-7 | Уровень 8 | Уровень 9 | Уровень 10 | Уровень 11 | Уровень 12 | Уровень 13-15 | |
---|---|---|---|---|---|---|---|---|
Фоновые звуки | Включено | Выключено |
Мягкое освещение [ ]
Разница между включенным сглаженным освещением и выключенным.
В Bedrock Edition, плавное освещение может быть включено или выключено в настройках видео, доступ к которым осуществляется из меню настроек. В Java Edition, он имеет три настройки: минимальный, максимальный или выключен и может быть изменён путем доступа к параметрам видео.
Как осветить территорию в майнкрафт
В каждой версии Minecraft использовались различные модели освещения. В Classic - только проверяется попадает ли на блок свет с неба. В Indev свет был более сложный, и считалось расстояние блока от ближайшего солнечного света и от ближайшего "светящего" блока. В Alpha улучшение света из Indev, рассчитывается расстоянием от блока, освещённого солнцем, и "светящего блока" отдельно и используются различные виды яркости света.
Classic [ ]
В Classic и Survival Test солнечный свет появляется от верхнего края карты и падает на любой блок, находящийся под ним проходя через любые прозрачные для света. Блоки, на которые не попал солнечный свет, получают значение яркости равное нулю.
Alpha [ ]
Уровни света на блоках, освещенных факелом (Настройка Smooth Lighting выключена)
Для света в Minecraft Alpha есть 16 значений яркости: от 0 — почти в полной темноте — до 15 — так же, как на солнце. Каждый блок, который излучает свет, имеет свое значение яркости. Например, факел имеет значение 14. После размещения факела блоки непосредственно вокруг него получают значение 13. Если на соседний блок падает больше света, он игнорируется. Процесс повторяется для каждого блока, значение света изменяется — для 13 будет расширено как 12 для соседних блоков, и так далее. Проще говоря, свет уменьшается на один уровень при удалении на один блок от своего источника.
Надо отметить, что светящиеся блоки, такие как светящийся камень или светильник Джека, дают 15 света "внутри себя" - т.е. соседний блок будет освещен светом силой 14. При этом эти блоки являются непроходимыми. В то время как факел, при силе света 14, позволяет проходить сквозь себя. Таким образом, для освещения узких коридоров в 1 блок факел одинаково эффективен, так как все блоки с силой света 15 придётся размещать в нише.
В течение дня солнечный свет имеет максимальное значение света: 15. В сумерках оно снижается на 1 каждые 10 секунд, пока не достигнет ночного значения 4 (лунный свет). Солнечный свет появляется от верхнего края карты, но не ослабевает по мере удаления от своего "источника". Блок, освещенный солнечным светом, будет одинаково ярким на любой высоте или глубине. Однако, на максимальной высоте нет света.
В Alpha, каждый "уровень освещенности" получает значение на 20% меньше, чем значение яркости выше. Таким образом, 15 полностью яркий, 14 только 80% яркости. 13, таким образом получает 64% яркости. Поэтому яркость света от солнца и огня кажется намного ярче, чем факела.
Солнечный свет в Alpha имеет свой собственный массив за кадром оптимизации, чтобы сделать гладкие рассвет и закат: количество света от неба предварительно рассчитывается и сохраняется отдельно от блоков. В сумерках, ночью, и на рассвете, "тёмное" значение вычитается из неба для создания эффекта разного времени суток.
Стекло не ослабляет дополнительно проходящий через него свет. Вода и лёд ослабляют свет, который проходит через них, ещё на 2 (всего на 3).
Свет играет ключевую роль в росте деревьев и других растений, и появлении мобов.
Нейтральным мобам для появления требуется уровень света не менее 9. Деревья будут расти, только когда свет уровня 13 или выше. Цветы и Саженцы не растут на уровне освещенности ниже 8, хотя они выживают и в лунном свете (уровень 4). Снег и лед будет таять на свете уровней 12 и выше. Солнечный свет является исключением для льда и снега, потому что имеет свой массив.
Мобы появляются при значении света 7 и ниже. В коренной породы. Например, мобы могли появляться при 14 уровне света на глубине от 16 и ниже, это означало, что факелы бесполезны, и вы должны были осветить всё огнём, светильниками Джека, светящимся камнем или солнечным светом для остановки появления мобов. На уровне 8 и ниже, ничто не могло остановить их появление. В версии Alpha 1.2.1 была возвращена старая система появления мобов.
Слева направо: огонь, светокамень, факел, светильник Джека, красный факел
В Нижнем мире есть много интересных свойств света.
Как осветить территорию в майнкрафт
Свет (англ. Light) в Minecraft влияет на видимость, спаун мобов и выращивание растений. Есть два типа света: небесный свет, который обеспечивается солнцем, и блочный свет.
Светофильтрующие блоки [ ]
Как лёд влияет на свет. Нажмите, чтобы увидеть его между льдом и водой.
История [ ]
Источники света [ ]
Сравнение различных уровней света, которые излучают блоки.
Блоки [ ]
Следующие значения являются яркостью самого блока:
Блоки света [ ]
Блоки света имеют ассоциированное значение от 0 до 15 включительно. Когда помещены как блок, они производят этот уровень света.
Другое [ ]
Изображение | Источник | Уровень света |
---|---|---|
Свет солнца | 15 | |
| Свет солнца, в течение дождя или снегопада | 12 |
Свет солнца, в течение грозы | 10 или 5 | |
Свет луны | 4 |
Как осветить территорию в майнкрафт
MineHub | Reddit Minecraft | r/Minecraft запись закреплена
Вы видели в обычном мире майна ровную поверхность? Я- нет.
Дарья, ты когда дом в майне освещаешь, ты факелы на стены ставишь, или на пол?
Aleksandr, чел. Это нужно как минус для людей, у которых есть огромная плоская местность, допустим, где находятся фермы
Содержание
Яркость [ ]
Существует 16 уровней освещенности, которые задаются целым числом от 0 (минимум) до 15 (максимум). В игре используется уровень освещенности блока для вычисления яркости данного блока. Свет полностью монохроматичен и не может быть по-настоящему цветным.
Яркость блока зависит как от уровня освещенности других блоков, так и от уровня небесного света. Обратите внимание, что «небесный свет» здесь не уменьшается ночью, вместо этого сама кривая яркости изменяется в зависимости от времени. При этом он соответствует значению освещения неба на экране отладки.
В общем, освещение из-за блоков приводит к более высокой яркости, которая уравновешивается тем фактом, что свет из-за блоков эффективно начинается с 14 (сплошные блоки источника света излучают уровень 15, но это для самого блока источника света), в то время как яркость небесного света 15. Свет из-за блоков также имеет тенденцию к оранжевому в средних диапазонах, в то время как свет неба в дневное время верхнего мира белый.
Распространение [ ]
T | 13 | 12 | 11 | 10 | 9 | 8 | 9 | 10 | 11 | 12 | 13 | T |
13 | 12 | 11 | 10 | 9 | 8 | 9 | 8 | 9 | 10 | 11 | 12 | 13 |
12 | 11 | 10 | 9 | 8 | 9 | 10 | 9 | 8 | 9 | 10 | 11 | 12 |
11 | 10 | 9 | 8 | 9 | 10 | 11 | 10 | 9 | 8 | 9 | 10 | 11 |
10 | 9 | 8 | 9 | 10 | 11 | 12 | 11 | 10 | 9 | 8 | 9 | 10 |
9 | 8 | 9 | 10 | 11 | 12 | 13 | 12 | 11 | 10 | 9 | 8 | 9 |
8 | 9 | 10 | 11 | 12 | 13 | T | 13 | 12 | 11 | 10 | 9 | 8 |
Свет от светоизлучающих блоков уменьшается на один уровень света на каждый метр (блок) от источника света. Обратите внимание, что это относится к каждой из 3 осей. Другими словами, свет уменьшается по диагонали на сумму расстояния вдоль каждой оси. Это означает, что если факел (уровень 14) установлен на полу, уровень освещенности соседних блоков пола во всех четырёх направлениях равен 13, а у диагональных блоков во всех четырёх направлениях уровень освещенности 12 (например, 14 минус 1 юг, минус 1 восток). Вдоль пола этот эффект создает ромбовидный рисунок освещения вокруг источника света. Свет также может распространяться по сложным извилистым путям, если он заблокирован непрозрачными блоками, используя своего рода алгоритм.
Помните, что уменьшение света происходит в трех измерениях. Это означает, что если факел (уровень 14) установлен на стене на расстоянии одного блока от пола, то блок на полу, который находится по диагонали на расстоянии одного блока (то есть не касается стены), имеет уровень освещенности 11 (например, 14 минус 1 юг, минус 1 восток, минус 1 вниз).
Читайте также: