pub struct WaveFormationState {
pub phase_time: f32,
pub idle_time: f32,
pub fibonacci_blend: f32,
pub amplitude: f32,
pub frequency: f32,
pub wavelength: f32,
pub heading: [f32; 2],
pub offsets: Vec<[f32; 3]>,
}Expand description
Per-particle wave formation state. Pre-allocated, updated every frame. Drives the visual shape of the particle using real wave equation math.
Fields§
§phase_time: f32Cumulative phase time (seconds). Drives ω·t in the wave equation.
idle_time: f32Time spent in current idle (seconds). Drives idle→Fibonacci decoherence.
fibonacci_blend: f32Blend from wave(0.0) to Fibonacci(1.0). Uses exp(-Γ·t_idle).
amplitude: f32Wave amplitude A. Scales with velocity for weighty feel.
frequency: f32Wave frequency f (Hz). Higher = faster ripple.
wavelength: f32Wavelength λ. Controls spatial density of ripples.
heading: [f32; 2]Heading direction [x, z] normalized. Wave propagates along this axis.
offsets: Vec<[f32; 3]>Pre-computed particle offsets for current frame. Reused by GPU upload.
Implementations§
Trait Implementations§
Source§impl Clone for WaveFormationState
impl Clone for WaveFormationState
Source§fn clone(&self) -> WaveFormationState
fn clone(&self) -> WaveFormationState
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for WaveFormationState
impl RefUnwindSafe for WaveFormationState
impl Send for WaveFormationState
impl Sync for WaveFormationState
impl Unpin for WaveFormationState
impl UnsafeUnpin for WaveFormationState
impl UnwindSafe for WaveFormationState
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more