Jump to content

Smoke disspation


chimeric

Recommended Posts

Hey guys!

I am having problem that I cannot solve, I am trying for over more than one week but the problem persist. I am building a tornado effect using Smoke which is driven by Velocity Field created by POP VOP. My idea was to be able to create the effect of tornado forming from the clouds and reaching the ground. The problem is that it never reaches the ground (the bottom of the fluid container) because it dissipate very fast. I was trying to add density using Gas Field VOP, however this causes the volume build up more and more so it start to cover the whole container. Anyway I have discovered that the dissipation rate is directly related with the velocity, the bigger the velocity the faster the dissipation therefore the density dissipates even without reaching the middle of the container.

This is how it looks now:

http://vimeo.com/27958151

So my questions are:

1. What part of the Smoke solver is responsible for the dissipation/diffusion of the gas? I have look for it inside the solver but cannot find it.

2. Is there other way of controlling the density without destroying the original density field.

Please, if you know something that could help me do not hesitate to post it.

Thanks in advance :)

Edited by chimeric
Link to comment
Share on other sites

Thanks, for the suggestion, I have tried something similar before. The problem was that it kind of look like sprites. Anyway I will give it a go and post it. :)

Anyway I am creating the force using POP VOP, so there are no actual forces involves just the velocity of particles.

Edited by chimeric
Link to comment
Share on other sites

you can have many particles, which will add very little density each, not few with 100% density which would look like cotton balls leaving some cotton trail :)

and maybe some turbulence on top, and that vortex force

Link to comment
Share on other sites

you can have many particles, which will add very little density each, not few with 100% density which would look like cotton balls leaving some cotton trail :)

and maybe some turbulence on top, and that vortex force

True, definitely will give it a go!

I just saw that you are going to BU this year :) I will be attending the 3rd year of BA Computer Visualisation and Animation there, we will be to able to meet in person :) Now, I saw your showreel and I am completely shocked. Actually with so much professional experience I wonder why u still wanna go to uni. Your work is at least twice better as of most of people graduating from NCCA :)

Edited by chimeric
Link to comment
Share on other sites

I have tried to use particles as source but it was taking a lot of time and it was giving very strage results. Anyway in meanwhile I gave another try with static source using upres. I think it is starting to look acceptable, specially that it is only 160 resolution in Y.

Link to comment
Share on other sites

One more try, this time using particles as source. The difference is that instead of using particles as very small points, I have created very blurred density field that is being advected by velocity. This way I finally gained control over the density, so it goes from top to bottom. I really liked how the previous example looked like but it was very frustrating that I had no control over density and any, even very small, change of velocity would result in unpredictable effect (normally density would dissipate more)

http://vimeo.com/28530997

Link to comment
Share on other sites

Another test, this time I am not using particles at all and I calculate the velocity field directly using Gas Field VOP. I though it will be faster than generating high resolution velocity field from POPs. Funny enough it is not :) The problem is that now velocity is being calculated for each voxel instead of particle. With high resolution grid this is just very very slow. On the other hand it gives me always high detail velocity field that matches the container resolution. I think it is still better because I could export the velocity field first with low resolution and than use it to drive high resolution simulation. I have also added some upress, close to default turbulence.

http://vimeo.com/29014314

Link to comment
Share on other sites

cool stuff ! :) to get better sampling out of particles, you can use a gasfield Vop with your own pointcloud lookup - that's not really fast though. The Particle To field microsolver is pretty useless IMO...

Any chance you post an example of this and specifically what would make the Vop version of this work better?

Link to comment
Share on other sites

@Ian : doing a pointcloud lookup allows you to do your own sampling depending on the proximity to the voxels.

That gives you a lot more options and you can get more accurate resuts. (2nd image is similar to the "gas particle to field" microsolver sampling)

post-3635-131610343965_thumb.png

I included a very basic example. Of course you can do your own metaball kernel function, multiple samples to get antialiased volumes or motion blur too - up to you :D

pointclouds_vs_particletofield.hip

Any chance you post an example of this and specifically what would make the Vop version of this work better?

Edited by bunker
Link to comment
Share on other sites

I am glad that u liked it guys! :)

bunker: I have not tried it this way. I think that in terms of the accuracy and details the Gas Field VOP is the best solution because each voxel has its own velocity function so you don't need to approximate anything. On the other hand as I said it takes some time.

Btw, thanks for the example, its really cool that you can have a falloff using particles, this gives some extra details as well. :)

Netvudu: Yes I think the fact that I used the Gas Field VOP has increased, considerably, the amount of details. However, in theory, I could probably get similar results using Gas Particle To Filed or creating the field in SOP and exporting it as Vector Volume (this is what I did in the beginning). The problem is that if you use just particles it will take some time for the container to be field with desired velocity (where are no particles there is no velocity). It is possible to improve it, having a box as particle emitter, with container size, and emit from surfaces (if you do from volume, particles that are being created in the middle will distort the velocity field and you can expect some artefacts). Still at most the particles are represented as spheres (of influence) in volume where voxels are squared so it is always an approximation. Eventually you will get voxels where there is not velocity, even if you create lots of them.

One more thing, I think I found the reason why I was loosing the density (hence this whole topic :) ). I was creating the velocity field that would suck the smoke in to the centre of the tornado. I believe that this is more-less correct, or at least, intuitive way of representing and simplifying forces that govern tornadoes. Unfortunately this was creating sink (negative divergence) which made the smoke evaporate (at least I believe so). The last example has only circular and upward velocity components, so I had no issues with density.

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...