Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

To render Houdini fur with RenderMan, we need to add the required RenderMan curve attributes and use the PxrMarschnerHair hair Bxdf.

Add Curves Attributes

For Houdini 15.5, select the fur object node (e.g. the fur node inside grid_object1_fur), add the following RenderMan attributes.

For Houdini 16, add these attributes to the hair gen node. See Curves for more information on these attributes.

Info
  • ri_roundcurve - This turns on/off round curves.  It is off by default which will render as flat ribbons.
  • ri_curveinterpolation - This selects whether the curve is linear or cubic.
  • ri_curvebasis - This selects the basis of the curve such as B-spline.

Typically all you would need is a width attribute added as the default is rather...thick.

Image Added

Set the width to the desired value and name it "width" for clarity.

Image AddedImage Removed

 

Tip

For cubic bezier curve interpolation, we need to set the Guide Groom node's Guide Creation/Segments as a multiple of 3, e.g. 3, 6, 9, etc.

 

For hair, it is also recommended to add the following attribute.

Info
  • ri_dicehair - This turns on/off the hair dicing.

Add Curves Option

For ROP, it is recommended to add ri_hairminwidth which In the ROP, under Dicing, note the control for minimum hair width which sets the minimal width for the hair in pixels globally. Hair that is very thin may require more minimum samples in rendering to avoid aliasing or missed hair

Create and Assign the Hair Shader

Dive into the fur's shopnet. Create a RIS PxrMaterialBuilder Network and PxrMarschnerHair inside the RIS fur Network.

Image Removed

 


Set the Material of the fur object to point to this shader path.

Note that we default to tube hair unless normals are supplied, then they become ribbons. Camera-facing/billboard curves are not available.

Display

Turn off display for other nodes so only fur is displayed.


 

 

Add Width Attribute

Like rendering normal Curves, we also need to add a width attribute.

  • Add a width attribute with Attribute Create.  Set its type to Vertex Float.  Set a width value at the bottom, e.g. 0.05.

Image Removed

 

  • Map the width attribute to RenderMan attribute with Attribute Rename.

Image Removed

 

Render!