Building a Complete Human Facial Rig in 3D Studio Max Part 2

Embed Size (px)

DESCRIPTION

3ds studio Max, 3d

Citation preview

  • Building a Complete Human Facial Rig In 3D StudioMax, Part 2: Custom Attributes & Skinning by SoniKumariTutorial DetailsProgram: 3D Studio MaxDifficulty: IntermediateEstimated Completion Time: 2hUpdated:January 22, 2013

    In the second chapter of this series, youll learn how to create and setup Custom Attributes and build the necessaryjaw control for the characters facial rig. Youll also learn how to work with 3ds Maxs skin modifier, including adjustingvertex weights and fine tuning their influence on the facial mesh.

    Building an animation ready facial rig can be one of the most challenging, time consuming aspects of charactercreation. But fear not! This series will walk you through the entire process from start to finish and give you a detailed,in-depth lesson on what it takes to build an intuitive, animation friendly facial rig from scratch using 3ds Maxs built intools.

    This tutorial is a companion piece to our previous premium series Complete Human Character Rig In 3D Studio Max,so it s recommended that you complete that series first.

    Step 1

    Lets start from where we ended in the last part of the tutorial. First select Ctrl_Head01, go to the Modify panel, expandthe modifier list and then select the Attribute Holder command.

    Step 2

  • You can see the Attribute Holder is now applied to the Ctrl_Head01 control curve.

    Step 3

    Now, with the Ctrl_Head01 control curve selected, go to the Animation menu and click on Parameter Editor.

  • Step 4

    This opens the Parameter Editor window. Inside the Parameter Type drop down menu, select Float, and inside UIType, select Spinner. And then write the name NeckFollow and press the Add button to add the new Attribute Control.

    Step 5

    Here you can see the NeckFollow attribute added to the Ctrl_Head01 control curve.

  • Step 6

    With the Ctrl_Head01 control curve selected, Right-click and then in the fly out menu, click on Wire Parameter

    Step 7

  • Here first select Modified Object > Attribute Holder > Custom Attributes and then click on NeckFollow.

    Step 8

    After clicking on NeckFollow, the fly out menu opens again. So this time go to Transform > Rotation > OrientationConstraint and then select Orientation Weight 0.

  • Step 9

    It opens the Parameter Wiring window. Select both NeckFollow and Orientation Weight 0, and click on the left toright control direction button, then click on the Connect button.

    Step 10

    Now, again select NeckFollow Bezier Float and Orientation Weight 1 and click on the left to right control directionbutton. This time well write an Expression: abs(NeckFollow-100) and then finally click on the Connect button.

  • Step 11

    Now lets check the neck control. With the Ctrl_Head01 control curve selected, enter a value of 0 in the NeckFollowattribute.

    Step 12

  • Now, with the CtrlC_Neck01 control curve selected, rotate it on any axis. Youll notice the neck bones rotate in theWorld direction.

    Step 13

    Now select the CtrlC_Neck01 control curve and press Alt+Right-click, select the Transform To Zero command toreset the transform.

  • Step 14

    Again with the Ctrl_Head01 control curve selected, enter a value of 100 in the NeckFollow attribute.

    Step 15

  • Now, with the CtrlC_Neck01 control curve selected, rotate it. Youll notice the neck bones rotate in the Local direction.And dont forget to reset the transformation of the CtrlC_Neck01 control curve by using the Transform To Zerocommand.

    Step 16

    Now, lets create the jaw control. So go to the Create panel and under Shapes, select the Ellipse tool and then draw anelliptical curve onto the grid. And also check On the Enable In Viewport option.

  • Step 17

    Now with the elliptical curve selected, press Alt+A and then click on the jaw tip bone (Be_Jaw01) to quick align theselected elliptical curve with the Be_Jaw01 bone.

    Step 18

  • With the same elliptical curve selected, click on the Utility panel button and then click on the Reset Xform button, andfinally click on the Reset Selected button.

    Step 19

    After that, click on the Collapse button and then click on the Collapse Selected button.

  • Step 20

    Rename the elliptical curve to CtrlC_Jaw01. Now with the curve selected, press Alt+Right-click and then click onthe Freeze Transform option.

    Step 21

    Now with the CtrlC_Jaw01 curve selected, enable the Select and Link button and then drag and drop onto theCtrl_Head01 curve, to link both of them.

  • Step 22

    Now, we need to create a point helper for control linking. So click on the Create panel, go to Helpers and select Pointhelper, then click on grid with Size of about 6.0cm.

    Step 23

  • With the newly created point helper selected, press Shift+A and then click on the Bn_Jaw01 bone to align andorientate it with the jaw bone.

    Step 24

    This opens the Align Selection window. Here check On the X, Y and Z positions and also check on the X,Y and Zaxes, then click on the OK button.

  • Step 25

    Now, with CtrlC_Jaw01 selected, click on the Hierarchy panel and then click on the Affect Pivot Only button. Then bypressing Shift+A, click on the Bn_Jaw01 bone to align the pivot point to the jaw bone.

    Step 26

  • After doing this youll see the pivot point of CtrlC_Jaw01 is now placed with the jaw bones pivot point. Then turn Offthe Affect Pivot Only button.

    Step 27

    Also rename the newly created point helper to Ptctrl_Jaw01.

  • Step 28

    Now with the Bn_Jaw01 bone selected, go to Animation > Constraints and click on Orientation Constraint.

    Step 29

    With Orientation Constraint selected, click on the Ptctrl_Jaw01 point helper to apply the Orientation Constraint to theBn_jaw01 bone.

  • Step 30

    Now with the Ptctrl_Jaw01 point helper selected, enable the Select And Link tool and then drag and drop onto theCtrlC_Jaw01 curve to link both of them.

    Step 31

  • Now, we will lock the Position and Scale properties to fix the transformation of the controls. So first select theCtrlC_Neck01 control curve and go to the Motion panel button and expand the Assign Controller stack. Then select Xposition: Bezier inside Zero Pos XYZ.

    Step 32

    Now, with X position: Bezier selected, click on the Assign Controller button to open the Assign Float Controllerwindow. In the Assign Float Controller window, select Float Limit and then click on the OK button.

  • Step 33

    Once you click the OK button, it shows the Float Limit Controller box. Enter a value of 0 in both the Upper and LowerLimit boxes and then close the Float Limit Controller box.

    Step 34

  • Now, with Y position: Bezier selected, click on the Assign Controller button to open the Assign Float Controllerwindow. In the Assign Float Controller window, select Float Limit and then click on the OK button.

    Step 35

    Once you click the OK button, it shows the Float Limit Controller box. Put a value of 0 in both the Upper and LowerLimit boxes and then close the Float Limit Controller box.

  • Step 36

    Now, with Z position: Bezier selected, click on the Assign Controller button to open the Assign Float Controllerwindow. In the Assign Float Controller window, select Float Limit and then click on the OK button.

    Step 37

  • Once you click the OK button, it shows the Float Limit Controller box. Enter a value of 0 in both the Upper and LowerLimit boxes and then close the Float Limit Controller box.

    Step 38

    Now, lets work on Scale. With Scale: Bezier Scale selected, click on the Assign Controller button and then in theAssign Scale Controller window, choose the Scale Expression and then click on the OK button.

  • Step 39

    This opens the Expression Controller window. It has already created an expression, so we dont need to do anything, sojust press the Close button.

    Step 40

  • Now, with the CtrlC_Head01 control curve selected, go to the Motion panel and then expand the Assign Controllerstack and select X position: Bezier. With X position: Bezier selected, click on the Assign Controller button to open theAssign Float Controller window. In the Assign Float Controller window, select Float Limit and then click on the OKbutton.

    Step 41

    Once you click the OK button, it shows the Float Limit Controller box. Enter a value of 0 again in both Upper andLower Limit boxes and then close the Float Limit Controller box.

  • Step 42

    In the same way, lock the Y Position and Z Position of CtrlC_Head01 also.

    Step 43

  • With CtrlC_Head01 selected, select Scale: Bezier Scale and then click on the Assign Controller button and then in theAssign Scale Controller window, choose the Scale Expression and then click on the OK button.

    Step 44

    Once again this opens the Expression Controller window. Just press the Close button to close the window, as theexpression is already written there.

  • Step 45

    Just like this, lock all three control curves; Ctrl_Head01, CtrlC_Neck01 and CtrlC_Jaw01.

    Step 46

    Now, before creating the eye controls, we have to first complete the skinning process. So lets open the Layer Managerfirst.

  • Step 47

    In the Layer Manager window, select the head mesh layer and then click on the Hide/Unhide button to unhide the headmesh. After that, close the Layer Manager window.

    Step 48

    Now with the head mesh selected, do a Right-click and select Object Properties in the fly out menu.

    Step 49

  • In the Object Properties window, turn on the See-Through check box (which was turned off previously) and then pressthe OK button to apply the changes.

    Step 50

    Now, with the head mesh selected, go to the Modify panel and choose the Skin modifier.

    Step 51

    You can see the Skin modifier has been applied to the head mesh. Now click on the Bones: Add button in the Skinmodifier. This opens the Select Bones window. Here type Bn_ in the Find box to find the bones and then click on the

  • Select button.

    Step 52

    You can now see the skin influence weights on the head mesh.

    Step 53

    Now, for checking purpose, select the jaw control curve and Rotate it a little bit in any random direction. You willnotice here the head mesh is not deforming properly. So we have to make amendments in the skin weight management.

  • Step 54

    Also animate the head, jaw and neck controls for a few frames.

    Step 55

    Now, with the head mesh selected, go to the Modify panel and choose TurboSmooth. And it will smooth out the headmesh.

  • Step 56

    The head mesh now becomes smooth. This is only for smooth viewing purposes, as it can be turned On or Offaccording to our needs.

    Step 57

    Now, first turn off the TurboSmooth modifier and then with the Bn_Head01 bone selected, go to the Skin modifier andclick on the Edit Envelopes button. Then turn on the Vertices option. You can now see the selected bones influenceweight denoted by a red color.

  • Step 58

    To carefully select the vertices, jump into the Left viewport (or any side view) and then Right-click on the viewportmode and change the display type to Wireframe mode. Then select the upper lip vertices as shown in the image below.

    Step 59

    After selecting the vertices, you can change the mode again to shaded by pressing F3. Now, enter a value of 1.0 in theAbs. Effect spinner box. Youll notice, the selected vertices shift with the head bone.

  • Step 60

    Again for the rest of the unmatched vertices, press F3 to go into wireframe mode and then select the vertices properly.

    Step 61

    Just like before, enter a value of 1.0 again in the Abs. Effect spinner box. Youll notice, the selected vertices shift withthe head bone once again.

  • Step 62

    This is a very challenging and time consuming process to refine the skin weights, so be patience while doing theskinning work.

    Step 63

    Here we have applied a 0.5 value to the Abs. Effect between the upper and lower lip vertices. Thats why it is showingsome areas in a yellow color.

  • Step 64

    Now, lets see how it looks with the TurboSmooth modifier turned back On.

    Step 65

    Now lets work on the neck area. Select the neck vertices and enter the required value in the Abs. Effect box to refinethe weight influence accordingly.

  • Step 66

    Sometimes we have to keep minimum values for proper deformation. So here with the vertices selected, change theAbs. Effect value to something like 0.22.

    Step 67

    After refining the skin weights, the deformed mesh should look something like the image shown below. Now reset allthe control curves for the next process of the face rig.

  • Step 68

    After resetting the controls, select both eye balls and Right-click in the viewport and select Object Properties from thefly out menu.

    Step 69

    This opens the Object Properties window. Here turn off the See Through option and then click on the OK button.

  • Step 70

    Now, we are ready for the eyes controls. Which well learn how to create in the next, and final part of this tutorialseries.

    Local DiskT:\Building a Complete Human Facial Rig In 3D Studio Max, Part 2 Custom Attributes & Skinning Tuts+ Premium.htm