.. toctree:: ******************** mrsAnimate ******************** Status: Alpha release Last Updated: 02.27.2019 Overview ========== .. image:: _static/img/mrs/mrsAnimate_vid_1.PNG :align: center Until we get embeded video sorted. Please use this link: https://player.vimeo.com/video/271510677 mrsAnimate is the new animation ui for use with MRS rigged assets. **What can I do with it?** * Contextually work with parts of a rig * Mirror * Tween * Space switch * Change settings Accessing ============== 1. UI * Top cgm menu - ``CGM> MRS > mrsAnimate`` 2. Python .. code-block:: guess import cgm cgm.core.mrs.Animate.ui() Terminology ============= * ``Proxy Rig`` - Rig without a final mesh for fast prototype work * ``Puppet`` - Our name for the root node that is has the wiring to the rest of the components nodes and features of a character or asset. * ``Module/Part`` - The module unit of a puppet. Be it a hand, arm, leg or whatever * ``ControlTypes`` * ``Main`` - Main controls of a module * ``Sub`` - Sub controls of a module. May be hidden * ``Direct`` - Per joint controls. May be hidden. * ``Space Pivots(Pivots)`` - This is our solution for having easily constrainable spaces that change scene by scene. They are a space option for space switching. Menu ======== If you open the ui, you should see something like this: .. image:: _static/img/mrs/mrsAnimate_base.png :align: center The UI has two main parts. The top menu and the tab section. The top menu is where we can set options, switch and do basic snapping Options ---------- * ``Dock`` - Dock the ui to the side of the maya ui Switch ------------ See `section in DynamicParentTool `_ Snap ------- See `section in Snap `_ MRS Tab ============= To start MRS is the only really new section. .. note:: Some tabs just mirror sections other places. * `Anim tab `_ * `Settings tab `_ Context ----------- Context is the ability to modify what part or parts of the rig you are working with in the ui. There are two types of context currently. #. Selection #. Time .. image:: _static/img/mrs/mrsAnimate_context.png :align: center Selection ^^^^^^^^^^^^ * **ctrl** - We only care about the current controls selected. * **part** - Dealing with the module of the current control. For example if you have a wrist selected, you'd be in that arm's context. * **puppet** - The entire character of whatever controls you have selected * **scene** - All mrs assets in scene * options * **[] children** - Also include any children of the base context * **[] siblings** - Include any siblings of of the base context. A sibling of a finger for example would be the other fingers * **[] mirror** - Include mirror modules,controls in the context as well Time ^^^^^^^^^^^^ Time context was added in Feburary 2019 and is still in testing. There are a couple of things to think about regarding this. Time context means that with our selection context in mind, do whatever action over time based on that selected context. Time context functions affect most calls: * Space switching * IK/FK switching * Mirroring **Keys** * ``each`` - Act on each time contextual part based on it's own keys * ``combined`` - Combine the keys in context **Mode** * ``<-`` - Previous | All before * ``|<`` - Last | Last key * ``^`` - Current | Current frame * ``|--|`` - Bookend | Last and Next. Includes current if there is a key there. * ``>|`` - Next | Next key * ``->`` - Forward | All ahead * ``[]`` - Slider | All on the slider * ``sel`` - Selected | Work off selected timeline Anim -------- .. image:: _static/img/mrs/mrsAnimate_anim.png :align: center .. tip:: Remember, all the buttons take into account your context. Not only the controls you have selected. * ``<<`` - Go to the previous key in context * ``key`` - Key at current frame in context * ``bKey`` - Breakdown key .... * ``>>`` - Go to the next key in context * ``delete`` - Delete current key * ``report`` - Report on context in the script editor Select ^^^^^^^ Select by control type. * ``fk`` - FK controls in context * ``ik`` - IK ... * ``ikEnd`` - IK ends... * ``seg`` - segment handles ... * ``direct`` - direct controls ... * ``all`` - all of them ... Reset ^^^^^^^ Reset controls in context. * ``fk`` - FK controls in context * ``ik`` - IK ... * ``ikEnd`` - IK ends... * ``seg`` - segment handles ... * ``direct`` - direct controls ... * ``all`` - all of them ... Tween -------- .. image:: _static/img/mrs/mrsAnimate_tween.png :align: center * ``Reset`` - Resets controls in in context. Zero is on the right. WARNING - this is slow. * ``Tween`` - Typical tweening between poses * ``Drag`` - Using `Morgan Loomis' `_ great ml_breakdownDragger in context * ``[ .00 ]`` - Set the amount for the next row * ``<<`` - Push towards the previous key in context by the amount in the row above * ``avg`` - .5 contextual average in context * ``>>`` - Push towards the next key... Hold ---------- .. image:: _static/img/mrs/mrsAnimate_hold.png :align: center Using Morgan Loomis' _ ml_hold in context - `Morgan's docs `_ Mirror ---------- .. image:: _static/img/mrs/mrsAnimate_mirror.png :align: center * ``push`` - Push the first control's contextual side to the other * ``pull`` - Pull the first control's opposite side to itself * ``flip`` - Flip the pose contextually * ``symLeft`` - Make symetrical to the left side regardless of selection * ``select`` - Select contextual mirror * ``symRight`` - Make symetrical to the right side regardless of selection Switch ---------- .. image:: _static/img/mrs/mrsAnimate_switch.png :align: center * ``FKsnap`` - Snap to fk mode for all modules in context * ``FKOn`` - Turn on fk mode for all modules in context * ``IKsnap`` - Snap to ik mode for all modules in context * ``IKforce`` - Snap to ik mode then force handles to snap as well to make sure they match. Experimental * ``IKOn`` - Turn on ik mode for all modules in context Aim ^^^^^ .. tip:: Only the head module currently supports this kind of aim setup * ``on`` - Turn on aim mode for all modules in context * ``off`` - Turn off aim mode... * ``toFK`` - Snap to fk from aim setup... * ``toIK`` - Snap to ik from aim setup... * ``Snap`` - Snap to to aim mode Settings ---------- .. image:: _static/img/mrs/mrsAnimate_settings.png :align: center Module settings * ``visSub`` - Hide/show sub controls in context * ``visDirect`` - Hide/show direct controls in context * ``visRoot`` - Hide/show root controls in context Puppet settings * ``skeleton`` - hide/lock/on joints for all puppets in context * ``geo`` - hide/lock/on geo for all puppets in context * ``proxy`` - hide/lock/on proxy geo for all puppets in context