Phoenix fluid particles to meshes to pushing objects around
#1
Hi! New user and just getting into Tyflow and man it's sweet! Forgive my lack of prior knowledge but hoping someone can point me in the right direction here for an efficient setup as I've scoured all the tutes and forums I could find for this exact setup and haven't had much luck.

I have a small test scene with Phoenix water flowing around inside a box.

1.) I'm using Birth flow/Flow update with physx shape and collision on the Phoenix particles to turn them to meshes
2.) And have one box birthed as a particle, also with physx shape and collision

[Image: HCV8DYe.png]

[Image: C7Ii2i5.png]


I am getting the intended effect of the box being pushed around by the particles. But man, this is heavy to the point of being impossible to prototype with. After about frame 20 when the interaction occurs, the simming is taking forever on a beast of a threadripper machine here with gtx1080 and 128gb ram.

So my question is, am I doing this the completely wrong way? Is there a better more efficient setup to achieve the same thing? This test is following through to a project where an entire living room gets flooded and its filled with appliances, furniture and props so its going to get heavy and crazy fast.

I really appreciate any guidance  Smile

(Max file attached)


Attached Files
.zip   Phoenix_Tyflow.zip (Size: 277.28 KB / Downloads: 18)
  Reply
#2
I haven't experimented with rigidbody-fluid interactions in tyFlow myself, and it's undoubtedly going to run slow using your current setup. The manageable number of active rigidbodies in PhysX tends to cap out at around 10-25k, depending on your machine...with any more higher than that being very slow to work with.

However, perhaps you can achieve the effect without all the PhysX rigidbodies being activated, and maybe only make them non-kinematic when they're close to the rigidbodies you want to push around with the fluid. I found this video posted a while ago by someone using Particle Flow...all the same concepts can transfer to tyFlow so it might be worth giving a try:

https://vimeo.com/259307883
  Reply
#3
Thanks Tyson Smile

I did find that video, but my lack of knowledge is getting me stuck trying to transfer the concepts from Chove's video to Tyflow. I did follow it in pflow, but could not reproduce his results the same way :/
  Reply
#4
I mostly skimmed through the video, but I think the gist of it is this:

1) Do a fluid sim in the room with no furniture.

2) Setup a tyFlow to advect particles through the first sim. Set them as kinematic PhysX rigidbodies and set the furniture to dynamic PhysX rigidbodies. When the kinematic fluid particles get close enough to the furniture, turn them to dynamic so the interactions with the furniture is 2-way. When they move too far away, turn them back to kinematic. This will improve performance since only a small portion of the total fluid particles will be dynamic, even though they'll all be advected by the fluid sim the whole time (I haven't tested this myself but this seems potentially very clever).

3) Do a second fluid sim with the previously-simulated furniture particles, so that the fluid interacts with the new motion of the furniture.
  Reply
#5
Thanks again for helping!

I guess I need to get my head around how to turn the particles to dynamic and back again in relation to the props.
My lack of knowledge in how to arrange the correct operators the right way is my own worst enemy heh.
  Reply


Forum Jump: