Rig or Pose Geometry Node Hair

Question Rigging
I'm working on a character who has custom hair made with geometry nodes from the native asset library. I've been searching how I might set up a rig to pose or move some of the hair clumps. However, I haven't really been able to find any solutions. There's a lot of info about attaching the hair curves to the surface in rest pose or creating animations via geo node simulations and proxies, but nothing about a regular armature-type setup. 

I'm wondering if anyone has had better luck finding a solution or some alternative ideas to throw around. It won't be project-breaking if I can't find a solution, but it really bugs me to not be able to figure something out. 

I'm thinking of some sort of strand clump ID that gets generated and then using that to automatically select and bind the strands to specific bones (maybe singular b-bones via a naming convention). However, I think it would have to be done after collapsing the modifier stack or at the end of the stack somehow because the hair geo nodes seem to recalculate everything as soon as the strands are moved. 
1 love
Reply
  • Dwayne Savage(dillenbata3) replied

    The hard part is selecting the clumps. As for assigning it to a bone in the rig it's pretty easy. You create a vertex group on the emitter object(mesh). Properties editor->mesh data->Vertex group->click plus. Then name the vertex group by double clicking and typing the name. Remember it is case sensitive. If you already have the rig created and the bones named you can select object, shift+select armature, and press ctrl+p->With empty groups. This will create all the vertex groups with names of the bones. Then use a Store Name Attribute node. Set to Float and point/vertex(Depending on Blender version). Set the name to the bone/vertex group you want to use to control it. Then set value to 1. Then the part I'm not sure how you would do it and that is the selection part. 

  • Dwayne Savage(dillenbata3) replied

    OH, I just thought of something. You can Try going old school and use envelops instead of vertex groups. I use this with curve objects since they don't have vertex groups. You switch the armature bone display(Under viewport display of the armature tab in properties editor) to envelope so you can see the envelope's influence area. Then in edit mode you can use the envelope tool(Second option under bone size on the toolbar) or using Shift+alt+ctrl+s. Note: Size of the bones also affects the envelope and you can adjust the size of the head/tail/body by selecting them individually and using alt+s. You can also do this thru the n-panel with head/tail radius and envelope settings. To get the envelopes to work. Select object, shift+select armature, and press ctrl+p->With envelopes. Blender sometimes does this, but most of the time it doesn't so go to the modifiers tab and on the armature modifier uncheck vertex group and check bone envelopes.