fluid-engine-dev icon indicating copy to clipboard operation
fluid-engine-dev copied to clipboard

Variable Viscosity

Open PavelBlend opened this issue 6 years ago • 6 comments

References: https://youtu.be/OEfpkvxx5kg https://vimeo.com/44446399 https://vimeo.com/102554547 https://vimeo.com/124184280

PavelBlend avatar Dec 30 '18 18:12 PavelBlend

Nice. What would be the best way to apply variable viscosity? Different viscosity per emitter? Or via interaction with colliders?

doyubkim avatar Dec 30 '18 23:12 doyubkim

I think it is better to implement two options.

The first is the Viscosity parameter of the emitter, which will have access through the python API. So that it can be changed over time.

The second is to realize the temperature of the fluid particles and colliders. And the parameter cooling rate / heating.

If the collider is hotter than the liquid particles, then the particles reduce their viscosity.

And if the cooling parameter is high and positive, then the particles of a liquid increase their viscosity more quickly with time.

And I would like to have access through the Python API to the viscosity of each particle and to the temperature of each particle.

PavelBlend avatar Dec 31 '18 06:12 PavelBlend

Setting different viscosity per particle/emitter sounds feasible. Introducing thermodynamics might take some time and can't promise.

doyubkim avatar Dec 31 '18 09:12 doyubkim

Actually, the introducing temperature and having it affect viscosity might not be that complicated. A simple exponential model might work just fine.

doyubkim avatar Dec 31 '18 09:12 doyubkim

I thought now. And I decided that it was not necessary to apply variable viscosity through colliders. You need to create a new class that will act as a source of heat / cold. And this class will take a parameter - a triangular mesh.

PavelBlend avatar Jan 01 '19 17:01 PavelBlend

I will take your suggestions in account. In summary, there will be:

  • Per-particle/emitter viscosity
  • Varying viscosity by temperature
  • Heat source/sink

These features won't come very soon, so please wait for any updates. I'm still planning out whether this should be part of current v1 or next v2.

doyubkim avatar Jan 02 '19 05:01 doyubkim