Master¶
Last Updated: 04.18.2019
The root rigBlock of our system. Not having one works for some setups but designed to be the root parent of any other rigBlock setup
Profiles¶
None
Settings¶
controlOffset¶
Float
. This is a master only setting. This is a very important setting. This is our puppet's offset value for all of it's rigBlock shapes. It is used at many points during rig creation. The main effect is how far off of the proxy surface your control shapes will cast themselves for this master block controls as well as all sub modules.
addMotionJoint¶
Bool
. This designates if our master will have a motion joint which is an extra root joint to move an animated skeleton around in game engine.
Define¶
The Master block skips the define state by default. The proper method for scaling the master block is to use the baseSize
attribute to frame the object. Then rebuild the form
state.
Form¶
rigBlock
[1] | The darker yellow interior curve is our master rigBlock's shape. Select it to get the dag.Bounding Box Visualization
[2] | This represents the bounding box as our rigBlock understands it's own spaceCurve Offset Visualization
[3] | This is to see how far off of our asset control curves will be set
Prerig¶
motionJoint Helper
[1] | Arrow pointing down. The joint would be created at the dag of this prerig helpers.
Tip
Only builds when the addMotionJoint
setting is True
Rig¶
master¶
The master control [1] is the large square/rectangle with lighter offset curve and curve text of our character name
Attributes
visControl
[bool] | visibility of the vis controlsettingsControl
[bool] | visibility of the settings controlpivot_0
... [enum] | visibility for each pivot as created by the setupspace
[enum] | dynParent space toggle (when optioned)
settingsControl¶
Gear shape [2] at the base of our master. This is where we have some settings for our puppet. We plug in more items as we add sub modules.
Attributes
skeleton
[enum] | off:lock:ongeo
[enum] | off:lock:onproxy
[enum] | off:lock:on
visControl¶
Eye shape [3] at the base of our master. Not really using this much now but it's a place to plug stuff.
Attributes
- rootMotionControl [bool] | visibility for the root motion control
rootMotion¶
Our same down arrow [4] as before. Used to move that joint.
Dag Structure¶
This will be more important to some of you than others. But our structure for a rigged asset begins with our master. Our master rigBlock creates a lot of nodes which you should have some understanding of in order to amend and modify your setups. All our subsequent rigBlocks will put their guts in this structure.
I'll lay them out and then discuss them briefly.
NAME_puppetNetwork
(network | cgmRigPuppet[LINK THIS WHEN DONE])master
(dag)rig
(dag)noTransform
(dag)parts
(dag)worldSpaceObjects
(dag)
geo
(dagskeleton
(dag)NAME_masterGroup
(dag)NAME_anim
(dag | cgmRigMaster[LINK THIS WHEN DONE])
control_displayLayer
(display layer)main_displayLayer
(display layer)all_animSet
(objectSet)
PuppetNetwork¶
The puppetNetwork is a tagged mClass node of type cgmRigPuppet[LINK THIS WHEN DONE]. It is our core puppet wire source and target and has a large number of calls associated with it. We'll get more into that in the MRS Workshop on making your own module.
Master¶
The Main dag group in the outliner. This is our master null for the given puppet. We've named it "master" assuming any referencing will "tag" it such as "horse:master".
Groups/Nulls¶
Let's talk through our groups and what they're used for.
- rig | general group for the groups below it to keep that first level of children smaller
- noTransform | General noTransform group to stuff stuff when needed
- parts | each sub module added will add their own structure here. So for example, adding a spine that is rigged would add a spine null here and other dags at build time.
- worldSpaceObjects | collector for our dynamic parent group system to add it's dag targets to
- geo | Watch group for various calls where they'll be looking for geo. This is wired to the geo off/lock/on toggle so any children will get those settings
- skeleton | Null to put our bind skeleton. This is wired to the geo off/lock/on toggle so any children will get those settings
- masterGroup | Our master control's master group under which our rig structure will be that will be transformed by the main control.
Display Layers¶
Currently we build two display layers per asset.
Control
| this should pretty much only affect controls so you can hide them on playbackMain
| this is for the whole rig
Object Sets¶
There are a number of objects sets supported by MRS. Some are created initially. Some by post processes.
- all_animSet | Master anim set for puppet controls. Sub modules have their own sets added to this one
- bake_tdSet
- delete_tdSet