Wind and Smoke (particles)


photo

Recommended Posts

Hello,

I'm trying to have a large billow smoke column, reacting to wind influence.

  1. Is there already a way to control PhysicalWind through Cigi? If not, is any support planned?
  2. Playing with the sample vfx_fires_6, I noticed that the PhysicalWind velocity actually applied depends on both the Velocity and the Linear damping. A PhysicalWind linear damping set to 0.000 will lead to the wind having no effect at all! Is it the intended effect? (doesn't feel like a damping at all). In fact, it feels like the actual force applied to a particle is something like PhysicalWind->Velocity*PhysicalWind->LinearDamping/Particle->Weight. Is this correct?
  3. PhysicalWind angular damping doesn't seem to have an effect on particles rotation speed. Am I missing something?

Thanks!

Link to post

Hi Stephane,

To control PhysicalWind with CIGI you can write a component that will listen the weather changed callback and react accordingly. Something like that:

Meteo::get()->addCallbackMeteoChanged(...)

//callback func:
vec3 wind_speed = Meteo::get()->getMeanWindSpeed(node->getWorldPosition());
// pass this value to the PhysicalWind

Regarding the items 2 and 3 - I will check the behavior and will return back to you as soon as I will get more info.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Link to post

2. Physical Wind influence is currently calculated that way:

impulse = (PI * particle_radius^2 * wind_linear_damping) / particle_mass;
direction = wind_velocity - particle_velocity;
direction *= impulse;
particle_velocity += direction;

So, when you are setting Physical Wind damping to 0 resulting impulse is also become 0 (no effect at all).

3. Angular damping is not affecting particles in any case because there is no such parameter available. We will think how to improve this behavior in the future SDK updates.

Thanks!

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Link to post
1 hour ago, silent said:

So, when you are setting Physical Wind damping to 0 resulting impulse is also become 0 (no effect at all).

Hum, yes, so I guessed correctly. But this is not what the word "damping" means, I think.

The PhysicalWind doc says:

Linear damping Value indicating how much the linear velocity of the objects decreases when they get inside the wind node. The higher the value is, the lower the linear velocity will be

Clearly, I would have expected a value of 0 to NOT reduce at all the velocity of the particles (when the actual effect is the contrary). So maybe this is just some documentation/language mismatch.

Link to post

Yeah, there might be some bad wording issue or particles implementation of damping is somehow differs from the other objects. We'll update documentation when it will be clear what is going on under the hood :) 

How to submit a good bug report
---
FTP server for test scenes and user uploads:

Link to post