Skip to content

Worlds, filters and masks

The problem

Sooner or later you want the console to do less than everything:

  • work on the bars without touching the movers (or the lamp channels)
  • store only the colour of the look in your programmer
  • make a colour button that can never move your lights
  • see only the fixtures that matter in a sheet of 200

You could do all of this by carefully selecting and clearing values. grandMA2 has three tools that make it a rule instead of a habit. Their names sound alike and the manual explains them side by side, which makes them hard to tell apart. It's easier to start from the situation, in the order you meet them: programming, storing, playing back.

Stage You want to … Tool Section
Program keep part of the rig out of reach world Working on part of the rig
Store store or copy only part of what's in the programmer filter (often a temporary one) Storing only part of a look
Play back make an executor play only certain attributes or fixtures, whatever its sequence contains playback filter / input filter (a filter or a world) Executors that only do one thing
Program (and operate) see less in a sheet without limiting anything mask Seeing only what matters

The idea: three different kinds of "only"

Each tool limits something different:

Limits By Affects
World what you can see and touch while programming fixtures and/or attributes you
Filter what gets stored, played back or taken with At attributes (and data layers) the action
Mask what is shown in sheets and the stage view fixtures and/or attributes the window, display only

A world hides things and takes them out of your reach. A filter doesn't hide anything; it decides what passes through when something is stored or played back. A mask only hides things.

Programming: what gets in programmer values are live World what you touch Programmer your values Filter what Store takes Input filter what may enter Sequence cues also for At set on the sequence You keys, encoders Mask what you see Sheets stage view Stage DMX output Playback filter on the executor display only, no access limit everything outputs: world and mask don't change it
The orange boxes are the limits. Filters sit on the paths into a sequence and out to the stage; the world sits between you and the programmer; the mask only between the sheets and your eyes. None of them but the playback filter changes what the stage shows.

A short way to remember them:

  • World: "only these fixtures and attributes", for as long as you're in it.
  • Filter: "only this kind of data", for one action (or one executor).
  • Mask: "only show me this", and nothing else changes.

Two facts that are easy to miss:

  • None of them changes the output while you program. Only a filter or world attached to an executor as a playback filter limits what reaches the stage.
  • A world can do a filter's job on an executor or sequence, and then it limits fixtures too, which a filter can't.

Working on part of the rig: worlds

You're programming the bars. The movers are still in the programmer from the last look, and every encoder page has attributes the bars don't even have. One careless Store and the movers' positions are in the bars' cue; or a lamp-off value you set while checking a fixture ends up in a cue and switches a lamp off in the middle of the show.

A world is a grid of fixtures (rows) and attributes (columns). Enter it, and:

  • fixtures outside it disappear from sheets and the stage view, attributes outside it from the encoder bar
  • you can only affect what's in the world: selecting, setting values, storing, deleting

Two consequences are easy to miss:

  • The output doesn't change. Everything else keeps outputting; you just can't touch it. In the manual's example the DMX sheet still shows all fixtures' values while you're in the "Spots" world.
  • Deleting inside a world deletes only what you can reach. Select a "Blinder" world, delete a sequence, and only the blinders' data is removed from it. The rest of the sequence survives. That's useful on purpose and a surprise by accident.

Interpretation

The manual lists Store, Delete and "applying values" as actions a world limits, and calls them programming actions. That At and copy fall under the same rule is a reading of that, not a manual statement.

Building one

You build a world in the programmer:

  • select the fixtures you want (the rows)
  • give the attributes you want an active value (the columns); with no active attributes the world gets all of them
  • Store into the world pool

A world holds no values, just the grid. To change it, store it again (if you're inside it, leave and re-enter to see the change). Auto Create (Setup → Auto Create, World tab) makes one world per fixture type or per patch layer in one go.

Entering, leaving, knowing

Tap a world in the pool to enter it. World 1, Full, contains everything and can't be edited; it's your way back. Two predefined macros make this quick: World is Selection turns your current selection into world 999 and enters it, World is Full goes back.

Outside world Full, a world icon shows in the title bar of every affected window (and, depending on the Message Center settings, in the command line). Each user has their own selected world, so the icon is the only reminder that you can't reach part of the rig.

On user profiles a world becomes a hard lock: users with that profile can't select another one.

Storing only part of a look: filters

Your programmer usually holds more than you want to store. You've built a complete look on the spots and now want only the colour as a preset, or the movers to pre-position (position and colour into cue 1, only the dimmer into cue 2), or to copy the colour of fixture 1 to fixture 2 with At without copying where it points. Clearing the parts you don't want, storing and setting them again is slow, and the next look needs the parts you just cleared.

A filter is a list of attributes plus data layers (values, fade/delay times, effects). It contains no fixtures. When you store, update or use At, only what passes the filter is taken; the programmer itself stays as it was.

There's always an active filter. The first one in the pool, All, lets everything through, which is why you don't notice filters until you use one.

Once, or until further notice

The filter pool knows two states:

  • Select + filter selects it (green background). It stays in force for every Store and At until you select another.
  • Tapping a filter calls it (green bar). It's used for your next action only; after that the selected filter takes over again.

So the everyday pattern is: keep All selected, and call a filter when you need it once.

Temporary filters

For exactly one action, without touching the pool:

  • Store, then Store Filter in the encoder toolbar
  • hold At for about a second
  • on the command line with If: Store If - PresetType "DIMMER" EndIf stores everything except the dimmer

The manual's example for all three is the pre-positioning trick from the problem: store everything except the dimmer as cue 1, then the dimmer as cue 2. A temporary filter can be saved as a pool filter (Store Filter and Select) when you notice you need it more often.

Building a pool filter

Edit a filter in the filter pool. The pop-up lists preset types, features and attributes; you switch off what the filter should block. Three buttons decide which data layers pass: Value, Value Times, Effects. Switch all three off and no value data passes at all.

Knowing a filter is on

When any filter other than All is selected, the At key flashes and a filter icon appears in the command line. The Command Filter window (Create Basic Window → Other) always shows the current filtering.

Practice

A forgotten selected filter is a classic reason for "my cue is missing the colour". If a store looks incomplete, check the flashing At key first.

Executors that only do one thing: playback and input filters

You busk with layers: colour-look buttons, position buttons, dimmer chases on faders (see What goes on an executor). The layers only combine well if each touches its own attributes. Then one evening you press Ice and the movers swing to the floor: a position was still in the programmer when you stored the look, and now it's part of the colour sequence. Careful programming avoids this most of the time, and "most of the time" is a problem in the middle of a set.

A filter or a world can be attached to playback, in two places:

Playback filter (on the executor)
The executor plays back only what passes. A sequence with colour and position on an executor with a Colour only filter plays only the colour. The sequence itself isn't changed, so the stray position stays stored but never reaches the stage.
Input filter (on the sequence)
Only what passes can be stored or updated into the sequence. Store a cue with half the rig in your programmer, and only what the filter allows ends up in it. Because it belongs to the sequence, it applies on every executor that uses that sequence.

Either slot takes a filter or a world:

  • a filter limits by attributes (Colour only)
  • a world limits by attributes and fixtures (Bars, dimmer only): the dimmer chase on the bars can then never contain the hazer, whatever was selected

On playback, data layers are ignored: a playback filter works by attributes (and, with a world, fixtures), not by values vs. times vs. effects. Your own selected world has no effect on playback; only the world or filter assigned to the executor or sequence counts.

Assigning

  • playback filter: Assign, tap the world or filter in its pool, then press a button of the executor
  • input filter: Assign, tap the world or filter, then tap the sequence in the sequence pool; or type Assign Filter 7 Sequence 8
  • or both in the executor's assign menu (Assign + executor key → Options), where No Filter also removes them again

The mini executor marks which one is set: the executor number for a playback filter, the sequence number for an input filter.

Practice

The two work well together on busking layers. The input filter keeps the sequence clean when you store into it; the playback filter is the guarantee on stage, even for data that got in before the filter was there. For the colour looks: Colour only as both. For a per-type atmosphere: a world such as Bars, dimmer + colour as both.

Seeing only what matters: masks

The fixture sheet shows 200 fixtures and 40 attributes, and you care about the dozen you're working on. Before a store you want to see exactly what the programmer holds; during a set, which lights are on and which run an effect.

A mask only hides things in sheets and the stage view. It doesn't restrict anything: you can still select, set, store and play back everything, and the output is untouched. That's why masks are safe to leave on during a show.

The predefined masks cover the common questions:

  • Prog Only / Active Only: show only what's in your programmer, or only active values. Good for checking what you're about to store.
  • Parked: only parked values.
  • Seq+ / Seq-: only what's stored in the selected sequence(s).

Where and how

Where. Channel sheet, fixture sheet, the sequence content and tracking sheets, and the stage view. Nowhere else.

Pool mask or local mask. A window either follows the mask selected in the mask pool, or has its own local mask (window options, the yellow ball → Mask (Local)). Local masks let you have two fixture sheets side by side, one showing everything and one showing only what you're about to store.

Putting one on a window quickly: Assign, the mask, then tap the window's title bar. Or select a mask in the pool, or type Mask 2.

Your own masks

Edit a mask pool object. A mask has up to four rules for fixtures and four for attributes; whatever matches one of them is shown (or hidden, per rule). Rules beyond the predefined masks:

  • Live: fixtures with a dimmer above 0%
  • Effect: what currently runs an effect
  • Moved: fixtures with changed non-dimmer values on output
  • Used in Show: everything stored anywhere
  • In Object: everything a given group, preset, effect or sequence uses

When you need it, and when not

Practice

Even on a small rig, these pay off early:

  • A world without the Control preset type for everyday programming, so lamp, reset and fan-mode channels never end up in a cue. The manual suggests exactly this.
  • Temporary store filters for storing presets out of a finished look and for pre-positioning; they cost nothing to learn.
  • Playback and input filters on busking layers (colour, position, intensity, beam on separate executors), so that a colour button can never move your lights. Hits that change dimmer, colour and shutter get no filter, or one that allows exactly those.
  • The Active Only mask on a fixture sheet, to see what a store will take; for busking, a Live sheet next to an Effect sheet shows what's on and what's moving. In a dark room the Live sheet stays short.

Worth it later: pool filters (Colour only, No dimmer) once you call the same temporary filter often, and World is Selection when you work on one fixture type for a while. Skip at first: worlds per programmer and on user profiles, which are for multi-user shows. A cue-list show with one main sequence rarely needs playback filters either.

Sources