Humusprivate beta

Concepts: categories, families and colour

Every organism carries a category, the word its pack gives it: Instruments, Effects, Mixers, Sequencers and so on. The picker and the Help window group by category, and the category is what you read when you are looking for a thing by name.

Underneath, every category belongs to one of five families, and the family is what you see: it sets the colour of a node's collar and mark on the patcher, the soil behind its panel, the tint of its knobs, scopes and step grids, and its chip on the timeline. Categories are many; families are five, so the colour alone tells you what kind of thing you are looking at. Each organism's help page names its family under the title.

Family Categories
Voice Instruments, Signal Generators, Players
Time Effects, Filters, Spectral, Dynamics
Motion Control, Primitives, Sequencers
Sense Visual, Meters
Utility Input/Output, Mixers, Buses, Pod

The colours

Voice wears the accent itself, a moss green: the things that make sound. Time turns the accent towards teal: the things that take a sound and give it back changed. Motion turns it towards amber: the things that move other things, from an LFO to a sequencer. Sense turns it towards violet: the things that listen and look, from a camera to a meter, and the numbered MIDI ports older patches still carry. Utility is the sand grey of quiet text: a mixer, a bus or an output has no voice of its own and stays out of the way.

Plugins and pods

A hosted plugin is filed under its format and vendor, and takes the family its kind implies: an instrument is Voice, an effect is Time. A pod is a box you drew, so it shows the families of what it holds, node by node, and its own ports are Utility.

Where a category sits is decided in the code, not in prose: familyOf in engine/src/core/packs/Categories.cpp is the authority, and the family-docs test fails when this page and that function disagree.