Houdini Engine for Unreal
 All Files Pages
Houdini Engine Tools
Note
Currently, the Houdini Engine Tools are not available in Version 2 of the plugin. They will be added back shortly after the plugin's official release.

Added to the plug-in in Houdini 16.5, Houdini Tools are user-friendly shortcuts to hda files that reside in the Place Mode Tab. In Houdini 17.0, they now uses json description files, and are read from a set of Custom Tools directories, aka Tool Shelves. They can now also be shared and used with all the Houdini Engine Plugins.

The Houdini Engine Shelf Tools lets you easily apply Houdini Assets to the current selection in the World Outliner or the Content Browser. The tools can automatically assign inputs or be batch applied, and can have their functionalities and parameters described through their tooltip help.

The plug-in comes with default Houdini Tools, but you can easily add your own Custom Houdini Tool by adding a Custom Tool directory in the Houdini Engine placement mode, or by editing the Custom Houdini Tool Locations in the Houdini Engine tab of the project settings.

Houdini Tool Shelfs

The Houdini Tools are available in the Houdini Engine section of the Place panel of the Modes Tab.

Unreal_ToolMode.png

Double clicking on a tool will automatically instance and apply it to the current selection according to its Type. Houdini Tools can have the following types:

  • Generator: Tools that simply generate geometry and do not need input to be automatically assigned when used. Generator tool will only use the current world selection to set their transform to the mean of all the transforms of the selected Actors.
  • Operator (single): Tools that only need to have their first input automatically assigned when used. All objects selected will be assigned to that Houdini Assets's first input.
  • Operator (multiple): Tools that need to have multiple inputs automatically assigned to be used. Each object selected will be assigned to its own input. The order in which the objects are selected will determine the order they will have in the assets inputs.
  • Batch Operator: Tools that needs to be applied multiple times, once for each selected object. An instance of the tool will be created for each selected object, and the tool's first input will be set to that object.

When editing a tool's property, you can change its Selection Type, making it use only Content Browser input, World input or all of them. As unselecting assets in the content browser can be done more easily than in the World Outliner, Content browser selection will always be used before selection in the World Outliner when accepting input from both the content browser or the world.

Content browser selection will automatically be assigned to Geometry Inputs. World selection will automatically be assigned to World Outliner Inputs. If only Landscapes are selected in the world, then inputs will be set to a Landscape Inputs. Inputs that have been pre-assigned to Curve Inputs via their names, will be not be changed / assigned. (see Setting A Default Input Type)

Pressing Enter will allow you to edit the properties of the active tool, and pressing Delete will remove it.

Tools are grouped in different shelves, that can be changed using the Active Shelf combobox. Clicking on the edit button will let you add more tool shelves, pointing to directories containing your own HDA that will be used to create Custom Houdini Tool.

When editing the shelf directories, you'll be able to set the following values:

Unreal_ToolDirSettings.png

The Custom Houdini Tools array will list all the custom tool directories. New directories can be added by pressing on the ** + ** button. You can assign a Name and a Path for each of these directories. (the Content Dir Id is for internal use only).

Changes will be saved upon closing the property editor window, and the tool list refreshed.

Custom Houdini Tool

The Houdini Engine Shelf Tools now reads the tools from a set of Custom Tool Directories, via the use of json description files. Each directory is parsed, and a tool is created for each json file found. The Json description files use the following schema:

{
"name" : "HDA Name",
"toolType" : ["GENERATOR", "OPERATOR_SINGLE", "OPERATOR_MULTI", "BATCH"],
"toolTip" : "Tooltip description",
"iconPath" : "Absolute or relative path to the icon",
"assetPath" : "Absolute or relative path to the HDA",
"helpURL" : "URL to help page",
"target" : ["all", "ue4", "unity", "maya", "max"],
"tags" : [ ],
"UE_SelectionType": [ "All", "CB", "World" ]
}

Here is a description of each field in the description files:

Field Description Required
name The name for the tool that will be displayed in the shelf tool interface in the Place panel. Yes
toolType Type of the tool, describing how the tool should handle selection and input assignment. If not set, default value will be set to OPERATOR_SINGLE. No
toolTip This is a tool tip description that will appear when hovering over the shelf tool No
iconPath This is the absolute or relative path to the icon image. If this field is missing, the plug-in will automatically look in the same directory as the json definition file for a .png file of the same name. For example, if the tool is defined in helpful_tool.json, the plug-in will look for helpful_tool.png in the same directory. No
assetPath This is the absolute or relative path to the hda. If this field is missing, the plug-in will automatically look in the same directory as the json definition file for a .hda file of the same name. For example, if the tool is defined in helpful_tool.json, the plug-in will look for helpful_tool.hda in the same directory. No
helpURL This defines a URL to a more detailed documentation on the tool. No
target Because this shelf system is available in all of the Houdini Engine plug-ins, it is possible to create tools that work for all of the plug-ins or just a subset of the plug-ins. The target field is an array where all of the intended plug-in targets can be specified. The unreal plugin will only load tools that have either "All" or "unreal" specified. Yes
tags This field is an array of arbitrary strings. It is used for plug-in specific details. As of right now, the 3ds Max plug-in does not make use of these tags No
UE_SelectionType Unreal-specific value that indicates if the tool should react to world selection only, content browser selection or both. No

The unreal plugin has the ability to automatically generate default json description files for HDAs in a directory that do not have one. This can be done by selecting "Generate Missing Tool Description" when right clicking on the tool shelf.

Unreal_ToolContext.png

The default properties can then be edited by selecting a tool and pressing the Enter key, or by right clicking on one and selecting **"Edit Tool Properties"**. The edited properties will be saved to the json files upon closing the edit window.

Unreal_ToolProps.png

Custom tools can be edited or removed from the list by right clicking on them, or by pressing the Enter or Delete keys.