Houdini User Reference & Guidelines

Introduction

Multiverse for Maya natively reads Alembic caches coming from Houdini. These caches are typically generated using the built-in Houdini ROP Alembic Output node (or other equivalent ways such as Alembic OUT node etc.)

Multiverse for Maya supports advanced features of Alembic caches coming from Houdini into Maya:

  1. Mantra-style Geometry Velocity Blur” rendering
  1. Alembic “Packed Instances” support
  1. Accurate “Bounding Box” reading
  1. Visibility information (Houdini “Display”)
  1. Writing & Reading Alembic frame-by-frame
  1. Particle Attributes
  1. Writing out Alembic from Houdini (Tips)

  • NOTE — When writing out caches from Houdini it is a good idea to check whether normals are correct, usually adding a Normal SOP will set proper geometry normal for your simulations.

In order for these features to work correctly, here’s a small list of requirements, or if you wish guidelines to follow. Make sure to understand them before generating Alembic files from Houdini.

1. Mantra-style “Geometry Velocity Blur” rendering

FX simulations, such as fracture sims, liquid sims and particle sims are hard to motion blur due to their topology-varying nature. The Houdini Mantra renderer handles these cases if the following conditions exists:

  • “Geometry Velocity Blur” is enabled in the geometry node
  • Motion Blur is enabled in the Mantra ROP 
  • The simulation actually has velocity information
When generating Alembic files to render in another application, such as Maya, and with another renderer — for example 3Delight or Arnold — Multiverse for Maya will handle full support of velocity blur in 3Delight and Arnold as long as the proper steps are taken when writing out the data from Houdini and when reading it in Maya. 

In Houdini

In oder for this to work correctly, before generating the Alembic cache in Houdini with ROP Alembic Output , please make sure that:

  1. Velocity information actually exists in the data you are writing out: you can check this by MMB on the node before the ROP Alembic Out . You should also make sure that the velocity information exists (vector v — 3 floats: [v.x, v.y, v.z] ) and is actually valid, simply looking at the attribute spreadsheet would give a clear picture.
   
  1. (optional) If you bring data into Maya you should scale velocity to 1/10th the original value, this because Maya uses different units (cm). If you do not want to do it, don't worry as you can scale the velocity also in Maya.

  1. Once velocity information exists, make sure to write out the data correctly with Houdini ROP Alembic Output:

  • You must keep motion motion” blur set to OFF. This may seem counter-intuitive, but you really must not write multi-samples per frame, because the topology is varying and would not motion blur correctly. Instead you will use the velocity information to motion blur.

  • Make sure to set full bounding box tree” to ON — you will enjoy the benefits of ultra-fast “Bounding Box” reading for Alembic in Multiverse for Maya (explained in the respective section below).


In Maya (with Arnold, 3Delight NSI and 3Delight)

In Maya there are few steps to take:

  1. Simply read the Alembic data coming from Houdini, using the Asset Read button (the red icon on the Multiverse for Maya shelf).
  1. Enable Motion Blur in your renderer of choice, e.g. in 3Delight you can enable Motion Blur from the Render Pass while in Arnold from its Render Settings.
  1. Optionally scale the velocity values using geometry attributes override: