BROW [rigBlock]

MRS : Landing | Members | Queue | Forum | DocsLibrary | How

 master | handlesegment | limb | handhead | eye | muzzle | brow

WIP BLOCK – 

BROW – rigBlock for facial brow setup

Block Profiles

Block profiles may have their settings changed at will. These are simply presets.

General notes:

  • Profiles are initially loaded at creation but they should be able to be safely loaded at define state
  • Distances are stored in cm (maya’s base unit)
  • Some settings are overridden by the buildProfile settings. For example some game buildProfiles will have endJoints off.

Simple

Neckless head setup

  • attachPoint | end
  • base Vector | 0,1,0
  • base Size | 15.2,23.2,19.7
  • ikSetup | ribbon
  • neckBuild | False
  • neckControls | 0
  • segmentMidIkControl | NA

Settings

Almost always located on our rigBlock dag.

Special Calls

None.

Define

Settings

Shared attributes

  • attachPoint
  • baseAim
  • baseSize
  • visMeasure

rigBlock

What are we looking for at this state?

  • Form – You’re not worrying about the pivots here, just bounding box your frame
    • Put the rigBlock in the middle of the head
    • Use baseSize to approximately match the size of your head
    • Move the neckBase handle to the base of the neck.
      • Scale this volume to approximate your neck
  • Aim – Place the aim handle where so that he aim vector is how you want aim forward on your head is.
  • neckUp – Check your neckUp handle to make sure it’s where you want it.
  • neckRP – Ensure the neckRp handleis oriented how you want. Generally speaking the rp vector is through the main axis of rotation for that chain.

Template

Shapes

See guide shape helpers for a breakdown on what the specific handles do.

What are we looking for at this state?

  • Shape| You want your template to generally match the look you’re going for. If you’re not working from a mesh and just an image plane really pay attention to your various angles.

Settings

There are a number of settings that affect our template.

Shared attributes

  • addCog
  • attachPoint
  • baseAim
  • baseSize
  • ikBase
  • ikEnd
  • ikOrientToWOrld
  • ikSetup
  • loftDegree
  • loftShape
  • loftSides
  • loftSplit
  • numControls
  • numShapers
  • numSpacePivots
  • proxyDirect
  • proxyShape
  • ribbonAim
  • ribbonConnectBy
  • ribbonParam
  • scaleSetup
  • settingsDirection
  • settingsPlace
  • spaceSwitch_direct
  • squash
  • squashExtraControl
  • squashFactorMax
  • squashFactorMin
  • squashMeasure
  • visMeasure

loftShape

enum | Kind of loft shape you want –  square and wideUp shown.

 

Prerig

See guide shape helpers for a breakdown on what the specific handles do.

  • One prerig handle created per control

What are we looking for at this state?

  • Handles |  Place the points of articulation where you want them. Use the jointLoft as a visual guide.

Skeleton

What are we looking for at this state?

  • Joint orients | make sure they look like we expect
  • Joint count | Make sure you have the number of joints you want to start iterating with
  • Joint parent | make sure the root of your chain is going where you expect. When we get to the head for example, we wouldn’t want that root of our neck to go to the pelvis unless we had a pretty atypical design.

Settings

neckJoints

int  | How many neckJoints you want

Rig

Settings

Shared attributes

  • ikBase
  • ikEnd
  • ikOrientToWOrld
  • ikSetup
  • numSpacePivots
  • proxyDirect
  • ribbonAim
  • ribbonConnectBy
  • ribbonParam
  • scaleSetup
  • settingsDirection
  • settingsPlace
  • spaceSwitch_direct
  • squash
  • squashExtraControl
  • squashFactorMax
  • squashFactorMin
  • squashMeasure

segmentMidIKControl

bool | This to setup an extra midIK control on the segment from one point of articulation to the other when you have roll joints.

Dag Structure

For those that care about the rig structure

I’ll lay them out and then discuss them briefly.

  • neckLong_head(dag- cgmRigModule)
    • neckLong_rigNull(dag)
  • neckLong_head_deform_grp(dag)
  • neckLong_head_animSet(objectSet)

Module Dag/RigNull

The head rig dag is a tagged mClass node of type cgmRigModule[LINK THIS WHEN DONE]. This is a special kind of dag that holds most pertinent information for the rig wiring.

  • Non transforming dag | this dag is for non-transforming dags/nodes

Deform Group

We have a deform group that is placed under the master control deform group.

  • Deforming nodes for the rig go here.
  • Sometimes I have a separate constrain group under this
  • Typically rig controls end up in here

Object Sets

Each rig Module gets it’s own animation objectSet to which all rig controls are registered

  • neckLong_head_animSet– Module anim set under the Puppet’s

Our object sets are created as cgmObjectSetmClassed nodes which extends their usability in code.

Controls

Post

Settings

Shared attributes

  • proxyDirect
  • proxyGeoRoot

Road Map

Setup

Known Issues

Change Log

2019

January

  • Docs – Initial pass
  • Retool – Bringing this original prototyope rigBlock up to snuff

Josh Burton

[MRS Project Lead | CG Monks] Josh is an animator turned TD who hails from Oklahoma, pre-undergrad in the Marine Corps, animation basics at Savannah College of Art and Design, cut his teeth in gaming and commercials before co-founding CG Monks and more recently the CG Monastery. The Morpheus Rigging System is a culmination of years of R&D and he is now thrilled to see what users can create, collaborate and expand on with this open source MRS platform.