mDrake/Griffin iteration…

Discuss on the forum
(MRS Collaborative Only)

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

Current Focus

  • mDrake – initial body build for Morpheus for Unity work and alpha body release
  • Griffin push – Completing a proxy build of the Griffin for our last challenge winner Sean D.
  • Mocap Bake Tool – Bokser is working on this for Morpheus for Unity and client work


  • Eye rigBlock – bring up to new methods, clam lid setup
  • Completing facial modules

Mocap Bake Tool

Bokser has a new tool in testing. It’s a tool for retargeting and baking control transforms from an animated source

mDrake Build

New Templating

Re-templated the asset using the new setup from the merge talked about in the last update.

  • New setup working well. Bokser using it on some other stuff. We’re making notes for further iteration

Some basic issues I ran into during building:

  • Limb
    • After adding hand banking setup, the proxy mesh taking that in for the loft not so awesome.
  •  Fingers
    • Size on some shapes is large:
      • followBank
      • ik root

Finger Banking

Had a little extra bandwidth so decided to tackle finger banking. Had toe setup working from the chicken demo and other projects and wanted to setup for hands.

  • Initial pass showed some issues.
    • Build initially broken at prerig because of how it was handling hasEndJoint with an arm
      • Fix logic
    • Finger follow not working as intended
      • rig skeleton – chain not building properly for finger
      • rig shapes – fix followParentBank
      • pivot setup – Add ik/fk driver connected to module parent’s fk/ik. When in fk, off
        • Create a dag to blend
        • Create a stable base
        • Setup the blend driven by the fk/ik switch on the parent
        • Add the new blend dat as the connected driver for the followParentBankIK/FK
      • cleanup
        • follow parent default value not setting properly
    • Not thrilled with bank control shape on the hand
      • change shape


The holster initially was having some build issues because I was aiming it backwards from the rigBlock dag.


For initial pass, just doing a single joint control.

Skin Cage

Since my initial geo set from my modeler has a number of items, sometimes it’s easier to use a skinning cage where I will skin a single unified rough mesh and then transfer that mesh to the various pieces of the mesh parts. The above image is the proxyMesh generated from MRS which I’ll use as a skinning cage.


  • Arm with bank helper lofting that mesh.
    • Need to remove like with the limb ‘arm’ check TEST THIS
  • For the most part worked well – would still like a simple body mesh from the modeler where possible. When you don’t have that. This is MUCH better than nothing.


Skinning Notes

Using ngSkinTools as usual. Trying some new methods.

On fingers.

  1. Select the verts of the finger
  2. Assign weights via ngSkin
  3. Select the front edgeloop of the hinges
  4. With soft selection, relax medium




Pushing through the griffin proxy design by Sean D. One of the reasons we do these is to push the limits of MRS to find where it breaks which we can then fix so the next time we push further.


  • Main loft surfaces for the rigBlocks are reversed normals
  • Duplicating blocks
    • There’s a bug where the define lever isn’t being created so we need to check why that’s breaking.
  • Block scale
    • Block scale isn’t being accounting for with mirror functions
  • Defaults
    • Toe has roll joints on
      • Change default
  •  Builder
    • Adding a new block auto being made active feels off
      • turn off for now and see if feels better
    • The contextual numRoll wasn’t pushing to the datList properly.
      • Fix.


Build 1


  • Neck feels really good, need to turn on the base seg follow to .5
  • Front claws feel good
  • Nubs working well for back toes


  • Toe bases being up isn’t what I want – move down
  • Front leg is connected to hip – change attach point
  • Front thumb isn’t long enough – lengthen
  • Back leg ankle shape is massive – fix 
  • Neck normal flipped – next build will fix
  • Ankle loft curve on the back leg needs to be unsharpened
  • The rough wing works for the most part but there’s a lot of promise in how straightforward a reg wing would be. I think I’ll swing back after mDrake’s face is done and tackle a proper wing module.


Build 2


  • Trying segment feathers as fingers on a wing base like in internal project . Doing segments rather than limb blocks as they’re better for ribbon setup which I think might be good on the feathers for twist
    • After playing a bit, they’re working well – 3 joint, 3 control segments
  • Tweaked front feet toes a good bit
    • Feeling better
  • Until the new wing module is ready. Pulling the roll joints on the base wing as it they flip around too much
  • Tried several sub iterations on new wing joint placments. Good enough for now.


  • Change the name. The winner’s kids have named our Griffin ‘Rael’ and Rael it shall be.
  • One of the loft is reversing at the front foot. Maybe the world space mirror is flipping the curve?
    • The world space curve mirror reverses curve direction.
      • Add reverse to the mirror call
  • Some control sizing still off
    • Change creation method
  • The loft shape widePos needs to change to wideNeg on a mirrored block
    • Add mirror dat checks to switch to blockMirror_create and blockMirror_settings
  • Aim head
    • Moved issues to for later for long neck
    • Turn off head aim for now
  • Still not thrilled with proxy segmentation
    • Reworked. See below.
  • Casting wigging out when exactly on a loft curve….odd.
    • Dug in. Added better handling on a cast so that even if one hit fails, it doesn’t break the return
  • Noticing the sometimes orient flipping issue on blends. For bandaid –

He is however fun to pose…

Build 3

Prepping initial final build for testing.


  • Don’t build in a scene with another referenced rig. Slows down rigNodes…DOH!
  • Had a weird bug after a build where all the ik broke when I was doing final clean up. Not sure if it was a maya fluke or somehow the ik handles got connected to the referenced Drake’s somehow. We’ll see if it pops up again.
  • Head has some stray shapes and nodes after build
    • Resolve during build


Throwing to the challenge winner and a few early testers and will release after some testing.

Surface Normals

Ran into an issue with surface normals which became apparent when I was using the ‘use default material’ when tweaking the griffon.

  • Initially I tried simply reversing normals on loft call flips the u and v values and thus blew up other setups that are set to use u values.
  • Digging in more it stemmed from a bezier type loft which has the normals different than others. Reversing the surface on  the v direction kept the expected u/v values.

Better proxy joiners

With proxy mesh creation a few months ago we initially started with a ball in the center of the chunk edge. Then we moved that to the joint and it still wasn’t quite what I wanted. Had a few hours today so took another stab at it.

  • Since we already had the curve we were using for lofting the proxy geo it made sense to think we could just use that. So we did.
  • We offset that curve by a negative value to shink it on the given axis
  • We use the curve as well to generate a proper offset vector by making a planar surface of that curve and taking the middle uv’s normal
  • Then we get our max vector offset point by good old pi on the root curve and halving it to get our radial distance.
  • Three curves offset by scale and distance and we get a nice clean little joiner.

This’ll do.

At least for now…:)

To Come back to…

  • Optimization
    • rigNode connection is pretty slow. Look at way to fix that
  • LIMB – end twist skin joint. Look at an option to have a twist only wrist
  • SEGMENT – reverseable spine would be great for flying/swimming stuff
  •  HEAD
    • Aim head
      • subs blocks aren’t attaching to the aim head
      • Head aim not driving twist
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.