0
$\begingroup$

I have recently made a geometry group that assembles a wireframe mesh by placing cylinders on the edges of a mesh and spheres on the vertices. For one of these wireframes I wanted to rig it to an armature but I found it impossible to paint weights on a mesh without faces dispite weights being applied only to vertices.
I want to have this done without needing to create new edges and faces.

With geometry nodes applied.
enter image description here

Without geometry nodes applied. (Just edges and vertices)
enter image description here

Problem with creating a face with the current setup (creates unwanted edges which my geometry nodes converts into a cylinder) enter image description here

$\endgroup$
4
  • $\begingroup$ For now I have to fill in the faces to apply weights to the vertices and then removing the face. $\endgroup$ Commented Jun 29 at 12:28
  • $\begingroup$ If you don't want to render the faces you can use the Mask modifier to hide them. $\endgroup$
    – Blunder
    Commented Jul 3 at 11:56
  • $\begingroup$ @Blunder my mesh is a simple stick figure if I fill it in with a face, extra edges would be made that would make my geometry group a more tedious process to implement. I just would like a way to manualy set a weight directly on each vertex. I should've clarified that in my original post. Anyways, thanks for your responce. $\endgroup$ Commented Jul 3 at 16:10
  • $\begingroup$ @Blunder essentially you are correct to use the Mask modifier to solve this problem. $\endgroup$ Commented Jul 3 at 22:46

1 Answer 1

0
$\begingroup$

Blender does not have any functionality to use direct weight painting on meshes without faces. Nor can you effectively weight paint a mesh that is composed of geometry dynamically generated with geometry nodes-- you need to apply the modifier.

You can still assign vertices to weight groups, using the properties viewport's Assign button or with your vertex groups specials menu (ctrl g in edit mode for me.)

When I work on string meshes that need weights that I don't want to make via brute assignment (usually, where I want to use a gradient tool to set the weights), I extrude the mesh in some direction, assign the extruded vertices to a new vertex group, and create a mask modifier to delete those new vertices dynamically. Then, whenever I disable the mask, I can paint on the extruded faces, but the faces will be deleted automatically by the modifier stack on re-enabling the modifier (or on rendering.) This is only a few operations-- extrude, assign, set up the mask modifier-- and so is easy enough for me. Whenever I have decided that I don't need to edit weights any further, I can apply the mask modifier to delete those vertices and faces permanently.

enter image description here

$\endgroup$
3
  • $\begingroup$ So I would extrude the mesh to give it faces to paint on then I would mask the extruded vertices before I apply my geometry nodes? $\endgroup$ Commented Jul 3 at 18:37
  • $\begingroup$ Yes. Just be aware that generated geo doesn't have weights. Like I said, if you want generated geo with weights, the GN modifier needs to be applied. $\endgroup$
    – Nathan
    Commented Jul 3 at 19:26
  • $\begingroup$ I don't need to weight the generated geo, at least not yet. Thanks for your help. $\endgroup$ Commented Jul 3 at 22:44

You must log in to answer this question.

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