Jump to content

Rain, Condensation droplets, Rivulets flowing over Hard Surface RnD


mattak

Recommended Posts

Hi all, been learning Houdini since mid Feb and thought it time I better share something back as I've found the forum immensely useful ;-)

condensation_no_ROT_trails03_sml.jpg

RnD of Houdini particles flowing over a hard surface model to simulate a condensation/rain/rivulet/droplet effect.

This is part of a larger RnD project I'll render & upload shortly (this is one section of a larger flying object - a cloud seeding drone... just an excuse to learn a load of Houdini).

Partly inspired by Mark Theriault's Sucker Punch Intro Breakdown using Pflow (vimeo.com/39161208) and having just starting making the switch for fx from Maya to Houdini,

this was one of those "I wonder if I can do that now in Houdini" things that I just had to try. I remember years ago doing something similar in Maya and it taking a heck of a lot longer!

This effect took about a week of tweaking.

The sim is basically just a popnet which relies on an SDF volume (isoOffset) for surface interaction and uses a voppop (VEX) to control the "drip off threshold".

Once I had a working method, I then used 3 duplicate variations for the different rivulets (trail SOP) and finally added a random scatter SOP for some extra motionless droplets.

As the final shot won't be so closeup, I have to option of increasing/decreasing the uniform sampling of the SDF to fit.

When all this is done, I'll hopefully be taking this RnD further with a rain-on-a-window-pane high-detail/realism sim.

Thanks to SpencerL for advice on the initial VEX methodology.

  • Like 2
Link to comment
Share on other sites

Hi Netvudu, thanks!

And yes, of course you are correct in that the main control is in the voppop. Initially I was going "right round the houses" trying all sorts including the creep SOP - a noob error I'm sure.

So, the particles are split into 4 separate popnets based on the same initial voppop setup, some with trails added, some without, with varying degrees of randomised noise.

Within the voppop with geometry is called up via an isoOffset/SDF volume. This volume has a triple purpose:

  • To test if the particles are on or off the surface via a volumeSampleFromFile (along with the point position).
  • To set up the "flow direction" via a volumeGradientFromFile into a crossProduct (along with the points velocity).
  • The volumeGradientFromFile is also piped through to a dotProduct used to compare against a constant to set the "dripping off threshold".

I actually had to sit down for a day and watch these maths videos (very out of character) just to get my head round the theories of

and
as I must have missed that one in school.

For how much speed the particles will inherit, the incoming point velocity is measured with a length and multiplied by the flow direction.

Wow, that hurt my head. I did the fundamentals a month ago but hopefully I've explained it well enough.

Currently I'm scaling up the entire setup so that I can knock out the rivulets pass for the main project it's part of, though with the added shaking motion now on the geometry before it becomes an SDF,

it's bringing with it it's own set of challenges.

  • Like 6
Link to comment
Share on other sites

  • 10 months later...

Cheers guys...

 

"Hey you! You give me scene now..."

 

Well actually, I'm a bit busy at work and those project files are at home. Might I suggest this Orbolt Rain freebie to get started with:

https://www.orbolt.com/asset/SideFX::vfx_rain

 

I haven't looked it's network but the video demo looks like a similar effect and should get you started.

 

Cheers,

 

  • Thanks 1
Link to comment
Share on other sites

I only got as far as the video, but seeing as how every every fx td and his dog seems to want to see my set up this week including Netvudu I said I'll try and post something asap. I just got to get past the current round of crunchtime first... But I will post a hip!

Link to comment
Share on other sites

Thanks Matt. I have created my own version, but it still lacks a few features and it gets problematic with some vertical faces. There´s some hidden math I´m still failing at.

Also, I´m not releasing with a dot product (I´m assuming you chose an angle for releasing) but based on ther droplet life.

Addmitedly I spent just two or three hours so it´s only logical it still has problems.

It would be helpful to be able to see your VOPPOP logic, but don´t loose your job about it :)

 

I didn´t know about the orbol asset. I´ll try to check it as well.

Link to comment
Share on other sites

  • 11 months later...
  • 10 months later...

Ok it's probably 2 years late :blink: but here's a hip file based on the above rivulets setup.

 

Sorry it took so long - I actually prepped this file back in 2014 to upload but could never figure out how to - but here it is.

 

I still get constant requests for this setup or help with similar so it should still be useful.

 

Note - it this example uses the old popnet method. But the vop stuff is still all good.

SDF_voppop_particles_flow.hipnc

Edited by mattak
  • Like 3
  • Thanks 1
Link to comment
Share on other sites

  • 8 months later...

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