Houdini 19.0 Digital assets

Creating and versioning digital assets

On this page

Overview

You can create a digital asset of any type (Object, Geometry node, Dynamics node) by converting a subnetwork of that type into a digital asset.

See how to install and use assets for how users can access the new asset after it is created.

Tips and notes

  • We strongly recommend you make sure an asset’s internal name and Label match (for example, threelightrig and Three Light Rig), to avoid confusion.

How to

To...Do this

Prepare a subnet to turn into a digital asset

  • If you start by implementing the subnetwork before turning it into an asset, make sure you use relative references in expressions so they will still be valid inside the asset. For example, use ch('../copy1') instead of ch('/obj/geo1/subnet1/copy1').

    (When you try to turn a subnet into an asset, Houdini will warn you if you have references inside the subnet to nodes outside it, since they won’t work in an asset.)

  • To quickly put a bunch of nodes inside a subnetwork, select them, right click and choose Actions ▸ Collapse into Subnet.

Turn a subnet into a digital asset (new, full featured method)

  1. Right click the subnet and choose Digital Asset ▸ Create New.

    Houdini shows the Create New Asset dialog.

    This dialog helps you construct the complete asset name by asking you to fill in pieces and the joining them together. It also gives you a menu of common save locations for the asset library.

  2. Set the Type Name.

    This is the basic “name” part of the internal name of the asset. For example, threelightrig.

    This string must start with a letter or underscore, and can contain only letters, numbers, and underscores. For example, threelightrig.

    You can change the label later, but you can’t change the internal name without recreating the asset.

  3. Set the Author field to your user name or studio name to use it as a namespace

    This is the basis for the “namespace” part of the name.

    In a studio environment, you may want add a namespace to ensure your node names don’t collide with Houdini’s node names or node names from other vendors. The Author field (where the “author” can be a user name or studio name) is the basis for the namespace.

    If you turn off the checkbox next to Author, the dialog will not add a namespace at all.

  4. Set the Branch field (if desired).

    This adds some extra text to the namespace, marking what part of the development cycle the node is in. If you turn off the checkbox next to Branch, the dialog will not add a branch to the namespace string.

    Some people may find useful, especially in large studios with shared asset libraries. It can help distinguish versions of the same asset in different phases, so for example artists can ensure they're using the “main” version of an asset, while TDs are working on a “dev” version.

    The drop-down menu to the right of the Branch field has some suggested values, for example “dev” (in development), “test” (limited release for testing), “main” (tested mainline version).

  5. Set the initial Version.

    This adds a version number part to the name, for example threelightrig::2.0.

    If you turn off the checkbox next to Version, the dialog will not add a version to the name. (An “empty” version is considered the earliest version when Houdini decides which is the latest version.) It’s up to you whether you want to start your assets with a version like 1.0, or no version.

    The version number lets you have multiple versions of an asset with the same name loaded at the same time, so scene files with older versions of an asset still work. Houdini ensures that the Tab menu puts down the latest version (by default).

  6. Set the Menu Entry field.

    This specifies which sub-menu the asset will appear in when browsing the ⇥ Tab menu. You can choose an existing submenu using the dropdown menu to the right of the text box. Or, you can type a new sub-menu label to create a new sub-menu. For example, you could group all your own custom nodes into their own submenu in the ⇥ Tab menu.

    You can add a slash (/) to the name to created nested sub-menus. For example, My Nodes/Polygons. However, we generally recommend against this since it can be hard for users to select through multiple levels of sub-menus off the ⇥ Tab menu.

  7. Set the Asset Label popup menu to Explict, then enter the human readable label for the asset (how the asset will appear in the ⇥ Tab menu) in the field below. For example, Three Light Rig.

  8. Decide whether you want Display Branch in Label to be on or off.

    If you are using the Branch feature, and this is on, the dialog will add the branch to the label (for example, Three Light Rig (Main)). This will make it easier for users to tell which branch of an asset they have, since it will appear as part of the label in the ⇥ Tab menu.

  9. Choose a location to save the asset file to from the Library Path menu. See the dialog help for more information.

    Note

    Some of these save locations ($HIP/hda, $HSITE/hda, often the custom values) are not scanned for assets by default. If you save to these locations, the asset will automatically be installed in this scene file, but you will need to manually install the assets when you want to use them in other scene files. Or, you can add the directories to the $HOUDINI_OTLSCAN_PATH so Houdini does automatically scan them for assets.

  10. Choose how to build the library filename from the Library File menu. See the dialog help for more information.

    Note

    Remember that asset library files can store multiple assets. If you specify an existing library file as the destination for a new asset, it adds the asset to the existing file (it doesn’t overwrite the file with only the new asset).

  11. Decide whether you want Prefix Type Category to be on or off.

    This adds the network type to the library filename as a further guard against filename overlap.

    If you keep a lot of asset files in the same directory, there’s a possibility you could have two assets of different network types (for example, a geometry asset (SOP) and a Solaris asset (LOP)) with the same name, namespace, and version. If you want to keep assets in separate files, you can turn this on to make sure assets of different network types but with the same internal name are saved into different files.

  12. Click Create.

    Houdini opens the new asset’s Type properties window so you can work on the asset’s metadata and parameter UI.

Tip

See below for how to change the defaults for this dialog, as well as edit the preset authors and branches.

Turn a subnet into a digital asset (traditional method)

  1. Right click the subnet and choose Create digital asset.

    Houdini shows a dialog that lets you name the asset and decide where to save it.

  2. Set the Operator label is the human-readable name that shows up in Houdini’s user interface, for example Three Light Rig.

  3. Set the Operator name is a unique internal name to distinguish it from other nodes, for example threelightrig.

    You can change the label later, but you can’t change the internal name without recreating the asset.

    In a studio environment, you may want add a namespace to ensure your node names don’t collide with Houdini’s node names or node names from other vendors, and possibly a version (which allows different versions of a node with the same base name be installed at the same time). For example mystudio::threelightrig::2.0.

  4. Set the Save to library to the file path of the library file to save the asset definition into. See asset libraries below for more information.

    Tip

    You can set the Save to library field to Embedded to embed the asset in the current .hip file instead of saving it to an external file. This can be useful for testing an asset.

  5. Click Accept.

    Houdini opens the new asset’s Type properties window so you can work on the asset’s metadata and parameter UI.

Set up the asset

After you create an asset, Houdini opens the Type properties window for the new node type to let you edit its options. (To open the type properties window again later, you can right click an instance of the asset and choose Type properties.)

You can use this window to set up the new node type’s parameter interface.

You can write documentation on the asset’s Help tab to explain its purpose and controls to users, using a Wiki markup language.

Create a new version of an existing asset

This creates a new copy of an existing asset with an increased version number in its name.

  1. In the network editor, right-click an instance of the asset you want to create a new version of.

  2. Open the Digital Assets submenu and choose Increase Major Version or Increase Minor Version.

    Houdini shows the Increase Version dialog.

  3. Use the Library Path, Library File, and Prefix Type Category options to set the parent directory and file name of the library to save the new version into. See the help for the dialog for more information.

  4. Click Create to create and save the new version of the original asset.

Start a new asset by duplicating an existing asset

  1. In the network editor, right-click an instance of the asset you want to copy, and choose Digital Assets ▸ Save As….

    Houdini shows the Create New Asset dialog.

  2. Use the options in the dialog to set the new asset’s internal name, label, as well as the parent directory and file name of the library to save the new asset into. See the help for the dialog for more information.

Set the defaults for the New Asset dialog

In the network editor, right click a node and choose Digital Assets ▸ Preferences. See the Save Asset Preferences dialog for more information.

Digital assets

Getting started

Creating assets

Next steps