Profile PictureRakenval
€10+

Rig-Rac Hair - A hair rig generator for Blender

Add to cart

Rig-Rac Hair - A hair rig generator for Blender

€10+

Generate rigs for your hair curves with Rig-Rac Hair !

Whether you're done fighting with simulation or just want more control over your character's hair groom, this tool can save you quite some time.

Compatible with Blender versions 4.1 and above, it'll allow you to hand-animate or quickly pose your hair (new hair system only), and can be combined with simulation, shapekeys, lattices, or any other deforming modifier.




Creating Hair Proxies :

Hair curves from the new hair system cannot be directly rigged. They require a proxy mesh version of their guide strands, which will be rigged and transfer the deformation to the original hair.

  1. You can create those proxies by duplicating your hair system, removing any modifier that generates or deforms curves, and adding a "Prepare Proxy" node group (found in the demo file).
  2. In the Prepare Proxy modifier, I recommend you give a name corresponding to the hair system, especially if you have multiple hair systems that will share the rig. The name will be transferred to the bones (to avoid because it causes conflicts : Back, Front, Mid, .L, .R)
  3. Roots, Spawns, and Pivots will become vertex groups that are needed to generate the rig ( whole strand of bones is generated per hair strand). You can decide which points will be added to these groups using the preview cubes (see video).
    • Roots : Where the bone strand will start. Usually is also the first point of the hair strand, but if the start of the hair strand isn't supposed to move, you can place the root lower.
    • Spawns : By default, each point in your curve will receive a bone that'll deform it. It your curve has a lot of points, it could be too much. Upping the Spawns value will jump some points to use less bones (I plan to rework that part someday as it's not very intuitive).
    • Pivots : Master controllers are primarily used for rotation, and you may not want the strand to rotate from the top of the head. Upping the value will lower the first pivot point. Each strand has three; the two others are calculated automatically. (e.g., the root of a strand will be at the very top of the head, while its first pivot will be just above the ear. When rotating the master controller, the strand will start rotating at the top of the ear, everything above that point will not move.)
  4. When you're done, convert your hair to Mesh. The proxy is done.

Vertex Groups:

The hair proxies require a set of vertex groups in order for the rig to generate properly.

  1. With your proxy selected, clicking on "Generate Data Layer" will create the groups for you. Roots, Spawns, Strands and Pivots will be pre-filled thanks to the Prepare Proxy modifier that was applied during conversion.
  2. The other groups (Left, Right, Back, Front, Lone ) aren't obligatory, and are used to part the hair into different sections that will be controlled by different master controllers. Lone will isolate the strands from master controllers.
  3. You can fill those groups manually. Make sure to add the whole strand, and not just some vertices. Strands cannot be in two opposite groups at once, but can be in two complementary ones. (e.g., a strand can be in both Front and Left, but not in both Front and Back)
  4. You can add extra controllers by creating new groups using prefixes. You can also use ".L" and ".R" in their names.
    • "extra_" will create a new stack of 3 controllers similar to the FK ones, using the pivot system. You must only add one point to these groups, which will act as the first pivot point.
    • "extra_simple_" will create some kind of master Tweaker, that you can use to move around a bunch of points, not necessarily the whole strand. It can be useful if some part of the hair is pinned. You need to add all the points you want to control in the group.
  5. Make sure to lock the vertex groups once you are done, in case you need to reset the rig generation (a lots of new groups will be added with the rig).

The Rig:

  1. Before generating, you can add custom shapes for your future controllers in the "custom shapes" section of the "Rig Generator" panel (you'll find some premade shapes in the demo file)
  2. Fill out the names for the Rig and the bones (base name), and choose your settings.
  3. Tick on "Use base name for collections" if you plan to join your hair rig to your character's. It'll label the collections more clearly
  4. I strongly recommend to not activate the IK option. The solution as it is now can be buggy, adds a lot of bones, and isn't very flexible (It's not true IK but a Bendy Bone system. There is also no switch option considering the amount of bones.) I'll probably rework that entirely at some point.
  5. Save before generating. Always. The rig performs well, but the generating process is heavy. It also gives you a backup in case the pivots or extra controllers need adjustments.
  6. Generate the rig. If it's your first hair system, it'll create a whole new rig, otherwise,e it'll add bones to the previously created one (you can change that by removing or swapping the rig object in the Generator panel)
  7. Once the rig is here, make sure to test everything works as intended (e.g., Left controller controls only the strands you added to "Left" vertex groups, the pivots are in the right place, etc...).
  8. If something isn't right and you need to adjust the vertex groups, you can either revert to the previous save you made if you just want to adjust the last hair proxy's groups, or click on "Delete Rig and Reset" to get a fresh start.
  9. Rinse and repeat for every hair system you need to rig.

Finalization:

Once you're fully done with generation, you can tidy up things a bit and link the rig to your character.

  1. Use the "Organize Bone Collections" button to get a cleaner collection list (if you have a lot of hair systems, it can get really long). If you enable compatibility with Rig-Rac UI (a little rig menu addon that came for free with this one), it'll rename the collections accordingly.
  2. When you've done that, you can either:
    • Join the hair rig to your character rig (not recommended): Join both rigs using CTRL + J (this can take very very long to finish), parent the hair root (located in the Roots collection) to the head bone of your character, and fix the armature modifiers/parenting of the hair proxies (see video).
    • Parent the rig to your character's head bone using a Child of Constraint: Much faster and cleaner. The only inconvenience is that you now have two rigs to deal with, but I don't find it too big of a hassle now that they can share actions with the 4.4 update.


Known Issues:

  • Some or every strand in the hair system get subdivided when converting it to a mesh. If that happens, add a geometry node modifier above the "Prepare proxy" one. Add a "Resample Curve" node, and enter your curves' original point count. I still don't know why that happens.
  • If you use similar words to name your hair sections (e.g., "Top", "Top_Secondary", "Top_Tertiary") or words already used by the rig itself (Front, Back, Mid, .L, .R), then the addon may get confused when using Organize Bone Collections (happens in the video). This can be fixed by manually reorganizing the collections that got misplaced or left behind.
  • From Rig-Rac UI : If the rig has child collections, they'll not be collapsible in the collection menu when linking the rig to another file. That's because the system relies on custom boolean properties stored in the object data of the rig, and I've yet to find a way to enable library override for custom props via script. For now, just make sure to manually enable library override for the properties in the rig's object data before linking your rig.
  • The addon uses the vertex groups in a very specific way to generate the rig, and even a simple mistake can break it. If no matter what you try, you keep getting errors (especially the "out of range" one) when trying to generate, I strongly suggest to delete the proxy and make a new one with fresh groups.

What I plan to add in future updates:

  • A third type of extra controller that rotates strands without bending or curving them.
  • Making the "Delete Rig" and "Organize Bone collections" functions affect the active rig and not the one set as the "rig object" in the generator panel.
  • Better "IK", and a possibility to add it on a per-strand basis instead of the whole proxy.
  • Better bone collection organization that requires less manual clean-up.


Add to cart

The Rig-Rac Hair addon, a demo file, and a free Ric-Rac UI addon to organize your hair rig

Copy product URL