PDA

View Full Version : Particle self collision seems to be misbehaving, or is it operator error?



Spinland
01-06-2016, 07:17 PM
Today I was setting up a little throwaway scene with some balloons and streamers falling for a few seconds. Couple of particle emitters and some instances of a couple of objects, should be easy peasy, right?

For some odd reason I couldn't prevent the instanced objects from intersecting each other. I tried various particle sizes, even ridiculously large ones (I'm assuming the size value is in meters?) and bump and push interaction types. Ran the force up to 500% and friction to zero, but no balloons and streamers bumping apart if they're spawned intersecting.

Searching turned up some folks back in 2005 unhappy with this very thing but not much else. Is this just me in knucklehead mode overlooking some setting?

Thanks in advance!

prometheus
01-06-2016, 08:24 PM
Not the proper way to work with particles and instances and self collision, particles can be selfcolliding but it will only take in account it´s own spherical radius, and the interaction isn´t very good either, and it is often slow to calculate..doing it that way would undoubtly make any geometry intersect with another...and now we are onlyh talking if you only cloned objects on to the particles, but you are also saying you instanced the objects, that is even worse..since they are not represented as polygons.

And you are of course not having any collision item type on the objects that can compute any collision between the objects..so it will not work.

skip particles, use bullet dynamics and forces if you can, and do not instance the objects, unfortunatly this is one area that will not suitable with lightwave´s current particle system.

if you still try with Faked collisions, with particle radius collision, do not forget to use particle fx calculate button.

prometheus
01-06-2016, 08:32 PM
must add..make sure to set particle fx interaction tab to push or bounce, having the detect interaction only will not work, and also ..Calculate.
I woud probably say use push.

particle self collision like this might work for simpler objects or some type of crowd collision avoidance, but I wouldn´t use it if you want a more dynamic realistic collision on the items...the self collison will only react to the particle spherical radius.

You could also use flocking..it is a special dedicated particle system with more advanced options to use more natural Crowd flocking behaviour, but for other dynamic behavior with collison objects, try bullet and forces..but forget instances on those.

Spinland
01-07-2016, 06:01 AM
Thanks for the tips. This is just a simple scene with several hundred balloons and streamers randomly generated and falling through the view from top to bottom. Since I needed hundreds of them, spawned at random times and places within a zone, particles and instancing seemed the only practical way to create and animate them.

MonroePoteet
01-07-2016, 06:45 AM
You might be able to use an emitter with a Nozzle type of Object-Vertices where the vertices are far enough apart that no two particles are created too close to each other. Attached is a sample scene with a 50cm "box" of vertices used as the emitter and a 30cm balloon. Sadly, the Object-Vertices type of emitter seems to walk the vertices in a fairly linear manner rather than completely randomly as I'd prefer / expect, so I rotated the emitter giving it a bit more randomness. The object could also be jittered using a Noisy Channel modifier on X and Z and maybe Y. Using an Object-Surface might produce more random results, but there would be a chance two balloons / particles might be generated too close to each other and intersect. But, it might be something you could tune to your needs.

mTp

Spinland
01-07-2016, 06:47 AM
Sweet. Thanks so much for the tips!

Damn, I love this community. :I_Love_Ne

MonroePoteet
01-07-2016, 06:49 AM
Be sure to watch in VPR to see the purty colors! :)

mTp

Spinland
01-07-2016, 06:53 AM
That's a great technique, spaces them out very nicely. Thanks so much! (Yeah, purty colors, too. ;-) )

MonroePoteet
01-07-2016, 07:06 AM
Glad to help! Hope it works out.

mTp

prometheus
01-07-2016, 11:20 AM
You might be able to use an emitter with a Nozzle type of Object-Vertices where the vertices are far enough apart that no two particles are created too close to each other. Attached is a sample scene with a 50cm "box" of vertices used as the emitter and a 30cm balloon. Sadly, the Object-Vertices type of emitter seems to walk the vertices in a fairly linear manner rather than completely randomly as I'd prefer / expect, so I rotated the emitter giving it a bit more randomness. The object could also be jittered using a Noisy Channel modifier on X and Z and maybe Y. Using an Object-Surface might produce more random results, but there would be a chance two balloons / particles might be generated too close to each other and intersect. But, it might be something you could tune to your needs.




mTp

I think you might want to set birth rate to frame instead, and particle limit equal to birth rate.

Also, you could simple add points in modeler or spray points, or copy selected point from a multi divided polygon in modeler..kill polygons and paste back the points you selected, use that as the emitter to have it emitt particles randomly...or exacly from the points you want.

I didn´t recognize exactly the scene setup and what spinland wanted from starter, using particle fx with self collisions in a scene like this might be enough, if you set radus enough, after all..balloons are very thin and light, and as soon as they are cloose to eachother, they are actually affecting the pressure of air ..resulting in pushing away very light objects and the balloon close to collision, without actually colliding with the balloon itself.

Also...you can add a ripple fractal texture in the particle fx motion tab, not in the velocity strenght, but in the velocity x,y,z channels..that will make the particles sway a bit like snow if set right...could be tricky to get right depending on your other settings like resistance and weight etc.


purty balloons :)

Spinland
01-07-2016, 11:25 AM
Thanks, prometheus (have I mentioned how much I love forum handles based on classical mythology?). I will try that technique as well. I have a goodly amount of playtime before this sequence is needed and, as in most of the animation jobs I get, learning new stuff is a large part of the fun. :D

prometheus
01-07-2016, 11:32 AM
Thanks, prometheus (have I mentioned how much I love forum handles based on classical mythology?). I will try that technique as well. I have a goodly amount of playtime before this sequence is needed and, as in most of the animation jobs I get, learning new stuff is a large part of the fun. :D

The world would be a much better place if all knowledge was free and empowering every man and society to the fullest..next to that, water, food, and energy and living in freedoom without war..no one should be punished for not having the knowledge. :)

Spinland
01-07-2016, 12:02 PM
You damned Eurosocialist! I say that with love, because I agree with you. :D

prometheus
01-07-2016, 12:05 PM
You damned Eurosocialist! I say that with love, because I agree with you. :D

wait til I´ll start with marx:D
just kidding..

Can´t say more without going too deep in to politics.