Houdini Data Interface for UE4's Niagara

   4924   5   8
User Avatar
110 posts
Joined: May 2017
Hi folks,

We're getting closer to an official release of the Houdini plugin for Niagara. I'd love to get some feedback on the tools and suggestions for improvements. I'll use this thread to post example files and videos for anyone interested in testing this stuff out.

You will need to download the latest gamedev tools to access the extra nodes in Houdini.

The plugin comes with the latest preview release of UE4 - 4.20 preview 3

https://vimeo.com/276129245/d0d180d953 [vimeo.com] - This quick start video will get you setup and ready to go with the more involved stuff.

https://vimeo.com/276145729/ad5f1dc611 [vimeo.com] - There are currently 5 content examples available with the plugin. This video will give you a run down of what's going on.

https://vimeo.com/276129739/5aa8e05a88 [vimeo.com] - Niagara ROP walkthrough.

I've attached 2 files. niagara_examples.hip includes the setups used in the content examples.
niagara_destruction_example.hip is a basic rbd setup using some gamedev tools to simplify the rbd workflow [vimeo.com].

Edited by mikelyndon-sesi - June 21, 2018 18:23:00

niagara_examples.hip (177.9 KB)
niagara_destruction_example.hip (565.1 KB)

User Avatar
110 posts
Joined: May 2017
Hi folks! Just a quick note. Change your file extension to hcsv instead of csv or you'll get a window popping up at import time in ue4 asking what kind of data table the file is.

User Avatar
24 posts
Joined: Nov. 2015
I had a look at the HoudiniCSV.cpp file for supported fields:

P, Px, X, pos
N, Nx
T, time
#, id
Cd, color
alpha, A
v, Vx

And proceeded to export a cube with A (alpha) attrib to it. But the resulting CSV has no A field:

0,“(0.5, -0.5, 0.5)”
1,“(-0.5, -0.5, 0.5)”
2,“(0.5, 0.5, 0.5)”
3,“(-0.5, 0.5, 0.5)”
4,“(-0.5, -0.5, -0.5)”
5,“(0.5, -0.5, -0.5)”
6,“(-0.5, 0.5, -0.5)”
7,“(0.5, 0.5, -0.5)”

I probably haven't done something obvious. Forgive me, I'm picking up Houdini again after a long hiatus, so I'm kind of rusty.

Update: Yep! I forgot to update the export node in the csv rop. *facepalm* Working now.
Edited by aoakenfo - June 27, 2018 02:07:11

simpl.png (8.1 KB)

User Avatar
110 posts
Joined: May 2017
Hi folks. The production build of 4.20 is now out. There were a couple of changes that didn't make it into the build. If you set your emitters to local space you need to make changes to 3 modules:
  • HandleSpawnedHoudiniParticles
  • HandleSpawnedHoudiniParticlesByType
  • UpdatePosFromHoudiniArray
We'll add these changes as soon as we can.


Edited by mikelyndon-sesi - July 20, 2018 13:22:56

localHandleSpawnedHoudiniParticles.jpeg (766.9 KB)
localHandleSpawnedHoudiniParticleByType.jpeg (668.3 KB)
localUpdatePosFromHoudiniArray.jpeg (552.5 KB)

User Avatar
3 posts
Joined: Sept. 2017
edit - Just solved it. All I needed to do was change the condition to check the DataInstance.alive variable

Hey Mike,

I am having a few issues with the Generate Spawn Location Event when using the Spawned Houdini Particles by Type.

If I have more than one type exported in the csv file, the Generate Spawn Location Event looks as if it is creating locations for all types, even though its only creating particles for one type.

Would I need to make adjustments so that the event condition checked the Type variable as well?

Edited by SlaterGT - July 25, 2018 04:04:07

HoudiniNiagara.JPG (37.0 KB)
HoudiniNiagara2.JPG (15.3 KB)

User Avatar
11 posts
Joined: March 2015
This is great! I'd suggest adding built-in support for mapping a rotation (rot) -> MeshOrientation

As well a default N -> MeshOrientation (there isn't a way to convert Particles.Normal to Particles.MeshOrientation right now without editing or making a new module because you seem to need “inputsAreNormalized” checked which isn't exposed in the UE4 Quat module.

I modified the houdini module and bit and works great now for my purposes but always nice to have this kind of thing built in for everyone

Thanks, keep up this awesome work!!!!
Edited by Barrett Meeker - Sept. 28, 2018 17:23:16

Capture.PNG (297.7 KB)

  • Quick Links