1
$\begingroup$

While I was watching Blender Guru video for 2.8 Blender, he set the origin point of 5 different sprinkles in Set origin to geometry. And it occurred to me that the overlapping problem with particle system could be solved by using a script to restrict or block any particle from spawning within a set distance of a particle. For example, a sprinkle on donut has a distance of 5mm from another sprinkle, with both the origin points from two sprinkles as the radius to determine the set distance. So the question is - If it's possible to make code for origin point and particle system and set restriction for within a certain distance of "first" particle so newer particles won't spawn within it but any other area than that, then can you show the code with this instructions in mind?
If not, then is there any other workaround methods for Blender 2.8?

PS: Setting origin points of objects to geometry could tremendously help with the question I have in mind.

PSS:If I commit any errors, I apologize in advance for lack of my knowledge.

$\endgroup$
  • $\begingroup$ These 3 videos might help you : youtu.be/kJPeK8D2I-k youtu.be/ttJTC1AsJUI youtu.be/15d9yWT5A4Y $\endgroup$ – Gorgious Mar 12 at 7:49
  • $\begingroup$ Thank you so much stranger! I will definitely grab the instructions and post it in the answer! $\endgroup$ – Victor B Mar 12 at 22:09
  • $\begingroup$ And thanks for taking the time to write a thorough answer. Don't forget to mark your answer as "solved" so others might find it more easily if they get the same problem $\endgroup$ – Gorgious Mar 13 at 7:43
1
$\begingroup$

Daily Blender Secrets - Fix Overlapping Particles with Blue Noise Particles add-on

Daily Blender Secrets - Fix Overlapping Particles

Daily Blender Secrets - Non-Overlapping Particles (Method 3)

First video:

  1. Download the zip file
  2. In Blender, go to Edit; Preferences; Addons; then select install from file and pick the zip. Tick the checkbox to enable the addon.
  3. Select the surface of the object you want to distribute your particles onto.
  4. Press Shift + A to open up Mesh menu and select Blue Noise Particles
  5. Choose highest quality for more evenly spaced particles from the context menu(opens only when you initially make new Blue Noise Particles)
  6. Select Even in Noise Type
  7. Select Vertices in Generate
  8. Click OK in context menu
  9. After generating the particles, go to Render from Particles Settings and select Object in Render as Note: Make sure it is in emmiter instead of hair
  10. You will be prompted with a dropper to select which object you want to pick for particles. Note: Be sure to enlarge them if you only see origin points as they may be scaled down significantly

After fumbling around this one, I had to use subdivision modifier on surface of object because if it's too low, vertices generated will be messy for particles clumping together from one point. If too high, it will take considerably long time or Blender or computer may crash from extreme high poly objects. I used collection of objects as particles. Here are the difference between overlapping and non-overlapping particles in those two pictures

Blue Noise Particles

Overlapping Particles

Yes they look practically same. Both are used with denoise node in Composite.

Second video: (There is an issue, the method won't let you accept color random node for the particle system and instead it will produce one randomized color for all of your meshes)

  1. Have desired particles on surface first.
  2. In Blender, go to Edit; Preferences; Addons; then tick 3D Mesh Toolbox in Official list addons
  3. Select the surface with particles. Go to Modifier Properties and click on Convert to turn them into meshes. Note: Do not select anything else
  4. Go to Particle Properties and remove particle system from the surface object
  5. Select one active object from all of selected particles then Use Ctrl + J to join them
  6. Press N and go to 3D-Print tab. From there, click on Intersection and go into Edit Mode
  7. The Intersection will give a result that consist of meshes in contact with each other by faces. Press Ctrl + L to extend to whole separate meshes of selected faces that Intersection gave you.
  8. Press x to delete them and you have one object containing all meshes that don't overlap with each other.

I refuse to give instructions for video 3 because it requires physics.

| improve this answer | |
$\endgroup$

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.