pub struct GlassDynamics {
pub tilt: (f32, f32),
pub highlight_boost: f32,
pub tint_alpha_multiplier: Option<f32>,
pub surface_depth_boost: f32,
pub optical_strength: f32,
pub morph: Option<GlassMorph>,
}Expand description
Per-frame motion inputs for an interactive glass element, read lazily at scene-build time (no recomposition per frame).
Fields§
§tilt: (f32, f32)Motion tilt (finger/pointer/device motion), roughly −1..1 per axis.
highlight_boost: f32Extra specular intensity (0 = spec default; e.g. press boost).
tint_alpha_multiplier: Option<f32>Optional per-frame multiplier for the material tint alpha. This lets a resting selection wash clear continuously as its lens enters flight.
surface_depth_boost: f32Extra physical Z depth over the material profile’s base depth. Motion can deepen the same surface without switching to a separate zoom law.
optical_strength: f32Motion-state multiplier for displacement and spectral separation. Zero keeps the material’s full resolved strength; positive values explicitly scale it, allowing one persistent body to become quieter at rest without cross-fading to another component.
morph: Option<GlassMorph>Shape morph: when set, the glass geometry is these node-local rects instead of the node cover — the shapeshift channel.
Trait Implementations§
Source§impl Clone for GlassDynamics
impl Clone for GlassDynamics
Source§fn clone(&self) -> GlassDynamics
fn clone(&self) -> GlassDynamics
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more