FlexHopper Smoke

Does anyone use flexhopper here? It looks very promising.

I’m trying to make smoke with particle fountain and i wonder how to tackle properly this.

Any ideas?

Mr Long Nguyen done this 2D smoke sim in GH using C#.

Thanks @metrowave for showing this. I have something different in mind. I’d like to create particle system of smoke in 3d using flex. One option is to make it behave like flying fluid but at the end of the day rendering volumetric smoke will be much longer than sticking planes to particles and rendering translucent material with clipping mask.

So as you see i have rough idea of it a just need to know how to fiddle around with flex.

Old thread - but I was facing the same question and I think I found an innovative solution to generate a flow surface from flex particles that might be interesting to more people. Here is the result:

The workflow is as following:

  • Step 1): Use FlexHopper and the underlying FleX framework of NVIDIA to generate particles (e.g. particles in a box or more complex -> have a look at FlexHopper examples).
  • Step 2) Use the dendro plugin (and the underlying voxel representation based on the sparse grid approach from the OpenVDB framework) to generate voxels from particles (“Points to Volume”)
  • Step 3) Apply a few cycles of smoothing within the voxel representation to smooth the voxel distribution (“Smooth Volume”)
  • Step 4) Use dendro to convert voxels space into a closed mesh (i think its using some marching cubes algorithm)

The result is a closed mesh that approximates a flow surface around the particles. Depending on how many particels you have, how small you choose the voxel size and how many smoothing steps you apply, the process may take between a few seconds to a minute. What you get is a bucket of smoothed metaballs or flow surface.

I was able to generate the following animation within Rhino (!) within a few minutes: https://streamable.com/d4ijl

Flexhopper and the underlying FleX framework is super fast based on its GPU approach.
Check out a rather old video from FleX:

Dendro is very fast based on the OpenVDB framework and the underlying sparse grid representation
(see paper here: http://www.museth.org/Ken/Publications_files/Museth_TOG13.pdf) …
It is still CPU based but I guess we will see a GPU based implementation from NVIDIA -> have a look at NVIDIA® GVDB Voxels https://developer.nvidia.com/gvdb

Bottom line:

I think there is some potential here for a variety of new algorithms that use a sophisticated physics-driven process to generate the design of complex structures using a marriage of both tools and approaches and combining it with all the other Plugins like Galapagos, OPTIMUS, …

Curious to hear your ideas and thoughts …:grinning:

Side note: I haven’t tried for smoke but I guess its worth a try.

4 Likes

Hi Manuel, hi everyone.

This looks actually awesome!

I was also thinking about integrating something like this in FlexHopper (I’m the author) in one of the next releases. But I haven’t got the time yet. Manuel did some research and found that there’s some NvFlex related assets in the game developer community that can do this in real time. So realtime is definitely possible, although not offered by the NvFlex Core engine. So it’d be a considerable effort and probably take some time. Is this something the community really wants / needs?

@manuel.biedermann if you’re familiar with C# / C++ you can of course always fork the FlexHopper github repo and try things yourself?

1 Like

@Benjamin1
Want? definitely!
Need? Won’t know till we try it. But it’d be awesome.