[page:Mesh] →

[name]

[name] creates a ready to go sky environment for your scenes.

Import

[name] is an add-on, and therefore must be imported explicitly. See [link:#manual/introduction/Installation Installation / Addons].

import { Sky } from 'three/addons/objects/Sky.js';

Code Example

const sky = new Sky();
sky.scale.setScalar( 450000 );
const phi = MathUtils.degToRad( 90 );
const theta = MathUtils.degToRad( 180 );
const sunPosition = new Vector3().setFromSphericalCoords( 1, phi, theta );
sky.material.uniforms.sunPosition.value = sunPosition;
scene.add( sky );

Examples

[example:webgl_shaders_sky misc / objects / Sky ]

Constructor

[name]()

Create a new [name] instance.

Properties

[name] instance is a [page:Mesh] with a pre-defined [page:ShaderMaterial], so every property described here should be set using [page:Uniform]s.

[property:Number turbidity]

Haziness of the [name].

[property:Number rayleigh]

For a more detailed explanation see: [link:https://en.wikipedia.org/wiki/Rayleigh_scattering Rayleigh scattering] .

[property:Number mieCoefficient]

[link:https://en.wikipedia.org/wiki/Mie_scattering Mie scattering] amount.

[property:Number mieDirectionalG]

[link:https://en.wikipedia.org/wiki/Mie_scattering Mie scattering] direction.

[property:Vector3 sunPosition]

The position of the sun.

[property:Vector3 up]

The sun's elevation from the horizon, in degrees.

Source

[link:https://github.com/mrdoob/three.js/blob/master/examples/jsm/objects/Sky.js examples/jsm/objects/Sky.js]