Hello everyone, I've developed an Unreal Engine 4 plugin capable of executing any Houdini projects using my custom input and output nodes.
Its current purpose is to take white boxed level data, export it to Houdini, which generates assets based on the white boxes, and sends the asset data back to Unreal, which then imports the assets to the scene.
All of this is done with the click of a button in Unreal, and a file picker asking what Houdini project to execute.
How does it work? Level designers white box their level with a custom actor that holds the attribute for asset type, by setting the asset type the designer defines what type of asset they expect from Houdini. After they're done with white boxing, they have to select the boxes they want to artify, and execute the plugin. After execution, the plugin asks which Houdini project to execute, and after selection of the Houdini project, execution will start. The Houdini execution is done in a command prompt, and after successful execution, the assets are imported and white boxes are hidden.
Imported assets are all modular and are part of a parent and group. This allows full control over the assets, so that you can unlock the asset, and for example move the door of a building to the left side of the building. Why should I use this? The purpose of this plugin is to quickly set dress an entire level, or one particular area, without the need of artists, or manual placement of assets. This allows level designers to make quick iterations of their level by artifying the whole level or parts of it in a fraction of time that would otherwise take.
What Houdini data does the output expect?
The output expects point data in the attributes, containing the mesh path, transformations, parents etc. so that the data can be transformed in T3D data, which Unreal uses to import assets.
Note that it doesn't transfer around whole parts of geometry, since this would be a lot slower. All data between Unreal and Houdini is transferred through local sockets, which are very fast.
Here's a video where I white box a level, generate assets with the plugin, make iterations in design, and play the game, all done in a time period of 20 minutes (excluding the time to build lighting).
Do keep in mind that the art side is not fully done yet and am only able to present the generation of parks and buildings, although the plugin itself is capable of generating any asset delivered by Houdini. I'm not planning to release the plugin yet, but will consider releasing it if there is enough interest by you guys.
The reason for this is that the plugin itself is not ready for generic usage yet (like asset types for custom actors are hard-coded), and I do not own a part of the code base, which I would need to rewrite if I want to release the plugin.
Please feel free to ask questions, I will happily answer them.