Houdini Engine for Unreal
 All Files Pages
SessionSync

The Houdini Engine SessionSync feature allows the plugin to connect to a session of Houdini Engine running inside Houdini. In terms of functionality, it supports all the features of the regular (headless) Houdini Engine workflow, along with additional features specific to SessionSync.

The benefit of using SessionSync is that the state of Houdini Engine can be viewed in Houdini while working with the plugin in Unreal. Additionally, changes on either end, whether they were made in Unreal via the plugin or in Houdini via its various interfaces, will be synchronized across so that both applications will be able to make changes and see the same results.

SessionSync enables the following workflows:

  • Easy troubleshooting of loaded assets.
  • Real-time feedback when building an asset in Houdini, while seeing its results live in Unreal.
  • Better understanding of Houdini Engine's features and limitations.
Note
Please note that Houdini Engine SessionSync replaces the Houdini Engine Debugger that was available in Houdini 18.0 and earlier.

Starting SessionSync

SessionSync must be running in Houdini before the plugin can connect to it. There are 2 ways to connect to SessionSync from the plugin:

Launch Houdini with SessionSync

From Unreal, you can easily launch a new instance of Houdini with SessionSync started. The plugin will then automatically connect to it using the current session settings. To do so, simply click on the Open Houdini Session Sync in the Houdini Engine menu. This will take a few seconds to launch Houdini with SessionSync enabled, and connect to it.

Unreal_SessionSyncUnreal.png
Note
Please note that the plugin will automatically stop the current session if the plugin was already using one.

Once connected, you can stop the session at any time from the plugin, and reconnect. You can also stop SessionSync in Houdini and continue to use it as normal. You can also use the Close Houdini Session Sync entry in the Houdini Engine menu to close the session of Houdini running Session Sync.

Connect to Houdini

If Houdini is already running, then the plugin can connect to SessionSync once its enabled. To enable it and connect, follow these steps:

First, in Houdini, open the Houdini Engine SessionSync pane by either ging to Windows > Houdini Engine SessionSync, or by going to New Pane Tab Type > Misc > Houdini Engine SessionSync.

Under Connection, press Start to start the Houdini Engine session with SessionSync enabled. Note the settings such as the TCP Port or Named Pipe, which you can leave as default values.

Unreal_SessionSyncHoudini.png

Then, in Unreal, you can use the Connect Session entry in the Houdini Engine menu. If there is a Houdini Engine session already running, stop it by using the Stop Session menu entry first. Please ensure that the session settings, available in the Plugin's settings in Unreal match those used in Houdini.

Once connected, you can stop SessionSync at any time from the plugin, and reconnect. You can also stop SessionSync in Houdini and continue to use it as normal.

Settings

SessionSync behaviour can be changed by the following settings in Houdini:

  • Sync With Houdini Cook Enable this to keep the assets on the plugin side synchronized with cook changes on Houdini side. This allows for changes on either application to be reflected in both directions.
  • Cook Using Houdini Time Enable this to use the Houdini Timeline time to cook assets. Normally, Houdini Engine uses its own time set via the plugin to cook assets. In SessionSync, the Houdini viewport will cook using the Houdini Timeline time which can make assets out of sync. Enabling this fixes that issue.

Synchronized Data

SessionSync supports the following data types for synchronization:

  • HDA
  • Curves
  • Input

HDAs, curves, and input nodes function the same way as in non-SessionSync workflow. The difference in SessionSync is that any changes to these assets in Houdini (parameter, node, or network changes) will be reflected across to the plugin automatically.

For HDAs, addition or removal of promoted parameters will not be synchronized unless the HDA is unlocked, resaved and rebuilt in Unreal.