Realtime GPU smoke simulation

You have a beautiful result now, i thinks before your perfeect the project you can directly works on blender implementation directly in the source code, and when tje implémentation is fully work you can perfect the generation engine, because if you PERFECT ONLY The generation engine and you can’t implement the project… is a big time lost :confused:

Take this like an ALPHA project before everything, find the right way and many mores. :slight_smile:

2 Likes

Want to voice my support and admiration for Jflow and your work here, nothing short of amazing.

In terms of integration (when/if you get to it), it might be worth considering teaming up with whoever is looking into bringing the full OpenVDB toolset into Geometry nodes.

Having the solver and sourcing tools available inside Geometry nodes would align well with their other physics and “everything nodes” plan as a bunch of smaller tools/nodes for dealing with sourcing, microsolvers and post-solve workflows.

Fantastic prototype nontheless! :slight_smile:

6 Likes

Can vorticity strength be velocity or temperature based? Maybe it could fix this:

  • The initial trails in Houdini keep their shape and just lose their density.
  • The initial trails in JFlow keep on having vorticity which makes them fuzzy at the end and they also keep their density amount throughout.
3 Likes

A lot of internal changes to make it look more Houdini-like in comparison to the last video.
Also around 20% speed improvement overall and 10x speed improvement in the source sampling function.
The main internal changes were:

  • new buoyancy kernel,
  • new smoke and temperature dissipation kernels,
  • full rewrite of Houdini importer,
  • a lot of parameter tweaking.
35 Likes

maybe its due to compression, but in my opinion a grid effect is now way more visible in your version in comparison to the houdini one

3 Likes

That’s the DaVinci Resolve AI upsampling as I rendered in 1080p and upscaled to 4K. In original version there is no grid effect in neither

3 Likes

One very common artifact is the mushrooming look on areas with high density and velocity.


Houdinis edge is rough and realistic while jflow has the smooth mushroom leading edge.

Its quite common to inject a bit of noise and breakup to the divergence fields based on both velocity and curvature of the density to roughen up these leading edges.

Mantaflow suffers badly from mushrooming and smoothed areas.

8 Likes

Thanks for the advice.
Actually that’s quite easy to fix even with current version of JFlow, as all the tools are there. I’ll tweak more the parameters.

6 Likes

Really impressive work so far ! :slight_smile:

2 Likes

Tried to install RTS but it wouldn’t. I am on MacOS, is this a non-Mac addon?

1 Like

Hey, I just found this, this is absolutely insane. Is there any way to support the development of this project?

2 Likes

Hi, currently it’s windows and cuda only as I don’t have a MacOS device. When I have money for such I’ll do it for all systems

Not yet but I’ll read more about the paperwork around patronate or something like that

3 Likes

If you plan to integrate your work into blender at some point consider writing to [email protected] and getting a dev grant :slight_smile:

26 Likes

Don’t sweat it if you want to do it somehow externally, but if it is an option for you - please do! :heart:
@michal1000w

Directly integrated into Blender this would be fantastic!

4 Likes

Pardon, I’m sure this has been asked to death a million times, but do you have any idea when this will be available as an addon or part of the master branch?

1 Like

This thing never be an addons, is included in blender software because is C++ → OPENGL Project…the full project need to be written in blender source code and not like an external engine standalone.

1 Like

‘[…] but in the future I want to make it as an blender addon or even built in blender next to Mantaflow.’

Addons can act as a bridge to C programs. (UV Packmaster, Quadremesher or FLIP fluids.)

Its a valid question.

1 Like

Flip fluids is an addon, I see no reason why can’t this be?

4 Likes

As I know it is possible to make a C++/CUDA extension with python interface to allow it to work with blender as an addon, and if not I’ll try to implement it directly.
No exact times for now, but it’s getting more ready each week. The only problem is that I don’t have funds to actually make it so no AMD and Mac versions will be available till I have money to buy such gear

2 Likes