11
$\begingroup$

I didn't address this in a while because I was busy with something else, but now it has cycled back into my schedule. Right now I have a shirt modeled and bones set in place. It's already technically rigged, but the only issue is the buttons. enter image description here

I'm not entirely sure how to go about connecting them to the shirt's deformations. I tried to combine them and the shirt into one object, but because of the shirt's modifiers, (Solidify and subsurf, which I don't want to apply yet), the buttons become extremely deformed. I've tried to match the weight painting intensity where a button is at in correspondence with the shirt, but that doesn't seem to work, maybe it has to do with the specifics of where the button is? enter image description here

Is there a way to make the buttons follow the shirt's deformations without deforming the mesh vertices of the button? I know that if I probably apply the modifiers on the shirt and combine it with the buttons, it would be okay, but I'm not okay with doing that just yet with the shirt.

enter image description here

I rigged the shirt by deleting all vertex groups, assigning empty groups to the mesh from the armature, and then assigned automatic groups in the weight paint menu.

Is there a way to do this?

$\endgroup$
1
  • 1
    $\begingroup$ Parent to 3 Vertices. $\endgroup$ Commented Aug 6, 2017 at 19:02

4 Answers 4

12
$\begingroup$

Parent to 3 Vertices

enter image description here

enter image description here

Original Flat Plane at the Parenting time. This may not matter. Image Above.

Note the Parent Setting. The beformation of lightweight fabric or clothes maybe very different than the moving human body.

enter image description here

Shapley beformation with Shape Keys. Note the buttons follow location and normal of the three vertices. Blender determined the three vertices for the Blender User convenience.

enter image description here

The Parent Menu. Parent Plane Child Button. Image above.

$\endgroup$
1
  • 1
    $\begingroup$ Mhh, the post was way better after Ben's edit. Why rolling it back? $\endgroup$
    – brockmann
    Commented Apr 3, 2019 at 16:08
13
$\begingroup$

You may do it using vertex and object parenting. enter image description here

Select the vertex where you want to place the button and snap the cursor to it. In Object Mode add an Empty there.
enter image description here

Now select the Empty, then the mesh and enter Edit Mode. Select three vertices around the button and press Ctrl+P-->Make Vertex Parent. Finally parent the button object to an Empty. (Ctrl+P-->Object (Keep Transform)).
enter image description here

$\endgroup$
1
  • 1
    $\begingroup$ Just realized you don't need empties to make it work good. Just parent each button to three vertices (as atomicbezierslinger did in his answer). $\endgroup$
    – Paul Gonet
    Commented Aug 6, 2017 at 17:36
1
$\begingroup$

If anyone is still looking up how to do this in 2022, like I did today, I should note that when I tried this the first time, it failed.

enter image description here

My parent object is deformed by an armature. However, the child object that was parented to the parent object vertices (tri) would move opposite of the parent object vertices being deformed by said armature.

To fix this:

  • Select child object and Set Origin To Geometry (Shift Ctrl Alt C).
  • Parent child object to vertices on parent object.

The order of this is important.

enter image description here

At some point I had applied Location, Rotation and Scale which caused the issue. Easy to miss.

Hope this helps.

$\endgroup$
0
$\begingroup$

Despite reading and watching the previous examples I was quite confused. After playing, and respecting what I could of the previous answers, this is my attempt to simplify.

Consider "button" and "shirt" to be examples of anything you want to have a "button on shirt" relationship.

  1. Make sure origin of button's origin is set to the place where you want the button to connect to the shirt.
  2. Select button
  3. ⇧ Shift select shirt
  4. Go to Edit Mode
  5. Select 3 vertices in the area the button should attach to. Try to pick vertices that work together to create a "flat" surface for the button to sit on.
  6. Press Ctrl + P and parent to vertices
  7. Go out of Edit Mode and move the shirt to test connection
$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .