May 18, 2022 Maddie Quach

Houdini Rendering Workflow Tips

Houdini includes a number of capabilities, procedures, and best practices that enable a production pipeline to quickly work with and render massive, complicated scenes. Sharing Alembic geometry, for example, can allow various steps in the pipeline to run in parallel. In this article, iRender will show you Houdini rendering workflow tips. Let’s find out!

Working interactively with proxy geometry in Houdini and replacing the geometry at render time using a geometry shader such as the Delayed Load Procedural or point instancing was the most efficient rendering approach prior to Houdini 13. Support for packed primitives and deep integration of the Alembic file format were included in Houdini 13. These features allow you to deal directly with very big geometry and distribute files effortlessly between departments.

The following advice is based on a typical production pipeline: Models → Look development → Scene assembly → Visual Effects → Lighting → Rendering.

Models

For efficiency, convert final geometry into packed primitives or poly soups before rendering, unless you need per-face materials or attributes (since Houdini sees a polysoup or packed geometry as a single primitive).

Export models as Alembic files for maximum flexibility and efficiency. Alembic files allow the different stages of the pipeline to work with the same proxy and/or final geometry files. Shader writers, scene assemblers, FX artists, and lighters can reference the same files using the sub-setting and level of detail controls of the object appearance editor.

Note that Alembic only supports a subset of all Houdini’s primitive types. If you need these primitive types, you can save the geometry as a .bgeo file and import the geometry as an on-disk packed primitive.

Houdini imports Alembic geometry as packed primitives. Packed primitives are much faster and memory-efficient for Houdini to work with than regular “editable” geometry. For example, packed Alembic primitives are “streamed” from the file on disk directly to the graphics card for display, instead of being retained in main memory.

Look development

Import models from shared Alembic files.

Save final models as digital assets with their materials, or as a scene file with materials on Alembic primitives.

Scene assembly

Import models from shared Alembic files.

Set up cameras.

Use the object appearance editor to turn down the level of detail on heavy objects to make them easier to work with.

Use the object appearance editor to hide objects outside the camera view to make loading and rendering faster.

Save final work as a scene file with transforms on Alembic primitives.

Visual effects

Most solvers support Alembic/packed primitives directly. Use them whenever possible (when the solver supports them and the geometry is non-deforming).

When you use regular geometry to represent multiple objects in a simulation (for example, shattered pieces or a large number of colliding RBD objects), the simulation represents each object as a separate DOP object. Packed primitives can have any number of separate pieces of geometry inside (see shattering) and still be represented by a single DOP object. This is much faster to simulate since Houdini doesn’t have the overhead of managing hundreds or thousands of DOP objects.

For simulations that only transform non-deforming models (for example, rigid bodies), you can output only the transforms on the points representing the Alembic/packed primitives. This means it’s possible for lighting to begin work on the static models and then apply the simulated transforms on top when they’re available.

Lighting

Use assets with materials created by look development, object transforms from scene assembly, and animated data from effects.

Houdini works in a linear color space internally and converts to 2.2 gamma for display by default. See linear lighting and compositing for more information.

You optimize lighting by “baking” static lighting setups into a high dynamic range (HDR) image and then light the scene with the image using an environment light.

Rendering

Try to finalize camera positions/movement before you start rendering. When you know what’s on-camera, you can optimize for what’s visible and what’s out of frame.

Several tools in Houdini let you optimize the scene based on the camera frustum. For example, you can create volume boxes in the shape of the frustum, and cull geometry outside the frustum.

Try lighting a volume using three separate red, green, and blue lights above, in front, and to the side. Then you can adjust the lighting by converting the image to gray and scaling the red, green, and blue channel contributions in the compositor.

Rendering for VFX:

  • Use an HDR image taken on set for base lighting, then add additional CG lights as necessary.
  • Render transparent objects in separate render passes as deep camera maps for compositing flexibility.
  • You will need to match motion blur and depth of field with the live action camera. The PF Track motion tracking package can generate a Houdini from its tracking data.
  • Use procedural rendering.

Rendering for integrating CG objects with live action:

  • You will need to match motion blur and depth of field with the live action camera. The PF Track motion tracking package can generate a Houdini from its tracking data.
  • To cut out an image of the object/terrain/character, use the Trace SOP to generate UVs in camera space.

Rendering for full feature CG:

  • Full feature CG usually involves handling huge data sets, scene complexity, and number of shaders. You should have an asset tracking and versioning workflow.
  • Use procedural and distributed rendering.
  • Use Alembic or Houdini geometry procedural shaders (which load geometry only at render time) to keep scene files light.
  • Houdini can load Alembic geometry as a special primitive type using the Alembic surface node. You can also import the contents of an Alembic file as a node hierarchy using the File ▸ Import ▸ Alembic menu item.

You can even transform elements of the Alembic primitive using a Transform node with the group type set to primitives. Similarly you can assign mantra materials to elements of the Alembic file using the Material node. You cannot edit the actual geometry, for example modify points or subdivide.

Conclusion

Hopefully the above information will help you better control the render quality and speeed and have a better experience when working with Houdini.

iRender provides Powerful Cloud Rendering service for Houdini – a Professional GPU-Acceleration Cloud Rendering for Houdini projects with Redshift, Octane, V-Ray (RT), Mantra, Arnold, and so on. At iRender, we have developed multiple RTX 3090 workstations specifically optimized and configured for GPU rendering workflows, from single- GPU 1x RTX 3090 to Multi-GPU 2/4/6/8 x RTX 3090, you can choose one server that is suitable for your demand and your software to get started.

You are guaranteed to experience maximum performance for your budget. Users will remotely connect to our server, install their software only one time and easily do any intensive tasks like using their local computers. We offer clients the powerful processor Intel Xeon W-2245 @ 3.90GHz / AMD Ryzen Threadripper Pro 3955WX @ 3.90GHz and up to 1 TB SSD to load your scene quickly.

Register an account today for FREE TESTING COUPON to experience our service. Or contact us via WhatsApp: (+84) 912 785 500 for advice and support.

 

Thank you & Happy Rendering!

 

Reference source: sidefx.com

Related Posts

, , , , , , , , , , , , , , , , , , , , , , , , , ,

Maddie Quach

Hi everyone. Being an Customer Support from iRender, I always hope to share new things with 3D artists, data scientists from all over the world and learn from them as well.
Contact

INTEGRATIONS

Autodesk Maya
Autodesk 3DS Max
Blender
Cinema 4D
Houdini
Daz Studio
Maxwell
Nvidia Iray
Lumion
KeyShot
UE4
Twinmotion
Redshift
Octane
And many more…

iRENDER TEAM

MONDAY – SUNDAY
Hotline: (+84) 912-515-500
Skype: iRender Support
Email: [email protected]
Address 1: 68 Circular Road #02-01, 049422, Singapore.
Address 2: No.22 Thanh Cong Street, Hanoi, Vietnam.

Contact