Introduction

The rig features corrective, volume-preserving joints and a robust twist system. I prioritized math nodes to drive these behaviors rather than traditional Set Driven Keys, ensuring a more optimized and predictable result. Aron Tinz was a massive inspiration and mentor throughout this project, influencing the technical architecture of the deformation system. I should also mention that the rig is Unreal compatible.

Joint Placement

When creating the deformation joints for the existing skeleton, I didn’t want to rush it, so I researched proper anatomical references. I found Anatomy resources where I could study muscles up close on a 3D model (Anatomus). I also looked at Kapandji paper who have a deep understanding of which poses activate specific muscles.

The placement of the twist joints depends on the muscles’ restricted movement. As we can see here, the deltoid whose main function is to lift the arm ends about one-third down the humerus bone. Both the biceps and triceps are contractile muscles and require joints that extend when the arm bends. I used middle joints since the character has larger biceps.

The lower arm has several muscles connected to the elbow that narrow toward the forearm, and that is where the twist primarily happens about halfway down the bone.

Twist Logic

There are several ways to create twist joints, and I chose to use aim constraints and RP IK because the setup is stable even at extreme angles.

The twist system consists of:

  • Aim joints driven by the mentioned IK setup, allowing rotation around their own axis
  • A twist extract locator
  • A locator used as the world up object
  • An aim constraint that uses the lower arm and the twist extract locator as the aim target

Two twist joints then receive the final rotate X value from the twist locator.

Skinning

Zonal Influence & The Areola “Anchor”: I treated the areola as a high-stability zone. By dampening the weight influence in this specific area, I ensured it remained relatively static, preventing the “stretching paper” look that often ruins chest deformations.

Dynamic Volume Shifting: Rather than static weighting, I focused on how the pec contracts and expands based on the humerus position.

  • Adduction (Arm in): Managed the weight blending to simulate muscle bunching.
  • Abduction (Arm out): Balanced the weights between the chest and shoulder to allow the pec to stretch across the ribcage without losing its structural mass.

Conflict Resolution: To manage the overlapping influence of multiple joints, I established a clear hierarchy: the Clavicle drives the vertical shift, while the Shoulder handles the lateral pull. This hierarchy ensures smooth transitions and prevents “volume collapse” even at extreme ranges of motion.

Corrective Joints on the Upper Body

Since most of the upper body muscles I selected are driven by the shoulder, aim constraints worked well for achieving the required angles. The distance between the extended joint and the shoulder drives how far outward the joint moves.

With more time, I would focus more on muscle contraction behavior. Currently, many joints focus on maintaining volume, but only a few expand when the muscles contract. The pectorals and trapezius are examples where this expansion could be developed further.