Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Help  Fluid Emission
#1
Hi! 

I've recently bought Obi Fluid and it's great! 

I'm trying to scale the fluid down a bit and the emission becomes rather obvious when this happens. It seems to pulse regular amounts of particles in a constant flow. e.g. 7 particles, wait a frame or 2, 7 more particles, etc. 

I was wondering if there was a way to stagger the emission of particles so that new particles are spawned more regularly and not in spurts. I'm currently using the sphere shaped emitter, ideally I'd like particles to spawn randomly throughout the surface of the sphere at a constant rate, rather than having the surface pulse with particles. 

Thanks!
FlairBot
Reply
#2
(07-11-2018, 03:12 AM)FlairBot Wrote: Hi! 

I've recently bought Obi Fluid and it's great! 

I'm trying to scale the fluid down a bit and the emission becomes rather obvious when this happens. It seems to pulse regular amounts of particles in a constant flow. e.g. 7 particles, wait a frame or 2, 7 more particles, etc. 

I was wondering if there was a way to stagger the emission of particles so that new particles are spawned more regularly and not in spurts. I'm currently using the sphere shaped emitter, ideally I'd like particles to spawn randomly throughout the surface of the sphere at a constant rate, rather than having the surface pulse with particles. 

Thanks!
FlairBot

Hi there,

Each particle represents a fixed volume of fluid. When you set the emitter's "speed", the amount of particles emitted per frame is automatically calculated to maintain a constant (or as constant as possible) flow. Emitting more particles would cause a pressure burst (fluid would "explode" upon being emitted) and emitting less would cause surface tension to kick in and attract newly emitted particles towards already emitted ones.

If there are gaps in the flow, it means the emission speed is too low. This is akin to what happens in real life when you leave a faucet half-open, and it leaks liquid in pulses.
Reply
#3
(07-11-2018, 08:14 AM)josemendez Wrote: Hi there,

Each particle represents a fixed volume of fluid. When you set the emitter's "speed", the amount of particles emitted per frame is automatically calculated to maintain a constant (or as constant as possible) flow. Emitting more particles would cause a pressure burst (fluid would "explode" upon being emitted) and emitting less would cause surface tension to kick in and attract newly emitted particles towards already emitted ones.

If there are gaps in the flow, it means the emission speed is too low. This is akin to what happens in real life when you leave a faucet half-open, and it leaks liquid in pulses.

Let me explain my problem again. 

The Obi Emitter pulses out particles from every "Distribution Point" at the same time. What I want to know is if it's possible for the emission of particles to get the same "volume" of particles out from random Distribution Points to make a more constant flow rather than Every distribution point offering particles at the same time. 

Raising or lowering the "speed" can only try to mask the issue (as well as alter intended behaviour). Again, I'm not trying to change the volume, rather, the emission of particles across the surface of the emitter shape.
Reply
#4
(07-11-2018, 09:42 AM)FlairBot Wrote: Let me explain my problem again. 

The Obi Emitter pulses out particles from every "Distribution Point" at the same time. What I want to know is if it's possible for the emission of particles to get the same "volume" of particles out from random Distribution Points to make a more constant flow rather than Every distribution point offering particles at the same time. 

Raising or lowering the "speed" can only try to mask the issue (as well as alter intended behaviour). Again, I'm not trying to change the volume, rather, the emission of particles across the surface of the emitter shape.

Nope, all default emission shapes will emit from all points at the same time. If they didn't, flow would not be more constant despite intuition making it look otherwise. Fluids strive to keep their density constant at all times (more or less equivalent to keep particle distribution as even as possible), so emitting particles at random places/times would cause uneven pressure forces, since some zones would get more particles than others. You can do this just fine with regular particles as they do not interact with each other, but not with fluid particles.

All particle-based fluid simulators "suffer" from this, even offline ones (take a look at Realflow, Houdini or Naiad). There's no way around it. The moment you discretize both time (in the form of time steps) and space (in the form of particles), there's no way to guarantee a 100% continuous stream under all circumstances.

The closest things you can do:
- Randomize the emission velocity by cranking up the "random velocity" setting in the emitter. This will sometimes cause pressure spikes, but not as much as randomizing locations or emission times.
- Increase the fluid material "smoothing" parameter. This will cause particles to consider a larger neighbourhood when trying to maintain density, which can help in "gluing" together particles far away from each other.
Reply