Skip to content

Attribute control

An item that edits a rig attribute instead of selecting a control. Sliders for IK/FK, toggles for switches, enums for spaces.

Every other picker item is a selector: click it, its controls get selected. An item with attribute control attached is a widget: in Anim mode a plain click no longer selects, it writes to node.attribute on the rig.

Start from the Widgets panel

The Widgets panel drops ready-made sliders, dials, switches, 2D sliders and more, already set to the right kind — you only fill in the attribute.

The three kinds

Kind Interaction Built for
Slider Drag along the item's local X or Y axis to scrub between a minimum and a maximum IK/FK blends, space-switch weights, 0–1 face controls
Toggle Click to flip between two values Booleans and two-state switches
Enum Click to open a popup of the attribute's names Space switches authored as an enum

Why this is a mode, not a new kind of item

A slider is an ordinary picker item with a different click behaviour. That means it keeps everything else for free: colours, transforms, layers, its Outliner row, undo, copy and paste, the channel box, mirroring.

The precedent was already there — an item with a click script is likewise "an ordinary item that does something other than select". Making sliders a mode rather than a type meant no other part of the tool had to learn a new concept, and a slider you built last year still behaves like an item today.

Setting one up

Open Picker Behavior — select the item and press I — and use the Attribute Control section.

The Picker Behavior dialog with the Attribute Control mode list open: Off, Slider, Toggle and Enum

Mode chooses the kind:

  • Off (normal selector) — an ordinary item
  • Slider — drag to scrub a value
  • Toggle — click to flip two values
  • Enum — click to pick from a list

Then name the node and the attribute it drives.

Slider settings

Setting What it does
Auto range Take the minimum and maximum from the attribute's own limits. Leave this on when the rig declares them
Min / Max The range, when auto range is off
Axis Which of the item's local axes the drag follows — x or y
Step Snap increment. 0 is continuous

Toggle settings

Off value and On value — the two numbers the click flips between. Usually 0 and 1, but a rig that uses 0 and 10 works just as well.

Shared settings

Setting What it does
Label A prefix on the read-out, e.g. IK/FK
Show value Draw the current value on the item
Decimals How many decimal places the read-out shows
Key on change Set a keyframe after every write

The node name has no namespace

Like a bound control, the node is stored without its namespace, and the picker's current namespace is added at read and write time. One picker file drives any referenced copy of the rig — the same rule as everywhere else in the tool. See Rigs and namespaces.

Behaviour worth knowing

The read-out stays true while you scrub. The value shown on the item updates as the timeline moves, so a slider reads the current animated value rather than whatever it was when the picker opened.

Undo works normally. A drag is one undo step, not one per pixel.

It is exactly equivalent to typing in the Channel Box. No constraint, no extra node, nothing added to the scene — the item calls setAttr, and the result is the same as if you had typed the number.

Designing with them

  • Make sliders look like sliders


    A long thin rectangle reads as draggable; a circle does not. Give it a label and turn the value read-out on so its state is visible without touching it.

  • Put the switch next to what it switches


    The IK/FK slider belongs on the arm it drives, not in a control panel at the edge of the canvas.

  • Toggle beats slider for two states


    If a value is only ever 0 or 1, a toggle is one click and cannot land on 0.37 by accident.

  • Enum for named things


    A space switch with four named spaces is far clearer as a popup of names than as a slider from 0 to 3.

When it does not respond

Symptom Cause
Clicking selects instead of scrubbing The mode is still Off, or you are in Edit mode
The read-out shows nothing The node or attribute name is wrong, or the namespace is not set
The drag goes the wrong way Wrong axis — the drag follows the item's local axis, so a rotated item's x is not the screen's
The value jumps to an end Auto range is on but the attribute declares no limits — turn it off and set min and max by hand