EnvironmentSettings class Lighting and environment

A copyable, interpolatable snapshot of a Scene's scene-wide look.

Read one with Scene.environmentSettings and apply one by assigning it back. lerp blends two snapshots: continuous fields (exposure, intensities, color-grading and post-effect parameters) interpolate; discrete fields (the image-based-lighting environment, skybox, sky lighting, sun light, tone mapping operator, and each effect's enabled flag) switch at the halfway point so the endpoints reproduce the inputs exactly. To cross-fade an effect on or off smoothly, animate its amount (e.g. bloom intensity) rather than relying on the flag.

A typical scripted transition drives t from an animation each frame:

scene.environmentSettings = EnvironmentSettings.lerp(dayLook, nightLook, t);

Constructors

EnvironmentSettings({EnvironmentMap? environment, Skybox? skybox, SkyEnvironment? skyEnvironment, SunLight? sunLight, ToneMappingMode toneMapping = ToneMappingMode.pbrNeutral, double environmentIntensity = 1.0, double exposure = 1.0, bool colorGradingEnabled = false, double brightness = 1.0, double contrast = 1.0, double saturation = 1.0, double temperature = 0.0, double tint = 0.0, Vector3? lift, Vector3? gamma, Vector3? gain, bool bloomEnabled = false, double bloomThreshold = 1.0, double bloomIntensity = 0.5, double bloomScatter = 0.7, bool vignetteEnabled = false, double vignetteIntensity = 0.5, double vignetteRadius = 0.75, double vignetteSmoothness = 0.5, bool chromaticAberrationEnabled = false, double chromaticAberrationIntensity = 0.5, bool filmGrainEnabled = false, double filmGrainIntensity = 0.3, bool ambientOcclusionEnabled = false, double ambientOcclusionRadius = 0.33, double ambientOcclusionIntensity = 1.22, double ambientOcclusionBias = 0.07})
Creates a settings snapshot. Most callers use Scene.environmentSettings or EnvironmentSettings.lerp instead of this directly.
EnvironmentSettings.fromScene(Scene scene)
Reads the current look of scene into a snapshot. The IBL/sky references are shared (not deep-copied); the scalar look is captured by value.
factory

Properties

ambientOcclusionBias double
getter/setter pair
ambientOcclusionEnabled bool
getter/setter pair
ambientOcclusionIntensity double
getter/setter pair
ambientOcclusionRadius double
getter/setter pair
bloomEnabled bool
getter/setter pair
bloomIntensity double
getter/setter pair
bloomScatter double
getter/setter pair
bloomThreshold double
getter/setter pair
brightness double
getter/setter pair
chromaticAberrationEnabled bool
getter/setter pair
chromaticAberrationIntensity double
getter/setter pair
colorGradingEnabled bool
getter/setter pair
contrast double
getter/setter pair
environment EnvironmentMap?
getter/setter pair
environmentIntensity double
getter/setter pair
exposure double
getter/setter pair
filmGrainEnabled bool
getter/setter pair
filmGrainIntensity double
getter/setter pair
gain ↔ Vector3
getter/setter pair
gamma ↔ Vector3
getter/setter pair
hashCode int
The hash code for this object.
no setterinherited
lift ↔ Vector3
getter/setter pair
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
saturation double
getter/setter pair
skybox Skybox?
getter/setter pair
skyEnvironment SkyEnvironment?
getter/setter pair
sunLight SunLight?
getter/setter pair
temperature double
getter/setter pair
tint double
getter/setter pair
toneMapping ToneMappingMode
getter/setter pair
vignetteEnabled bool
getter/setter pair
vignetteIntensity double
getter/setter pair
vignetteRadius double
getter/setter pair
vignetteSmoothness double
getter/setter pair

Methods

applyTo(Scene scene) → void
Applies this snapshot to scene, mutating its live look fields.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited

Operators

operator ==(Object other) bool
The equality operator.
inherited

Static Methods

lerp(EnvironmentSettings a, EnvironmentSettings b, double t) EnvironmentSettings
Interpolates from a to b by t (0 = a, 1 = b). See the class doc for which fields blend and which switch.