Week 16: Johnny Jupiter and Space Switching

My friend, Nick Cannon, made some super awesome concepts a while back and I promised him I would sculpt some in 3D. Alas, we have Johnny Jupiter!

Check out his adorable illustrations at Nick Cannon Illustration And follow him for more wonderful art at (@nickcannonillustration)

Now that Johnny Jupiter has his suit on, we blast away into the land of spaces (pun intended). Chad Vernon came out with a really cool matrix space switcher and matching workflow using the new offsetParentMatrix attribute in Maya and the new blendMatrix node. I grabbed Mr. Vernon's idea and modified it slightly to better match my workflow. The latest version of piper includes my version of space matching/switching through matrices.

The workflow for space switching with piper goes something like this:

1. Add spaces to a transform node by:

import pymel.core as pm
import as space

# select all the spaces you want to assign, 
# and lastly the transform/control that will be driven by these spaces
selected = pm.selected()
space.create(selected[:-1], selected[-1])

2. Then switch between spaces by:

space.switch(selected[-1], selected[0].nodeName() + 'Space')

Where the transform with the space attributes is the first argument, and the space to switch to is the name of the attribute.

Hopefully I'll get a GUI working to simplify the space switching process even more!