Туман - это дымка, которая скрывает край мира и окрашивает всё в синий под водой. Файл тумана в пакете ресурсов задаёт его цвет и то, как близко он начинается. Потом его можно использовать в биоме или выдать игроку командой.
На этой странице вы сделаете тёплый розовый рубиновый туман для биома Рубиновая роща.
Файлы
RP/
fogs/
ruby_fog.json
biomes/
ruby_grove.client_biome.jsonФайл тумана
{
"format_version": "1.21.90",
"minecraft:fog_settings": {
"description": {
"identifier": "wiki:ruby_fog"
},
"distance": {
"air": {
"fog_start": 0.6,
"fog_end": 1.0,
"fog_color": "#e8a0a8",
"render_distance_type": "render"
},
"water": {
"fog_start": 0,
"fog_end": 40,
"fog_color": "#8a2e4a",
"render_distance_type": "fixed"
},
"weather": {
"fog_start": 0.2,
"fog_end": 0.6,
"fog_color": "#7a5a60",
"render_distance_type": "render"
}
}
}
}identifier должен содержать пространство имён. Один туман на файл.
Где действует туман
Внутри distance каждый ключ - это ситуация. Перечислять нужно только те, которые вы хотите изменить.
| Ключ | Когда используется |
|---|---|
air | Обычная игра на открытом воздухе. |
weather | Идёт дождь или снег. |
water | Голова под водой. |
lava | Голова в лаве. |
lava_resistance | В лаве с Огнестойкостью. |
powder_snow | Застряли в рыхлом снегу. |
Поля
| Поле | Что делает |
|---|---|
fog_color | Цвет тумана в виде hex-строки, например "#e8a0a8". |
fog_start | Где туман начинается. |
fog_end | Где туман становится полностью густым и сквозь него ничего не видно. |
render_distance_type | Как понимать два числа выше. Смотрите ниже. |
transition_fog | Необязательно. Туман сгущается постепенно, как когда вы только ныряете в воду. |
render_distance_type меняет смысл fog_start и fog_end:
"render": числа - это доля дальности прорисовки игрока.0.6означает 60 процентов пути до края. Хорошо подходит дляair, так он работает при любой настройке дальности прорисовки."fixed": числа в блоках.40означает 40 блоков. Хорошо подходит для подводного тумана, где вид должен быть одинаковым у всех.
Густой жуткий туман
Используйте "fixed" с маленькими числами, например fog_start 2 и fog_end 24, для болота или проклятого биома, где почти ничего не видно.
Плавный туман с transition_fog
Ванильная вода использует это, чтобы после погружения обзор прояснялся постепенно:
"transition_fog": {
"init_fog": {
"fog_start": 0,
"fog_end": 0.01,
"fog_color": "#8a2e4a",
"render_distance_type": "fixed"
},
"min_percent": 0.25,
"mid_seconds": 5,
"mid_percent": 0.6,
"max_seconds": 30
}init_fog - туман в момент входа. Потом он движется к обычным настройкам: на min_percent пути в начале, на mid_percent через mid_seconds и полностью через max_seconds.
Объёмный туман
Когда включены Vibrant Visuals, туман может быть настоящей 3D-дымкой, сквозь которую проходит свет. Добавьте блок volumetric рядом с distance:
"volumetric": {
"density": {
"air": {
"max_density": 0.08,
"max_density_height": 64,
"zero_density_height": 120
}
},
"media_coefficients": {
"air": {
"scattering": [0.05, 0.03, 0.03],
"absorption": [0.0, 0.0, 0.0]
}
},
"henyey_greenstein_g": {
"air": {
"henyey_greenstein_g": 0.6
}
}
}| Поле | Что делает |
|---|---|
max_density | Насколько густой становится дымка в самом густом месте. Ванильные биомы используют маленькие значения, около 0.05. |
max_density_height | Высота (Y), где она гуще всего. |
zero_density_height | Высота, где она сходит на нет. Сделайте её выше max_density_height, чтобы туман стелился по земле. |
scattering | Сколько красного, зелёного и синего света отражается от дымки. Больше красного даёт тёплое свечение. |
absorption | Сколько красного, зелёного и синего света дымка поглощает. |
henyey_greenstein_g | Направление света, от -1 до 1. Ближе к 1 дымка ярко светится, когда вы смотрите в сторону солнца. |
Игроки без Vibrant Visuals видят только туман из distance, поэтому всегда задавайте и его.
Как использовать свой туман
В биоме
Укажите его в клиентском биоме через minecraft:fog_appearance:
"minecraft:fog_appearance": {
"fog_identifier": "wiki:ruby_fog"
}Так же можно дать новый туман ванильному биому. Создайте файл клиентского биома с ванильным идентификатором, например minecraft:plains.
На границе двух биомов игра смешивает их туманы, поэтому переход получается плавным.
Командой
/fog накладывает туман поверх всего остального для выбранных игроков, и он остаётся даже после перезагрузки мира:
/fog @a push wiki:ruby_fog ruby_event
/fog @a pop ruby_eventПоследнее слово - имя, которое вы придумываете сами. pop снимает самый новый туман с этим именем, remove снимает все туманы с этим именем.
Как игра выбирает настройку
Туман работает слоями. Для каждой настройки игра проверяет слои сверху вниз и берёт первый, где она задана:
- Туманы, добавленные через
/fog(сначала самые новые). - Туман биомов вокруг игрока.
- Туман по умолчанию.
- Встроенные значения, если больше нигде не задано.
Поэтому файл для /fog, в котором задан только water, оставляет туман биома для air.
Туман не меняется?
Проверьте, что fog_identifier точно совпадает с identifier в вашем файле тумана, вместе с пространством имён. Затем проверьте, что файл лежит в RP/fogs/ и что пакет ресурсов включён в мире.