Houdini Engine 3.1
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Integration

Important Files

Four header files are included in the Houdini Engine distribution:

Assuming you used the default install options, you should find these files in:

C:\Program Files\Side Effects Software\Houdini <version>\toolkit\include\HAPI

For native applications, you will need to link against the import library. The import library is name libHAPI.a and is found in a directory that should look similar to:

C:\Program Files\Side Effects Software\Houdini <version>\custom\houdini\dsolib

Version

When writing applications with Houdini Engine it is important to ensure that the version of Houdini Engine being loaded into memory is in fact the version of Houdini Engine you compiled your code against (a common scenario where this can be a problem: setting the PATH environment variable wrongly to point to some other version of Houdini Engine).

We provide HAPI_GetEnvInt() to help you determine the version of Houdini Engine that you have actually loaded into memory. Possible int types are given by HAPI_EnvIntType.

The important version numbers are:

These are effectively Houdini Engine API version numbers that describe the API and the data structures around the API. These should match the numbers against which you built your application.

You may also get version information at build time by including the HAPI_Version.h header file. This file is generated during the building of Houdini and will always contain the correct values. All version numbers are provided as #define's for your own use.

Putting Engine in Version Control

Steps:

  1. Install (once per machine) the license server by installing a full copy of Houdini. Here's the command to do it silently via command line:
    start /WAIT houdini-16.0.493-win64-vc14.exe /S /DesktopIcon=No /FileAssociations=No /Registry=No /StartMenu=No /LicenseServer=Yes /AcceptEULA=Yes /MainApp=No
  2. Set up the license server URL (also once per machine or when the URL changes):
    hserver -S <URL-of-your-license-server>
  3. Download the latest houdini installer every time you wish to update Engine and unzip only the engine files by running this:
    start /WAIT houdini-16.0.493-win64-vc14.exe /S /DesktopIcon=No /FileAssociations=No /HoudiniEngineOnly=Yes /Registry=No /StartMenu=No /LicenseServer=No /AcceptEULA=Yes /MainApp=No /EngineMaya=Yes /InstallDir="%CD%\houdini-16.0.493-win64-vc14"
    replace 16.0.493 with your version. Not the /EngineMaya=Yes - change this to any other plugins you need.
  4. Check in into perforce or any other VC what you extracted in step 3.

Installing the Maya plug-in

For more information on installing the Maya plug-in with Maya, please consult Houdini Engine for Maya Documentation.

Suggested Steps

While the HAPI docs are in dependency order for the most part, it is not perfectly so, nor are all sections of a category relevant for most integrations. Here is a recommended minimal integration strategy, in order:

  1. Initialization and Testing
    1. Strings
    2. Return Codes and Error Strings
    3. Initialization and Cleanup
    4. Saving a HIP File
  2. Instantiation of Assets
    1. Asset Library Files
    2. Cooking
    3. Transforms
  3. Objects
    1. Query
    2. Object Transforms
  4. Geos
  5. Parts
  6. Attributes
    1. About Houdini Attributes
    2. Query Attribute Information
    3. Getting Attribute Values
  7. Nodes
    1. Nodes Basics
  8. Parameters
    1. Query Parameter Info
    2. Getting Values
    3. Setting Values
    4. Incremental Updates
    5. Tabs and Folders
    6. Choice Lists
    7. MultiParms
    8. Presets
  9. Asset Inputs
    1. Exposing Inputs
    2. Input Assets
      1. Marshalling Geometry Into Houdini
      2. Adding Attributes
      3. Adding Groups
    3. Connecting Assets