Shark(BRUCE) RIG

In this Third assignment of Character Rigging. 
We are asked to rig a Shark(BRUCE).
Let's start rigging with Shark Rig.
Modeling is done by our Faculty.

1.We should create Joints in center of geometry. 
    • So select joint tool and axis should be at XYY and start creating joints in center of the geometry.
2.Check all the Rigging Rules...[ After creating joints we should check its LRA, x should be pointed towards its parent, Now we have start renaming joins according to the character.]

3.Create IK Setup.
  • Root to Tail_Dummy and rename it as [BODY_IK]
    • select the auto-created curve and convert the respective vertices to clusters and rename it
    • create the individual group for each cluster by grouping itself
    • select all created individual cluster group >> group it and rename it as BodyCluster_grp
  • FST_Dorsal_Fin_Upper to Dorsal_Fin_Dummy and rename it as DorsalFin_IK
    • select the curve vertices and convert to cluster
    • name the cluster as per joints position they belong to.
    • group them >> named it as DorsalFinCluster_grp
  • L_Pectoral_Fin_Upper to L_Pectoral_Fin_dummy and rename it as L_Pectoral_Fin_IK
    • select the curve vertices and convert to cluster
    • name the cluster as per joints position they belong to.
    • group them >> named it as L_Pectoral_FinCluster_grp
  • REPEAT THE SAME PROCESS FOR RIGHT SIDE OF PECTORAL FIN

4.Create Control Curves for all joints but expect DUMMY_jnt.
  • Root_ctrl                         +           Root_cluster       
  • Lateral_Line_A_ctrl       +            Lateral_Line_A_cluster
  • Lateral_Line_B_ctrl       +            Lateral_Line_A_cluster
  • Tail_Upper_ctrl              +            Tail_Upper_cluster  
  • Tail_Mid_ctrl                  +            Tail_Mid_cluster
  • Tail_Lower_ctrl              +            Tail_Lower_cluster      

5.Parent(P) & Parent Constrain & Orient Constrain.
  • Body_IK and Root_ctrl                  Parent(P)
  • Body_cluster_grp and Root_ctrl    Parent(P)
  • L_Pectoral_Fin_Upper_ctrl       +    L_Pectoral_Fin_Upper_Cluster              Parent Constrain 
  • L_Pectoral_Fin_Mid_ctrl          +    L_Pectoral_Fin_Mid_Cluster                  Parent Constrain
  • L_Pectoral_Fin_Mid_ctrl          +    L_Pectoral_Fin_Dummy_Cluster           Parent Constrain
  • L_Pectoral_Fin_IK                    +    L_Pectoral_Fin_ctrl                                Parent(P)
  • L_Pectoral_Fin_Cluster_grp     +    L_Pectoral_Fin_ctrl                                Parent(P)
  • L_Pectoral_Fin_SpineCurve     +    L_Pectoral_Fin_ctrl                                Parent(P)
  • REPEAT THE SAME PROCESS FOR RIGHT SIDE OF PECTORAL_FIN
  • FST_Dorsal_Fin_Upper_ctrl    +    FST_Dorsal_Fin_Upper_Cluster              Parent Constrain
  • FST_Dorsal_Fin_Mid_ctrl       +    FST_Dorsal_Fin_Mid_Cluster                  Parent Constrain
  • FST_Dorsal_Fin_Mid_ctrl       +    FST_Dorsal_Fin_Dummy_Cluster           Parent Constrain
  • Dorsal_Fin_IK                          +    Dorsal_Fin_ctrl                                         Parent(P)
  • Dorsal_Fin_Cluster_grp            +    Dorsal_Fin_ctrl                                         Parent(P)
  • Dorsal_Fin_SpineCurve            +    Dorsal_Fin_ctrl                                         Parent(P)
  • UP_Caudal_FIn_Upper_Ctrl          +    UP_Caudal_FIn_Upper_jnt                Orient Constrain
  • UP_Caudal_FIn_Mid_Ctrl          +    UP_Caudal_FIn_Mid_jnt                       Orient Constrain
  • DOWN_Caudal_FIn_Upper_Ctrl   +    DOWN_Caudal_FIn_Upper_jnt        Orient Constrain 
  • DOWN_Caudal_FIn_Mid_Ctrl   +    DOWN_Caudal_FIn_Mid_jnt               Orient Constrain     
6.Create Root_Ctrl and add following attributes.
7.Create Master and Transform Ctrls and make relation with the RIG.
    • Freeze Transform
    • Delete History and 
    • Center Pivot

8.Write Expression for AUTOSWIM
float $freq = Bruce_master_ctrl.Speed;
float $delay =Bruce_master_ctrl.Delay;
float $amp =Bruce_master_ctrl.Amplitude;

Bruce_tailupper_C_grp.rotateY=sin((frame*$freq)+$delay*1)*$amp*Bruce_master_ctrl.Switch;
Bruce_tailmid_C_grp.rotateY=sin((frame*$freq)+$delay*2)*$amp*Bruce_master_ctrl.Switch;
Bruce_taillower_C_grp.rotateY=sin((frame*$freq)+$delay*3)*$amp*Bruce_master_ctrl.Switch;
Bruce_tailDummy_C_grp.rotateY=sin((frame*$freq)+$delay*4)*$amp*Bruce_master_ctrl.Switch;


9.Follow Skinning Process.

  • Select Object and Joint >> SKIN --> Smooth Blid
    • After, Smooth Blid we have to give weight to particular joint
    • select vertices and paint tool, select particular joint and value 1.00 and FLOOD
    • After, doing the same step for all the joints expect Dummy joints
    • Now, If we try to animate, it will be a linear moment in skinning, so we have to share the weight b/w two or more joints.
      • set value to 0.200
      • select smooth
      • select joint and Smooth
      • by, doing this step for all the joints.
      • SKINNING PROCESS WILL BE COMPLETED.
10.Select upper teeth and Head_ctrl                                       Parent(P)         
11.Select lower teeth and Jaw_Ctrl                                        Parent(P)
12.Create joints in Tongue and Parent Contrain with Created Curves.
13.Let's Re-Arrange the Outliner Properly with Creating Different Groups...
  • Joints_grp
  • Curves_grp
  • IK_grp
14.Lock and Hide - Non Usable Keys.
15.Limit All the Attributes......!!



Shark(BRUCE) | RIG | TEST



Thanks for Watching! 
Leave a comment, share your feedback. 
Don't be shy 😜😉✌

Comments

Popular Posts