Jump to content

How to transform smoke to advect particles?


SteveSayer

Recommended Posts

Hi, all. Hope someone can help out with this--I've hit a bit of a wall.

 

I am working on a fan-type effect, where I want to cache out a smoke object, then use that cached simulation to advect some particles. But I want to be able to animate the position and rotation of that fan.

 

So I want to simulate the 'airflow' of the fan at the origin, cache that, then move the resulting cache around in my scene and have it blow the particles around appropriately.

 

However, just transforming the cached velocity fields, then reading them into DOPs with the gas advect particles node doesn't have the expected effect. At a guess, it seems like the container is being transformed, but the cached velocity vectors aren't being transformed. So turning the fan to face left instead of right makes the particles to the left move, but they move in the wrong direction. I've attached an image that illustrates what happens--which is quite strange.

 

This happens whether I rotate the object at the object level or the SOP level.

 

Any thoughts on how to approach this?

 

Thanks for any suggestions!

post-14125-0-22260200-1437600175_thumb.j

Link to comment
Share on other sites

Hi, Diego. Thanks for the suggestion. I'll have to dig in and see if I can figure out his approach. From a quick skim I'm not sure if he's rotating (or animating) the VDBs.

 

I'm interested in the more generic solution, too, though--eventually I'd like to advect not just particles but one smoke object with another. So think, like, a wisp of smoke is rising from an ashtray... and I want to move and rotate my previously-simmed fan effect so that it sweeps through that wisp and blows it away with appropriate motion.

 

Other suggestions therefore still very welcome!

Link to comment
Share on other sites

  • 2 weeks later...

Answering my own question... in case anyone else can benefit.

 

The solution seems to be to use a 'transform' node in a volume VOP to transform the vectors from world space into object space. Feels a bit convoluted but seems to work.

Link to comment
Share on other sites

seems that if you define your vector type properly for VDB vel volumes, it should be transformed automatically:

 

Monday, February 3, 2014 
Houdini 13.5.70: Transforming vector-valued VDBs now also have it applied to the voxels as well, depending on their vector type. This breaks backwards compatibility.

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...