Parameters
Name | Type | Description |
---|---|---|
x | f32 | Input position. |
frequency | f32 | Wave frequency. |
amplitude | f32 | Wave amplitude. |
phase | f32 | Phase offset. |
dutyCycle | f32 | Duty cycle (0-1) for wave on/off ratio. |
Returns
f32wave value.
WGSL Code
fn squareWave(x: f32, frequency: f32, amplitude: f32, phase: f32, dutyCycle: f32) -> f32 {let t = x * frequency + phase;let tt = fract(t);return select(0.0, amplitude, tt < dutyCycle);}