Why the landing boids particles collide with the axes floor?

Hi everyone. I send the particles to land to a sphere under the axe floor, but the particles collide with the axes floor.
Why? The axes floor should be intangible. How could I tweak the emitter to make the landing boids particles fall through the axes floor?

Your collision collection is blank, so they land on the world origin plane. Add your sphere to a collection and put that in the field

Thank you for the reply. I put the sphere in collision collection and set the sphere physics properties collision active, then only some of the particles pass the floor.

Anyone has any other ideas?

You may need to also flush out the cache - that red line in the time line. Usually changing the number of particles clears it. Change it to 1001 then change it back again.
This is a problem blender has had for years.

Thank you for the reply. But clearing the cache didn’t work.
And I notice, a group of particles were generated on the axes floor when original particles reached the collision plane under the axes floor. Why?



The particle system is woefully broken, the boid implementation is even worse compounded. A lot of the time, the answer to these questions is ultimately- and sadly- it just doesn’t work. The particle system will be deprecated soon, but I’m not sure what the plan for boids is

Have you tried ticking the Use Modifier Stack option visible in your pictures?
And have you freed / deleted the bake and rebaked it - to make sure any adjustments recently done are locked into the simulation.
Those are the usual 2 things that I would try after clearing the cache.

Thank you for the explaining :+1:.

Didn’t work. I create a new scene to show this. Just play the animation you will see.
Why.blend (869.0 KB)

It always worked like that.
It was made to consider axes floor as floor.

You have to create simulation and cache it with collider above floor.
Then, after caching, you can offset your animation, if it is so important to have it below the floor.

The Coordinate System setting was supposed to parent particles to emitter and move cache particles with it.
It is no more working. But that is not an issue because halo particles are only rendered by Workbench.
You will use an object with a Particle Instance modifier, anyways, to render them with EEVEE or Cycles.

Move the cube and Plane both above blenders ‘ground’. This stops the problem with the particles looping back to 0,0,0 for ever.
Select the plane and add some damping and friction (both with random) in the collision settings. Your world is a trampoline at the moment. :smiley:
On the Cube add another Boid Brain set to separate at strength = 1. This stops them all going into a tiny group and vanishing.

I do not know why the particles loop around 0,0,0. As @joseph said - particles are broken.

1 Like

Hopefully we’ll get some boid nodes at some point.

2 Likes

If you turn off Movement > Allow Land, then the looping at 0,0,0 stops.

It’s bad enough that I’ve written my own Python implementation of boids… still working on the landing behavior, and of course it’s not as fast as native C++, but it’s a lot more predictable

1 Like

Thank you all for ideas. @zeauro @Matakani @joseph @Meshmonkey

How to offset coordinate of particle’s baked cache?

You can’t- once it’s baked, it’s baked

As I said, it does not work any more.
But you create an object made of a vertex. And you can add to it a particle instance modifier to this object that can be moved.

It worked. Good idea! Particle instance modifier is a good solution for now. :+1:
Thank you all for your patience. @joseph @zeauro

1 Like