I have a human body mesh and a skeleton which I got from modding kit for a computer game. I am trying to mod a backpack into the game.
I followed a tutorial and parented a plain cube (my backpack prototype) to the skeleton. When I go into pose mode and move any bone from the skeleton, the cube gets distorted.
To check what I'm doing wrong, I imported an existing backpack from the game and did the same steps. When I change pose here, the backpack keeps its normal form.
So what could be the difference between my cube and the imported backpack?
What I did so far:
- Parent my cube to the skeleton, selecting "with empty groups".
- Go to weight paint, transfer weights from the human body mesh to my backpack. There I selected "create Data -> nearest vertex" and changed "Source Layers selection" to "By name". I left the rest to defaults. After this step, my cube had a vertex selected, as shown by the bright circle in the picture below. Before that, no vertex had such a circle.
The vertex selected is exactly the same that gets selected when I do the same steps with the existing backpack. It's a skeleton bone in the human's foot, because that's where the origins of both the skeleton and the backpack meshes are. So I assume "nearest neighbor" will always select this bone.
Why do poses distort my cube?
Edit: By default, the cube is blue in weightpaint:
So I choose the toe bone and paint the cube red:
The result: the cube is no longer distorted, but its position is off.