# Animation & Rigging Pre-conference Workshop 2026
**→ [Draft blog post](https://notes.blender.org/8h1dOS6sQqiNnx2jiAxKnQ)**
**When:** 22 Sept 2026, gather 9:30 at Blender HQ.
**Topic:** Layered Actions
**Goal:** By then, we're bound to have layered Actions working to some degree, and identified issues. The goal will be to design solutions for those issues.
**Definition of Success:** Concrete, implementable answers to the questions.
(Doesn't have to be perfect/final, but does need to be implementable)
## The Day
- 9:30 Gather
- 10:00 Start workshop
- 12:00 Split up into two groups
- 13:00 - 14:00 Lunch
- Discuss what's left to discuss
- Make presentation for conference
- 17:00-ish End of workshop
- 18:00-ish Dinner at Semai (Papaverhoek 35)
## People
### Invited & Joining
- ✅ Brad (will join remotely)
- ✅ Christoph
- ❌ Dorothee (couldn't come for private reasons)
- ✅ Falk
- ✅ Luciano (2nd half)
- ✅ Nacho
- ✅ Nathan
- ✅ Pierrick
- ✅ Rik (as Blender Studio representative)
- ✅ Sybren
- ✅ Beorn (2nd half)
### Joining for dinner
- 7 +
- Marit (partner Sybren)
- Doris (partner Christoph)
- Daniel Bystedt (awesome artist)
- Bar Borer (community contributor)
### Invited last year
- Demeter
- Dillon Gu
- Joseph
- Nate
- Nika
- Raymond
- Eos
## Discussion Topics
Each group discusses **one** topic.
- Channel Box in Dope Sheet & Graph Editor - **Sybren**
- Which nesting is important?
- When/where do you want to see related stuff?
- like Material animation, where the Material is assigned to an Object, and currently shows as sub-channel of that Object.
- Action Layers:
- Only show when there are multiple layers in the Action.
- Prototype: only shows summary channels when there is data to summarize. So layers without F-Curve won't show up.
- Layer should *always* be shown when there's multiple layers, even when only the active layer is listed (so condition can't be based on the data channels only, has to be based on the data in the Action).
- But depends on context -- makes sense for the channelbox, but not for the keys. Same for object data, when there's multiple objects sharing the same data.
- Summarizing if Object A and Object B share the same data:
- Object A summ key selected
- → selects key of Object Data
- → summary of Object B has selected key
- → summary of Object B shows the entire key selected
- → ugh
- Also Dope Sheet/Graph Editor vs. Action Editor?
- Which channels should be collapsed/expanded by default?
- Bone Groups? Bone selection → auto-expand/collapse
- Pinning of Channels - **Christoph**
- Should each editor have its own set of pinned channels? Or should pinning in one place pin those channels everywhere?
- What about when switching between Graph Editor and Dope Sheet in the same area?
- Somewhat related: How should we manage "presets" of visualised channels?
- custom groups?
-
- Action/Slot selection/assignment - **Nathan**
- Currently in the header of the Action Editor.
- In the channel box instead?
- Action Editor header can then be "view this Action/Slot" instead of "assign this ..."
----------------
## Notes during the workshop
Sybren gives a demo.
## Sybrens group
→ https://notes.blender.org/I-hbqiyiTPOkvhrmI5XJYw
## Nathans group
- Nathan:
- Could put action/slot selector in n-panel of dopesheet. Allows assigning action/slot for selected datablock channel(s).
- Maybe could get rid of action editor entirely then?
- Pierrick: action editor is basically dopesheet with action filter.
- Nathan: we could handle that use case with an additional filter in the dopesheet.
- Pierrick:
- In action editor, everything is grouped under actions (actions->slots). Action is the top of the hierarchy.
- It shows all slots, even unused ones, which can be confusing.
- Currently I use actions and slots as a way to not have to switch back to the dopesheet: all the datablocks I'm animating are displayed as slots, and I can still filter by selection to narrow down.
- Nathan: a bit related to Sybren's group: if we can dynamically choose the hierarchy (objects under actions vs actions under objects) that also helps accommodate the actions editor use cases in the dopesheet.
- Pierrick:
- Filters we could have:
- Action
- Slot
- Active
- Selected
- Show All (no filters)
- Big limitation: selection filters only work for selectable things. E.g. what to do about materials, etc.?
- Prefer channel organization where datablocks are under actions and slots, rather than actions and slots under datablocks.
- "Cleaner" (less channel repetition)
- Clearer that editing an action's/slot's keys effects multiple datablocks.
- Nathan: this is really getting into Sybren's group's territory. Still good to think about insofar as relevant.
- Issue with objects under slots: objects don't have the keys, the slots do. So the objects are channels then, just a list of users.
- Action editor currently gives us that ordering, without the user list. Could just be an alt organization in the dopesheet.
- Nathan: back to "action selector in n-panel idea":
- Another benefit: can be incorporated into the graph editor just as easily. Don't have to switch to action editor just to manage action/slot assignment.
- Select datablock channel -> manage that datablock's action/slot selection.
- Select Action channel -> manage what datablock's are assigned to it. Including bulk-switching tools.
- Select Slot channel -> manage what datablock's are assigned to it. Including bulk-switching tools.
- Pierrick: problem: not-yet-animated datablocks don't show up in the channel box. How to assign actions/slots to them, in prep for animation?
- Could have the editor n-panel show action/slot selector for active object too.
- Ah, but that wouldn't work for non-object datablocks.
- Nathan:
- Could handle that in n-panel for actions/slots.
- Select slot channel -> n-panel has list of users, with + button. For OB slots, also "assign active object" button.
- Select action channel -> n-panel has button for "assign active object". Maybe with options like "also active object's materials".
- Pierrick:
- Problem I run in to:
1. Insert key on object A -> new action.
2. Insert key on object B -> also new action.
3. Oops! Intended them to go into same action.
- On first key, maybe pop-up asking to create new action or put in existing?
- Nathan:
- Probably confusing for new users. "What's an action? What are the implications of the two choices?"
- Maybe instead make it easy to fix after. We already have an action merge operator, but we can make it easier to use by operating on selected action channels in the anim editors.
- Pierrick:
- What about putting it in the redo panel, so it's not a pop-up?
- Also, what about drag-and-drop of slot channels in anim editors, to move them into another action?
- Nathan:
- Also, when multiple objects are selected, first key puts them in same action together.
- Nathan: Sybren also talked about viewing actions independent of object selection. "I want to work with this action." Not, "I want to work with this object(s) action."
- If unfiltered view shows all anim data (including all actions), could be handled by pinning. Pin action -> hide filter out unpinned.
- Pierrick:
- Don't know about that. Could be awkward.
- What about "local view", like 3d view? Select action channel -> keypad slash -> local view of action.
- Nathan:
- Love that idea.
- Kind of related to pinning topic. Should ask that group about it.
### Summary / Conclusions
- Action/slot selection happens in animation editor's n-panel, based on channel selection:
- Datablock channel -> action/slot selector for that datablock.
- Action channel -> list of assigned IDs, tools for action-level (re)assigning of datablocks (bulk and not), etc.
- Slot channel -> list of assigned IDs, tools for slot-level (re)assigning datablocks (bulk and not), etc.
- Assigning non-yet animated IDs to actions/slots done in the n-panel when action/slot channel is selected.
- Not limited to just dopesheet/action editor. Graph editor n-panel as well.
- Viewing a chosen action:
- Channel box shows all animation data when unfiltered -> select action channel -> hit "/" for local view.
- Local view can also work for other channel types(?). Already does in graph editor for f-curves.
- Channel box also becomes way of e.g. merging/splitting actions, moving slots between actions.
- Side notes:
- Would be nice to have "multiple objects selected -> insert key -> all go into same action".
- Also redo panel for first key insertion, to change what action it goes into.
### Big group discussion
- Sybren: would be great to be able to right-click on an action (in various contexts) and say "view in action editor".
- Beorn: action editor is really useful for game animation (building animation libraries).
- Sybren: tangential but having the action at the top of the hierarchy is also interesting when disabling "Only Show Selected"
- Sybren discussion about keying things together: Should multiple selected things get an action regardless of if a things was inserted.
- No conclusion
## Christophs group
Nacho rarely uses the channels, rather selections. So not using pinning.
Only uses Dopesheet for timing in blocks. Rely 100% on selection.
Uses custom hotkeys to isolate e.g. rotation X -> **filter settings**
**Start with custom grouping**
Nacho uses grouping to give meaning to a collection of channels. E.g. all the channels of an arm.
That is more a set-up part during rigging. Rigger would give tags to controls (like bone collections).
Those would then show up as optional grouping in the channelbox.
In short: **Animators care about the structure of the rig, not the data structure of Blender.**
- Brad: also important for tools like baking, where the tool can ensure these groups are handled consistently.
- Rik: I would never group, would organize using a bone picker or selection sets.
- Pierrick: would be great to add custom properties to selection sets.
- Sybren: when F-Curves are in multiple groups, do we see it multiple times?
- Answer: yes.
- Falk & Nathan: it's ok, because Blender doesn't put them in the same groupings by default. It's up to the user(s) to confuse themselves.
- Nathan: And when ppl get confused, they can go to a different grouping to show.
**On pinning**
Meaning of the word could be either "always visible" or "meeting a certain condition".
This is something that should be set up temporary by the animator, e.g. 2 characters where the hands are touching. Better example ik hand, ik pole and shoulder. If even one is selected, all others will be visible.
Nacho would like to pin the group itself, and not the separate channels.
To him the given grouping of Blender is not useful apart from the bone groups.
Pinning can give things an order.
Pinned things are always at the top.
Nacho: the advantage pinning gives you the overview of something nested deeply
Pinning is used as a point of reference.
**Pins or snapshots**
A snapshot would store the hierarchy of the channels below the pinned element.
The hierarchy would then not change with any filter/grouping modifications or any data added. Of course it has to adapt to deleted data.
**Storage of pins**
Storage is always on the area (panel?). This means that Ctrl+Tab between dope sheet and graph editor retains the pins. There could be an option to sync pins (like we have with sync timeline).
### Conclusions
* Let the rigger and animator create custom groups to define semantics of an animation. E.g. "Arm" collection which contains the IK hand, Pole controller and shoulder. So the hierarchy would be Arm->IK Hand->curves
* Filter settings for loc/rot/scale x/y/z
* Reduce nesting to meaningful data
* We show too much data to animators. Deal with one problem at a time.
* Different presets
* Animator centric, i.e. rig structure
* Data centric i.e. object-> action-> etc.
* For "pinning" 2 separate concepts
* A Pin is to make data channels permanently visible. Basically a way to tweak "Only Show Selected"
* A Snapshot captures the current structure of the hiearchy and puts a copy of that on top. The structure never changes unless data is deleted. Think of it as a custom view of the data that the user can set up.
* Storage is on the editor. Ctrl+tab between dope sheet and graph editor should retain pins and snapshots.
* Snapshot order matters.
* Snapshots can be re-arranged. Pins cannot.
* Snapshots are shown on the top. It matters at which point of the hierarchy you take the snapshot.
* Nested snapshots are shown separately.
* e.g. snapshot a bone and its action you get two entries, one with the bone and its data and one with the action (which in turn contains the bone)
- Nathan: snapshotting could be combined with the grouping, where you select channels and put them into a 'custom group' that's shown at the top.
- Luciano: would like to see pinning specific channels to the top. Can be without the hierarchy, because he knows what's pinned anyway. It's just for use as reference, not for animating the pinned channels themselves. 90% he pins 1 channel, the other 10% is pinning 2.