Chapter 02: Synthesis Engine & Layer Morphing
Dual Layer (A/B) architecture, 12 synthesis architectures (Mesh 2D plate, Poly-BLEP VA, FM bass/leads, Plaits chords/speech, Braids, Harmonics, Granular), and hosted CLAP/Omni synths.
2.1 Dual Layer Architecture (Layers A & B) and Morphing
The core of TOMiC's sound engine is built around the Dual Layer Architecture. Each of the 16 instrument channels contains two complete, independent synthesizer instances: Layer A and Layer B (defined as ChannelParams::a and ChannelParams::b — both full instances of VoiceParams).

Morph Control Panel
Figure 2.1: Real-time Morphing control panel blending between Layer A and Layer B.
How Layer Morphing Works
The global Morph control continuously interpolates and blends multi-parameter DSP states between layers:
LfoTarget::Morph) — modulated by LFOs, ModEnvelopes, step sequencer (per-step Mutation), or DAW automation.2.2 Synthesis Types (SynthesisType)
Each oscillator (OSC1 and OSC2) within each layer (A/B) can operate in one of 12 synthesis architectures (SynthesisType):
| Synthesis Type | GUI Label | Description |
|---|---|---|
| Wave | Wave | Classic Virtual Analog waveforms: Sine, Triangle, Square, Sawtooth, Noise. Poly_blep anti-aliasing engine prevents aliasing artifacts. |
| Mesh2D | Mesh | 2D Finite-Difference Time-Domain (FDTD) plate physical modeling engine. Real-time biharmonic numerical solver running 8-wide SIMD. Simulates acoustic wave propagation, reflection, and modal resonance of struck physical plates (detailed in 2.10). |
| Fm | FM | Frequency Modulation synthesis: a modulator oscillator deviates the carrier's frequency, with FM Ratio (0.1–10.0) and FM Amount (0–100) controls, plus a dedicated FM-index envelope (FM Attack, FM Decay, FM Sustain). |
| Ring | Ring | Ring Modulation: multiplies oscillator signals to produce metallic, inharmonic timbres. |
| Cluster | Cluster | ClusterOscillator — a bank of 2-6 detuned partials (detailed in 2.7). |
| Braids | Wave (Braids algorithm selected in the unified Wave dropdown) | Macro-oscillator ported from Mutable Instruments Braids Eurorack module (detailed in 2.4). |
| Granular | (legacy — no longer offered in the Type picker for new patches) | CloudsProcessor granular engine used as the oscillator's exclusive output. Superseded by the universal Granulate checkbox, which layers the grain cloud on top of any architecture instead of replacing it; still loads correctly from older presets. |
| Harmonics | Harmonics | Additive HarmonicOsc (detailed in 2.8). |
| BraidsRing | Ring+Braids | Ring-modulated Braids carrier — combines a Braids algorithm with Ring Modulation. |
| Plaits | Plaits | Mutable Instruments Plaits macro-oscillator clone (detailed in 2.5). |
| BraidsFm | FM+Braids | FM synthesis using a Braids algorithm as the carrier (frequency-input only — always behaves as Linear FM regardless of the FM Engine setting for algorithms without a phase concept). |
| PlaitsFm | FM+Plaits | FM synthesis using a Plaits engine as the carrier. |
The GUI splits carrier selection across two dropdowns: Type picks the architecture (Wave/Mesh/FM/Ring/Cluster/Harmonics/Ring+Braids/Plaits/FM+Braids/FM+Plaits), while the unified Wave dropdown picks the actual sound source — a standard waveform, one of the 33 Braids algorithms, or one of the 9 Plaits engines — depending on which architecture is active. Picking a Braids or Plaits entry from Wave automatically swaps the Type to the matching Braids/Plaits carrier while preserving whichever FM/Ring architecture was already selected (e.g. picking a Braids wave while in FM stays FM+Braids rather than resetting to plain Braids).
An FM Engine switch (FmEngine: Linear / Phase) changes how the modulator affects the carrier for all FM-family architectures: Linear adds the modulator directly to the carrier's frequency each sample (TOMiC's original behavior); Phase adds it to the carrier's phase for textbook Chowning/DX7-style FM sidebands. Braids/Plaits FM carriers only honor Phase mode for the subset of algorithms/engines that have a genuine phase concept (most of them — see 2.4/2.5); the rest silently fall back to Linear.

Synthesizer Oscillator Section
Figure 2.2: Oscillator and sound synthesis section interface.
2.3 Oscillator Waveforms (Wave Mode)
In Wave mode, the following waveforms are available (Waveform enum):
| Waveform | Description |
|---|---|
| Sine | Pure sine wave — ideal for deep sub-bass and kick drums. |
| Triangle | Warm timbre with odd harmonics. |
| Square | Square wave — rich in odd harmonics, punchy and resonant. |
| Sawtooth | Saw wave — complete harmonic spectrum, great for aggressive synth percussion. |
| Noise | Internal noise generator embedded as oscillator waveform. |
2.4 Braids Macro Oscillator
TOMiC includes an integrated macro oscillator engine derived from the eurorack module Mutable Instruments Braids. Available algorithms (BraidsWave, 33 total, listed in code/discriminant order):
| Algorithm | Description |
|---|---|
| CSaw | Sawtooth wave with phase and envelope shaping |
| Morph | Waveform shape morphing: triangle -> saw -> square -> sine |
| SawSq | Saw and square blending, variable pulse width |
| SinFold | Wavefolded sine wave |
| Buzz | Harmonic pulse buzz synthesis |
| 3×Saw | Triple detuned saw oscillators |
| Harmo | Additive harmonic synthesis |
| FM / FeedFM / ChaosFM | Three variants of FM synthesis: classic 2-operator FM, self-feedback FM, and chaotic-modulator FM |
| WTable / WLine / WMap | Wavetables with scanning modes: 32-frame scan, curated step sequence, and 2D grid |
| Swarm | 7-voice detuned oscillator swarm with adjustable HP filter resonance |
| 3×Ring | Triple ring modulation |
| Toy | Lo-fi circuit-bent chiptune simulator (sample-rate decimation, glitch/repeat) |
| FltNoise / TwinPk | Colour-filtered noise and dual resonant formant peaks |
| Particle / Grain | Particle (impulse/burst) and granular algorithms |
| Vosim / Vowel / VowelFof | Formant vocal and speech synthesis (pulse-density VOSIM, vowel formants, FOF vocal synthesis) |
| ResLP / ResBP | Resonant LP/BP filter oscillators, noise-excited pluck blend |
| Lorenz / Rossler | Chaotic attractors as sound sources |
| Pluck / Blown | Physical modelling of plucked strings and blown pipes |
| FltPk / FltHp | Resonant filtered shapes (peak/high-pass) driven from a pulse/saw source |
| AnalogBd / AnalogHh | Analog kick drum and hi-hat circuit modelling (Plaits-style) |
Each algorithm exposes 3 modulatable macro controls — Timbre, Color, Aux — but their meaning is remapped per algorithm (e.g. for AnalogBd, Timbre is tone/click amount, Color is decay length, Aux is pitch-drop depth; for Vowel, Timbre/Color/Aux sweep vowel position, formant shift and nasality). Hover any knob in the editor for a per-algorithm tooltip. Aux is always centred at 0.5 (the neutral/classic sound) rather than at 0.
Braids can be combined with other architectures from the Type dropdown: plain Braids (via Wave), Ring+Braids (ring-modulated), and FM+Braids (Braids as an FM carrier, frequency-input only).
2.5 Plaits Macro Oscillator
Alongside Braids, TOMiC ships a second, independently-ported macro-oscillator family: a clone of Mutable Instruments Plaits (dsp/plaits_osc), built fresh from Plaits' own DSP rather than reusing Braids code, so it contributes genuinely different sound categories. The first pass ships 9 engines (PlaitsModel):
| Engine | GUI Label | Description |
|---|---|---|
| VirtualAnalog | VAnalog | Two-oscillator virtual analog with detune and hard sync |
| Waveshaper | Wshape | Wavefolder-driven waveshaping oscillator |
| Chord | Chord | Chord generator (triads, sus, sevenths...) with per-voice unison |
| Wavetable | WTable | 4-frame wavetable with buzz/brightness control and crossfade glide |
| Speech | Speech | Vowel/formant speech synthesis, continuous A-E-I-O-U with breathiness |
| ModalResonator | Modal | Noise-excited modal resonator bank (no phase concept — always behaves as Linear FM regardless of FM Engine) |
| AnalogBassDrum | AnalogBD | Analog kick drum circuit model with click/attack sharpness control |
| AnalogSnareDrum | AnalogSD | Analog snare drum circuit model, tone/noise balance |
| AnalogHiHat | AnalogHH | Analog hi-hat circuit model, metallic partial count |
Plaits reuses the same three macro knobs as Braids, remapped as Harmonics (onto the timbre param), Timbre (onto color), and Morphology (onto aux) — the labels differ per engine (e.g. for AnalogBassDrum: Harmonics = attack sharpness, Timbre = pitch drop depth, Morphology = decay time).
Plaits can be combined with FM (FM+Plaits, Plaits as the FM carrier) but not with Ring or the Granular carrier slot. It is not available while Granular, Ring+Braids or FM+Braids are active, since those are Braids-carrier-only modes.
2.6 Granular Processor (CloudsProcessor)
TOMiC utilizes a port of the Mutable Instruments Clouds engine with 5 granular processor instances:
| Instance | Signal Source | Function |
|---|---|---|
granular / granular2 | Live recorded oscillator signal (OSC1/OSC2) | Live synth signal granulation — records into a rolling 1.5 second buffer (RECORD_SECONDS), so grains top out at ~375ms |
noise_granular / noise_granular2 | Loaded sample buffer (NOISE1/NOISE2) | Sample granulation — reads the sample's start/end window directly (process_static), no live recording |
clouds_fx | Full stereo post-filter FX signal | Granular texture effect in the master FX chain |
The oscillator granular layer is enabled per-oscillator via the universal Granulate checkbox (gran_layer_enabled), which layers the grain cloud on top of whatever synthesis architecture is active rather than replacing it — this is what superseded the old dedicated Granular SynthesisType.
Active Granular Controls
Older Grain Scatter, the pre-Clouds Grain Density/Grain Window pair, and Grain Reverse are legacy parameters kept only so older DAW sessions still recall correctly — they are no longer read by the audio engine.
2.7 Cluster Oscillator
The Cluster architecture (ClusterOscillator) generates a bank of 2–6 detuned partials (Cluster Cnt, default 6) for dense chords and bell-like harmonic structures:
ClusterRatioSet): the frequency-ratio table used for the partials — Classic808 (default), Cymbal, or GamelanClusterWave): per-partial waveform — Sine (default) or Square2.8 Harmonics Oscillator
The Harmonics architecture (HarmonicOsc) is a Tremor-inspired additive oscillator with two operating modes (HarmonicsMode: Membrane default, or Harmonic) and a selectable per-partial waveform (HarmonicsWave: Sine, Triangle, Square, or Sawtooth):
2.9 Per-Voice Signal Topology
Beyond the oscillator/noise carriers, each Layer (VoiceParams) exposes a small set of controls that shape how its signal is routed and combined:
SaturationTopology): where the voice's drive/saturation stage sits relative to its filter — PreFilter (default, drive before the filter), PostFilter (drive after), DualStage (half the drive amount applied on each side), or Parallel.SynthesisType.HatMode): a decay-time multiplier tailored for hi-hat-style channels — Normal (1x, unchanged), Closed (0.08x, very short/choked), Open (5x, long ring-out), Pedal (0.02x, near-instant).LayerMixMode): how OSC1+OSC2, Noise1+Noise2, and the final oscillator+noise sum are combined — Crossfade (default linear blend), EqualPower (constant-power law, no loudness dip), RingMod, Add, or MinMax.2.10 Mesh 2D FDTD Plate Physical Modeling Oscillator
TOMiC features a real-time 2D Finite-Difference Time-Domain (FDTD) biharmonic acoustic plate solver on both OSC 1 and OSC 2 across Layer A and Layer B. Unlike static sample libraries or modal resonators summing fixed sine banks, Mesh 2D physically simulates the transverse wave propagation, mechanical stiffness dispersion, boundary reflections, and natural structural damping of a physical struck plate in real time.
Mathematical Solver & Real-Time Stability
f32x8 via the wide crate) through a pre-allocated scratch buffer.$$2S + 16K + 4D_1 \le 1$$
where $S$ is the wave propagation/tension coefficient, $K$ is the biharmonic stiffness/dispersion factor, and $D_1$ is damping. This mathematical constraint guarantees zero risk of numerical explosions or DC runaway across all parameter ranges, requiring zero dynamic memory allocation on the real-time audio thread.
5 Boundary Geometry Masks
The boundary of the active plate grid can be shaped into 5 physical geometry masks, each exhibiting distinct acoustic eigenmodes:
1. Circle: Classic cymbal, gong, or bell geometry with concentric Bessel vibration nodes.
2. Square: Orthogonal reflection geometry producing chime-bar and metallic plate tones.
3. Ellipse: Asymmetric boundary introducing subtle modal splitting, acoustic beating, and shimmering flutter decay.
4. Hexagon: Complex multi-axial reflections suited for raw industrial hits and metallic snares.
5. Chladni: Complex modal interference pattern reproducing the classical Chladni sand-on-plate nodal lines.
Dynamic Re-Strike Interference (Zero Machine-Gun Repetition)
In standard sample-based or static wavetable synthesizers, rapid successive hits either abruptly restart the sound or trigger independent parallel voices that sound identically repetitious. In Mesh 2D, the physical displacement and velocity state of the plate grid persists across voice triggers. Subsequent strikes land on a plate that is already vibrating. Wavefronts physically collide, cancel, and reinforce in real time. Rapid 16th-note rolls naturally build acoustic turbulence and organic sonic evolution, eradicating the artificial "machine-gun" effect completely without needing multi-gigabyte round-robin sample folders.
Physical Choke & Dampening
Hi-Hat choke and voice choke groups in Mesh 2D do not simply clamp an amplitude envelope. Instead, choke dynamically injects heavy numerical damping directly into active grid cells — exactly like a percussionist dampening a ringing cymbal or gong with a hand. Subsequent strikes automatically lift the damping.
Real-Time 16×16 Modal Vibration Heatmap
A normalized 16×16 modal visualizer rendered above the preset bar displays active surface deformations and nodal lines while the plate vibrates. The visualizer is published only when the plate is active, maintaining idle overhead at less than ~7ns per audio block.
Mesh 2D Parameters & Modulation
LfoTarget destinations (MeshTune, MeshDecay, MeshMallet, MeshMaterial, MeshDamp, MeshNonlinear, MeshPickupSpread, MeshGeometry, etc.).2.11 Hosted Instrument Plugins (Standalone Only)
In Standalone mode, a channel layer's own sound source can be replaced by an external plugin instead of TOMiC's internal engines — turning the whole modulation matrix, sequencer and macro system into a generative brain for a third-party synth.
.omniplugin (WASM) synths, using the +CLAP / +Omni buttons in the OSC tile. Both formats behave identically from the mod matrix's point of view..tomic session persistence — and any LFO, ModEnv, Marbles, or other modulator can be patched onto them like any other destination..tomic file; opening a new song cleanly clears every hosted slot before loading the new song's own.Hosting an effect plugin (rather than an instrument) on a channel or the Master bus is a separate feature — see 5.15 In-Process CLAP FX Hosting.
2.12 Melodic, Bass & Harmonic Sound Design in the Groovebox
While TOMiC originated around raw percussive physics, v0.6 is engineered as a complete Groovebox workstation capable of handling every tonal and harmonic duty in your arrangement:
Combined with scale-quantized pitch sequencing (see Chapter 06), each of TOMiC's 16 channels can fluidly alternate between rhythm, bass, melody, and harmonic accompaniment.