Jump to content

HOT 12.5 and dynamics


nis

Recommended Posts

Hi folks

I'm trying to set up a medium sized body of water using ocean evaluate which is fine however, I'm stuck at trying to add some dynamics to the setup.

I'd like to capture the reflections of the water surface hitting some large cubes in the scene. The cubes are stand ins for large tower blocks surrounded by water/ocean. I've tried to find something in the Houdini help and got close to it in a CMI video but they demonstrate loading HOT in VEX which I can't replicate in Houdini 12.5.

Any help would be gratefully received.

Thanks

Link to comment
Share on other sites

I haven't seen the technique in the CMI video. Are you trying to just add additional deformations on top of OceanEvaluate, or actually add dynamics with FLIP or the Ripple Solver or something?

If all you need is ocean deformation in VEX, you can set OceanEvaluate to output the Rest Displacement field on the Volumes tab, then volumesample it and do the displacement yourself in VEX. This is actually a one-liner in a PointWrangle SOP: just plug your geometry-to-deform into the first input and the restdisplace volume output of OceanEvaluate into the second, then do:

@P += volumesamplev(@OpInput2, "restdisplace", @P);

The equivalent is easy to setup in VOPs if you'd prefer that.

  • Like 1
Link to comment
Share on other sites

Thanks Johner, really just after ocean deformation so will try what you've suggested in VEX although I'm back at the manual already :) I've set up the point wrangle sop but unclear on how to bring anything into VEX. Will do a bit of digging.

Thanks again.

oh the cmi video is one of the old ones. hip tricks 2. They demonstrate using HOT before it was bundled with Houdini so I guess its a lot different now.

Link to comment
Share on other sites

I've attached a quick setup of using either PointWrangle, VOPSop, or OceanEvaluate to deform the same grid and get identical results, if that's helpful.

The ocean implementation in 12.5 isn't HOT, but it's based on the same original research so there's lots of similarities in the parameters. When you call HOT from VEX, it internally generates arrays of displacement values and samples them at the locations you give, while the 12.5 Ocean tools explicitly give you those values as volumes from which you can sample manually. But the principles are similar.

ocean_vex_displace.hip

Link to comment
Share on other sites

Thats great thank you very much!

It's not a difficult setup when you see it like this. I think I'll look into using OceanEvaluate to work out how to add adition deformation to the ocean mesh. Thanks again

Link to comment
Share on other sites

how come there is a "Volume Sample" VOP, a "Volume Sample from File" VOP, a "Volume Sample Vector from File" VOP, but not a "Volume Sample Vector" VOP? looks like they forgot to add it! (I know that it´s easy to workaround with opinputpath, but it would be dead easy to add it, in fact I just decided to create it as an hda)

Link to comment
Share on other sites

Another cool thing about this new ocean FX is that you can just write out the restdisplace volume to disk and then in your shader read it in (volume sample vector from file) and have very detailed displacements without having to re-calculate the ocean displacement each time you render :) Just remember when you do it in a shader to transform P with the transform vop node from "current -> object" before adding P together with the restdisplacement and then "object -> current" again afterwards

Link to comment
Share on other sites

  • 4 weeks later...

Another cool thing about this new ocean FX is that you can just write out the restdisplace volume to disk...

Thanks Magnus. I tried following what you said but got a little lost. I've been using Houdini for a year or so but this is where my knowledge stops. I'm trying to use Ocean FX to simulate a large body of water lapping up against some buildings. Think your local city centre flooded under 50 feet of water...

This test from Maca sums up the effect quite nicely. https://vimeo.com/17622133 I think he mentions he's using point cloud data to add deformation to the ocean setup.

I'd really like to get a handle on Ocean FX but I'm finding the available help documentation on its section very limited.

Edited by nis
Link to comment
Share on other sites

Another cool thing about this new ocean FX is that you can just write out the restdisplace volume to disk and then in your shader read it in (volume sample vector from file) and have very detailed displacements without having to re-calculate the ocean displacement each time you render :) Just remember when you do it in a shader to transform P with the transform vop node from "current -> object" before adding P together with the restdisplacement and then "object -> current" again afterwards

Hi Magnus,

I can't quite work out the connections to do this type of displacement, do you happen to have an example file? Also, what's the benefit to doing it this way over using the Export to Texture option in the Ocean Evaluate?

Thanks!

Link to comment
Share on other sites

Hi Magnus,

I can't quite work out the connections to do this type of displacement, do you happen to have an example file? Also, what's the benefit to doing it this way over using the Export to Texture option in the Ocean Evaluate?

Thanks!

I'd also really like to know how the export to texture works and what its benefits are.

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