NVIDIA Cataclysm Realtime Liquid Solver

I did enable it.

Odd no idea why its not working then, as there is really no reason for it not to work.

Still havent gotten the settings right, but am making some progress. Particles now stick around for a lot longer:

[shot]http://i.imgur.com/1BecEvM.jpg[/shot]

Btw, after you get this, it’s possible that DF doesn’t work on launcher 4.12 version either. If you go to:

C:\Users<username>\AppData\Local\UnrealEngine

and delete all cached files there (whole dir), you get it working again, but I couldn’t find any way to make the custom builds still work. Deleting that folder (not 100% if you needed to delete some intermediate or saved folders on your projects as well), DF works again on binary builds. Since logs don’t tell anything special, I’m bit clueless where I should look next to solve this. This is preventing me from using any source builds atm.

Hi ! You are going to put a sample project ? I don’t know how to set up emitter :frowning: My emitter didn’t spawn any particles xD

@ oh one more thing, are you testing this on Windows with DX11 capable GPU? DF on UE4 is DX11 only (DX12 probably works as well) so it doesn’t work on OpenGL platforms.

Check that Distance Fields are working first. If they don’t work and you set particles to use DF for collision, everything on particle system freezes.

Even easier, I’ll post a todo guide:

  1. Enable Generate Mesh Distance Fields in the Project Settings under Rendering/Lighting
  2. Drop in a FLIP Solver Domain into the level (Just search for it in the “Search Classes” searchbox).
  3. Create a new particle emitter
  4. Right click in the emitter, choose Type Data and select New GPU Sprites
  5. Add a Collision module and set the collision type to Distance Field and the Liquid Type (Under Cataclysm of the Collision Module) to Liquid

(Up until now are the same steps as NVIDIA)

  1. In the Spawn Module change the Rate to 10000.0
  2. Add a Sphere Module and leave the options as default
  3. Disable the Lifetime module (or delete it)
  4. Place the emitter into the level and untick “Render in Main Pass” under Rendering (Advanced dropdown)
  5. Run the game and you should see the liquid pouring out, it’ll run really slow (Speed not performance) due to the low initial velocity, but setting that velocity up seems to cut short the particle lifespan.

As 0lento pointed out, you need a DX11 capable card, and be running in DX11 mode (not OpenGL). And actually I believe you need a 11.1/2 capable card as it uses Tiled Resources which is only available in 11.1 and above.

Also, if you are using the First Person Template level, I recommend you go and set the 1M_Cube static meshes distance field resolution scale to 2.0 to get a smoother collision

Well… I did all those things and nothing :frowning: Distance Fields working but I think my GTX 650 Ti doesn’t support 11.1 only 11.0 (FLEX is running fine with lags xD) :\ Still thanks for responding ! :slight_smile:

I did exactly as you said and I still don’t see anything, I have a GTX 970 and Windows 7 (if that’s important)

Oh I did forget a step, Right click in the emitter, choose Type Data and select New GPU Sprites. I’ll update the instructions.

If that doesn’t work, then I am not sure. I guess it probably comes down to the distance field issues others are reporting. Maybe delete your project DDC, Intermediate and Saved directories and see what happens.

Yp got the GPU Sprites done, else the options wouldn’t show up in collision. Might try deleting the stuff and I’ll report how it goes.

EDIT: Nope, still doesn’t work :confused:

I got it to work (I guess), but when starting in the playmode it freezes for about 15 seconds, and after it finally starts, the liquid starts falling, after that it collides to an object and the fps drops to around 2, editor freezes again, and after that the particles just explode (not normal) and the whole editor freezes, and finally crashes.

I am pretty sure that it has to do with trying to use the GTX 970 to run it. I have a 980 at work, and I could not get this to work at all but at home, I have a Titian X, and I was able to get it to work right away.

Thats interesting, I too have a Titan X and its working for me, but what would the Titan X have that the 970 doesn’t? (besides more cores, faster clock speeds, etc.) They are both DX12 capable cards. Guess it would be something that NVIDIA could answer.

Are you running Windows 10 at home by any chance? If so then that might also have something to do with it as at home I have Windows 10 and not 7 like I do at work.

Are you running Windows 10 at home by any chance? If so then that might also have something to do with it as at home I have Windows 10 and not 7 like I do at work.
[/QUOTE]

Yes I am running Windows 10 as well.

Humm I am now wondering if you might have to have Windows 10 and a Titian to run this due to some DX12 craziness or if it is just Windows 10 and not your GPU. If I can nail this down I will be sure to post with my findings.

Yeah there should be no dependency on DX12. The demo requires DX11.1 due to the use of Tiled Resources. But that wouldn’t rule out 900 series cards. Maybe its VRAM usage. Or some specific NVIDIA extensions that are only available on Titan X and above. Or only available in Win10

EDIT: I have asked someone from NVIDIA if they could shed some light on it as well.

I was also pretty sure that it should only require a DX11 GPU which means that the 900 series should be able to do this even on Windows 7. I did notice that I would often run out of GPU memory on my Titian when using this at home some maybe you are right in that it might have more to due with GPU memory than anything else.

Hi,

The engineer who pulled this together is at Siggraph now, so we won’t get definitive answers soon. As originally written the demo required volume tiled resources, hence DX11.3 (if memory serves) and Win10. However we relaxed the VTR requirement at the last minute, so I think it should run on any Maxwell or Pascal class card, and brand-B GPUs as well if they support 11.3. There could be a bug though.

–Mie