Here is how I tackled the Intense feature on the rig. This feature is located on the head control and allows the animator to convey a tense emotion. Animators will have fun with it especially for close-up shots.
This is not the optimal way to do it but here is how I tackled it so far, there is always room for improvement and your comments are welcome.
Currently, this is my “pre custom step” stack:
The eye patch itself is a separate geometry from the body and imported as a “Pre Custom Step”
Then all the connections are done at the end of the building process :
The parent_eyepatch.py step simply parents the eyePatch_geo to the head control (hehe yeah I updated this as parenting to the joint wasn’t a great idea when hiding the joints ) using:
pm.parent( 'eyePatch_geo', 'head_C0_ctl' )
The import_blendshapes.py step imports my “intense” blendshape target geo in the scene, ideally it should import the .shp file I guess?
pm.importFile(os.path.join(path, "assets","geoBlendshapesPublish.fbx"))
And finally the Intense attribute and all the connection business is done with the blendshape_connections.py step:
pm.blendShape( 'bs_face_intense_geo', 'eyePatch_geo', name = 'bsMightyInput' )
pm.addAttr( 'head_C0_ctl', longName='Intense', defaultValue=0.0, minValue=0.0, maxValue= 1 )
pm.setAttr( 'head_C0_ctl.Intense', keyable = 1 )
pm.connectAttr ( 'head_C0_ctl.Intense', 'bsMightyInput.bs_face_intense_geo' )
I hope this can help anyone, feel free to comment.