ATMOSPHERICS DOCUMENTATION

This is documentation for a preview release of Minecraft. New features, components, and capabilities in this release are not final and might change without notice before the final release.
Be sure to check the documentation once the release is out of preview if your add-on isn't working properly. Resource and Behavior Packs created for the preview are not guaranteed to work on the final release.

Index

Overview

There are many different Atmospherics controls in Minecraft. Things such as sky zenith color, moon mie stength, and sun glare shape are all atmospherics settings.
You can override all of these settings to change the sky, sun, and moon visuals.

JSON Format

All atmospheric settings overrides should specify the version that they target via the "format_version" field. The remainder of the atmospheric data is divided up into independent JSON sub-objects and individual variables for each atmospheric control.
These overrides define the data of the overarching atmospherics settings collection. To be valid, a definition must include exactly one of these type objects. See the full atmospherics settings schema below for additional details and the full list of supported atmospheric overrides. Any of these values can be individually key framed, as shown in the `sky_zenith_color` in the below example.
Here is a sample atmospheric settings file.

{
          string "format_version", // The 3-part schema version for parsing these atmosphere settings.
          object "minecraft:atmosphere_settings"
          {
          object "description"
          {
            string "identifier" // The identifier for these atmosphere settings. The identifier must include a namespace.
          },
          object "horizon_blend_stops" // How the atmosphere is divided up
          {
            float "min" : optkeyframe, // The minimum horizon height
            float "start" : optkeyframe, // The height relative to the horizon where the zenith contribution will take over
            float "mie_start" : optkeyframe, // The height relative to the horizon where mie scattering begins
            float "max" : optkeyframe // The maximum horizon height
          }
          float "rayleigh_strength" : optkeyframe, // How strong the atmosphere's rayleigh scattering term is
          float "sun_mie_strength" : optkeyframe, // How strong the sun's mie scattering term is
          float "moon_mie_strength" : optkeyframe, // How strong the moon's mie scattering term is
          float "sun_glare_shape" : optkeyframe, // How the lobe of the mie scattering is shaped
          "sky_zenith_color": { 
            "0.0": [0, 125, 164], 
            "0.25": [11, 55, 97], 
            "0.5": [7, 10, 36], 
            "0.75": [50, 88, 170] 
          },
          color "sky_horizon_color" : optkeyframe // The RGB color of the horizon region of the atmosphere; supports RGB array or HEX string
          }
        }
    


Adding Atmospherics Settings

Atmospheric Settings are read from JSON files in the "atmospherics" subfolder of resource packs. Loading enforces one atmospherics settings collection per file. The settings collection's identifier acts as its name and must be namespaced. If two resource packs define the same atmospherics settings name (including namespace), then the settings from the highest pack in the stack will be used. Adding a file with a new name to the atmospherics data location will make it available for the game to use, while existing atmospherics settings can be overridden using another settings collection with the same identifier.

Schema

Atmospheric Scattering Configuration Settings

Name Type Required? Description
format_version String Required Specifies the version of the game these Atmospheric Settings were made in. If the version is lower than the current version, any changes made to the settings in the vanilla version will be applied to it.
minecraft:atmosphere_settings Object of type AtmosphericScatteringSettings Required Atmospheric Settings definition which includes the 'sky_horizon_color,' 'sky_zenith_color,' 'sun_glare_shape,' 'moon_mie_strength,' 'sun_mie_strength,' 'rayleigh_strength,' and 'horizon_blend_stops' sections.

AtmosphericScatteringDescription

Name Type Required? Description
identifier Object of type Identifier Required The name of this Asmotspheric Scattering Description in the format 'namespace_name:description_name'.

AtmosphericScatteringSettings

Name Type Required? Description
description Object of type AtmosphericScatteringDescription Required Identifier for the Atmospheric Settings.
horizon_blend_stops Object of type HorizonBlendKeyFrames Optional How the atmosphere is divided up.
moon_mie_strength Object of type TimeKeyframes Optional How strong the moon's mie scattering term is.
rayleigh_strength Object of type TimeKeyframes Optional How strong the atmosphere's rayleigh scattering term is.
sky_horizon_color Object of type TimeKeyframes Optional The RGB color of the horizon region of the atmosphere; supports RGB array or HEX string.
sky_zenith_color Object of type TimeKeyframes Optional The RGB color of the zenith region of the atmosphere; supports RGB array or HEX string.
sun_glare_shape Object of type TimeKeyframes Optional How the lobe of the mie scattering is shaped.
sun_mie_strength Object of type TimeKeyframes Optional How strong the sun's mie scattering term is.

HorizonBlendKeyFrames

Name Type Required? Description
max Object of type TimeKeyframes Optional The maximum horizon height.
mie_start Object of type TimeKeyframes Optional The height relative to the horizon where mie scattering begins.
min Object of type TimeKeyframes Optional The minimum horizon height.
start Object of type TimeKeyframes Optional The height relative to the horizon where the zenith contribution will take over.



Website by destruc7i0n

This website is not affiliated with Mojang Studios or Microsoft