Pushing FEM objects with Pyro

   3552   10   1
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Hi everyone,

I am a new Houdini user, coming from a Maya background.

I am working on a shot where a rocket is lifting off and the exhaust fumes will be affecting trees nearby.

I have made some trees using L-systems and I have been using FEM simulations to get the trees to bend using a magnet force. Also, I created the pyro sim for the rocket exhaust.

Is there a way to connect these two simulations so that the rocket exhaust causes the trees to bend?

Of course, I know there will be a way, but I could use some help getting these two simulations connected.

Many thanks.

Dan
User Avatar
Member
65 posts
Joined: Feb. 2013
Offline
I think it's better to have the sims separated and read the fluid's vel from cache, so you can tweak your trees sim easier. This is what I would do:

Cache the smoke sim.
If is really high res I'll cache out a lower res for the vel fields.
In the fem sim add a field force that has as data a sopvectorfield.
The sop vector field read the sop node with the cached vel. put the value of the force as -1 … right now I don't know why negative, but this way works as I'd like.

It should works this way.

Marco
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Hi Marco,

Thanks for your reply. I have tried your method, but I am unsure how to get the SOP Vector Field to read the cached pyro sim. How is that done? I see a slot called SOP Path – is that it? – what do I put in there?
I have tried pointing it to the Import_Pyrofields node, but it does not seem to do anything.

I have tried cranking up the force ( to -10000 or 10000) but without any effect on the FEM objects.

Thanks for your help. Nearly there, I hope.
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Here is my setup, showing how far I have got.

Many thanks if someone can help.

Attachments:
l-system_test_04.hip (1.7 MB)

User Avatar
Member
65 posts
Joined: Feb. 2013
Offline
Hey Dan, just disable the popadvectbyvolumes and continue tweaking the sim. It should works!

Always check what kind of node you can actually plug into another, otherwise the sim will brake up.
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Thanks again, Marco, but sadly it's not working.

Are you saying that I got the connections correct?
User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Many thanks go to Paul from the Odforce forum.

He show that by using the SOPsolver node, which, I think, reads
data from another source and brings it in to the DOP network.
My understanding is very patchy, but I did get the system to work.

I enclose a working setup and render.

Attachments:
l-system_test_05_640x360.mov (3.1 MB)
l-system_test_05.hip (2.0 MB)
Capture1.PNG (30.1 KB)
Capture2.PNG (48.6 KB)

User Avatar
Member
702 posts
Joined:
Offline
I tested your file in H16. i removed the popadvectbyvolumes, added a vector visualization to the sop vector field.

I also used a blast sop to isolate the velocity volumes. the volume wrangle was not doing anything useful so I removed it as well.

part of the problem is that the sopvectorfield dop is referencing primitives 0, 1 and 2. if you look at the primitive numbers on the reference sop, you will see that density is prim 0 , vel.x is 1 and vel.y is 2 so if you dont use the blast sop you need to change the primitive numbers parameter on the sopvectorfield dop to be 1,2 and 3 in order to capture the correct volumes for velocity. the vector field visualization dop will help you ensure you have the correct fields.

the other part, is the constraints are too strong, once I disable them the trees are affected by the volume velocity fields. currently the value is 1e+08 for the strength…i tried 1500000, at that is a bit too strong, but not strong enough to hold the base of the tree. you may need separate constraints for the limbs vs trunk if you want it to stick in place.

It is better practice to use 1 tree and a smaller fluid res to get the setup working so the turnaround is faster. then once the base network is sound, then start adding in other trees and upping the resolutions.

Attachments:
l-system_test_04_h16.hiplc (2.8 MB)

User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Hi Sidenimjay,

Thanks so much for your message. Unfortunately I don't have H16, so I can't test your scene file, however I will try what you suggested and report back.

Can you give more info how to use the vector field visualisation DOP. I have attempted to set that up but couldn't work it out. Please could you post a screen grab of your vector field visualisation DOP, how it is plugged in and how it is configured. That would help me enourmously.

Many thanks!
User Avatar
Member
702 posts
Joined:
Offline
here is your file in h15.5 format…i noticed that the point order is different in h16 hence my note about the constraints….it seems the trunks are the only thing selected in h15.5 so the values you have work fine to hold it, in H16 the trunks and limbs were selected for constraints

Attachments:
l-system_test_04_h15.5.hip (1.7 MB)

User Avatar
Member
59 posts
Joined: Oct. 2010
Offline
Thanks, Sidenimjay.

Yet another learning day with Houdini.

Can you think of a more procedural way of choosing the vertices for the constraint on the base of the tree? I just used a Group node to generate the vertex numbers and then copied and pasted those numbers into the constraint node. Not very Houdini-esque… I couldn't see a way to plug the Group node into the constraint.

Many thanks again.

Dan
  • Quick Links