Subtractive synthesis sculpts a complex source by filtering away unwanted frequencies
Subtractive synthesis starts with a spectrally rich source — white noise, sawtooth, Blip, PinkNoise — and removes frequency regions with filters (LPF, HPF, BPF, Resonz) to arrive at a shaped timbre. The filter’s cutoff frequency and resonance (Q) are the main timbral controls; sweeping the cutoff over time creates the classic filter-sweep sound. This approach is computationally cheap because you need only one oscillator and one filter. Common source-filter pairings: sawtooth + LPF for analogue leads/bass, noise + BPF for metallic resonances, Blip + HPF for crisp stabs. In SuperCollider, LPF.ar(source, cutoff) is the canonical entry point.
Examples
{LPF.ar(WhiteNoise.ar(0.1), 1000)}.scope
// dynamic sweep:
{LPF.ar(WhiteNoise.ar(0.1), Line.kr(10000,1000,10))}.scope
Assessment
Build a subtractive patch: use a Saw oscillator, apply a resonant low-pass filter, and automate the cutoff with an LFO. Identify what changes when you raise Q near self-oscillation.