The Expression Editor workflow includes some amount of built-in guidance, but not all steps always take place, or take place in the same order and frequency every time. To really make sense of the workflow it’s necessary to at least be aware of some fundamental concepts.
Session and Scene (Maya)
In Maya parlance, a Scene is used interchangeably for both a Maya client that’s open and has something other than default settings in memory, and for any file that is saved. That’s too ambiguous within our workflow.
Our workflow alters the contents of the “scene” frequently and significantly, at some steps completely emptying it, and relies solely on MetaHuman DNA (or simply ‘DNA’) data across these major operations. Because of this, saving a scene often does nothing useful.
We need to talk of a Maya Session, with which we mean any instance of Maya that has an active Expression Editor window, and has seen a DNA loading command issued into it.
When we refer to the Scene, we refer only to the contents of Maya’s memory we’re not managing (for example, the objects in the outliner and the viewport).
Session Data
Once Maya is started, and the Expression Editor window opened , you can load a head DNA file. Once that file has been loaded, an instance of that data will be present in memory, and referenced by the Expression Editor window.
At several points in the workflow you will be able to update the DNA that’s in memory, or save the DNA file to disk. When that happens, it’s the above mentioned instance of the DNA that is affected, or being saved.
This isn’t just an implementation detail and is a fairly important thing to keep in mind.
Your edits are performed in the Maya Scene (the session’s contents as Maya’s factory objects), but that means that most of the time its contents will be different than what is in the DNA data in memory. In the workflow you will frequently be required to “update the DNA”, which almost always boils down to taking the scene’s contents, and writing them to the portion of memory we manage that contains the DNA data.
When you export the DNA, it won’t automatically reflect the state of the scene, but rather the state of the DNA as it is in memory (from when it was last updated).
If at this point it sounds confusing, don’t worry, it will become clear when looking at Expression Editor in action.
The reason for this asynchronous behavior is that some of the DNA operations require seconds to minutes of computation after the last edit (for example propagating changes to multiple LODs, automatic joint matching etc.)
Next Up
MetaHuman DNA, Rig Definition, and Rig Operation
Information about the MetaHuman DNA, Rig Definition and Rig Operations.
Editing Modes
Task specific editing modes in Expression Editor.