I created a mesh that has only vertices and converted it to a particle system representing the stars of the Hipparcos catalog.

I used image textures to control the colors and brightnesses of the stars, with each pixel of the textures encoding the color of each star by vertex index. I accessed these indices using a Particle Info node in the material for the dupli object (a simple sphere). This seems to have worked.

I want also to control the sizes of the individual stars, but for that I can't use nodes (or at least it doesn't look like it). All the posts I came across suggest that I should either weight-paint the mesh or generate an image texture and assign it to the particle system. I did the latter, partly because I don't know if I can weight-paint a mesh that has no faces or edges.

But it seems that I need to mind the mapping between the texture and the mesh. I suspect this is the reason I haven't succeeded at controlling particle size with image textures. I don't know how to go about doing the mapping, because it's just vertices, so I'm now considering weight-painting as an option.

So my question is... can I weight-paint a mesh that has only vertices and use those weights to control the sizes of 119,617 dupli objects in my particle system?

I know the challenge is the same—it's just vertices and how do I assign each a weight or a spot in an image texture to control particle size... I guess I'm just putting one foot in the weight-painting option in case it turns out to be doable.

Many thanks in advance for helping if you can!


Yes you can. Weights are all stored per vertex and have nothing to do with edges or faces.

That said, without faces to shade, you will have trouble visualising what the weights are, so with 119,617 points, this is going to be very difficult to manage without just having a script set the correct values automatically.

|improve this answer|||||
  • $\begingroup$ Perfect! This all has to be done by script anyway (I can't see how else to set the colors of 119,617 stars precisely from data). Already I can't easily visualize certain things until I switch to rendered view, so I'm not worried about doing the vertex weight painting "in the dark." So now I can move on to the next step: thinking about how to use Python to assign a weight to each vertex and to use those weights to control particle size (neither of which I know yet how to do, so any info will will help!) Thanks again. $\endgroup$ – Alex Aug 15 '18 at 1:16

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.