Houdini Engine for Unreal
 All Files Pages
Settings

The settings can be accessed directly via the Houdini Engine Menu (Houdini Engine > Plugin Settings) or can be found in the Houdini Engine page in the plug-in section of the Project Settings ( Edit > Project Settings ).

You can use them to change the behavior and default values of multiple options of the plug-in.

All of these settings are saved in the DefaultEngine.ini file.

Session

Unreal_SettingsSection.png

These settings control the way the houdini engine session is created.

  • Session Type allows you to decide how Houdini Engine and the plugin communicates (TCP Sockets / Named Pipe). You can also select "None" if you want to prevent the plugin from creating a Houdini Engine session, and acquiring a license.
  • Server Host / Port allows you to precise the name or IP adress of the server hosting Houdini Engine and its port when the session type is TCP Sockets.
  • Server Pipe Name allows you to specify the name of the pipe used when the the session type is Named Pipe.
  • Start Automatic Server indicates that the server will automatically start Houdini Engine when opening a session.
  • Automatic Server Timeout is the timeout value in milliseconds for waiting on the server to signal that it's ready to serve.

For more information, please consult Session.

Note
When changing the session type or its configuration, Unreal needs to be restarted for the changes to take effect. Alternatively, you can also use the "Restart Houdini Engine Session" entry in the file menu.

The advanced tab also gives you access to the Session Sync parameter:

  • Sync With Houdini Cook, when enabled and using Session Sync, changes made in Houdini will be pushed automatically on the Unreal side.
  • Cook Using Houdini Time lets you use the Houdini timeline to cook assets.
  • Sync Viewport enables you to synchroinize the Unreal and Houdini viewport
  • Sync the Houdini Viewport To Unreal, when enabled, changing the view in Unreal will also change the viewport in Houdini.
  • Sync the Unreal Viewport To Houdini, when enabled, changing the view in Houdini will also change the viewport in Unreal.

For more information, please consult SessionSync.

Instantiating

Unreal_SettingsInst.png
  • Show Multi Asset Dialog if enabled, a dialog asking you to select an asset will appear when instantiating an HDA with multiple assets inside. If disabled, the first asset will always be instantiated.
  • Prefer HDA Memory Copy Over HDA Source File if enabled, the plugin will always the memory copy of an HDA stored in the uasset file over the latest version of the asset found in the HDA file. With this enabled, you need to reimport the HDA uasset to get the latest changes from the source .HDA.

Cooking

Unreal_SettingsCooking.png
  • Pause Cooking on Start : if enabled, Houdini Assets cooking will be paused by default when starting Unreal.
  • Display Slate Cooking Notifications allows you to disable the cooking and instantiating notifications on the bottom right of the screen.
  • Default Temporary Cook Folder stores the default path for the temporary folder used by Houdini Engine when cooking assets.
  • Default Bake Folder stores the default path to the folder used by Houdini Engine when baking assets.

These settings change the default values used when instantiating new assets, but these values can be changed per assets in the asset options in the Houdini Asset section in the details panel.

Please see Assets for more information.

Geometry Marshalling

Unreal_SettingsGeoMarsh.png

This section lists some of the specific prooperties used by the plug-in when transfering data between Houdini Engine and Unreal.

  • Landscape - Use Default Unreal Scaling allows you to force landscapes to be created from Heightfield using the default unreal scaling values. Some precision will be lost on the Z axis, but the landscapes created by the plugin will use the same transforms as default Unreal landscapes.
  • Landscape - Use Full Resolution For Data Conversion allows you to decide wether or not to use the full range of values available when converting Heightfield data to Landscapes. This will result in a greater precision at the cost of not being able to sculpt the landscape higher/lower that the min/max value after.
  • Landscape - Force Min Max Values lets you choose the min/max values that should be use for the data conversion of heightfield to landscape. By default, the heightfield's min and max values will be used. This can be useful if you're using multiple HDA that generates landscape and want them to be converted using similar values.
  • Landscape - Forced Min Value the minimum value to be used for landscape conversion when Force Min Max Value is enabled.
  • Landscape - Forced Max Value the maximum value to be used for landscape conversion when Force Min Max Value is enabled.
  • Curves - Add rot & scale attributes on curve inputs allows you to decide if you want curves created by your HDA's inputs to have additionnal rotation and scale attributes set per curve points.
  • Curves - Use Legacy Input Curve when enabled, the plugin will create curve::1.0 nodes for its inputs, instead of manually creating the curve geometry via HAPI.
  • Curves - Default Spline Resolution (cm) allows you to choose the default sample length (in cm) used when marshalling Unreal Spline Components to Curves SOP through World Outliner Inputs.

Static Mesh

Unreal_SettingsStaticMesh.png

This section allows you to specify some of the default settings that will be used by the plugin when creating Static Meshes.

  • Enable Proxy Mesh controls whether or not the plugin should create a Houdini Proxy Mesh first before creating Static Meshes. Proxy Mesh will generate a lot faster than Static Meshes and will allow for faster iterations.
  • Show Default Mesh lets you decide if you want a default editor-only mesh to be spawned when an instancer/mesh sockets fails to find its assigned mesh.
  • Refine Proxy Mesh After A Timeout indicates that you want to plugin to automatically refine Proxy Meshes to Static Mesh after a given timeout.
  • Proxy Mesh Auto Refine Timeout (seconds) is the timeout value to be used for triggering auto-refinement when the Refine Proxy Mesh After A Timeout option is enabled.
  • Refine Proxy Mesh When Saving A Map will automatically refine Proxy Meshes to Static Meshes when saving a map when its enabled.
  • Refine Proxy Mesh On PIE will automatically refine Proxy Meshes to Static Meshes when starting "Play In Editor".
Note
Play In Editor generally saves the current level. It will likely also trigger an automatic refinement if the Refine on PIE option is disabled, but the Refine On Save option is enabled.

Generated Static Mesh Settings

Unreal_SettingsGenSM.png

This section allows you to specify some of the default Static Mesh Settings options that will be set by Houdini Engine when generating meshes. These settings are linked to the corresponding standards Unreal static mesh options, and can also be changed per asset in the Houdini Generated Static Mesh section in the details panel of a Houdini Asset, or via details generic property attributes.

Static Mesh Build Settings

Unreal_SettingsSMBuild.png

This section exposes some of the default Unreal Mesh Import Settings that are used when building a Static Mesh. Those are traditionnaly available in the Static Mesh Editor.

  • Use full precision UVs if enabled, UV coordinates will be stored at full floating point precision.
  • Source / Destination Lightmap Index allows you to specif the UV set index to be used for lightmaps.
  • Min Lightmap Resolution indicates the minimum reoslution to be used for Lightmap generation on meshes genreated by the plug-in.
  • Remove Degenerates indicates wether or not to remove degenerated triangles on meshes generated by the plug-in.

The next settings, Generate Lightmap UVs, Recompute Normals and Recompute Tangents allow you to specify the expected behavior when one of these three attributes is missing in the Houdini Assets output. You can choose either to always recompute them, never recompute them or recompute them only if missing.

  • Generate Using Mikk T Space allows you to decide if the recomputed normals and tangents should be calculated using Mikk T Space. This recquires having properly laid out UVs or you will get a degenerated tangents warning.
  • Build Adjacency Buffer is required for PNT tesselation can be slow to calculate, it is recommended to disable this on larger meshes.
  • Compute Weighted Normals if enabled, the surface area and the corner angle of triangles will be used as a ratio when computing normals.
  • Build Reversed Index Buffer is required to optimize mesh in mirrored transform. Doubles the index buffer size.
  • Use High Precision Tangent Basis if enabled, Tangents will be stored at 16 bit vs 8 bit precision.
  • Distance Field Resolution Scale is the scale to apply to the mesh when allocating the distance field volume texture. The default scale is 1, which is assuming that the mesh will be placed unscaled in the world.
  • Two Sided Distance Field Generation indicates whether to generate the distance field treating every triangle hit as a front face. When enabled, it prevents the distance field from being discarded due to the mesh being open, but also lowers Distance Field AO quality.
  • Enable Physical Material Mask enables the Physical Material Mask.
Note
These are the default settigns used by the pluhin, they can also be overriden per Houdini Asset via the details panel, or via generic property attributes (set on the details).

PDG Settings

Unreal_SettingsPDG.png
  • Async Importer Enabled lets you decide if you want the PDG Asset Link to use the asynchronous commandlet importer by default when importing Work Item results to Unreal. The async importer is used to import the Work Item results in a background task, and limits the amount of lock of the viewport caused by bgeo imports.

Legacy

This section controls the behaviour of the plugin when upgrading a Project that used Version 1 of the Houdini Engine to Version 2.

Unreal_SettingsLegacy.png
  • Enable Backward Compatibilty With Version 1 when enabled, the plugin will attempt to convert Version 1 objects and classes saved in the levels to their Version 2 equivalent.
  • Automatically Rebuild legacy Houdini Asset Components when enabled, the plugin will automatically rebuild Version 1 assets after converting them to Version 2. This ensures that some of the new properties that are present only in v2 are properly initialized and that the v1 data is properly cleaned up.

With these option enabled, when loading a level that contains Houdini objects made with version 1, the plugin will try to convert the V1 components, parameters, inputs and outputs to their V2 equivalents. If disabled, legacy objects will simply be ignored when loading the level. Some HDAs might need to be rebuilt after the conversion for their parameters and inputs to be displayed properly by the v2 plugin, this can be done automatically bu the Automatic rebuild setting.

As the version 2 plugin is not fully backward compatible, certain types of parameters or inputs will not be properly upgraded to v2 (for example Editable curves or Handles). If upgrading a V1 project to V2, we highly recommend duplicating (or at least backing up) your project first. The version 1 plugin should then be deleted from the Plugins/Runtime folder before copying the version 2 files. The conversion of the legacy objects will be done automatically upon loading the levels.

Houdini Location

Unreal_SettingsHLoc.png

These options allows you to decide if you want to use a custom location for Houdini and specify it. It must point to the directory where the HAPI library is (generally in the bin folder for Windows, or dsolib for Linux / Mac ). Either relative or absolute paths can be used.

The Houdini Executable setting lets you select the default executable that the plugin will use when opening hip files, session sync...

Houdini Engine Initialization

Unreal_SettingsHEInit.png

These settings cover the parameter used when initalizing the Houdini Engine API, HAPI.

  • Cooking Thread Stack Size: sets the stack size of the cooking thread. Use -1 to set the stack size to the Houdini default. This value is in bytes.
  • Houdini Environment File: is a list of paths, separated by a ";" on Windows and a ":" on Linux and Mac, to .env files that follow the same syntax as the houdini.env file in Houdini's user prefs folder. These will be applied after the default houdini.env file and will overwrite the process' environment variable values. You an use this to enforce a stricter environment when running Houdini Engine.
  • OTL Search Path: The directory where OTLs are searched for. You can pass NULL here which will only use the default Houdini OTL search paths. You can also pass in multiple paths separated by a ";" on Windows and a ":" on Linux and Mac. If something other than NULL is passed the default Houdini search paths will be appended to the end of the path string.
  • DSO Search Path: The directory where generic DSOs (custom plugins) are searched for. You can pass NULL here which will only use the default Houdini DSO search paths. You can also pass in multiple paths separated by a ";" on Windows and a ":" on Linux and Mac. If something other than NULL is passed the default Houdini search paths will be appended to the end of the path string.
  • Image DSO Search Path: The directory where image DSOs (custom plugins) are searched for. You can pass NULL here which will only use the default Houdini DSO search paths. You can also pass in multiple paths separated by a ";" on Windows and a ":" on Linux and Mac. If something other than NULL is passed the default Houdini search paths will be appended to the end of the path string.
  • Audio DSO Search Path: The directory where audio DSOs (custom plugins) are searched for. You can pass NULL here which will only use the default Houdini DSO search paths. You can also pass in multiple paths separated by a ";" on Windows and a ":" on Linux and Mac. If something other than NULL is passed the default Houdini search paths will be appended to the end of the path string.

Plug-in Information

Unreal_SettingsPluginInfo.png

Finally this section will give information about the plug-in and Houdini Engine.

The Built Against.. values will tell you what version of Houdini / Houdini Engine the plug-in expect, and the Running against.. values will show you the versions found by the plug-in.

These values must match or the plug-in will not work properly. Finally, the current path to the location of the HAPI library and the current license acquried by the plugin are displayed. The plugin will only acquire a license when instantiating or modifying an HDA, so an "Unknown" license type likely indicates that a Houdini Engine session hasn't been started yet.