Page MenuHome

Particle systems emitting in grid-like patterns when vertex groups are used
Open, Needs Triage by DeveloperPublic

Description

System Information
Operating system: Windows-10-10.0.17134 64 Bits
Graphics card: GeForce GTX 960/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 397.93

Blender Version
Broken: version: 2.80 (sub 53), branch: master, commit date: 2019-03-30 19:37, hash: rB700346d377dd

Short description of error
When a vertex group is used to control the density, particle systems emit from grid-like patterns, also emitting multiple particles from the same spots. This is most obvious in Hair mode of course.

Exact steps for others to reproduce the error

  1. Create two random objects to act as the emitter and the particle.
  2. Set up the particle system.
  3. Now paint a vertex group and set the particle system to use it to control the density.

Details

Type
Bug

Event Timeline

Stephen Swaney (stiv) triaged this task as Needs Information from User priority.Apr 1 2019, 2:32 AM

Having a .blend will save some time for whoever works on this AND it will let us see your settings.
Got one for us?

I can't reproduce the issue.


Used Weight Paint to control the Density of the particles system.

I can make it grid-like:


But that's not a bug afaik - it's just to do with the distribution settings.

You can make it totally random by choosing the Random distribution method, or semi-random by changing the jittering.

You can make it totally random by choosing the Random distribution method, or semi-random by changing the jittering.

That's the thing - I didn't change any of the defaults except for the Density vertex group, and it did *not* look like it does now, with the same settings.

Now, as Murphy would have it, I just compiled on Linux here at the studio and I can't reproduce it myself either. It's been a very elusive bug in that we have seen it before, but it seemed very short-lived every time.
I do however have some blends at home, I can post them here tonight.

On Windows I'm still having the problem. Here's a blend file that shows what I mean. In my experience the problem manifests itself in different patterns, but the repetition is noticeable nonetheless. Additionally, the system generates multiple particles in the same spot. Changing the jittering does nothing but change the angle of the lines in the pattern, and the seed value doesn't resolve it either.

Sam Van Hulle (sam_vh) raised the priority of this task from Needs Information from User to Needs Triage by Developer.Apr 2 2019, 2:42 PM
Sebastian Parborg (zeddb) closed this task as Invalid.EditedApr 3 2019, 1:42 PM
Sebastian Parborg (zeddb) claimed this task.

As pointed out, this is how the Jittered distribution works.

Even without the vertex group to limit it, you can see that if forms patterns:

You can either:

  1. Choose the Random distribution.
  2. In this case manually change the amount of particles per face to 30 or so to get a nice pattern.
  3. Implement or use a noise distribution model that spaces out the particles in an even but random manner: https://github.com/BorisTheBrave/blue-noise-particles
Sam Van Hulle (sam_vh) reopened this task as Open.EditedApr 10 2019, 4:06 PM

After performing a test just now at the studio, it seems that the Random distribution method is now render farm safe, which I hear it hasn't been before. Is this correct?
If that behaviour remains consistent, I frankly don't need the Jittered method anymore - since it was only used here to circumvent that problem.

Regardless of this, I disagree with our concerns regarding Jittered being marked as invalid. It might not be high priority, but results of this have not been reliable over the past few months, and have caused problems in production more than once.

As pointed out, this is how the Jittered distribution works.

And as I pointed out, it hasn't been consistently acting like this. We can clearly see actual particle generation in the same spots, which does not happen every time. Presumably, this happens when the number of particles to emit exceeds the amount of emission spots. But:

  • Setting particles/face to 0 (automatic) is an indication that the artist doesn't care about the distribution ratio
  • Blender clearly has more than enough space to scatter more particles

And still, it opts to emit in locations that already have a particle. This leads us to believe that there's a bug at play, especially when it only seems to happen sometimes.
But if Random is now render farm safe, I don't even see a reason to keep the Jittered mode around. Unless I'm missing something?

@Sam Van Hulle (sam_vh) probably what you want is a blue noise distribution pattern, this will give the impression of random and organic but at the same time will give the particles evenly distirbuted without forming clumps, somethign that now happens, I wish this could be implemented

Cheers.